Compare commits

...

41 Commits

Author SHA1 Message Date
Renovate Bot
6dd213709e Update dependency autoprefixer to v10.4.21 2025-03-09 16:44:26 +00:00
9d90f4b073 Merge pull request 'Update dependency @playwright/test to v1.51.0' () from renovate/playwright-test-1.x-lockfile into main
Reviewed-on: 
2025-03-09 00:24:50 +00:00
Renovate Bot
7eb5ff8392 Update dependency @playwright/test to v1.51.0 2025-03-08 03:04:29 +00:00
Renovate Bot
73b42d4850 Update pnpm to v9.15.7 2025-03-07 03:06:20 +00:00
Renovate Bot
aae8e2191d Update dependency node to v23.9.0 2025-03-06 03:10:40 +00:00
Renovate Bot
54b7e118f8 Update dependency next to v15.2.1 2025-03-05 03:08:39 +00:00
Renovate Bot
17e1869c9f Update dependency @types/node to v22.13.9 2025-03-04 03:07:14 +00:00
Renovate Bot
31f480c74e Update pnpm to v9.15.6 2025-03-03 03:08:58 +00:00
Renovate Bot
4c03b428b4 Update dependency postcss to v8.5.3 2025-03-02 03:08:04 +00:00
Renovate Bot
cda483d6f7 Update dependency typescript to v5.8.2 2025-03-01 03:08:48 +00:00
Renovate Bot
cffb4e1c4a Update dependency uuid to v11.1.0 2025-02-20 03:12:42 +00:00
Renovate Bot
fa904b5de2 Update dependency node to v23.8.0 2025-02-19 03:11:38 +00:00
Renovate Bot
cff2c5ddc2 Update pnpm to v9.15.5 2025-02-18 03:11:39 +00:00
Renovate Bot
6ed957c4e5 Update dependency zod to v3.24.2 2025-02-17 03:12:57 +00:00
Renovate Bot
38d75ce80d Update dependency @types/node to v22.13.4 2025-02-16 03:13:18 +00:00
Renovate Bot
61077bb11e Update dependency next to v15.1.7 2025-02-12 03:08:42 +00:00
Renovate Bot
95e4949e1d Update dependency postcss to v8.5.2 2025-02-11 03:05:44 +00:00
Renovate Bot
c77a1cfbba Update dependency @types/node to v22.13.1 2025-02-04 03:06:50 +00:00
Renovate Bot
dc499893b3 Update dependency @types/node to v22.13.0 2025-02-02 03:08:54 +00:00
Renovate Bot
c835744663 Update dependency @playwright/test to v1.50.1 2025-02-01 03:06:39 +00:00
Renovate Bot
3892e5c885 Update dependency node to v23.7.0 2025-01-31 03:03:44 +00:00
Renovate Bot
d8bc79e755 Update dependency @types/node to v22.12.0 2025-01-28 03:07:42 +00:00
Renovate Bot
4b219e922d Update dependency primereact to v10.9.2 2025-01-27 03:05:52 +00:00
9a2ce5b654 Merge pull request 'Simulations life cycle improvements' () from mark-expired-simulations into main
Reviewed-on: 
2025-01-26 13:07:58 +00:00
0d1c46a349 Fix redundant class definitions 2025-01-26 13:47:17 +01:00
157401bae5 Display a toast message after successfully creating a simulation 2025-01-26 13:33:35 +01:00
bf7e871a1b Display a button to create new simulations 2025-01-26 13:21:23 +01:00
e597b4fc00 Mark expired rows with red background 2025-01-26 13:09:31 +01:00
53a2752964 Remove references to unsupported dark theme 2025-01-26 13:06:29 +01:00
1184a529cf Display an icon indicating whether a simulation is still valid 2025-01-26 13:05:32 +01:00
Renovate Bot
58962e2f48 Update dependency next to v15.1.6 2025-01-25 03:10:32 +00:00
Renovate Bot
b8f878a77a Update dependency @playwright/test to v1.50.0 2025-01-24 03:58:22 +00:00
Renovate Bot
2c28b80e23 Update dependency @types/node to v22.10.10 2025-01-24 03:07:25 +00:00
Renovate Bot
2b550aa60c Update dependency node to v23.6.1 2025-01-22 03:04:42 +00:00
Renovate Bot
c691359356 Update dependency postcss to v8.5.1 2025-01-16 04:07:16 +00:00
Renovate Bot
4e5202bdba Update dependency @types/node to v22.10.7 2025-01-16 03:07:47 +00:00
Renovate Bot
cdf688e8af Update pnpm to v9.15.4 2025-01-14 03:21:43 +00:00
Renovate Bot
46a686f578 Update dependency @types/node to v22.10.6 2025-01-14 03:05:07 +00:00
5c2249621d Merge pull request 'Update copyright assignment to cover 2025 and include all contributors' () from copyright-2025 into main
Reviewed-on: 
2025-01-13 20:43:00 +00:00
501bb3a81a Update copyright assignment to cover 2025 and include all contributors 2025-01-13 21:36:52 +01:00
69f6fcbebe Merge pull request 'Define a button to reset the affinities of all groups' () from reset-all-affinities into main
Reviewed-on: 
2025-01-13 20:31:56 +00:00
50 changed files with 281 additions and 238 deletions

@ -16,7 +16,7 @@ jobs:
ref: ${{ github.head_ref }}
- uses: VinnyBabuManjaly/copyright-action@v1.0.0
with:
CopyrightString: '/* Copyright (C) 2024 Manuel Bustillo*/\n\n'
CopyrightString: '/* Copyright (C) 2024-2025 LibreWeddingPlanner contributors*/\n\n'
FileType: '.tsx, .jsx, .ts'
Path: 'app/, config/, db/'
IgnorePath: 'testfolder1/a/, testfolder3'

2
.nvmrc

@ -1 +1 @@
23.6.0
23.9.0

@ -1,4 +1,4 @@
/* Copyright (C) 2024 Manuel Bustillo*/
/* Copyright (C) 2024-2025 LibreWeddingPlanner contributors*/
'use client'

@ -1,4 +1,4 @@
/* Copyright (C) 2024 Manuel Bustillo*/
/* Copyright (C) 2024-2025 LibreWeddingPlanner contributors*/
'use client';

@ -1,4 +1,4 @@
/* Copyright (C) 2024 Manuel Bustillo*/
/* Copyright (C) 2024-2025 LibreWeddingPlanner contributors*/
import SideNav from '@/app/ui/dashboard/sidenav';

@ -1,4 +1,4 @@
/* Copyright (C) 2024 Manuel Bustillo*/
/* Copyright (C) 2024-2025 LibreWeddingPlanner contributors*/
'use client'

