Comment out Sentry since it doesn't work on v2 and adding pagination.

This commit is contained in:
Bradley Shellnut 2024-01-30 17:57:36 -08:00
parent 386d4e7e3a
commit 6a66a51085
15 changed files with 688 additions and 177 deletions

View file

@ -33,11 +33,11 @@
"@sveltejs/adapter-auto": "^3.1.1", "@sveltejs/adapter-auto": "^3.1.1",
"@sveltejs/enhanced-img": "^0.1.8", "@sveltejs/enhanced-img": "^0.1.8",
"@sveltejs/kit": "^2.5.0", "@sveltejs/kit": "^2.5.0",
"@sveltejs/vite-plugin-svelte": "^3.0.0", "@sveltejs/vite-plugin-svelte": "^3.0.2",
"@types/cookie": "^0.5.4", "@types/cookie": "^0.5.4",
"@types/node": "^18.19.10", "@types/node": "^18.19.10",
"@typescript-eslint/eslint-plugin": "^6.19.1", "@typescript-eslint/eslint-plugin": "^6.20.0",
"@typescript-eslint/parser": "^6.19.1", "@typescript-eslint/parser": "^6.20.0",
"autoprefixer": "^10.4.17", "autoprefixer": "^10.4.17",
"eslint": "^8.56.0", "eslint": "^8.56.0",
"eslint-config-prettier": "^9.1.0", "eslint-config-prettier": "^9.1.0",
@ -52,7 +52,7 @@
"prettier-plugin-svelte": "^3.1.2", "prettier-plugin-svelte": "^3.1.2",
"prisma": "^5.8.1", "prisma": "^5.8.1",
"sass": "^1.70.0", "sass": "^1.70.0",
"satori": "^0.10.11", "satori": "^0.10.13",
"satori-html": "^0.3.2", "satori-html": "^0.3.2",
"svelte": "^4.2.9", "svelte": "^4.2.9",
"svelte-check": "^3.6.3", "svelte-check": "^3.6.3",
@ -78,7 +78,7 @@
"@fontsource/fira-mono": "^4.5.10", "@fontsource/fira-mono": "^4.5.10",
"@iconify-icons/line-md": "^1.2.26", "@iconify-icons/line-md": "^1.2.26",
"@iconify-icons/mdi": "^1.2.47", "@iconify-icons/mdi": "^1.2.47",
"@lucia-auth/adapter-prisma": "4.0.0-beta.10", "@lucia-auth/adapter-prisma": "4.0.0",
"@lukeed/uuid": "^2.0.1", "@lukeed/uuid": "^2.0.1",
"@paralleldrive/cuid2": "^2.2.2", "@paralleldrive/cuid2": "^2.2.2",
"@prisma/client": "^5.8.1", "@prisma/client": "^5.8.1",
@ -89,7 +89,7 @@
"bits-ui": "^0.15.1", "bits-ui": "^0.15.1",
"boardgamegeekclient": "^1.9.1", "boardgamegeekclient": "^1.9.1",
"class-variance-authority": "^0.7.0", "class-variance-authority": "^0.7.0",
"clsx": "^2.0.0", "clsx": "^2.1.0",
"cookie": "^0.5.0", "cookie": "^0.5.0",
"feather-icons": "^4.29.1", "feather-icons": "^4.29.1",
"formsnap": "^0.4.3", "formsnap": "^0.4.3",
@ -97,16 +97,16 @@
"iconify-icon": "^1.0.8", "iconify-icon": "^1.0.8",
"just-kebab-case": "^4.2.0", "just-kebab-case": "^4.2.0",
"loader": "^2.1.1", "loader": "^2.1.1",
"lucia": "3.0.0-beta.15", "lucia": "3.0.1",
"lucide-svelte": "^0.298.0", "lucide-svelte": "^0.298.0",
"open-props": "^1.6.17", "open-props": "^1.6.18",
"oslo": "^1.0.1", "oslo": "^1.0.3",
"radix-svelte": "^0.9.0", "radix-svelte": "^0.9.0",
"svelte-french-toast": "^1.2.0", "svelte-french-toast": "^1.2.0",
"svelte-lazy-loader": "^1.0.0", "svelte-lazy-loader": "^1.0.0",
"tailwind-merge": "^2.2.1", "tailwind-merge": "^2.2.1",
"tailwind-variants": "^0.1.19", "tailwind-variants": "^0.1.20",
"tailwindcss-animate": "^1.0.6", "tailwindcss-animate": "^1.0.6",
"zod-to-json-schema": "^3.22.3" "zod-to-json-schema": "^3.22.4"
} }
} }

View file

