From 453087b61ae693ce4441660a28ec9ec481c44261 Mon Sep 17 00:00:00 2001
From: "Frank Licona (3FE 3LE)" <3l33f3@gmail.com>
Date: Fri, 18 Oct 2024 19:50:42 -0500
Subject: [PATCH 01/25] chore(global): :green_heart: add proyect key on
coderabbit config file
---
.coderabbit.yaml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.coderabbit.yaml b/.coderabbit.yaml
index cda2805..c8023ee 100644
--- a/.coderabbit.yaml
+++ b/.coderabbit.yaml
@@ -63,7 +63,7 @@ knowledge_base:
issues:
scope: auto
jira:
- project_keys: []
+ project_keys: [SSS]
linear:
team_keys: []
pull_requests:
From aaa815576143e559c8ec2ba3264f42a2c1681c1a Mon Sep 17 00:00:00 2001
From: "Frank Licona (3FE 3LE)" <3l33f3@gmail.com>
Date: Fri, 18 Oct 2024 19:51:49 -0500
Subject: [PATCH 02/25] chore(opt): :globe_with_meridians: add ES/EN messages
on OPT
---
apps/opt/messages/en.json | 49 +++++++++++++++++++++++++++++++++++----
apps/opt/messages/es.json | 49 +++++++++++++++++++++++++++++++++++----
2 files changed, 88 insertions(+), 10 deletions(-)
diff --git a/apps/opt/messages/en.json b/apps/opt/messages/en.json
index e840a44..361a00c 100644
--- a/apps/opt/messages/en.json
+++ b/apps/opt/messages/en.json
@@ -1,9 +1,48 @@
{
+ "home": {
+ "title1": "Your perfect trip, all in one place",
+ "title2": "Plan your adventure with One Plan Trip",
+ "title3": "Simplify your travels, maximize your experiences",
+ "title4": "From destination to every last detail",
+ "title5": "The evolution of travel planning",
+ "subtitle1": "Discover the synergy between your ideas and our tools",
+ "subtitle2": "A planner for every aspect of your journey",
+ "subtitle3": "Connecting your dreams with realistic itineraries",
+ "subtitle4": "Experience the ease of planning with precision",
+ "subtitle5": "From initial idea to the last day of your trip",
+ "phrase1": "Plan. Organize. Enjoy.",
+ "phrase2": "Your personal travel assistant",
+ "phrase3": "Where inspiration turns into action",
+ "phrase4": "One plan, endless adventures",
+ "phrase5": "Transform your travels with One Plan Trip",
+ "tryNow": "Plan now",
+ "learnMore": "Discover more",
+ "getStarted": "Start your adventure",
+ "feature1": "Integrated destination planning",
+ "feature2": "Budget management",
+ "feature3": "Activity organizer",
+ "feature4": "Participant collaboration",
+ "feature5": "All information centralized",
+ "title": "About One Plan Trip",
+ "description": "One Plan Trip is your ideal companion for travel planning. From creating detailed itineraries to managing budgets and collaborating with friends, our app offers everything you need to make your next trip an unforgettable experience."
+ },
"navbar": {
- "login": "Iniciar",
- "register": "Registro",
- "profile": "Perfil",
- "dashboard": "Panel de control",
- "log-out": "Salir"
+ "login": "Log in",
+ "register": "Sign up",
+ "profile": "My profile",
+ "dashboard": "My trips",
+ "log-out": "Log out"
+ },
+ "footer": {
+ "about-us": "About us",
+ "help-center": "Help center",
+ "for-travel-partners": "For travel partners",
+ "destinations": "Destinations",
+ "our-technology": "Our technology",
+ "travel-tips": "Travel tips",
+ "community": "Community",
+ "sustainability": "Sustainable travel",
+ "local-experiences": "Local experiences",
+ "coming-soon": "Coming soon"
}
}
diff --git a/apps/opt/messages/es.json b/apps/opt/messages/es.json
index e840a44..8439621 100644
--- a/apps/opt/messages/es.json
+++ b/apps/opt/messages/es.json
@@ -1,9 +1,48 @@
{
+ "home": {
+ "title1": "Tu viaje perfecto, todo en un solo lugar",
+ "title2": "Planifica tu aventura con One Plan Trip",
+ "title3": "Simplifica tus viajes, maximiza tus experiencias",
+ "title4": "Desde el destino hasta el último detalle",
+ "title5": "La evolución de la planificación de viajes",
+ "subtitle1": "Descubre la sinergia entre tus ideas y nuestras herramientas",
+ "subtitle2": "Un planificador para cada aspecto de tu viaje",
+ "subtitle3": "Conectando tus sueños con itinerarios realistas",
+ "subtitle4": "Experimenta la facilidad de planificar con precisión",
+ "subtitle5": "Desde la idea inicial hasta el último día de tu viaje",
+ "phrase1": "Planea. Organiza. Disfruta.",
+ "phrase2": "Tu asistente de viaje personal",
+ "phrase3": "Donde la inspiración se convierte en acción",
+ "phrase4": "Un plan, infinitas aventuras",
+ "phrase5": "Transforma tus viajes con One Plan Trip",
+ "tryNow": "Planea ahora",
+ "learnMore": "Descubre más",
+ "getStarted": "Comienza tu aventura",
+ "feature1": "Planificación integrada de destinos",
+ "feature2": "Gestión de presupuesto",
+ "feature3": "Organizador de actividades",
+ "feature4": "Colaboración con participantes",
+ "feature5": "Toda la información centralizada",
+ "title": "Acerca de One Plan Trip",
+ "description": "One Plan Trip es tu compañero ideal para la planificación de viajes. Desde la creación de itinerarios detallados hasta la gestión de presupuestos y la colaboración con amigos, nuestra app te ofrece todo lo que necesitas para hacer de tu próximo viaje una experiencia inolvidable."
+ },
"navbar": {
- "login": "Iniciar",
- "register": "Registro",
- "profile": "Perfil",
- "dashboard": "Panel de control",
- "log-out": "Salir"
+ "login": "Iniciar sesión",
+ "register": "Registrarse",
+ "profile": "Mi perfil",
+ "dashboard": "Mis viajes",
+ "log-out": "Cerrar sesión"
+ },
+ "footer": {
+ "about-us": "Sobre nosotros",
+ "help-center": "Centro de ayuda",
+ "for-travel-partners": "Para socios de viaje",
+ "destinations": "Destinos",
+ "our-technology": "Nuestra tecnología",
+ "travel-tips": "Consejos de viaje",
+ "community": "Comunidad",
+ "sustainability": "Viajes sostenibles",
+ "local-experiences": "Experiencias locales",
+ "coming-soon": "Próximas funciones"
}
}
From d35e09053da52d4d7fb751a6d8b932171b9d5278 Mon Sep 17 00:00:00 2001
From: "Frank Licona (3FE 3LE)" <3l33f3@gmail.com>
Date: Fri, 18 Oct 2024 19:53:23 -0500
Subject: [PATCH 03/25] feat(opt): :sparkles: add menuitem on OPT navbar
---
apps/opt/app/[locale]/layout.tsx | 34 +++++++++++++++++++++++++++++---
1 file changed, 31 insertions(+), 3 deletions(-)
diff --git a/apps/opt/app/[locale]/layout.tsx b/apps/opt/app/[locale]/layout.tsx
index ab2b0a6..ac07252 100644
--- a/apps/opt/app/[locale]/layout.tsx
+++ b/apps/opt/app/[locale]/layout.tsx
@@ -2,8 +2,10 @@ import '@opt/styles/main.scss';
import { getMessages, unstable_setRequestLocale } from 'next-intl/server';
+import { auth } from '@opt/auth';
import { AppWrapper, SWRProvider } from '@opt/components/UI';
import { Navbar } from '@repo/ui';
+import { OPT_URI, SSS_URI } from '@repo/ui/constants';
import { PageProps } from '@repo/ui/types';
import { metadata } from '../metadata';
@@ -18,7 +20,35 @@ export default async function RootLayout({
params: { locale },
}: PageProps) {
unstable_setRequestLocale(locale);
+ const session = await auth();
+
const messages = await getMessages();
+
+ const authenticated = !!session;
+
+ const menuItems = [
+ {
+ name: 'login',
+ href: SSS_URI + '/login',
+ protected: false,
+ },
+ {
+ name: 'register',
+ href: OPT_URI + '/register',
+ protected: false,
+ },
+ {
+ name: 'dashboard',
+ href: '/dashboard',
+ protected: true,
+ },
+ {
+ name: 'profile',
+ href: '/profile',
+ protected: true,
+ },
+ ];
+
return (
@@ -27,9 +57,7 @@ export default async function RootLayout({
From 8cf8602eb0d742d641263c95cd81ceb0d1056470 Mon Sep 17 00:00:00 2001
From: "Frank Licona (3FE 3LE)" <3l33f3@gmail.com>
Date: Fri, 18 Oct 2024 19:55:01 -0500
Subject: [PATCH 04/25] perf(suite): :sparkles: upgrade props using on lavbar
component
---
apps/suite/app/[locale]/layout.tsx | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/apps/suite/app/[locale]/layout.tsx b/apps/suite/app/[locale]/layout.tsx
index a2fb837..f9ce9e4 100644
--- a/apps/suite/app/[locale]/layout.tsx
+++ b/apps/suite/app/[locale]/layout.tsx
@@ -61,10 +61,8 @@ export default async function RootLayout({
{session &&
}
From 7eeb444bc6d68b83f7213ba86dc1af28158dbb3f Mon Sep 17 00:00:00 2001
From: "Frank Licona (3FE 3LE)" <3l33f3@gmail.com>
Date: Sat, 19 Oct 2024 16:58:02 -0500
Subject: [PATCH 05/25] feat(opt): :sparkles: SSS-9 set styles on homepage
---
apps/opt/app/[locale]/page.tsx | 23 ++++++++++++++++++++---
1 file changed, 20 insertions(+), 3 deletions(-)
diff --git a/apps/opt/app/[locale]/page.tsx b/apps/opt/app/[locale]/page.tsx
index c074b7b..94163bf 100644
--- a/apps/opt/app/[locale]/page.tsx
+++ b/apps/opt/app/[locale]/page.tsx
@@ -1,7 +1,24 @@
-export default function Web() {
+import { getTranslations } from 'next-intl/server';
+import Image from 'next/image';
+import Link from 'next/link';
+
+import lading_img from '@repo/ui/assets/animated/globalization-a.svg';
+
+export default async function HomePage() {
+ const t = await getTranslations('home');
+
return (
-
-
Este es One plan trip
+
+
+
{t('title3')}
+ {t('subtitle2')}
+
+ {t('getStarted')}
+
+
+
+
+
);
}
From 7d72b0eba816959061570437d4084636b3e6bef3 Mon Sep 17 00:00:00 2001
From: "Frank Licona (3FE 3LE)" <3l33f3@gmail.com>
Date: Sat, 19 Oct 2024 17:09:37 -0500
Subject: [PATCH 06/25] SSS-9 fix img naming typo
---
apps/opt/app/[locale]/page.tsx | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/apps/opt/app/[locale]/page.tsx b/apps/opt/app/[locale]/page.tsx
index 94163bf..1bfcb3f 100644
--- a/apps/opt/app/[locale]/page.tsx
+++ b/apps/opt/app/[locale]/page.tsx
@@ -2,7 +2,7 @@ import { getTranslations } from 'next-intl/server';
import Image from 'next/image';
import Link from 'next/link';
-import lading_img from '@repo/ui/assets/animated/globalization-a.svg';
+import landing_img from '@repo/ui/assets/animated/globalization-a.svg';
export default async function HomePage() {
const t = await getTranslations('home');
@@ -17,7 +17,7 @@ export default async function HomePage() {
-
+
);
From 810bef40caaa4dbc2c4d88f4ec82a575a6e8a921 Mon Sep 17 00:00:00 2001
From: "Frank Licona (3FE 3LE)" <3l33f3@gmail.com>
Date: Sat, 19 Oct 2024 17:39:06 -0500
Subject: [PATCH 07/25] feat(opt): :sparkles: SSS-5 add style on dashboard page
---
apps/opt/app/[locale]/dashboard/page.tsx | 323 ++++++++++++++++--
apps/opt/components/trips/TripActivities.tsx | 6 +-
apps/opt/components/trips/TripDestinies.tsx | 6 +-
.../opt/core/interfaces/TripGroupInterface.ts | 11 +
apps/opt/core/interfaces/TripInterface.ts | 23 +-
apps/opt/core/interfaces/UserInterface.ts | 16 +
apps/opt/core/interfaces/index.ts | 2 +
packages/ui/styles/abstracts/_mixins.scss | 5 +
packages/ui/styles/components/_button.scss | 1 +
packages/ui/styles/components/_card.scss | 54 +--
packages/ui/styles/components/_index.scss | 2 +-
packages/ui/styles/components/_trip-list.scss | 83 +++++
.../ui/styles/components/_trip-progress.scss | 29 ++
packages/ui/styles/layouts/_main.scss | 4 +
packages/ui/styles/pages/_dashboard.scss | 49 ++-
15 files changed, 547 insertions(+), 67 deletions(-)
create mode 100644 apps/opt/core/interfaces/TripGroupInterface.ts
create mode 100644 apps/opt/core/interfaces/UserInterface.ts
create mode 100644 packages/ui/styles/components/_trip-list.scss
create mode 100644 packages/ui/styles/components/_trip-progress.scss
diff --git a/apps/opt/app/[locale]/dashboard/page.tsx b/apps/opt/app/[locale]/dashboard/page.tsx
index 1c8f272..b7c962a 100644
--- a/apps/opt/app/[locale]/dashboard/page.tsx
+++ b/apps/opt/app/[locale]/dashboard/page.tsx
@@ -1,38 +1,295 @@
-import { Link } from '@opt/navigations';
-import { ActionButton } from '@repo/ui';
+'use client';
+
+import {
+ ArrowRight,
+ Calendar,
+ Clock,
+ DollarSign,
+ History,
+ MapPin,
+ Plane,
+ PlusCircle,
+ Search,
+ User,
+ Users,
+} from 'lucide-react';
+import { useFormatter } from 'next-intl';
+import { useState } from 'react';
+
+import { Trip, TripStatus } from '@opt/core/interfaces/TripInterface';
+import { TripAdapter } from '@opt/integration/adapters';
+import { createTripsHooks } from '@opt/integration/hooks';
+import { useRouter } from '@opt/navigations';
+import { ActionButton, InputField } from '@repo/ui';
+
+export default function Dashboard() {
+ const [searchTerm, setSearchTerm] = useState('');
+
+ const format = useFormatter();
+
+ const router = useRouter();
+
+ const { useTrips } = createTripsHooks(TripAdapter);
+
+ const { results: allTrips, isError, isLoading } = useTrips();
+
+ const currentTrips = allTrips?.filter(
+ (trip) =>
+ trip.status === TripStatus.IN_PROGRESS ||
+ trip.status === TripStatus.PLANNING,
+ );
+ const upcomingTrips = allTrips?.filter(
+ (trip) =>
+ trip.status === TripStatus.PLANNING &&
+ new Date(trip.startDate!) > new Date(),
+ );
+ const pastTrips = allTrips?.filter(
+ (trip) => trip.status === TripStatus.COMPLETED,
+ );
+
+ const filteredTrips = allTrips?.filter(
+ (trip) =>
+ trip.title.toLowerCase().includes(searchTerm.toLowerCase()) ||
+ trip.destinies?.some((destiny) =>
+ destiny.name?.toLowerCase().includes(searchTerm.toLowerCase()),
+ ),
+ );
+
+ const renderTripList = (trips: Trip[]) => (
+
+ {trips.map((trip) => (
+ - router.push(`/trips/${trip.id}`)}
+ >
+
+
{trip.title}
+
+ {trip.status}
+
+
+
+
+ {trip.destinies && trip.destinies.length > 0
+ ? trip.destinies[trip.destinies.length - 1].name +
+ ' ' +
+
+
+ ' ' +
+ trip.destinies[0].name
+ : 'Destinies not defined yet'}
+
+
+
+ {trip.startDate && trip.endDate
+ ? `${format.dateTime(trip.startDate, {
+ year: 'numeric',
+ month: 'short',
+ day: 'numeric',
+ })} - ${format.dateTime(trip.endDate, {
+ year: 'numeric',
+ month: 'short',
+ day: 'numeric',
+ })}`
+ : 'Dates to be confirmed'}
+
+
+ {trip.members?.length === 1 ? : }
+ {trip.members?.length}{' '}
+ {trip.members?.length === 1 ? 'person' : 'people'}
+
+
+ {trip.budget && (
+
+
+
+ Budget: ${trip.budget.min} - ${trip.budget.max}
+
+ {/* Expenses: ${trip.expenses} */}
+
+
+
+ Budget
+ {trip.budget.amount}
+ 50%
+
+
+
+
+ )}
+
+ ))}
+
+ );
+
+ const totalBudget = allTrips?.reduce(
+ (sum, trip) => sum + (trip.budget?.amount || 0),
+ 0,
+ );
+ // const totalExpenses = allTrips?.reduce(
+ // (sum, trip) => sum + (trip.expenses || 0),
+ // 0,
+ // );
+ const totalParticipants = allTrips?.reduce(
+ (sum, trip) => sum + trip.members?.length!,
+ 0,
+ );
+ const averageBudgetPerPerson = totalBudget! / totalParticipants!;
+ // const averageExpensesPerPerson = totalExpenses / totalParticipants;
-export default async function DashboardPage() {
return (
-
-
- Your trips
- new Trip
-
-
- Current trip
- You can see your past trips here.
-
- To create a new trip, click on New Trip.
-
- Click on a trip to view its details.
-
-
- Coming soon...
- You can see your past trips here.
-
- To create a new trip, click on New Trip.
-
- Click on a trip to view its details.
-
-
- Trips history
- You can see your past trips here.
-
- To create a new trip, click on New Trip.
-
- Click on a trip to view its details.
-
-
See all trips
+
+
+
router.push('/trips/new')}
+ >
+ New Trip
+
+
setSearchTerm(e.target.value)}
+ name="search"
+ >
+
+
+
+
+
+
+
+
+ Total Trips
+
+
+
+ {allTrips?.length}
+
+
+
+
+
+ Next Trip
+
+
+
+
+ {upcomingTrips?.length! > 0
+ ? format.dateTime(upcomingTrips?.[0].startDate!, 'd MMM, yyyy')
+ : 'No upcoming trips'}
+
+
+
+
+
+
+ Total Budget
+
+
+
+ ${totalBudget}
+ {/*
+ Spent: ${totalExpenses} (
+ {((totalExpenses! / totalBudget!) * 100).toFixed(1)}%)
+ */}
+
+
+
+
+ Avg. Budget/Person
+
+
+
+
+ ${averageBudgetPerPerson.toFixed(2)}
+
+
+
+
+
+
+ Avg. Expenses/Person
+
+
+ {/*
+
+ ${averageExpensesPerPerson.toFixed(2)}
+
+
*/}
+
+
+
+
+ Total Participants
+
+
+
+ {totalParticipants}
+
+
+
+
+ {searchTerm ? (
+
+ Search Results
+ {filteredTrips?.length! > 0 ? (
+ renderTripList(filteredTrips!)
+ ) : (
+
+ No trips found matching your search.
+
+ )}
+
+ ) : (
+
+
+
+
+ Current Trips
+
+ {currentTrips?.length! > 0 ? (
+ renderTripList(currentTrips!)
+ ) : (
+ You have no current trips.
+ )}
+
+
+
+
+
+ Upcoming Trips
+
+ {upcomingTrips!.length > 0 ? (
+ renderTripList(upcomingTrips!)
+ ) : (
+ You have no upcoming trips.
+ )}
+
+
+
+
+
+ Trip History
+
+ {pastTrips!.length > 0 ? (
+ renderTripList(pastTrips!.slice(0, 3))
+ ) : (
+ You have no past trips.
+ )}
+ {pastTrips!.length > 3 && (
+ View all trips
+ )}
+
+
+ )}
);
}
diff --git a/apps/opt/components/trips/TripActivities.tsx b/apps/opt/components/trips/TripActivities.tsx
index 4346112..e25fc5c 100644
--- a/apps/opt/components/trips/TripActivities.tsx
+++ b/apps/opt/components/trips/TripActivities.tsx
@@ -1,7 +1,11 @@
import { Activity } from '@opt/core/interfaces';
import { ActionButton } from '@repo/ui';
-export const TripActivities = ({ activities }: { activities: Activity[] }) => {
+export const TripActivities = ({
+ activities,
+}: {
+ activities: Partial
[];
+}) => {
if (!activities) {
return No Activities, yet;
}
diff --git a/apps/opt/components/trips/TripDestinies.tsx b/apps/opt/components/trips/TripDestinies.tsx
index 6b2fe04..7a40e1a 100644
--- a/apps/opt/components/trips/TripDestinies.tsx
+++ b/apps/opt/components/trips/TripDestinies.tsx
@@ -4,7 +4,11 @@ import { useRouter } from 'next/navigation';
import { Destiny } from '@opt/core/interfaces';
import { ActionButton } from '@repo/ui';
-export const TripDestinies = ({ destinies }: { destinies: Destiny[] }) => {
+export const TripDestinies = ({
+ destinies,
+}: {
+ destinies: Partial[];
+}) => {
const router = useRouter();
return (
diff --git a/apps/opt/core/interfaces/TripGroupInterface.ts b/apps/opt/core/interfaces/TripGroupInterface.ts
new file mode 100644
index 0000000..3eaeb26
--- /dev/null
+++ b/apps/opt/core/interfaces/TripGroupInterface.ts
@@ -0,0 +1,11 @@
+import { Trip } from './TripInterface';
+import { Member } from './UserInterface';
+
+export interface TripGroup {
+ id: string;
+ name: string;
+ description: string;
+ createdAt: Date;
+ members: Member[];
+ trips: Trip[];
+}
diff --git a/apps/opt/core/interfaces/TripInterface.ts b/apps/opt/core/interfaces/TripInterface.ts
index 42c682c..639b417 100644
--- a/apps/opt/core/interfaces/TripInterface.ts
+++ b/apps/opt/core/interfaces/TripInterface.ts
@@ -1,6 +1,8 @@
import { Activity } from './ActivityInterface';
import { Budget } from './BudgetInterface';
import { Destiny } from './DestinyInterface';
+import { TripGroup } from './TripGroupInterface';
+import { Member } from './UserInterface';
export interface Trip {
id?: string;
@@ -11,10 +13,25 @@ export interface Trip {
startDate?: Date;
endDate?: Date;
budgetId?: number;
- status?: string;
+ tripGroupId?: string;
+ status?: TripStatus;
tripType: string;
priority: string;
budget?: Budget;
- destinies?: Destiny[];
- activities?: Activity[];
+ shareableLink?: string;
+ qrCode?: string;
+ members?: Partial[];
+ destinies?: Partial[];
+ activities?: Partial[];
+ tripGroup?: Partial;
+}
+
+export enum TripStatus {
+ DRAFT = 'DRAFT',
+ PLANNING = 'PLANNING',
+ BOOKED = 'BOOKED',
+ IN_PROGRESS = 'IN_PROGRESS',
+ COMPLETED = 'COMPLETED',
+ CANCELLED = 'CANCELLED',
+ ON_HOLD = 'ON_HOLD',
}
diff --git a/apps/opt/core/interfaces/UserInterface.ts b/apps/opt/core/interfaces/UserInterface.ts
new file mode 100644
index 0000000..d40f853
--- /dev/null
+++ b/apps/opt/core/interfaces/UserInterface.ts
@@ -0,0 +1,16 @@
+export interface User {
+ id: string;
+ name: string;
+ email: string;
+ password: string;
+ createdAt: Date;
+ updatedAt: Date;
+}
+
+export interface Member {
+ id: string;
+ name: string;
+ email: string;
+ roleId: number;
+ tripId: string;
+}
diff --git a/apps/opt/core/interfaces/index.ts b/apps/opt/core/interfaces/index.ts
index b89e629..0b324e0 100644
--- a/apps/opt/core/interfaces/index.ts
+++ b/apps/opt/core/interfaces/index.ts
@@ -2,3 +2,5 @@ export type { Activity } from './ActivityInterface';
export type { Budget, Currency } from './BudgetInterface';
export type { Destiny } from './DestinyInterface';
export type { Trip } from './TripInterface';
+export type { TripGroup } from './TripGroupInterface';
+export type { User } from './UserInterface';
diff --git a/packages/ui/styles/abstracts/_mixins.scss b/packages/ui/styles/abstracts/_mixins.scss
index 3f4bd29..5a7b81a 100644
--- a/packages/ui/styles/abstracts/_mixins.scss
+++ b/packages/ui/styles/abstracts/_mixins.scss
@@ -184,6 +184,11 @@
}
}
+@mixin status-color($bg-color, $text-color) {
+ background-color: $bg-color;
+ color: $text-color;
+}
+
@mixin hover-focus-color {
background-color: $ss-gray-lr;
[data-theme='dark'] & {
diff --git a/packages/ui/styles/components/_button.scss b/packages/ui/styles/components/_button.scss
index d26f270..3e73a11 100644
--- a/packages/ui/styles/components/_button.scss
+++ b/packages/ui/styles/components/_button.scss
@@ -1,4 +1,5 @@
.button {
+ text-wrap: nowrap;
display: inline-flex;
justify-content: center;
align-items: center;
diff --git a/packages/ui/styles/components/_card.scss b/packages/ui/styles/components/_card.scss
index 1d9af20..5f53541 100644
--- a/packages/ui/styles/components/_card.scss
+++ b/packages/ui/styles/components/_card.scss
@@ -1,34 +1,36 @@
.card {
- @include shadow;
- @include border-color;
- @include highlighted-color;
- border-radius: rem(12);
- padding: rem(16);
- width: 100%;
- max-width: rem(320);
- height: 100%;
- max-height: rem(280);
- &__container {
+ border-radius: 0.5rem;
+ padding: 1rem;
+ max-width: rem(250);
+ @include background-color;
+ @include shadow-sm;
+
+ &__header {
display: flex;
- flex-direction: column;
justify-content: space-between;
- height: 100%;
+ align-items: center;
+ margin-bottom: 1rem;
}
- &__header {
- @include subtitle(1);
- margin-bottom: rem(8);
+
+ &__title {
+ @include text-color;
+ font-weight: 500;
+ font-size: 0.875rem;
+ }
+
+ &__icon {
+ width: 1rem;
+ height: 1rem;
+ color: $secondary-color;
}
- &__body {
- @include text(base);
- margin-bottom: rem(8);
+
+ &__content {
+ font-weight: bold;
+ font-size: 1.25rem;
}
- &__button {
- @include text(interface);
- display: block;
- border-radius: rem(4);
- @include gradient-bg(primary);
- padding: rem(8);
- color: $ss-white;
- text-align: center;
+
+ &__note {
+ color: $ss-gray;
+ font-size: 0.75rem;
}
}
diff --git a/packages/ui/styles/components/_index.scss b/packages/ui/styles/components/_index.scss
index b58c41e..4627885 100644
--- a/packages/ui/styles/components/_index.scss
+++ b/packages/ui/styles/components/_index.scss
@@ -1,2 +1,2 @@
@import 'form', 'navbar', 'button', 'footer', 'sidebar', 'theme-switcher',
- 'card', 'stepper';
+ 'card', 'stepper', 'trip-list', 'trip-progress';
diff --git a/packages/ui/styles/components/_trip-list.scss b/packages/ui/styles/components/_trip-list.scss
new file mode 100644
index 0000000..b457ff8
--- /dev/null
+++ b/packages/ui/styles/components/_trip-list.scss
@@ -0,0 +1,83 @@
+.trip-list {
+ display: grid;
+ grid-template-columns: repeat(1, 1fr);
+ gap: rem(24);
+
+ @media (min-width: 768px) {
+ grid-template-columns: repeat(2, 1fr);
+ }
+ @media (min-width: 1280px) {
+ grid-template-columns: repeat(3, 1fr);
+ }
+ &__item {
+ margin-bottom: rem(16);
+ border-radius: rem(8);
+ padding: rem(16);
+ @include shadow-sm;
+ @include background-color;
+ cursor: pointer;
+ }
+
+ &__header {
+ display: flex;
+ justify-content: space-between;
+ margin-bottom: rem(16);
+ }
+
+ &__title {
+ font-weight: bold;
+ font-size: rem(20);
+ }
+
+ &__status {
+ border-radius: rem(4);
+ @include text(misc);
+ padding: rem(4);
+ &--draft {
+ @include status-color($ss-gray-d, $ss-gray-lr);
+ }
+ &--planning {
+ @include status-color($ss-warning, $ss-gray-dr);
+ }
+ &--booked {
+ @include status-color($ss-blue-l, $ss-gray-dr);
+ }
+ &--in_progress {
+ @include status-color($ss-green, $ss-white);
+ }
+ &--completed {
+ @include status-color($ss-blue-d, $ss-gray-lr);
+ }
+ &--cancelled {
+ @include status-color($ss-red, $ss-white);
+ }
+ &--on_hold {
+ @include status-color($ss-error, $ss-gray-lr);
+ }
+ }
+
+ &__details {
+ display: flex;
+ align-items: center;
+ margin-bottom: rem(12);
+
+ &__icon {
+ margin-right: rem(8);
+ }
+
+ &__arrow {
+ margin: 0 rem(8);
+ }
+ }
+ &__content {
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+ margin-bottom: rem(12);
+ }
+ &__info {
+ display: flex;
+ align-items: center;
+ gap: rem(16);
+ }
+}
diff --git a/packages/ui/styles/components/_trip-progress.scss b/packages/ui/styles/components/_trip-progress.scss
new file mode 100644
index 0000000..2273250
--- /dev/null
+++ b/packages/ui/styles/components/_trip-progress.scss
@@ -0,0 +1,29 @@
+.trip-progress {
+ margin-top: 0.75rem;
+
+ &__info {
+ display: flex;
+ justify-content: space-between;
+ margin-bottom: 0.25rem;
+ font-size: 0.875rem;
+ }
+
+ &__bar {
+ border-radius: 0.25rem;
+ background: linear-gradient(
+ to right,
+ $ss-gray-lr 49.5%,
+ /* Fondo gris hasta justo antes del centro */ $ss-error 50%,
+ /* Línea vertical en el centro (ajusta el color) */ $ss-gray-lr 50.5%
+ /* Vuelve a gris justo después de la línea */
+ );
+ height: 0.5rem;
+ overflow: hidden;
+
+ &__fill {
+ background-color: $ss-blue;
+ width: var(--progress-value, 0%);
+ height: 100%;
+ }
+ }
+}
diff --git a/packages/ui/styles/layouts/_main.scss b/packages/ui/styles/layouts/_main.scss
index 4bf2cda..9e3bc2d 100644
--- a/packages/ui/styles/layouts/_main.scss
+++ b/packages/ui/styles/layouts/_main.scss
@@ -7,6 +7,10 @@
}
&__section {
display: flex;
+ // flex-direction: column;
+ justify-content: center;
+ // align-items: flex-start;
+ gap: rem(16);
padding: rem(16);
width: 100%;
min-height: calc(100dvh - rem(52));
diff --git a/packages/ui/styles/pages/_dashboard.scss b/packages/ui/styles/pages/_dashboard.scss
index b7211f2..4eff080 100644
--- a/packages/ui/styles/pages/_dashboard.scss
+++ b/packages/ui/styles/pages/_dashboard.scss
@@ -1,5 +1,50 @@
.dashboard {
- &__container {
- width: 100%;
+ &__stats {
+ display: grid;
+ grid-template-columns: repeat(2, 1fr);
+ gap: rem(24);
+ margin-bottom: rem(32);
+
+ @media (min-width: 768px) {
+ grid-template-columns: repeat(3, 1fr);
+ }
+ @media (min-width: 1280px) {
+ grid-template-columns: repeat(6, 1fr);
+ }
}
+
+ &__search {
+ display: flex;
+ align-items: center;
+ gap: rem(16);
+ margin: rem(24) 0;
+ .form__group {
+ flex-direction: row;
+ gap: rem(16);
+ }
+ }
+}
+.trip-sections {
+ section {
+ margin-bottom: rem(16);
+ }
+}
+
+.section-title {
+ display: flex;
+ align-items: center;
+ gap: rem(8);
+ margin-bottom: rem(8);
+ color: $primary-color;
+ font-size: rem(28);
+}
+
+.section__message {
+ border-radius: rem(8);
+ padding: rem(64);
+ width: 100%;
+ color: $ss-gray;
+ text-align: center;
+ @include text(interface);
+ @include shadow-sm(true);
}
From 416b8f04c300b8b1bd3051be4ad4146169639a7b Mon Sep 17 00:00:00 2001
From: "Frank Licona (3FE 3LE)" <3l33f3@gmail.com>
Date: Fri, 25 Oct 2024 18:57:54 -0500
Subject: [PATCH 08/25] perf(global): :arrow_up: update next version and set
turbo flag on dev script
---
apps/opt/next-env.d.ts | 2 +-
apps/opt/package.json | 6 +-
apps/suite/next-env.d.ts | 2 +-
apps/suite/package.json | 6 +-
apps/web/next-env.d.ts | 2 +-
apps/web/package.json | 6 +-
packages/ui/package.json | 6 +-
yarn.lock | 824 ++++++++++++++++++++++++---------------
8 files changed, 525 insertions(+), 329 deletions(-)
diff --git a/apps/opt/next-env.d.ts b/apps/opt/next-env.d.ts
index 4f11a03..40c3d68 100644
--- a/apps/opt/next-env.d.ts
+++ b/apps/opt/next-env.d.ts
@@ -2,4 +2,4 @@
///
// NOTE: This file should not be edited
-// see https://nextjs.org/docs/basic-features/typescript for more information.
+// see https://nextjs.org/docs/app/building-your-application/configuring/typescript for more information.
diff --git a/apps/opt/package.json b/apps/opt/package.json
index a7d67b5..818fe13 100644
--- a/apps/opt/package.json
+++ b/apps/opt/package.json
@@ -3,7 +3,7 @@
"version": "1.0.0",
"private": true,
"scripts": {
- "dev": "next dev -p 3002",
+ "dev": "next dev -p 3002 --turbo",
"postinstall": "prisma generate",
"build": "prisma generate && next build",
"start": "next start -p 3002",
@@ -14,7 +14,7 @@
},
"dependencies": {
"@repo/ui": "*",
- "next": "^14.2.5",
+ "next": "^15.0.1",
"react": "^18.3.1",
"react-dom": "^18.3.1",
"react-native-web": "^0.19.10",
@@ -27,7 +27,7 @@
"@types/react-dom": "^18.3.0",
"babel-plugin-react-native-web": "^0.19.10",
"eslint": "^8.56.0",
- "eslint-config-next": "^14.2.5",
+ "eslint-config-next": "^15.0.1",
"typescript": "^5.3.3"
}
}
diff --git a/apps/suite/next-env.d.ts b/apps/suite/next-env.d.ts
index 4f11a03..40c3d68 100644
--- a/apps/suite/next-env.d.ts
+++ b/apps/suite/next-env.d.ts
@@ -2,4 +2,4 @@
///
// NOTE: This file should not be edited
-// see https://nextjs.org/docs/basic-features/typescript for more information.
+// see https://nextjs.org/docs/app/building-your-application/configuring/typescript for more information.
diff --git a/apps/suite/package.json b/apps/suite/package.json
index 2414c22..37e5875 100644
--- a/apps/suite/package.json
+++ b/apps/suite/package.json
@@ -3,7 +3,7 @@
"version": "1.0.0",
"private": true,
"scripts": {
- "dev": "next dev -p 3001",
+ "dev": "next dev -p 3001 --turbo",
"postinstall": "prisma generate",
"build": "prisma generate && next build",
"start": "next start -p 3001",
@@ -11,7 +11,7 @@
},
"dependencies": {
"@repo/ui": "*",
- "next": "^14.2.5",
+ "next": "^15.0.1",
"react": "^18.3.1",
"react-dom": "^18.3.1",
"react-native-web": "^0.19.10",
@@ -24,7 +24,7 @@
"@types/react-dom": "^18.3.0",
"babel-plugin-react-native-web": "^0.19.10",
"eslint": "^8.56.0",
- "eslint-config-next": "^14.2.5",
+ "eslint-config-next": "^15.0.1",
"typescript": "^5.3.3"
}
}
diff --git a/apps/web/next-env.d.ts b/apps/web/next-env.d.ts
index 4f11a03..40c3d68 100644
--- a/apps/web/next-env.d.ts
+++ b/apps/web/next-env.d.ts
@@ -2,4 +2,4 @@
///
// NOTE: This file should not be edited
-// see https://nextjs.org/docs/basic-features/typescript for more information.
+// see https://nextjs.org/docs/app/building-your-application/configuring/typescript for more information.
diff --git a/apps/web/package.json b/apps/web/package.json
index 280b9cd..4ab33c7 100644
--- a/apps/web/package.json
+++ b/apps/web/package.json
@@ -3,7 +3,7 @@
"version": "1.0.0",
"private": true,
"scripts": {
- "dev": "next dev -p 3003",
+ "dev": "next dev -p 3003 --turbo",
"postinstall": "prisma generate",
"build": "prisma generate && next build",
"start": "next start -p 3003",
@@ -11,7 +11,7 @@
},
"dependencies": {
"@repo/ui": "*",
- "next": "^14.2.5",
+ "next": "^15.0.1",
"react": "^18.3.1",
"react-dom": "^18.3.1",
"react-native-web": "^0.19.10",
@@ -24,7 +24,7 @@
"@types/react-dom": "^18.3.0",
"babel-plugin-react-native-web": "^0.19.10",
"eslint": "^8.56.0",
- "eslint-config-next": "^14.2.5",
+ "eslint-config-next": "^15.0.1",
"typescript": "^5.3.3"
}
}
diff --git a/packages/ui/package.json b/packages/ui/package.json
index 97d8a61..c343aaa 100644
--- a/packages/ui/package.json
+++ b/packages/ui/package.json
@@ -24,7 +24,7 @@
"jest": "^29.5.13",
"jest-environment-jsdom": "^29.5.13",
"nyc": "^17.1.0",
- "prisma": "^5.18.0",
+ "prisma": "^5.21.1",
"ts-jest": "^29.2.5",
"tsup": "^8.0.1",
"typescript": "^5.3.3"
@@ -32,14 +32,14 @@
"dependencies": {
"@auth/prisma-adapter": "^2.4.2",
"@hookform/resolvers": "^3.6.0",
- "@prisma/client": "^5.18.0",
+ "@prisma/client": "^5.21.1",
"@supabase/supabase-js": "^2.45.1",
"@vercel/speed-insights": "^1.0.12",
"@vis.gl/react-google-maps": "^1.1.0",
"immer": "^10.1.1",
"jose": "^5.8.0",
"lucide-react": "^0.435.0",
- "next": "^14.2.5",
+ "next": "^15.0.1",
"next-auth": "^5.0.0-beta.19",
"next-intl": "^3.15.3",
"next-themes": "^0.3.0",
diff --git a/yarn.lock b/yarn.lock
index 6e07c48..b938d38 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -983,7 +983,7 @@
resolved "https://registry.yarnpkg.com/@babel/regjsgen/-/regjsgen-0.8.0.tgz#f0ba69b075e1f05fb2825b7fad991e7adbb18310"
integrity sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==
-"@babel/runtime@^7.0.0", "@babel/runtime@^7.18.6", "@babel/runtime@^7.20.0", "@babel/runtime@^7.23.2":
+"@babel/runtime@^7.0.0", "@babel/runtime@^7.18.6", "@babel/runtime@^7.20.0":
version "7.24.7"
resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.24.7.tgz#f4f0d5530e8dbdf59b3451b9b3e594b6ba082e12"
integrity sha512-UwgBRMjJP+xv857DCngvqXI3Iq6J4v0wXmwc6sapg+zyhbwmQX67LUEFrkK5tbyJ30jGuG3ZvWpBiB9LCy1kWw==
@@ -1128,6 +1128,13 @@
debug "^3.1.0"
lodash.once "^4.1.1"
+"@emnapi/runtime@^1.2.0":
+ version "1.3.1"
+ resolved "https://registry.yarnpkg.com/@emnapi/runtime/-/runtime-1.3.1.tgz#0fcaa575afc31f455fd33534c19381cfce6c6f60"
+ integrity sha512-kEBmG8KyqtxJZv+ygbEim+KCGtIq1fC22Ms3S4ziXmYKm8uyoLX0MHONVKwp+9opg390VaKRNt4a7A9NwmpNhw==
+ dependencies:
+ tslib "^2.4.0"
+
"@esbuild/aix-ppc64@0.21.4":
version "0.21.4"
resolved "https://registry.yarnpkg.com/@esbuild/aix-ppc64/-/aix-ppc64-0.21.4.tgz#f83eb142df3ca7b49531c1ed680b81e484316508"
@@ -1831,6 +1838,119 @@
resolved "https://registry.yarnpkg.com/@humanwhocodes/retry/-/retry-0.3.0.tgz#6d86b8cb322660f03d3f0aa94b99bdd8e172d570"
integrity sha512-d2CGZR2o7fS6sWB7DG/3a95bGKQyHMACZ5aW8qGkkqQpUoZV6C0X7Pc7l4ZNMZkfNBf4VWNe9E1jRsf0G146Ew==
+"@img/sharp-darwin-arm64@0.33.5":
+ version "0.33.5"
+ resolved "https://registry.yarnpkg.com/@img/sharp-darwin-arm64/-/sharp-darwin-arm64-0.33.5.tgz#ef5b5a07862805f1e8145a377c8ba6e98813ca08"
+ integrity sha512-UT4p+iz/2H4twwAoLCqfA9UH5pI6DggwKEGuaPy7nCVQ8ZsiY5PIcrRvD1DzuY3qYL07NtIQcWnBSY/heikIFQ==
+ optionalDependencies:
+ "@img/sharp-libvips-darwin-arm64" "1.0.4"
+
+"@img/sharp-darwin-x64@0.33.5":
+ version "0.33.5"
+ resolved "https://registry.yarnpkg.com/@img/sharp-darwin-x64/-/sharp-darwin-x64-0.33.5.tgz#e03d3451cd9e664faa72948cc70a403ea4063d61"
+ integrity sha512-fyHac4jIc1ANYGRDxtiqelIbdWkIuQaI84Mv45KvGRRxSAa7o7d1ZKAOBaYbnepLC1WqxfpimdeWfvqqSGwR2Q==
+ optionalDependencies:
+ "@img/sharp-libvips-darwin-x64" "1.0.4"
+
+"@img/sharp-libvips-darwin-arm64@1.0.4":
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/@img/sharp-libvips-darwin-arm64/-/sharp-libvips-darwin-arm64-1.0.4.tgz#447c5026700c01a993c7804eb8af5f6e9868c07f"
+ integrity sha512-XblONe153h0O2zuFfTAbQYAX2JhYmDHeWikp1LM9Hul9gVPjFY427k6dFEcOL72O01QxQsWi761svJ/ev9xEDg==
+
+"@img/sharp-libvips-darwin-x64@1.0.4":
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/@img/sharp-libvips-darwin-x64/-/sharp-libvips-darwin-x64-1.0.4.tgz#e0456f8f7c623f9dbfbdc77383caa72281d86062"
+ integrity sha512-xnGR8YuZYfJGmWPvmlunFaWJsb9T/AO2ykoP3Fz/0X5XV2aoYBPkX6xqCQvUTKKiLddarLaxpzNe+b1hjeWHAQ==
+
+"@img/sharp-libvips-linux-arm64@1.0.4":
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/@img/sharp-libvips-linux-arm64/-/sharp-libvips-linux-arm64-1.0.4.tgz#979b1c66c9a91f7ff2893556ef267f90ebe51704"
+ integrity sha512-9B+taZ8DlyyqzZQnoeIvDVR/2F4EbMepXMc/NdVbkzsJbzkUjhXv/70GQJ7tdLA4YJgNP25zukcxpX2/SueNrA==
+
+"@img/sharp-libvips-linux-arm@1.0.5":
+ version "1.0.5"
+ resolved "https://registry.yarnpkg.com/@img/sharp-libvips-linux-arm/-/sharp-libvips-linux-arm-1.0.5.tgz#99f922d4e15216ec205dcb6891b721bfd2884197"
+ integrity sha512-gvcC4ACAOPRNATg/ov8/MnbxFDJqf/pDePbBnuBDcjsI8PssmjoKMAz4LtLaVi+OnSb5FK/yIOamqDwGmXW32g==
+
+"@img/sharp-libvips-linux-s390x@1.0.4":
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/@img/sharp-libvips-linux-s390x/-/sharp-libvips-linux-s390x-1.0.4.tgz#f8a5eb1f374a082f72b3f45e2fb25b8118a8a5ce"
+ integrity sha512-u7Wz6ntiSSgGSGcjZ55im6uvTrOxSIS8/dgoVMoiGE9I6JAfU50yH5BoDlYA1tcuGS7g/QNtetJnxA6QEsCVTA==
+
+"@img/sharp-libvips-linux-x64@1.0.4":
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/@img/sharp-libvips-linux-x64/-/sharp-libvips-linux-x64-1.0.4.tgz#d4c4619cdd157774906e15770ee119931c7ef5e0"
+ integrity sha512-MmWmQ3iPFZr0Iev+BAgVMb3ZyC4KeFc3jFxnNbEPas60e1cIfevbtuyf9nDGIzOaW9PdnDciJm+wFFaTlj5xYw==
+
+"@img/sharp-libvips-linuxmusl-arm64@1.0.4":
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/@img/sharp-libvips-linuxmusl-arm64/-/sharp-libvips-linuxmusl-arm64-1.0.4.tgz#166778da0f48dd2bded1fa3033cee6b588f0d5d5"
+ integrity sha512-9Ti+BbTYDcsbp4wfYib8Ctm1ilkugkA/uscUn6UXK1ldpC1JjiXbLfFZtRlBhjPZ5o1NCLiDbg8fhUPKStHoTA==
+
+"@img/sharp-libvips-linuxmusl-x64@1.0.4":
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/@img/sharp-libvips-linuxmusl-x64/-/sharp-libvips-linuxmusl-x64-1.0.4.tgz#93794e4d7720b077fcad3e02982f2f1c246751ff"
+ integrity sha512-viYN1KX9m+/hGkJtvYYp+CCLgnJXwiQB39damAO7WMdKWlIhmYTfHjwSbQeUK/20vY154mwezd9HflVFM1wVSw==
+
+"@img/sharp-linux-arm64@0.33.5":
+ version "0.33.5"
+ resolved "https://registry.yarnpkg.com/@img/sharp-linux-arm64/-/sharp-linux-arm64-0.33.5.tgz#edb0697e7a8279c9fc829a60fc35644c4839bb22"
+ integrity sha512-JMVv+AMRyGOHtO1RFBiJy/MBsgz0x4AWrT6QoEVVTyh1E39TrCUpTRI7mx9VksGX4awWASxqCYLCV4wBZHAYxA==
+ optionalDependencies:
+ "@img/sharp-libvips-linux-arm64" "1.0.4"
+
+"@img/sharp-linux-arm@0.33.5":
+ version "0.33.5"
+ resolved "https://registry.yarnpkg.com/@img/sharp-linux-arm/-/sharp-linux-arm-0.33.5.tgz#422c1a352e7b5832842577dc51602bcd5b6f5eff"
+ integrity sha512-JTS1eldqZbJxjvKaAkxhZmBqPRGmxgu+qFKSInv8moZ2AmT5Yib3EQ1c6gp493HvrvV8QgdOXdyaIBrhvFhBMQ==
+ optionalDependencies:
+ "@img/sharp-libvips-linux-arm" "1.0.5"
+
+"@img/sharp-linux-s390x@0.33.5":
+ version "0.33.5"
+ resolved "https://registry.yarnpkg.com/@img/sharp-linux-s390x/-/sharp-linux-s390x-0.33.5.tgz#f5c077926b48e97e4a04d004dfaf175972059667"
+ integrity sha512-y/5PCd+mP4CA/sPDKl2961b+C9d+vPAveS33s6Z3zfASk2j5upL6fXVPZi7ztePZ5CuH+1kW8JtvxgbuXHRa4Q==
+ optionalDependencies:
+ "@img/sharp-libvips-linux-s390x" "1.0.4"
+
+"@img/sharp-linux-x64@0.33.5":
+ version "0.33.5"
+ resolved "https://registry.yarnpkg.com/@img/sharp-linux-x64/-/sharp-linux-x64-0.33.5.tgz#d806e0afd71ae6775cc87f0da8f2d03a7c2209cb"
+ integrity sha512-opC+Ok5pRNAzuvq1AG0ar+1owsu842/Ab+4qvU879ippJBHvyY5n2mxF1izXqkPYlGuP/M556uh53jRLJmzTWA==
+ optionalDependencies:
+ "@img/sharp-libvips-linux-x64" "1.0.4"
+
+"@img/sharp-linuxmusl-arm64@0.33.5":
+ version "0.33.5"
+ resolved "https://registry.yarnpkg.com/@img/sharp-linuxmusl-arm64/-/sharp-linuxmusl-arm64-0.33.5.tgz#252975b915894fb315af5deea174651e208d3d6b"
+ integrity sha512-XrHMZwGQGvJg2V/oRSUfSAfjfPxO+4DkiRh6p2AFjLQztWUuY/o8Mq0eMQVIY7HJ1CDQUJlxGGZRw1a5bqmd1g==
+ optionalDependencies:
+ "@img/sharp-libvips-linuxmusl-arm64" "1.0.4"
+
+"@img/sharp-linuxmusl-x64@0.33.5":
+ version "0.33.5"
+ resolved "https://registry.yarnpkg.com/@img/sharp-linuxmusl-x64/-/sharp-linuxmusl-x64-0.33.5.tgz#3f4609ac5d8ef8ec7dadee80b560961a60fd4f48"
+ integrity sha512-WT+d/cgqKkkKySYmqoZ8y3pxx7lx9vVejxW/W4DOFMYVSkErR+w7mf2u8m/y4+xHe7yY9DAXQMWQhpnMuFfScw==
+ optionalDependencies:
+ "@img/sharp-libvips-linuxmusl-x64" "1.0.4"
+
+"@img/sharp-wasm32@0.33.5":
+ version "0.33.5"
+ resolved "https://registry.yarnpkg.com/@img/sharp-wasm32/-/sharp-wasm32-0.33.5.tgz#6f44f3283069d935bb5ca5813153572f3e6f61a1"
+ integrity sha512-ykUW4LVGaMcU9lu9thv85CbRMAwfeadCJHRsg2GmeRa/cJxsVY9Rbd57JcMxBkKHag5U/x7TSBpScF4U8ElVzg==
+ dependencies:
+ "@emnapi/runtime" "^1.2.0"
+
+"@img/sharp-win32-ia32@0.33.5":
+ version "0.33.5"
+ resolved "https://registry.yarnpkg.com/@img/sharp-win32-ia32/-/sharp-win32-ia32-0.33.5.tgz#1a0c839a40c5351e9885628c85f2e5dfd02b52a9"
+ integrity sha512-T36PblLaTwuVJ/zw/LaH0PdZkRz5rd3SmMHX8GSmR7vtNSP5Z6bQkExdSK7xGWyxLw4sUknBuugTelgw2faBbQ==
+
+"@img/sharp-win32-x64@0.33.5":
+ version "0.33.5"
+ resolved "https://registry.yarnpkg.com/@img/sharp-win32-x64/-/sharp-win32-x64-0.33.5.tgz#56f00962ff0c4e0eb93d34a047d29fa995e3e342"
+ integrity sha512-MpY/o8/8kj+EcnxwvrP4aTJSWw/aZ7JIGR4aBeZkZw5B7/Jn+tY9/VNwtcoGmdT7GfggGIU4kygOMSbYnOrAbg==
+
"@isaacs/cliui@^8.0.2":
version "8.0.2"
resolved "https://registry.yarnpkg.com/@isaacs/cliui/-/cliui-8.0.2.tgz#b37667b7bc181c168782259bab42474fbf52b550"
@@ -2119,62 +2239,57 @@
resolved "https://registry.yarnpkg.com/@leichtgewicht/ip-codec/-/ip-codec-2.0.5.tgz#4fc56c15c580b9adb7dc3c333a134e540b44bfb1"
integrity sha512-Vo+PSpZG2/fmgmiNzYK9qWRh8h/CHrwD0mo1h1DzL4yzHNSfWYujGTYsWGreD000gcgmZ7K4Ys6Tx9TxtsKdDw==
-"@next/env@14.2.5":
- version "14.2.5"
- resolved "https://registry.yarnpkg.com/@next/env/-/env-14.2.5.tgz#1d9328ab828711d3517d0a1d505acb55e5ef7ad0"
- integrity sha512-/zZGkrTOsraVfYjGP8uM0p6r0BDT6xWpkjdVbcz66PJVSpwXX3yNiRycxAuDfBKGWBrZBXRuK/YVlkNgxHGwmA==
-
-"@next/eslint-plugin-next@14.2.5":
- version "14.2.5"
- resolved "https://registry.yarnpkg.com/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.5.tgz#f7e3ff3efe40a2855e5f29bc2692175f85913ba8"
- integrity sha512-LY3btOpPh+OTIpviNojDpUdIbHW9j0JBYBjsIp8IxtDFfYFyORvw3yNq6N231FVqQA7n7lwaf7xHbVJlA1ED7g==
- dependencies:
- glob "10.3.10"
-
-"@next/swc-darwin-arm64@14.2.5":
- version "14.2.5"
- resolved "https://registry.yarnpkg.com/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.5.tgz#d0a160cf78c18731c51cc0bff131c706b3e9bb05"
- integrity sha512-/9zVxJ+K9lrzSGli1///ujyRfon/ZneeZ+v4ptpiPoOU+GKZnm8Wj8ELWU1Pm7GHltYRBklmXMTUqM/DqQ99FQ==
-
-"@next/swc-darwin-x64@14.2.5":
- version "14.2.5"
- resolved "https://registry.yarnpkg.com/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.5.tgz#eb832a992407f6e6352eed05a073379f1ce0589c"
- integrity sha512-vXHOPCwfDe9qLDuq7U1OYM2wUY+KQ4Ex6ozwsKxp26BlJ6XXbHleOUldenM67JRyBfVjv371oneEvYd3H2gNSA==
-
-"@next/swc-linux-arm64-gnu@14.2.5":
- version "14.2.5"
- resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.5.tgz#098fdab57a4664969bc905f5801ef5a89582c689"
- integrity sha512-vlhB8wI+lj8q1ExFW8lbWutA4M2ZazQNvMWuEDqZcuJJc78iUnLdPPunBPX8rC4IgT6lIx/adB+Cwrl99MzNaA==
-
-"@next/swc-linux-arm64-musl@14.2.5":
- version "14.2.5"
- resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.5.tgz#243a1cc1087fb75481726dd289c7b219fa01f2b5"
- integrity sha512-NpDB9NUR2t0hXzJJwQSGu1IAOYybsfeB+LxpGsXrRIb7QOrYmidJz3shzY8cM6+rO4Aojuef0N/PEaX18pi9OA==
-
-"@next/swc-linux-x64-gnu@14.2.5":
- version "14.2.5"
- resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.5.tgz#b8a2e436387ee4a52aa9719b718992e0330c4953"
- integrity sha512-8XFikMSxWleYNryWIjiCX+gU201YS+erTUidKdyOVYi5qUQo/gRxv/3N1oZFCgqpesN6FPeqGM72Zve+nReVXQ==
-
-"@next/swc-linux-x64-musl@14.2.5":
- version "14.2.5"
- resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.5.tgz#cb8a9adad5fb8df86112cfbd363aab5c6d32757b"
- integrity sha512-6QLwi7RaYiQDcRDSU/os40r5o06b5ue7Jsk5JgdRBGGp8l37RZEh9JsLSM8QF0YDsgcosSeHjglgqi25+m04IQ==
-
-"@next/swc-win32-arm64-msvc@14.2.5":
- version "14.2.5"
- resolved "https://registry.yarnpkg.com/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.5.tgz#81f996c1c38ea0900d4e7719cc8814be8a835da0"
- integrity sha512-1GpG2VhbspO+aYoMOQPQiqc/tG3LzmsdBH0LhnDS3JrtDx2QmzXe0B6mSZZiN3Bq7IOMXxv1nlsjzoS1+9mzZw==
-
-"@next/swc-win32-ia32-msvc@14.2.5":
- version "14.2.5"
- resolved "https://registry.yarnpkg.com/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.5.tgz#f61c74ce823e10b2bc150e648fc192a7056422e0"
- integrity sha512-Igh9ZlxwvCDsu6438FXlQTHlRno4gFpJzqPjSIBZooD22tKeI4fE/YMRoHVJHmrQ2P5YL1DoZ0qaOKkbeFWeMg==
-
-"@next/swc-win32-x64-msvc@14.2.5":
- version "14.2.5"
- resolved "https://registry.yarnpkg.com/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.5.tgz#ed199a920efb510cfe941cd75ed38a7be21e756f"
- integrity sha512-tEQ7oinq1/CjSG9uSTerca3v4AZ+dFa+4Yu6ihaG8Ud8ddqLQgFGcnwYls13H5X5CPDPZJdYxyeMui6muOLd4g==
+"@next/env@15.0.1":
+ version "15.0.1"
+ resolved "https://registry.yarnpkg.com/@next/env/-/env-15.0.1.tgz#660fe9303e255cec112d3f4198d2897a24bc60b3"
+ integrity sha512-lc4HeDUKO9gxxlM5G2knTRifqhsY6yYpwuHspBZdboZe0Gp+rZHBNNSIjmQKDJIdRXiXGyVnSD6gafrbQPvILQ==
+
+"@next/eslint-plugin-next@15.0.1":
+ version "15.0.1"
+ resolved "https://registry.yarnpkg.com/@next/eslint-plugin-next/-/eslint-plugin-next-15.0.1.tgz#76117d88aadc52f6e04b1892d44654d05468d53c"
+ integrity sha512-bKWsMaGPbiFAaGqrDJvbE8b4Z0uKicGVcgOI77YM2ui3UfjHMr4emFPrZTLeZVchi7fT1mooG2LxREfUUClIKw==
+ dependencies:
+ fast-glob "3.3.1"
+
+"@next/swc-darwin-arm64@15.0.1":
+ version "15.0.1"
+ resolved "https://registry.yarnpkg.com/@next/swc-darwin-arm64/-/swc-darwin-arm64-15.0.1.tgz#b80a25f1569bd0ca03eca9473f7e93e64937e404"
+ integrity sha512-C9k/Xv4sxkQRTA37Z6MzNq3Yb1BJMmSqjmwowoWEpbXTkAdfOwnoKOpAb71ItSzoA26yUTIo6ZhN8rKGu4ExQw==
+
+"@next/swc-darwin-x64@15.0.1":
+ version "15.0.1"
+ resolved "https://registry.yarnpkg.com/@next/swc-darwin-x64/-/swc-darwin-x64-15.0.1.tgz#00dcf79ec7c638a85c3b9ff2e2de2bfb09c1c250"
+ integrity sha512-uHl13HXOuq1G7ovWFxCACDJHTSDVbn/sbLv8V1p+7KIvTrYQ5HNoSmKBdYeEKRRCbEmd+OohOgg9YOp8Ux3MBg==
+
+"@next/swc-linux-arm64-gnu@15.0.1":
+ version "15.0.1"
+ resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-15.0.1.tgz#faab5f7ffcc6d1a15e8dea1cb9953966658b39bf"
+ integrity sha512-LvyhvxHOihFTEIbb35KxOc3q8w8G4xAAAH/AQnsYDEnOvwawjL2eawsB59AX02ki6LJdgDaHoTEnC54Gw+82xw==
+
+"@next/swc-linux-arm64-musl@15.0.1":
+ version "15.0.1"
+ resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-15.0.1.tgz#97abada9a782ab5b3cb42cf0d4799cbc2e733351"
+ integrity sha512-vFmCGUFNyk/A5/BYcQNhAQqPIw01RJaK6dRO+ZEhz0DncoW+hJW1kZ8aH2UvTX27zPq3m85zN5waMSbZEmANcQ==
+
+"@next/swc-linux-x64-gnu@15.0.1":
+ version "15.0.1"
+ resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-15.0.1.tgz#548bd47c49fe6d819302139aff8766eb704322e2"
+ integrity sha512-5by7IYq0NCF8rouz6Qg9T97jYU68kaClHPfGpQG2lCZpSYHtSPQF1kjnqBTd34RIqPKMbCa4DqCufirgr8HM5w==
+
+"@next/swc-linux-x64-musl@15.0.1":
+ version "15.0.1"
+ resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-15.0.1.tgz#84423fbd3a058dd6ae8322e530878f0ec7a1027a"
+ integrity sha512-lmYr6H3JyDNBJLzklGXLfbehU3ay78a+b6UmBGlHls4xhDXBNZfgb0aI67sflrX+cGBnv1LgmWzFlYrAYxS1Qw==
+
+"@next/swc-win32-arm64-msvc@15.0.1":
+ version "15.0.1"
+ resolved "https://registry.yarnpkg.com/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-15.0.1.tgz#723c2ced12a998fb40dc901b8faea9170e788c2f"
+ integrity sha512-DS8wQtl6diAj0eZTdH0sefykm4iXMbHT4MOvLwqZiIkeezKpkgPFcEdFlz3vKvXa2R/2UEgMh48z1nEpNhjeOQ==
+
+"@next/swc-win32-x64-msvc@15.0.1":
+ version "15.0.1"
+ resolved "https://registry.yarnpkg.com/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-15.0.1.tgz#ec7e3befc0bcc47527537b1eda2b3745beb15a09"
+ integrity sha512-4Ho2ggvDdMKlZ/0e9HNdZ9ngeaBwtc+2VS5oCeqrbXqOgutX6I4U2X/42VBw0o+M5evn4/7v3zKgGHo+9v/VjA==
"@nodelib/fs.scandir@2.1.5":
version "2.1.5"
@@ -2214,46 +2329,46 @@
resolved "https://registry.yarnpkg.com/@pkgjs/parseargs/-/parseargs-0.11.0.tgz#a77ea742fab25775145434eb1d2328cf5013ac33"
integrity sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==
-"@prisma/client@^5.18.0":
- version "5.18.0"
- resolved "https://registry.yarnpkg.com/@prisma/client/-/client-5.18.0.tgz#526e4281a448f214c0ff81d65c39243608c98294"
- integrity sha512-BWivkLh+af1kqC89zCJYkHsRcyWsM8/JHpsDMM76DjP3ZdEquJhXa4IeX+HkWPnwJ5FanxEJFZZDTWiDs/Kvyw==
+"@prisma/client@^5.21.1":
+ version "5.21.1"
+ resolved "https://registry.yarnpkg.com/@prisma/client/-/client-5.21.1.tgz#ad51ef220eb80173f882e859960d81e626b73898"
+ integrity sha512-3n+GgbAZYjaS/k0M03yQsQfR1APbr411r74foknnsGpmhNKBG49VuUkxIU6jORgvJPChoD4WC4PqoHImN1FP0w==
-"@prisma/debug@5.18.0":
- version "5.18.0"
- resolved "https://registry.yarnpkg.com/@prisma/debug/-/debug-5.18.0.tgz#527799e044d2903a35945e61ac2d8916e4b61ead"
- integrity sha512-f+ZvpTLidSo3LMJxQPVgAxdAjzv5OpzAo/eF8qZqbwvgi2F5cTOI9XCpdRzJYA0iGfajjwjOKKrVq64vkxEfUw==
+"@prisma/debug@5.21.1":
+ version "5.21.1"
+ resolved "https://registry.yarnpkg.com/@prisma/debug/-/debug-5.21.1.tgz#df4383cb8a6273b1d6112cda0f1d5bef73e71be7"
+ integrity sha512-uY8SAhcnORhvgtOrNdvWS98Aq/nkQ9QDUxrWAgW8XrCZaI3j2X7zb7Xe6GQSh6xSesKffFbFlkw0c2luHQviZA==
-"@prisma/engines-version@5.18.0-25.4c784e32044a8a016d99474bd02a3b6123742169":
- version "5.18.0-25.4c784e32044a8a016d99474bd02a3b6123742169"
- resolved "https://registry.yarnpkg.com/@prisma/engines-version/-/engines-version-5.18.0-25.4c784e32044a8a016d99474bd02a3b6123742169.tgz#203426ebf4ec4e1acce7da4a59ec8f0df92b29e7"
- integrity sha512-a/+LpJj8vYU3nmtkg+N3X51ddbt35yYrRe8wqHTJtYQt7l1f8kjIBcCs6sHJvodW/EK5XGvboOiwm47fmNrbgg==
+"@prisma/engines-version@5.21.1-1.bf0e5e8a04cada8225617067eaa03d041e2bba36":
+ version "5.21.1-1.bf0e5e8a04cada8225617067eaa03d041e2bba36"
+ resolved "https://registry.yarnpkg.com/@prisma/engines-version/-/engines-version-5.21.1-1.bf0e5e8a04cada8225617067eaa03d041e2bba36.tgz#8a5f136a8ee71995bf635686bd2f1a6650f9320c"
+ integrity sha512-qvnEflL0//lh44S/T9NcvTMxfyowNeUxTunPcDfKPjyJNrCNf2F1zQLcUv5UHAruECpX+zz21CzsC7V2xAeM7Q==
-"@prisma/engines@5.18.0":
- version "5.18.0"
- resolved "https://registry.yarnpkg.com/@prisma/engines/-/engines-5.18.0.tgz#26ea46e26498be622407cf95663d7fb4c39c895b"
- integrity sha512-ofmpGLeJ2q2P0wa/XaEgTnX/IsLnvSp/gZts0zjgLNdBhfuj2lowOOPmDcfKljLQUXMvAek3lw5T01kHmCG8rg==
+"@prisma/engines@5.21.1":
+ version "5.21.1"
+ resolved "https://registry.yarnpkg.com/@prisma/engines/-/engines-5.21.1.tgz#05f9bc50eb4aa169b31cadfb402165bd44e0653f"
+ integrity sha512-hGVTldUkIkTwoV8//hmnAAiAchi4oMEKD3aW5H2RrnI50tTdwza7VQbTTAyN3OIHWlK5DVg6xV7X8N/9dtOydA==
dependencies:
- "@prisma/debug" "5.18.0"
- "@prisma/engines-version" "5.18.0-25.4c784e32044a8a016d99474bd02a3b6123742169"
- "@prisma/fetch-engine" "5.18.0"
- "@prisma/get-platform" "5.18.0"
+ "@prisma/debug" "5.21.1"
+ "@prisma/engines-version" "5.21.1-1.bf0e5e8a04cada8225617067eaa03d041e2bba36"
+ "@prisma/fetch-engine" "5.21.1"
+ "@prisma/get-platform" "5.21.1"
-"@prisma/fetch-engine@5.18.0":
- version "5.18.0"
- resolved "https://registry.yarnpkg.com/@prisma/fetch-engine/-/fetch-engine-5.18.0.tgz#5b343e2b36b27e2713901ddd032ddd6932b3d55f"
- integrity sha512-I/3u0x2n31rGaAuBRx2YK4eB7R/1zCuayo2DGwSpGyrJWsZesrV7QVw7ND0/Suxeo/vLkJ5OwuBqHoCxvTHpOg==
+"@prisma/fetch-engine@5.21.1":
+ version "5.21.1"
+ resolved "https://registry.yarnpkg.com/@prisma/fetch-engine/-/fetch-engine-5.21.1.tgz#c56008f954199a3f3f2183d892f093f64976e4d8"
+ integrity sha512-70S31vgpCGcp9J+mh/wHtLCkVezLUqe/fGWk3J3JWZIN7prdYSlr1C0niaWUyNK2VflLXYi8kMjAmSxUVq6WGQ==
dependencies:
- "@prisma/debug" "5.18.0"
- "@prisma/engines-version" "5.18.0-25.4c784e32044a8a016d99474bd02a3b6123742169"
- "@prisma/get-platform" "5.18.0"
+ "@prisma/debug" "5.21.1"
+ "@prisma/engines-version" "5.21.1-1.bf0e5e8a04cada8225617067eaa03d041e2bba36"
+ "@prisma/get-platform" "5.21.1"
-"@prisma/get-platform@5.18.0":
- version "5.18.0"
- resolved "https://registry.yarnpkg.com/@prisma/get-platform/-/get-platform-5.18.0.tgz#0dc4c82fe9a4971f4519a57cb2dd69d8e0df4b71"
- integrity sha512-Tk+m7+uhqcKDgnMnFN0lRiH7Ewea0OEsZZs9pqXa7i3+7svS3FSCqDBCaM9x5fmhhkufiG0BtunJVDka+46DlA==
+"@prisma/get-platform@5.21.1":
+ version "5.21.1"
+ resolved "https://registry.yarnpkg.com/@prisma/get-platform/-/get-platform-5.21.1.tgz#a2219e7755cec881dffc66469c31bb0975a95b54"
+ integrity sha512-sRxjL3Igst3ct+e8ya/x//cDXmpLbZQ5vfps2N4tWl4VGKQAmym77C/IG/psSMsQKszc8uFC/q1dgmKFLUgXZQ==
dependencies:
- "@prisma/debug" "5.18.0"
+ "@prisma/debug" "5.21.1"
"@react-native-community/cli-clean@13.6.8":
version "13.6.8"
@@ -2955,10 +3070,15 @@
resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.18.0.tgz#5d694d345ce36b6ecf657349e03eb87297e68da4"
integrity sha512-UOo5FdvOL0+eIVTgS4tIdbW+TtnBLWg1YBCcU2KWM7nuNwRz9bksDX1bekJJCpu25N1DVWaCwnT39dVQxzqS8g==
-"@rushstack/eslint-patch@^1.3.3":
- version "1.10.3"
- resolved "https://registry.yarnpkg.com/@rushstack/eslint-patch/-/eslint-patch-1.10.3.tgz#391d528054f758f81e53210f1a1eebcf1a8b1d20"
- integrity sha512-qC/xYId4NMebE6w/V33Fh9gWxLgURiNYgVNObbJl2LZv0GUUItCcCqC5axQSwRaAgaxl2mELq1rMzlswaQ0Zxg==
+"@rtsao/scc@^1.1.0":
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/@rtsao/scc/-/scc-1.1.0.tgz#927dd2fae9bc3361403ac2c7a00c32ddce9ad7e8"
+ integrity sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==
+
+"@rushstack/eslint-patch@^1.10.3":
+ version "1.10.4"
+ resolved "https://registry.yarnpkg.com/@rushstack/eslint-patch/-/eslint-patch-1.10.4.tgz#427d5549943a9c6fce808e39ea64dbe60d4047f1"
+ integrity sha512-WJgX9nzTqknM393q1QJDJmoW28kUfEnybeTfVNcNAPnIx210RXm2DiXiHzfNPJNIUUb1tJnz/l4QGtJ30PgWmA==
"@segment/loosely-validate-event@^2.0.0":
version "2.0.0"
@@ -3061,17 +3181,16 @@
"@supabase/realtime-js" "2.10.2"
"@supabase/storage-js" "2.6.0"
-"@swc/counter@^0.1.3":
+"@swc/counter@0.1.3":
version "0.1.3"
resolved "https://registry.yarnpkg.com/@swc/counter/-/counter-0.1.3.tgz#cc7463bd02949611c6329596fccd2b0ec782b0e9"
integrity sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ==
-"@swc/helpers@0.5.5":
- version "0.5.5"
- resolved "https://registry.yarnpkg.com/@swc/helpers/-/helpers-0.5.5.tgz#12689df71bfc9b21c4f4ca00ae55f2f16c8b77c0"
- integrity sha512-KGYxvIOXcceOAbEk4bi/dVLEK9z8sZ0uBB3Il5b1rhfClSpcX0yfRO0KmTkqR2cnQDymwLB+25ZyMzICg/cm/A==
+"@swc/helpers@0.5.13":
+ version "0.5.13"
+ resolved "https://registry.yarnpkg.com/@swc/helpers/-/helpers-0.5.13.tgz#33e63ff3cd0cade557672bd7888a39ce7d115a8c"
+ integrity sha512-UoKGxQ3r5kYI9dALKJapMmuK+1zWM/H17Z1+iwnNmzcJRnfFuevZs375TA5rW31pu4BS4NoSy1fRsexDXfWn5w==
dependencies:
- "@swc/counter" "^0.1.3"
tslib "^2.4.0"
"@testing-library/dom@^9.0.0":
@@ -3493,6 +3612,21 @@
dependencies:
"@types/node" "*"
+"@typescript-eslint/eslint-plugin@^5.4.2 || ^6.0.0 || ^7.0.0 || ^8.0.0":
+ version "8.11.0"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.11.0.tgz#c3f087d20715fa94310b30666c08b3349e0ab084"
+ integrity sha512-KhGn2LjW1PJT2A/GfDpiyOfS4a8xHQv2myUagTM5+zsormOmBlYsnQ6pobJ8XxJmh6hnHwa2Mbe3fPrDJoDhbA==
+ dependencies:
+ "@eslint-community/regexpp" "^4.10.0"
+ "@typescript-eslint/scope-manager" "8.11.0"
+ "@typescript-eslint/type-utils" "8.11.0"
+ "@typescript-eslint/utils" "8.11.0"
+ "@typescript-eslint/visitor-keys" "8.11.0"
+ graphemer "^1.4.0"
+ ignore "^5.3.1"
+ natural-compare "^1.4.0"
+ ts-api-utils "^1.3.0"
+
"@typescript-eslint/eslint-plugin@^8.0.1":
version "8.0.1"
resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.0.1.tgz#5dbd1b498fdea83a16d292322d27d293ce156f94"
@@ -3508,15 +3642,15 @@
natural-compare "^1.4.0"
ts-api-utils "^1.3.0"
-"@typescript-eslint/parser@^5.4.2 || ^6.0.0 || 7.0.0 - 7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-7.2.0.tgz#44356312aea8852a3a82deebdacd52ba614ec07a"
- integrity sha512-5FKsVcHTk6TafQKQbuIVkXq58Fnbkd2wDL4LB7AURN7RUOu1utVP+G8+6u3ZhEroW3DF6hyo3ZEXxgKgp4KeCg==
+"@typescript-eslint/parser@^5.4.2 || ^6.0.0 || ^7.0.0 || ^8.0.0":
+ version "8.11.0"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-8.11.0.tgz#2ad1481388dc1c937f50b2d138c9ca57cc6c5cce"
+ integrity sha512-lmt73NeHdy1Q/2ul295Qy3uninSqi6wQI18XwSpm8w0ZbQXUpjCAWP1Vlv/obudoBiIjJVjlztjQ+d/Md98Yxg==
dependencies:
- "@typescript-eslint/scope-manager" "7.2.0"
- "@typescript-eslint/types" "7.2.0"
- "@typescript-eslint/typescript-estree" "7.2.0"
- "@typescript-eslint/visitor-keys" "7.2.0"
+ "@typescript-eslint/scope-manager" "8.11.0"
+ "@typescript-eslint/types" "8.11.0"
+ "@typescript-eslint/typescript-estree" "8.11.0"
+ "@typescript-eslint/visitor-keys" "8.11.0"
debug "^4.3.4"
"@typescript-eslint/parser@^8.0.1":
@@ -3530,14 +3664,6 @@
"@typescript-eslint/visitor-keys" "8.0.1"
debug "^4.3.4"
-"@typescript-eslint/scope-manager@7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-7.2.0.tgz#cfb437b09a84f95a0930a76b066e89e35d94e3da"
- integrity sha512-Qh976RbQM/fYtjx9hs4XkayYujB/aPwglw2choHmf3zBjB4qOywWSdt9+KLRdHubGcoSwBnXUH2sR3hkyaERRg==
- dependencies:
- "@typescript-eslint/types" "7.2.0"
- "@typescript-eslint/visitor-keys" "7.2.0"
-
"@typescript-eslint/scope-manager@8.0.1":
version "8.0.1"
resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-8.0.1.tgz#544259c29e1ebf65d30b6e99a9f420d98795a54e"
@@ -3546,6 +3672,14 @@
"@typescript-eslint/types" "8.0.1"
"@typescript-eslint/visitor-keys" "8.0.1"
+"@typescript-eslint/scope-manager@8.11.0":
+ version "8.11.0"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-8.11.0.tgz#9d399ce624118966732824878bc9a83593a30405"
+ integrity sha512-Uholz7tWhXmA4r6epo+vaeV7yjdKy5QFCERMjs1kMVsLRKIrSdM6o21W2He9ftp5PP6aWOVpD5zvrvuHZC0bMQ==
+ dependencies:
+ "@typescript-eslint/types" "8.11.0"
+ "@typescript-eslint/visitor-keys" "8.11.0"
+
"@typescript-eslint/type-utils@8.0.1":
version "8.0.1"
resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-8.0.1.tgz#a613ee2dfeed4a9781300b5d326ec7cf946eed92"
@@ -3556,29 +3690,25 @@
debug "^4.3.4"
ts-api-utils "^1.3.0"
-"@typescript-eslint/types@7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.2.0.tgz#0feb685f16de320e8520f13cca30779c8b7c403f"
- integrity sha512-XFtUHPI/abFhm4cbCDc5Ykc8npOKBSJePY3a3s+lwumt7XWJuzP5cZcfZ610MIPHjQjNsOLlYK8ASPaNG8UiyA==
+"@typescript-eslint/type-utils@8.11.0":
+ version "8.11.0"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-8.11.0.tgz#b7f9e6120c1ddee8a1a07615646642ad85fc91b5"
+ integrity sha512-ItiMfJS6pQU0NIKAaybBKkuVzo6IdnAhPFZA/2Mba/uBjuPQPet/8+zh5GtLHwmuFRShZx+8lhIs7/QeDHflOg==
+ dependencies:
+ "@typescript-eslint/typescript-estree" "8.11.0"
+ "@typescript-eslint/utils" "8.11.0"
+ debug "^4.3.4"
+ ts-api-utils "^1.3.0"
"@typescript-eslint/types@8.0.1":
version "8.0.1"
resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-8.0.1.tgz#333e2f4c158952dbc8181a4ddcc6e49898a28918"
integrity sha512-PpqTVT3yCA/bIgJ12czBuE3iBlM3g4inRSC5J0QOdQFAn07TYrYEQBBKgXH1lQpglup+Zy6c1fxuwTk4MTNKIw==
-"@typescript-eslint/typescript-estree@7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-7.2.0.tgz#5beda2876c4137f8440c5a84b4f0370828682556"
- integrity sha512-cyxS5WQQCoBwSakpMrvMXuMDEbhOo9bNHHrNcEWis6XHx6KF518tkF1wBvKIn/tpq5ZpUYK7Bdklu8qY0MsFIA==
- dependencies:
- "@typescript-eslint/types" "7.2.0"
- "@typescript-eslint/visitor-keys" "7.2.0"
- debug "^4.3.4"
- globby "^11.1.0"
- is-glob "^4.0.3"
- minimatch "9.0.3"
- semver "^7.5.4"
- ts-api-utils "^1.0.1"
+"@typescript-eslint/types@8.11.0":
+ version "8.11.0"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-8.11.0.tgz#7c766250502097f49bbc2e651132e6bf489e20b8"
+ integrity sha512-tn6sNMHf6EBAYMvmPUaKaVeYvhUsrE6x+bXQTxjQRp360h1giATU0WvgeEys1spbvb5R+VpNOZ+XJmjD8wOUHw==
"@typescript-eslint/typescript-estree@8.0.1":
version "8.0.1"
@@ -3594,6 +3724,20 @@
semver "^7.6.0"
ts-api-utils "^1.3.0"
+"@typescript-eslint/typescript-estree@8.11.0":
+ version "8.11.0"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-8.11.0.tgz#35fe5d3636fc5727c52429393415412e552e222b"
+ integrity sha512-yHC3s1z1RCHoCz5t06gf7jH24rr3vns08XXhfEqzYpd6Hll3z/3g23JRi0jM8A47UFKNc3u/y5KIMx8Ynbjohg==
+ dependencies:
+ "@typescript-eslint/types" "8.11.0"
+ "@typescript-eslint/visitor-keys" "8.11.0"
+ debug "^4.3.4"
+ fast-glob "^3.3.2"
+ is-glob "^4.0.3"
+ minimatch "^9.0.4"
+ semver "^7.6.0"
+ ts-api-utils "^1.3.0"
+
"@typescript-eslint/utils@8.0.1":
version "8.0.1"
resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-8.0.1.tgz#b48e3320c4f9011f97d25e0588b8c143adc38d2a"
@@ -3604,13 +3748,15 @@
"@typescript-eslint/types" "8.0.1"
"@typescript-eslint/typescript-estree" "8.0.1"
-"@typescript-eslint/visitor-keys@7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-7.2.0.tgz#5035f177752538a5750cca1af6044b633610bf9e"
- integrity sha512-c6EIQRHhcpl6+tO8EMR+kjkkV+ugUNXOmeASA1rlzkd8EPIriavpWoiEz1HR/VLhbVIdhqnV6E7JZm00cBDx2A==
+"@typescript-eslint/utils@8.11.0":
+ version "8.11.0"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-8.11.0.tgz#4480d1e9f2bb18ea3510c79f870a1aefc118103d"
+ integrity sha512-CYiX6WZcbXNJV7UNB4PLDIBtSdRmRI/nb0FMyqHPTQD1rMjA0foPLaPUV39C/MxkTd/QKSeX+Gb34PPsDVC35g==
dependencies:
- "@typescript-eslint/types" "7.2.0"
- eslint-visitor-keys "^3.4.1"
+ "@eslint-community/eslint-utils" "^4.4.0"
+ "@typescript-eslint/scope-manager" "8.11.0"
+ "@typescript-eslint/types" "8.11.0"
+ "@typescript-eslint/typescript-estree" "8.11.0"
"@typescript-eslint/visitor-keys@8.0.1":
version "8.0.1"
@@ -3620,6 +3766,14 @@
"@typescript-eslint/types" "8.0.1"
eslint-visitor-keys "^3.4.3"
+"@typescript-eslint/visitor-keys@8.11.0":
+ version "8.11.0"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-8.11.0.tgz#273de1cbffe63d9f9cd7dfc20b5a5af66310cb92"
+ integrity sha512-EaewX6lxSjRJnc+99+dqzTeoDZUfyrA52d2/HRrkI830kgovWsmIiTfmr0NZorzqic7ga+1bS60lRBUgR3n/Bw==
+ dependencies:
+ "@typescript-eslint/types" "8.11.0"
+ eslint-visitor-keys "^3.4.3"
+
"@ungap/structured-clone@^1.2.0":
version "1.2.0"
resolved "https://registry.yarnpkg.com/@ungap/structured-clone/-/structured-clone-1.2.0.tgz#756641adb587851b5ccb3e095daf27ae581c8406"
@@ -4051,18 +4205,11 @@ aria-query@5.1.3:
dependencies:
deep-equal "^2.0.5"
-aria-query@^5.0.0:
+aria-query@^5.0.0, aria-query@^5.3.2:
version "5.3.2"
resolved "https://registry.yarnpkg.com/aria-query/-/aria-query-5.3.2.tgz#93f81a43480e33a338f19163a3d10a50c01dcd59"
integrity sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==
-aria-query@^5.3.0:
- version "5.3.0"
- resolved "https://registry.yarnpkg.com/aria-query/-/aria-query-5.3.0.tgz#650c569e41ad90b51b3d7df5e5eed1c7549c103e"
- integrity sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==
- dependencies:
- dequal "^2.0.3"
-
array-buffer-byte-length@^1.0.0, array-buffer-byte-length@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz#1e5583ec16763540a27ae52eed99ff899223568f"
@@ -4076,7 +4223,7 @@ array-flatten@1.1.1:
resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2"
integrity sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==
-array-includes@^3.1.6, array-includes@^3.1.7, array-includes@^3.1.8:
+array-includes@^3.1.6, array-includes@^3.1.8:
version "3.1.8"
resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.8.tgz#5e370cbe172fdd5dd6530c1d4aadda25281ba97d"
integrity sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==
@@ -4122,7 +4269,7 @@ array.prototype.findlast@^1.2.5:
es-object-atoms "^1.0.0"
es-shim-unscopables "^1.0.2"
-array.prototype.findlastindex@^1.2.3:
+array.prototype.findlastindex@^1.2.5:
version "1.2.5"
resolved "https://registry.yarnpkg.com/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.5.tgz#8c35a755c72908719453f87145ca011e39334d0d"
integrity sha512-zfETvRFA8o7EiNn++N5f/kaCw221hrpGsDmcpndVupkPzEc1Wuf3VgC0qby1BbHs7f5DVYjgtEU2LLh5bqeGfQ==
@@ -4154,17 +4301,7 @@ array.prototype.flatmap@^1.3.2:
es-abstract "^1.22.1"
es-shim-unscopables "^1.0.0"
-array.prototype.toreversed@^1.1.2:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/array.prototype.toreversed/-/array.prototype.toreversed-1.1.2.tgz#b989a6bf35c4c5051e1dc0325151bf8088954eba"
- integrity sha512-wwDCoT4Ck4Cz7sLtgUmzR5UV3YF5mFHUlbChCzZBQZ+0m2cl/DH3tKgvphv1nKgFsJ48oCSg6p91q2Vm0I/ZMA==
- dependencies:
- call-bind "^1.0.2"
- define-properties "^1.2.0"
- es-abstract "^1.22.1"
- es-shim-unscopables "^1.0.0"
-
-array.prototype.tosorted@^1.1.3:
+array.prototype.tosorted@^1.1.4:
version "1.1.4"
resolved "https://registry.yarnpkg.com/array.prototype.tosorted/-/array.prototype.tosorted-1.1.4.tgz#fe954678ff53034e717ea3352a03f0b0b86f7ffc"
integrity sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==
@@ -4265,17 +4402,15 @@ aws4@^1.8.0:
resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.13.2.tgz#0aa167216965ac9474ccfa83892cfb6b3e1e52ef"
integrity sha512-lHe62zvbTB5eEABUVi/AwVh0ZKY9rMMDhmm+eeyuuUQbQ3+J+fONVQOZyj+DdrvD4BY33uYniyRJ4UJIaSKAfw==
-axe-core@=4.7.0:
- version "4.7.0"
- resolved "https://registry.yarnpkg.com/axe-core/-/axe-core-4.7.0.tgz#34ba5a48a8b564f67e103f0aa5768d76e15bbbbf"
- integrity sha512-M0JtH+hlOL5pLQwHOLNYZaXuhqmvS8oExsqB1SBYgA4Dk7u/xx+YdGHXaK5pyUfed5mYXdlYiphWq3G8cRi5JQ==
+axe-core@^4.10.0:
+ version "4.10.2"
+ resolved "https://registry.yarnpkg.com/axe-core/-/axe-core-4.10.2.tgz#85228e3e1d8b8532a27659b332e39b7fa0e022df"
+ integrity sha512-RE3mdQ7P3FRSe7eqCWoeQ/Z9QXrtniSjp1wUjt5nRC3WIpz5rSCve6o3fsZ2aCpJtrZjSZgjwXAoTO5k4tEI0w==
-axobject-query@^3.2.1:
- version "3.2.1"
- resolved "https://registry.yarnpkg.com/axobject-query/-/axobject-query-3.2.1.tgz#39c378a6e3b06ca679f29138151e45b2b32da62a"
- integrity sha512-jsyHu61e6N4Vbz/v18DHwWYKK0bSWLqn47eeDSKPB7m8tqMHF9YJ+mhIk2lVteyZrY8tnSj/jHOv4YiTCuCJgg==
- dependencies:
- dequal "^2.0.3"
+axobject-query@^4.1.0:
+ version "4.1.0"
+ resolved "https://registry.yarnpkg.com/axobject-query/-/axobject-query-4.1.0.tgz#28768c76d0e3cff21bc62a9e2d0b6ac30042a1ee"
+ integrity sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==
babel-core@^7.0.0-bridge.0:
version "7.0.0-bridge.0"
@@ -5023,11 +5158,27 @@ color-name@1.1.3:
resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25"
integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==
-color-name@~1.1.4:
+color-name@^1.0.0, color-name@~1.1.4:
version "1.1.4"
resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2"
integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==
+color-string@^1.9.0:
+ version "1.9.1"
+ resolved "https://registry.yarnpkg.com/color-string/-/color-string-1.9.1.tgz#4467f9146f036f855b764dfb5bf8582bf342c7a4"
+ integrity sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==
+ dependencies:
+ color-name "^1.0.0"
+ simple-swizzle "^0.2.2"
+
+color@^4.2.3:
+ version "4.2.3"
+ resolved "https://registry.yarnpkg.com/color/-/color-4.2.3.tgz#d781ecb5e57224ee43ea9627560107c0e0c6463a"
+ integrity sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==
+ dependencies:
+ color-convert "^2.0.1"
+ color-string "^1.9.0"
+
colord@^2.9.1:
version "2.9.3"
resolved "https://registry.yarnpkg.com/colord/-/colord-2.9.3.tgz#4f8ce919de456f1d5c1c368c307fe20f3e59fb43"
@@ -5669,7 +5820,7 @@ define-lazy-prop@^2.0.0:
resolved "https://registry.yarnpkg.com/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz#3f7ae421129bcaaac9bc74905c98a0009ec9ee7f"
integrity sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==
-define-properties@^1.2.0, define-properties@^1.2.1:
+define-properties@^1.1.3, define-properties@^1.2.0, define-properties@^1.2.1:
version "1.2.1"
resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.2.1.tgz#10781cc616eb951a80a034bafcaa7377f6af2b6c"
integrity sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==
@@ -5725,11 +5876,6 @@ depd@~1.1.2:
resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9"
integrity sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==
-dequal@^2.0.3:
- version "2.0.3"
- resolved "https://registry.yarnpkg.com/dequal/-/dequal-2.0.3.tgz#2644214f1997d39ed0ee0ece72335490a7ac67be"
- integrity sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==
-
destroy@1.2.0:
version "1.2.0"
resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.2.0.tgz#4803735509ad8be552934c67df614f94e66fa015"
@@ -5740,6 +5886,11 @@ detect-libc@^1.0.3:
resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b"
integrity sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==
+detect-libc@^2.0.3:
+ version "2.0.3"
+ resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-2.0.3.tgz#f0cd503b40f9939b894697d19ad50895e30cf700"
+ integrity sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw==
+
detect-newline@^3.0.0:
version "3.1.0"
resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-3.1.0.tgz#576f5dfc63ae1a192ff192d8ad3af6308991b651"
@@ -5992,7 +6143,7 @@ errorhandler@^1.5.1:
accepts "~1.3.7"
escape-html "~1.0.3"
-es-abstract@^1.22.1, es-abstract@^1.22.3, es-abstract@^1.23.0, es-abstract@^1.23.1, es-abstract@^1.23.2, es-abstract@^1.23.3:
+es-abstract@^1.17.5, es-abstract@^1.22.1, es-abstract@^1.22.3, es-abstract@^1.23.0, es-abstract@^1.23.1, es-abstract@^1.23.2, es-abstract@^1.23.3:
version "1.23.3"
resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.23.3.tgz#8f0c5a35cd215312573c5a27c87dfd6c881a0aa0"
integrity sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A==
@@ -6071,10 +6222,10 @@ es-get-iterator@^1.1.3:
isarray "^2.0.5"
stop-iteration-iterator "^1.0.0"
-es-iterator-helpers@^1.0.15, es-iterator-helpers@^1.0.19:
- version "1.0.19"
- resolved "https://registry.yarnpkg.com/es-iterator-helpers/-/es-iterator-helpers-1.0.19.tgz#117003d0e5fec237b4b5c08aded722e0c6d50ca8"
- integrity sha512-zoMwbCcH5hwUkKJkT8kDIBZSz9I6mVG//+lDCinLCGov4+r7NIy0ld8o03M0cJxl2spVf6ESYVS6/gpIfq1FFw==
+es-iterator-helpers@^1.1.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/es-iterator-helpers/-/es-iterator-helpers-1.1.0.tgz#f6d745d342aea214fe09497e7152170dc333a7a6"
+ integrity sha512-/SurEfycdyssORP/E+bj4sEu1CWw4EmLDsHynHwSXQ7utgbrMRWW195pTrCjFgFCddf/UkYm3oqKPRq5i8bJbw==
dependencies:
call-bind "^1.0.7"
define-properties "^1.2.1"
@@ -6083,12 +6234,12 @@ es-iterator-helpers@^1.0.15, es-iterator-helpers@^1.0.19:
es-set-tostringtag "^2.0.3"
function-bind "^1.1.2"
get-intrinsic "^1.2.4"
- globalthis "^1.0.3"
+ globalthis "^1.0.4"
has-property-descriptors "^1.0.2"
has-proto "^1.0.3"
has-symbols "^1.0.3"
internal-slot "^1.0.7"
- iterator.prototype "^1.1.2"
+ iterator.prototype "^1.1.3"
safe-array-concat "^1.1.2"
es-module-lexer@^1.2.1:
@@ -6203,20 +6354,21 @@ escodegen@^2.0.0:
optionalDependencies:
source-map "~0.6.1"
-eslint-config-next@^14.2.5:
- version "14.2.5"
- resolved "https://registry.yarnpkg.com/eslint-config-next/-/eslint-config-next-14.2.5.tgz#cdd43d89047eb7391ba25445d5855b4600b6adb9"
- integrity sha512-zogs9zlOiZ7ka+wgUnmcM0KBEDjo4Jis7kxN1jvC0N4wynQ2MIx/KBkg4mVF63J5EK4W0QMCn7xO3vNisjaAoA==
+eslint-config-next@^15.0.1:
+ version "15.0.1"
+ resolved "https://registry.yarnpkg.com/eslint-config-next/-/eslint-config-next-15.0.1.tgz#5f49a01d312420cdbf1e87299396ef779ae99004"
+ integrity sha512-3cYCrgbH6GS/ufApza7XCKz92vtq4dAdYhx++rMFNlH2cAV+/GsAKkrr4+bohYOACmzG2nAOR+uWprKC1Uld6A==
dependencies:
- "@next/eslint-plugin-next" "14.2.5"
- "@rushstack/eslint-patch" "^1.3.3"
- "@typescript-eslint/parser" "^5.4.2 || ^6.0.0 || 7.0.0 - 7.2.0"
+ "@next/eslint-plugin-next" "15.0.1"
+ "@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"
eslint-import-resolver-node "^0.3.6"
eslint-import-resolver-typescript "^3.5.2"
- eslint-plugin-import "^2.28.1"
- eslint-plugin-jsx-a11y "^6.7.1"
- eslint-plugin-react "^7.33.2"
- eslint-plugin-react-hooks "^4.5.0 || 5.0.0-canary-7118f5dd7-20230705"
+ eslint-plugin-import "^2.31.0"
+ eslint-plugin-jsx-a11y "^6.10.0"
+ eslint-plugin-react "^7.35.0"
+ eslint-plugin-react-hooks "^5.0.0"
eslint-import-resolver-node@^0.3.6, eslint-import-resolver-node@^0.3.9:
version "0.3.9"
@@ -6240,86 +6392,95 @@ eslint-import-resolver-typescript@^3.5.2:
is-core-module "^2.11.0"
is-glob "^4.0.3"
-eslint-module-utils@^2.7.4, eslint-module-utils@^2.8.0:
+eslint-module-utils@^2.12.0:
+ version "2.12.0"
+ resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.12.0.tgz#fe4cfb948d61f49203d7b08871982b65b9af0b0b"
+ integrity sha512-wALZ0HFoytlyh/1+4wuZ9FJCD/leWHQzzrxJ8+rebyReSLk7LApMyd3WJaLVoN+D5+WIdJyDK1c6JnE65V4Zyg==
+ dependencies:
+ debug "^3.2.7"
+
+eslint-module-utils@^2.7.4:
version "2.8.1"
resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.8.1.tgz#52f2404300c3bd33deece9d7372fb337cc1d7c34"
integrity sha512-rXDXR3h7cs7dy9RNpUlQf80nX31XWJEyGq1tRMo+6GsO5VmTe4UTwtmonAD4ZkAsrfMVDA2wlGJ3790Ys+D49Q==
dependencies:
debug "^3.2.7"
-eslint-plugin-import@^2.28.1:
- version "2.29.1"
- resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.29.1.tgz#d45b37b5ef5901d639c15270d74d46d161150643"
- integrity sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==
+eslint-plugin-import@^2.31.0:
+ version "2.31.0"
+ resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.31.0.tgz#310ce7e720ca1d9c0bb3f69adfd1c6bdd7d9e0e7"
+ integrity sha512-ixmkI62Rbc2/w8Vfxyh1jQRTdRTF52VxwRVHl/ykPAmqG+Nb7/kNn+byLP0LxPgI7zWA16Jt82SybJInmMia3A==
dependencies:
- array-includes "^3.1.7"
- array.prototype.findlastindex "^1.2.3"
+ "@rtsao/scc" "^1.1.0"
+ array-includes "^3.1.8"
+ array.prototype.findlastindex "^1.2.5"
array.prototype.flat "^1.3.2"
array.prototype.flatmap "^1.3.2"
debug "^3.2.7"
doctrine "^2.1.0"
eslint-import-resolver-node "^0.3.9"
- eslint-module-utils "^2.8.0"
- hasown "^2.0.0"
- is-core-module "^2.13.1"
+ eslint-module-utils "^2.12.0"
+ hasown "^2.0.2"
+ is-core-module "^2.15.1"
is-glob "^4.0.3"
minimatch "^3.1.2"
- object.fromentries "^2.0.7"
- object.groupby "^1.0.1"
- object.values "^1.1.7"
+ object.fromentries "^2.0.8"
+ object.groupby "^1.0.3"
+ object.values "^1.2.0"
semver "^6.3.1"
+ string.prototype.trimend "^1.0.8"
tsconfig-paths "^3.15.0"
-eslint-plugin-jsx-a11y@^6.7.1:
- version "6.8.0"
- resolved "https://registry.yarnpkg.com/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.8.0.tgz#2fa9c701d44fcd722b7c771ec322432857fcbad2"
- integrity sha512-Hdh937BS3KdwwbBaKd5+PLCOmYY6U4f2h9Z2ktwtNKvIdIEu137rjYbcb9ApSbVJfWxANNuiKTD/9tOKjK9qOA==
+eslint-plugin-jsx-a11y@^6.10.0:
+ version "6.10.1"
+ resolved "https://registry.yarnpkg.com/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.10.1.tgz#87003835bad8875e023aa5db26f41a0c9e6a8fa9"
+ integrity sha512-zHByM9WTUMnfsDTafGXRiqxp6lFtNoSOWBY6FonVRn3A+BUwN1L/tdBXT40BcBJi0cZjOGTXZ0eD/rTG9fEJ0g==
dependencies:
- "@babel/runtime" "^7.23.2"
- aria-query "^5.3.0"
- array-includes "^3.1.7"
+ aria-query "^5.3.2"
+ array-includes "^3.1.8"
array.prototype.flatmap "^1.3.2"
ast-types-flow "^0.0.8"
- axe-core "=4.7.0"
- axobject-query "^3.2.1"
+ axe-core "^4.10.0"
+ axobject-query "^4.1.0"
damerau-levenshtein "^1.0.8"
emoji-regex "^9.2.2"
- es-iterator-helpers "^1.0.15"
- hasown "^2.0.0"
+ es-iterator-helpers "^1.1.0"
+ hasown "^2.0.2"
jsx-ast-utils "^3.3.5"
language-tags "^1.0.9"
minimatch "^3.1.2"
- object.entries "^1.1.7"
- object.fromentries "^2.0.7"
+ object.fromentries "^2.0.8"
+ safe-regex-test "^1.0.3"
+ string.prototype.includes "^2.0.1"
-"eslint-plugin-react-hooks@^4.5.0 || 5.0.0-canary-7118f5dd7-20230705":
- version "4.6.2"
- resolved "https://registry.yarnpkg.com/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.2.tgz#c829eb06c0e6f484b3fbb85a97e57784f328c596"
- integrity sha512-QzliNJq4GinDBcD8gPB5v0wh6g8q3SUi6EFF0x8N/BL9PoVs0atuGc47ozMRyOWAKdwaZ5OnbOEa3WR+dSGKuQ==
+eslint-plugin-react-hooks@^5.0.0:
+ version "5.0.0"
+ resolved "https://registry.yarnpkg.com/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-5.0.0.tgz#72e2eefbac4b694f5324154619fee44f5f60f101"
+ integrity sha512-hIOwI+5hYGpJEc4uPRmz2ulCjAGD/N13Lukkh8cLV0i2IRk/bdZDYjgLVHj+U9Z704kLIdIO6iueGvxNur0sgw==
-eslint-plugin-react@^7.33.2:
- version "7.34.2"
- resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.34.2.tgz#2780a1a35a51aca379d86d29b9a72adc6bfe6b66"
- integrity sha512-2HCmrU+/JNigDN6tg55cRDKCQWicYAPB38JGSFDQt95jDm8rrvSUo7YPkOIm5l6ts1j1zCvysNcasvfTMQzUOw==
+eslint-plugin-react@^7.35.0:
+ version "7.37.2"
+ resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.37.2.tgz#cd0935987876ba2900df2f58339f6d92305acc7a"
+ integrity sha512-EsTAnj9fLVr/GZleBLFbj/sSuXeWmp1eXIN60ceYnZveqEaUCyW4X+Vh4WTdUhCkW4xutXYqTXCUSyqD4rB75w==
dependencies:
array-includes "^3.1.8"
array.prototype.findlast "^1.2.5"
array.prototype.flatmap "^1.3.2"
- array.prototype.toreversed "^1.1.2"
- array.prototype.tosorted "^1.1.3"
+ array.prototype.tosorted "^1.1.4"
doctrine "^2.1.0"
- es-iterator-helpers "^1.0.19"
+ es-iterator-helpers "^1.1.0"
estraverse "^5.3.0"
+ hasown "^2.0.2"
jsx-ast-utils "^2.4.1 || ^3.0.0"
minimatch "^3.1.2"
object.entries "^1.1.8"
object.fromentries "^2.0.8"
- object.hasown "^1.1.4"
object.values "^1.2.0"
prop-types "^15.8.1"
resolve "^2.0.0-next.5"
semver "^6.3.1"
string.prototype.matchall "^4.0.11"
+ string.prototype.repeat "^1.0.0"
eslint-scope@5.1.1:
version "5.1.1"
@@ -6764,6 +6925,17 @@ fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3:
resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525"
integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==
+fast-glob@3.3.1:
+ version "3.3.1"
+ resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.1.tgz#784b4e897340f3dbbef17413b3f11acf03c874c4"
+ integrity sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==
+ dependencies:
+ "@nodelib/fs.stat" "^2.0.2"
+ "@nodelib/fs.walk" "^1.2.3"
+ glob-parent "^5.1.2"
+ merge2 "^1.3.0"
+ micromatch "^4.0.4"
+
fast-glob@^3.2.5, fast-glob@^3.2.7, fast-glob@^3.2.9, fast-glob@^3.3.1, fast-glob@^3.3.2:
version "3.3.2"
resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.2.tgz#a904501e57cfdd2ffcded45e99a54fef55e46129"
@@ -7142,7 +7314,7 @@ fs.realpath@^1.0.0:
resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f"
integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==
-fsevents@^2.3.2, fsevents@~2.3.2:
+fsevents@2.3.3, fsevents@^2.3.2, fsevents@~2.3.2:
version "2.3.3"
resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6"
integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==
@@ -7281,17 +7453,6 @@ glob-to-regexp@^0.4.1:
resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz#c75297087c851b9a578bd217dd59a92f59fe546e"
integrity sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==
-glob@10.3.10:
- version "10.3.10"
- resolved "https://registry.yarnpkg.com/glob/-/glob-10.3.10.tgz#0351ebb809fd187fe421ab96af83d3a70715df4b"
- integrity sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==
- dependencies:
- foreground-child "^3.1.0"
- jackspeak "^2.3.5"
- minimatch "^9.0.1"
- minipass "^5.0.0 || ^6.0.2 || ^7.0.0"
- path-scurry "^1.10.1"
-
glob@7.1.6:
version "7.1.6"
resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6"
@@ -7362,7 +7523,7 @@ globals@^14.0.0:
resolved "https://registry.yarnpkg.com/globals/-/globals-14.0.0.tgz#898d7413c29babcf6bafe56fcadded858ada724e"
integrity sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==
-globalthis@^1.0.3:
+globalthis@^1.0.3, globalthis@^1.0.4:
version "1.0.4"
resolved "https://registry.yarnpkg.com/globalthis/-/globalthis-1.0.4.tgz#7430ed3a975d97bfb59bcce41f5cabbafa651236"
integrity sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==
@@ -7890,6 +8051,11 @@ is-arrayish@^0.2.1:
resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d"
integrity sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==
+is-arrayish@^0.3.1:
+ version "0.3.2"
+ resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.3.2.tgz#4574a2ae56f7ab206896fb431eaeed066fdf8f03"
+ integrity sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==
+
is-async-function@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/is-async-function/-/is-async-function-2.0.0.tgz#8e4418efd3e5d3a6ebb0164c05ef5afb69aa9646"
@@ -7936,13 +8102,20 @@ is-ci@^3.0.1:
dependencies:
ci-info "^3.2.0"
-is-core-module@^2.11.0, is-core-module@^2.13.0, is-core-module@^2.13.1:
+is-core-module@^2.11.0, is-core-module@^2.13.0:
version "2.13.1"
resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.13.1.tgz#ad0d7532c6fea9da1ebdc82742d74525c6273384"
integrity sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==
dependencies:
hasown "^2.0.0"
+is-core-module@^2.15.1:
+ version "2.15.1"
+ resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.15.1.tgz#a7363a25bee942fefab0de13bf6aa372c82dcc37"
+ integrity sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==
+ dependencies:
+ hasown "^2.0.2"
+
is-data-view@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/is-data-view/-/is-data-view-1.0.1.tgz#4b4d3a511b70f3dc26d42c03ca9ca515d847759f"
@@ -8332,10 +8505,10 @@ istanbul-reports@^3.0.2, istanbul-reports@^3.1.3:
html-escaper "^2.0.0"
istanbul-lib-report "^3.0.0"
-iterator.prototype@^1.1.2:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/iterator.prototype/-/iterator.prototype-1.1.2.tgz#5e29c8924f01916cb9335f1ff80619dcff22b0c0"
- integrity sha512-DR33HMMr8EzwuRL8Y9D3u2BMj8+RqSE850jfGu59kS7tbmPLzGkZmVSfyCFSDxuZiEY6Rzt3T2NA/qU+NwVj1w==
+iterator.prototype@^1.1.3:
+ version "1.1.3"
+ resolved "https://registry.yarnpkg.com/iterator.prototype/-/iterator.prototype-1.1.3.tgz#016c2abe0be3bbdb8319852884f60908ac62bf9c"
+ integrity sha512-FW5iMbeQ6rBGm/oKgzq2aW4KvAGpxPzYES8N4g4xNXUKpL1mclMvOe+76AcLDTvD+Ze+sOpVhgdAQEKF4L9iGQ==
dependencies:
define-properties "^1.2.1"
get-intrinsic "^1.2.1"
@@ -8343,15 +8516,6 @@ iterator.prototype@^1.1.2:
reflect.getprototypeof "^1.0.4"
set-function-name "^2.0.1"
-jackspeak@^2.3.5:
- version "2.3.6"
- resolved "https://registry.yarnpkg.com/jackspeak/-/jackspeak-2.3.6.tgz#647ecc472238aee4b06ac0e461acc21a8c505ca8"
- integrity sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==
- dependencies:
- "@isaacs/cliui" "^8.0.2"
- optionalDependencies:
- "@pkgjs/parseargs" "^0.11.0"
-
jackspeak@^3.1.2:
version "3.4.0"
resolved "https://registry.yarnpkg.com/jackspeak/-/jackspeak-3.4.0.tgz#a75763ff36ad778ede6a156d8ee8b124de445b4a"
@@ -9727,13 +9891,6 @@ minimalistic-assert@^1.0.0:
dependencies:
brace-expansion "^1.1.7"
-minimatch@9.0.3:
- version "9.0.3"
- resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.3.tgz#a6e00c3de44c3a542bfaae70abfc22420a6da825"
- integrity sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==
- dependencies:
- brace-expansion "^2.0.1"
-
minimatch@^5.0.1:
version "5.1.6"
resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-5.1.6.tgz#1cfcb8cf5522ea69952cd2af95ae09477f122a96"
@@ -9741,13 +9898,6 @@ minimatch@^5.0.1:
dependencies:
brace-expansion "^2.0.1"
-minimatch@^9.0.1:
- version "9.0.5"
- resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.5.tgz#d74f9dd6b57d83d8e98cfb82133b03978bc929e5"
- integrity sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==
- dependencies:
- brace-expansion "^2.0.1"
-
minimatch@^9.0.4:
version "9.0.4"
resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.4.tgz#8e49c731d1749cbec05050ee5145147b32496a51"
@@ -9910,28 +10060,28 @@ next-themes@^0.3.0:
resolved "https://registry.yarnpkg.com/next-themes/-/next-themes-0.3.0.tgz#b4d2a866137a67d42564b07f3a3e720e2ff3871a"
integrity sha512-/QHIrsYpd6Kfk7xakK4svpDI5mmXP0gfvCoJdGpZQ2TOrQZmsW0QxjaiLn8wbIKjtm4BTSqLoix4lxYYOnLJ/w==
-next@^14.2.5:
- version "14.2.5"
- resolved "https://registry.yarnpkg.com/next/-/next-14.2.5.tgz#afe4022bb0b752962e2205836587a289270efbea"
- integrity sha512-0f8aRfBVL+mpzfBjYfQuLWh2WyAwtJXCRfkPF4UJ5qd2YwrHczsrSzXU4tRMV0OAxR8ZJZWPFn6uhSC56UTsLA==
+next@^15.0.1:
+ version "15.0.1"
+ resolved "https://registry.yarnpkg.com/next/-/next-15.0.1.tgz#a0e8eda35d803cb7f8092b2a2eb9d072e22bf21d"
+ integrity sha512-PSkFkr/w7UnFWm+EP8y/QpHrJXMqpZzAXpergB/EqLPOh4SGPJXv1wj4mslr2hUZBAS9pX7/9YLIdxTv6fwytw==
dependencies:
- "@next/env" "14.2.5"
- "@swc/helpers" "0.5.5"
+ "@next/env" "15.0.1"
+ "@swc/counter" "0.1.3"
+ "@swc/helpers" "0.5.13"
busboy "1.6.0"
caniuse-lite "^1.0.30001579"
- graceful-fs "^4.2.11"
postcss "8.4.31"
- styled-jsx "5.1.1"
+ styled-jsx "5.1.6"
optionalDependencies:
- "@next/swc-darwin-arm64" "14.2.5"
- "@next/swc-darwin-x64" "14.2.5"
- "@next/swc-linux-arm64-gnu" "14.2.5"
- "@next/swc-linux-arm64-musl" "14.2.5"
- "@next/swc-linux-x64-gnu" "14.2.5"
- "@next/swc-linux-x64-musl" "14.2.5"
- "@next/swc-win32-arm64-msvc" "14.2.5"
- "@next/swc-win32-ia32-msvc" "14.2.5"
- "@next/swc-win32-x64-msvc" "14.2.5"
+ "@next/swc-darwin-arm64" "15.0.1"
+ "@next/swc-darwin-x64" "15.0.1"
+ "@next/swc-linux-arm64-gnu" "15.0.1"
+ "@next/swc-linux-arm64-musl" "15.0.1"
+ "@next/swc-linux-x64-gnu" "15.0.1"
+ "@next/swc-linux-x64-musl" "15.0.1"
+ "@next/swc-win32-arm64-msvc" "15.0.1"
+ "@next/swc-win32-x64-msvc" "15.0.1"
+ sharp "^0.33.5"
nice-try@^1.0.4:
version "1.0.5"
@@ -10177,7 +10327,7 @@ object.assign@^4.1.4, object.assign@^4.1.5:
has-symbols "^1.0.3"
object-keys "^1.1.1"
-object.entries@^1.1.7, object.entries@^1.1.8:
+object.entries@^1.1.8:
version "1.1.8"
resolved "https://registry.yarnpkg.com/object.entries/-/object.entries-1.1.8.tgz#bffe6f282e01f4d17807204a24f8edd823599c41"
integrity sha512-cmopxi8VwRIAw/fkijJohSfpef5PdN0pMQJN6VC/ZKvn0LIknWD8KtgY6KlQdEc4tIjcQ3HxSMmnvtzIscdaYQ==
@@ -10186,7 +10336,7 @@ object.entries@^1.1.7, object.entries@^1.1.8:
define-properties "^1.2.1"
es-object-atoms "^1.0.0"
-object.fromentries@^2.0.7, object.fromentries@^2.0.8:
+object.fromentries@^2.0.8:
version "2.0.8"
resolved "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.8.tgz#f7195d8a9b97bd95cbc1999ea939ecd1a2b00c65"
integrity sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==
@@ -10196,7 +10346,7 @@ object.fromentries@^2.0.7, object.fromentries@^2.0.8:
es-abstract "^1.23.2"
es-object-atoms "^1.0.0"
-object.groupby@^1.0.1:
+object.groupby@^1.0.3:
version "1.0.3"
resolved "https://registry.yarnpkg.com/object.groupby/-/object.groupby-1.0.3.tgz#9b125c36238129f6f7b61954a1e7176148d5002e"
integrity sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==
@@ -10205,16 +10355,7 @@ object.groupby@^1.0.1:
define-properties "^1.2.1"
es-abstract "^1.23.2"
-object.hasown@^1.1.4:
- version "1.1.4"
- resolved "https://registry.yarnpkg.com/object.hasown/-/object.hasown-1.1.4.tgz#e270ae377e4c120cdcb7656ce66884a6218283dc"
- integrity sha512-FZ9LZt9/RHzGySlBARE3VF+gE26TxR38SdmqOqliuTnl9wrKulaQs+4dee1V+Io8VfxqzAfHu6YuRgUy8OHoTg==
- dependencies:
- define-properties "^1.2.1"
- es-abstract "^1.23.2"
- es-object-atoms "^1.0.0"
-
-object.values@^1.1.6, object.values@^1.1.7, object.values@^1.2.0:
+object.values@^1.1.6, object.values@^1.2.0:
version "1.2.0"
resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.2.0.tgz#65405a9d92cee68ac2d303002e0b8470a4d9ab1b"
integrity sha512-yBYjY9QX2hnRmZHAjG/f13MzmBzxzYgQhFrke06TTyKY5zSTEqkOeukBzIdVA3j3ulu8Qa3MbVFShV7T2RmGtQ==
@@ -10551,7 +10692,7 @@ path-parse@^1.0.5, path-parse@^1.0.7:
resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735"
integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==
-path-scurry@^1.10.1, path-scurry@^1.11.1:
+path-scurry@^1.11.1:
version "1.11.1"
resolved "https://registry.yarnpkg.com/path-scurry/-/path-scurry-1.11.1.tgz#7960a668888594a0720b12a911d1a742ab9f11d2"
integrity sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==
@@ -10996,12 +11137,14 @@ pretty-format@^3.8.0:
resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-3.8.0.tgz#bfbed56d5e9a776645f4b1ff7aa1a3ac4fa3c385"
integrity sha512-WuxUnVtlWL1OfZFQFuqvnvs6MiAGk9UNsBostyBOB0Is9wb5uRESevA6rnl/rkksXaGX3GzZhPup5d6Vp1nFew==
-prisma@^5.18.0:
- version "5.18.0"
- resolved "https://registry.yarnpkg.com/prisma/-/prisma-5.18.0.tgz#5ef69c802a075b7596231ea57003496873610b9e"
- integrity sha512-+TrSIxZsh64OPOmaSgVPH7ALL9dfU0jceYaMJXsNrTkFHO7/3RANi5K2ZiPB1De9+KDxCWn7jvRq8y8pvk+o9g==
+prisma@^5.21.1:
+ version "5.21.1"
+ resolved "https://registry.yarnpkg.com/prisma/-/prisma-5.21.1.tgz#3ffe4f4b60ea8df2e6d5f24f0cea090bcc5c0bd6"
+ integrity sha512-PB+Iqzld/uQBPaaw2UVIk84kb0ITsLajzsxzsadxxl54eaU5Gyl2/L02ysivHxK89t7YrfQJm+Ggk37uvM70oQ==
dependencies:
- "@prisma/engines" "5.18.0"
+ "@prisma/engines" "5.21.1"
+ optionalDependencies:
+ fsevents "2.3.3"
process-nextick-args@~2.0.0:
version "2.0.1"
@@ -11964,6 +12107,35 @@ shallow-clone@^3.0.0:
dependencies:
kind-of "^6.0.2"
+sharp@^0.33.5:
+ version "0.33.5"
+ resolved "https://registry.yarnpkg.com/sharp/-/sharp-0.33.5.tgz#13e0e4130cc309d6a9497596715240b2ec0c594e"
+ integrity sha512-haPVm1EkS9pgvHrQ/F3Xy+hgcuMV0Wm9vfIBSiwZ05k+xgb0PkBQpGsAA/oWdDobNaZTH5ppvHtzCFbnSEwHVw==
+ dependencies:
+ color "^4.2.3"
+ detect-libc "^2.0.3"
+ semver "^7.6.3"
+ optionalDependencies:
+ "@img/sharp-darwin-arm64" "0.33.5"
+ "@img/sharp-darwin-x64" "0.33.5"
+ "@img/sharp-libvips-darwin-arm64" "1.0.4"
+ "@img/sharp-libvips-darwin-x64" "1.0.4"
+ "@img/sharp-libvips-linux-arm" "1.0.5"
+ "@img/sharp-libvips-linux-arm64" "1.0.4"
+ "@img/sharp-libvips-linux-s390x" "1.0.4"
+ "@img/sharp-libvips-linux-x64" "1.0.4"
+ "@img/sharp-libvips-linuxmusl-arm64" "1.0.4"
+ "@img/sharp-libvips-linuxmusl-x64" "1.0.4"
+ "@img/sharp-linux-arm" "0.33.5"
+ "@img/sharp-linux-arm64" "0.33.5"
+ "@img/sharp-linux-s390x" "0.33.5"
+ "@img/sharp-linux-x64" "0.33.5"
+ "@img/sharp-linuxmusl-arm64" "0.33.5"
+ "@img/sharp-linuxmusl-x64" "0.33.5"
+ "@img/sharp-wasm32" "0.33.5"
+ "@img/sharp-win32-ia32" "0.33.5"
+ "@img/sharp-win32-x64" "0.33.5"
+
shebang-command@^1.2.0:
version "1.2.0"
resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea"
@@ -12022,6 +12194,13 @@ simple-plist@^1.1.0:
bplist-parser "0.3.1"
plist "^3.0.5"
+simple-swizzle@^0.2.2:
+ version "0.2.2"
+ resolved "https://registry.yarnpkg.com/simple-swizzle/-/simple-swizzle-0.2.2.tgz#a4da6b635ffcccca33f70d17cb92592de95e557a"
+ integrity sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==
+ dependencies:
+ is-arrayish "^0.3.1"
+
sisteransi@^1.0.5:
version "1.0.5"
resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.5.tgz#134d681297756437cc05ca01370d3a7a571075ed"
@@ -12320,6 +12499,15 @@ string-width@^7.0.0:
get-east-asian-width "^1.0.0"
strip-ansi "^7.1.0"
+string.prototype.includes@^2.0.1:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/string.prototype.includes/-/string.prototype.includes-2.0.1.tgz#eceef21283640761a81dbe16d6c7171a4edf7d92"
+ integrity sha512-o7+c9bW6zpAdJHTtujeePODAhkuicdAryFsfVKwA+wGw89wJ4GTY484WTucM9hLtDEOpOvI+aHnzqnC5lHp4Rg==
+ dependencies:
+ call-bind "^1.0.7"
+ define-properties "^1.2.1"
+ es-abstract "^1.23.3"
+
string.prototype.matchall@^4.0.11:
version "4.0.11"
resolved "https://registry.yarnpkg.com/string.prototype.matchall/-/string.prototype.matchall-4.0.11.tgz#1092a72c59268d2abaad76582dccc687c0297e0a"
@@ -12338,6 +12526,14 @@ string.prototype.matchall@^4.0.11:
set-function-name "^2.0.2"
side-channel "^1.0.6"
+string.prototype.repeat@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/string.prototype.repeat/-/string.prototype.repeat-1.0.0.tgz#e90872ee0308b29435aa26275f6e1b762daee01a"
+ integrity sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==
+ dependencies:
+ define-properties "^1.1.3"
+ es-abstract "^1.17.5"
+
string.prototype.trim@^1.2.9:
version "1.2.9"
resolved "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.2.9.tgz#b6fa326d72d2c78b6df02f7759c73f8f6274faa4"
@@ -12465,10 +12661,10 @@ style-loader@^3.3.1:
resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-3.3.4.tgz#f30f786c36db03a45cbd55b6a70d930c479090e7"
integrity sha512-0WqXzrsMTyb8yjZJHDqwmnwRJvhALK9LfRtRc6B4UTWe8AijYLZYZ9thuJTZc2VfQWINADW/j+LiJnfy2RoC1w==
-styled-jsx@5.1.1:
- version "5.1.1"
- resolved "https://registry.yarnpkg.com/styled-jsx/-/styled-jsx-5.1.1.tgz#839a1c3aaacc4e735fed0781b8619ea5d0009d1f"
- integrity sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==
+styled-jsx@5.1.6:
+ version "5.1.6"
+ resolved "https://registry.yarnpkg.com/styled-jsx/-/styled-jsx-5.1.6.tgz#83b90c077e6c6a80f7f5e8781d0f311b2fe41499"
+ integrity sha512-qSVyDTeMotdvQYoHWLNGwRFJHC+i+ZvdBRYosOFgC+Wg1vx4frN2/RG/NA7SYqqvKNLf39P2LSRA2pu6n0XYZA==
dependencies:
client-only "0.0.1"
@@ -12812,7 +13008,7 @@ tree-kill@^1.2.2:
resolved "https://registry.yarnpkg.com/tree-kill/-/tree-kill-1.2.2.tgz#4ca09a9092c88b73a7cdc5e8a01b507b0790a0cc"
integrity sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==
-ts-api-utils@^1.0.1, ts-api-utils@^1.3.0:
+ts-api-utils@^1.3.0:
version "1.3.0"
resolved "https://registry.yarnpkg.com/ts-api-utils/-/ts-api-utils-1.3.0.tgz#4b490e27129f1e8e686b45cc4ab63714dc60eea1"
integrity sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==
From 3edbb3c4435827b29314be2c9dfebcaae5c80ac1 Mon Sep 17 00:00:00 2001
From: "Frank Licona (3FE 3LE)" <3l33f3@gmail.com>
Date: Fri, 25 Oct 2024 20:12:07 -0500
Subject: [PATCH 09/25] chore(global): :arrow_up: update Auth.js
---
packages/ui/package.json | 2 +-
yarn.lock | 55 +++++++++++++++++++++++++---------------
2 files changed, 36 insertions(+), 21 deletions(-)
diff --git a/packages/ui/package.json b/packages/ui/package.json
index c343aaa..c43ed5f 100644
--- a/packages/ui/package.json
+++ b/packages/ui/package.json
@@ -40,7 +40,7 @@
"jose": "^5.8.0",
"lucide-react": "^0.435.0",
"next": "^15.0.1",
- "next-auth": "^5.0.0-beta.19",
+ "next-auth": "^5.0.0-beta.25",
"next-intl": "^3.15.3",
"next-themes": "^0.3.0",
"react": "^18.3.1",
diff --git a/yarn.lock b/yarn.lock
index b938d38..666eae9 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -20,19 +20,6 @@
"@jridgewell/gen-mapping" "^0.3.5"
"@jridgewell/trace-mapping" "^0.3.24"
-"@auth/core@0.32.0":
- version "0.32.0"
- resolved "https://registry.yarnpkg.com/@auth/core/-/core-0.32.0.tgz#2bc9ba7c52fba798ed46706bbd30d4d5c7021d75"
- integrity sha512-3+ssTScBd+1fd0/fscAyQN1tSygXzuhysuVVzB942ggU4mdfiTbv36P0ccVnExKWYJKvu3E2r3/zxXCCAmTOrg==
- dependencies:
- "@panva/hkdf" "^1.1.1"
- "@types/cookie" "0.6.0"
- cookie "0.6.0"
- jose "^5.1.3"
- oauth4webapi "^2.9.0"
- preact "10.11.3"
- preact-render-to-string "5.2.3"
-
"@auth/core@0.34.2":
version "0.34.2"
resolved "https://registry.yarnpkg.com/@auth/core/-/core-0.34.2.tgz#645fd1f972842ca473d110a34a5a36838209bf10"
@@ -46,6 +33,19 @@
preact "10.11.3"
preact-render-to-string "5.2.3"
+"@auth/core@0.37.2":
+ version "0.37.2"
+ resolved "https://registry.yarnpkg.com/@auth/core/-/core-0.37.2.tgz#0db8a94a076846bd88eb7f9273618513e2285cb2"
+ integrity sha512-kUvzyvkcd6h1vpeMAojK2y7+PAV5H+0Cc9+ZlKYDFhDY31AlvsB+GW5vNO4qE3Y07KeQgvNO9U0QUx/fN62kBw==
+ dependencies:
+ "@panva/hkdf" "^1.2.1"
+ "@types/cookie" "0.6.0"
+ cookie "0.7.1"
+ jose "^5.9.3"
+ oauth4webapi "^3.0.0"
+ preact "10.11.3"
+ preact-render-to-string "5.2.3"
+
"@auth/prisma-adapter@^2.4.2":
version "2.4.2"
resolved "https://registry.yarnpkg.com/@auth/prisma-adapter/-/prisma-adapter-2.4.2.tgz#e1a30de0a3df2fbc6eda348b83b9338672a33b08"
@@ -2319,7 +2319,7 @@
dependencies:
semver "^7.3.5"
-"@panva/hkdf@^1.1.1":
+"@panva/hkdf@^1.1.1", "@panva/hkdf@^1.2.1":
version "1.2.1"
resolved "https://registry.yarnpkg.com/@panva/hkdf/-/hkdf-1.2.1.tgz#cb0d111ef700136f4580349ff0226bf25c853f23"
integrity sha512-6oclG6Y3PiDFcoyk8srjLfVKyMfVCKJ27JwNPViuXziFpmdz+MZnZN/aKY0JGXgYuO/VghU0jcOAZgWXZ1Dmrw==
@@ -5333,6 +5333,11 @@ cookie@0.6.0:
resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.6.0.tgz#2798b04b071b0ecbff0dbb62a505a8efa4e19051"
integrity sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==
+cookie@0.7.1:
+ version "0.7.1"
+ resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.7.1.tgz#2f73c42142d5d5cf71310a74fc4ae61670e5dbc9"
+ integrity sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==
+
copy-webpack-plugin@^10.2.0:
version "10.2.4"
resolved "https://registry.yarnpkg.com/copy-webpack-plugin/-/copy-webpack-plugin-10.2.4.tgz#6c854be3fdaae22025da34b9112ccf81c63308fe"
@@ -8947,6 +8952,11 @@ jose@^5.8.0:
resolved "https://registry.yarnpkg.com/jose/-/jose-5.8.0.tgz#0165cee08d89a6546d7eeeb9524dc42f458a56de"
integrity sha512-E7CqYpL/t7MMnfGnK/eg416OsFCVUrU/Y3Vwe7QjKhu/BkS1Ms455+2xsqZQVN57/U2MHMBvEb5SrmAZWAIntA==
+jose@^5.9.3:
+ version "5.9.6"
+ resolved "https://registry.yarnpkg.com/jose/-/jose-5.9.6.tgz#77f1f901d88ebdc405e57cce08d2a91f47521883"
+ integrity sha512-AMlnetc9+CV9asI19zHmrgS/WYsWUwCn2R7RzlbJWD7F9eWYUTGyBmU9o6PxngtLGOiDGPRu+Uc4fhKzbpteZQ==
+
joycon@^3.0.1:
version "3.1.1"
resolved "https://registry.yarnpkg.com/joycon/-/joycon-3.1.1.tgz#bce8596d6ae808f8b68168f5fc69280996894f03"
@@ -10039,12 +10049,12 @@ nested-error-stacks@~2.0.1:
resolved "https://registry.yarnpkg.com/nested-error-stacks/-/nested-error-stacks-2.0.1.tgz#d2cc9fc5235ddb371fc44d506234339c8e4b0a4b"
integrity sha512-SrQrok4CATudVzBS7coSz26QRSmlK9TzzoFbeKfcPBUFPjcQM9Rqvr/DlJkOrwI/0KcgvMub1n1g5Jt9EgRn4A==
-next-auth@^5.0.0-beta.19:
- version "5.0.0-beta.19"
- resolved "https://registry.yarnpkg.com/next-auth/-/next-auth-5.0.0-beta.19.tgz#2f99d8d28c2ee6ee3c6ba48361e482935e267648"
- integrity sha512-YHu1igcAxZPh8ZB7GIM93dqgY6gcAzq66FOhQFheAdOx1raxNcApt05nNyNCSB6NegSiyJ4XOPsaNow4pfDmsg==
+next-auth@^5.0.0-beta.25:
+ version "5.0.0-beta.25"
+ resolved "https://registry.yarnpkg.com/next-auth/-/next-auth-5.0.0-beta.25.tgz#3a9f9734e1d8fa5ced545360f1afc24862cb92d5"
+ integrity sha512-2dJJw1sHQl2qxCrRk+KTQbeH+izFbGFPuJj5eGgBZFYyiYYtvlrBeUw1E/OJJxTRjuxbSYGnCTkUIRsIIW0bog==
dependencies:
- "@auth/core" "0.32.0"
+ "@auth/core" "0.37.2"
next-intl@^3.15.3:
version "3.15.3"
@@ -10284,11 +10294,16 @@ nyc@^17.1.0:
test-exclude "^6.0.0"
yargs "^15.0.2"
-oauth4webapi@^2.10.4, oauth4webapi@^2.9.0:
+oauth4webapi@^2.10.4:
version "2.11.1"
resolved "https://registry.yarnpkg.com/oauth4webapi/-/oauth4webapi-2.11.1.tgz#8d79e6b0d54ead203094f185a11031f3f9978465"
integrity sha512-aNzOnL98bL6izG97zgnZs1PFEyO4WDVRhz2Pd066NPak44w5ESLRCYmJIyey8avSBPOMtBjhF3ZDDm7bIb7UOg==
+oauth4webapi@^3.0.0:
+ version "3.1.2"
+ resolved "https://registry.yarnpkg.com/oauth4webapi/-/oauth4webapi-3.1.2.tgz#f14d9f50c045d9e1091b610b6994a5b113e98dc6"
+ integrity sha512-KQZkNU+xn02lWrFu5Vjqg9E81yPtDSxUZorRHlLWVoojD+H/0GFbH59kcnz5Thdjj7c4/mYMBPj/mhvGe/kKXA==
+
ob1@0.80.9:
version "0.80.9"
resolved "https://registry.yarnpkg.com/ob1/-/ob1-0.80.9.tgz#4ae3edd807536097674ff943509089f5d4e0649f"
From 6c45e52b2e0a0ced2904a7223d09911bafdcb066 Mon Sep 17 00:00:00 2001
From: "Frank Licona (3FE 3LE)" <3l33f3@gmail.com>
Date: Sat, 26 Oct 2024 13:16:54 -0500
Subject: [PATCH 10/25] perf(global): :arrow_up: upgrade next-intl
---
apps/opt/i18n.ts | 18 +++++--
apps/opt/i18n/request.ts | 18 +++++++
apps/opt/i18n/routing.ts | 17 +++++++
apps/opt/messages/{en.json => en-US.json} | 0
apps/opt/messages/{es.json => es-ES.json} | 0
apps/opt/middleware.ts | 9 ++--
apps/opt/navigations.ts | 6 ---
apps/opt/next.config.js | 2 +-
apps/suite/i18n.ts | 20 +++++---
apps/suite/i18n/request.ts | 18 +++++++
apps/suite/i18n/routing.ts | 17 +++++++
apps/suite/messages/{en.json => en-US.json} | 0
apps/suite/messages/{es.json => es-ES.json} | 0
apps/suite/middleware.ts | 9 ++--
apps/suite/navigations.ts | 6 ---
apps/suite/next.config.js | 2 +-
apps/web/i18n.ts | 18 +++++--
apps/web/i18n/request.ts | 18 +++++++
apps/web/i18n/routing.ts | 17 +++++++
apps/web/messages/{en.json => en-US.json} | 0
apps/web/messages/{es.json => es-ES.json} | 0
apps/web/middleware.ts | 9 ++--
apps/web/navigations.ts | 6 ---
apps/web/next.config.js | 2 +-
packages/ui/config.ts | 4 --
packages/ui/package.json | 2 +-
yarn.lock | 52 ++++++++++++++-------
27 files changed, 192 insertions(+), 78 deletions(-)
create mode 100644 apps/opt/i18n/request.ts
create mode 100644 apps/opt/i18n/routing.ts
rename apps/opt/messages/{en.json => en-US.json} (100%)
rename apps/opt/messages/{es.json => es-ES.json} (100%)
delete mode 100644 apps/opt/navigations.ts
create mode 100644 apps/suite/i18n/request.ts
create mode 100644 apps/suite/i18n/routing.ts
rename apps/suite/messages/{en.json => en-US.json} (100%)
rename apps/suite/messages/{es.json => es-ES.json} (100%)
delete mode 100644 apps/suite/navigations.ts
create mode 100644 apps/web/i18n/request.ts
create mode 100644 apps/web/i18n/routing.ts
rename apps/web/messages/{en.json => en-US.json} (100%)
rename apps/web/messages/{es.json => es-ES.json} (100%)
delete mode 100644 apps/web/navigations.ts
delete mode 100644 packages/ui/config.ts
diff --git a/apps/opt/i18n.ts b/apps/opt/i18n.ts
index c9312b2..41d1af7 100644
--- a/apps/opt/i18n.ts
+++ b/apps/opt/i18n.ts
@@ -1,15 +1,23 @@
import { getRequestConfig } from 'next-intl/server';
import { notFound } from 'next/navigation';
-import { locales } from '@repo/ui/config';
+import { routing } from './i18n/routing';
// Can be imported from a shared config
-export default getRequestConfig(async ({ locale }) => {
- // Validate that the incoming `locale` parameter is valid
- if (!locales.includes(locale as any)) notFound();
+export default getRequestConfig(async ({ requestLocale }) => {
+ // This typically corresponds to the `[locale]` segment
+ let locale = await requestLocale;
+
+ // Ensure that the incoming locale is valid
+ if (!locale || !routing.locales.includes(locale as any)) {
+ locale = routing.defaultLocale;
+ } else {
+ notFound();
+ }
return {
- messages: (await import(`./messages/${locale}.json`)).default,
+ locale,
+ // ...
};
});
diff --git a/apps/opt/i18n/request.ts b/apps/opt/i18n/request.ts
new file mode 100644
index 0000000..e9b4d9a
--- /dev/null
+++ b/apps/opt/i18n/request.ts
@@ -0,0 +1,18 @@
+import { getRequestConfig } from 'next-intl/server';
+
+import { routing } from './routing';
+
+export default getRequestConfig(async ({ requestLocale }) => {
+ // This typically corresponds to the `[locale]` segment.
+ let locale = await requestLocale;
+
+ // Ensure that a valid locale is used
+ if (!locale || !routing.locales.includes(locale as any)) {
+ locale = routing.defaultLocale;
+ }
+
+ return {
+ locale,
+ messages: (await import(`../messages/${locale}.json`)).default,
+ };
+});
diff --git a/apps/opt/i18n/routing.ts b/apps/opt/i18n/routing.ts
new file mode 100644
index 0000000..ebce24f
--- /dev/null
+++ b/apps/opt/i18n/routing.ts
@@ -0,0 +1,17 @@
+import { createNavigation } from 'next-intl/navigation';
+import { defineRouting } from 'next-intl/routing';
+
+export const routing = defineRouting({
+ locales: ['en-US', 'es-ES'],
+ defaultLocale: 'en-US',
+ localePrefix: {
+ mode: 'always',
+ prefixes: {
+ 'en-US': '/en',
+ 'es-ES': '/es',
+ },
+ },
+});
+
+export const { Link, redirect, usePathname, useRouter } =
+ createNavigation(routing);
diff --git a/apps/opt/messages/en.json b/apps/opt/messages/en-US.json
similarity index 100%
rename from apps/opt/messages/en.json
rename to apps/opt/messages/en-US.json
diff --git a/apps/opt/messages/es.json b/apps/opt/messages/es-ES.json
similarity index 100%
rename from apps/opt/messages/es.json
rename to apps/opt/messages/es-ES.json
diff --git a/apps/opt/middleware.ts b/apps/opt/middleware.ts
index 58fcd3c..719273d 100644
--- a/apps/opt/middleware.ts
+++ b/apps/opt/middleware.ts
@@ -4,17 +4,14 @@ import { NextResponse } from 'next/server';
import { auth } from '@opt/auth';
import { SSS_URI } from '@repo/ui/constants';
-const locales = ['es', 'en'];
+import { routing } from './i18n/routing';
const publicPages = ['/'];
-const intlMiddleware = createMiddleware({
- locales,
- defaultLocale: 'en',
-});
+const intlMiddleware = createMiddleware(routing);
const publicPathnameRegex = RegExp(
- `^(/(${locales.join('|')}))?(${publicPages
+ `^(/(${routing.locales.join('|')}))?(${publicPages
.flatMap((p) => (p === '/' ? ['', '/'] : p))
.join('|')})/?$`,
'i',
diff --git a/apps/opt/navigations.ts b/apps/opt/navigations.ts
deleted file mode 100644
index 2924019..0000000
--- a/apps/opt/navigations.ts
+++ /dev/null
@@ -1,6 +0,0 @@
-import { createSharedPathnamesNavigation } from 'next-intl/navigation';
-
-import { locales } from '@repo/ui/config';
-
-export const { Link, redirect, usePathname, useRouter } =
- createSharedPathnamesNavigation({ locales /* ... */ });
diff --git a/apps/opt/next.config.js b/apps/opt/next.config.js
index 2bc567a..16e9daa 100644
--- a/apps/opt/next.config.js
+++ b/apps/opt/next.config.js
@@ -1,7 +1,7 @@
const path = require('path');
const createNextIntlPlugin = require('next-intl/plugin');
-const withNextIntl = createNextIntlPlugin();
+const withNextIntl = createNextIntlPlugin('./i18n/request.ts');
/** @type {import('next').NextConfig} */
const nextConfig = {
diff --git a/apps/suite/i18n.ts b/apps/suite/i18n.ts
index b705119..41d1af7 100644
--- a/apps/suite/i18n.ts
+++ b/apps/suite/i18n.ts
@@ -1,17 +1,23 @@
import { getRequestConfig } from 'next-intl/server';
import { notFound } from 'next/navigation';
-import { locales } from '@repo/ui/config';
+import { routing } from './i18n/routing';
// Can be imported from a shared config
-export default getRequestConfig(async ({ locale }) => {
- // Validate that the incoming `locale` parameter is valid
- if (!locales.includes(locale as any)) notFound();
+export default getRequestConfig(async ({ requestLocale }) => {
+ // This typically corresponds to the `[locale]` segment
+ let locale = await requestLocale;
+
+ // Ensure that the incoming locale is valid
+ if (!locale || !routing.locales.includes(locale as any)) {
+ locale = routing.defaultLocale;
+ } else {
+ notFound();
+ }
return {
- messages: (await import(`./messages/${locale}.json`)).default,
- timeZone: 'America/Bogota',
- now: new Date(),
+ locale,
+ // ...
};
});
diff --git a/apps/suite/i18n/request.ts b/apps/suite/i18n/request.ts
new file mode 100644
index 0000000..e9b4d9a
--- /dev/null
+++ b/apps/suite/i18n/request.ts
@@ -0,0 +1,18 @@
+import { getRequestConfig } from 'next-intl/server';
+
+import { routing } from './routing';
+
+export default getRequestConfig(async ({ requestLocale }) => {
+ // This typically corresponds to the `[locale]` segment.
+ let locale = await requestLocale;
+
+ // Ensure that a valid locale is used
+ if (!locale || !routing.locales.includes(locale as any)) {
+ locale = routing.defaultLocale;
+ }
+
+ return {
+ locale,
+ messages: (await import(`../messages/${locale}.json`)).default,
+ };
+});
diff --git a/apps/suite/i18n/routing.ts b/apps/suite/i18n/routing.ts
new file mode 100644
index 0000000..ebce24f
--- /dev/null
+++ b/apps/suite/i18n/routing.ts
@@ -0,0 +1,17 @@
+import { createNavigation } from 'next-intl/navigation';
+import { defineRouting } from 'next-intl/routing';
+
+export const routing = defineRouting({
+ locales: ['en-US', 'es-ES'],
+ defaultLocale: 'en-US',
+ localePrefix: {
+ mode: 'always',
+ prefixes: {
+ 'en-US': '/en',
+ 'es-ES': '/es',
+ },
+ },
+});
+
+export const { Link, redirect, usePathname, useRouter } =
+ createNavigation(routing);
diff --git a/apps/suite/messages/en.json b/apps/suite/messages/en-US.json
similarity index 100%
rename from apps/suite/messages/en.json
rename to apps/suite/messages/en-US.json
diff --git a/apps/suite/messages/es.json b/apps/suite/messages/es-ES.json
similarity index 100%
rename from apps/suite/messages/es.json
rename to apps/suite/messages/es-ES.json
diff --git a/apps/suite/middleware.ts b/apps/suite/middleware.ts
index 0365c3f..668d0da 100644
--- a/apps/suite/middleware.ts
+++ b/apps/suite/middleware.ts
@@ -3,17 +3,14 @@ import { NextResponse } from 'next/server';
import { auth } from '@sss/auth';
-const locales = ['es', 'en'];
+import { routing } from './i18n/routing';
const publicPages = ['/', '/login', '/register', '/error', '/verify'];
-const intlMiddleware = createMiddleware({
- locales,
- defaultLocale: 'en',
-});
+const intlMiddleware = createMiddleware(routing);
const publicPathnameRegex = RegExp(
- `^(/(${locales.join('|')}))?(${publicPages
+ `^(/(${routing.locales.join('|')}))?(${publicPages
.flatMap((p) => (p === '/' ? ['', '/'] : p))
.join('|')})/?$`,
'i',
diff --git a/apps/suite/navigations.ts b/apps/suite/navigations.ts
deleted file mode 100644
index 2924019..0000000
--- a/apps/suite/navigations.ts
+++ /dev/null
@@ -1,6 +0,0 @@
-import { createSharedPathnamesNavigation } from 'next-intl/navigation';
-
-import { locales } from '@repo/ui/config';
-
-export const { Link, redirect, usePathname, useRouter } =
- createSharedPathnamesNavigation({ locales /* ... */ });
diff --git a/apps/suite/next.config.js b/apps/suite/next.config.js
index bbe2815..9aaa559 100644
--- a/apps/suite/next.config.js
+++ b/apps/suite/next.config.js
@@ -1,7 +1,7 @@
const path = require('path');
const createNextIntlPlugin = require('next-intl/plugin');
-const withNextIntl = createNextIntlPlugin();
+const withNextIntl = createNextIntlPlugin('./i18n/request.ts');
/** @type {import('next').NextConfig} */
const nextConfig = {
diff --git a/apps/web/i18n.ts b/apps/web/i18n.ts
index c9312b2..41d1af7 100644
--- a/apps/web/i18n.ts
+++ b/apps/web/i18n.ts
@@ -1,15 +1,23 @@
import { getRequestConfig } from 'next-intl/server';
import { notFound } from 'next/navigation';
-import { locales } from '@repo/ui/config';
+import { routing } from './i18n/routing';
// Can be imported from a shared config
-export default getRequestConfig(async ({ locale }) => {
- // Validate that the incoming `locale` parameter is valid
- if (!locales.includes(locale as any)) notFound();
+export default getRequestConfig(async ({ requestLocale }) => {
+ // This typically corresponds to the `[locale]` segment
+ let locale = await requestLocale;
+
+ // Ensure that the incoming locale is valid
+ if (!locale || !routing.locales.includes(locale as any)) {
+ locale = routing.defaultLocale;
+ } else {
+ notFound();
+ }
return {
- messages: (await import(`./messages/${locale}.json`)).default,
+ locale,
+ // ...
};
});
diff --git a/apps/web/i18n/request.ts b/apps/web/i18n/request.ts
new file mode 100644
index 0000000..e9b4d9a
--- /dev/null
+++ b/apps/web/i18n/request.ts
@@ -0,0 +1,18 @@
+import { getRequestConfig } from 'next-intl/server';
+
+import { routing } from './routing';
+
+export default getRequestConfig(async ({ requestLocale }) => {
+ // This typically corresponds to the `[locale]` segment.
+ let locale = await requestLocale;
+
+ // Ensure that a valid locale is used
+ if (!locale || !routing.locales.includes(locale as any)) {
+ locale = routing.defaultLocale;
+ }
+
+ return {
+ locale,
+ messages: (await import(`../messages/${locale}.json`)).default,
+ };
+});
diff --git a/apps/web/i18n/routing.ts b/apps/web/i18n/routing.ts
new file mode 100644
index 0000000..ebce24f
--- /dev/null
+++ b/apps/web/i18n/routing.ts
@@ -0,0 +1,17 @@
+import { createNavigation } from 'next-intl/navigation';
+import { defineRouting } from 'next-intl/routing';
+
+export const routing = defineRouting({
+ locales: ['en-US', 'es-ES'],
+ defaultLocale: 'en-US',
+ localePrefix: {
+ mode: 'always',
+ prefixes: {
+ 'en-US': '/en',
+ 'es-ES': '/es',
+ },
+ },
+});
+
+export const { Link, redirect, usePathname, useRouter } =
+ createNavigation(routing);
diff --git a/apps/web/messages/en.json b/apps/web/messages/en-US.json
similarity index 100%
rename from apps/web/messages/en.json
rename to apps/web/messages/en-US.json
diff --git a/apps/web/messages/es.json b/apps/web/messages/es-ES.json
similarity index 100%
rename from apps/web/messages/es.json
rename to apps/web/messages/es-ES.json
diff --git a/apps/web/middleware.ts b/apps/web/middleware.ts
index ece33fe..856d974 100644
--- a/apps/web/middleware.ts
+++ b/apps/web/middleware.ts
@@ -3,17 +3,14 @@ import { NextResponse } from 'next/server';
import { auth } from '@web/auth';
-const locales = ['es', 'en'];
+import { routing } from './i18n/routing';
const publicPages = ['/'];
-const intlMiddleware = createMiddleware({
- locales,
- defaultLocale: 'en',
-});
+const intlMiddleware = createMiddleware(routing);
const publicPathnameRegex = RegExp(
- `^(/(${locales.join('|')}))?(${publicPages
+ `^(/(${routing.locales.join('|')}))?(${publicPages
.flatMap((p) => (p === '/' ? ['', '/'] : p))
.join('|')})/?$`,
'i',
diff --git a/apps/web/navigations.ts b/apps/web/navigations.ts
deleted file mode 100644
index 2924019..0000000
--- a/apps/web/navigations.ts
+++ /dev/null
@@ -1,6 +0,0 @@
-import { createSharedPathnamesNavigation } from 'next-intl/navigation';
-
-import { locales } from '@repo/ui/config';
-
-export const { Link, redirect, usePathname, useRouter } =
- createSharedPathnamesNavigation({ locales /* ... */ });
diff --git a/apps/web/next.config.js b/apps/web/next.config.js
index bbe2815..9aaa559 100644
--- a/apps/web/next.config.js
+++ b/apps/web/next.config.js
@@ -1,7 +1,7 @@
const path = require('path');
const createNextIntlPlugin = require('next-intl/plugin');
-const withNextIntl = createNextIntlPlugin();
+const withNextIntl = createNextIntlPlugin('./i18n/request.ts');
/** @type {import('next').NextConfig} */
const nextConfig = {
diff --git a/packages/ui/config.ts b/packages/ui/config.ts
deleted file mode 100644
index 46acfe3..0000000
--- a/packages/ui/config.ts
+++ /dev/null
@@ -1,4 +0,0 @@
-import { LocalePrefix } from 'next-intl/routing';
-
-export const localePrefix = 'always' satisfies LocalePrefix;
-export const locales = ['es', 'en'] as const;
diff --git a/packages/ui/package.json b/packages/ui/package.json
index c43ed5f..dab011a 100644
--- a/packages/ui/package.json
+++ b/packages/ui/package.json
@@ -41,7 +41,7 @@
"lucide-react": "^0.435.0",
"next": "^15.0.1",
"next-auth": "^5.0.0-beta.25",
- "next-intl": "^3.15.3",
+ "next-intl": "^3.23.5",
"next-themes": "^0.3.0",
"react": "^18.3.1",
"react-dom": "^18.3.1",
diff --git a/yarn.lock b/yarn.lock
index 666eae9..dff9a90 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -1761,6 +1761,13 @@
dependencies:
tslib "^2.4.0"
+"@formatjs/fast-memoize@^2.2.0":
+ version "2.2.2"
+ resolved "https://registry.yarnpkg.com/@formatjs/fast-memoize/-/fast-memoize-2.2.2.tgz#2409ec10f5f7d6c65f4c04e6c2d6cc56fa1e4cef"
+ integrity sha512-mzxZcS0g1pOzwZTslJOBTmLzDXseMLLvnh25ymRilCm8QLMObsQ7x/rj9GNrH0iUhZMlFisVOD6J1n6WQqpKPQ==
+ dependencies:
+ tslib "2"
+
"@formatjs/icu-messageformat-parser@2.7.8":
version "2.7.8"
resolved "https://registry.yarnpkg.com/@formatjs/icu-messageformat-parser/-/icu-messageformat-parser-2.7.8.tgz#f6d7643001e9bb5930d812f1f9a9856f30fa0343"
@@ -1785,12 +1792,12 @@
dependencies:
tslib "^2.4.0"
-"@formatjs/intl-localematcher@^0.2.32":
- version "0.2.32"
- resolved "https://registry.yarnpkg.com/@formatjs/intl-localematcher/-/intl-localematcher-0.2.32.tgz#00d4d307cd7d514b298e15a11a369b86c8933ec1"
- integrity sha512-k/MEBstff4sttohyEpXxCmC3MqbUn9VvHGlZ8fauLzkbwXmVrEeyzS+4uhrvAk9DWU9/7otYWxyDox4nT/KVLQ==
+"@formatjs/intl-localematcher@^0.5.4":
+ version "0.5.6"
+ resolved "https://registry.yarnpkg.com/@formatjs/intl-localematcher/-/intl-localematcher-0.5.6.tgz#cd0cd99483673d3196a15b4e2c924cfda7f002f8"
+ integrity sha512-roz1+Ba5e23AHX6KUAWmLEyTRZegM5YDuxuvkHCyK3RJddf/UXB2f+s7pOMm9ktfPGla0g+mQXOn5vsuYirnaA==
dependencies:
- tslib "^2.4.0"
+ tslib "2"
"@graphql-typed-document-node/core@^3.1.0":
version "3.2.0"
@@ -10034,11 +10041,16 @@ ncp@~2.0.0:
resolved "https://registry.yarnpkg.com/ncp/-/ncp-2.0.0.tgz#195a21d6c46e361d2fb1281ba38b91e9df7bdbb3"
integrity sha512-zIdGUrPRFTUELUvr3Gmc7KZ2Sw/h1PiVM0Af/oHB6zgnV1ikqSfRk+TOufi79aHYCW3NiOXmr1BP5nWbzojLaA==
-negotiator@0.6.3, negotiator@^0.6.3:
+negotiator@0.6.3:
version "0.6.3"
resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.3.tgz#58e323a72fedc0d6f9cd4d31fe49f51479590ccd"
integrity sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==
+negotiator@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-1.0.0.tgz#b6c91bb47172d69f93cfd7c357bbb529019b5f6a"
+ integrity sha512-8Ofs/AUQh8MaEcrlq5xOX0CQ9ypTF5dl78mjlMNfOK08fzpgTHQRQPBxcPlEtIw0yRpws+Zo/3r+5WRby7u3Gg==
+
neo-async@^2.5.0, neo-async@^2.6.2:
version "2.6.2"
resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f"
@@ -10056,14 +10068,14 @@ next-auth@^5.0.0-beta.25:
dependencies:
"@auth/core" "0.37.2"
-next-intl@^3.15.3:
- version "3.15.3"
- resolved "https://registry.yarnpkg.com/next-intl/-/next-intl-3.15.3.tgz#c964a4f123d214517c2424514cdd19d16a317f73"
- integrity sha512-jNc2xYzwv0Q4EQKvuHye9dXaDaneiP/ZCQC+AccyOQD6N9d/FZiSWT4wfVVD4B0IXC1Hhzj1QussUu+k3ynnTg==
+next-intl@^3.23.5:
+ version "3.23.5"
+ resolved "https://registry.yarnpkg.com/next-intl/-/next-intl-3.23.5.tgz#a46ed0cb2e896e1e762bc0c1409af5a092288fc5"
+ integrity sha512-mUuz3JFRdtWpyYEPN8xUXpkn4qEnAADxA5GQjUGobbLY32kWrYfZYs4MrYHAVl2zAAbPcD9oisXF0q8B1ifszA==
dependencies:
- "@formatjs/intl-localematcher" "^0.2.32"
- negotiator "^0.6.3"
- use-intl "^3.15.3"
+ "@formatjs/intl-localematcher" "^0.5.4"
+ negotiator "^1.0.0"
+ use-intl "^3.23.5"
next-themes@^0.3.0:
version "0.3.0"
@@ -13058,6 +13070,11 @@ tsconfig-paths@^3.15.0:
minimist "^1.2.6"
strip-bom "^3.0.0"
+tslib@2:
+ version "2.8.0"
+ resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.8.0.tgz#d124c86c3c05a40a91e6fdea4021bd31d377971b"
+ integrity sha512-jWVzBLplnCmoaTr13V9dYbiQ99wvZRd0vNWaDRg+aVYRcjDF3nDksxFDE/+fkXnKhpnUUkmx5pK/v8mCtLVqZA==
+
tslib@^2.0.1, tslib@^2.0.3, tslib@^2.1.0, tslib@^2.4.0:
version "2.6.3"
resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.3.tgz#0438f810ad7a9edcde7a241c3d80db693c8cbfe0"
@@ -13405,11 +13422,12 @@ url-parse@^1.5.3:
querystringify "^2.1.1"
requires-port "^1.0.0"
-use-intl@^3.15.3:
- version "3.15.3"
- resolved "https://registry.yarnpkg.com/use-intl/-/use-intl-3.15.3.tgz#b6610f9e01a0188596c894ecea43b7896905a7fa"
- integrity sha512-cHSeFy2cy4u6tT8A7KAcDbs+Hz6lytXClVSsOI1leD6OOrpakNxsmyLa8SMrttOAUQto5kV1f4LVhiX/lpkO3g==
+use-intl@^3.23.5:
+ version "3.23.5"
+ resolved "https://registry.yarnpkg.com/use-intl/-/use-intl-3.23.5.tgz#cad200d2e7c0334095a590e66448bc1ab15a3ffc"
+ integrity sha512-t+iwRqyAzKUY3E0DbA70eTsNxLKr6RndqdIOedqIQPfcNNkFxHs3g6+6i0PWXAGYRXaqOzzE3ZWYFOMCmnUkWg==
dependencies:
+ "@formatjs/fast-memoize" "^2.2.0"
intl-messageformat "^10.5.14"
use-sync-external-store@1.2.2, use-sync-external-store@^1.2.0:
From 0f51f30b872807148aec2afe868e5179de9d00a4 Mon Sep 17 00:00:00 2001
From: "Frank Licona (3FE 3LE)" <3l33f3@gmail.com>
Date: Sat, 26 Oct 2024 13:21:23 -0500
Subject: [PATCH 11/25] feat(global): :boom: integrate break changes by new
version of Next.js 15 & next-intl
---
apps/opt/app/[locale]/dashboard/page.tsx | 12 ++++++------
apps/opt/app/[locale]/layout.tsx | 14 +++++++++-----
apps/opt/app/[locale]/not-found.tsx | 2 +-
apps/opt/app/[locale]/page.tsx | 2 +-
apps/opt/app/[locale]/trips/[id]/page.tsx | 5 +++--
apps/opt/components/UI/StepperFlow.tsx | 2 +-
apps/opt/components/trips/CustomMapControl.tsx | 3 ++-
apps/opt/components/trips/TripCard.tsx | 2 +-
apps/suite/app/[locale]/dashboard/page.tsx | 4 ++--
apps/suite/app/[locale]/layout.tsx | 12 ++++++++----
apps/suite/app/[locale]/not-found.tsx | 2 +-
apps/suite/app/[locale]/page.tsx | 10 ++++------
apps/suite/components/Footer.tsx | 2 +-
apps/suite/components/auth/LoginForm.tsx | 2 +-
apps/suite/components/auth/RegisterForm.tsx | 2 +-
apps/suite/components/auth/SignOutButton.tsx | 3 ++-
apps/suite/core/auth/hooks/useLogin.ts | 2 +-
apps/suite/core/auth/hooks/useRegister.ts | 2 +-
apps/suite/utils/index.ts | 5 +++--
apps/web/app/[locale]/layout.tsx | 4 ++--
apps/web/app/[locale]/not-found.tsx | 2 +-
21 files changed, 52 insertions(+), 42 deletions(-)
diff --git a/apps/opt/app/[locale]/dashboard/page.tsx b/apps/opt/app/[locale]/dashboard/page.tsx
index b7c962a..7cd919a 100644
--- a/apps/opt/app/[locale]/dashboard/page.tsx
+++ b/apps/opt/app/[locale]/dashboard/page.tsx
@@ -17,9 +17,9 @@ import { useFormatter } from 'next-intl';
import { useState } from 'react';
import { Trip, TripStatus } from '@opt/core/interfaces/TripInterface';
+import { useRouter } from '@opt/i18n/routing';
import { TripAdapter } from '@opt/integration/adapters';
import { createTripsHooks } from '@opt/integration/hooks';
-import { useRouter } from '@opt/navigations';
import { ActionButton, InputField } from '@repo/ui';
export default function Dashboard() {
@@ -219,11 +219,11 @@ export default function Dashboard() {
Avg. Expenses/Person
- {/*
-
- ${averageExpensesPerPerson.toFixed(2)}
-
-
*/}
+
+ {/*
+ ${averageExpensesPerPerson ? averageExpensesPerPerson.toFixed(2): 'N/A'}
+ */}
+
diff --git a/apps/opt/app/[locale]/layout.tsx b/apps/opt/app/[locale]/layout.tsx
index ac07252..613f362 100644
--- a/apps/opt/app/[locale]/layout.tsx
+++ b/apps/opt/app/[locale]/layout.tsx
@@ -1,12 +1,11 @@
import '@opt/styles/main.scss';
-import { getMessages, unstable_setRequestLocale } from 'next-intl/server';
+import { getMessages, setRequestLocale } from 'next-intl/server';
import { auth } from '@opt/auth';
import { AppWrapper, SWRProvider } from '@opt/components/UI';
import { Navbar } from '@repo/ui';
import { OPT_URI, SSS_URI } from '@repo/ui/constants';
-import { PageProps } from '@repo/ui/types';
import { metadata } from '../metadata';
@@ -17,9 +16,14 @@ export async function generateStaticParams() {
}
export default async function RootLayout({
children,
- params: { locale },
-}: PageProps) {
- unstable_setRequestLocale(locale);
+ params,
+}: {
+ children: React.ReactNode;
+ params: { locale: 'es' | 'en' };
+}) {
+ const { locale } = await params;
+
+ setRequestLocale(locale);
const session = await auth();
const messages = await getMessages();
diff --git a/apps/opt/app/[locale]/not-found.tsx b/apps/opt/app/[locale]/not-found.tsx
index 2038976..347c04f 100644
--- a/apps/opt/app/[locale]/not-found.tsx
+++ b/apps/opt/app/[locale]/not-found.tsx
@@ -1,7 +1,7 @@
'use client';
import { ArrowLeft } from 'lucide-react';
-import { useRouter } from '@opt/navigations';
+import { useRouter } from '@opt/i18n/routing';
import { ActionButton } from '@repo/ui';
export default function NotFound() {
diff --git a/apps/opt/app/[locale]/page.tsx b/apps/opt/app/[locale]/page.tsx
index 1bfcb3f..ce95b52 100644
--- a/apps/opt/app/[locale]/page.tsx
+++ b/apps/opt/app/[locale]/page.tsx
@@ -1,7 +1,7 @@
import { getTranslations } from 'next-intl/server';
import Image from 'next/image';
-import Link from 'next/link';
+import { Link } from '@opt/i18n/routing';
import landing_img from '@repo/ui/assets/animated/globalization-a.svg';
export default async function HomePage() {
diff --git a/apps/opt/app/[locale]/trips/[id]/page.tsx b/apps/opt/app/[locale]/trips/[id]/page.tsx
index 26a23a4..fd1311f 100644
--- a/apps/opt/app/[locale]/trips/[id]/page.tsx
+++ b/apps/opt/app/[locale]/trips/[id]/page.tsx
@@ -1,5 +1,6 @@
import { TripDetails } from '@opt/components/trips';
-export default function Trip({ params }: { params: { id: string } }) {
- return
;
+export default async function Trip({ params }: { params: any }) {
+ const { id } = await params;
+ return
;
}
diff --git a/apps/opt/components/UI/StepperFlow.tsx b/apps/opt/components/UI/StepperFlow.tsx
index acc6134..648d4ad 100644
--- a/apps/opt/components/UI/StepperFlow.tsx
+++ b/apps/opt/components/UI/StepperFlow.tsx
@@ -3,8 +3,8 @@ import { signOut, useSession } from 'next-auth/react';
import { toast } from 'react-hot-toast';
import { Trip } from '@opt/core/interfaces';
+import { useRouter } from '@opt/i18n/routing';
import { TripActions } from '@opt/integration/actions/';
-import { useRouter } from '@opt/navigations';
import { useTripStore } from '@opt/store';
import { ActionButton } from '@repo/ui/';
diff --git a/apps/opt/components/trips/CustomMapControl.tsx b/apps/opt/components/trips/CustomMapControl.tsx
index 606b579..6e57ebd 100644
--- a/apps/opt/components/trips/CustomMapControl.tsx
+++ b/apps/opt/components/trips/CustomMapControl.tsx
@@ -15,11 +15,11 @@ import { toast } from 'react-hot-toast';
import { Destiny } from '@opt/core/interfaces';
import { debounce } from '@opt/helpers';
+import { useRouter } from '@opt/i18n/routing';
import { updateTrip } from '@opt/integration/actions/TripActions';
import { createGlobalHooks } from '@opt/integration/hooks';
import { useMapControls } from '@opt/integration/hooks/TripHooks';
import { destinyMapper } from '@opt/mappings';
-import { useRouter } from '@opt/navigations';
import { useDestinyStore, useTripStore } from '@opt/store';
import { fetchPlaceDetails, fetchPlacePredictions } from '@opt/utils';
import { ActionButton, Card, InputField } from '@repo/ui';
@@ -86,6 +86,7 @@ export function CustomMapControl() {
trip.id,
{ ...trip, destinies: [...trip.destinies!, newDestiny] },
]);
+ toast.dismiss();
if (isError) {
toast.error(isError);
return;
diff --git a/apps/opt/components/trips/TripCard.tsx b/apps/opt/components/trips/TripCard.tsx
index feabfcd..c17dba0 100644
--- a/apps/opt/components/trips/TripCard.tsx
+++ b/apps/opt/components/trips/TripCard.tsx
@@ -1,5 +1,5 @@
import { Trip } from '@opt/core/interfaces';
-import { Link } from '@opt/navigations';
+import { Link } from '@opt/i18n/routing';
import { ActionButton, Card } from '@repo/ui';
export const TripCard = ({
diff --git a/apps/suite/app/[locale]/dashboard/page.tsx b/apps/suite/app/[locale]/dashboard/page.tsx
index 37bbace..a222cf0 100644
--- a/apps/suite/app/[locale]/dashboard/page.tsx
+++ b/apps/suite/app/[locale]/dashboard/page.tsx
@@ -1,12 +1,12 @@
import { Card } from '@repo/ui';
import { OPT_URI } from '@repo/ui/constants';
import { auth } from '@sss/auth';
-import { Link, redirect } from '@sss/navigations';
+import { Link, redirect } from '@sss/i18n/routing';
export default async function DashboardPage() {
const session = await auth();
if (!session) {
- redirect('/login');
+ redirect({ href: '/login', locale: 'en' });
}
return (
diff --git a/apps/suite/app/[locale]/layout.tsx b/apps/suite/app/[locale]/layout.tsx
index f9ce9e4..fb46563 100644
--- a/apps/suite/app/[locale]/layout.tsx
+++ b/apps/suite/app/[locale]/layout.tsx
@@ -1,6 +1,6 @@
import '@sss/styles/main.scss';
-import { getMessages, unstable_setRequestLocale } from 'next-intl/server';
+import { getMessages, setRequestLocale } from 'next-intl/server';
import ss_logo from '@repo/ui/assets/logo-17suit@4x.png';
import { PageProps } from '@repo/ui/types';
@@ -23,9 +23,13 @@ export async function generateStaticParams() {
}
export default async function RootLayout({
children,
- params: { locale },
-}: PageProps) {
- unstable_setRequestLocale(locale);
+ params,
+}: {
+ children: React.ReactNode;
+ params: { locale: 'es' | 'en' };
+}) {
+ const { locale } = await params;
+ setRequestLocale(locale);
const session = await auth();
const messages = await getMessages();
diff --git a/apps/suite/app/[locale]/not-found.tsx b/apps/suite/app/[locale]/not-found.tsx
index cecdcb3..37f3f13 100644
--- a/apps/suite/app/[locale]/not-found.tsx
+++ b/apps/suite/app/[locale]/not-found.tsx
@@ -1,7 +1,7 @@
'use client';
import { NotFoundImage } from '@repo/ui';
-import { Link } from '@sss/navigations';
+import { Link } from '@sss/i18n/routing';
export default function NotFound() {
return (
diff --git a/apps/suite/app/[locale]/page.tsx b/apps/suite/app/[locale]/page.tsx
index b1a2c35..94143a7 100644
--- a/apps/suite/app/[locale]/page.tsx
+++ b/apps/suite/app/[locale]/page.tsx
@@ -1,18 +1,16 @@
-import { getTranslations, unstable_setRequestLocale } from 'next-intl/server';
+import { getTranslations } from 'next-intl/server';
import Image from 'next/image';
import lading_img from '@repo/ui/assets/animated/traveler-a.svg';
-import { PageParams } from '@repo/ui/types';
import { auth } from '@sss/auth';
-import { Link, redirect } from '@sss/navigations';
+import { Link, redirect } from '@sss/i18n/routing';
-export default async function Home({ params: { locale } }: PageParams) {
+export default async function Home() {
const session = await auth();
if (session) {
- redirect('/dashboard');
+ redirect({ href: '/dashboard', locale: 'en' });
}
- unstable_setRequestLocale(locale);
const t = await getTranslations('home');
return (
diff --git a/apps/suite/components/Footer.tsx b/apps/suite/components/Footer.tsx
index 6dd5bdd..49671ad 100644
--- a/apps/suite/components/Footer.tsx
+++ b/apps/suite/components/Footer.tsx
@@ -3,7 +3,7 @@
import { useTranslations } from 'next-intl';
import { ThemeSwitcher } from '@repo/ui';
-import { Link, usePathname } from '@sss/navigations';
+import { Link, usePathname } from '@sss/i18n/routing';
export const Footer = ({ locale }: { locale: string }) => {
const pathname = usePathname();
diff --git a/apps/suite/components/auth/LoginForm.tsx b/apps/suite/components/auth/LoginForm.tsx
index d30647d..e5ccdc0 100644
--- a/apps/suite/components/auth/LoginForm.tsx
+++ b/apps/suite/components/auth/LoginForm.tsx
@@ -8,7 +8,7 @@ import { useForm } from 'react-hook-form';
import { yupResolver } from '@hookform/resolvers/yup';
import { ActionButton, FormWrapper, Google, InputGroup } from '@repo/ui';
import { useLogin } from '@sss/core/auth/hooks';
-import { useRouter } from '@sss/navigations';
+import { useRouter } from '@sss/i18n/routing';
import { LoginInputs } from '../../core/auth/constants/inputs';
import { LoginSchema as schema } from '../../core/auth/constants/schemas';
diff --git a/apps/suite/components/auth/RegisterForm.tsx b/apps/suite/components/auth/RegisterForm.tsx
index 3427bd6..4f9ace4 100644
--- a/apps/suite/components/auth/RegisterForm.tsx
+++ b/apps/suite/components/auth/RegisterForm.tsx
@@ -11,7 +11,7 @@ import { RegisterInputs } from '@sss/core/auth/constants/inputs';
import { RegisterSchema as schema } from '@sss/core/auth/constants/schemas';
import { useRegister } from '@sss/core/auth/hooks/useRegister';
import { RegisterInput } from '@sss/core/auth/types/authTypes';
-import { useRouter } from '@sss/navigations';
+import { useRouter } from '@sss/i18n/routing';
export const RegisterForm = () => {
const router = useRouter();
diff --git a/apps/suite/components/auth/SignOutButton.tsx b/apps/suite/components/auth/SignOutButton.tsx
index 1075bf6..c443e75 100644
--- a/apps/suite/components/auth/SignOutButton.tsx
+++ b/apps/suite/components/auth/SignOutButton.tsx
@@ -9,7 +9,8 @@ export function SignOutButton() {