@ -1,16 +1,42 @@
/* Copyright (C) 2024 Manuel Bustillo*/
/* Copyright (C) 2024-2025 LibreWeddingPlanner contributors*/
'use client';
import { AbstractApi } from '@/app/api/abstract-api';
import { TableSimulation, TableSimulationSerializer } from '@/app/lib/tableSimulation';
import Arrangement from '@/app/ui/arrangements/arrangement';
import React, { useState } from 'react';
import ArrangementsTable from '@/app/ui/arrangements/arrangements-table';
import { classNames } from '@/app/ui/components/button';
import { Toast } from 'primereact/toast';
import React, { useRef, useState } from 'react';
export default function Page() {
const toast = useRef<Toast>(null);
const show = () => {
toast.current?.show({
severity: 'success',
summary: 'Simulation created',
detail: 'Table distributions will be calculated shortly, please come back in some minutes'
});
};
const [currentArrangement, setCurrentArrangement] = useState<string | null>(null);
function createSimulation() {
const api = new AbstractApi<TableSimulation>();
const serializer = new TableSimulationSerializer();
api.create(serializer, new TableSimulation(), show);
}
return (
<>
<div className="flex flex-col w-full items-center justify-between">
<Toast ref={toast} />
<button onClick={createSimulation} className={classNames('primary')}>Add new</button>
</div>
<ArrangementsTable onArrangementSelected={setCurrentArrangement} />
{currentArrangement && <Arrangement key={currentArrangement} id={currentArrangement} />}
</>

@ -1,4 +1,4 @@
/* Copyright (C) 2024 Manuel Bustillo*/
/* Copyright (C) 2024-2025 LibreWeddingPlanner contributors*/
'use client';

@ -1,4 +1,4 @@
/* Copyright (C) 2024 Manuel Bustillo*/
/* Copyright (C) 2024-2025 LibreWeddingPlanner contributors*/
import { Entity } from '@/app/lib/definitions';
import { getCsrfToken, getSlug } from '@/app/lib/utils';

@ -1,4 +1,4 @@
/* Copyright (C) 2024 Manuel Bustillo*/
/* Copyright (C) 2024-2025 LibreWeddingPlanner contributors*/
import { asArray, getCsrfToken, getSlug } from '@/app/lib/utils';
import { Captcha, StructuredErrors, User } from '@/app/lib/definitions';

@ -1,4 +1,4 @@
/* Copyright (C) 2024 Manuel Bustillo*/
/* Copyright (C) 2024-2025 LibreWeddingPlanner contributors*/
import { data } from "autoprefixer";
import { getCsrfToken } from "../lib/utils";

@ -1,4 +1,4 @@
/* Copyright (C) 2024 Manuel Bustillo*/
/* Copyright (C) 2024-2025 LibreWeddingPlanner contributors*/
import { NextResponse } from "next/server";

@ -1,4 +1,4 @@
/* Copyright (C) 2024 Manuel Bustillo*/
/* Copyright (C) 2024-2025 LibreWeddingPlanner contributors*/
import { TableArrangement } from '@/app/lib/definitions';
import { getSlug } from '../lib/utils';
@ -12,6 +12,7 @@ export function loadTableSimulations(onLoad?: (tableSimulations: TableArrangemen
id: record.id,
name: record.name,
discomfort: record.discomfort,
valid: record.valid,
});
}));
}, (error) => {

@ -1,4 +1,4 @@
/* Copyright (C) 2024 Manuel Bustillo*/
/* Copyright (C) 2024-2025 LibreWeddingPlanner contributors*/
import '@/app/ui/global.css'

@ -1,4 +1,4 @@
/* Copyright (C) 2024 Manuel Bustillo*/
/* Copyright (C) 2024-2025 LibreWeddingPlanner contributors*/
export class Affinities {
[key:string]: number;

@ -1,4 +1,4 @@
/* Copyright (C) 2024 Manuel Bustillo*/
/* Copyright (C) 2024-2025 LibreWeddingPlanner contributors*/
import { AttendanceSummary } from "./group";
import { Guest } from "./guest";
@ -12,7 +12,8 @@ export type TableArrangement = {
number: number;
name: string;
guests?: Guest[];
discomfort?: number
discomfort?: number;
valid?: boolean;
}
export type User = {

@ -1,4 +1,4 @@
/* Copyright (C) 2024 Manuel Bustillo*/
/* Copyright (C) 2024-2025 LibreWeddingPlanner contributors*/
import { Serializable } from "../api/abstract-api";
import { Entity } from "./definitions";

@ -1,4 +1,4 @@
/* Copyright (C) 2024 Manuel Bustillo*/
/* Copyright (C) 2024-2025 LibreWeddingPlanner contributors*/
import { Entity } from "./definitions";

@ -1,4 +1,4 @@
/* Copyright (C) 2024 Manuel Bustillo*/
/* Copyright (C) 2024-2025 LibreWeddingPlanner contributors*/
import { Serializable } from "../api/abstract-api";
import { Entity } from "./definitions";

@ -1,4 +1,4 @@
/* Copyright (C) 2024 Manuel Bustillo*/
/* Copyright (C) 2024-2025 LibreWeddingPlanner contributors*/
import { Serializable } from "../api/abstract-api";
import { Entity } from "./definitions";
@ -19,12 +19,12 @@ export type Table = {
}
export class TableSimulation implements Entity {
id: string;
id?: string;
tables: Table[];
constructor(id: string, tables: Table[]) {
constructor(id?: string, tables?: Table[]) {
this.id = id;
this.tables = tables;
this.tables = tables || [];
}
}

@ -1,4 +1,4 @@
/* Copyright (C) 2024 Manuel Bustillo*/
/* Copyright (C) 2024-2025 LibreWeddingPlanner contributors*/
export const getCsrfToken = () => {
return document.cookie

@ -1,4 +1,4 @@
/* Copyright (C) 2024 Manuel Bustillo*/
/* Copyright (C) 2024-2025 LibreWeddingPlanner contributors*/
import * as HeroIcon from '@heroicons/react/24/outline'
import { ComponentProps } from 'react'

@ -1,4 +1,4 @@
/* Copyright (C) 2024 Manuel Bustillo*/
/* Copyright (C) 2024-2025 LibreWeddingPlanner contributors*/
'use client';

@ -1,4 +1,4 @@
/* Copyright (C) 2024 Manuel Bustillo*/
/* Copyright (C) 2024-2025 LibreWeddingPlanner contributors*/
'use client'
@ -7,42 +7,57 @@ import { TableArrangement } from '@/app/lib/definitions';
import { classNames } from "../components/button";
import TableOfContents from "../components/table-of-contents";
import { loadTableSimulations } from "@/app/api/tableSimulations";
import { ArchiveBoxXMarkIcon, CheckBadgeIcon } from "@heroicons/react/24/outline";
import { Tooltip } from "primereact/tooltip";
import clsx from "clsx";
export default function ArrangementsTable ({onArrangementSelected}: {onArrangementSelected: (arrangementId: string) => void}) {
const [arrangements, setArrangements] = useState<Array<TableArrangement>>([]);
const [arrangementsLoaded, setArrangementsLoaded] = useState(false);
export default function ArrangementsTable({ onArrangementSelected }: { onArrangementSelected: (arrangementId: string) => void }) {
const [arrangements, setArrangements] = useState<Array<TableArrangement>>([]);
const [arrangementsLoaded, setArrangementsLoaded] = useState(false);
function refreshSimulations() {
loadTableSimulations((arrangements) => {
setArrangements(arrangements);
setArrangementsLoaded(true);
});
}
function refreshSimulations() {
loadTableSimulations((arrangements) => {
setArrangements(arrangements);
setArrangementsLoaded(true);
});
}
function arrangementClicked(e: React.MouseEvent<HTMLElement>) {
onArrangementSelected(e.currentTarget.getAttribute('data-arrangement-id') || '');
}
!arrangementsLoaded && refreshSimulations();
function arrangementClicked(e: React.MouseEvent<HTMLElement>) {
onArrangementSelected(e.currentTarget.getAttribute('data-arrangement-id') || '');
}
return(
<TableOfContents
headers={['Name', 'Discomfort', 'Actions']}
caption='Simulations'
elements={arrangements}
rowRender={(arrangement) => (
<tr key={arrangement.id} className="bg-white border-b odd:bg-white odd:dark:bg-gray-900 even:bg-gray-50 even:dark:bg-gray-800">
<th scope="row" className="px-6 py-4 font-medium text-gray-900 whitespace-nowrap dark:text-white">
{arrangement.name}
</th>
<td className="px-6 py-4">
{arrangement.discomfort}
</td>
<td>
<button data-arrangement-id={arrangement.id} onClick={arrangementClicked} className={classNames('primary')}>Load</button>
</td>
</tr>
)}
/>
);
!arrangementsLoaded && refreshSimulations();
return (
<TableOfContents
headers={['Name', 'Discomfort', 'Actions', 'Status']}
caption='Simulations'
elements={arrangements}
rowRender={(arrangement) => (
<tr key={arrangement.id} className={clsx("border-b", {
"bg-white odd:bg-white even:bg-gray-50": arrangement.valid,
"bg-red-50 odd:bg-red-50 even:bg-red-100": !arrangement.valid
})}>
<th scope="row" className="px-6 py-4 font-medium text-gray-900 whitespace-nowrap">
{arrangement.name}
</th>
<td className="px-6 py-4">
{arrangement.discomfort}
</td>
<td>
<button data-arrangement-id={arrangement.id} onClick={arrangementClicked} className={classNames('primary')}>Load</button>
</td>
<td>
<Tooltip target=".tooltip-status" />
{
arrangement.valid ?
<CheckBadgeIcon className='size-6 tooltip-status' data-pr-position="right" data-pr-tooltip="Simulation is valid" /> :
<ArchiveBoxXMarkIcon className='size-6 tooltip-status' data-pr-position="right" data-pr-tooltip="Simulation is expired due to attendance or affinity changes" />
}
</td>
</tr>
)}
/>
);
}

@ -1,4 +1,4 @@
/* Copyright (C) 2024 Manuel Bustillo*/
/* Copyright (C) 2024-2025 LibreWeddingPlanner contributors*/
import clsx from 'clsx';

@ -1,4 +1,4 @@
/* Copyright (C) 2024 Manuel Bustillo*/
/* Copyright (C) 2024-2025 LibreWeddingPlanner contributors*/
'use client';

@ -1,4 +1,4 @@
/* Copyright (C) 2024 Manuel Bustillo*/
/* Copyright (C) 2024-2025 LibreWeddingPlanner contributors*/
import clsx from "clsx";

@ -1,4 +1,4 @@
/* Copyright (C) 2024 Manuel Bustillo*/
/* Copyright (C) 2024-2025 LibreWeddingPlanner contributors*/
import clsx from "clsx"
import { Icon } from "../../types";

@ -1,4 +1,4 @@
/* Copyright (C) 2024 Manuel Bustillo*/
/* Copyright (C) 2024-2025 LibreWeddingPlanner contributors*/
'use client';

@ -1,4 +1,4 @@
/* Copyright (C) 2024 Manuel Bustillo*/
/* Copyright (C) 2024-2025 LibreWeddingPlanner contributors*/
import { Slider } from 'primereact/slider';

@ -1,4 +1,4 @@
/* Copyright (C) 2024 Manuel Bustillo*/
/* Copyright (C) 2024-2025 LibreWeddingPlanner contributors*/
import React, { useState } from 'react';

@ -1,4 +1,4 @@
/* Copyright (C) 2024 Manuel Bustillo*/
/* Copyright (C) 2024-2025 LibreWeddingPlanner contributors*/
'use client';

@ -1,4 +1,4 @@
/* Copyright (C) 2024 Manuel Bustillo*/
/* Copyright (C) 2024-2025 LibreWeddingPlanner contributors*/
'use client';

@ -1,4 +1,4 @@
/* Copyright (C) 2024 Manuel Bustillo*/
/* Copyright (C) 2024-2025 LibreWeddingPlanner contributors*/
'use client';

@ -1,4 +1,4 @@
/* Copyright (C) 2024 Manuel Bustillo*/
/* Copyright (C) 2024-2025 LibreWeddingPlanner contributors*/
'use client';

@ -1,4 +1,4 @@
/* Copyright (C) 2024 Manuel Bustillo*/
/* Copyright (C) 2024-2025 LibreWeddingPlanner contributors*/
export default function TableOfContents<Type>({ headers, caption, elements, rowRender }: { headers: string[], caption: string, elements: Type[], rowRender: (element: Type) => JSX.Element }) {
return (

@ -1,4 +1,4 @@
/* Copyright (C) 2024 Manuel Bustillo*/
/* Copyright (C) 2024-2025 LibreWeddingPlanner contributors*/
import { Guest } from "@/app/lib/guest";
import { Table as TableType } from "@/app/lib/tableSimulation";

@ -1,4 +1,4 @@
/* Copyright (C) 2024 Manuel Bustillo*/
/* Copyright (C) 2024-2025 LibreWeddingPlanner contributors*/
import { GlobalSummary as Summary} from '@/app/lib/definitions';
import { MainCard, SecondaryCard } from '../components/dashboard-cards';

@ -1,4 +1,4 @@
/* Copyright (C) 2024 Manuel Bustillo*/
/* Copyright (C) 2024-2025 LibreWeddingPlanner contributors*/
export default function Loading() {
return <div>Loading...</div>;

@ -1,4 +1,4 @@
/* Copyright (C) 2024 Manuel Bustillo*/
/* Copyright (C) 2024-2025 LibreWeddingPlanner contributors*/
'use client'

@ -1,4 +1,4 @@
/* Copyright (C) 2024 Manuel Bustillo*/
/* Copyright (C) 2024-2025 LibreWeddingPlanner contributors*/
'use client';

@ -1,4 +1,4 @@
/* Copyright (C) 2024 Manuel Bustillo*/
/* Copyright (C) 2024-2025 LibreWeddingPlanner contributors*/
'use client'

@ -1,4 +1,4 @@
/* Copyright (C) 2024 Manuel Bustillo*/
/* Copyright (C) 2024-2025 LibreWeddingPlanner contributors*/
import { Inter, Lusitana, Gloria_Hallelujah} from 'next/font/google';

@ -1,4 +1,4 @@
/* Copyright (C) 2024 Manuel Bustillo*/
/* Copyright (C) 2024-2025 LibreWeddingPlanner contributors*/
'use client';

@ -1,4 +1,4 @@
/* Copyright (C) 2024 Manuel Bustillo*/
/* Copyright (C) 2024-2025 LibreWeddingPlanner contributors*/
import Skeleton from '@/app/ui/skeleton';

@ -1,4 +1,4 @@
/* Copyright (C) 2024 Manuel Bustillo*/
/* Copyright (C) 2024-2025 LibreWeddingPlanner contributors*/
'use client';

@ -1,4 +1,4 @@
/* Copyright (C) 2024 Manuel Bustillo*/
/* Copyright (C) 2024-2025 LibreWeddingPlanner contributors*/
'use client';

@ -1,4 +1,4 @@
/* Copyright (C) 2024 Manuel Bustillo*/
/* Copyright (C) 2024-2025 LibreWeddingPlanner contributors*/
export default function Skeleton({ className }: { className: string }) {
return <div className={`bg-slate-200 motion-safe:animate-pulse rounded ${className}`} />;

@ -8,31 +8,31 @@
"dependencies": {
"@heroicons/react": "^2.1.4",
"@tailwindcss/forms": "^0.5.7",
"autoprefixer": "10.4.20",
"autoprefixer": "10.4.21",
"bcrypt": "^5.1.1",
"clsx": "^2.1.1",
"next": "15.1.4",
"next": "15.2.1",
"next-auth": "5.0.0-beta.25",
"postcss": "8.4.49",
"postcss": "8.5.3",
"primeicons": "^7.0.0",
"primereact": "^10.8.2",
"react": "19.0.0-rc-f38c22b244-20240704",
"react-dom": "19.0.0-rc-f38c22b244-20240704",
"tailwindcss": "3.4.17",
"typescript": "5.7.3",
"typescript": "5.8.2",
"use-debounce": "^10.0.1",
"uuid": "11.0.5",
"uuid": "11.1.0",
"zod": "^3.23.8"
},
"devDependencies": {
"@playwright/test": "^1.46.0",
"@types/bcrypt": "^5.0.2",
"@types/node": "22.10.5",
"@types/node": "22.13.9",
"@types/react": "18.3.18",
"@types/react-dom": "18.3.5"
},
"engines": {
"node": ">=23.0.0"
},
"packageManager": "pnpm@9.15.3+sha512.1f79bc245a66eb0b07c5d4d83131240774642caaa86ef7d0434ab47c0d16f66b04e21e0c086eb61e62c77efc4d7f7ec071afad3796af64892fae66509173893a"
"packageManager": "pnpm@9.15.7+sha512.ed98f9c748442673c46964b70345bd2282c9b305e8eae539b34ab31d6ef24ef8dd59d8b55f27466f705500b009d9c113471cf87e544f3d5036b297330c26e996"
}

288
pnpm-lock.yaml generated

@ -15,8 +15,8 @@ importers:
specifier: ^0.5.7
version: 0.5.10(tailwindcss@3.4.17)
autoprefixer:
specifier: 10.4.20
version: 10.4.20(postcss@8.4.49)
specifier: 10.4.21
version: 10.4.21(postcss@8.5.3)
bcrypt:
specifier: ^5.1.1
version: 5.1.1
@ -24,20 +24,20 @@ importers:
specifier: ^2.1.1
version: 2.1.1
next:
specifier: 15.1.4
version: 15.1.4(@playwright/test@1.49.1)(react-dom@19.0.0-rc-f38c22b244-20240704(react@19.0.0-rc-f38c22b244-20240704))(react@19.0.0-rc-f38c22b244-20240704)
specifier: 15.2.1
version: 15.2.1(@playwright/test@1.51.0)(react-dom@19.0.0-rc-f38c22b244-20240704(react@19.0.0-rc-f38c22b244-20240704))(react@19.0.0-rc-f38c22b244-20240704)
next-auth:
specifier: 5.0.0-beta.25
version: 5.0.0-beta.25(next@15.1.4(@playwright/test@1.49.1)(react-dom@19.0.0-rc-f38c22b244-20240704(react@19.0.0-rc-f38c22b244-20240704))(react@19.0.0-rc-f38c22b244-20240704))(react@19.0.0-rc-f38c22b244-20240704)
version: 5.0.0-beta.25(next@15.2.1(@playwright/test@1.51.0)(react-dom@19.0.0-rc-f38c22b244-20240704(react@19.0.0-rc-f38c22b244-20240704))(react@19.0.0-rc-f38c22b244-20240704))(react@19.0.0-rc-f38c22b244-20240704)
postcss:
specifier: 8.4.49
version: 8.4.49
specifier: 8.5.3
version: 8.5.3
primeicons:
specifier: ^7.0.0
version: 7.0.0
primereact:
specifier: ^10.8.2
version: 10.9.1(@types/react@18.3.18)(react-dom@19.0.0-rc-f38c22b244-20240704(react@19.0.0-rc-f38c22b244-20240704))(react@19.0.0-rc-f38c22b244-20240704)
version: 10.9.2(@types/react@18.3.18)(react-dom@19.0.0-rc-f38c22b244-20240704(react@19.0.0-rc-f38c22b244-20240704))(react@19.0.0-rc-f38c22b244-20240704)
react:
specifier: 19.0.0-rc-f38c22b244-20240704
version: 19.0.0-rc-f38c22b244-20240704
@ -48,27 +48,27 @@ importers:
specifier: 3.4.17
version: 3.4.17
typescript:
specifier: 5.7.3
version: 5.7.3
specifier: 5.8.2
version: 5.8.2
use-debounce:
specifier: ^10.0.1
version: 10.0.4(react@19.0.0-rc-f38c22b244-20240704)
uuid:
specifier: 11.0.5
version: 11.0.5
specifier: 11.1.0
version: 11.1.0
zod:
specifier: ^3.23.8
version: 3.24.1
version: 3.24.2
devDependencies:
'@playwright/test':
specifier: ^1.46.0
version: 1.49.1
version: 1.51.0
'@types/bcrypt':
specifier: ^5.0.2
version: 5.0.2
'@types/node':
specifier: 22.10.5
version: 22.10.5
specifier: 22.13.9
version: 22.13.9
'@types/react':
specifier: 18.3.18
version: 18.3.18
@ -96,8 +96,8 @@ packages:
nodemailer:
optional: true
'@babel/runtime@7.26.0':
resolution: {integrity: sha512-FDSOghenHTiToteC/QRlv2q3DhPZ/oOXTBoirfWNx1Cx3TMVcGWQtMMmQcSvb/JjpNeGzx8Pq/b4fKEJuWm1sw==}
'@babel/runtime@7.26.7':
resolution: {integrity: sha512-AOPI3D+a8dXnja+iwsUqGRjr1BbZIe771sXdapOtYI531gSqpi92vXivKcq2asu/DFpdl1ceFAKZyRzK2PCVcQ==}
engines: {node: '>=6.9.0'}
'@emnapi/runtime@1.2.0':
@ -239,53 +239,53 @@ packages:
resolution: {integrity: sha512-Yhlar6v9WQgUp/He7BdgzOz8lqMQ8sU+jkCq7Wx8Myc5YFJLbEe7lgui/V7G1qB1DJykHSGwreceSaD60Y0PUQ==}
hasBin: true
'@next/env@15.1.4':
resolution: {integrity: sha512-2fZ5YZjedi5AGaeoaC0B20zGntEHRhi2SdWcu61i48BllODcAmmtj8n7YarSPt4DaTsJaBFdxQAVEVzgmx2Zpw==}
'@next/env@15.2.1':
resolution: {integrity: sha512-JmY0qvnPuS2NCWOz2bbby3Pe0VzdAQ7XpEB6uLIHmtXNfAsAO0KLQLkuAoc42Bxbo3/jMC3dcn9cdf+piCcG2Q==}
'@next/swc-darwin-arm64@15.1.4':
resolution: {integrity: sha512-wBEMBs+np+R5ozN1F8Y8d/Dycns2COhRnkxRc+rvnbXke5uZBHkUGFgWxfTXn5rx7OLijuUhyfB+gC/ap58dDw==}
'@next/swc-darwin-arm64@15.2.1':
resolution: {integrity: sha512-aWXT+5KEREoy3K5AKtiKwioeblmOvFFjd+F3dVleLvvLiQ/mD//jOOuUcx5hzcO9ISSw4lrqtUPntTpK32uXXQ==}
engines: {node: '>= 10'}
cpu: [arm64]
os: [darwin]
'@next/swc-darwin-x64@15.1.4':
resolution: {integrity: sha512-7sgf5rM7Z81V9w48F02Zz6DgEJulavC0jadab4ZsJ+K2sxMNK0/BtF8J8J3CxnsJN3DGcIdC260wEKssKTukUw==}
'@next/swc-darwin-x64@15.2.1':
resolution: {integrity: sha512-E/w8ervu4fcG5SkLhvn1NE/2POuDCDEy5gFbfhmnYXkyONZR68qbUlJlZwuN82o7BrBVAw+tkR8nTIjGiMW1jQ==}
engines: {node: '>= 10'}
cpu: [x64]
os: [darwin]
'@next/swc-linux-arm64-gnu@15.1.4':
resolution: {integrity: sha512-JaZlIMNaJenfd55kjaLWMfok+vWBlcRxqnRoZrhFQrhM1uAehP3R0+Aoe+bZOogqlZvAz53nY/k3ZyuKDtT2zQ==}
'@next/swc-linux-arm64-gnu@15.2.1':
resolution: {integrity: sha512-gXDX5lIboebbjhiMT6kFgu4svQyjoSed6dHyjx5uZsjlvTwOAnZpn13w9XDaIMFFHw7K8CpBK7HfDKw0VZvUXQ==}
engines: {node: '>= 10'}
cpu: [arm64]
os: [linux]
'@next/swc-linux-arm64-musl@15.1.4':
resolution: {integrity: sha512-7EBBjNoyTO2ipMDgCiORpwwOf5tIueFntKjcN3NK+GAQD7OzFJe84p7a2eQUeWdpzZvhVXuAtIen8QcH71ZCOQ==}
'@next/swc-linux-arm64-musl@15.2.1':
resolution: {integrity: sha512-3v0pF/adKZkBWfUffmB/ROa+QcNTrnmYG4/SS+r52HPwAK479XcWoES2I+7F7lcbqc7mTeVXrIvb4h6rR/iDKg==}
engines: {node: '>= 10'}
cpu: [arm64]
os: [linux]
'@next/swc-linux-x64-gnu@15.1.4':
resolution: {integrity: sha512-9TGEgOycqZFuADyFqwmK/9g6S0FYZ3tphR4ebcmCwhL8Y12FW8pIBKJvSwV+UBjMkokstGNH+9F8F031JZKpHw==}
'@next/swc-linux-x64-gnu@15.2.1':
resolution: {integrity: sha512-RbsVq2iB6KFJRZ2cHrU67jLVLKeuOIhnQB05ygu5fCNgg8oTewxweJE8XlLV+Ii6Y6u4EHwETdUiRNXIAfpBww==}
engines: {node: '>= 10'}
cpu: [x64]
os: [linux]
'@next/swc-linux-x64-musl@15.1.4':
resolution: {integrity: sha512-0578bLRVDJOh+LdIoKvgNDz77+Bd85c5JrFgnlbI1SM3WmEQvsjxTA8ATu9Z9FCiIS/AliVAW2DV/BDwpXbtiQ==}
'@next/swc-linux-x64-musl@15.2.1':
resolution: {integrity: sha512-QHsMLAyAIu6/fWjHmkN/F78EFPKmhQlyX5C8pRIS2RwVA7z+t9cTb0IaYWC3EHLOTjsU7MNQW+n2xGXr11QPpg==}
engines: {node: '>= 10'}
cpu: [x64]
os: [linux]
'@next/swc-win32-arm64-msvc@15.1.4':
resolution: {integrity: sha512-JgFCiV4libQavwII+kncMCl30st0JVxpPOtzWcAI2jtum4HjYaclobKhj+JsRu5tFqMtA5CJIa0MvYyuu9xjjQ==}
'@next/swc-win32-arm64-msvc@15.2.1':
resolution: {integrity: sha512-Gk42XZXo1cE89i3hPLa/9KZ8OuupTjkDmhLaMKFohjf9brOeZVEa3BQy1J9s9TWUqPhgAEbwv6B2+ciGfe54Vw==}
engines: {node: '>= 10'}
cpu: [arm64]
os: [win32]
'@next/swc-win32-x64-msvc@15.1.4':
resolution: {integrity: sha512-xxsJy9wzq7FR5SqPCUqdgSXiNXrMuidgckBa8nH9HtjjxsilgcN6VgXF6tZ3uEWuVEadotQJI8/9EQ6guTC4Yw==}
'@next/swc-win32-x64-msvc@15.2.1':
resolution: {integrity: sha512-YjqXCl8QGhVlMR8uBftWk0iTmvtntr41PhG1kvzGp0sUP/5ehTM+cwx25hKE54J0CRnHYjSGjSH3gkHEaHIN9g==}
engines: {node: '>= 10'}
cpu: [x64]
os: [win32]
@ -309,8 +309,8 @@ packages:
resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==}
engines: {node: '>=14'}
'@playwright/test@1.49.1':
resolution: {integrity: sha512-Ky+BVzPz8pL6PQxHqNRW1k3mIyv933LML7HktS8uik0bUXNCdPhoS/kLihiO1tMf/egaJb4IutXd7UywvXEW+g==}
'@playwright/test@1.51.0':
resolution: {integrity: sha512-dJ0dMbZeHhI+wb77+ljx/FeC8VBP6j/rj9OAojO08JI80wTZy6vRk9KvHKiDCUh4iMpEiseMgqRBIeW+eKX6RA==}
engines: {node: '>=18'}
hasBin: true
@ -331,8 +331,8 @@ packages:
'@types/cookie@0.6.0':
resolution: {integrity: sha512-4Kh9a6B2bQciAhf7FSuMRRkUWecJgJu9nPnx3yzpsfXX/c50REIqpHY4C82bXP90qrLtXtkDxTZosYO3UpOwlA==}
'@types/node@22.10.5':
resolution: {integrity: sha512-F8Q+SeGimwOo86fiovQh8qiXfFEh2/ocYv7tU5pJ3EXMSSxk1Joj5wefpFK2fHTf/N6HKGSxIDBT9f3gCxXPkQ==}
'@types/node@22.13.9':
resolution: {integrity: sha512-acBjXdRJ3A6Pb3tqnw9HZmyR3Fiol3aGxRCK1x3d+6CDAMjl7I649wpSd+yNURCjbOUGu9tqtLKnTGxmK6CyGw==}
'@types/prop-types@15.7.12':
resolution: {integrity: sha512-5zvhXYtRNRluoE/jAp4GVsSduVUzNWKkOZrCDBWYtE7biZywwdC2AcEzg+cSMLFRfVgeAFqpfNabiPjxFddV1Q==}
@ -391,8 +391,8 @@ packages:
arg@5.0.2:
resolution: {integrity: sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==}
autoprefixer@10.4.20:
resolution: {integrity: sha512-XY25y5xSv/wEoqzDyXXME4AFfkZI0P23z6Fs3YgymDnKJkCGOnkL0iTxCa85UTqaSgfcqyf3UA6+c7wUvx/16g==}
autoprefixer@10.4.21:
resolution: {integrity: sha512-O+A6LWV5LDHSJD3LjHYoNi4VLsj/Whi7k6zG12xTYaU4cQ8oxQGckXNX8cRHK5yOZ/ppVHe0ZBXGzSV9jXdVbQ==}
engines: {node: ^10 || ^12 || >=14}
hasBin: true
peerDependencies:
@ -419,8 +419,8 @@ packages:
resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==}
engines: {node: '>=8'}
browserslist@4.23.3:
resolution: {integrity: sha512-btwCFJVjI4YWDNfau8RhZ+B1Q/VLoUITrm3RlP6y1tYGWIOa+InuYiRGXUBXo8nA1qKmHMyLB/iVQg5TT4eFoA==}
browserslist@4.24.4:
resolution: {integrity: sha512-KDi1Ny1gSePi1vm0q4oxSF8b4DR44GF4BbmS2YdhPLOEqd8pDviZOGH/GsmRwoWJ2+5Lr085X7naowMwKHDG1A==}
engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
hasBin: true
@ -435,6 +435,9 @@ packages:
caniuse-lite@1.0.30001651:
resolution: {integrity: sha512-9Cf+Xv1jJNe1xPZLGuUXLNkE1BoDkqRqYyFJ9TDYSqhduqA4hu4oR9HluGoWYQC/aj8WHjsGVV+bwkh0+tegRg==}
caniuse-lite@1.0.30001702:
resolution: {integrity: sha512-LoPe/D7zioC0REI5W73PeR1e1MLCipRGq/VkovJnd6Df+QVqT+vT33OXCp8QUd7kA7RZrHWxb1B36OQKI/0gOA==}
chokidar@3.6.0:
resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==}
engines: {node: '>= 8.10.0'}
@ -522,8 +525,8 @@ packages:
eastasianwidth@0.2.0:
resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==}
electron-to-chromium@1.5.6:
resolution: {integrity: sha512-jwXWsM5RPf6j9dPYzaorcBSUg6AiqocPEyMpkchkvntaH9HGfOOMZwxMJjDY/XEs3T5dM7uyH1VhRMkqUU9qVw==}
electron-to-chromium@1.5.113:
resolution: {integrity: sha512-wjT2O4hX+wdWPJ76gWSkMhcHAV2PTMX+QetUCPYEdCIe+cxmgzzSSiGRCKW8nuh4mwKZlpv0xvoW7OF2X+wmHg==}
emoji-regex@8.0.0:
resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==}
@ -531,8 +534,8 @@ packages:
emoji-regex@9.2.2:
resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==}
escalade@3.1.2:
resolution: {integrity: sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==}
escalade@3.2.0:
resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==}
engines: {node: '>=6'}
fast-glob@3.3.2:
@ -721,8 +724,8 @@ packages:
mz@2.7.0:
resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==}
nanoid@3.3.7:
resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==}
nanoid@3.3.8:
resolution: {integrity: sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w==}
engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
hasBin: true
@ -742,8 +745,8 @@ packages:
nodemailer:
optional: true
next@15.1.4:
resolution: {integrity: sha512-mTaq9dwaSuwwOrcu3ebjDYObekkxRnXpuVL21zotM8qE2W0HBOdVIdg2Li9QjMEZrj73LN96LcWcz62V19FjAg==}
next@15.2.1:
resolution: {integrity: sha512-zxbsdQv3OqWXybK5tMkPCBKyhIz63RstJ+NvlfkaLMc/m5MwXgz2e92k+hSKcyBpyADhMk2C31RIiaDjUZae7g==}
engines: {node: ^18.18.0 || ^19.8.0 || >= 20.0.0}
hasBin: true
peerDependencies:
@ -775,8 +778,8 @@ packages:
encoding:
optional: true
node-releases@2.0.18:
resolution: {integrity: sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==}
node-releases@2.0.19:
resolution: {integrity: sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==}
nopt@5.0.0:
resolution: {integrity: sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==}
@ -824,9 +827,6 @@ packages:
resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==}
engines: {node: '>=16 || 14 >=14.18'}
picocolors@1.0.1:
resolution: {integrity: sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==}
picocolors@1.1.1:
resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==}
@ -842,13 +842,13 @@ packages:
resolution: {integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==}
engines: {node: '>= 6'}
playwright-core@1.49.1:
resolution: {integrity: sha512-BzmpVcs4kE2CH15rWfzpjzVGhWERJfmnXmniSyKeRZUs9Ws65m+RGIi7mjJK/euCegfn3i7jvqWeWyHe9y3Vgg==}
playwright-core@1.51.0:
resolution: {integrity: sha512-x47yPE3Zwhlil7wlNU/iktF7t2r/URR3VLbH6EknJd/04Qc/PSJ0EY3CMXipmglLG+zyRxW6HNo2EGbKLHPWMg==}
engines: {node: '>=18'}
hasBin: true
playwright@1.49.1:
resolution: {integrity: sha512-VYL8zLoNTBxVOrJBbDuRgDWa3i+mfQgDTrL8Ah9QXZ7ax4Dsj0MSq5bYgytRnDVVe+njoKnfsYkH3HzqVj5UZA==}
playwright@1.51.0:
resolution: {integrity: sha512-442pTfGM0xxfCYxuBa/Pu6B2OqxqqaYq39JS8QDMGThUvIOCd6s0ANDog3uwA0cHavVlnTQzGCN7Id2YekDSXA==}
engines: {node: '>=18'}
hasBin: true
@ -893,8 +893,8 @@ packages:
resolution: {integrity: sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==}
engines: {node: ^10 || ^12 || >=14}
postcss@8.4.49:
resolution: {integrity: sha512-OCVPnIObs4N29kxTjzLfUryOkvZEq+pf8jTF0lg8E7uETuWHA+v7j3c/xJmiqpX450191LlmZfUKkXxkTry7nA==}
postcss@8.5.3:
resolution: {integrity: sha512-dle9A3yYxlBSrt8Fu+IpjGT8SY8hN0mlaA6GY8t0P5PjIOZemULz/E2Bnm/2dcUOena75OTNkHI76uZBNUUq3A==}
engines: {node: ^10 || ^12 || >=14}
preact-render-to-string@5.2.3:
@ -911,8 +911,8 @@ packages:
primeicons@7.0.0:
resolution: {integrity: sha512-jK3Et9UzwzTsd6tzl2RmwrVY/b8raJ3QZLzoDACj+oTJ0oX7L9Hy+XnVwgo4QVKlKpnP/Ur13SXV/pVh4LzaDw==}
primereact@10.9.1:
resolution: {integrity: sha512-mq5Pr6/zySO913RlL5oUWD+n1ygTjJjhhxBoRWhLNKx7Na8pHpswh/QCesShFXlfYyCjDOVXFVT6J2sSDceF1g==}
primereact@10.9.2:
resolution: {integrity: sha512-uJTghCPlnPWJc0mvkqYJDj6bl4udROPGrMEfV4CPh7UurMS+E8b+82ABZ+OPWibQOWxnEQl5NXcfG4F/7YRXwA==}
engines: {node: '>=14.0.0'}
peerDependencies:
'@types/react': ^17.0.0 || ^18.0.0 || ^19.0.0
@ -1099,16 +1099,16 @@ packages:
tslib@2.8.1:
resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==}
typescript@5.7.3:
resolution: {integrity: sha512-84MVSjMEHP+FQRPy3pX9sTVV/INIex71s9TL2Gm5FG/WG1SqXeKyZ0k7/blY/4FdOzI12CBy1vGc4og/eus0fw==}
typescript@5.8.2:
resolution: {integrity: sha512-aJn6wq13/afZp/jT9QZmwEjDqqvSGp1VT5GVg+f/t6/oVyrgXM6BY1h9BRh/O5p3PlUPAe+WuiEZOmb/49RqoQ==}
engines: {node: '>=14.17'}
hasBin: true
undici-types@6.20.0:
resolution: {integrity: sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg==}
update-browserslist-db@1.1.0:
resolution: {integrity: sha512-EdRAaAyk2cUE1wOf2DkEhzxqOQvFOoRJFNS6NeyJ01Gp2beMRpBAINjM2iDXE3KCuKhwnvHIQCJm6ThL2Z+HzQ==}
update-browserslist-db@1.1.3:
resolution: {integrity: sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==}
hasBin: true
peerDependencies:
browserslist: '>= 4.21.0'
@ -1122,8 +1122,8 @@ packages:
util-deprecate@1.0.2:
resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==}
uuid@11.0.5:
resolution: {integrity: sha512-508e6IcKLrhxKdBbcA2b4KQZlLVp2+J5UwQ6F7Drckkc5N9ZJwFa4TgWtsww9UG8fGHbm6gbV19TdM5pQ4GaIA==}
uuid@11.1.0:
resolution: {integrity: sha512-0/A9rDy9P7cJ+8w1c9WD9V//9Wj15Ce2MPz8Ri6032usz+NfePxx5AcN3bN+r6ZL6jEo066/yNYB3tn4pQEx+A==}
hasBin: true
webidl-conversions@3.0.1:
@ -1159,8 +1159,8 @@ packages:
engines: {node: '>= 14'}
hasBin: true
zod@3.24.1:
resolution: {integrity: sha512-muH7gBL9sI1nciMZV67X5fTKKBLtwpZ5VBp1vsOQzj1MhrBZ4wlVCm3gedKZWLp0Oyel8sIGfeiz54Su+OVT+A==}
zod@3.24.2:
resolution: {integrity: sha512-lY7CDW43ECgW9u1TcT3IoXHflywfVqDYze4waEz812jR/bZ8FHDsl7pFQoSZTz5N+2NqRXs8GBwnAwo3ZNxqhQ==}
snapshots:
@ -1176,7 +1176,7 @@ snapshots:
preact: 10.11.3
preact-render-to-string: 5.2.3(preact@10.11.3)
'@babel/runtime@7.26.0':
'@babel/runtime@7.26.7':
dependencies:
regenerator-runtime: 0.14.1
@ -1305,30 +1305,30 @@ snapshots:
- encoding
- supports-color
'@next/env@15.1.4': {}
'@next/env@15.2.1': {}
'@next/swc-darwin-arm64@15.1.4':
'@next/swc-darwin-arm64@15.2.1':
optional: true
'@next/swc-darwin-x64@15.1.4':
'@next/swc-darwin-x64@15.2.1':
optional: true
'@next/swc-linux-arm64-gnu@15.1.4':
'@next/swc-linux-arm64-gnu@15.2.1':
optional: true
'@next/swc-linux-arm64-musl@15.1.4':
'@next/swc-linux-arm64-musl@15.2.1':
optional: true
'@next/swc-linux-x64-gnu@15.1.4':
'@next/swc-linux-x64-gnu@15.2.1':
optional: true
'@next/swc-linux-x64-musl@15.1.4':
'@next/swc-linux-x64-musl@15.2.1':
optional: true
'@next/swc-win32-arm64-msvc@15.1.4':
'@next/swc-win32-arm64-msvc@15.2.1':
optional: true
'@next/swc-win32-x64-msvc@15.1.4':
'@next/swc-win32-x64-msvc@15.2.1':
optional: true
'@nodelib/fs.scandir@2.1.5':
@ -1348,9 +1348,9 @@ snapshots:
'@pkgjs/parseargs@0.11.0':
optional: true
'@playwright/test@1.49.1':
'@playwright/test@1.51.0':
dependencies:
playwright: 1.49.1
playwright: 1.51.0
'@swc/counter@0.1.3': {}
@ -1365,11 +1365,11 @@ snapshots:
'@types/bcrypt@5.0.2':
dependencies:
'@types/node': 22.10.5
'@types/node': 22.13.9
'@types/cookie@0.6.0': {}
'@types/node@22.10.5':
'@types/node@22.13.9':
dependencies:
undici-types: 6.20.0
@ -1422,14 +1422,14 @@ snapshots:
arg@5.0.2: {}
autoprefixer@10.4.20(postcss@8.4.49):
autoprefixer@10.4.21(postcss@8.5.3):
dependencies:
browserslist: 4.23.3
caniuse-lite: 1.0.30001651
browserslist: 4.24.4
caniuse-lite: 1.0.30001702
fraction.js: 4.3.7
normalize-range: 0.1.2
picocolors: 1.0.1
postcss: 8.4.49
picocolors: 1.1.1
postcss: 8.5.3
postcss-value-parser: 4.2.0
balanced-match@1.0.2: {}
@ -1457,12 +1457,12 @@ snapshots:
dependencies:
fill-range: 7.1.1
browserslist@4.23.3:
browserslist@4.24.4:
dependencies:
caniuse-lite: 1.0.30001651
electron-to-chromium: 1.5.6
node-releases: 2.0.18
update-browserslist-db: 1.1.0(browserslist@4.23.3)
caniuse-lite: 1.0.30001702
electron-to-chromium: 1.5.113
node-releases: 2.0.19
update-browserslist-db: 1.1.3(browserslist@4.24.4)
busboy@1.6.0:
dependencies:
@ -1472,6 +1472,8 @@ snapshots:
caniuse-lite@1.0.30001651: {}
caniuse-lite@1.0.30001702: {}
chokidar@3.6.0:
dependencies:
anymatch: 3.1.3
@ -1542,18 +1544,18 @@ snapshots:
dom-helpers@5.2.1:
dependencies:
'@babel/runtime': 7.26.0
'@babel/runtime': 7.26.7
csstype: 3.1.3
eastasianwidth@0.2.0: {}
electron-to-chromium@1.5.6: {}
electron-to-chromium@1.5.113: {}
emoji-regex@8.0.0: {}
emoji-regex@9.2.2: {}
escalade@3.1.2: {}
escalade@3.2.0: {}
fast-glob@3.3.2:
dependencies:
@ -1738,17 +1740,17 @@ snapshots:
object-assign: 4.1.1
thenify-all: 1.6.0
nanoid@3.3.7: {}
nanoid@3.3.8: {}
next-auth@5.0.0-beta.25(next@15.1.4(@playwright/test@1.49.1)(react-dom@19.0.0-rc-f38c22b244-20240704(react@19.0.0-rc-f38c22b244-20240704))(react@19.0.0-rc-f38c22b244-20240704))(react@19.0.0-rc-f38c22b244-20240704):
next-auth@5.0.0-beta.25(next@15.2.1(@playwright/test@1.51.0)(react-dom@19.0.0-rc-f38c22b244-20240704(react@19.0.0-rc-f38c22b244-20240704))(react@19.0.0-rc-f38c22b244-20240704))(react@19.0.0-rc-f38c22b244-20240704):
dependencies:
'@auth/core': 0.37.2
next: 15.1.4(@playwright/test@1.49.1)(react-dom@19.0.0-rc-f38c22b244-20240704(react@19.0.0-rc-f38c22b244-20240704))(react@19.0.0-rc-f38c22b244-20240704)
next: 15.2.1(@playwright/test@1.51.0)(react-dom@19.0.0-rc-f38c22b244-20240704(react@19.0.0-rc-f38c22b244-20240704))(react@19.0.0-rc-f38c22b244-20240704)
react: 19.0.0-rc-f38c22b244-20240704
next@15.1.4(@playwright/test@1.49.1)(react-dom@19.0.0-rc-f38c22b244-20240704(react@19.0.0-rc-f38c22b244-20240704))(react@19.0.0-rc-f38c22b244-20240704):
next@15.2.1(@playwright/test@1.51.0)(react-dom@19.0.0-rc-f38c22b244-20240704(react@19.0.0-rc-f38c22b244-20240704))(react@19.0.0-rc-f38c22b244-20240704):
dependencies:
'@next/env': 15.1.4
'@next/env': 15.2.1
'@swc/counter': 0.1.3
'@swc/helpers': 0.5.15
busboy: 1.6.0
@ -1758,15 +1760,15 @@ snapshots:
react-dom: 19.0.0-rc-f38c22b244-20240704(react@19.0.0-rc-f38c22b244-20240704)
styled-jsx: 5.1.6(react@19.0.0-rc-f38c22b244-20240704)
optionalDependencies:
'@next/swc-darwin-arm64': 15.1.4
'@next/swc-darwin-x64': 15.1.4
'@next/swc-linux-arm64-gnu': 15.1.4
'@next/swc-linux-arm64-musl': 15.1.4
'@next/swc-linux-x64-gnu': 15.1.4
'@next/swc-linux-x64-musl': 15.1.4
'@next/swc-win32-arm64-msvc': 15.1.4
'@next/swc-win32-x64-msvc': 15.1.4
'@playwright/test': 1.49.1
'@next/swc-darwin-arm64': 15.2.1
'@next/swc-darwin-x64': 15.2.1
'@next/swc-linux-arm64-gnu': 15.2.1
'@next/swc-linux-arm64-musl': 15.2.1
'@next/swc-linux-x64-gnu': 15.2.1
'@next/swc-linux-x64-musl': 15.2.1
'@next/swc-win32-arm64-msvc': 15.2.1
'@next/swc-win32-x64-msvc': 15.2.1
'@playwright/test': 1.51.0
sharp: 0.33.5
transitivePeerDependencies:
- '@babel/core'
@ -1778,7 +1780,7 @@ snapshots:
dependencies:
whatwg-url: 5.0.0
node-releases@2.0.18: {}
node-releases@2.0.19: {}
nopt@5.0.0:
dependencies:
@ -1816,8 +1818,6 @@ snapshots:
lru-cache: 10.2.2
minipass: 7.1.2
picocolors@1.0.1: {}
picocolors@1.1.1: {}
picomatch@2.3.1: {}
@ -1826,36 +1826,36 @@ snapshots:
pirates@4.0.6: {}
playwright-core@1.49.1: {}
playwright-core@1.51.0: {}
playwright@1.49.1:
playwright@1.51.0:
dependencies:
playwright-core: 1.49.1
playwright-core: 1.51.0
optionalDependencies:
fsevents: 2.3.2
postcss-import@15.1.0(postcss@8.4.49):
postcss-import@15.1.0(postcss@8.5.3):
dependencies:
postcss: 8.4.49
postcss: 8.5.3
postcss-value-parser: 4.2.0
read-cache: 1.0.0
resolve: 1.22.8
postcss-js@4.0.1(postcss@8.4.49):
postcss-js@4.0.1(postcss@8.5.3):
dependencies:
camelcase-css: 2.0.1
postcss: 8.4.49
postcss: 8.5.3
postcss-load-config@4.0.2(postcss@8.4.49):
postcss-load-config@4.0.2(postcss@8.5.3):
dependencies:
lilconfig: 3.1.3
yaml: 2.4.3
optionalDependencies:
postcss: 8.4.49
postcss: 8.5.3
postcss-nested@6.2.0(postcss@8.4.49):
postcss-nested@6.2.0(postcss@8.5.3):
dependencies:
postcss: 8.4.49
postcss: 8.5.3
postcss-selector-parser: 6.1.2
postcss-selector-parser@6.1.2:
@ -1867,13 +1867,13 @@ snapshots:
postcss@8.4.31:
dependencies:
nanoid: 3.3.7
nanoid: 3.3.8
picocolors: 1.1.1
source-map-js: 1.2.1
postcss@8.4.49:
postcss@8.5.3:
dependencies:
nanoid: 3.3.7
nanoid: 3.3.8
picocolors: 1.1.1
source-map-js: 1.2.1
@ -1888,7 +1888,7 @@ snapshots:
primeicons@7.0.0: {}
primereact@10.9.1(@types/react@18.3.18)(react-dom@19.0.0-rc-f38c22b244-20240704(react@19.0.0-rc-f38c22b244-20240704))(react@19.0.0-rc-f38c22b244-20240704):
primereact@10.9.2(@types/react@18.3.18)(react-dom@19.0.0-rc-f38c22b244-20240704(react@19.0.0-rc-f38c22b244-20240704))(react@19.0.0-rc-f38c22b244-20240704):
dependencies:
'@types/react-transition-group': 4.4.12(@types/react@18.3.18)
react: 19.0.0-rc-f38c22b244-20240704
@ -1914,7 +1914,7 @@ snapshots:
react-transition-group@4.4.5(react-dom@19.0.0-rc-f38c22b244-20240704(react@19.0.0-rc-f38c22b244-20240704))(react@19.0.0-rc-f38c22b244-20240704):
dependencies:
'@babel/runtime': 7.26.0
'@babel/runtime': 7.26.7
dom-helpers: 5.2.1
loose-envify: 1.4.0
prop-types: 15.8.1
@ -2071,11 +2071,11 @@ snapshots:
normalize-path: 3.0.0
object-hash: 3.0.0
picocolors: 1.1.1
postcss: 8.4.49
postcss-import: 15.1.0(postcss@8.4.49)
postcss-js: 4.0.1(postcss@8.4.49)
postcss-load-config: 4.0.2(postcss@8.4.49)
postcss-nested: 6.2.0(postcss@8.4.49)
postcss: 8.5.3
postcss-import: 15.1.0(postcss@8.5.3)
postcss-js: 4.0.1(postcss@8.5.3)
postcss-load-config: 4.0.2(postcss@8.5.3)
postcss-nested: 6.2.0(postcss@8.5.3)
postcss-selector-parser: 6.1.2
resolve: 1.22.8
sucrase: 3.35.0
@ -2109,14 +2109,14 @@ snapshots:
tslib@2.8.1: {}
typescript@5.7.3: {}
typescript@5.8.2: {}
undici-types@6.20.0: {}
update-browserslist-db@1.1.0(browserslist@4.23.3):
update-browserslist-db@1.1.3(browserslist@4.24.4):
dependencies:
browserslist: 4.23.3
escalade: 3.1.2
browserslist: 4.24.4
escalade: 3.2.0
picocolors: 1.1.1
use-debounce@10.0.4(react@19.0.0-rc-f38c22b244-20240704):
@ -2125,7 +2125,7 @@ snapshots:
util-deprecate@1.0.2: {}
uuid@11.0.5: {}
uuid@11.1.0: {}
webidl-conversions@3.0.1: {}
@ -2160,4 +2160,4 @@ snapshots:
yaml@2.4.3: {}
zod@3.24.1: {}
zod@3.24.2: {}