@ -15,8 +15,8 @@ dependencies:
specifier: ^1.2.47 specifier: ^1.2.47
version: 1.2.48 version: 1.2.48
'@lucia-auth/adapter-prisma': '@lucia-auth/adapter-prisma':
specifier: 4.0.0-beta.10 specifier: 4.0.0
version: 4.0.0-beta.10(@prisma/client@5.8.1)(lucia@3.0.0-beta.15) version: 4.0.0(@prisma/client@5.8.1)(lucia@3.0.1)
'@lukeed/uuid': '@lukeed/uuid':
specifier: ^2.0.1 specifier: ^2.0.1
version: 2.0.1 version: 2.0.1
@ -48,8 +48,8 @@ dependencies:
specifier: ^0.7.0 specifier: ^0.7.0
version: 0.7.0 version: 0.7.0
clsx: clsx:
specifier: ^2.0.0 specifier: ^2.1.0
version: 2.0.0 version: 2.1.0
cookie: cookie:
specifier: ^0.5.0 specifier: ^0.5.0
version: 0.5.0 version: 0.5.0
@ -72,17 +72,17 @@ dependencies:
specifier: ^2.1.1 specifier: ^2.1.1
version: 2.1.1 version: 2.1.1
lucia: lucia:
specifier: 3.0.0-beta.15 specifier: 3.0.1
version: 3.0.0-beta.15 version: 3.0.1
lucide-svelte: lucide-svelte:
specifier: ^0.298.0 specifier: ^0.298.0
version: 0.298.0(svelte@4.2.9) version: 0.298.0(svelte@4.2.9)
open-props: open-props:
specifier: ^1.6.17 specifier: ^1.6.18
version: 1.6.17 version: 1.6.18
oslo: oslo:
specifier: ^1.0.1 specifier: ^1.0.3
version: 1.0.1 version: 1.0.3
radix-svelte: radix-svelte:
specifier: ^0.9.0 specifier: ^0.9.0
version: 0.9.0(svelte@4.2.9) version: 0.9.0(svelte@4.2.9)
@ -96,14 +96,14 @@ dependencies:
specifier: ^2.2.1 specifier: ^2.2.1
version: 2.2.1 version: 2.2.1
tailwind-variants: tailwind-variants:
specifier: ^0.1.19 specifier: ^0.1.20
version: 0.1.19(tailwindcss@3.4.1) version: 0.1.20(tailwindcss@3.4.1)
tailwindcss-animate: tailwindcss-animate:
specifier: ^1.0.6 specifier: ^1.0.6
version: 1.0.7(tailwindcss@3.4.1) version: 1.0.7(tailwindcss@3.4.1)
zod-to-json-schema: zod-to-json-schema:
specifier: ^3.22.3 specifier: ^3.22.4
version: 3.22.3(zod@3.22.4) version: 3.22.4(zod@3.22.4)
devDependencies: devDependencies:
'@melt-ui/pp': '@melt-ui/pp':
@ -126,10 +126,10 @@ devDependencies:
version: 0.1.8(svelte@4.2.9) version: 0.1.8(svelte@4.2.9)
'@sveltejs/kit': '@sveltejs/kit':
specifier: ^2.5.0 specifier: ^2.5.0
version: 2.5.0(@sveltejs/vite-plugin-svelte@3.0.1)(svelte@4.2.9)(vite@5.0.12) version: 2.5.0(@sveltejs/vite-plugin-svelte@3.0.2)(svelte@4.2.9)(vite@5.0.12)
'@sveltejs/vite-plugin-svelte': '@sveltejs/vite-plugin-svelte':
specifier: ^3.0.0 specifier: ^3.0.2
version: 3.0.1(svelte@4.2.9)(vite@5.0.12) version: 3.0.2(svelte@4.2.9)(vite@5.0.12)
'@types/cookie': '@types/cookie':
specifier: ^0.5.4 specifier: ^0.5.4
version: 0.5.4 version: 0.5.4
@ -137,11 +137,11 @@ devDependencies:
specifier: ^18.19.10 specifier: ^18.19.10
version: 18.19.10 version: 18.19.10
'@typescript-eslint/eslint-plugin': '@typescript-eslint/eslint-plugin':
specifier: ^6.19.1 specifier: ^6.20.0
version: 6.19.1(@typescript-eslint/parser@6.19.1)(eslint@8.56.0)(typescript@5.3.3) version: 6.20.0(@typescript-eslint/parser@6.20.0)(eslint@8.56.0)(typescript@5.3.3)
'@typescript-eslint/parser': '@typescript-eslint/parser':
specifier: ^6.19.1 specifier: ^6.20.0
version: 6.19.1(eslint@8.56.0)(typescript@5.3.3) version: 6.20.0(eslint@8.56.0)(typescript@5.3.3)
autoprefixer: autoprefixer:
specifier: ^10.4.17 specifier: ^10.4.17
version: 10.4.17(postcss@8.4.33) version: 10.4.17(postcss@8.4.33)
@ -185,8 +185,8 @@ devDependencies:
specifier: ^1.70.0 specifier: ^1.70.0
version: 1.70.0 version: 1.70.0
satori: satori:
specifier: ^0.10.11 specifier: ^0.10.13
version: 0.10.11 version: 0.10.13
satori-html: satori-html:
specifier: ^0.3.2 specifier: ^0.3.2
version: 0.3.2 version: 0.3.2
@ -1432,14 +1432,14 @@ packages:
'@jridgewell/resolve-uri': 3.1.1 '@jridgewell/resolve-uri': 3.1.1
'@jridgewell/sourcemap-codec': 1.4.15 '@jridgewell/sourcemap-codec': 1.4.15
/@lucia-auth/adapter-prisma@4.0.0-beta.10(@prisma/client@5.8.1)(lucia@3.0.0-beta.15): /@lucia-auth/adapter-prisma@4.0.0(@prisma/client@5.8.1)(lucia@3.0.1):
resolution: {integrity: sha512-ouXEi5ibiXPpCIfVTVNpQLh7B0BUHhNO1SWVn6FSlqmWUDPeNMuJLu98lLGwVG04ifinqADyJgmkhBAN7r5ICA==} resolution: {integrity: sha512-TJg4/U1K1slS4A/OzDYCgmHTrIArntIynue14zGIEaMDu+OD+tGyq9WwQWqOabpx2Gm9xtDsoK+tTokAY3Up7A==}
peerDependencies: peerDependencies:
'@prisma/client': ^4.2.0 || ^5.0.0 '@prisma/client': ^4.2.0 || ^5.0.0
lucia: 3.0.0-beta.15 lucia: 3.x
dependencies: dependencies:
'@prisma/client': 5.8.1(prisma@5.8.1) '@prisma/client': 5.8.1(prisma@5.8.1)
lucia: 3.0.0-beta.15 lucia: 3.0.1
dev: false dev: false
/@lukeed/csprng@1.1.0: /@lukeed/csprng@1.1.0:
@ -1528,6 +1528,15 @@ packages:
engines: {node: '>= 16'} engines: {node: '>= 16'}
dev: false dev: false
/@node-rs/argon2-android-arm-eabi@1.7.0:
resolution: {integrity: sha512-udDqkr5P9E+wYX1SZwAVPdyfYvaF4ry9Tm+R9LkfSHbzWH0uhU6zjIwNRp7m+n4gx691rk+lqqDAIP8RLKwbhg==}
engines: {node: '>= 10'}
cpu: [arm]
os: [android]
requiresBuild: true
dev: false
optional: true
/@node-rs/argon2-android-arm-eabi@1.7.2: /@node-rs/argon2-android-arm-eabi@1.7.2:
resolution: {integrity: sha512-WhW84XOzdR4AOGc4BJvIg5lCRVBL0pXp/PPCe8QCyWw493p7VdNCdYpr2xdtjS/0zImmY85HNB/6zpzjLRTT/A==} resolution: {integrity: sha512-WhW84XOzdR4AOGc4BJvIg5lCRVBL0pXp/PPCe8QCyWw493p7VdNCdYpr2xdtjS/0zImmY85HNB/6zpzjLRTT/A==}
engines: {node: '>= 10'} engines: {node: '>= 10'}
@ -1537,6 +1546,15 @@ packages:
dev: false dev: false
optional: true optional: true
/@node-rs/argon2-android-arm64@1.7.0:
resolution: {integrity: sha512-s9j/G30xKUx8WU50WIhF0fIl1EdhBGq0RQ06lEhZ0Gi0ap8lhqbE2Bn5h3/G2D1k0Dx+yjeVVNmt/xOQIRG38A==}
engines: {node: '>= 10'}
cpu: [arm64]
os: [android]
requiresBuild: true
dev: false
optional: true
/@node-rs/argon2-android-arm64@1.7.2: /@node-rs/argon2-android-arm64@1.7.2:
resolution: {integrity: sha512-CdtayHSMIyDuVhSYFirwA757c4foQuyTjpysgFJLHweP9C7uDiBf9WBYij+UyabpaCadJ0wPyK6Vakinvlk4/g==} resolution: {integrity: sha512-CdtayHSMIyDuVhSYFirwA757c4foQuyTjpysgFJLHweP9C7uDiBf9WBYij+UyabpaCadJ0wPyK6Vakinvlk4/g==}
engines: {node: '>= 10'} engines: {node: '>= 10'}
@ -1546,6 +1564,15 @@ packages:
dev: false dev: false
optional: true optional: true
/@node-rs/argon2-darwin-arm64@1.7.0:
resolution: {integrity: sha512-ZIz4L6HGOB9U1kW23g+m7anGNuTZ0RuTw0vNp3o+2DWpb8u8rODq6A8tH4JRL79S+Co/Nq608m9uackN2pe0Rw==}
engines: {node: '>= 10'}
cpu: [arm64]
os: [darwin]
requiresBuild: true
dev: false
optional: true
/@node-rs/argon2-darwin-arm64@1.7.2: /@node-rs/argon2-darwin-arm64@1.7.2:
resolution: {integrity: sha512-hUOhtgYHTEyzX5sgMZVdXunONOus2HWpWydF5D/RYJ1mZ76FXRnFpQE40DqbzisdPIraKdn40m7JqkPP7wqdyg==} resolution: {integrity: sha512-hUOhtgYHTEyzX5sgMZVdXunONOus2HWpWydF5D/RYJ1mZ76FXRnFpQE40DqbzisdPIraKdn40m7JqkPP7wqdyg==}
engines: {node: '>= 10'} engines: {node: '>= 10'}
@ -1555,6 +1582,15 @@ packages:
dev: false dev: false
optional: true optional: true
/@node-rs/argon2-darwin-x64@1.7.0:
resolution: {integrity: sha512-5oi/pxqVhODW/pj1+3zElMTn/YukQeywPHHYDbcAW3KsojFjKySfhcJMd1DjKTc+CHQI+4lOxZzSUzK7mI14Hw==}
engines: {node: '>= 10'}
cpu: [x64]
os: [darwin]
requiresBuild: true
dev: false
optional: true
/@node-rs/argon2-darwin-x64@1.7.2: /@node-rs/argon2-darwin-x64@1.7.2:
resolution: {integrity: sha512-lfs5HX+t542yUfcv6Aa/NeGD1nUCwyQNgnPEGcik71Ow6V13hkR1bHgmT1u3CHN4fBts0gW+DQEDsq1xlVgkvw==} resolution: {integrity: sha512-lfs5HX+t542yUfcv6Aa/NeGD1nUCwyQNgnPEGcik71Ow6V13hkR1bHgmT1u3CHN4fBts0gW+DQEDsq1xlVgkvw==}
engines: {node: '>= 10'} engines: {node: '>= 10'}
@ -1564,6 +1600,15 @@ packages:
dev: false dev: false
optional: true optional: true
/@node-rs/argon2-freebsd-x64@1.7.0:
resolution: {integrity: sha512-Ify08683hA4QVXYoIm5SUWOY5DPIT/CMB0CQT+IdxQAg/F+qp342+lUkeAtD5bvStQuCx/dFO3bnnzoe2clMhA==}
engines: {node: '>= 10'}
cpu: [x64]
os: [freebsd]
requiresBuild: true
dev: false
optional: true
/@node-rs/argon2-freebsd-x64@1.7.2: /@node-rs/argon2-freebsd-x64@1.7.2:
resolution: {integrity: sha512-ROoF+4VaCBJUjddrTN1hjuqSl89ppRcjVXJscSPJjWzTlbzFmGGovJvIzUBmCr/Oq3yM1zKHj6MP9oRD5cB+/g==} resolution: {integrity: sha512-ROoF+4VaCBJUjddrTN1hjuqSl89ppRcjVXJscSPJjWzTlbzFmGGovJvIzUBmCr/Oq3yM1zKHj6MP9oRD5cB+/g==}
engines: {node: '>= 10'} engines: {node: '>= 10'}
@ -1573,6 +1618,15 @@ packages:
dev: false dev: false
optional: true optional: true
/@node-rs/argon2-linux-arm-gnueabihf@1.7.0:
resolution: {integrity: sha512-7DjDZ1h5AUHAtRNjD19RnQatbhL+uuxBASuuXIBu4/w6Dx8n7YPxwTP4MXfsvuRgKuMWiOb/Ub/HJ3kXVCXRkg==}
engines: {node: '>= 10'}
cpu: [arm]
os: [linux]
requiresBuild: true
dev: false
optional: true
/@node-rs/argon2-linux-arm-gnueabihf@1.7.2: /@node-rs/argon2-linux-arm-gnueabihf@1.7.2:
resolution: {integrity: sha512-CBSB8KPI8LS74Bcz3dYaa2/khULutz4vSDvFWUERlSLX+mPdDhoZi6UPuUPPF9e01w8AbiK1YCqlLUTm3tIMfw==} resolution: {integrity: sha512-CBSB8KPI8LS74Bcz3dYaa2/khULutz4vSDvFWUERlSLX+mPdDhoZi6UPuUPPF9e01w8AbiK1YCqlLUTm3tIMfw==}
engines: {node: '>= 10'} engines: {node: '>= 10'}
@ -1582,6 +1636,15 @@ packages:
dev: false dev: false
optional: true optional: true
/@node-rs/argon2-linux-arm64-gnu@1.7.0:
resolution: {integrity: sha512-nJDoMP4Y3YcqGswE4DvP080w6O24RmnFEDnL0emdI8Nou17kNYBzP2546Nasx9GCyLzRcYQwZOUjrtUuQ+od2g==}
engines: {node: '>= 10'}
cpu: [arm64]
os: [linux]
requiresBuild: true
dev: false
optional: true
/@node-rs/argon2-linux-arm64-gnu@1.7.2: /@node-rs/argon2-linux-arm64-gnu@1.7.2:
resolution: {integrity: sha512-6LBTug6ZiWFakP3X3Nqs7ZTM03gmcSWX4YvEn20HhhQE5NDrsrw3zNqGj0cJiNzKKIMSDDuj7uGy+ITEfNo4CA==} resolution: {integrity: sha512-6LBTug6ZiWFakP3X3Nqs7ZTM03gmcSWX4YvEn20HhhQE5NDrsrw3zNqGj0cJiNzKKIMSDDuj7uGy+ITEfNo4CA==}
engines: {node: '>= 10'} engines: {node: '>= 10'}
@ -1591,6 +1654,15 @@ packages:
dev: false dev: false
optional: true optional: true
/@node-rs/argon2-linux-arm64-musl@1.7.0:
resolution: {integrity: sha512-BKWS8iVconhE3jrb9mj6t1J9vwUqQPpzCbUKxfTGJfc+kNL58F1SXHBoe2cDYGnHrFEHTY0YochzXoAfm4Dm/A==}
engines: {node: '>= 10'}
cpu: [arm64]
os: [linux]
requiresBuild: true
dev: false
optional: true
/@node-rs/argon2-linux-arm64-musl@1.7.2: /@node-rs/argon2-linux-arm64-musl@1.7.2:
resolution: {integrity: sha512-KjhQ+ZPne29t9VRVeIif7JdKwQba+tM6CBNYBoJB1iON0CUKeqSQtZcHuTj9gkf2SNRG5bsU4ABcfxd0OKsKHg==} resolution: {integrity: sha512-KjhQ+ZPne29t9VRVeIif7JdKwQba+tM6CBNYBoJB1iON0CUKeqSQtZcHuTj9gkf2SNRG5bsU4ABcfxd0OKsKHg==}
engines: {node: '>= 10'} engines: {node: '>= 10'}
@ -1600,6 +1672,15 @@ packages:
dev: false dev: false
optional: true optional: true
/@node-rs/argon2-linux-x64-gnu@1.7.0:
resolution: {integrity: sha512-EmgqZOlf4Jurk/szW1iTsVISx25bKksVC5uttJDUloTgsAgIGReCpUUO1R24pBhu9ESJa47iv8NSf3yAfGv6jQ==}
engines: {node: '>= 10'}
cpu: [x64]
os: [linux]
requiresBuild: true
dev: false
optional: true
/@node-rs/argon2-linux-x64-gnu@1.7.2: /@node-rs/argon2-linux-x64-gnu@1.7.2:
resolution: {integrity: sha512-BQvp+iLtKqomHz4q5t1aKoni9osgvUDU5sZtHAlFm5dRTlGHnympcQVATRE5GHyH9C6MIM9W7P1kqEeCLGPolQ==} resolution: {integrity: sha512-BQvp+iLtKqomHz4q5t1aKoni9osgvUDU5sZtHAlFm5dRTlGHnympcQVATRE5GHyH9C6MIM9W7P1kqEeCLGPolQ==}
engines: {node: '>= 10'} engines: {node: '>= 10'}
@ -1609,6 +1690,15 @@ packages:
dev: false dev: false
optional: true optional: true
/@node-rs/argon2-linux-x64-musl@1.7.0:
resolution: {integrity: sha512-/o1efYCYIxjfuoRYyBTi2Iy+1iFfhqHCvvVsnjNSgO1xWiWrX0Rrt/xXW5Zsl7vS2Y+yu8PL8KFWRzZhaVxfKA==}
engines: {node: '>= 10'}
cpu: [x64]
os: [linux]
requiresBuild: true
dev: false
optional: true
/@node-rs/argon2-linux-x64-musl@1.7.2: /@node-rs/argon2-linux-x64-musl@1.7.2:
resolution: {integrity: sha512-yXJudpBZQ98g+lWaHn9EzZ5KsAyqRdlpub/K+5NP7gHehb8wzBRIFAejIHAG0fvzQEEc86VOnV2koWIVZxWAvw==} resolution: {integrity: sha512-yXJudpBZQ98g+lWaHn9EzZ5KsAyqRdlpub/K+5NP7gHehb8wzBRIFAejIHAG0fvzQEEc86VOnV2koWIVZxWAvw==}
engines: {node: '>= 10'} engines: {node: '>= 10'}
@ -1618,6 +1708,19 @@ packages:
dev: false dev: false
optional: true optional: true
/@node-rs/argon2-wasm32-wasi@1.7.0:
resolution: {integrity: sha512-Evmk9VcxqnuwQftfAfYEr6YZYSPLzmKUsbFIMep5nTt9PT4XYRFAERj7wNYp+rOcBenF3X4xoB+LhwcOMTNE5w==}
engines: {node: '>=14.0.0'}
cpu: [wasm32]
requiresBuild: true
dependencies:
'@emnapi/core': 0.45.0
'@emnapi/runtime': 0.45.0
'@tybys/wasm-util': 0.8.1
memfs-browser: 3.5.10302
dev: false
optional: true
/@node-rs/argon2-wasm32-wasi@1.7.2: /@node-rs/argon2-wasm32-wasi@1.7.2:
resolution: {integrity: sha512-diXlVjJZY2GIV8ZDwUqXPhacXsFR0klGSv5D9f+XidwWXK4udtzDhkM/7N/Mb7h1HAWaxZ6IN9spYFjvWH1wqg==} resolution: {integrity: sha512-diXlVjJZY2GIV8ZDwUqXPhacXsFR0klGSv5D9f+XidwWXK4udtzDhkM/7N/Mb7h1HAWaxZ6IN9spYFjvWH1wqg==}
engines: {node: '>=14.0.0'} engines: {node: '>=14.0.0'}
@ -1628,6 +1731,15 @@ packages:
dev: false dev: false
optional: true optional: true
/@node-rs/argon2-win32-arm64-msvc@1.7.0:
resolution: {integrity: sha512-qgsU7T004COWWpSA0tppDqDxbPLgg8FaU09krIJ7FBl71Sz8SFO40h7fDIjfbTT5w7u6mcaINMQ5bSHu75PCaA==}
engines: {node: '>= 10'}
cpu: [arm64]
os: [win32]
requiresBuild: true
dev: false
optional: true
/@node-rs/argon2-win32-arm64-msvc@1.7.2: /@node-rs/argon2-win32-arm64-msvc@1.7.2:
resolution: {integrity: sha512-dhIBrY04P9nbmwzBpgERQDmmSu4YBZyeEE32t4TikMz5rQ07iaVC+JpGmtCBZoDIsLDHGC8cikENd3YEqpqIcA==} resolution: {integrity: sha512-dhIBrY04P9nbmwzBpgERQDmmSu4YBZyeEE32t4TikMz5rQ07iaVC+JpGmtCBZoDIsLDHGC8cikENd3YEqpqIcA==}
engines: {node: '>= 10'} engines: {node: '>= 10'}
@ -1637,6 +1749,15 @@ packages:
dev: false dev: false
optional: true optional: true
/@node-rs/argon2-win32-ia32-msvc@1.7.0:
resolution: {integrity: sha512-JGafwWYQ/HpZ3XSwP4adQ6W41pRvhcdXvpzIWtKvX+17+xEXAe2nmGWM6s27pVkg1iV2ZtoYLRDkOUoGqZkCcg==}
engines: {node: '>= 10'}
cpu: [ia32]
os: [win32]
requiresBuild: true
dev: false
optional: true
/@node-rs/argon2-win32-ia32-msvc@1.7.2: /@node-rs/argon2-win32-ia32-msvc@1.7.2:
resolution: {integrity: sha512-o1tfqr8gyALCzuxBoQfvhxkeYMaw/0H8Gmt7klTYyEIBvEFu7SD5qytXO9Px7t5420nZL/Wy5cflg3IB1s57Pg==} resolution: {integrity: sha512-o1tfqr8gyALCzuxBoQfvhxkeYMaw/0H8Gmt7klTYyEIBvEFu7SD5qytXO9Px7t5420nZL/Wy5cflg3IB1s57Pg==}
engines: {node: '>= 10'} engines: {node: '>= 10'}
@ -1646,6 +1767,15 @@ packages:
dev: false dev: false
optional: true optional: true
/@node-rs/argon2-win32-x64-msvc@1.7.0:
resolution: {integrity: sha512-9oq4ShyFakw8AG3mRls0AoCpxBFcimYx7+jvXeAf2OqKNO+mSA6eZ9z7KQeVCi0+SOEUYxMGf5UiGiDb9R6+9Q==}
engines: {node: '>= 10'}
cpu: [x64]
os: [win32]
requiresBuild: true
dev: false
optional: true
/@node-rs/argon2-win32-x64-msvc@1.7.2: /@node-rs/argon2-win32-x64-msvc@1.7.2:
resolution: {integrity: sha512-v0h53XUc7hNgWiWi0qcMcHvj9/kwuItI9NwLK4C+gtzT3UB0cedhfIL8HFMKThMXasy41ZdbpCF2Bi0kJoLNEg==} resolution: {integrity: sha512-v0h53XUc7hNgWiWi0qcMcHvj9/kwuItI9NwLK4C+gtzT3UB0cedhfIL8HFMKThMXasy41ZdbpCF2Bi0kJoLNEg==}
engines: {node: '>= 10'} engines: {node: '>= 10'}
@ -1655,6 +1785,26 @@ packages:
dev: false dev: false
optional: true optional: true
/@node-rs/argon2@1.7.0:
resolution: {integrity: sha512-zfULc+/tmcWcxn+nHkbyY8vP3+MpEqKORbszt4UkpqZgBgDAAIYvuDN/zukfTgdmo6tmJKKVfzigZOPk4LlIog==}
engines: {node: '>= 10'}
optionalDependencies:
'@node-rs/argon2-android-arm-eabi': 1.7.0
'@node-rs/argon2-android-arm64': 1.7.0
'@node-rs/argon2-darwin-arm64': 1.7.0
'@node-rs/argon2-darwin-x64': 1.7.0
'@node-rs/argon2-freebsd-x64': 1.7.0
'@node-rs/argon2-linux-arm-gnueabihf': 1.7.0
'@node-rs/argon2-linux-arm64-gnu': 1.7.0
'@node-rs/argon2-linux-arm64-musl': 1.7.0
'@node-rs/argon2-linux-x64-gnu': 1.7.0
'@node-rs/argon2-linux-x64-musl': 1.7.0
'@node-rs/argon2-wasm32-wasi': 1.7.0
'@node-rs/argon2-win32-arm64-msvc': 1.7.0
'@node-rs/argon2-win32-ia32-msvc': 1.7.0
'@node-rs/argon2-win32-x64-msvc': 1.7.0
dev: false
/@node-rs/argon2@1.7.2: /@node-rs/argon2@1.7.2:
resolution: {integrity: sha512-+H6pc3M1vIX9YnG59YW7prHhhpv19P8YyxlXHnnFzTimf2q+kKDF7mGWbhvN9STqIY+P70Patn0Q6qb6Ib5/4g==} resolution: {integrity: sha512-+H6pc3M1vIX9YnG59YW7prHhhpv19P8YyxlXHnnFzTimf2q+kKDF7mGWbhvN9STqIY+P70Patn0Q6qb6Ib5/4g==}
engines: {node: '>= 10'} engines: {node: '>= 10'}
@ -1675,6 +1825,15 @@ packages:
'@node-rs/argon2-win32-x64-msvc': 1.7.2 '@node-rs/argon2-win32-x64-msvc': 1.7.2
dev: false dev: false
/@node-rs/bcrypt-android-arm-eabi@1.9.0:
resolution: {integrity: sha512-nOCFISGtnodGHNiLrG0WYLWr81qQzZKYfmwHc7muUeq+KY0sQXyHOwZk9OuNQAWv/lnntmtbwkwT0QNEmOyLvA==}
engines: {node: '>= 10'}
cpu: [arm]
os: [android]
requiresBuild: true
dev: false
optional: true
/@node-rs/bcrypt-android-arm-eabi@1.9.2: /@node-rs/bcrypt-android-arm-eabi@1.9.2:
resolution: {integrity: sha512-er/Q2khwpan9pczvTTqY/DJE4UU65u31xd0NkZlHUTKyB7djRhWfzoGexGx2GN+k831/RR3U8kKE/8QUHeO3hQ==} resolution: {integrity: sha512-er/Q2khwpan9pczvTTqY/DJE4UU65u31xd0NkZlHUTKyB7djRhWfzoGexGx2GN+k831/RR3U8kKE/8QUHeO3hQ==}
engines: {node: '>= 10'} engines: {node: '>= 10'}
@ -1684,6 +1843,15 @@ packages:
dev: false dev: false
optional: true optional: true
/@node-rs/bcrypt-android-arm64@1.9.0:
resolution: {integrity: sha512-+ZrIAtigVmjYkqZQTThHVlz0+TG6D+GDHWhVKvR2DifjtqJ0i+mb9gjo++hN+fWEQdWNGxKCiBBjwgT4EcXd6A==}
engines: {node: '>= 10'}
cpu: [arm64]
os: [android]
requiresBuild: true
dev: false
optional: true
/@node-rs/bcrypt-android-arm64@1.9.2: /@node-rs/bcrypt-android-arm64@1.9.2:
resolution: {integrity: sha512-OUYatOEG5vbLbF73q2TC8UqrDO81zUQxnaFD/OAB1hcm6J+ur0zJ8E53c35/DIqkTp7JarPMraC4rouJ2ugN4w==} resolution: {integrity: sha512-OUYatOEG5vbLbF73q2TC8UqrDO81zUQxnaFD/OAB1hcm6J+ur0zJ8E53c35/DIqkTp7JarPMraC4rouJ2ugN4w==}
engines: {node: '>= 10'} engines: {node: '>= 10'}
@ -1693,6 +1861,15 @@ packages:
dev: false dev: false
optional: true optional: true
/@node-rs/bcrypt-darwin-arm64@1.9.0:
resolution: {integrity: sha512-CQiS+F9Pa0XozvkXR1g7uXE9QvBOPOplDg0iCCPRYTN9PqA5qYxhwe48G3o+v2UeQceNRrbnEtWuANm7JRqIhw==}
engines: {node: '>= 10'}
cpu: [arm64]
os: [darwin]
requiresBuild: true
dev: false
optional: true
/@node-rs/bcrypt-darwin-arm64@1.9.2: /@node-rs/bcrypt-darwin-arm64@1.9.2:
resolution: {integrity: sha512-svJKsGbzMAxOB5oluOYneN4YkKUy26WSMgm3KOIhgoX30IeMilj+2jFN/5qrI0oDZ0Iczb3XyL5DuZFtEkdP8A==} resolution: {integrity: sha512-svJKsGbzMAxOB5oluOYneN4YkKUy26WSMgm3KOIhgoX30IeMilj+2jFN/5qrI0oDZ0Iczb3XyL5DuZFtEkdP8A==}
engines: {node: '>= 10'} engines: {node: '>= 10'}
@ -1702,6 +1879,15 @@ packages:
dev: false dev: false
optional: true optional: true
/@node-rs/bcrypt-darwin-x64@1.9.0:
resolution: {integrity: sha512-4pTKGawYd7sNEjdJ7R/R67uwQH1VvwPZ0SSUMmeNHbxD5QlwAPXdDH11q22uzVXsvNFZ6nGQBg8No5OUGpx6Ug==}
engines: {node: '>= 10'}
cpu: [x64]
os: [darwin]
requiresBuild: true
dev: false
optional: true
/@node-rs/bcrypt-darwin-x64@1.9.2: /@node-rs/bcrypt-darwin-x64@1.9.2:
resolution: {integrity: sha512-9OrySjBi/rWix8NZWD/TrNbNcwMY0pAiMHdL09aJnJ07uPih83GGh1pq4UHCYFCMy7iTX8swOmDlGBUImkOZbg==} resolution: {integrity: sha512-9OrySjBi/rWix8NZWD/TrNbNcwMY0pAiMHdL09aJnJ07uPih83GGh1pq4UHCYFCMy7iTX8swOmDlGBUImkOZbg==}
engines: {node: '>= 10'} engines: {node: '>= 10'}
@ -1711,6 +1897,15 @@ packages:
dev: false dev: false
optional: true optional: true
/@node-rs/bcrypt-freebsd-x64@1.9.0:
resolution: {integrity: sha512-UmWzySX4BJhT/B8xmTru6iFif3h0Rpx3TqxRLCcbgmH43r7k5/9QuhpiyzpvKGpKHJCFNm4F3rC2wghvw5FCIg==}
engines: {node: '>= 10'}
cpu: [x64]
os: [freebsd]
requiresBuild: true
dev: false
optional: true
/@node-rs/bcrypt-freebsd-x64@1.9.2: /@node-rs/bcrypt-freebsd-x64@1.9.2:
resolution: {integrity: sha512-/djXV71RO6g5L1mI2pVvmp3x3pH7G4uKI3ODG1JBIXoz334oOcCMh40sB0uq0ljP8WEadker01p4T1rJE98fpg==} resolution: {integrity: sha512-/djXV71RO6g5L1mI2pVvmp3x3pH7G4uKI3ODG1JBIXoz334oOcCMh40sB0uq0ljP8WEadker01p4T1rJE98fpg==}
engines: {node: '>= 10'} engines: {node: '>= 10'}
@ -1720,6 +1915,15 @@ packages:
dev: false dev: false
optional: true optional: true
/@node-rs/bcrypt-linux-arm-gnueabihf@1.9.0:
resolution: {integrity: sha512-8qoX4PgBND2cVwsbajoAWo3NwdfJPEXgpCsZQZURz42oMjbGyhhSYbovBCskGU3EBLoC8RA2B1jFWooeYVn5BA==}
engines: {node: '>= 10'}
cpu: [arm]
os: [linux]
requiresBuild: true
dev: false
optional: true
/@node-rs/bcrypt-linux-arm-gnueabihf@1.9.2: /@node-rs/bcrypt-linux-arm-gnueabihf@1.9.2:
resolution: {integrity: sha512-F7wP950OTAooxEleUN4I2hqryGZK7hi1cSgRF13Wvbc597RFux35KiSxIXUA3mNt2DE7lV2PeceEtCOScaThWQ==} resolution: {integrity: sha512-F7wP950OTAooxEleUN4I2hqryGZK7hi1cSgRF13Wvbc597RFux35KiSxIXUA3mNt2DE7lV2PeceEtCOScaThWQ==}
engines: {node: '>= 10'} engines: {node: '>= 10'}
@ -1729,6 +1933,15 @@ packages:
dev: false dev: false
optional: true optional: true
/@node-rs/bcrypt-linux-arm64-gnu@1.9.0:
resolution: {integrity: sha512-TuAC6kx0SbcIA4mSEWPi+OCcDjTQUMl213v5gMNlttF+D4ieIZx6pPDGTaMO6M2PDHTeCG0CBzZl0Lu+9b0c7Q==}
engines: {node: '>= 10'}
cpu: [arm64]
os: [linux]
requiresBuild: true
dev: false
optional: true
/@node-rs/bcrypt-linux-arm64-gnu@1.9.2: /@node-rs/bcrypt-linux-arm64-gnu@1.9.2:
resolution: {integrity: sha512-MehG+yQ0TgKMgKR1rO4hdvHkVsTM91Cof8qI9EJlS5+7+QSwfFA5O0zGwCkISD7bsyauJ5uJgcByGjpEobAHOg==} resolution: {integrity: sha512-MehG+yQ0TgKMgKR1rO4hdvHkVsTM91Cof8qI9EJlS5+7+QSwfFA5O0zGwCkISD7bsyauJ5uJgcByGjpEobAHOg==}
engines: {node: '>= 10'} engines: {node: '>= 10'}
@ -1738,6 +1951,15 @@ packages:
dev: false dev: false
optional: true optional: true
/@node-rs/bcrypt-linux-arm64-musl@1.9.0:
resolution: {integrity: sha512-/sIvKDABOI8QOEnLD7hIj02BVaNOuCIWBKvxcJOt8+TuwJ6zmY1UI5kSv9d99WbiHjTp97wtAUbZQwauU4b9ew==}
engines: {node: '>= 10'}
cpu: [arm64]
os: [linux]
requiresBuild: true
dev: false
optional: true
/@node-rs/bcrypt-linux-arm64-musl@1.9.2: /@node-rs/bcrypt-linux-arm64-musl@1.9.2:
resolution: {integrity: sha512-PRZTAJjOwKEGsIhmBvfNh81So+wGl4QyCFAt23j+KwBujLStjC0N3YaqtTlWVKG9tcriPtmMYiAQtXWIyIgg/w==} resolution: {integrity: sha512-PRZTAJjOwKEGsIhmBvfNh81So+wGl4QyCFAt23j+KwBujLStjC0N3YaqtTlWVKG9tcriPtmMYiAQtXWIyIgg/w==}
engines: {node: '>= 10'} engines: {node: '>= 10'}
@ -1747,6 +1969,15 @@ packages:
dev: false dev: false
optional: true optional: true
/@node-rs/bcrypt-linux-x64-gnu@1.9.0:
resolution: {integrity: sha512-DyyhDHDsLBsCKz1tZ1hLvUZSc1DK0FU0v52jK6IBQxrj24WscSU9zZe7ie/V9kdmA4Ep57BfpWX8Dsa2JxGdgQ==}
engines: {node: '>= 10'}
cpu: [x64]
os: [linux]
requiresBuild: true
dev: false
optional: true
/@node-rs/bcrypt-linux-x64-gnu@1.9.2: /@node-rs/bcrypt-linux-x64-gnu@1.9.2:
resolution: {integrity: sha512-5WfGO+O1m7nJ55WZ8XDq+ItA98Z4O7sNWsR+1nIj9YGT+Tx5zkQ2RBhpK6oCWZMluuZ0eKQ0FDmyP6K+2NDRIA==} resolution: {integrity: sha512-5WfGO+O1m7nJ55WZ8XDq+ItA98Z4O7sNWsR+1nIj9YGT+Tx5zkQ2RBhpK6oCWZMluuZ0eKQ0FDmyP6K+2NDRIA==}
engines: {node: '>= 10'} engines: {node: '>= 10'}
@ -1756,6 +1987,15 @@ packages:
dev: false dev: false
optional: true optional: true
/@node-rs/bcrypt-linux-x64-musl@1.9.0:
resolution: {integrity: sha512-duIiuqQ+Lew8ASSAYm6ZRqcmfBGWwsi81XLUwz86a2HR7Qv6V4yc3ZAUQovAikhjCsIqe8C11JlAZSK6+PlXYg==}
engines: {node: '>= 10'}
cpu: [x64]
os: [linux]
requiresBuild: true
dev: false
optional: true
/@node-rs/bcrypt-linux-x64-musl@1.9.2: /@node-rs/bcrypt-linux-x64-musl@1.9.2:
resolution: {integrity: sha512-VjCn0388p6PMCVUYHgYmHZrKNc7WwNJRr2WLJsHbQRGDOKbpNL6YolCjQxUchcSPDhzwrq1cIdy4j0fpoXEsdw==} resolution: {integrity: sha512-VjCn0388p6PMCVUYHgYmHZrKNc7WwNJRr2WLJsHbQRGDOKbpNL6YolCjQxUchcSPDhzwrq1cIdy4j0fpoXEsdw==}
engines: {node: '>= 10'} engines: {node: '>= 10'}
@ -1765,6 +2005,19 @@ packages:
dev: false dev: false
optional: true optional: true
/@node-rs/bcrypt-wasm32-wasi@1.9.0:
resolution: {integrity: sha512-ylaGmn9Wjwv/D5lxtawttx3H6Uu2WTTR7lWlRHGT6Ga/MB1Vj4OjSGUW8G8zIVnKuXpGbZ92pgHlt4HUpSLctw==}
engines: {node: '>=14.0.0'}
cpu: [wasm32]
requiresBuild: true
dependencies:
'@emnapi/core': 0.45.0
'@emnapi/runtime': 0.45.0
'@tybys/wasm-util': 0.8.1
memfs-browser: 3.5.10302
dev: false
optional: true
/@node-rs/bcrypt-wasm32-wasi@1.9.2: /@node-rs/bcrypt-wasm32-wasi@1.9.2:
resolution: {integrity: sha512-P06aHfMzm9makwU+nM7WA65yQnS1xuqJ8l/6I/LvXjnl+lfB3DtJ2B0CSLtjnUGpUgcHbWl5gEbNnTPxSAirjQ==} resolution: {integrity: sha512-P06aHfMzm9makwU+nM7WA65yQnS1xuqJ8l/6I/LvXjnl+lfB3DtJ2B0CSLtjnUGpUgcHbWl5gEbNnTPxSAirjQ==}
engines: {node: '>=14.0.0'} engines: {node: '>=14.0.0'}
@ -1775,6 +2028,15 @@ packages:
dev: false dev: false
optional: true optional: true
/@node-rs/bcrypt-win32-arm64-msvc@1.9.0:
resolution: {integrity: sha512-2h86gF7QFyEzODuDFml/Dp1MSJoZjxJ4yyT2Erf4NkwsiA5MqowUhUsorRwZhX6+2CtlGa7orbwi13AKMsYndw==}
engines: {node: '>= 10'}
cpu: [arm64]
os: [win32]
requiresBuild: true
dev: false
optional: true
/@node-rs/bcrypt-win32-arm64-msvc@1.9.2: /@node-rs/bcrypt-win32-arm64-msvc@1.9.2:
resolution: {integrity: sha512-Iyo/Q5/eNw27VRd3mLBgh1b9b5fnT3QHTVwxv3Siv/MRAIfJXH/cTOe18qSwYQzNh0ZioW4yemFPYCWSZi7szA==} resolution: {integrity: sha512-Iyo/Q5/eNw27VRd3mLBgh1b9b5fnT3QHTVwxv3Siv/MRAIfJXH/cTOe18qSwYQzNh0ZioW4yemFPYCWSZi7szA==}
engines: {node: '>= 10'} engines: {node: '>= 10'}
@ -1784,6 +2046,15 @@ packages:
dev: false dev: false
optional: true optional: true
/@node-rs/bcrypt-win32-ia32-msvc@1.9.0:
resolution: {integrity: sha512-kqxalCvhs4FkN0+gWWfa4Bdy2NQAkfiqq/CEf6mNXC13RSV673Ev9V8sRlQyNpCHCNkeXfOT9pgoBdJmMs9muA==}
engines: {node: '>= 10'}
cpu: [ia32]
os: [win32]
requiresBuild: true
dev: false
optional: true
/@node-rs/bcrypt-win32-ia32-msvc@1.9.2: /@node-rs/bcrypt-win32-ia32-msvc@1.9.2:
resolution: {integrity: sha512-6LHWMaPylyyHoS5863YpxAACVB8DWCxro5W6pQ4h8WKSgHpJp8Um9jphTdN0A2w45HZjUnfcFuiFFC+TbftjCw==} resolution: {integrity: sha512-6LHWMaPylyyHoS5863YpxAACVB8DWCxro5W6pQ4h8WKSgHpJp8Um9jphTdN0A2w45HZjUnfcFuiFFC+TbftjCw==}
engines: {node: '>= 10'} engines: {node: '>= 10'}
@ -1793,6 +2064,15 @@ packages:
dev: false dev: false
optional: true optional: true
/@node-rs/bcrypt-win32-x64-msvc@1.9.0:
resolution: {integrity: sha512-2y0Tuo6ZAT2Cz8V7DHulSlv1Bip3zbzeXyeur+uR25IRNYXKvI/P99Zl85Fbuu/zzYAZRLLlGTRe6/9IHofe/w==}
engines: {node: '>= 10'}
cpu: [x64]
os: [win32]
requiresBuild: true
dev: false
optional: true
/@node-rs/bcrypt-win32-x64-msvc@1.9.2: /@node-rs/bcrypt-win32-x64-msvc@1.9.2:
resolution: {integrity: sha512-vZ9T1MOaYkLO9FTyl28YX0SYJneiYTKNFgM8PUv8nas8xrD+7OzokA0fEtlNp6413T7IKSD/iG9qi8nTWsiyGg==} resolution: {integrity: sha512-vZ9T1MOaYkLO9FTyl28YX0SYJneiYTKNFgM8PUv8nas8xrD+7OzokA0fEtlNp6413T7IKSD/iG9qi8nTWsiyGg==}
engines: {node: '>= 10'} engines: {node: '>= 10'}
@ -1802,6 +2082,26 @@ packages:
dev: false dev: false
optional: true optional: true
/@node-rs/bcrypt@1.9.0:
resolution: {integrity: sha512-u2OlIxW264bFUfvbFqDz9HZKFjwe8FHFtn7T/U8mYjPZ7DWYpbUB+/dkW/QgYfMSfR0ejkyuWaBBe0coW7/7ig==}
engines: {node: '>= 10'}
optionalDependencies:
'@node-rs/bcrypt-android-arm-eabi': 1.9.0
'@node-rs/bcrypt-android-arm64': 1.9.0
'@node-rs/bcrypt-darwin-arm64': 1.9.0
'@node-rs/bcrypt-darwin-x64': 1.9.0
'@node-rs/bcrypt-freebsd-x64': 1.9.0
'@node-rs/bcrypt-linux-arm-gnueabihf': 1.9.0
'@node-rs/bcrypt-linux-arm64-gnu': 1.9.0
'@node-rs/bcrypt-linux-arm64-musl': 1.9.0
'@node-rs/bcrypt-linux-x64-gnu': 1.9.0
'@node-rs/bcrypt-linux-x64-musl': 1.9.0
'@node-rs/bcrypt-wasm32-wasi': 1.9.0
'@node-rs/bcrypt-win32-arm64-msvc': 1.9.0
'@node-rs/bcrypt-win32-ia32-msvc': 1.9.0
'@node-rs/bcrypt-win32-x64-msvc': 1.9.0
dev: false
/@node-rs/bcrypt@1.9.2: /@node-rs/bcrypt@1.9.2:
resolution: {integrity: sha512-FKUo9iCSIti+ldwoOlY1ztyIFhZxEgT7jZ/UCt/9bg1rLmNdbQQD2JKIMImDCqmTWuLPY4ZF4Q5MyOMIfDCd8Q==} resolution: {integrity: sha512-FKUo9iCSIti+ldwoOlY1ztyIFhZxEgT7jZ/UCt/9bg1rLmNdbQQD2JKIMImDCqmTWuLPY4ZF4Q5MyOMIfDCd8Q==}
engines: {node: '>= 10'} engines: {node: '>= 10'}
@ -2289,7 +2589,7 @@ packages:
'@sentry/types': 7.88.0 '@sentry/types': 7.88.0
'@sentry/utils': 7.88.0 '@sentry/utils': 7.88.0
'@sentry/vite-plugin': 0.6.1 '@sentry/vite-plugin': 0.6.1
'@sveltejs/kit': 2.5.0(@sveltejs/vite-plugin-svelte@3.0.1)(svelte@4.2.9)(vite@5.0.12) '@sveltejs/kit': 2.5.0(@sveltejs/vite-plugin-svelte@3.0.2)(svelte@4.2.9)(vite@5.0.12)
magicast: 0.2.8 magicast: 0.2.8
sorcery: 0.11.0 sorcery: 0.11.0
transitivePeerDependencies: transitivePeerDependencies:
@ -2356,7 +2656,7 @@ packages:
peerDependencies: peerDependencies:
'@sveltejs/kit': ^2.0.0 '@sveltejs/kit': ^2.0.0
dependencies: dependencies:
'@sveltejs/kit': 2.5.0(@sveltejs/vite-plugin-svelte@3.0.1)(svelte@4.2.9)(vite@5.0.12) '@sveltejs/kit': 2.5.0(@sveltejs/vite-plugin-svelte@3.0.2)(svelte@4.2.9)(vite@5.0.12)
import-meta-resolve: 4.0.0 import-meta-resolve: 4.0.0
dev: true dev: true
@ -2365,7 +2665,7 @@ packages:
peerDependencies: peerDependencies:
'@sveltejs/kit': ^2.4.0 '@sveltejs/kit': ^2.4.0
dependencies: dependencies:
'@sveltejs/kit': 2.5.0(@sveltejs/vite-plugin-svelte@3.0.1)(svelte@4.2.9)(vite@5.0.12) '@sveltejs/kit': 2.5.0(@sveltejs/vite-plugin-svelte@3.0.2)(svelte@4.2.9)(vite@5.0.12)
'@vercel/nft': 0.26.2 '@vercel/nft': 0.26.2
esbuild: 0.19.11 esbuild: 0.19.11
transitivePeerDependencies: transitivePeerDependencies:
@ -2384,7 +2684,7 @@ packages:
- svelte - svelte
dev: true dev: true
/@sveltejs/kit@2.5.0(@sveltejs/vite-plugin-svelte@3.0.1)(svelte@4.2.9)(vite@5.0.12): /@sveltejs/kit@2.5.0(@sveltejs/vite-plugin-svelte@3.0.2)(svelte@4.2.9)(vite@5.0.12):
resolution: {integrity: sha512-1uyXvzC2Lu1FZa30T4y5jUAC21R309ZMRG0TPt+PPPbNUoDpy8zSmSNVWYaBWxYDqLGQ5oPNWvjvvF2IjJ1jmA==} resolution: {integrity: sha512-1uyXvzC2Lu1FZa30T4y5jUAC21R309ZMRG0TPt+PPPbNUoDpy8zSmSNVWYaBWxYDqLGQ5oPNWvjvvF2IjJ1jmA==}
engines: {node: '>=18.13'} engines: {node: '>=18.13'}
hasBin: true hasBin: true
@ -2394,7 +2694,7 @@ packages:
svelte: ^4.0.0 || ^5.0.0-next.0 svelte: ^4.0.0 || ^5.0.0-next.0
vite: ^5.0.3 vite: ^5.0.3
dependencies: dependencies:
'@sveltejs/vite-plugin-svelte': 3.0.1(svelte@4.2.9)(vite@5.0.12) '@sveltejs/vite-plugin-svelte': 3.0.2(svelte@4.2.9)(vite@5.0.12)
'@types/cookie': 0.6.0 '@types/cookie': 0.6.0
cookie: 0.6.0 cookie: 0.6.0
devalue: 4.3.2 devalue: 4.3.2
@ -2410,7 +2710,7 @@ packages:
tiny-glob: 0.2.9 tiny-glob: 0.2.9
vite: 5.0.12(@types/node@18.19.10)(sass@1.70.0) vite: 5.0.12(@types/node@18.19.10)(sass@1.70.0)
/@sveltejs/vite-plugin-svelte-inspector@2.0.0(@sveltejs/vite-plugin-svelte@3.0.1)(svelte@4.2.9)(vite@5.0.12): /@sveltejs/vite-plugin-svelte-inspector@2.0.0(@sveltejs/vite-plugin-svelte@3.0.2)(svelte@4.2.9)(vite@5.0.12):
resolution: {integrity: sha512-gjr9ZFg1BSlIpfZ4PRewigrvYmHWbDrq2uvvPB1AmTWKuM+dI1JXQSUu2pIrYLb/QncyiIGkFDFKTwJ0XqQZZg==} resolution: {integrity: sha512-gjr9ZFg1BSlIpfZ4PRewigrvYmHWbDrq2uvvPB1AmTWKuM+dI1JXQSUu2pIrYLb/QncyiIGkFDFKTwJ0XqQZZg==}
engines: {node: ^18.0.0 || >=20} engines: {node: ^18.0.0 || >=20}
peerDependencies: peerDependencies:
@ -2418,21 +2718,21 @@ packages:
svelte: ^4.0.0 || ^5.0.0-next.0 svelte: ^4.0.0 || ^5.0.0-next.0
vite: ^5.0.0 vite: ^5.0.0
dependencies: dependencies:
'@sveltejs/vite-plugin-svelte': 3.0.1(svelte@4.2.9)(vite@5.0.12) '@sveltejs/vite-plugin-svelte': 3.0.2(svelte@4.2.9)(vite@5.0.12)
debug: 4.3.4 debug: 4.3.4
svelte: 4.2.9 svelte: 4.2.9
vite: 5.0.12(@types/node@18.19.10)(sass@1.70.0) vite: 5.0.12(@types/node@18.19.10)(sass@1.70.0)
transitivePeerDependencies: transitivePeerDependencies:
- supports-color - supports-color
/@sveltejs/vite-plugin-svelte@3.0.1(svelte@4.2.9)(vite@5.0.12): /@sveltejs/vite-plugin-svelte@3.0.2(svelte@4.2.9)(vite@5.0.12):
resolution: {integrity: sha512-CGURX6Ps+TkOovK6xV+Y2rn8JKa8ZPUHPZ/NKgCxAmgBrXReavzFl8aOSCj3kQ1xqT7yGJj53hjcV/gqwDAaWA==} resolution: {integrity: sha512-MpmF/cju2HqUls50WyTHQBZUV3ovV/Uk8k66AN2gwHogNAG8wnW8xtZDhzNBsFJJuvmq1qnzA5kE7YfMJNFv2Q==}
engines: {node: ^18.0.0 || >=20} engines: {node: ^18.0.0 || >=20}
peerDependencies: peerDependencies:
svelte: ^4.0.0 || ^5.0.0-next.0 svelte: ^4.0.0 || ^5.0.0-next.0
vite: ^5.0.0 vite: ^5.0.0
dependencies: dependencies:
'@sveltejs/vite-plugin-svelte-inspector': 2.0.0(@sveltejs/vite-plugin-svelte@3.0.1)(svelte@4.2.9)(vite@5.0.12) '@sveltejs/vite-plugin-svelte-inspector': 2.0.0(@sveltejs/vite-plugin-svelte@3.0.2)(svelte@4.2.9)(vite@5.0.12)
debug: 4.3.4 debug: 4.3.4
deepmerge: 4.3.1 deepmerge: 4.3.1
kleur: 4.1.5 kleur: 4.1.5
@ -2500,8 +2800,8 @@ packages:
resolution: {integrity: sha512-dn1l8LaMea/IjDoHNd9J52uBbInB796CDffS6VdIxvqYCPSG0V0DzHp76GpaWnlhg88uYyPbXCDIowa86ybd5A==} resolution: {integrity: sha512-dn1l8LaMea/IjDoHNd9J52uBbInB796CDffS6VdIxvqYCPSG0V0DzHp76GpaWnlhg88uYyPbXCDIowa86ybd5A==}
dev: true dev: true
/@typescript-eslint/eslint-plugin@6.19.1(@typescript-eslint/parser@6.19.1)(eslint@8.56.0)(typescript@5.3.3): /@typescript-eslint/eslint-plugin@6.20.0(@typescript-eslint/parser@6.20.0)(eslint@8.56.0)(typescript@5.3.3):
resolution: {integrity: sha512-roQScUGFruWod9CEyoV5KlCYrubC/fvG8/1zXuT0WTcxX87GnMMmnksMwSg99lo1xiKrBzw2icsJPMAw1OtKxg==} resolution: {integrity: sha512-fTwGQUnjhoYHeSF6m5pWNkzmDDdsKELYrOBxhjMrofPqCkoC2k3B2wvGHFxa1CTIqkEn88nlW1HVMztjo2K8Hg==}
engines: {node: ^16.0.0 || >=18.0.0} engines: {node: ^16.0.0 || >=18.0.0}
peerDependencies: peerDependencies:
'@typescript-eslint/parser': ^6.0.0 || ^6.0.0-alpha '@typescript-eslint/parser': ^6.0.0 || ^6.0.0-alpha
@ -2512,11 +2812,11 @@ packages:
optional: true optional: true
dependencies: dependencies:
'@eslint-community/regexpp': 4.10.0 '@eslint-community/regexpp': 4.10.0
'@typescript-eslint/parser': 6.19.1(eslint@8.56.0)(typescript@5.3.3) '@typescript-eslint/parser': 6.20.0(eslint@8.56.0)(typescript@5.3.3)
'@typescript-eslint/scope-manager': 6.19.1 '@typescript-eslint/scope-manager': 6.20.0
'@typescript-eslint/type-utils': 6.19.1(eslint@8.56.0)(typescript@5.3.3) '@typescript-eslint/type-utils': 6.20.0(eslint@8.56.0)(typescript@5.3.3)
'@typescript-eslint/utils': 6.19.1(eslint@8.56.0)(typescript@5.3.3) '@typescript-eslint/utils': 6.20.0(eslint@8.56.0)(typescript@5.3.3)
'@typescript-eslint/visitor-keys': 6.19.1 '@typescript-eslint/visitor-keys': 6.20.0
debug: 4.3.4 debug: 4.3.4
eslint: 8.56.0 eslint: 8.56.0
graphemer: 1.4.0 graphemer: 1.4.0
@ -2529,8 +2829,8 @@ packages:
- supports-color - supports-color
dev: true dev: true
/@typescript-eslint/parser@6.19.1(eslint@8.56.0)(typescript@5.3.3): /@typescript-eslint/parser@6.20.0(eslint@8.56.0)(typescript@5.3.3):
resolution: {integrity: sha512-WEfX22ziAh6pRE9jnbkkLGp/4RhTpffr2ZK5bJ18M8mIfA8A+k97U9ZyaXCEJRlmMHh7R9MJZWXp/r73DzINVQ==} resolution: {integrity: sha512-bYerPDF/H5v6V76MdMYhjwmwgMA+jlPVqjSDq2cRqMi8bP5sR3Z+RLOiOMad3nsnmDVmn2gAFCyNgh/dIrfP/w==}
engines: {node: ^16.0.0 || >=18.0.0} engines: {node: ^16.0.0 || >=18.0.0}
peerDependencies: peerDependencies:
eslint: ^7.0.0 || ^8.0.0 eslint: ^7.0.0 || ^8.0.0
@ -2539,10 +2839,10 @@ packages:
typescript: typescript:
optional: true optional: true
dependencies: dependencies:
'@typescript-eslint/scope-manager': 6.19.1 '@typescript-eslint/scope-manager': 6.20.0
'@typescript-eslint/types': 6.19.1 '@typescript-eslint/types': 6.20.0
'@typescript-eslint/typescript-estree': 6.19.1(typescript@5.3.3) '@typescript-eslint/typescript-estree': 6.20.0(typescript@5.3.3)
'@typescript-eslint/visitor-keys': 6.19.1 '@typescript-eslint/visitor-keys': 6.20.0
debug: 4.3.4 debug: 4.3.4
eslint: 8.56.0 eslint: 8.56.0
typescript: 5.3.3 typescript: 5.3.3
@ -2550,16 +2850,16 @@ packages:
- supports-color - supports-color
dev: true dev: true
/@typescript-eslint/scope-manager@6.19.1: /@typescript-eslint/scope-manager@6.20.0:
resolution: {integrity: sha512-4CdXYjKf6/6aKNMSly/BP4iCSOpvMmqtDzRtqFyyAae3z5kkqEjKndR5vDHL8rSuMIIWP8u4Mw4VxLyxZW6D5w==} resolution: {integrity: sha512-p4rvHQRDTI1tGGMDFQm+GtxP1ZHyAh64WANVoyEcNMpaTFn3ox/3CcgtIlELnRfKzSs/DwYlDccJEtr3O6qBvA==}
engines: {node: ^16.0.0 || >=18.0.0} engines: {node: ^16.0.0 || >=18.0.0}
dependencies: dependencies:
'@typescript-eslint/types': 6.19.1 '@typescript-eslint/types': 6.20.0
'@typescript-eslint/visitor-keys': 6.19.1 '@typescript-eslint/visitor-keys': 6.20.0
dev: true dev: true
/@typescript-eslint/type-utils@6.19.1(eslint@8.56.0)(typescript@5.3.3): /@typescript-eslint/type-utils@6.20.0(eslint@8.56.0)(typescript@5.3.3):
resolution: {integrity: sha512-0vdyld3ecfxJuddDjACUvlAeYNrHP/pDeQk2pWBR2ESeEzQhg52DF53AbI9QCBkYE23lgkhLCZNkHn2hEXXYIg==} resolution: {integrity: sha512-qnSobiJQb1F5JjN0YDRPHruQTrX7ICsmltXhkV536mp4idGAYrIyr47zF/JmkJtEcAVnIz4gUYJ7gOZa6SmN4g==}
engines: {node: ^16.0.0 || >=18.0.0} engines: {node: ^16.0.0 || >=18.0.0}
peerDependencies: peerDependencies:
eslint: ^7.0.0 || ^8.0.0 eslint: ^7.0.0 || ^8.0.0
@ -2568,8 +2868,8 @@ packages:
typescript: typescript:
optional: true optional: true
dependencies: dependencies:
'@typescript-eslint/typescript-estree': 6.19.1(typescript@5.3.3) '@typescript-eslint/typescript-estree': 6.20.0(typescript@5.3.3)
'@typescript-eslint/utils': 6.19.1(eslint@8.56.0)(typescript@5.3.3) '@typescript-eslint/utils': 6.20.0(eslint@8.56.0)(typescript@5.3.3)
debug: 4.3.4 debug: 4.3.4
eslint: 8.56.0 eslint: 8.56.0
ts-api-utils: 1.0.3(typescript@5.3.3) ts-api-utils: 1.0.3(typescript@5.3.3)
@ -2578,13 +2878,13 @@ packages:
- supports-color - supports-color
dev: true dev: true
/@typescript-eslint/types@6.19.1: /@typescript-eslint/types@6.20.0:
resolution: {integrity: sha512-6+bk6FEtBhvfYvpHsDgAL3uo4BfvnTnoge5LrrCj2eJN8g3IJdLTD4B/jK3Q6vo4Ql/Hoip9I8aB6fF+6RfDqg==} resolution: {integrity: sha512-MM9mfZMAhiN4cOEcUOEx+0HmuaW3WBfukBZPCfwSqFnQy0grXYtngKCqpQN339X3RrwtzspWJrpbrupKYUSBXQ==}
engines: {node: ^16.0.0 || >=18.0.0} engines: {node: ^16.0.0 || >=18.0.0}
dev: true dev: true
/@typescript-eslint/typescript-estree@6.19.1(typescript@5.3.3): /@typescript-eslint/typescript-estree@6.20.0(typescript@5.3.3):
resolution: {integrity: sha512-aFdAxuhzBFRWhy+H20nYu19+Km+gFfwNO4TEqyszkMcgBDYQjmPJ61erHxuT2ESJXhlhrO7I5EFIlZ+qGR8oVA==} resolution: {integrity: sha512-RnRya9q5m6YYSpBN7IzKu9FmLcYtErkDkc8/dKv81I9QiLLtVBHrjz+Ev/crAqgMNW2FCsoZF4g2QUylMnJz+g==}
engines: {node: ^16.0.0 || >=18.0.0} engines: {node: ^16.0.0 || >=18.0.0}
peerDependencies: peerDependencies:
typescript: '*' typescript: '*'
@ -2592,8 +2892,8 @@ packages:
typescript: typescript:
optional: true optional: true
dependencies: dependencies:
'@typescript-eslint/types': 6.19.1 '@typescript-eslint/types': 6.20.0
'@typescript-eslint/visitor-keys': 6.19.1 '@typescript-eslint/visitor-keys': 6.20.0
debug: 4.3.4 debug: 4.3.4
globby: 11.1.0 globby: 11.1.0
is-glob: 4.0.3 is-glob: 4.0.3
@ -2605,8 +2905,8 @@ packages:
- supports-color - supports-color
dev: true dev: true
/@typescript-eslint/utils@6.19.1(eslint@8.56.0)(typescript@5.3.3): /@typescript-eslint/utils@6.20.0(eslint@8.56.0)(typescript@5.3.3):
resolution: {integrity: sha512-JvjfEZuP5WoMqwh9SPAPDSHSg9FBHHGhjPugSRxu5jMfjvBpq5/sGTD+9M9aQ5sh6iJ8AY/Kk/oUYVEMAPwi7w==} resolution: {integrity: sha512-/EKuw+kRu2vAqCoDwDCBtDRU6CTKbUmwwI7SH7AashZ+W+7o8eiyy6V2cdOqN49KsTcASWsC5QeghYuRDTyOOg==}
engines: {node: ^16.0.0 || >=18.0.0} engines: {node: ^16.0.0 || >=18.0.0}
peerDependencies: peerDependencies:
eslint: ^7.0.0 || ^8.0.0 eslint: ^7.0.0 || ^8.0.0
@ -2614,9 +2914,9 @@ packages:
'@eslint-community/eslint-utils': 4.4.0(eslint@8.56.0) '@eslint-community/eslint-utils': 4.4.0(eslint@8.56.0)
'@types/json-schema': 7.0.15 '@types/json-schema': 7.0.15
'@types/semver': 7.5.6 '@types/semver': 7.5.6
'@typescript-eslint/scope-manager': 6.19.1 '@typescript-eslint/scope-manager': 6.20.0
'@typescript-eslint/types': 6.19.1 '@typescript-eslint/types': 6.20.0
'@typescript-eslint/typescript-estree': 6.19.1(typescript@5.3.3) '@typescript-eslint/typescript-estree': 6.20.0(typescript@5.3.3)
eslint: 8.56.0 eslint: 8.56.0
semver: 7.5.4 semver: 7.5.4
transitivePeerDependencies: transitivePeerDependencies:
@ -2624,11 +2924,11 @@ packages:
- typescript - typescript
dev: true dev: true
/@typescript-eslint/visitor-keys@6.19.1: /@typescript-eslint/visitor-keys@6.20.0:
resolution: {integrity: sha512-gkdtIO+xSO/SmI0W68DBg4u1KElmIUo3vXzgHyGPs6cxgB0sa3TlptRAAE0hUY1hM6FcDKEv7aIwiTGm76cXfQ==} resolution: {integrity: sha512-E8Cp98kRe4gKHjJD4NExXKz/zOJ1A2hhZc+IMVD6i7w4yjIvh6VyuRI0gRtxAsXtoC35uGMaQ9rjI2zJaXDEAw==}
engines: {node: ^16.0.0 || >=18.0.0} engines: {node: ^16.0.0 || >=18.0.0}
dependencies: dependencies:
'@typescript-eslint/types': 6.19.1 '@typescript-eslint/types': 6.20.0
eslint-visitor-keys: 3.4.3 eslint-visitor-keys: 3.4.3
dev: true dev: true
@ -3044,6 +3344,11 @@ packages:
engines: {node: '>=6'} engines: {node: '>=6'}
dev: false dev: false
/clsx@2.1.0:
resolution: {integrity: sha512-m3iNNWpd9rl3jvvcBnu70ylMdrXt8Vlq4HYadnU5fwcOtvkSQWPmj7amUcDT2qYI7risszBjI5AUIUox9D16pg==}
engines: {node: '>=6'}
dev: false
/code-red@1.0.4: /code-red@1.0.4:
resolution: {integrity: sha512-7qJWqItLA8/VPVlKJlFXU+NBlo/qyfs39aJcuMT/2ere32ZqvF5OSxgdM5xOfJJ7O429gg2HM47y8v9P+9wrNw==} resolution: {integrity: sha512-7qJWqItLA8/VPVlKJlFXU+NBlo/qyfs39aJcuMT/2ere32ZqvF5OSxgdM5xOfJJ7O429gg2HM47y8v9P+9wrNw==}
dependencies: dependencies:
@ -3667,6 +3972,12 @@ packages:
minipass: 3.3.6 minipass: 3.3.6
dev: false dev: false
/fs-monkey@1.0.5:
resolution: {integrity: sha512-8uMbBjrhzW76TYgEV27Y5E//W2f/lTFmx78P2w19FZSxarhI/798APGQyuGCwmkNxgwGRhrLfvWyLBvNtuOmew==}
requiresBuild: true
dev: false
optional: true
/fs.realpath@1.0.0: /fs.realpath@1.0.0:
resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==}
@ -4161,10 +4472,10 @@ packages:
dependencies: dependencies:
yallist: 4.0.0 yallist: 4.0.0
/lucia@3.0.0-beta.15: /lucia@3.0.1:
resolution: {integrity: sha512-xSQMylJSoHwR704RcvgS8tUlI1aUaWDnuSen0MxhnFiB9OajxHYUPW5ODot5NiadKhewOdLx7q17cF4Ld13eRg==} resolution: {integrity: sha512-srwUkTCGgr6N4mFpaKZVZy5kwiRZdsrbIDv9Wrjar+xyw1MjojYQQ7oRbegjRWOZ3yI8xOOclK3sz/rga2J7/w==}
dependencies: dependencies:
oslo: 0.27.1 oslo: 1.0.1
dev: false dev: false
/lucide-svelte@0.298.0(svelte@4.2.9): /lucide-svelte@0.298.0(svelte@4.2.9):
@ -4209,6 +4520,23 @@ packages:
/mdn-data@2.0.30: /mdn-data@2.0.30:
resolution: {integrity: sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==} resolution: {integrity: sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==}
/memfs-browser@3.5.10302:
resolution: {integrity: sha512-JJTc/nh3ig05O0gBBGZjTCPOyydaTxNF0uHYBrcc1gHNnO+KIHIvo0Y1FKCJsaei6FCl8C6xfQomXqu+cuzkIw==}
requiresBuild: true
dependencies:
memfs: 3.5.3
dev: false
optional: true
/memfs@3.5.3:
resolution: {integrity: sha512-UERzLsxzllchadvbPs5aolHh65ISpKpM+ccLbOJ8/vvpBKmAWf+la7dXFy7Mr0ySHbdHrFv5kGFCUHHe6GFEmw==}
engines: {node: '>= 4.0.0'}
requiresBuild: true
dependencies:
fs-monkey: 1.0.5
dev: false
optional: true
/merge-stream@2.0.0: /merge-stream@2.0.0:
resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==}
dev: true dev: true
@ -4445,8 +4773,8 @@ packages:
mimic-fn: 4.0.0 mimic-fn: 4.0.0
dev: true dev: true
/open-props@1.6.17: /open-props@1.6.18:
resolution: {integrity: sha512-6mp/gpLQz/ZwrGLz+i7tSJ3eWNLE1KxLXHO+b6xxRyZ1Alp4TgTcvHiQ89rC2IkvsU3/IRhpIJuxl7rRCwUzLA==} resolution: {integrity: sha512-xhkbGo6vFdYHWR9mt81p4mlPoRLQHunA6XJAuQ2cUyvoOGKGxDj8dGgXDIbR1EMJVyHPxU1AbtfbloAIRLHWKw==}
dev: false dev: false
/optionator@0.9.3: /optionator@0.9.3:
@ -4461,13 +4789,6 @@ packages:
type-check: 0.4.0 type-check: 0.4.0
dev: true dev: true
/oslo@0.27.1:
resolution: {integrity: sha512-AYU0LpwZ50wIMD3dr4NX0tQzjwxaejSSV9reiY9jbQfgODt49al3f3tMcijyddyvPknUPArz845vpswWyJTWvA==}
dependencies:
'@node-rs/argon2': 1.7.2
'@node-rs/bcrypt': 1.9.2
dev: false
/oslo@1.0.1: /oslo@1.0.1:
resolution: {integrity: sha512-esfzZry+HfGgK/GCYkg7BRlLd3RH5aHa08wgLJPYjENXybi0BvXxGk0LbUj+lXfz2TkjPDHe4rB/o6JxRLHxBg==} resolution: {integrity: sha512-esfzZry+HfGgK/GCYkg7BRlLd3RH5aHa08wgLJPYjENXybi0BvXxGk0LbUj+lXfz2TkjPDHe4rB/o6JxRLHxBg==}
dependencies: dependencies:
@ -4475,6 +4796,13 @@ packages:
'@node-rs/bcrypt': 1.9.2 '@node-rs/bcrypt': 1.9.2
dev: false dev: false
/oslo@1.0.3:
resolution: {integrity: sha512-k3XTmHGqr++d5UsekRDRVY18riITJWerX2aNRg5pqCR8XsFpbGG7g81bbjm/5Cr113QoTkn/W7Vrc25PB0LSPA==}
dependencies:
'@node-rs/argon2': 1.7.0
'@node-rs/bcrypt': 1.9.0
dev: false
/p-limit@3.1.0: /p-limit@3.1.0:
resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==}
engines: {node: '>=10'} engines: {node: '>=10'}
@ -5225,8 +5553,8 @@ packages:
ultrahtml: 1.5.2 ultrahtml: 1.5.2
dev: true dev: true
/satori@0.10.11: /satori@0.10.13:
resolution: {integrity: sha512-yLm1xPRPZUaKcBZJ6nmezoJjHB4MqV8x7Mu0PyZUJodRWRDD27UbeMwzuY9LEGG57WYLO4CQsGPlbHWV1Ex9TQ==} resolution: {integrity: sha512-klCwkVYMQ/ZN5inJLHzrUmGwoRfsdP7idB5hfpJ1jfiJk1ErDitK8Hkc6Kll1+Ox2WtqEuGecSZLnmup3CGzvQ==}
engines: {node: '>=16'} engines: {node: '>=16'}
dependencies: dependencies:
'@shuding/opentype.js': 1.4.0-beta.0 '@shuding/opentype.js': 1.4.0-beta.0
@ -5644,7 +5972,7 @@ packages:
'@sveltejs/kit': 1.x || 2.x '@sveltejs/kit': 1.x || 2.x
svelte: 3.x || 4.x svelte: 3.x || 4.x
dependencies: dependencies:
'@sveltejs/kit': 2.5.0(@sveltejs/vite-plugin-svelte@3.0.1)(svelte@4.2.9)(vite@5.0.12) '@sveltejs/kit': 2.5.0(@sveltejs/vite-plugin-svelte@3.0.2)(svelte@4.2.9)(vite@5.0.12)
svelte: 4.2.9 svelte: 4.2.9
dev: true dev: true
@ -5655,7 +5983,7 @@ packages:
svelte: 3.x || 4.x svelte: 3.x || 4.x
zod: 3.x zod: 3.x
dependencies: dependencies:
'@sveltejs/kit': 2.5.0(@sveltejs/vite-plugin-svelte@3.0.1)(svelte@4.2.9)(vite@5.0.12) '@sveltejs/kit': 2.5.0(@sveltejs/vite-plugin-svelte@3.0.2)(svelte@4.2.9)(vite@5.0.12)
devalue: 4.3.2 devalue: 4.3.2
klona: 2.0.6 klona: 2.0.6
svelte: 4.2.9 svelte: 4.2.9
@ -5674,8 +6002,8 @@ packages:
'@babel/runtime': 7.23.9 '@babel/runtime': 7.23.9
dev: false dev: false
/tailwind-variants@0.1.19(tailwindcss@3.4.1): /tailwind-variants@0.1.20(tailwindcss@3.4.1):
resolution: {integrity: sha512-D9Yf5WqsxodnCtjZt6KifEoKwW8rTURXQV03KRKlojITQM5gV1vPVWufWNiIvd/ptC3QybYFpwmHK9cs4Ei08Q==} resolution: {integrity: sha512-AMh7x313t/V+eTySKB0Dal08RHY7ggYK0MSn/ad8wKWOrDUIzyiWNayRUm2PIJ4VRkvRnfNuyRuKbLV3EN+ewQ==}
engines: {node: '>=16.x', pnpm: '>=7.x'} engines: {node: '>=16.x', pnpm: '>=7.x'}
peerDependencies: peerDependencies:
tailwindcss: '*' tailwindcss: '*'
@ -6150,8 +6478,8 @@ packages:
/yoga-wasm-web@0.3.3: /yoga-wasm-web@0.3.3:
resolution: {integrity: sha512-N+d4UJSJbt/R3wqY7Coqs5pcV0aUj2j9IaQ3rNj9bVCLld8tTGKRa2USARjnvZJWVx1NDmQev8EknoczaOQDOA==} resolution: {integrity: sha512-N+d4UJSJbt/R3wqY7Coqs5pcV0aUj2j9IaQ3rNj9bVCLld8tTGKRa2USARjnvZJWVx1NDmQev8EknoczaOQDOA==}
/zod-to-json-schema@3.22.3(zod@3.22.4): /zod-to-json-schema@3.22.4(zod@3.22.4):
resolution: {integrity: sha512-9isG8SqRe07p+Aio2ruBZmLm2Q6Sq4EqmXOiNpDxp+7f0LV6Q/LX65fs5Nn+FV/CzfF3NLBoksXbS2jNYIfpKw==} resolution: {integrity: sha512-2Ed5dJ+n/O3cU383xSY28cuVi0BCQhF8nYqWU5paEpl7fVdqdAmiLdqLyfblbNdfOFwFfi/mqU4O1pwc60iBhQ==}
peerDependencies: peerDependencies:
zod: ^3.22.4 zod: ^3.22.4
dependencies: dependencies:

