diff --git a/app/(interview)/interview/[interviewId]/page.tsx b/app/(interview)/interview/[interviewId]/page.tsx
index 0afb58270..b3989e1a6 100644
--- a/app/(interview)/interview/[interviewId]/page.tsx
+++ b/app/(interview)/interview/[interviewId]/page.tsx
@@ -36,7 +36,7 @@ export default async function Page({
}
// If the interview is finished, redirect to the finish page
- if (interview?.finishTime) {
+ if (!session && interview?.finishTime) {
redirect('/interview/finished');
}
diff --git a/app/(interview)/interview/_components/SmallScreenOverlay.tsx b/app/(interview)/interview/_components/SmallScreenOverlay.tsx
index cebf9a53d..637fb26d9 100644
--- a/app/(interview)/interview/_components/SmallScreenOverlay.tsx
+++ b/app/(interview)/interview/_components/SmallScreenOverlay.tsx
@@ -2,14 +2,18 @@ import Image from 'next/image';
import { env } from 'node:process';
import Heading from '~/components/ui/typography/Heading';
import Paragraph from '~/components/ui/typography/Paragraph';
+import { getAppSetting } from '~/queries/appSettings';
-const SmallScreenOverlay = () => {
- if (env.NODE_ENV === 'development') {
+const SmallScreenOverlay = async () => {
+ const disableSmallScreenOverlay = await getAppSetting(
+ 'disableSmallScreenOverlay',
+ );
+ if (disableSmallScreenOverlay || env.NODE_ENV === 'development') {
return null;
}
return (
-
+
+
+
+
+ }
+ >
+
+ If this option is enabled, the warning about using Fresco on a small
+ screen will be disabled.
+
+
+ Important
+
+ Ensure that you test your interview thoroughly on a small screen
+ before disabling this warning. Fresco is designed to work best on
+ larger screens, and using it on a small screen may lead to a poor
+ user experience for participants.
+
+
+
{
+ const disableSmallScreenOverlay = await getAppSetting(
+ 'disableSmallScreenOverlay',
+ );
+
+ return (
+ {
+ 'use server';
+ await setAppSetting('disableSmallScreenOverlay', value);
+ return value;
+ }}
+ />
+ );
+};
+
+export default ToggleSmallScreenWarning;
diff --git a/package.json b/package.json
index f6768bc3d..6f596ad8a 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "fresco",
- "version": "2.1.7",
+ "version": "2.1.8",
"private": true,
"type": "module",
"packageManager": "pnpm@9.1.1+sha256.9551e803dcb7a1839fdf5416153a844060c7bce013218ce823410532504ac10b",
@@ -134,11 +134,11 @@
"eslint": "^8.57.1",
"eslint-config-next": "^15.3.3",
"eslint-config-prettier": "^10.1.5",
- "jest": "^30.0.0",
+ "jest": "^30.0.2",
"jsdom": "^26.1.0",
- "knip": "^5.61.1",
- "prettier": "^3.5.3",
- "prettier-plugin-tailwindcss": "^0.6.12",
+ "knip": "^5.61.2",
+ "prettier": "^3.6.0",
+ "prettier-plugin-tailwindcss": "^0.6.13",
"prisma": "^6.10.0",
"sass": "^1.89.2",
"tailwindcss": "4.1.10",
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index f9f678b30..ba9665f7c 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -340,20 +340,20 @@ importers:
specifier: ^10.1.5
version: 10.1.5(eslint@8.57.1)
jest:
- specifier: ^30.0.0
- version: 30.0.0(@types/node@22.13.9)(ts-node@10.9.2(@types/node@22.13.9)(typescript@5.8.3))
+ specifier: ^30.0.2
+ version: 30.0.2(@types/node@22.13.9)(ts-node@10.9.2(@types/node@22.13.9)(typescript@5.8.3))
jsdom:
specifier: ^26.1.0
version: 26.1.0
knip:
- specifier: ^5.61.1
- version: 5.61.1(@types/node@22.13.9)(typescript@5.8.3)
+ specifier: ^5.61.2
+ version: 5.61.2(@types/node@22.13.9)(typescript@5.8.3)
prettier:
- specifier: ^3.5.3
- version: 3.5.3
+ specifier: ^3.6.0
+ version: 3.6.0
prettier-plugin-tailwindcss:
- specifier: ^0.6.12
- version: 0.6.12(prettier@3.5.3)
+ specifier: ^0.6.13
+ version: 0.6.13(prettier@3.6.0)
prisma:
specifier: ^6.10.0
version: 6.10.0(typescript@5.8.3)
@@ -972,12 +972,12 @@ packages:
resolution: {integrity: sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==}
engines: {node: '>=8'}
- '@jest/console@30.0.0':
- resolution: {integrity: sha512-vfpJap6JZQ3I8sUN8dsFqNAKJYO4KIGxkcB+3Fw7Q/BJiWY5HwtMMiuT1oP0avsiDhjE/TCLaDgbGfHwDdBVeg==}
+ '@jest/console@30.0.2':
+ resolution: {integrity: sha512-krGElPU0FipAqpVZ/BRZOy0MZh/ARdJ0Nj+PiH1ykFY1+VpBlYNLjdjVA5CFKxnKR6PFqFutO4Z7cdK9BlGiDA==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- '@jest/core@30.0.0':
- resolution: {integrity: sha512-1zU39zFtWSl5ZuDK3Rd6P8S28MmS4F11x6Z4CURrgJ99iaAJg68hmdJ2SAHEEO6ociaNk43UhUYtHxWKEWoNYw==}
+ '@jest/core@30.0.2':
+ resolution: {integrity: sha512-mUMFdDtYWu7la63NxlyNIhgnzynszxunXWrtryR7bV24jV9hmi7XCZTzZHaLJjcBU66MeUAPZ81HjwASVpYhYQ==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
peerDependencies:
node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0
@@ -989,36 +989,52 @@ packages:
resolution: {integrity: sha512-xMbtoCeKJDto86GW6AiwVv7M4QAuI56R7dVBr1RNGYbOT44M2TIzOiske2RxopBqkumDY+A1H55pGvuribRY9A==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- '@jest/environment@30.0.0':
- resolution: {integrity: sha512-09sFbMMgS5JxYnvgmmtwIHhvoyzvR5fUPrVl8nOCrC5KdzmmErTcAxfWyAhJ2bv3rvHNQaKiS+COSG+O7oNbXw==}
+ '@jest/diff-sequences@30.0.1':
+ resolution: {integrity: sha512-n5H8QLDJ47QqbCNn5SuFjCRDrOLEZ0h8vAHCK5RL9Ls7Xa8AQLa/YxAc9UjFqoEDM48muwtBGjtMY5cr0PLDCw==}
+ engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+
+ '@jest/environment@30.0.2':
+ resolution: {integrity: sha512-hRLhZRJNxBiOhxIKSq2UkrlhMt3/zVFQOAi5lvS8T9I03+kxsbflwHJEF+eXEYXCrRGRhHwECT7CDk6DyngsRA==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
'@jest/expect-utils@30.0.0':
resolution: {integrity: sha512-UiWfsqNi/+d7xepfOv8KDcbbzcYtkWBe3a3kVDtg6M1kuN6CJ7b4HzIp5e1YHrSaQaVS8sdCoyCMCZClTLNKFQ==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- '@jest/expect@30.0.0':
- resolution: {integrity: sha512-XZ3j6syhMeKiBknmmc8V3mNIb44kxLTbOQtaXA4IFdHy+vEN0cnXRzbRjdGBtrp4k1PWyMWNU3Fjz3iejrhpQg==}
+ '@jest/expect-utils@30.0.2':
+ resolution: {integrity: sha512-FHF2YdtFBUQOo0/qdgt+6UdBFcNPF/TkVzcc+4vvf8uaBzUlONytGBeeudufIHHW1khRfM1sBbRT1VCK7n/0dQ==}
+ engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+
+ '@jest/expect@30.0.2':
+ resolution: {integrity: sha512-blWRFPjv2cVfh42nLG6L3xIEbw+bnuiZYZDl/BZlsNG/i3wKV6FpPZ2EPHguk7t5QpLaouIu+7JmYO4uBR6AOg==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- '@jest/fake-timers@30.0.0':
- resolution: {integrity: sha512-yzBmJcrMHAMcAEbV2w1kbxmx8WFpEz8Cth3wjLMSkq+LO8VeGKRhpr5+BUp7PPK+x4njq/b6mVnDR8e/tPL5ng==}
+ '@jest/fake-timers@30.0.2':
+ resolution: {integrity: sha512-jfx0Xg7l0gmphTY9UKm5RtH12BlLYj/2Plj6wXjVW5Era4FZKfXeIvwC67WX+4q8UCFxYS20IgnMcFBcEU0DtA==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
'@jest/get-type@30.0.0':
resolution: {integrity: sha512-VZWMjrBzqfDKngQ7sUctKeLxanAbsBFoZnPxNIG6CmxK7Gv6K44yqd0nzveNIBfuhGZMmk1n5PGbvdSTOu0yTg==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- '@jest/globals@30.0.0':
- resolution: {integrity: sha512-OEzYes5A1xwBJVMPqFRa8NCao8Vr42nsUZuf/SpaJWoLE+4kyl6nCQZ1zqfipmCrIXQVALC5qJwKy/7NQQLPhw==}
+ '@jest/get-type@30.0.1':
+ resolution: {integrity: sha512-AyYdemXCptSRFirI5EPazNxyPwAL0jXt3zceFjaj8NFiKP9pOi0bfXonf6qkf82z2t3QWPeLCWWw4stPBzctLw==}
+ engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+
+ '@jest/globals@30.0.2':
+ resolution: {integrity: sha512-DwTtus9jjbG7b6jUdkcVdptf0wtD1v153A+PVwWB/zFwXhqu6hhtSd+uq88jofMhmYPtkmPmVGUBRNCZEKXn+w==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
'@jest/pattern@30.0.0':
resolution: {integrity: sha512-k+TpEThzLVXMkbdxf8KHjZ83Wl+G54ytVJoDIGWwS96Ql4xyASRjc6SU1hs5jHVql+hpyK9G8N7WuFhLpGHRpQ==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- '@jest/reporters@30.0.0':
- resolution: {integrity: sha512-5WHNlLO0Ok+/o6ML5IzgVm1qyERtLHBNhwn67PAq92H4hZ+n5uW/BYj1VVwmTdxIcNrZLxdV9qtpdZkXf16HxA==}
+ '@jest/pattern@30.0.1':
+ resolution: {integrity: sha512-gWp7NfQW27LaBQz3TITS8L7ZCQ0TLvtmI//4OwlQRx4rnWxcPNIYjxZpDcN4+UlGxgm3jS5QPz8IPTCkb59wZA==}
+ engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+
+ '@jest/reporters@30.0.2':
+ resolution: {integrity: sha512-l4QzS/oKf57F8WtPZK+vvF4Io6ukplc6XgNFu4Hd/QxaLEO9f+8dSFzUua62Oe0HKlCUjKHpltKErAgDiMJKsA==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
peerDependencies:
node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0
@@ -1030,30 +1046,38 @@ packages:
resolution: {integrity: sha512-NID2VRyaEkevCRz6badhfqYwri/RvMbiHY81rk3AkK/LaiB0LSxi1RdVZ7MpZdTjNugtZeGfpL0mLs9Kp3MrQw==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- '@jest/snapshot-utils@30.0.0':
- resolution: {integrity: sha512-C/QSFUmvZEYptg2Vin84FggAphwHvj6la39vkw1CNOZQORWZ7O/H0BXmdeeeGnvlXDYY8TlFM5jgFnxLAxpFjA==}
+ '@jest/schemas@30.0.1':
+ resolution: {integrity: sha512-+g/1TKjFuGrf1Hh0QPCv0gISwBxJ+MQSNXmG9zjHy7BmFhtoJ9fdNhWJp3qUKRi93AOZHXtdxZgJ1vAtz6z65w==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- '@jest/source-map@30.0.0':
- resolution: {integrity: sha512-oYBJ4d/NF4ZY3/7iq1VaeoERHRvlwKtrGClgescaXMIa1mmb+vfJd0xMgbW9yrI80IUA7qGbxpBWxlITrHkWoA==}
+ '@jest/snapshot-utils@30.0.1':
+ resolution: {integrity: sha512-6Dpv7vdtoRiISEFwYF8/c7LIvqXD7xDXtLPNzC2xqAfBznKip0MQM+rkseKwUPUpv2PJ7KW/YsnwWXrIL2xF+A==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- '@jest/test-result@30.0.0':
- resolution: {integrity: sha512-685zco9HdgBaaWiB9T4xjLtBuN0Q795wgaQPpmuAeZPHwHZSoKFAUnozUtU+ongfi4l5VCz8AclOE5LAQdyjxQ==}
+ '@jest/source-map@30.0.1':
+ resolution: {integrity: sha512-MIRWMUUR3sdbP36oyNyhbThLHyJ2eEDClPCiHVbrYAe5g3CHRArIVpBw7cdSB5fr+ofSfIb2Tnsw8iEHL0PYQg==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- '@jest/test-sequencer@30.0.0':
- resolution: {integrity: sha512-Hmvv5Yg6UmghXIcVZIydkT0nAK7M/hlXx9WMHR5cLVwdmc14/qUQt3mC72T6GN0olPC6DhmKE6Cd/pHsgDbuqQ==}
+ '@jest/test-result@30.0.2':
+ resolution: {integrity: sha512-KKMuBKkkZYP/GfHMhI+cH2/P3+taMZS3qnqqiPC1UXZTJskkCS+YU/ILCtw5anw1+YsTulDHFpDo70mmCedW8w==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- '@jest/transform@30.0.0':
- resolution: {integrity: sha512-8xhpsCGYJsUjqpJOgLyMkeOSSlhqggFZEWAnZquBsvATtueoEs7CkMRxOUmJliF3E5x+mXmZ7gEEsHank029Og==}
+ '@jest/test-sequencer@30.0.2':
+ resolution: {integrity: sha512-fbyU5HPka0rkalZ3MXVvq0hwZY8dx3Y6SCqR64zRmh+xXlDeFl0IdL4l9e7vp4gxEXTYHbwLFA1D+WW5CucaSw==}
+ engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+
+ '@jest/transform@30.0.2':
+ resolution: {integrity: sha512-kJIuhLMTxRF7sc0gPzPtCDib/V9KwW3I2U25b+lYCYMVqHHSrcZopS8J8H+znx9yixuFv+Iozl8raLt/4MoxrA==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
'@jest/types@30.0.0':
resolution: {integrity: sha512-1Nox8mAL52PKPfEnUQWBvKU/bp8FTT6AiDu76bFDEJj/qsRFSAVSldfCH3XYMqialti2zHXKvD5gN0AaHc0yKA==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+ '@jest/types@30.0.1':
+ resolution: {integrity: sha512-HGwoYRVF0QSKJu1ZQX0o5ZrUrrhj0aOOFA8hXrumD7SIzjouevhawbTjmXdwOmURdGluU9DM/XvGm3NyFoiQjw==}
+ engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+
'@jridgewell/gen-mapping@0.3.8':
resolution: {integrity: sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==}
engines: {node: '>=6.0.0'}
@@ -1080,6 +1104,7 @@ packages:
'@lucia-auth/adapter-prisma@3.0.2':
resolution: {integrity: sha512-EyJWZene1/zasPwPctv8wwNErZt5mwwm5JATbhg+kXr3R8pbC7lJfVzDTAeeFClVH5k/FywRcsBl3JkPaNIcow==}
+ deprecated: This package has been deprecated. Please see https://lucia-auth.com/lucia-v3/migrate.
peerDependencies:
'@prisma/client': ^4.2.0 || ^5.0.0
lucia: ^2.0.0
@@ -1963,6 +1988,9 @@ packages:
'@sinclair/typebox@0.34.35':
resolution: {integrity: sha512-C6ypdODf2VZkgRT6sFM8E1F8vR+HcffniX0Kp8MsU8PIfrlXbNCBz0jzj17GjdmjTx1OtZzdH8+iALL21UjF5A==}
+ '@sinclair/typebox@0.34.36':
+ resolution: {integrity: sha512-JFHFhF6MqqRE49JDAGX/EPlHwxIukrKMhNwlMoB/wIJBkvu3+ciO335yDYPP3soI01FkhVXWnyNPKEl+EsC4Zw==}
+
'@sinonjs/commons@3.0.1':
resolution: {integrity: sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==}
@@ -2347,96 +2375,191 @@ packages:
cpu: [arm]
os: [android]
+ '@unrs/resolver-binding-android-arm-eabi@1.9.1':
+ resolution: {integrity: sha512-dd7yIp1hfJFX9ZlVLQRrh/Re9WMUHHmF9hrKD1yIvxcyNr2BhQ3xc1upAVhy8NijadnCswAxWQu8MkkSMC1qXQ==}
+ cpu: [arm]
+ os: [android]
+
'@unrs/resolver-binding-android-arm64@1.9.0':
resolution: {integrity: sha512-sG1NHtgXtX8owEkJ11yn34vt0Xqzi3k9TJ8zppDmyG8GZV4kVWw44FHwKwHeEFl07uKPeC4ZoyuQaGh5ruJYPA==}
cpu: [arm64]
os: [android]
+ '@unrs/resolver-binding-android-arm64@1.9.1':
+ resolution: {integrity: sha512-EzUPcMFtDVlo5yrbzMqUsGq3HnLXw+3ZOhSd7CUaDmbTtnrzM+RO2ntw2dm2wjbbc5djWj3yX0wzbbg8pLhx8g==}
+ cpu: [arm64]
+ os: [android]
+
'@unrs/resolver-binding-darwin-arm64@1.9.0':
resolution: {integrity: sha512-nJ9z47kfFnCxN1z/oYZS7HSNsFh43y2asePzTEZpEvK7kGyuShSl3RRXnm/1QaqFL+iP+BjMwuB+DYUymOkA5A==}
cpu: [arm64]
os: [darwin]
+ '@unrs/resolver-binding-darwin-arm64@1.9.1':
+ resolution: {integrity: sha512-nB+dna3q4kOleKFcSZJ/wDXIsAd1kpMO9XrVAt8tG3RDWJ6vi+Ic6bpz4cmg5tWNeCfHEY4KuqJCB+pKejPEmQ==}
+ cpu: [arm64]
+ os: [darwin]
+
'@unrs/resolver-binding-darwin-x64@1.9.0':
resolution: {integrity: sha512-TK+UA1TTa0qS53rjWn7cVlEKVGz2B6JYe0C++TdQjvWYIyx83ruwh0wd4LRxYBM5HeuAzXcylA9BH2trARXJTw==}
cpu: [x64]
os: [darwin]
+ '@unrs/resolver-binding-darwin-x64@1.9.1':
+ resolution: {integrity: sha512-aKWHCrOGaCGwZcekf3TnczQoBxk5w//W3RZ4EQyhux6rKDwBPgDU9Y2yGigCV1Z+8DWqZgVGQi+hdpnlSy3a1w==}
+ cpu: [x64]
+ os: [darwin]
+
'@unrs/resolver-binding-freebsd-x64@1.9.0':
resolution: {integrity: sha512-6uZwzMRFcD7CcCd0vz3Hp+9qIL2jseE/bx3ZjaLwn8t714nYGwiE84WpaMCYjU+IQET8Vu/+BNAGtYD7BG/0yA==}
cpu: [x64]
os: [freebsd]
+ '@unrs/resolver-binding-freebsd-x64@1.9.1':
+ resolution: {integrity: sha512-4dIEMXrXt0UqDVgrsUd1I+NoIzVQWXy/CNhgpfS75rOOMK/4Abn0Mx2M2gWH4Mk9+ds/ASAiCmqoUFynmMY5hA==}
+ cpu: [x64]
+ os: [freebsd]
+
'@unrs/resolver-binding-linux-arm-gnueabihf@1.9.0':
resolution: {integrity: sha512-bPUBksQfrgcfv2+mm+AZinaKq8LCFvt5PThYqRotqSuuZK1TVKkhbVMS/jvSRfYl7jr3AoZLYbDkItxgqMKRkg==}
cpu: [arm]
os: [linux]
+ '@unrs/resolver-binding-linux-arm-gnueabihf@1.9.1':
+ resolution: {integrity: sha512-vtvS13IXPs1eE8DuS/soiosqMBeyh50YLRZ+p7EaIKAPPeevRnA9G/wu/KbVt01ZD5qiGjxS+CGIdVC7I6gTOw==}
+ cpu: [arm]
+ os: [linux]
+
'@unrs/resolver-binding-linux-arm-musleabihf@1.9.0':
resolution: {integrity: sha512-uT6E7UBIrTdCsFQ+y0tQd3g5oudmrS/hds5pbU3h4s2t/1vsGWbbSKhBSCD9mcqaqkBwoqlECpUrRJCmldl8PA==}
cpu: [arm]
os: [linux]
+ '@unrs/resolver-binding-linux-arm-musleabihf@1.9.1':
+ resolution: {integrity: sha512-BfdnN6aZ7NcX8djW8SR6GOJc+K+sFhWRF4vJueVE0vbUu5N1bLnBpxJg1TGlhSyo+ImC4SR0jcNiKN0jdoxt+A==}
+ cpu: [arm]
+ os: [linux]
+
'@unrs/resolver-binding-linux-arm64-gnu@1.9.0':
resolution: {integrity: sha512-vdqBh911wc5awE2bX2zx3eflbyv8U9xbE/jVKAm425eRoOVv/VseGZsqi3A3SykckSpF4wSROkbQPvbQFn8EsA==}
cpu: [arm64]
os: [linux]
+ '@unrs/resolver-binding-linux-arm64-gnu@1.9.1':
+ resolution: {integrity: sha512-Jhge7lFtH0QqfRz2PyJjJXWENqywPteITd+nOS0L6AhbZli+UmEyGBd2Sstt1c+l9C+j/YvKTl9wJo9PPmsFNg==}
+ cpu: [arm64]
+ os: [linux]
+
'@unrs/resolver-binding-linux-arm64-musl@1.9.0':
resolution: {integrity: sha512-/8JFZ/SnuDr1lLEVsxsuVwrsGquTvT51RZGvyDB/dOK3oYK2UqeXzgeyq6Otp8FZXQcEYqJwxb9v+gtdXn03eQ==}
cpu: [arm64]
os: [linux]
+ '@unrs/resolver-binding-linux-arm64-musl@1.9.1':
+ resolution: {integrity: sha512-ofdK/ow+ZSbSU0pRoB7uBaiRHeaAOYQFU5Spp87LdcPL/P1RhbCTMSIYVb61XWzsVEmYKjHFtoIE0wxP6AFvrA==}
+ cpu: [arm64]
+ os: [linux]
+
'@unrs/resolver-binding-linux-ppc64-gnu@1.9.0':
resolution: {integrity: sha512-FkJjybtrl+rajTw4loI3L6YqSOpeZfDls4SstL/5lsP2bka9TiHUjgMBjygeZEis1oC8LfJTS8FSgpKPaQx2tQ==}
cpu: [ppc64]
os: [linux]
+ '@unrs/resolver-binding-linux-ppc64-gnu@1.9.1':
+ resolution: {integrity: sha512-eC8SXVn8de67HacqU7PoGdHA+9tGbqfEdD05AEFRAB81ejeQtNi5Fx7lPcxpLH79DW0BnMAHau3hi4RVkHfSCw==}
+ cpu: [ppc64]
+ os: [linux]
+
'@unrs/resolver-binding-linux-riscv64-gnu@1.9.0':
resolution: {integrity: sha512-w/NZfHNeDusbqSZ8r/hp8iL4S39h4+vQMc9/vvzuIKMWKppyUGKm3IST0Qv0aOZ1rzIbl9SrDeIqK86ZpUK37w==}
cpu: [riscv64]
os: [linux]
+ '@unrs/resolver-binding-linux-riscv64-gnu@1.9.1':
+ resolution: {integrity: sha512-fIkwvAAQ41kfoGWfzeJ33iLGShl0JEDZHrMnwTHMErUcPkaaZRJYjQjsFhMl315NEQ4mmTlC+2nfK/J2IszDOw==}
+ cpu: [riscv64]
+ os: [linux]
+
'@unrs/resolver-binding-linux-riscv64-musl@1.9.0':
resolution: {integrity: sha512-bEPBosut8/8KQbUixPry8zg/fOzVOWyvwzOfz0C0Rw6dp+wIBseyiHKjkcSyZKv/98edrbMknBaMNJfA/UEdqw==}
cpu: [riscv64]
os: [linux]
+ '@unrs/resolver-binding-linux-riscv64-musl@1.9.1':
+ resolution: {integrity: sha512-RAAszxImSOFLk44aLwnSqpcOdce8sBcxASledSzuFAd8Q5ZhhVck472SisspnzHdc7THCvGXiUeZ2hOC7NUoBQ==}
+ cpu: [riscv64]
+ os: [linux]
+
'@unrs/resolver-binding-linux-s390x-gnu@1.9.0':
resolution: {integrity: sha512-LDtMT7moE3gK753gG4pc31AAqGUC86j3AplaFusc717EUGF9ZFJ356sdQzzZzkBk1XzMdxFyZ4f/i35NKM/lFA==}
cpu: [s390x]
os: [linux]
+ '@unrs/resolver-binding-linux-s390x-gnu@1.9.1':
+ resolution: {integrity: sha512-QoP9vkY+THuQdZi05bA6s6XwFd6HIz3qlx82v9bTOgxeqin/3C12Ye7f7EOD00RQ36OtOPWnhEMMm84sv7d1XQ==}
+ cpu: [s390x]
+ os: [linux]
+
'@unrs/resolver-binding-linux-x64-gnu@1.9.0':
resolution: {integrity: sha512-WmFd5KINHIXj8o1mPaT8QRjA9HgSXhN1gl9Da4IZihARihEnOylu4co7i/yeaIpcfsI6sYs33cNZKyHYDh0lrA==}
cpu: [x64]
os: [linux]
+ '@unrs/resolver-binding-linux-x64-gnu@1.9.1':
+ resolution: {integrity: sha512-/p77cGN/h9zbsfCseAP5gY7tK+7+DdM8fkPfr9d1ye1fsF6bmtGbtZN6e/8j4jCZ9NEIBBkT0GhdgixSelTK9g==}
+ cpu: [x64]
+ os: [linux]
+
'@unrs/resolver-binding-linux-x64-musl@1.9.0':
resolution: {integrity: sha512-CYuXbANW+WgzVRIl8/QvZmDaZxrqvOldOwlbUjIM4pQ46FJ0W5cinJ/Ghwa/Ng1ZPMJMk1VFdsD/XwmCGIXBWg==}
cpu: [x64]
os: [linux]
+ '@unrs/resolver-binding-linux-x64-musl@1.9.1':
+ resolution: {integrity: sha512-wInTqT3Bu9u50mDStEig1v8uxEL2Ht+K8pir/YhyyrM5ordJtxoqzsL1vR/CQzOJuDunUTrDkMM0apjW/d7/PA==}
+ cpu: [x64]
+ os: [linux]
+
'@unrs/resolver-binding-wasm32-wasi@1.9.0':
resolution: {integrity: sha512-6Rp2WH0OoitMYR57Z6VE8Y6corX8C6QEMWLgOV6qXiJIeZ1F9WGXY/yQ8yDC4iTraotyLOeJ2Asea0urWj2fKQ==}
engines: {node: '>=14.0.0'}
cpu: [wasm32]
+ '@unrs/resolver-binding-wasm32-wasi@1.9.1':
+ resolution: {integrity: sha512-eNwqO5kUa+1k7yFIircwwiniKWA0UFHo2Cfm8LYgkh9km7uMad+0x7X7oXbQonJXlqfitBTSjhA0un+DsHIrhw==}
+ engines: {node: '>=14.0.0'}
+ cpu: [wasm32]
+
'@unrs/resolver-binding-win32-arm64-msvc@1.9.0':
resolution: {integrity: sha512-rknkrTRuvujprrbPmGeHi8wYWxmNVlBoNW8+4XF2hXUnASOjmuC9FNF1tGbDiRQWn264q9U/oGtixyO3BT8adQ==}
cpu: [arm64]
os: [win32]
+ '@unrs/resolver-binding-win32-arm64-msvc@1.9.1':
+ resolution: {integrity: sha512-Eaz1xMUnoa2mFqh20mPqSdbYl6crnk8HnIXDu6nsla9zpgZJZO8w3c1gvNN/4Eb0RXRq3K9OG6mu8vw14gIqiA==}
+ cpu: [arm64]
+ os: [win32]
+
'@unrs/resolver-binding-win32-ia32-msvc@1.9.0':
resolution: {integrity: sha512-Ceymm+iBl+bgAICtgiHyMLz6hjxmLJKqBim8tDzpX61wpZOx2bPK6Gjuor7I2RiUynVjvvkoRIkrPyMwzBzF3A==}
cpu: [ia32]
os: [win32]
+ '@unrs/resolver-binding-win32-ia32-msvc@1.9.1':
+ resolution: {integrity: sha512-H/+d+5BGlnEQif0gnwWmYbYv7HJj563PUKJfn8PlmzF8UmF+8KxdvXdwCsoOqh4HHnENnoLrav9NYBrv76x1wQ==}
+ cpu: [ia32]
+ os: [win32]
+
'@unrs/resolver-binding-win32-x64-msvc@1.9.0':
resolution: {integrity: sha512-k59o9ZyeyS0hAlcaKFezYSH2agQeRFEB7KoQLXl3Nb3rgkqT1NY9Vwy+SqODiLmYnEjxWJVRE/yq2jFVqdIxZw==}
cpu: [x64]
os: [win32]
+ '@unrs/resolver-binding-win32-x64-msvc@1.9.1':
+ resolution: {integrity: sha512-rS86wI4R6cknYM3is3grCb/laE8XBEbpWAMSIPjYfmYp75KL5dT87jXF2orDa4tQYg5aajP5G8Fgh34dRyR+Rw==}
+ cpu: [x64]
+ os: [win32]
+
'@uploadthing/mime-types@0.3.5':
resolution: {integrity: sha512-iYOmod80XXOSe4NVvaUG9FsS91YGPUaJMTBj52Nwu0G2aTzEN6Xcl0mG1rWqXJ4NUH8MzjVqg+tQND5TPkJWhg==}
@@ -2646,8 +2769,8 @@ packages:
b4a@1.6.6:
resolution: {integrity: sha512-5Tk1HLk6b6ctmjIkAcU/Ujv/1WqiDl0F0JdRCR80VsOcUlHcu7pWeWRlOqQLHfDEsVx9YH/aif5AG4ehoCtTmg==}
- babel-jest@30.0.0:
- resolution: {integrity: sha512-JQ0DhdFjODbSawDf0026uZuwaqfKkQzk+9mwWkq2XkKFIaMhFVOxlVmbFCOnnC76jATdxrff3IiUAvOAJec6tw==}
+ babel-jest@30.0.2:
+ resolution: {integrity: sha512-A5kqR1/EUTidM2YC2YMEUDP2+19ppgOwK0IAd9Swc3q2KqFb5f9PtRUXVeZcngu0z5mDMyZ9zH2huJZSOMLiTQ==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
peerDependencies:
'@babel/core': ^7.11.0
@@ -2656,8 +2779,8 @@ packages:
resolution: {integrity: sha512-C5OzENSx/A+gt7t4VH1I2XsflxyPUmXRFPKBxt33xncdOmq7oROVM3bZv9Ysjjkv8OJYDMa+tKuKMvqU/H3xdw==}
engines: {node: '>=12'}
- babel-plugin-jest-hoist@30.0.0:
- resolution: {integrity: sha512-DSRm+US/FCB4xPDD6Rnslb6PAF9Bej1DZ+1u4aTiqJnk7ZX12eHsnDiIOqjGvITCq+u6wLqUhgS+faCNbVY8+g==}
+ babel-plugin-jest-hoist@30.0.1:
+ resolution: {integrity: sha512-zTPME3pI50NsFW8ZBaVIOeAxzEY7XHlmWeXXu9srI+9kNfzCUTy8MFan46xOGZY8NZThMqq+e3qZUKsvXbasnQ==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
babel-preset-current-node-syntax@1.1.0:
@@ -2665,8 +2788,8 @@ packages:
peerDependencies:
'@babel/core': ^7.0.0
- babel-preset-jest@30.0.0:
- resolution: {integrity: sha512-hgEuu/W7gk8QOWUA9+m3Zk+WpGvKc1Egp6rFQEfYxEoM9Fk/q8nuTXNL65OkhwGrTApauEGgakOoWVXj+UfhKw==}
+ babel-preset-jest@30.0.1:
+ resolution: {integrity: sha512-+YHejD5iTWI46cZmcc/YtX4gaKBtdqCHCVfuVinizVpbmyjO3zYmeuyFdfA8duRqQZfgCAMlsfmkVbJ+e2MAJw==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
peerDependencies:
'@babel/core': ^7.11.0
@@ -3300,6 +3423,10 @@ packages:
resolution: {integrity: sha512-xCdPp6gwiR9q9lsPCHANarIkFTN/IMZso6Kkq03sOm9IIGtzK/UJqml0dkhHibGh8HKOj8BIDIpZ0BZuU7QK6w==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+ expect@30.0.2:
+ resolution: {integrity: sha512-YN9Mgv2mtTWXVmifQq3QT+ixCL/uLuLJw+fdp8MOjKqu8K3XQh3o5aulMM1tn+O2DdrWNxLZTeJsCY/VofUA0A==}
+ engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+
extend@3.0.2:
resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==}
@@ -3327,8 +3454,8 @@ packages:
fast-levenshtein@2.0.6:
resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==}
- fastq@1.17.1:
- resolution: {integrity: sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==}
+ fastq@1.19.1:
+ resolution: {integrity: sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==}
fb-watchman@2.0.2:
resolution: {integrity: sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==}
@@ -3840,16 +3967,16 @@ packages:
jackspeak@3.4.3:
resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==}
- jest-changed-files@30.0.0:
- resolution: {integrity: sha512-rzGpvCdPdEV1Ma83c1GbZif0L2KAm3vXSXGRlpx7yCt0vhruwCNouKNRh3SiVcISHP1mb3iJzjb7tAEnNu1laQ==}
+ jest-changed-files@30.0.2:
+ resolution: {integrity: sha512-Ius/iRST9FKfJI+I+kpiDh8JuUlAISnRszF9ixZDIqJF17FckH5sOzKC8a0wd0+D+8em5ADRHA5V5MnfeDk2WA==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- jest-circus@30.0.0:
- resolution: {integrity: sha512-nTwah78qcKVyndBS650hAkaEmwWGaVsMMoWdJwMnH77XArRJow2Ir7hc+8p/mATtxVZuM9OTkA/3hQocRIK5Dw==}
+ jest-circus@30.0.2:
+ resolution: {integrity: sha512-NRozwx4DaFHcCUtwdEd/0jBLL1imyMrCbla3vF//wdsB2g6jIicMbjx9VhqE/BYU4dwsOQld+06ODX0oZ9xOLg==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- jest-cli@30.0.0:
- resolution: {integrity: sha512-fWKAgrhlwVVCfeizsmIrPRTBYTzO82WSba3gJniZNR3PKXADgdC0mmCSK+M+t7N8RCXOVfY6kvCkvjUNtzmHYQ==}
+ jest-cli@30.0.2:
+ resolution: {integrity: sha512-yQ6Qz747oUbMYLNAqOlEby+hwXx7WEJtCl0iolBRpJhr2uvkBgiVMrvuKirBc8utwQBnkETFlDUkYifbRpmBrQ==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
hasBin: true
peerDependencies:
@@ -3858,8 +3985,8 @@ packages:
node-notifier:
optional: true
- jest-config@30.0.0:
- resolution: {integrity: sha512-p13a/zun+sbOMrBnTEUdq/5N7bZMOGd1yMfqtAJniPNuzURMay4I+vxZLK1XSDbjvIhmeVdG8h8RznqYyjctyg==}
+ jest-config@30.0.2:
+ resolution: {integrity: sha512-vo0fVq+uzDcXETFVnCUyr5HaUCM8ES6DEuS9AFpma34BVXMRRNlsqDyiW5RDHaEFoeFlJHoI4Xjh/WSYIAL58g==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
peerDependencies:
'@types/node': '*'
@@ -3877,38 +4004,54 @@ packages:
resolution: {integrity: sha512-TgT1+KipV8JTLXXeFX0qSvIJR/UXiNNojjxb/awh3vYlBZyChU/NEmyKmq+wijKjWEztyrGJFL790nqMqNjTHA==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- jest-docblock@30.0.0:
- resolution: {integrity: sha512-By/iQ0nvTzghEecGzUMCp1axLtBh+8wB4Hpoi5o+x1stycjEmPcH1mHugL4D9Q+YKV++vKeX/3ZTW90QC8ICPg==}
+ jest-diff@30.0.2:
+ resolution: {integrity: sha512-2UjrNvDJDn/oHFpPrUTVmvYYDNeNtw2DlY3er8bI6vJJb9Fb35ycp/jFLd5RdV59tJ8ekVXX3o/nwPcscgXZJQ==}
+ engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+
+ jest-docblock@30.0.1:
+ resolution: {integrity: sha512-/vF78qn3DYphAaIc3jy4gA7XSAz167n9Bm/wn/1XhTLW7tTBIzXtCJpb/vcmc73NIIeeohCbdL94JasyXUZsGA==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- jest-each@30.0.0:
- resolution: {integrity: sha512-qkFEW3cfytEjG2KtrhwtldZfXYnWSanO8xUMXLe4A6yaiHMHJUalk0Yyv4MQH6aeaxgi4sGVrukvF0lPMM7U1w==}
+ jest-each@30.0.2:
+ resolution: {integrity: sha512-ZFRsTpe5FUWFQ9cWTMguCaiA6kkW5whccPy9JjD1ezxh+mJeqmz8naL8Fl/oSbNJv3rgB0x87WBIkA5CObIUZQ==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- jest-environment-node@30.0.0:
- resolution: {integrity: sha512-sF6lxyA25dIURyDk4voYmGU9Uwz2rQKMfjxKnDd19yk+qxKGrimFqS5YsPHWTlAVBo+YhWzXsqZoaMzrTFvqfg==}
+ jest-environment-node@30.0.2:
+ resolution: {integrity: sha512-XsGtZ0H+a70RsxAQkKuIh0D3ZlASXdZdhpOSBq9WRPq6lhe0IoQHGW0w9ZUaPiZQ/CpkIdprvlfV1QcXcvIQLQ==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- jest-haste-map@30.0.0:
- resolution: {integrity: sha512-p4bXAhXTawTsADgQgTpbymdLaTyPW1xWNu1oIGG7/N3LIAbZVkH2JMJqS8/IUcnGR8Kc7WFE+vWbJvsqGCWZXw==}
+ jest-haste-map@30.0.2:
+ resolution: {integrity: sha512-telJBKpNLeCb4MaX+I5k496556Y2FiKR/QLZc0+MGBYl4k3OO0472drlV2LUe7c1Glng5HuAu+5GLYp//GpdOQ==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- jest-leak-detector@30.0.0:
- resolution: {integrity: sha512-E/ly1azdVVbZrS0T6FIpyYHvsdek4FNaThJTtggjV/8IpKxh3p9NLndeUZy2+sjAI3ncS+aM0uLLon/dBg8htA==}
+ jest-leak-detector@30.0.2:
+ resolution: {integrity: sha512-U66sRrAYdALq+2qtKffBLDWsQ/XoNNs2Lcr83sc9lvE/hEpNafJlq2lXCPUBMNqamMECNxSIekLfe69qg4KMIQ==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
jest-matcher-utils@30.0.0:
resolution: {integrity: sha512-m5mrunqopkrqwG1mMdJxe1J4uGmS9AHHKYUmoxeQOxBcLjEvirIrIDwuKmUYrecPHVB/PUBpXs2gPoeA2FSSLQ==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+ jest-matcher-utils@30.0.2:
+ resolution: {integrity: sha512-1FKwgJYECR8IT93KMKmjKHSLyru0DqguThov/aWpFccC0wbiXGOxYEu7SScderBD7ruDOpl7lc5NG6w3oxKfaA==}
+ engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+
jest-message-util@30.0.0:
resolution: {integrity: sha512-pV3qcrb4utEsa/U7UI2VayNzSDQcmCllBZLSoIucrESRu0geKThFZOjjh0kACDJFJRAQwsK7GVsmS6SpEceD8w==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+ jest-message-util@30.0.2:
+ resolution: {integrity: sha512-vXywcxmr0SsKXF/bAD7t7nMamRvPuJkras00gqYeB1V0WllxZrbZ0paRr3XqpFU2sYYjD0qAaG2fRyn/CGZ0aw==}
+ engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+
jest-mock@30.0.0:
resolution: {integrity: sha512-W2sRA4ALXILrEetEOh2ooZG6fZ01iwVs0OWMKSSWRcUlaLr4ESHuiKXDNTg+ZVgOq8Ei5445i/Yxrv59VT+XkA==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+ jest-mock@30.0.2:
+ resolution: {integrity: sha512-PnZOHmqup/9cT/y+pXIVbbi8ID6U1XHRmbvR7MvUy4SLqhCbwpkmXhLbsWbGewHrV5x/1bF7YDjs+x24/QSvFA==}
+ engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+
jest-pnp-resolver@1.2.3:
resolution: {integrity: sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==}
engines: {node: '>=6'}
@@ -3922,44 +4065,52 @@ packages:
resolution: {integrity: sha512-rT84010qRu/5OOU7a9TeidC2Tp3Qgt9Sty4pOZ/VSDuEmRupIjKZAb53gU3jr4ooMlhwScrgC9UixJxWzVu9oQ==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- jest-resolve-dependencies@30.0.0:
- resolution: {integrity: sha512-Yhh7odCAUNXhluK1bCpwIlHrN1wycYaTlZwq1GdfNBEESNNI/z1j1a7dUEWHbmB9LGgv0sanxw3JPmWU8NeebQ==}
+ jest-regex-util@30.0.1:
+ resolution: {integrity: sha512-jHEQgBXAgc+Gh4g0p3bCevgRCVRkB4VB70zhoAE48gxeSr1hfUOsM/C2WoJgVL7Eyg//hudYENbm3Ne+/dRVVA==}
+ engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+
+ jest-resolve-dependencies@30.0.2:
+ resolution: {integrity: sha512-Lp1iIXpsF5fGM4vyP8xHiIy2H5L5yO67/nXoYJzH4kz+fQmO+ZMKxzYLyWxYy4EeCLeNQ6a9OozL+uHZV2iuEA==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- jest-resolve@30.0.0:
- resolution: {integrity: sha512-zwWl1P15CcAfuQCEuxszjiKdsValhnWcj/aXg/R3aMHs8HVoCWHC4B/+5+1BirMoOud8NnN85GSP2LEZCbj3OA==}
+ jest-resolve@30.0.2:
+ resolution: {integrity: sha512-q/XT0XQvRemykZsvRopbG6FQUT6/ra+XV6rPijyjT6D0msOyCvR2A5PlWZLd+fH0U8XWKZfDiAgrUNDNX2BkCw==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- jest-runner@30.0.0:
- resolution: {integrity: sha512-xbhmvWIc8X1IQ8G7xTv0AQJXKjBVyxoVJEJgy7A4RXsSaO+k/1ZSBbHwjnUhvYqMvwQPomWssDkUx6EoidEhlw==}
+ jest-runner@30.0.2:
+ resolution: {integrity: sha512-6H+CIFiDLVt1Ix6jLzASXz3IoIiDukpEIxL9FHtDQ2BD/k5eFtDF5e5N9uItzRE3V1kp7VoSRyrGBytXKra4xA==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- jest-runtime@30.0.0:
- resolution: {integrity: sha512-/O07qVgFrFAOGKGigojmdR3jUGz/y3+a/v9S/Yi2MHxsD+v6WcPppglZJw0gNJkRBArRDK8CFAwpM/VuEiiRjA==}
+ jest-runtime@30.0.2:
+ resolution: {integrity: sha512-H1a51/soNOeAjoggu6PZKTH7DFt8JEGN4mesTSwyqD2jU9PXD04Bp6DKbt2YVtQvh2JcvH2vjbkEerCZ3lRn7A==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- jest-snapshot@30.0.0:
- resolution: {integrity: sha512-6oCnzjpvfj/UIOMTqKZ6gedWAUgaycMdV8Y8h2dRJPvc2wSjckN03pzeoonw8y33uVngfx7WMo1ygdRGEKOT7w==}
+ jest-snapshot@30.0.2:
+ resolution: {integrity: sha512-KeoHikoKGln3OlN7NS7raJ244nIVr2K46fBTNdfuxqYv2/g4TVyWDSO4fmk08YBJQMjs3HNfG1rlLfL/KA+nUw==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
jest-util@30.0.0:
resolution: {integrity: sha512-fhNBBM9uSUbd4Lzsf8l/kcAdaHD/4SgoI48en3HXcBEMwKwoleKFMZ6cYEYs21SB779PRuRCyNLmymApAm8tZw==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- jest-validate@30.0.0:
- resolution: {integrity: sha512-d6OkzsdlWItHAikUDs1hlLmpOIRhsZoXTCliV2XXalVQ3ZOeb9dy0CQ6AKulJu/XOZqpOEr/FiMH+FeOBVV+nw==}
+ jest-util@30.0.2:
+ resolution: {integrity: sha512-8IyqfKS4MqprBuUpZNlFB5l+WFehc8bfCe1HSZFHzft2mOuND8Cvi9r1musli+u6F3TqanCZ/Ik4H4pXUolZIg==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- jest-watcher@30.0.0:
- resolution: {integrity: sha512-fbAkojcyS53bOL/B7XYhahORq9cIaPwOgd/p9qW/hybbC8l6CzxfWJJxjlPBAIVN8dRipLR0zdhpGQdam+YBtw==}
+ jest-validate@30.0.2:
+ resolution: {integrity: sha512-noOvul+SFER4RIvNAwGn6nmV2fXqBq67j+hKGHKGFCmK4ks/Iy1FSrqQNBLGKlu4ZZIRL6Kg1U72N1nxuRCrGQ==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- jest-worker@30.0.0:
- resolution: {integrity: sha512-VZvxfWIybIvwK8N/Bsfe43LfQgd/rD0c4h5nLUx78CAqPxIQcW2qDjsVAC53iUR8yxzFIeCFFvWOh8en8hGzdg==}
+ jest-watcher@30.0.2:
+ resolution: {integrity: sha512-vYO5+E7jJuF+XmONr6CrbXdlYrgvZqtkn6pdkgjt/dU64UAdc0v1cAVaAeWtAfUUMScxNmnUjKPUMdCpNVASwg==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- jest@30.0.0:
- resolution: {integrity: sha512-/3G2iFwsUY95vkflmlDn/IdLyLWqpQXcftptooaPH4qkyU52V7qVYf1BjmdSPlp1+0fs6BmNtrGaSFwOfV07ew==}
+ jest-worker@30.0.2:
+ resolution: {integrity: sha512-RN1eQmx7qSLFA+o9pfJKlqViwL5wt+OL3Vff/A+/cPsmuw7NPwfgl33AP+/agRmHzPOFgXviRycR9kYwlcRQXg==}
+ engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+
+ jest@30.0.2:
+ resolution: {integrity: sha512-HlSEiHRcmTuGwNyeawLTEzpQUMFn+f741FfoNg7RXG2h0WLJKozVCpcQLT0GW17H6kNCqRwGf+Ii/I1YVNvEGQ==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
hasBin: true
peerDependencies:
@@ -4034,8 +4185,8 @@ packages:
keyv@4.5.4:
resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==}
- knip@5.61.1:
- resolution: {integrity: sha512-keywAzpu8R9S50JRT3qxilb1i/pv3ztBHhZ3tRuHvRclqfhfPkY7kb/G6l4q7zozbyndidSr7IScvayG76HtkA==}
+ knip@5.61.2:
+ resolution: {integrity: sha512-ZBv37zDvZj0/Xwk0e93xSjM3+5bjxgqJ0PH2GlB5tnWV0ktXtmatWLm+dLRUCT/vpO3SdGz2nNAfvVhuItUNcQ==}
engines: {node: '>=18.18.0'}
hasBin: true
peerDependencies:
@@ -4172,6 +4323,7 @@ packages:
lucia@2.7.7:
resolution: {integrity: sha512-Hy1nMcLquLl3yDvV9zYA9fSBGUDy/Fw2zEUw2Ia4iGdk/O+hI/TvQ1tAfED/U1WE/c5DT1hEger3m7qIx1qbUg==}
+ deprecated: This package has been deprecated. Please see https://lucia-auth.com/lucia-v3/migrate.
lucide-react@0.516.0:
resolution: {integrity: sha512-aybBJzLHcw1CIn3rUcRkztB37dsJATtpffLNX+0/w+ws2p21nYIlOwX/B5fqxq8F/BjqVemnJX8chKwRidvROg==}
@@ -4680,8 +4832,8 @@ packages:
resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==}
engines: {node: '>= 0.8.0'}
- prettier-plugin-tailwindcss@0.6.12:
- resolution: {integrity: sha512-OuTQKoqNwV7RnxTPwXWzOFXy6Jc4z8oeRZYGuMpRyG3WbuR3jjXdQFK8qFBMBx8UHWdHrddARz2fgUenild6aw==}
+ prettier-plugin-tailwindcss@0.6.13:
+ resolution: {integrity: sha512-uQ0asli1+ic8xrrSmIOaElDu0FacR4x69GynTh2oZjFY10JUt6EEumTQl5tB4fMeD6I1naKd+4rXQQ7esT2i1g==}
engines: {node: '>=14.21.3'}
peerDependencies:
'@ianvs/prettier-plugin-sort-imports': '*'
@@ -4735,8 +4887,8 @@ packages:
prettier-plugin-svelte:
optional: true
- prettier@3.5.3:
- resolution: {integrity: sha512-QQtaxnoDJeAkDvDKWCLiwIXkTgRhwYDEQCghU9Z6q03iyek/rxRh/2lC3HB7P8sWT2xC/y5JDctPLBIGzHKbhw==}
+ prettier@3.6.0:
+ resolution: {integrity: sha512-ujSB9uXHJKzM/2GBuE0hBOUgC77CN3Bnpqa+g80bkv3T3A93wL/xlzDATHhnhkzifz/UE2SNOvmbTz5hSkDlHw==}
engines: {node: '>=14'}
hasBin: true
@@ -4744,6 +4896,10 @@ packages:
resolution: {integrity: sha512-18NAOUr4ZOQiIR+BgI5NhQE7uREdx4ZyV0dyay5izh4yfQ+1T7BSvggxvRGoXocrRyevqW5OhScUjbi9GB8R8Q==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+ pretty-format@30.0.2:
+ resolution: {integrity: sha512-yC5/EBSOrTtqhCKfLHqoUIAXVRZnukHPwWBJWR7h84Q3Be1DRQZLncwcfLoPA5RPQ65qfiCMqgYwdUuQ//eVpg==}
+ engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+
prisma@6.10.0:
resolution: {integrity: sha512-hyfwi+HpH2lHlRUj3O6CtWg44D7iuxi/O+xoLIsDjUNvriyFIVlw4a+8facnByZnm4Lt54+ZzJkFvkKBm7bIug==}
engines: {node: '>=18.18'}
@@ -5024,8 +5180,8 @@ packages:
resolution: {integrity: sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==}
hasBin: true
- reusify@1.0.4:
- resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==}
+ reusify@1.1.0:
+ resolution: {integrity: sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==}
engines: {iojs: '>=1.0.0', node: '>=0.10.0'}
rimraf@3.0.2:
@@ -5524,6 +5680,9 @@ packages:
unrs-resolver@1.9.0:
resolution: {integrity: sha512-wqaRu4UnzBD2ABTC1kLfBjAqIDZ5YUTr/MLGa7By47JV1bJDSW7jq/ZSLigB7enLe7ubNaJhtnBXgrc/50cEhg==}
+ unrs-resolver@1.9.1:
+ resolution: {integrity: sha512-4AZVxP05JGN6DwqIkSP4VKLOcwQa5l37SWHF/ahcuqBMbfxbpN1L1QKafEhWCziHhzKex9H/AR09H0OuVyU+9g==}
+
update-browserslist-db@1.1.3:
resolution: {integrity: sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==}
hasBin: true
@@ -5829,8 +5988,8 @@ packages:
peerDependencies:
zod: '>= 3.11.0'
- zod-validation-error@3.5.1:
- resolution: {integrity: sha512-ozT8jy2nHaeKjaRIEThwgRXBwm16hAy0BaTRx1I2IY1xrezPegmlFmYKb5tcvYqZDQm0sfZtDr2IR7CdCJzTGw==}
+ zod-validation-error@3.5.2:
+ resolution: {integrity: sha512-mdi7YOLtram5dzJ5aDtm1AG9+mxRma1iaMrZdYIpFO7epdKBUwLHIxTF8CPDeCQ828zAXYtizrKlEJAtzgfgrw==}
engines: {node: '>=18.0.0'}
peerDependencies:
zod: ^3.25.0
@@ -6367,44 +6526,44 @@ snapshots:
'@istanbuljs/schema@0.1.3': {}
- '@jest/console@30.0.0':
+ '@jest/console@30.0.2':
dependencies:
- '@jest/types': 30.0.0
+ '@jest/types': 30.0.1
'@types/node': 22.13.9
chalk: 4.1.2
- jest-message-util: 30.0.0
- jest-util: 30.0.0
+ jest-message-util: 30.0.2
+ jest-util: 30.0.2
slash: 3.0.0
- '@jest/core@30.0.0(ts-node@10.9.2(@types/node@22.13.9)(typescript@5.8.3))':
+ '@jest/core@30.0.2(ts-node@10.9.2(@types/node@22.13.9)(typescript@5.8.3))':
dependencies:
- '@jest/console': 30.0.0
- '@jest/pattern': 30.0.0
- '@jest/reporters': 30.0.0
- '@jest/test-result': 30.0.0
- '@jest/transform': 30.0.0
- '@jest/types': 30.0.0
+ '@jest/console': 30.0.2
+ '@jest/pattern': 30.0.1
+ '@jest/reporters': 30.0.2
+ '@jest/test-result': 30.0.2
+ '@jest/transform': 30.0.2
+ '@jest/types': 30.0.1
'@types/node': 22.13.9
ansi-escapes: 4.3.2
chalk: 4.1.2
ci-info: 4.2.0
exit-x: 0.2.2
graceful-fs: 4.2.11
- jest-changed-files: 30.0.0
- jest-config: 30.0.0(@types/node@22.13.9)(ts-node@10.9.2(@types/node@22.13.9)(typescript@5.8.3))
- jest-haste-map: 30.0.0
- jest-message-util: 30.0.0
- jest-regex-util: 30.0.0
- jest-resolve: 30.0.0
- jest-resolve-dependencies: 30.0.0
- jest-runner: 30.0.0
- jest-runtime: 30.0.0
- jest-snapshot: 30.0.0
- jest-util: 30.0.0
- jest-validate: 30.0.0
- jest-watcher: 30.0.0
+ jest-changed-files: 30.0.2
+ jest-config: 30.0.2(@types/node@22.13.9)(ts-node@10.9.2(@types/node@22.13.9)(typescript@5.8.3))
+ jest-haste-map: 30.0.2
+ jest-message-util: 30.0.2
+ jest-regex-util: 30.0.1
+ jest-resolve: 30.0.2
+ jest-resolve-dependencies: 30.0.2
+ jest-runner: 30.0.2
+ jest-runtime: 30.0.2
+ jest-snapshot: 30.0.2
+ jest-util: 30.0.2
+ jest-validate: 30.0.2
+ jest-watcher: 30.0.2
micromatch: 4.0.8
- pretty-format: 30.0.0
+ pretty-format: 30.0.2
slash: 3.0.0
transitivePeerDependencies:
- babel-plugin-macros
@@ -6414,41 +6573,49 @@ snapshots:
'@jest/diff-sequences@30.0.0': {}
- '@jest/environment@30.0.0':
+ '@jest/diff-sequences@30.0.1': {}
+
+ '@jest/environment@30.0.2':
dependencies:
- '@jest/fake-timers': 30.0.0
- '@jest/types': 30.0.0
+ '@jest/fake-timers': 30.0.2
+ '@jest/types': 30.0.1
'@types/node': 22.13.9
- jest-mock: 30.0.0
+ jest-mock: 30.0.2
'@jest/expect-utils@30.0.0':
dependencies:
'@jest/get-type': 30.0.0
- '@jest/expect@30.0.0':
+ '@jest/expect-utils@30.0.2':
dependencies:
- expect: 30.0.0
- jest-snapshot: 30.0.0
+ '@jest/get-type': 30.0.1
+
+ '@jest/expect@30.0.2':
+ dependencies:
+ expect: 30.0.2
+ jest-snapshot: 30.0.2
transitivePeerDependencies:
- supports-color
- '@jest/fake-timers@30.0.0':
+ '@jest/fake-timers@30.0.2':
dependencies:
- '@jest/types': 30.0.0
+ '@jest/types': 30.0.1
'@sinonjs/fake-timers': 13.0.5
'@types/node': 22.13.9
- jest-message-util: 30.0.0
- jest-mock: 30.0.0
- jest-util: 30.0.0
+ jest-message-util: 30.0.2
+ jest-mock: 30.0.2
+ jest-util: 30.0.2
'@jest/get-type@30.0.0': {}
- '@jest/globals@30.0.0':
+ '@jest/get-type@30.0.1': {}
+
+ '@jest/globals@30.0.2':
dependencies:
- '@jest/environment': 30.0.0
- '@jest/expect': 30.0.0
- '@jest/types': 30.0.0
- jest-mock: 30.0.0
+ '@jest/environment': 30.0.2
+ '@jest/expect': 30.0.2
+ '@jest/types': 30.0.1
+ jest-mock: 30.0.2
transitivePeerDependencies:
- supports-color
@@ -6457,13 +6624,18 @@ snapshots:
'@types/node': 22.13.9
jest-regex-util: 30.0.0
- '@jest/reporters@30.0.0':
+ '@jest/pattern@30.0.1':
+ dependencies:
+ '@types/node': 22.13.9
+ jest-regex-util: 30.0.1
+
+ '@jest/reporters@30.0.2':
dependencies:
'@bcoe/v8-coverage': 0.2.3
- '@jest/console': 30.0.0
- '@jest/test-result': 30.0.0
- '@jest/transform': 30.0.0
- '@jest/types': 30.0.0
+ '@jest/console': 30.0.2
+ '@jest/test-result': 30.0.2
+ '@jest/transform': 30.0.2
+ '@jest/types': 30.0.1
'@jridgewell/trace-mapping': 0.3.25
'@types/node': 22.13.9
chalk: 4.1.2
@@ -6476,9 +6648,9 @@ snapshots:
istanbul-lib-report: 3.0.1
istanbul-lib-source-maps: 5.0.6
istanbul-reports: 3.1.7
- jest-message-util: 30.0.0
- jest-util: 30.0.0
- jest-worker: 30.0.0
+ jest-message-util: 30.0.2
+ jest-util: 30.0.2
+ jest-worker: 30.0.2
slash: 3.0.0
string-length: 4.0.2
v8-to-istanbul: 9.3.0
@@ -6489,46 +6661,50 @@ snapshots:
dependencies:
'@sinclair/typebox': 0.34.35
- '@jest/snapshot-utils@30.0.0':
+ '@jest/schemas@30.0.1':
dependencies:
- '@jest/types': 30.0.0
+ '@sinclair/typebox': 0.34.36
+
+ '@jest/snapshot-utils@30.0.1':
+ dependencies:
+ '@jest/types': 30.0.1
chalk: 4.1.2
graceful-fs: 4.2.11
natural-compare: 1.4.0
- '@jest/source-map@30.0.0':
+ '@jest/source-map@30.0.1':
dependencies:
'@jridgewell/trace-mapping': 0.3.25
callsites: 3.1.0
graceful-fs: 4.2.11
- '@jest/test-result@30.0.0':
+ '@jest/test-result@30.0.2':
dependencies:
- '@jest/console': 30.0.0
- '@jest/types': 30.0.0
+ '@jest/console': 30.0.2
+ '@jest/types': 30.0.1
'@types/istanbul-lib-coverage': 2.0.6
collect-v8-coverage: 1.0.2
- '@jest/test-sequencer@30.0.0':
+ '@jest/test-sequencer@30.0.2':
dependencies:
- '@jest/test-result': 30.0.0
+ '@jest/test-result': 30.0.2
graceful-fs: 4.2.11
- jest-haste-map: 30.0.0
+ jest-haste-map: 30.0.2
slash: 3.0.0
- '@jest/transform@30.0.0':
+ '@jest/transform@30.0.2':
dependencies:
'@babel/core': 7.27.4
- '@jest/types': 30.0.0
+ '@jest/types': 30.0.1
'@jridgewell/trace-mapping': 0.3.25
babel-plugin-istanbul: 7.0.0
chalk: 4.1.2
convert-source-map: 2.0.0
fast-json-stable-stringify: 2.1.0
graceful-fs: 4.2.11
- jest-haste-map: 30.0.0
- jest-regex-util: 30.0.0
- jest-util: 30.0.0
+ jest-haste-map: 30.0.2
+ jest-regex-util: 30.0.1
+ jest-util: 30.0.2
micromatch: 4.0.8
pirates: 4.0.7
slash: 3.0.0
@@ -6546,6 +6722,16 @@ snapshots:
'@types/yargs': 17.0.33
chalk: 4.1.2
+ '@jest/types@30.0.1':
+ dependencies:
+ '@jest/pattern': 30.0.1
+ '@jest/schemas': 30.0.1
+ '@types/istanbul-lib-coverage': 2.0.6
+ '@types/istanbul-reports': 3.0.4
+ '@types/node': 22.13.9
+ '@types/yargs': 17.0.33
+ chalk: 4.1.2
+
'@jridgewell/gen-mapping@0.3.8':
dependencies:
'@jridgewell/set-array': 1.2.1
@@ -6650,7 +6836,7 @@ snapshots:
'@nodelib/fs.walk@1.2.8':
dependencies:
'@nodelib/fs.scandir': 2.1.5
- fastq: 1.17.1
+ fastq: 1.19.1
'@nolyfill/is-core-module@1.0.39': {}
@@ -7339,6 +7525,8 @@ snapshots:
'@sinclair/typebox@0.34.35': {}
+ '@sinclair/typebox@0.34.36': {}
+
'@sinonjs/commons@3.0.1':
dependencies:
type-detect: 4.0.8
@@ -7727,62 +7915,121 @@ snapshots:
'@unrs/resolver-binding-android-arm-eabi@1.9.0':
optional: true
+ '@unrs/resolver-binding-android-arm-eabi@1.9.1':
+ optional: true
+
'@unrs/resolver-binding-android-arm64@1.9.0':
optional: true
+ '@unrs/resolver-binding-android-arm64@1.9.1':
+ optional: true
+
'@unrs/resolver-binding-darwin-arm64@1.9.0':
optional: true
+ '@unrs/resolver-binding-darwin-arm64@1.9.1':
+ optional: true
+
'@unrs/resolver-binding-darwin-x64@1.9.0':
optional: true
+ '@unrs/resolver-binding-darwin-x64@1.9.1':
+ optional: true
+
'@unrs/resolver-binding-freebsd-x64@1.9.0':
optional: true
+ '@unrs/resolver-binding-freebsd-x64@1.9.1':
+ optional: true
+
'@unrs/resolver-binding-linux-arm-gnueabihf@1.9.0':
optional: true
+ '@unrs/resolver-binding-linux-arm-gnueabihf@1.9.1':
+ optional: true
+
'@unrs/resolver-binding-linux-arm-musleabihf@1.9.0':
optional: true
+ '@unrs/resolver-binding-linux-arm-musleabihf@1.9.1':
+ optional: true
+
'@unrs/resolver-binding-linux-arm64-gnu@1.9.0':
optional: true
+ '@unrs/resolver-binding-linux-arm64-gnu@1.9.1':
+ optional: true
+
'@unrs/resolver-binding-linux-arm64-musl@1.9.0':
optional: true
+ '@unrs/resolver-binding-linux-arm64-musl@1.9.1':
+ optional: true
+
'@unrs/resolver-binding-linux-ppc64-gnu@1.9.0':
optional: true
+ '@unrs/resolver-binding-linux-ppc64-gnu@1.9.1':
+ optional: true
+
'@unrs/resolver-binding-linux-riscv64-gnu@1.9.0':
optional: true
+ '@unrs/resolver-binding-linux-riscv64-gnu@1.9.1':
+ optional: true
+
'@unrs/resolver-binding-linux-riscv64-musl@1.9.0':
optional: true
+ '@unrs/resolver-binding-linux-riscv64-musl@1.9.1':
+ optional: true
+
'@unrs/resolver-binding-linux-s390x-gnu@1.9.0':
optional: true
+ '@unrs/resolver-binding-linux-s390x-gnu@1.9.1':
+ optional: true
+
'@unrs/resolver-binding-linux-x64-gnu@1.9.0':
optional: true
+ '@unrs/resolver-binding-linux-x64-gnu@1.9.1':
+ optional: true
+
'@unrs/resolver-binding-linux-x64-musl@1.9.0':
optional: true
+ '@unrs/resolver-binding-linux-x64-musl@1.9.1':
+ optional: true
+
'@unrs/resolver-binding-wasm32-wasi@1.9.0':
dependencies:
'@napi-rs/wasm-runtime': 0.2.11
optional: true
+ '@unrs/resolver-binding-wasm32-wasi@1.9.1':
+ dependencies:
+ '@napi-rs/wasm-runtime': 0.2.11
+ optional: true
+
'@unrs/resolver-binding-win32-arm64-msvc@1.9.0':
optional: true
+ '@unrs/resolver-binding-win32-arm64-msvc@1.9.1':
+ optional: true
+
'@unrs/resolver-binding-win32-ia32-msvc@1.9.0':
optional: true
+ '@unrs/resolver-binding-win32-ia32-msvc@1.9.1':
+ optional: true
+
'@unrs/resolver-binding-win32-x64-msvc@1.9.0':
optional: true
+ '@unrs/resolver-binding-win32-x64-msvc@1.9.1':
+ optional: true
+
'@uploadthing/mime-types@0.3.5': {}
'@uploadthing/react@7.3.1(next@14.2.30(@babel/core@7.27.4)(@playwright/test@1.53.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.89.2))(react@18.3.1)(uploadthing@7.7.2(next@14.2.30(@babel/core@7.27.4)(@playwright/test@1.53.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.89.2))(tailwindcss@4.1.10))':
@@ -8034,13 +8281,13 @@ snapshots:
b4a@1.6.6: {}
- babel-jest@30.0.0(@babel/core@7.27.4):
+ babel-jest@30.0.2(@babel/core@7.27.4):
dependencies:
'@babel/core': 7.27.4
- '@jest/transform': 30.0.0
+ '@jest/transform': 30.0.2
'@types/babel__core': 7.20.5
babel-plugin-istanbul: 7.0.0
- babel-preset-jest: 30.0.0(@babel/core@7.27.4)
+ babel-preset-jest: 30.0.1(@babel/core@7.27.4)
chalk: 4.1.2
graceful-fs: 4.2.11
slash: 3.0.0
@@ -8057,7 +8304,7 @@ snapshots:
transitivePeerDependencies:
- supports-color
- babel-plugin-jest-hoist@30.0.0:
+ babel-plugin-jest-hoist@30.0.1:
dependencies:
'@babel/template': 7.27.2
'@babel/types': 7.27.6
@@ -8082,10 +8329,10 @@ snapshots:
'@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.27.4)
'@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.27.4)
- babel-preset-jest@30.0.0(@babel/core@7.27.4):
+ babel-preset-jest@30.0.1(@babel/core@7.27.4):
dependencies:
'@babel/core': 7.27.4
- babel-plugin-jest-hoist: 30.0.0
+ babel-plugin-jest-hoist: 30.0.1
babel-preset-current-node-syntax: 1.1.0(@babel/core@7.27.4)
bail@2.0.2: {}
@@ -8846,6 +9093,15 @@ snapshots:
jest-mock: 30.0.0
jest-util: 30.0.0
+ expect@30.0.2:
+ dependencies:
+ '@jest/expect-utils': 30.0.2
+ '@jest/get-type': 30.0.1
+ jest-matcher-utils: 30.0.2
+ jest-message-util: 30.0.2
+ jest-mock: 30.0.2
+ jest-util: 30.0.2
+
extend@3.0.2: {}
fast-check@3.23.2:
@@ -8876,9 +9132,9 @@ snapshots:
fast-levenshtein@2.0.6: {}
- fastq@1.17.1:
+ fastq@1.19.1:
dependencies:
- reusify: 1.0.4
+ reusify: 1.1.0
fb-watchman@2.0.2:
dependencies:
@@ -9438,31 +9694,31 @@ snapshots:
optionalDependencies:
'@pkgjs/parseargs': 0.11.0
- jest-changed-files@30.0.0:
+ jest-changed-files@30.0.2:
dependencies:
execa: 5.1.1
- jest-util: 30.0.0
+ jest-util: 30.0.2
p-limit: 3.1.0
- jest-circus@30.0.0:
+ jest-circus@30.0.2:
dependencies:
- '@jest/environment': 30.0.0
- '@jest/expect': 30.0.0
- '@jest/test-result': 30.0.0
- '@jest/types': 30.0.0
+ '@jest/environment': 30.0.2
+ '@jest/expect': 30.0.2
+ '@jest/test-result': 30.0.2
+ '@jest/types': 30.0.1
'@types/node': 22.13.9
chalk: 4.1.2
co: 4.6.0
dedent: 1.6.0
is-generator-fn: 2.1.0
- jest-each: 30.0.0
- jest-matcher-utils: 30.0.0
- jest-message-util: 30.0.0
- jest-runtime: 30.0.0
- jest-snapshot: 30.0.0
- jest-util: 30.0.0
+ jest-each: 30.0.2
+ jest-matcher-utils: 30.0.2
+ jest-message-util: 30.0.2
+ jest-runtime: 30.0.2
+ jest-snapshot: 30.0.2
+ jest-util: 30.0.2
p-limit: 3.1.0
- pretty-format: 30.0.0
+ pretty-format: 30.0.2
pure-rand: 7.0.1
slash: 3.0.0
stack-utils: 2.0.6
@@ -9470,17 +9726,17 @@ snapshots:
- babel-plugin-macros
- supports-color
- jest-cli@30.0.0(@types/node@22.13.9)(ts-node@10.9.2(@types/node@22.13.9)(typescript@5.8.3)):
+ jest-cli@30.0.2(@types/node@22.13.9)(ts-node@10.9.2(@types/node@22.13.9)(typescript@5.8.3)):
dependencies:
- '@jest/core': 30.0.0(ts-node@10.9.2(@types/node@22.13.9)(typescript@5.8.3))
- '@jest/test-result': 30.0.0
- '@jest/types': 30.0.0
+ '@jest/core': 30.0.2(ts-node@10.9.2(@types/node@22.13.9)(typescript@5.8.3))
+ '@jest/test-result': 30.0.2
+ '@jest/types': 30.0.1
chalk: 4.1.2
exit-x: 0.2.2
import-local: 3.2.0
- jest-config: 30.0.0(@types/node@22.13.9)(ts-node@10.9.2(@types/node@22.13.9)(typescript@5.8.3))
- jest-util: 30.0.0
- jest-validate: 30.0.0
+ jest-config: 30.0.2(@types/node@22.13.9)(ts-node@10.9.2(@types/node@22.13.9)(typescript@5.8.3))
+ jest-util: 30.0.2
+ jest-validate: 30.0.2
yargs: 17.7.2
transitivePeerDependencies:
- '@types/node'
@@ -9489,30 +9745,30 @@ snapshots:
- supports-color
- ts-node
- jest-config@30.0.0(@types/node@22.13.9)(ts-node@10.9.2(@types/node@22.13.9)(typescript@5.8.3)):
+ jest-config@30.0.2(@types/node@22.13.9)(ts-node@10.9.2(@types/node@22.13.9)(typescript@5.8.3)):
dependencies:
'@babel/core': 7.27.4
- '@jest/get-type': 30.0.0
- '@jest/pattern': 30.0.0
- '@jest/test-sequencer': 30.0.0
- '@jest/types': 30.0.0
- babel-jest: 30.0.0(@babel/core@7.27.4)
+ '@jest/get-type': 30.0.1
+ '@jest/pattern': 30.0.1
+ '@jest/test-sequencer': 30.0.2
+ '@jest/types': 30.0.1
+ babel-jest: 30.0.2(@babel/core@7.27.4)
chalk: 4.1.2
ci-info: 4.2.0
deepmerge: 4.3.1
glob: 10.4.5
graceful-fs: 4.2.11
- jest-circus: 30.0.0
- jest-docblock: 30.0.0
- jest-environment-node: 30.0.0
- jest-regex-util: 30.0.0
- jest-resolve: 30.0.0
- jest-runner: 30.0.0
- jest-util: 30.0.0
- jest-validate: 30.0.0
+ jest-circus: 30.0.2
+ jest-docblock: 30.0.1
+ jest-environment-node: 30.0.2
+ jest-regex-util: 30.0.1
+ jest-resolve: 30.0.2
+ jest-runner: 30.0.2
+ jest-util: 30.0.2
+ jest-validate: 30.0.2
micromatch: 4.0.8
parse-json: 5.2.0
- pretty-format: 30.0.0
+ pretty-format: 30.0.2
slash: 3.0.0
strip-json-comments: 3.1.1
optionalDependencies:
@@ -9529,47 +9785,54 @@ snapshots:
chalk: 4.1.2
pretty-format: 30.0.0
- jest-docblock@30.0.0:
+ jest-diff@30.0.2:
+ dependencies:
+ '@jest/diff-sequences': 30.0.1
+ '@jest/get-type': 30.0.1
+ chalk: 4.1.2
+ pretty-format: 30.0.2
+
+ jest-docblock@30.0.1:
dependencies:
detect-newline: 3.1.0
- jest-each@30.0.0:
+ jest-each@30.0.2:
dependencies:
- '@jest/get-type': 30.0.0
- '@jest/types': 30.0.0
+ '@jest/get-type': 30.0.1
+ '@jest/types': 30.0.1
chalk: 4.1.2
- jest-util: 30.0.0
- pretty-format: 30.0.0
+ jest-util: 30.0.2
+ pretty-format: 30.0.2
- jest-environment-node@30.0.0:
+ jest-environment-node@30.0.2:
dependencies:
- '@jest/environment': 30.0.0
- '@jest/fake-timers': 30.0.0
- '@jest/types': 30.0.0
+ '@jest/environment': 30.0.2
+ '@jest/fake-timers': 30.0.2
+ '@jest/types': 30.0.1
'@types/node': 22.13.9
- jest-mock: 30.0.0
- jest-util: 30.0.0
- jest-validate: 30.0.0
+ jest-mock: 30.0.2
+ jest-util: 30.0.2
+ jest-validate: 30.0.2
- jest-haste-map@30.0.0:
+ jest-haste-map@30.0.2:
dependencies:
- '@jest/types': 30.0.0
+ '@jest/types': 30.0.1
'@types/node': 22.13.9
anymatch: 3.1.3
fb-watchman: 2.0.2
graceful-fs: 4.2.11
- jest-regex-util: 30.0.0
- jest-util: 30.0.0
- jest-worker: 30.0.0
+ jest-regex-util: 30.0.1
+ jest-util: 30.0.2
+ jest-worker: 30.0.2
micromatch: 4.0.8
walker: 1.0.8
optionalDependencies:
fsevents: 2.3.3
- jest-leak-detector@30.0.0:
+ jest-leak-detector@30.0.2:
dependencies:
- '@jest/get-type': 30.0.0
- pretty-format: 30.0.0
+ '@jest/get-type': 30.0.1
+ pretty-format: 30.0.2
jest-matcher-utils@30.0.0:
dependencies:
@@ -9578,6 +9841,13 @@ snapshots:
jest-diff: 30.0.0
pretty-format: 30.0.0
+ jest-matcher-utils@30.0.2:
+ dependencies:
+ '@jest/get-type': 30.0.1
+ chalk: 4.1.2
+ jest-diff: 30.0.2
+ pretty-format: 30.0.2
+
jest-message-util@30.0.0:
dependencies:
'@babel/code-frame': 7.27.1
@@ -9590,111 +9860,131 @@ snapshots:
slash: 3.0.0
stack-utils: 2.0.6
+ jest-message-util@30.0.2:
+ dependencies:
+ '@babel/code-frame': 7.27.1
+ '@jest/types': 30.0.1
+ '@types/stack-utils': 2.0.3
+ chalk: 4.1.2
+ graceful-fs: 4.2.11
+ micromatch: 4.0.8
+ pretty-format: 30.0.2
+ slash: 3.0.0
+ stack-utils: 2.0.6
+
jest-mock@30.0.0:
dependencies:
'@jest/types': 30.0.0
'@types/node': 22.13.9
jest-util: 30.0.0
- jest-pnp-resolver@1.2.3(jest-resolve@30.0.0):
+ jest-mock@30.0.2:
+ dependencies:
+ '@jest/types': 30.0.1
+ '@types/node': 22.13.9
+ jest-util: 30.0.2
+
+ jest-pnp-resolver@1.2.3(jest-resolve@30.0.2):
optionalDependencies:
- jest-resolve: 30.0.0
+ jest-resolve: 30.0.2
jest-regex-util@30.0.0: {}
- jest-resolve-dependencies@30.0.0:
+ jest-regex-util@30.0.1: {}
+
+ jest-resolve-dependencies@30.0.2:
dependencies:
- jest-regex-util: 30.0.0
- jest-snapshot: 30.0.0
+ jest-regex-util: 30.0.1
+ jest-snapshot: 30.0.2
transitivePeerDependencies:
- supports-color
- jest-resolve@30.0.0:
+ jest-resolve@30.0.2:
dependencies:
chalk: 4.1.2
graceful-fs: 4.2.11
- jest-haste-map: 30.0.0
- jest-pnp-resolver: 1.2.3(jest-resolve@30.0.0)
- jest-util: 30.0.0
- jest-validate: 30.0.0
+ jest-haste-map: 30.0.2
+ jest-pnp-resolver: 1.2.3(jest-resolve@30.0.2)
+ jest-util: 30.0.2
+ jest-validate: 30.0.2
slash: 3.0.0
- unrs-resolver: 1.9.0
+ unrs-resolver: 1.9.1
- jest-runner@30.0.0:
+ jest-runner@30.0.2:
dependencies:
- '@jest/console': 30.0.0
- '@jest/environment': 30.0.0
- '@jest/test-result': 30.0.0
- '@jest/transform': 30.0.0
- '@jest/types': 30.0.0
+ '@jest/console': 30.0.2
+ '@jest/environment': 30.0.2
+ '@jest/test-result': 30.0.2
+ '@jest/transform': 30.0.2
+ '@jest/types': 30.0.1
'@types/node': 22.13.9
chalk: 4.1.2
emittery: 0.13.1
exit-x: 0.2.2
graceful-fs: 4.2.11
- jest-docblock: 30.0.0
- jest-environment-node: 30.0.0
- jest-haste-map: 30.0.0
- jest-leak-detector: 30.0.0
- jest-message-util: 30.0.0
- jest-resolve: 30.0.0
- jest-runtime: 30.0.0
- jest-util: 30.0.0
- jest-watcher: 30.0.0
- jest-worker: 30.0.0
+ jest-docblock: 30.0.1
+ jest-environment-node: 30.0.2
+ jest-haste-map: 30.0.2
+ jest-leak-detector: 30.0.2
+ jest-message-util: 30.0.2
+ jest-resolve: 30.0.2
+ jest-runtime: 30.0.2
+ jest-util: 30.0.2
+ jest-watcher: 30.0.2
+ jest-worker: 30.0.2
p-limit: 3.1.0
source-map-support: 0.5.13
transitivePeerDependencies:
- supports-color
- jest-runtime@30.0.0:
+ jest-runtime@30.0.2:
dependencies:
- '@jest/environment': 30.0.0
- '@jest/fake-timers': 30.0.0
- '@jest/globals': 30.0.0
- '@jest/source-map': 30.0.0
- '@jest/test-result': 30.0.0
- '@jest/transform': 30.0.0
- '@jest/types': 30.0.0
+ '@jest/environment': 30.0.2
+ '@jest/fake-timers': 30.0.2
+ '@jest/globals': 30.0.2
+ '@jest/source-map': 30.0.1
+ '@jest/test-result': 30.0.2
+ '@jest/transform': 30.0.2
+ '@jest/types': 30.0.1
'@types/node': 22.13.9
chalk: 4.1.2
cjs-module-lexer: 2.1.0
collect-v8-coverage: 1.0.2
glob: 10.4.5
graceful-fs: 4.2.11
- jest-haste-map: 30.0.0
- jest-message-util: 30.0.0
- jest-mock: 30.0.0
- jest-regex-util: 30.0.0
- jest-resolve: 30.0.0
- jest-snapshot: 30.0.0
- jest-util: 30.0.0
+ jest-haste-map: 30.0.2
+ jest-message-util: 30.0.2
+ jest-mock: 30.0.2
+ jest-regex-util: 30.0.1
+ jest-resolve: 30.0.2
+ jest-snapshot: 30.0.2
+ jest-util: 30.0.2
slash: 3.0.0
strip-bom: 4.0.0
transitivePeerDependencies:
- supports-color
- jest-snapshot@30.0.0:
+ jest-snapshot@30.0.2:
dependencies:
'@babel/core': 7.27.4
'@babel/generator': 7.27.5
'@babel/plugin-syntax-jsx': 7.27.1(@babel/core@7.27.4)
'@babel/plugin-syntax-typescript': 7.27.1(@babel/core@7.27.4)
'@babel/types': 7.27.6
- '@jest/expect-utils': 30.0.0
- '@jest/get-type': 30.0.0
- '@jest/snapshot-utils': 30.0.0
- '@jest/transform': 30.0.0
- '@jest/types': 30.0.0
+ '@jest/expect-utils': 30.0.2
+ '@jest/get-type': 30.0.1
+ '@jest/snapshot-utils': 30.0.1
+ '@jest/transform': 30.0.2
+ '@jest/types': 30.0.1
babel-preset-current-node-syntax: 1.1.0(@babel/core@7.27.4)
chalk: 4.1.2
- expect: 30.0.0
+ expect: 30.0.2
graceful-fs: 4.2.11
- jest-diff: 30.0.0
- jest-matcher-utils: 30.0.0
- jest-message-util: 30.0.0
- jest-util: 30.0.0
- pretty-format: 30.0.0
+ jest-diff: 30.0.2
+ jest-matcher-utils: 30.0.2
+ jest-message-util: 30.0.2
+ jest-util: 30.0.2
+ pretty-format: 30.0.2
semver: 7.7.2
synckit: 0.11.8
transitivePeerDependencies:
@@ -9709,40 +9999,49 @@ snapshots:
graceful-fs: 4.2.11
picomatch: 4.0.2
- jest-validate@30.0.0:
+ jest-util@30.0.2:
dependencies:
- '@jest/get-type': 30.0.0
- '@jest/types': 30.0.0
+ '@jest/types': 30.0.1
+ '@types/node': 22.13.9
+ chalk: 4.1.2
+ ci-info: 4.2.0
+ graceful-fs: 4.2.11
+ picomatch: 4.0.2
+
+ jest-validate@30.0.2:
+ dependencies:
+ '@jest/get-type': 30.0.1
+ '@jest/types': 30.0.1
camelcase: 6.3.0
chalk: 4.1.2
leven: 3.1.0
- pretty-format: 30.0.0
+ pretty-format: 30.0.2
- jest-watcher@30.0.0:
+ jest-watcher@30.0.2:
dependencies:
- '@jest/test-result': 30.0.0
- '@jest/types': 30.0.0
+ '@jest/test-result': 30.0.2
+ '@jest/types': 30.0.1
'@types/node': 22.13.9
ansi-escapes: 4.3.2
chalk: 4.1.2
emittery: 0.13.1
- jest-util: 30.0.0
+ jest-util: 30.0.2
string-length: 4.0.2
- jest-worker@30.0.0:
+ jest-worker@30.0.2:
dependencies:
'@types/node': 22.13.9
'@ungap/structured-clone': 1.3.0
- jest-util: 30.0.0
+ jest-util: 30.0.2
merge-stream: 2.0.0
supports-color: 8.1.1
- jest@30.0.0(@types/node@22.13.9)(ts-node@10.9.2(@types/node@22.13.9)(typescript@5.8.3)):
+ jest@30.0.2(@types/node@22.13.9)(ts-node@10.9.2(@types/node@22.13.9)(typescript@5.8.3)):
dependencies:
- '@jest/core': 30.0.0(ts-node@10.9.2(@types/node@22.13.9)(typescript@5.8.3))
- '@jest/types': 30.0.0
+ '@jest/core': 30.0.2(ts-node@10.9.2(@types/node@22.13.9)(typescript@5.8.3))
+ '@jest/types': 30.0.1
import-local: 3.2.0
- jest-cli: 30.0.0(@types/node@22.13.9)(ts-node@10.9.2(@types/node@22.13.9)(typescript@5.8.3))
+ jest-cli: 30.0.2(@types/node@22.13.9)(ts-node@10.9.2(@types/node@22.13.9)(typescript@5.8.3))
transitivePeerDependencies:
- '@types/node'
- babel-plugin-macros
@@ -9828,7 +10127,7 @@ snapshots:
dependencies:
json-buffer: 3.0.1
- knip@5.61.1(@types/node@22.13.9)(typescript@5.8.3):
+ knip@5.61.2(@types/node@22.13.9)(typescript@5.8.3):
dependencies:
'@nodelib/fs.walk': 1.2.8
'@types/node': 22.13.9
@@ -9844,7 +10143,7 @@ snapshots:
strip-json-comments: 5.0.2
typescript: 5.8.3
zod: 3.25.67
- zod-validation-error: 3.5.1(zod@3.25.67)
+ zod-validation-error: 3.5.2(zod@3.25.67)
language-subtag-registry@0.3.23: {}
@@ -10348,7 +10647,7 @@ snapshots:
micromark@4.0.1:
dependencies:
'@types/debug': 4.1.12
- debug: 4.4.0
+ debug: 4.4.1
decode-named-character-reference: 1.0.2
devlop: 1.1.0
micromark-core-commonmark: 2.0.2
@@ -10688,11 +10987,11 @@ snapshots:
prelude-ls@1.2.1: {}
- prettier-plugin-tailwindcss@0.6.12(prettier@3.5.3):
+ prettier-plugin-tailwindcss@0.6.13(prettier@3.6.0):
dependencies:
- prettier: 3.5.3
+ prettier: 3.6.0
- prettier@3.5.3: {}
+ prettier@3.6.0: {}
pretty-format@30.0.0:
dependencies:
@@ -10700,6 +10999,12 @@ snapshots:
ansi-styles: 5.2.0
react-is: 18.3.1
+ pretty-format@30.0.2:
+ dependencies:
+ '@jest/schemas': 30.0.1
+ ansi-styles: 5.2.0
+ react-is: 18.3.1
+
prisma@6.10.0(typescript@5.8.3):
dependencies:
'@prisma/config': 6.10.0
@@ -11020,7 +11325,7 @@ snapshots:
path-parse: 1.0.7
supports-preserve-symlinks-flag: 1.0.0
- reusify@1.0.4: {}
+ reusify@1.1.0: {}
rimraf@3.0.2:
dependencies:
@@ -11635,6 +11940,30 @@ snapshots:
'@unrs/resolver-binding-win32-ia32-msvc': 1.9.0
'@unrs/resolver-binding-win32-x64-msvc': 1.9.0
+ unrs-resolver@1.9.1:
+ dependencies:
+ napi-postinstall: 0.2.4
+ optionalDependencies:
+ '@unrs/resolver-binding-android-arm-eabi': 1.9.1
+ '@unrs/resolver-binding-android-arm64': 1.9.1
+ '@unrs/resolver-binding-darwin-arm64': 1.9.1
+ '@unrs/resolver-binding-darwin-x64': 1.9.1
+ '@unrs/resolver-binding-freebsd-x64': 1.9.1
+ '@unrs/resolver-binding-linux-arm-gnueabihf': 1.9.1
+ '@unrs/resolver-binding-linux-arm-musleabihf': 1.9.1
+ '@unrs/resolver-binding-linux-arm64-gnu': 1.9.1
+ '@unrs/resolver-binding-linux-arm64-musl': 1.9.1
+ '@unrs/resolver-binding-linux-ppc64-gnu': 1.9.1
+ '@unrs/resolver-binding-linux-riscv64-gnu': 1.9.1
+ '@unrs/resolver-binding-linux-riscv64-musl': 1.9.1
+ '@unrs/resolver-binding-linux-s390x-gnu': 1.9.1
+ '@unrs/resolver-binding-linux-x64-gnu': 1.9.1
+ '@unrs/resolver-binding-linux-x64-musl': 1.9.1
+ '@unrs/resolver-binding-wasm32-wasi': 1.9.1
+ '@unrs/resolver-binding-win32-arm64-msvc': 1.9.1
+ '@unrs/resolver-binding-win32-ia32-msvc': 1.9.1
+ '@unrs/resolver-binding-win32-x64-msvc': 1.9.1
+
update-browserslist-db@1.1.3(browserslist@4.25.0):
dependencies:
browserslist: 4.25.0
@@ -11943,7 +12272,7 @@ snapshots:
'@rvf/set-get': 7.0.1
zod: 3.25.67
- zod-validation-error@3.5.1(zod@3.25.67):
+ zod-validation-error@3.5.2(zod@3.25.67):
dependencies:
zod: 3.25.67
diff --git a/prisma/migrations/20250624154707_add_disable_small_screen_overlay/migration.sql b/prisma/migrations/20250624154707_add_disable_small_screen_overlay/migration.sql
new file mode 100644
index 000000000..593c59396
--- /dev/null
+++ b/prisma/migrations/20250624154707_add_disable_small_screen_overlay/migration.sql
@@ -0,0 +1,2 @@
+-- AlterEnum
+ALTER TYPE "AppSetting" ADD VALUE 'disableSmallScreenOverlay';
\ No newline at end of file
diff --git a/prisma/migrations/migration_lock.toml b/prisma/migrations/migration_lock.toml
index fbffa92c2..044d57cdb 100644
--- a/prisma/migrations/migration_lock.toml
+++ b/prisma/migrations/migration_lock.toml
@@ -1,3 +1,3 @@
# Please do not edit this file manually
-# It should be added in your version-control system (i.e. Git)
-provider = "postgresql"
\ No newline at end of file
+# It should be added in your version-control system (e.g., Git)
+provider = "postgresql"
diff --git a/prisma/schema.prisma b/prisma/schema.prisma
index d3526071b..e5d87ed38 100644
--- a/prisma/schema.prisma
+++ b/prisma/schema.prisma
@@ -97,6 +97,7 @@ enum AppSetting {
initializedAt
installationId
disableAnalytics
+ disableSmallScreenOverlay
uploadThingToken
}
diff --git a/schemas/__tests__/appSettings.test.ts b/schemas/__tests__/appSettings.test.ts
index 9b52b395f..7800a8c4a 100644
--- a/schemas/__tests__/appSettings.test.ts
+++ b/schemas/__tests__/appSettings.test.ts
@@ -7,20 +7,6 @@ import {
describe('App Settings Schema Validators', () => {
describe('App Setting Schema', () => {
- it('should allow valid settings', () => {
- const validSettings = {
- configured: true,
- allowAnonymousRecruitment: false,
- limitInterviews: true,
- initializedAt: new Date(),
- installationId: 'installation123',
- disableAnalytics: true,
- uploadThingToken: 'ABCD1234Token',
- };
-
- expect(appSettingsSchema.parse(validSettings)).toEqual(validSettings);
- });
-
it('should reject missing required fields', () => {
const invalidSettings = {
allowAnonymousRecruitment: false,
@@ -112,6 +98,7 @@ describe('App Settings Schema Validators', () => {
initializedAt: new Date('2023-10-01T00:00:00.000Z'),
installationId: 'installation123',
disableAnalytics: true,
+ disableSmallScreenOverlay: false,
});
});
@@ -132,6 +119,7 @@ describe('App Settings Schema Validators', () => {
initializedAt: new Date('2023-10-01T00:00:00.000Z'),
installationId: 'installation123',
disableAnalytics: true,
+ disableSmallScreenOverlay: false,
});
});
});
diff --git a/schemas/appSettings.ts b/schemas/appSettings.ts
index a9939b232..4eb1be72b 100644
--- a/schemas/appSettings.ts
+++ b/schemas/appSettings.ts
@@ -10,6 +10,7 @@ export const appSettingsSchema = z
uploadThingToken: z.string(),
installationId: z.string(),
disableAnalytics: z.boolean(),
+ disableSmallScreenOverlay: z.boolean(),
})
.strict();
@@ -31,6 +32,10 @@ export const appSettingPreprocessedSchema = appSettingsSchema.extend({
),
limitInterviews: z.preprocess(parseBoolean, z.boolean().default(false)),
disableAnalytics: z.preprocess(parseBoolean, z.boolean().default(false)),
+ disableSmallScreenOverlay: z.preprocess(
+ parseBoolean,
+ z.boolean().default(false),
+ ),
uploadThingToken: z.string().optional(),
installationId: z.string().optional(),
});
diff --git a/utils/db.ts b/utils/db.ts
index 16eb961d2..e63f07dff 100644
--- a/utils/db.ts
+++ b/utils/db.ts
@@ -4,18 +4,6 @@ import { env } from '~/env';
const createPrismaClient = () =>
new PrismaClient({
log: env.NODE_ENV === 'development' ? ['error', 'warn'] : ['error'],
- }).$extends({
- query: {
- async $allOperations({ args, query }) {
- if (env.NODE_ENV === 'development') {
- // Add artificial DB delay in development
- await new Promise((resolve) => setTimeout(resolve, 1000));
- }
-
- // eslint-disable-next-line @typescript-eslint/no-unsafe-return
- return query(args);
- },
- },
});
const globalForPrisma = globalThis as unknown as {