Middleware changes

This commit is contained in:
Atridad Lahiji 2023-10-15 00:13:18 -03:00
parent e119ff1496
commit fefffc88b5
No known key found for this signature in database
3 changed files with 107 additions and 110 deletions

View file

@ -1,4 +1,4 @@
import { authMiddleware, redirectToSignIn } from "@clerk/nextjs"; import { authMiddleware } from "@clerk/nextjs";
import { validateRequest } from "./app/_lib/unkey"; import { validateRequest } from "./app/_lib/unkey";
import { NextResponse } from "next/server"; import { NextResponse } from "next/server";
import { Ratelimit } from "@upstash/ratelimit"; import { Ratelimit } from "@upstash/ratelimit";
@ -16,12 +16,8 @@ const rateLimit = new Ratelimit({
export default authMiddleware({ export default authMiddleware({
ignoredRoutes: ["/"], ignoredRoutes: ["/"],
publicRoutes: [ publicRoutes: ["/api/external/(.*)", "/api/webhooks/(.*)"],
"/api/external/public/(.*)", apiRoutes: ["/api/internal/(.*)"],
"/api/webhooks",
"/api/webhooks/(.*)",
],
apiRoutes: ["/api/external/private/(.*)", "/api/internal/(.*)"],
beforeAuth: async (req) => { beforeAuth: async (req) => {
const { success } = await rateLimit.limit(req.ip || ""); const { success } = await rateLimit.limit(req.ip || "");
if (success) { if (success) {

View file

@ -14,16 +14,16 @@
"init:env": "cp .env.example .env" "init:env": "cp .env.example .env"
}, },
"dependencies": { "dependencies": {
"@clerk/nextjs": "^4.25.3", "@clerk/nextjs": "^4.25.4",
"@clerk/themes": "^1.7.7", "@clerk/themes": "^1.7.7",
"@libsql/client": "^0.3.5", "@libsql/client": "^0.3.5",
"@paralleldrive/cuid2": "^2.2.2", "@paralleldrive/cuid2": "^2.2.2",
"@t3-oss/env-nextjs": "^0.7.0", "@t3-oss/env-nextjs": "^0.7.0",
"@tanstack/react-query": "^4.36.1", "@tanstack/react-query": "^4.36.1",
"@unkey/api": "^0.10.0", "@unkey/api": "^0.10.3",
"@upstash/ratelimit": "^0.4.4", "@upstash/ratelimit": "^0.4.4",
"@upstash/redis": "^1.23.3", "@upstash/redis": "^1.23.3",
"@vercel/analytics": "^1.1.0", "@vercel/analytics": "^1.1.1",
"ably": "^1.2.45", "ably": "^1.2.45",
"autoprefixer": "^10.4.16", "autoprefixer": "^10.4.16",
"csv42": "^5.0.0", "csv42": "^5.0.0",
@ -42,7 +42,7 @@
"devDependencies": { "devDependencies": {
"@tanstack/eslint-plugin-query": "^4.36.1", "@tanstack/eslint-plugin-query": "^4.36.1",
"@types/eslint": "^8.44.4", "@types/eslint": "^8.44.4",
"@types/node": "^20.8.4", "@types/node": "^20.8.6",
"@types/react": "^18.2.28", "@types/react": "^18.2.28",
"@typescript-eslint/eslint-plugin": "^6.7.5", "@typescript-eslint/eslint-plugin": "^6.7.5",
"@typescript-eslint/parser": "^6.7.5", "@typescript-eslint/parser": "^6.7.5",

199
pnpm-lock.yaml generated
View file

@ -6,8 +6,8 @@ settings:
dependencies: dependencies:
'@clerk/nextjs': '@clerk/nextjs':
specifier: ^4.25.3 specifier: ^4.25.4
version: 4.25.3(next@13.5.4)(react-dom@18.2.0)(react@18.2.0) version: 4.25.4(next@13.5.4)(react-dom@18.2.0)(react@18.2.0)
'@clerk/themes': '@clerk/themes':
specifier: ^1.7.7 specifier: ^1.7.7
version: 1.7.7(react@18.2.0) version: 1.7.7(react@18.2.0)
@ -24,8 +24,8 @@ dependencies:
specifier: ^4.36.1 specifier: ^4.36.1
version: 4.36.1(react-dom@18.2.0)(react@18.2.0) version: 4.36.1(react-dom@18.2.0)(react@18.2.0)
'@unkey/api': '@unkey/api':
specifier: ^0.10.0 specifier: ^0.10.3
version: 0.10.0 version: 0.10.3
'@upstash/ratelimit': '@upstash/ratelimit':
specifier: ^0.4.4 specifier: ^0.4.4
version: 0.4.4 version: 0.4.4
@ -33,8 +33,8 @@ dependencies:
specifier: ^1.23.3 specifier: ^1.23.3
version: 1.23.3 version: 1.23.3
'@vercel/analytics': '@vercel/analytics':
specifier: ^1.1.0 specifier: ^1.1.1
version: 1.1.0 version: 1.1.1
ably: ably:
specifier: ^1.2.45 specifier: ^1.2.45
version: 1.2.45(bufferutil@4.0.7)(react-dom@18.2.0)(react@18.2.0)(utf-8-validate@6.0.3) version: 1.2.45(bufferutil@4.0.7)(react-dom@18.2.0)(react@18.2.0)(utf-8-validate@6.0.3)
@ -86,8 +86,8 @@ devDependencies:
specifier: ^8.44.4 specifier: ^8.44.4
version: 8.44.4 version: 8.44.4
'@types/node': '@types/node':
specifier: ^20.8.4 specifier: ^20.8.6
version: 20.8.4 version: 20.8.6
'@types/react': '@types/react':
specifier: ^18.2.28 specifier: ^18.2.28
version: 18.2.28 version: 18.2.28
@ -143,19 +143,19 @@ packages:
engines: {node: '>=10'} engines: {node: '>=10'}
dev: true dev: true
/@babel/runtime@7.23.1: /@babel/runtime@7.23.2:
resolution: {integrity: sha512-hC2v6p8ZSI/W0HUzh3V8C5g+NwSKzKPtJwSpTjwl0o297GP9+ZLQSkdvHz46CM3LqyoXxq+5G9komY+eSqSO0g==} resolution: {integrity: sha512-mM8eg4yl5D6i3lu2QKPuPH4FArvJ8KhTofbE7jwMUv9KX5mBvwPAqnV3MlyBNqdp9RyRKP6Yck8TrfYrPvX3bg==}
engines: {node: '>=6.9.0'} engines: {node: '>=6.9.0'}
dependencies: dependencies:
regenerator-runtime: 0.14.0 regenerator-runtime: 0.14.0
dev: true dev: true
/@clerk/backend@0.30.3(react@18.2.0): /@clerk/backend@0.31.0(react@18.2.0):
resolution: {integrity: sha512-fEQqfIUevBeHvPXoPP/hoocdAd0tond/cDgG65U7sO3zirmVBpNVI91074pctXBoQGa7QCzs52ZvIBssfaag9w==} resolution: {integrity: sha512-xYThKskH7J3bHLX3US8lUq96DfEdbgMNsRizYXEJayPIKJuAaHEIwrtX+tmPEqQ2cunJPvcyi6tnVfROH/3yfg==}
engines: {node: '>=14'} engines: {node: '>=14'}
dependencies: dependencies:
'@clerk/shared': 0.24.3(react@18.2.0) '@clerk/shared': 0.24.4(react@18.2.0)
'@clerk/types': 3.54.0 '@clerk/types': 3.55.0
'@peculiar/webcrypto': 1.4.1 '@peculiar/webcrypto': 1.4.1
'@types/node': 16.18.6 '@types/node': 16.18.6
cookie: 0.5.0 cookie: 0.5.0
@ -167,24 +167,25 @@ packages:
- react - react
dev: false dev: false
/@clerk/clerk-react@4.26.3(react@18.2.0): /@clerk/clerk-react@4.26.4(react@18.2.0):
resolution: {integrity: sha512-ge77CuKSPl85YU6476icA4F/bEzgcpjTjHikR4ae1ykHsKGANcL63F4whnQ8deP0MpfM6hahkhdVlcTGApLMzA==} resolution: {integrity: sha512-JpOju2V0NnH2MPLmyaDmcF2pI5N/2v1F+CRBaocD/gXsDEXrfi0sYZWYR7TeViu9fh1dxu7OvEH8dSb2eesk5A==}
engines: {node: '>=14'} engines: {node: '>=14'}
peerDependencies: peerDependencies:
react: '>=16' react: '>=16'
dependencies: dependencies:
'@clerk/shared': 0.24.3(react@18.2.0) '@clerk/shared': 0.24.4(react@18.2.0)
'@clerk/types': 3.54.0 '@clerk/types': 3.55.0
react: 18.2.0 react: 18.2.0
tslib: 2.4.1 tslib: 2.4.1
dev: false dev: false
/@clerk/clerk-sdk-node@4.12.12(react@18.2.0): /@clerk/clerk-sdk-node@4.12.13(react@18.2.0):
resolution: {integrity: sha512-k9nSSgFpHfW/vda6beLWSYmTiR7I2lhCYWsj58Ik/H0AB7UXIoxoWMbSGjCZE9iDlaeo8pazycOIbZpxhzdHPg==} resolution: {integrity: sha512-N8tra01CCvpTUW7bcbjDKIfGkRk1AJyLG58KQ8wCWLV+gnNyjfXsCcYHxuRUJ1ZJ1VsZele7xAhfy9nVRmCDog==}
engines: {node: '>=14'} engines: {node: '>=14'}
dependencies: dependencies:
'@clerk/backend': 0.30.3(react@18.2.0) '@clerk/backend': 0.31.0(react@18.2.0)
'@clerk/types': 3.54.0 '@clerk/shared': 0.24.4(react@18.2.0)
'@clerk/types': 3.55.0
'@types/cookies': 0.7.7 '@types/cookies': 0.7.7
'@types/express': 4.17.14 '@types/express': 4.17.14
'@types/node-fetch': 2.6.2 '@types/node-fetch': 2.6.2
@ -195,19 +196,19 @@ packages:
- react - react
dev: false dev: false
/@clerk/nextjs@4.25.3(next@13.5.4)(react-dom@18.2.0)(react@18.2.0): /@clerk/nextjs@4.25.4(next@13.5.4)(react-dom@18.2.0)(react@18.2.0):
resolution: {integrity: sha512-z1vLfcN+VVr1rpiPpIL6bYsZrsPwW9YuOpdoXLi+V4aTz4VfW9o1cAnZIBQdHat/jD5cgsocpYBWN1F4EFksoQ==} resolution: {integrity: sha512-tFZMQZf+O8S1PphN6muqnB/lNd1lAUWRo2Rh2tmT4Zh3EQ7uRRZsNFf9yVbs3h1Edv4RJv5Q6Ld6FMPbKeQcYw==}
engines: {node: '>=14'} engines: {node: '>=14'}
peerDependencies: peerDependencies:
next: '>=10' next: '>=10'
react: ^17.0.2 || ^18.0.0-0 react: ^17.0.2 || ^18.0.0-0
react-dom: ^17.0.2 || ^18.0.0-0 react-dom: ^17.0.2 || ^18.0.0-0
dependencies: dependencies:
'@clerk/backend': 0.30.3(react@18.2.0) '@clerk/backend': 0.31.0(react@18.2.0)
'@clerk/clerk-react': 4.26.3(react@18.2.0) '@clerk/clerk-react': 4.26.4(react@18.2.0)
'@clerk/clerk-sdk-node': 4.12.12(react@18.2.0) '@clerk/clerk-sdk-node': 4.12.13(react@18.2.0)
'@clerk/shared': 0.24.3(react@18.2.0) '@clerk/shared': 0.24.4(react@18.2.0)
'@clerk/types': 3.54.0 '@clerk/types': 3.55.0
next: 13.5.4(react-dom@18.2.0)(react@18.2.0) next: 13.5.4(react-dom@18.2.0)(react@18.2.0)
path-to-regexp: 6.2.1 path-to-regexp: 6.2.1
react: 18.2.0 react: 18.2.0
@ -215,8 +216,8 @@ packages:
tslib: 2.4.1 tslib: 2.4.1
dev: false dev: false
/@clerk/shared@0.24.3(react@18.2.0): /@clerk/shared@0.24.4(react@18.2.0):
resolution: {integrity: sha512-fZ0inqzP7hSDW8BUtIutqAt3YrOw/7ZDXxc3vRDMqY0shR8V6KXM7xdGS1dPV2qGxCBhBVbXRA/oFdKhO7PhJg==} resolution: {integrity: sha512-yrJfyjQYB7LJNjjotF0uO1EmlCQkX2M26jrZfEvQ52WIMtE+GMQVvD3bgi/PlJRlCdB+Fuei8A9Q4eTGWchl/w==}
peerDependencies: peerDependencies:
react: '>=16' react: '>=16'
dependencies: dependencies:
@ -235,8 +236,8 @@ packages:
react: 18.2.0 react: 18.2.0
dev: false dev: false
/@clerk/types@3.54.0: /@clerk/types@3.55.0:
resolution: {integrity: sha512-ZFS8Vz2elyxzupuTd7VO++TrzMmbhsgszriDSQKGCf69KeegZqGJ8QhzUWMcB7Ro/991bUKbZ56QF3x49j8Lbg==} resolution: {integrity: sha512-yaDuKt760JDVazrxB12tHcdOmOSwusEYhsyI627Uj+jF9mNOVP+bBxGjv36zr/otoAH0aboHkNoZuS/E7AkmqA==}
engines: {node: '>=14'} engines: {node: '>=14'}
dependencies: dependencies:
csstype: 3.1.1 csstype: 3.1.1
@ -550,23 +551,23 @@ packages:
dependencies: dependencies:
'@libsql/hrana-client': 0.5.5(bufferutil@4.0.7)(utf-8-validate@6.0.3) '@libsql/hrana-client': 0.5.5(bufferutil@4.0.7)(utf-8-validate@6.0.3)
js-base64: 3.7.5 js-base64: 3.7.5
libsql: 0.1.28 libsql: 0.1.29
transitivePeerDependencies: transitivePeerDependencies:
- bufferutil - bufferutil
- encoding - encoding
- utf-8-validate - utf-8-validate
dev: false dev: false
/@libsql/darwin-arm64@0.1.28: /@libsql/darwin-arm64@0.1.29:
resolution: {integrity: sha512-p4nldHUOhcl9ibnH1F6oiXV5Dl3PAcPB9VIjdjVvO3/URo5J7mhqRMuwJMKO5DZJJGtkKJ5IO0gu0hc90rnKIg==} resolution: {integrity: sha512-lYSQaJV6Jsjuh/zms7i6QCL2GLQT17zeFVUZBNQxje0GyUtpvvfkz10S32n5+cY1TRbsbBCKzYhYxnTaTdD7Eg==}
cpu: [arm64] cpu: [arm64]
os: [darwin] os: [darwin]
requiresBuild: true requiresBuild: true
dev: false dev: false
optional: true optional: true
/@libsql/darwin-x64@0.1.28: /@libsql/darwin-x64@0.1.29:
resolution: {integrity: sha512-WaEK+Z+wP5sr0h8EcusSGHv4Mqc3smYICeG4P/wsbRDKQ2WUMWqZrpgqaBsm+WPbXogU2vpf+qGc8BnpFZ0ggw==} resolution: {integrity: sha512-LFf6oSiBCQ0jJmh4WrQQKpa99qZVdY6KPNHU621hPV6LarEA/59YErMfAZOQY5A0iAhAzJ9ml0npt0Z63MU9dA==}
cpu: [x64] cpu: [x64]
os: [darwin] os: [darwin]
requiresBuild: true requiresBuild: true
@ -605,32 +606,32 @@ packages:
- utf-8-validate - utf-8-validate
dev: false dev: false
/@libsql/linux-arm64-gnu@0.1.28: /@libsql/linux-arm64-gnu@0.1.29:
resolution: {integrity: sha512-a17ANBuOqH2L8gdyET4Kg3XggQvxWnoA+7x7sDEX5NyWNyvr7P04WzNPAT0xAOWLclC1fDD6jM5sh/fbJk/7NA==} resolution: {integrity: sha512-9Mtz3xRUpj1gRMFqi0+R/e2hAq711u0ogTvvlNWKjA9OZZfPgk0vLlT1Pqm0Pf1gyVc393RafZcCGP3FZMkjmg==}
cpu: [arm64] cpu: [arm64]
os: [linux] os: [linux]
requiresBuild: true requiresBuild: true
dev: false dev: false
optional: true optional: true
/@libsql/linux-x64-gnu@0.1.28: /@libsql/linux-x64-gnu@0.1.29:
resolution: {integrity: sha512-dkg+Ou7ApV0PHpZWd9c6NrYyc/WSNn5h/ScKotaMTLWlLL96XAMNwrYLpZpUj61I2y7QzU98XtMfiSD1Ux+VaA==} resolution: {integrity: sha512-EE3YpxqSRXnvxwPq38A9j1/poqzEJrDXnGEKcVcWqC2FB/qPJHxnAITBUNYicovdrrZYWRE5EM0LdSO6CMWi6A==}
cpu: [x64] cpu: [x64]
os: [linux] os: [linux]
requiresBuild: true requiresBuild: true
dev: false dev: false
optional: true optional: true
/@libsql/linux-x64-musl@0.1.28: /@libsql/linux-x64-musl@0.1.29:
resolution: {integrity: sha512-ZuOxCDYlG+f1IDsxstmaxLtgG9HvlLuUKs0X3um4f5F5V+P+PF8qr08gSdD1IP2pj+JBOiwhQffaEpR1wupxhQ==} resolution: {integrity: sha512-CJc+hKbUzF0JpAqQHT7P3SPb/NLCWsPzBD6j8fvHH34JLRYaIu9H8WrXsxAcVF65B7Jvat/CXnSe+iOctonBow==}
cpu: [x64] cpu: [x64]
os: [linux] os: [linux]
requiresBuild: true requiresBuild: true
dev: false dev: false
optional: true optional: true
/@libsql/win32-x64-msvc@0.1.28: /@libsql/win32-x64-msvc@0.1.29:
resolution: {integrity: sha512-2cmUiMIsJLHpetebGeeYqUYaCPWEnwMjqxwu1ZEEbA5x8r+DNmIhLrc0QSQ29p7a5u14vbZnShNOtT/XG7vKew==} resolution: {integrity: sha512-pIdMzY+NOKHDHiTUGLwMd3TICUiHbcxPedPRYJAI6ofTSu77JEmkmfkXcCOL8L8B9gio4ZuNeok+1i/ZPf6oeQ==}
cpu: [x64] cpu: [x64]
os: [win32] os: [win32]
requiresBuild: true requiresBuild: true
@ -877,7 +878,7 @@ packages:
resolution: {integrity: sha512-oyl4jvAfTGX9Bt6Or4H9ni1Z447/tQuxnZsytsCaExKlmJiU8sFgnIBRzJUpKwB5eWn9HuBYlUlVA74q/yN0eQ==} resolution: {integrity: sha512-oyl4jvAfTGX9Bt6Or4H9ni1Z447/tQuxnZsytsCaExKlmJiU8sFgnIBRzJUpKwB5eWn9HuBYlUlVA74q/yN0eQ==}
dependencies: dependencies:
'@types/connect': 3.4.36 '@types/connect': 3.4.36
'@types/node': 20.8.4 '@types/node': 20.8.6
dev: false dev: false
/@types/cacheable-request@6.0.3: /@types/cacheable-request@6.0.3:
@ -885,14 +886,14 @@ packages:
dependencies: dependencies:
'@types/http-cache-semantics': 4.0.2 '@types/http-cache-semantics': 4.0.2
'@types/keyv': 3.1.4 '@types/keyv': 3.1.4
'@types/node': 20.8.4 '@types/node': 20.8.6
'@types/responselike': 1.0.1 '@types/responselike': 1.0.1
dev: false dev: false
/@types/connect@3.4.36: /@types/connect@3.4.36:
resolution: {integrity: sha512-P63Zd/JUGq+PdrM1lv0Wv5SBYeA2+CORvbrXbngriYY0jzLUWfQMQQxOhjONEz/wlHOAxOdY7CY65rgQdTjq2w==} resolution: {integrity: sha512-P63Zd/JUGq+PdrM1lv0Wv5SBYeA2+CORvbrXbngriYY0jzLUWfQMQQxOhjONEz/wlHOAxOdY7CY65rgQdTjq2w==}
dependencies: dependencies:
'@types/node': 20.8.4 '@types/node': 20.8.6
dev: false dev: false
/@types/cookies@0.7.7: /@types/cookies@0.7.7:
@ -901,7 +902,7 @@ packages:
'@types/connect': 3.4.36 '@types/connect': 3.4.36
'@types/express': 4.17.14 '@types/express': 4.17.14
'@types/keygrip': 1.0.3 '@types/keygrip': 1.0.3
'@types/node': 20.8.4 '@types/node': 20.8.6
dev: false dev: false
/@types/eslint@8.44.4: /@types/eslint@8.44.4:
@ -918,7 +919,7 @@ packages:
/@types/express-serve-static-core@4.17.37: /@types/express-serve-static-core@4.17.37:
resolution: {integrity: sha512-ZohaCYTgGFcOP7u6aJOhY9uIZQgZ2vxC2yWoArY+FeDXlqeH66ZVBjgvg+RLVAS/DWNq4Ap9ZXu1+SUQiiWYMg==} resolution: {integrity: sha512-ZohaCYTgGFcOP7u6aJOhY9uIZQgZ2vxC2yWoArY+FeDXlqeH66ZVBjgvg+RLVAS/DWNq4Ap9ZXu1+SUQiiWYMg==}
dependencies: dependencies:
'@types/node': 20.8.4 '@types/node': 20.8.6
'@types/qs': 6.9.8 '@types/qs': 6.9.8
'@types/range-parser': 1.2.5 '@types/range-parser': 1.2.5
'@types/send': 0.17.2 '@types/send': 0.17.2
@ -956,7 +957,7 @@ packages:
/@types/keyv@3.1.4: /@types/keyv@3.1.4:
resolution: {integrity: sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==} resolution: {integrity: sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==}
dependencies: dependencies:
'@types/node': 20.8.4 '@types/node': 20.8.6
dev: false dev: false
/@types/mime@1.3.3: /@types/mime@1.3.3:
@ -970,14 +971,14 @@ packages:
/@types/node-fetch@2.6.2: /@types/node-fetch@2.6.2:
resolution: {integrity: sha512-DHqhlq5jeESLy19TYhLakJ07kNumXWjcDdxXsLUMJZ6ue8VZJj4kLPQVE/2mdHh3xZziNF1xppu5lwmS53HR+A==} resolution: {integrity: sha512-DHqhlq5jeESLy19TYhLakJ07kNumXWjcDdxXsLUMJZ6ue8VZJj4kLPQVE/2mdHh3xZziNF1xppu5lwmS53HR+A==}
dependencies: dependencies:
'@types/node': 20.8.4 '@types/node': 20.8.6
form-data: 3.0.1 form-data: 3.0.1
dev: false dev: false
/@types/node-fetch@2.6.6: /@types/node-fetch@2.6.6:
resolution: {integrity: sha512-95X8guJYhfqiuVVhRFxVQcf4hW/2bCuoPwDasMf/531STFoNoWTT7YDnWdXHEZKqAGUigmpG31r2FE70LwnzJw==} resolution: {integrity: sha512-95X8guJYhfqiuVVhRFxVQcf4hW/2bCuoPwDasMf/531STFoNoWTT7YDnWdXHEZKqAGUigmpG31r2FE70LwnzJw==}
dependencies: dependencies:
'@types/node': 20.8.4 '@types/node': 20.8.6
form-data: 4.0.0 form-data: 4.0.0
dev: false dev: false
@ -985,8 +986,8 @@ packages:
resolution: {integrity: sha512-vmYJF0REqDyyU0gviezF/KHq/fYaUbFhkcNbQCuPGFQj6VTbXuHZoxs/Y7mutWe73C8AC6l9fFu8mSYiBAqkGA==} resolution: {integrity: sha512-vmYJF0REqDyyU0gviezF/KHq/fYaUbFhkcNbQCuPGFQj6VTbXuHZoxs/Y7mutWe73C8AC6l9fFu8mSYiBAqkGA==}
dev: false dev: false
/@types/node@20.8.4: /@types/node@20.8.6:
resolution: {integrity: sha512-ZVPnqU58giiCjSxjVUESDtdPk4QR5WQhhINbc9UBrKLU68MX5BF6kbQzTrkwbolyr0X8ChBpXfavr5mZFKZQ5A==} resolution: {integrity: sha512-eWO4K2Ji70QzKUqRy6oyJWUeB7+g2cRagT3T/nxYibYcT4y2BDL8lqolRXjTHmkZCdJfIPaY73KbJAZmcryxTQ==}
dependencies: dependencies:
undici-types: 5.25.3 undici-types: 5.25.3
@ -1013,7 +1014,7 @@ packages:
/@types/responselike@1.0.1: /@types/responselike@1.0.1:
resolution: {integrity: sha512-TiGnitEDxj2X0j+98Eqk5lv/Cij8oHd32bU4D/Yw6AOq7vvTk0gSD2GPj0G/HkvhMoVsdlhYF4yqqlyPBTM6Sg==} resolution: {integrity: sha512-TiGnitEDxj2X0j+98Eqk5lv/Cij8oHd32bU4D/Yw6AOq7vvTk0gSD2GPj0G/HkvhMoVsdlhYF4yqqlyPBTM6Sg==}
dependencies: dependencies:
'@types/node': 20.8.4 '@types/node': 20.8.6
dev: false dev: false
/@types/scheduler@0.16.4: /@types/scheduler@0.16.4:
@ -1028,7 +1029,7 @@ packages:
resolution: {integrity: sha512-aAG6yRf6r0wQ29bkS+x97BIs64ZLxeE/ARwyS6wrldMm3C1MdKwCcnnEwMC1slI8wuxJOpiUH9MioC0A0i+GJw==} resolution: {integrity: sha512-aAG6yRf6r0wQ29bkS+x97BIs64ZLxeE/ARwyS6wrldMm3C1MdKwCcnnEwMC1slI8wuxJOpiUH9MioC0A0i+GJw==}
dependencies: dependencies:
'@types/mime': 1.3.3 '@types/mime': 1.3.3
'@types/node': 20.8.4 '@types/node': 20.8.6
dev: false dev: false
/@types/serve-static@1.15.3: /@types/serve-static@1.15.3:
@ -1036,13 +1037,13 @@ packages:
dependencies: dependencies:
'@types/http-errors': 2.0.2 '@types/http-errors': 2.0.2
'@types/mime': 3.0.2 '@types/mime': 3.0.2
'@types/node': 20.8.4 '@types/node': 20.8.6
dev: false dev: false
/@types/ws@8.5.7: /@types/ws@8.5.7:
resolution: {integrity: sha512-6UrLjiDUvn40CMrAubXuIVtj2PEfKDffJS7ychvnPU44j+KVeXmdHHTgqcM/dxLUTHxlXHiFM8Skmb8ozGdTnQ==} resolution: {integrity: sha512-6UrLjiDUvn40CMrAubXuIVtj2PEfKDffJS7ychvnPU44j+KVeXmdHHTgqcM/dxLUTHxlXHiFM8Skmb8ozGdTnQ==}
dependencies: dependencies:
'@types/node': 20.8.4 '@types/node': 20.8.6
dev: false dev: false
/@typescript-eslint/eslint-plugin@6.7.5(@typescript-eslint/parser@6.7.5)(eslint@8.51.0)(typescript@5.2.2): /@typescript-eslint/eslint-plugin@6.7.5(@typescript-eslint/parser@6.7.5)(eslint@8.51.0)(typescript@5.2.2):
@ -1176,8 +1177,8 @@ packages:
eslint-visitor-keys: 3.4.3 eslint-visitor-keys: 3.4.3
dev: true dev: true
/@unkey/api@0.10.0: /@unkey/api@0.10.3:
resolution: {integrity: sha512-ix1XQqZPuBlNkimQniqNjwpqduGb/hBm5LAFRgPfotY97IGUcsKGV3YGl7GAnqFB9wa31OeOT/yeSbEgXiQJWw==} resolution: {integrity: sha512-q0wK3D2gG8zfFSmM7k9bp1hV7X9wRFmuafiPnM/BXkURZllPvz/fNzwLkgzUiQOcSn97LPW9Tes2OW1MhbNwpQ==}
dev: false dev: false
/@upstash/core-analytics@0.0.6: /@upstash/core-analytics@0.0.6:
@ -1205,8 +1206,8 @@ packages:
- encoding - encoding
dev: false dev: false
/@vercel/analytics@1.1.0: /@vercel/analytics@1.1.1:
resolution: {integrity: sha512-k5ePYZPxitxxD1eJenPUUuH3qK+EtaA9OVD3oO0BRbyT/LarmZF0qdkptRSidip1arQxsTEIWvHbTuj1oksl+Q==} resolution: {integrity: sha512-+NqgNmSabg3IFfxYhrWCfB/H+RCUOCR5ExRudNG2+pcRehq628DJB5e1u1xqwpLtn4pAYii4D98w7kofORAGQA==}
dependencies: dependencies:
server-only: 0.0.1 server-only: 0.0.1
dev: false dev: false
@ -1406,8 +1407,8 @@ packages:
postcss: ^8.1.0 postcss: ^8.1.0
dependencies: dependencies:
browserslist: 4.22.1 browserslist: 4.22.1
caniuse-lite: 1.0.30001547 caniuse-lite: 1.0.30001549
fraction.js: 4.3.6 fraction.js: 4.3.7
normalize-range: 0.1.2 normalize-range: 0.1.2
picocolors: 1.0.0 picocolors: 1.0.0
postcss: 8.4.31 postcss: 8.4.31
@ -1502,8 +1503,8 @@ packages:
engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
hasBin: true hasBin: true
dependencies: dependencies:
caniuse-lite: 1.0.30001547 caniuse-lite: 1.0.30001549
electron-to-chromium: 1.4.549 electron-to-chromium: 1.4.554
node-releases: 2.0.13 node-releases: 2.0.13
update-browserslist-db: 1.0.13(browserslist@4.22.1) update-browserslist-db: 1.0.13(browserslist@4.22.1)
dev: false dev: false
@ -1553,7 +1554,7 @@ packages:
/call-bind@1.0.2: /call-bind@1.0.2:
resolution: {integrity: sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==} resolution: {integrity: sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==}
dependencies: dependencies:
function-bind: 1.1.1 function-bind: 1.1.2
get-intrinsic: 1.2.1 get-intrinsic: 1.2.1
dev: true dev: true
@ -1586,8 +1587,8 @@ packages:
engines: {node: '>=14.16'} engines: {node: '>=14.16'}
dev: true dev: true
/caniuse-lite@1.0.30001547: /caniuse-lite@1.0.30001549:
resolution: {integrity: sha512-W7CrtIModMAxobGhz8iXmDfuJiiKg1WADMO/9x7/CLNin5cpSbuBjooyoIUVB5eyCc36QuTVlkVa1iB2S5+/eA==} resolution: {integrity: sha512-qRp48dPYSCYaP+KurZLhDYdVE+yEyht/3NlmcJgVQ2VMGt6JL36ndQ/7rgspdZsJuxDPFIo/OzBT2+GmIJ53BA==}
dev: false dev: false
/chalk@4.1.2: /chalk@4.1.2:
@ -1814,8 +1815,8 @@ packages:
engines: {node: '>=10'} engines: {node: '>=10'}
dev: false dev: false
/define-data-property@1.1.0: /define-data-property@1.1.1:
resolution: {integrity: sha512-UzGwzcjyv3OtAvolTj1GoyNYzfFR+iqbGjcnBEENZVCpM4/Ng1yhGNvS3lR/xDS74Tb2wGG9WzNSNIOS9UVb2g==} resolution: {integrity: sha512-E7uGkTzkk1d0ByLeSc6ZsFS79Axg+m1P/VsgYsxHgiuc3tFSj+MjMIwe90FC4lOAZzNBdY7kkO2P2wKdsQ1vgQ==}
engines: {node: '>= 0.4'} engines: {node: '>= 0.4'}
dependencies: dependencies:
get-intrinsic: 1.2.1 get-intrinsic: 1.2.1
@ -1827,7 +1828,7 @@ packages:
resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==} resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==}
engines: {node: '>= 0.4'} engines: {node: '>= 0.4'}
dependencies: dependencies:
define-data-property: 1.1.0 define-data-property: 1.1.1
has-property-descriptors: 1.0.0 has-property-descriptors: 1.0.0
object-keys: 1.1.1 object-keys: 1.1.1
dev: true dev: true
@ -1986,8 +1987,8 @@ packages:
better-sqlite3: 9.0.0 better-sqlite3: 9.0.0
dev: false dev: false
/electron-to-chromium@1.4.549: /electron-to-chromium@1.4.554:
resolution: {integrity: sha512-gpXfJslSi4hYDkA0mTLEpYKRv9siAgSUgZ+UWyk+J5Cttpd1ThCVwdclzIwQSclz3hYn049+M2fgrP1WpvF8xg==} resolution: {integrity: sha512-Q0umzPJjfBrrj8unkONTgbKQXzXRrH7sVV7D9ea2yBV3Oaogz991yhbpfvo2LMNkJItmruXTEzVpP9cp7vaIiQ==}
dev: false dev: false
/emoji-regex@9.2.2: /emoji-regex@9.2.2:
@ -2060,7 +2061,7 @@ packages:
define-properties: 1.2.1 define-properties: 1.2.1
es-abstract: 1.22.2 es-abstract: 1.22.2
es-set-tostringtag: 2.0.1 es-set-tostringtag: 2.0.1
function-bind: 1.1.1 function-bind: 1.1.2
get-intrinsic: 1.2.1 get-intrinsic: 1.2.1
globalthis: 1.0.3 globalthis: 1.0.3
has-property-descriptors: 1.0.0 has-property-descriptors: 1.0.0
@ -2313,7 +2314,7 @@ packages:
peerDependencies: peerDependencies:
eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8
dependencies: dependencies:
'@babel/runtime': 7.23.1 '@babel/runtime': 7.23.2
aria-query: 5.3.0 aria-query: 5.3.0
array-includes: 3.1.7 array-includes: 3.1.7
array.prototype.flatmap: 1.3.2 array.prototype.flatmap: 1.3.2
@ -2593,8 +2594,8 @@ packages:
fetch-blob: 3.2.0 fetch-blob: 3.2.0
dev: false dev: false
/fraction.js@4.3.6: /fraction.js@4.3.7:
resolution: {integrity: sha512-n2aZ9tNfYDwaHhvFTkhFErqOMIb8uyzSQ+vGJBjZyanAKZVbGUQ1sngfk9FdkBw7G26O7AgNjLcecLffD1c7eg==} resolution: {integrity: sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==}
dev: false dev: false
/fs-constants@1.0.0: /fs-constants@1.0.0:
@ -2612,8 +2613,8 @@ packages:
dev: true dev: true
optional: true optional: true
/function-bind@1.1.1: /function-bind@1.1.2:
resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==} resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==}
dev: true dev: true
/function.prototype.name@1.1.6: /function.prototype.name@1.1.6:
@ -2633,7 +2634,7 @@ packages:
/get-intrinsic@1.2.1: /get-intrinsic@1.2.1:
resolution: {integrity: sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==} resolution: {integrity: sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==}
dependencies: dependencies:
function-bind: 1.1.1 function-bind: 1.1.2
has: 1.0.4 has: 1.0.4
has-proto: 1.0.1 has-proto: 1.0.1
has-symbols: 1.0.3 has-symbols: 1.0.3
@ -3164,20 +3165,20 @@ packages:
type-check: 0.4.0 type-check: 0.4.0
dev: true dev: true
/libsql@0.1.28: /libsql@0.1.29:
resolution: {integrity: sha512-yCKlT0ntV8ZIWTPGNClhQQeH/LNAzLjbbEgBvgLb+jfQwAuTbyvPpVVLwkZzesqja1nbkWApztW0pX81Jp0pkw==} resolution: {integrity: sha512-m81nXwDjz7WIwAblmhGJ68f6wJPtClG2N9kNxYG92vB7sALUGU3THza2J2+Mfg0YC+cy+hehorb7zHETj8doKw==}
cpu: [x64, arm64] cpu: [x64, arm64]
os: [darwin, linux, win32] os: [darwin, linux, win32]
dependencies: dependencies:
'@neon-rs/load': 0.0.4 '@neon-rs/load': 0.0.4
detect-libc: 2.0.2 detect-libc: 2.0.2
optionalDependencies: optionalDependencies:
'@libsql/darwin-arm64': 0.1.28 '@libsql/darwin-arm64': 0.1.29
'@libsql/darwin-x64': 0.1.28 '@libsql/darwin-x64': 0.1.29
'@libsql/linux-arm64-gnu': 0.1.28 '@libsql/linux-arm64-gnu': 0.1.29
'@libsql/linux-x64-gnu': 0.1.28 '@libsql/linux-x64-gnu': 0.1.29
'@libsql/linux-x64-musl': 0.1.28 '@libsql/linux-x64-musl': 0.1.29
'@libsql/win32-x64-msvc': 0.1.28 '@libsql/win32-x64-msvc': 0.1.29
dev: false dev: false
/lilconfig@2.1.0: /lilconfig@2.1.0:
@ -3361,7 +3362,7 @@ packages:
'@next/env': 13.5.4 '@next/env': 13.5.4
'@swc/helpers': 0.5.2 '@swc/helpers': 0.5.2
busboy: 1.6.0 busboy: 1.6.0
caniuse-lite: 1.0.30001547 caniuse-lite: 1.0.30001549
postcss: 8.4.31 postcss: 8.4.31
react: 18.2.0 react: 18.2.0
react-dom: 18.2.0(react@18.2.0) react-dom: 18.2.0(react@18.2.0)
@ -3398,8 +3399,8 @@ packages:
tslib: 2.4.1 tslib: 2.4.1
dev: false dev: false
/node-abi@3.49.0: /node-abi@3.50.0:
resolution: {integrity: sha512-ji8IK8VT2zAQv9BeOqwnpuvJnCivxPCe2HNiPe8P1z1SDhqEFpm7GqctqTWkujb8mLfZ1PWDrjMeiq6l9TN7fA==} resolution: {integrity: sha512-2Gxu7Eq7vnBIRfYSmqPruEllMM14FjOQFJSoqdGWthVn+tmwEXzmdPpya6cvvwf0uZA3F5N1fMFr9mijZBplFA==}
engines: {node: '>=10'} engines: {node: '>=10'}
dependencies: dependencies:
semver: 7.5.4 semver: 7.5.4
@ -3657,7 +3658,7 @@ packages:
dependencies: dependencies:
lilconfig: 2.1.0 lilconfig: 2.1.0
postcss: 8.4.31 postcss: 8.4.31
yaml: 2.3.2 yaml: 2.3.3
dev: true dev: true
/postcss-nested@6.0.1(postcss@8.4.31): /postcss-nested@6.0.1(postcss@8.4.31):
@ -3700,7 +3701,7 @@ packages:
minimist: 1.2.8 minimist: 1.2.8
mkdirp-classic: 0.5.3 mkdirp-classic: 0.5.3
napi-build-utils: 1.0.2 napi-build-utils: 1.0.2
node-abi: 3.49.0 node-abi: 3.50.0
pump: 3.0.0 pump: 3.0.0
rc: 1.2.8 rc: 1.2.8
simple-get: 4.0.1 simple-get: 4.0.1
@ -3954,7 +3955,7 @@ packages:
resolution: {integrity: sha512-tMNCiqYVkXIZgc2Hnoy2IvC/f8ezc5koaRFkCjrpWzGpCd3qbZXPzVy9MAZzK1ch/X0jvSkojys3oqJN0qCmdA==} resolution: {integrity: sha512-tMNCiqYVkXIZgc2Hnoy2IvC/f8ezc5koaRFkCjrpWzGpCd3qbZXPzVy9MAZzK1ch/X0jvSkojys3oqJN0qCmdA==}
engines: {node: '>= 0.4'} engines: {node: '>= 0.4'}
dependencies: dependencies:
define-data-property: 1.1.0 define-data-property: 1.1.1
functions-have-names: 1.2.3 functions-have-names: 1.2.3
has-property-descriptors: 1.0.0 has-property-descriptors: 1.0.0
dev: true dev: true
@ -4632,8 +4633,8 @@ packages:
/yallist@4.0.0: /yallist@4.0.0:
resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==}
/yaml@2.3.2: /yaml@2.3.3:
resolution: {integrity: sha512-N/lyzTPaJasoDmfV7YTrYCI0G/3ivm/9wdG0aHuheKowWQwGTsK0Eoiw6utmzAnI6pkJa0DUVygvp3spqqEKXg==} resolution: {integrity: sha512-zw0VAJxgeZ6+++/su5AFoqBbZbrEakwu+X0M5HmcwUiBL7AzcuPKjj5we4xfQLp78LkEMpD0cOnUhmgOVy3KdQ==}
engines: {node: '>= 14'} engines: {node: '>= 14'}
dev: true dev: true