2
src/app.d.ts vendored
View file

@ -15,6 +15,7 @@ declare global {
interface Locals { interface Locals {
auth: import('lucia').AuthRequest; auth: import('lucia').AuthRequest;
user: import('lucia').User | null; user: import('lucia').User | null;
session: import('lucia').Session | null;
prisma: PrismaClient; prisma: PrismaClient;
startTimer: number; startTimer: number;
ip: string; ip: string;
@ -24,7 +25,6 @@ declare global {
errorStackTrace: string; errorStackTrace: string;
message: unknown; message: unknown;
track: unknown; track: unknown;
session: import('lucia').Session | null;
} }
interface Error { interface Error {
code?: string; code?: string;

View file

@ -1,23 +1,24 @@
import { dev } from '$app/environment'; // import { dev } from '$app/environment';
import { handleErrorWithSentry, Replay } from '@sentry/sveltekit'; // import { handleErrorWithSentry, Replay } from '@sentry/sveltekit';
import * as Sentry from '@sentry/sveltekit'; // import * as Sentry from '@sentry/sveltekit';
Sentry.init({ // TODO: Fix Sentry
dsn: 'https://742e43279df93a3c4a4a78c12eb1f879@o4506057768632320.ingest.sentry.io/4506057770401792', // Sentry.init({
tracesSampleRate: 1.0, // dsn: 'https://742e43279df93a3c4a4a78c12eb1f879@o4506057768632320.ingest.sentry.io/4506057770401792',
// tracesSampleRate: 1.0,
// This sets the sample rate to be 10%. You may want this to be 100% while // // This sets the sample rate to be 10%. You may want this to be 100% while
// in development and sample at a lower rate in production // // in development and sample at a lower rate in production
replaysSessionSampleRate: 0.1, // replaysSessionSampleRate: 0.1,
// If the entire session is not sampled, use the below sample rate to sample // // If the entire session is not sampled, use the below sample rate to sample
// sessions when an error occurs. // // sessions when an error occurs.
replaysOnErrorSampleRate: 1.0, // replaysOnErrorSampleRate: 1.0,
// If you don't want to use Session Replay, just remove the line below: // // If you don't want to use Session Replay, just remove the line below:
integrations: [new Replay()], // integrations: [new Replay()],
environment: dev ? 'development' : 'production' // environment: dev ? 'development' : 'production'
}); // });
// If you have a custom error handler, pass it to `handleErrorWithSentry` // // If you have a custom error handler, pass it to `handleErrorWithSentry`
export const handleError = handleErrorWithSentry(); // export const handleError = handleErrorWithSentry();

View file

@ -1,15 +1,16 @@
import * as Sentry from '@sentry/sveltekit'; // import * as Sentry from '@sentry/sveltekit';
import { sequence } from '@sveltejs/kit/hooks'; import { sequence } from '@sveltejs/kit/hooks';
import type { Handle } from '@sveltejs/kit'; import type { Handle } from '@sveltejs/kit';
import { browser, dev } from '$app/environment'; import { dev } from '$app/environment';
import { lucia } from '$lib/server/auth'; import { lucia } from '$lib/server/auth';
Sentry.init({ // TODO: Fix Sentry as it is not working on SvelteKit v2
dsn: 'https://742e43279df93a3c4a4a78c12eb1f879@o4506057768632320.ingest.sentry.io/4506057770401792', // Sentry.init({
tracesSampleRate: 1, // dsn: 'https://742e43279df93a3c4a4a78c12eb1f879@o4506057768632320.ingest.sentry.io/4506057770401792',
environment: dev ? 'development' : 'production', // tracesSampleRate: 1,
enabled: !dev // environment: dev ? 'development' : 'production',
}); // enabled: !dev
// });
export const authentication: Handle = async function ({ event, resolve }) { export const authentication: Handle = async function ({ event, resolve }) {
const startTimer = Date.now(); const startTimer = Date.now();
@ -52,5 +53,8 @@ export const authentication: Handle = async function ({ event, resolve }) {
return resolve(event); return resolve(event);
}; };
export const handle: Handle = sequence(sequence(Sentry.sentryHandle(), authentication)); export const handle: Handle = sequence(
export const handleError = Sentry.handleErrorWithSentry(); // Sentry.sentryHandle(),
authentication
);
// export const handleError = Sentry.handleErrorWithSentry();

View file

@ -0,0 +1,24 @@
import Root from "./pagination.svelte";
import Content from "./pagination-content.svelte";
import Item from "./pagination-item.svelte";
import Link from "./pagination-link.svelte";
import PrevButton from "./pagination-prev-button.svelte";
import NextButton from "./pagination-next-button.svelte";
import Ellipsis from "./pagination-ellipsis.svelte";
export {
Root,
Content,
Item,
Link,
PrevButton,
NextButton,
Ellipsis,
//
Root as Pagination,
Content as PaginationContent,
Item as PaginationItem,
Link as PaginationLink,
PrevButton as PaginationPrevButton,
NextButton as PaginationNextButton,
Ellipsis as PaginationEllipsis
};

View file

@ -0,0 +1,13 @@
<script lang="ts">
import { cn } from "$lib/utils";
import type { HTMLAttributes } from "svelte/elements";
type $$Props = HTMLAttributes<HTMLUListElement>;
let className: $$Props["class"] = undefined;
export { className as class };
</script>
<ul class={cn("flex flex-row items-center gap-1", className)} {...$$restProps}>
<slot />
</ul>

View file

@ -0,0 +1,19 @@
<script lang="ts">
import { cn } from "$lib/utils";
import { MoreHorizontal } from "lucide-svelte";
import type { HTMLAttributes } from "svelte/elements";
type $$Props = HTMLAttributes<HTMLSpanElement>;
let className: $$Props["class"] = undefined;
export { className as class };
</script>
<span
aria-hidden
class={cn("flex h-9 w-9 items-center justify-center", className)}
{...$$restProps}
>
<MoreHorizontal class="h-4 w-4" />
<span class="sr-only">More pages</span>
</span>

View file

@ -0,0 +1,13 @@
<script lang="ts">
import { cn } from "$lib/utils";
import type { HTMLAttributes } from "svelte/elements";
type $$Props = HTMLAttributes<HTMLLIElement>;
let className: $$Props["class"] = undefined;
export { className as class };
</script>
<li class={cn("", className)} {...$$restProps}>
<slot />
</li>

View file

@ -0,0 +1,34 @@
<script lang="ts">
import { Pagination as PaginationPrimitive } from "bits-ui";
import { cn } from "$lib/utils";
import { buttonVariants, type Props } from "$lib/components/ui/button";
type $$Props = PaginationPrimitive.PageProps &
Props & {
isActive: boolean;
};
type $$Events = PaginationPrimitive.PageEvents;
let className: $$Props["class"] = undefined;
export let page: $$Props["page"];
export let size: $$Props["size"] = "icon";
export let isActive: $$Props["isActive"] = false;
export { className as class };
</script>
<PaginationPrimitive.Page
bind:page
class={cn(
buttonVariants({
variant: isActive ? "outline" : "ghost",
size
}),
className
)}
{...$$restProps}
on:click
>
<slot>{page.value}</slot>
</PaginationPrimitive.Page>

View file

@ -0,0 +1,27 @@
<script lang="ts">
import { Pagination as PaginationPrimitive } from "bits-ui";
import { Button } from "$lib/components/ui/button";
import { cn } from "$lib/utils";
import { ChevronRight } from "lucide-svelte";
type $$Props = PaginationPrimitive.NextButtonProps;
type $$Events = PaginationPrimitive.NextButtonEvents;
let className: $$Props["class"] = undefined;
export { className as class };
</script>
<PaginationPrimitive.NextButton asChild let:builder>
<Button
variant="ghost"
class={cn("gap-1 pr-2.5", className)}
builders={[builder]}
on:click
{...$$restProps}
>
<slot>
<span>Next</span>
<ChevronRight class="h-4 w-4" />
</slot>
</Button>
</PaginationPrimitive.NextButton>

View file

@ -0,0 +1,27 @@
<script lang="ts">
import { Pagination as PaginationPrimitive } from "bits-ui";
import { Button } from "$lib/components/ui/button";
import { cn } from "$lib/utils";
import { ChevronLeft } from "lucide-svelte";
type $$Props = PaginationPrimitive.PrevButtonProps;
type $$Events = PaginationPrimitive.PrevButtonEvents;
let className: $$Props["class"] = undefined;
export { className as class };
</script>
<PaginationPrimitive.PrevButton asChild let:builder>
<Button
variant="ghost"
class={cn("gap-1 pl-2.5", className)}
builders={[builder]}
on:click
{...$$restProps}
>
<slot>
<ChevronLeft class="h-4 w-4" />
<span>Previous</span>
</slot>
</Button>
</PaginationPrimitive.PrevButton>

View file

@ -0,0 +1,34 @@
<script lang="ts">
import { Pagination as PaginationPrimitive } from "bits-ui";
import { cn } from "$lib/utils";
type $$Props = PaginationPrimitive.Props;
type $$Events = PaginationPrimitive.Events;
let className: $$Props["class"] = undefined;
export let count: $$Props["count"] = 0;
export let perPage: $$Props["perPage"] = 10;
export let page: $$Props["page"] = 1;
export let siblingCount: $$Props["siblingCount"] = 1;
export { className as class };
$: currentPage = page;
</script>
<PaginationPrimitive.Root
{count}
{perPage}
{siblingCount}
bind:page
let:builder
let:pages
let:range
asChild
{...$$restProps}
>
<nav {...builder} class={cn("mx-auto flex flex-col w-full items-center", className)}>
<slot {pages} {range} {currentPage} />
</nav>
</PaginationPrimitive.Root>

View file

@ -1,17 +1,10 @@
<script lang="ts"> <script lang="ts">
import { dev } from '$app/environment'; import { dev } from '$app/environment';
import type { SuperValidated } from 'sveltekit-superforms';
import { superForm } from 'sveltekit-superforms/client';
import SuperDebug from 'sveltekit-superforms/client/SuperDebug.svelte'; import SuperDebug from 'sveltekit-superforms/client/SuperDebug.svelte';
import { createPagination, createToolbar, melt } from '@melt-ui/svelte'; import { createToolbar, melt } from '@melt-ui/svelte';
import { ChevronLeft, ChevronRight, LayoutList, LayoutGrid, Check } from 'lucide-svelte'; import { LayoutList, LayoutGrid } from 'lucide-svelte';
import { search_schema, type SearchSchema } from '$lib/zodValidation';
import Game from '$components/Game.svelte'; import Game from '$components/Game.svelte';
import { Label } from '$lib/components/ui/label'; import * as Pagination from "$lib/components/ui/pagination";
import { Input } from '$lib/components/ui/input';
import { Button } from '$lib/components/ui/button';
import { Checkbox } from '$lib/components/ui/checkbox';
import * as Form from "$lib/components/ui/form";
import GameSearchForm from '$components/search/GameSearchForm.svelte'; import GameSearchForm from '$components/search/GameSearchForm.svelte';
export let data; export let data;
@ -22,11 +15,8 @@
console.log('found games', games); console.log('found games', games);
console.log('found totalCount', totalCount); console.log('found totalCount', totalCount);
let submitButton: HTMLElement;
let pageSize: number = data.form.limit || 10; let pageSize: number = data.form.limit || 10;
$: showPagination = totalCount > pageSize;
const { const {
elements: { root: toolbarRoot }, elements: { root: toolbarRoot },
builders: { createToolbarGroup }, builders: { createToolbarGroup },
@ -35,16 +25,6 @@
elements: { group: listStyleGroup, item: listStyleItem }, elements: { group: listStyleGroup, item: listStyleItem },
} = createToolbarGroup(); } = createToolbarGroup();
const {
elements: { root: paginationRoot, pageTrigger, prevButton, nextButton },
states: { pages, range }
} = createPagination({
count: totalCount,
perPage: pageSize,
defaultPage: 1,
siblingCount: 1
});
const gameListStyle: 'grid' | 'list' = 'grid'; const gameListStyle: 'grid' | 'list' = 'grid';
function handleListStyle(event) { function handleListStyle(event) {
console.log(event, typeof event); console.log(event, typeof event);
@ -81,22 +61,29 @@
<h2>Sorry no games found!</h2> <h2>Sorry no games found!</h2>
{/if} {/if}
</div> </div>
{#if showPagination} <Pagination.Root count={totalCount} perPage={pageSize} let:pages let:currentPage>
<nav use:melt={$paginationRoot}> <Pagination.Content>
<p class="text-center">Showing items {$range.start} - {$range.end}</p> <Pagination.Item>
<div class="buttons"> <Pagination.PrevButton />
<button use:melt={$prevButton}><ChevronLeft /></button> </Pagination.Item>
{#each $pages as page (page.key)} {#each pages as page (page.key)}
{#if page.type === 'ellipsis'} {#if page.type === 'ellipsis'}
<span>...</span> <Pagination.Item>
<Pagination.Ellipsis />
</Pagination.Item>
{:else} {:else}
<button use:melt={$pageTrigger(page)} on:m-click={() => console.log('test')}>{page.value}</button> <Pagination.Item isVisible={currentPage == page.value}>
<Pagination.Link {page} isActive={currentPage == page.value}>
{page.value}
</Pagination.Link>
</Pagination.Item>
{/if} {/if}
{/each} {/each}
<button use:melt={$nextButton} on:m-click|preventDefault={() => console.log('test')} on:m-keydown|preventDefault={() => console.log('test')}><ChevronRight /></button> <Pagination.Item>
</div> <Pagination.NextButton />
</nav> </Pagination.Item>
{/if} </Pagination.Content>
</Pagination.Root>
</section> </section>
</div> </div>

View file

@ -1,19 +1,19 @@
import { sentrySvelteKit } from "@sentry/sveltekit"; // import { sentrySvelteKit } from "@sentry/sveltekit";
import { sveltekit } from '@sveltejs/kit/vite'; import { sveltekit } from '@sveltejs/kit/vite';
import { defineConfig } from 'vite'; import { defineConfig } from 'vite';
// TODO: Fix Sentry
export default defineConfig({ export default defineConfig({
plugins: [ plugins: [
sentrySvelteKit({ // sentrySvelteKit({
sourceMapsUploadOptions: { // sourceMapsUploadOptions: {
org: process.env.SENTRY_ORG, // org: process.env.SENTRY_ORG,
project: process.env.SENTRY_PROJECT, // project: process.env.SENTRY_PROJECT,
authToken: process.env.SENTRY_AUTH_TOKEN, // authToken: process.env.SENTRY_AUTH_TOKEN,
cleanArtifacts: true, // cleanArtifacts: true,
} // }
}), // }),
sveltekit() sveltekit()
// , rawFonts(['.ttf'])
], ],
test: { test: {
include: ['src/**/*.{test,spec}.{js,ts}'] include: ['src/**/*.{test,spec}.{js,ts}']