Refine admin config layout

This commit is contained in:
Sam Becker 2024-06-19 13:19:24 -05:00
parent 5d2a1e7102
commit 616726b5fd
9 changed files with 592 additions and 540 deletions

View File

@ -9,9 +9,9 @@
"analyze": "ANALYZE=true next build"
},
"dependencies": {
"@ai-sdk/openai": "^0.0.29",
"@aws-sdk/client-s3": "3.598.0",
"@aws-sdk/s3-request-presigner": "3.598.0",
"@ai-sdk/openai": "^0.0.31",
"@aws-sdk/client-s3": "3.600.0",
"@aws-sdk/s3-request-presigner": "3.600.0",
"@next/bundle-analyzer": "14.2.4",
"@radix-ui/react-dropdown-menu": "^2.0.6",
"@tailwindcss/container-queries": "^0.1.1",
@ -19,18 +19,18 @@
"@testing-library/jest-dom": "^6.4.6",
"@testing-library/react": "^16.0.0",
"@types/jest": "^29.5.12",
"@types/node": "^20.14.2",
"@types/node": "^20.14.6",
"@types/pg": "^8.11.6",
"@types/react": "18.3.3",
"@types/react-dom": "18.3.0",
"@typescript-eslint/eslint-plugin": "^7.13.0",
"@typescript-eslint/parser": "^7.13.0",
"@typescript-eslint/eslint-plugin": "^7.13.1",
"@typescript-eslint/parser": "^7.13.1",
"@upstash/ratelimit": "^1.2.1",
"@vercel/analytics": "^1.3.1",
"@vercel/blob": "^0.23.3",
"@vercel/kv": "^2.0.0",
"@vercel/speed-insights": "^1.0.12",
"ai": "^3.1.36",
"ai": "^3.2.1",
"autoprefixer": "10.4.19",
"camelcase-keys": "^9.1.3",
"clsx": "^2.1.1",
@ -39,7 +39,7 @@
"eslint": "8.57.0",
"eslint-config-next": "14.2.4",
"exifr": "^7.1.3",
"framer-motion": "^11.2.10",
"framer-motion": "^11.2.11",
"jest": "^29.7.0",
"jest-environment-jsdom": "^29.7.0",
"nanoid": "^5.0.7",
@ -57,7 +57,7 @@
"tailwindcss": "3.4.4",
"ts-exif-parser": "^0.2.2",
"typescript": "5.4.5",
"undici": "^6.19.0",
"undici": "^6.19.2",
"use-debounce": "^10.0.1"
}
}

382
pnpm-lock.yaml generated
View File

@ -9,14 +9,14 @@ importers:
.:
dependencies:
'@ai-sdk/openai':
specifier: ^0.0.29
version: 0.0.29(zod@3.23.8)
specifier: ^0.0.31
version: 0.0.31(zod@3.23.8)
'@aws-sdk/client-s3':
specifier: 3.598.0
version: 3.598.0
specifier: 3.600.0
version: 3.600.0
'@aws-sdk/s3-request-presigner':
specifier: 3.598.0
version: 3.598.0
specifier: 3.600.0
version: 3.600.0
'@next/bundle-analyzer':
specifier: 14.2.4
version: 14.2.4
@ -31,7 +31,7 @@ importers:
version: 0.5.7(tailwindcss@3.4.4)
'@testing-library/jest-dom':
specifier: ^6.4.6
version: 6.4.6(@jest/globals@29.7.0)(@types/jest@29.5.12)(jest@29.7.0(@types/node@20.14.2))
version: 6.4.6(@jest/globals@29.7.0)(@types/jest@29.5.12)(jest@29.7.0(@types/node@20.14.6))
'@testing-library/react':
specifier: ^16.0.0
version: 16.0.0(@testing-library/dom@10.1.0)(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
@ -39,8 +39,8 @@ importers:
specifier: ^29.5.12
version: 29.5.12
'@types/node':
specifier: ^20.14.2
version: 20.14.2
specifier: ^20.14.6
version: 20.14.6
'@types/pg':
specifier: ^8.11.6
version: 8.11.6
@ -51,11 +51,11 @@ importers:
specifier: 18.3.0
version: 18.3.0
'@typescript-eslint/eslint-plugin':
specifier: ^7.13.0
version: 7.13.0(@typescript-eslint/parser@7.13.0(eslint@8.57.0)(typescript@5.4.5))(eslint@8.57.0)(typescript@5.4.5)
specifier: ^7.13.1
version: 7.13.1(@typescript-eslint/parser@7.13.1(eslint@8.57.0)(typescript@5.4.5))(eslint@8.57.0)(typescript@5.4.5)
'@typescript-eslint/parser':
specifier: ^7.13.0
version: 7.13.0(eslint@8.57.0)(typescript@5.4.5)
specifier: ^7.13.1
version: 7.13.1(eslint@8.57.0)(typescript@5.4.5)
'@upstash/ratelimit':
specifier: ^1.2.1
version: 1.2.1
@ -72,8 +72,8 @@ importers:
specifier: ^1.0.12
version: 1.0.12(next@14.2.4(@babel/core@7.24.5)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(svelte@4.2.17)(vue@3.4.27(typescript@5.4.5))
ai:
specifier: ^3.1.36
version: 3.1.36(react@18.3.1)(solid-js@1.8.17)(svelte@4.2.17)(vue@3.4.27(typescript@5.4.5))(zod@3.23.8)
specifier: ^3.2.1
version: 3.2.1(react@18.3.1)(solid-js@1.8.17)(svelte@4.2.17)(vue@3.4.27(typescript@5.4.5))(zod@3.23.8)
autoprefixer:
specifier: 10.4.19
version: 10.4.19(postcss@8.4.38)
@ -99,11 +99,11 @@ importers:
specifier: ^7.1.3
version: 7.1.3
framer-motion:
specifier: ^11.2.10
version: 11.2.10(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
specifier: ^11.2.11
version: 11.2.11(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
jest:
specifier: ^29.7.0
version: 29.7.0(@types/node@20.14.2)
version: 29.7.0(@types/node@20.14.6)
jest-environment-jsdom:
specifier: ^29.7.0
version: 29.7.0
@ -153,8 +153,8 @@ importers:
specifier: 5.4.5
version: 5.4.5
undici:
specifier: ^6.19.0
version: 6.19.0
specifier: ^6.19.2
version: 6.19.2
use-debounce:
specifier: ^10.0.1
version: 10.0.1(react@18.3.1)
@ -164,14 +164,14 @@ packages:
'@adobe/css-tools@4.4.0':
resolution: {integrity: sha512-Ff9+ksdQQB3rMncgqDK78uLznstjyfIf2Arnh22pW8kBpLs6rpKDwgnZT46hin5Hl1WzazzK64DOrhSwYpS7bQ==}
'@ai-sdk/openai@0.0.29':
resolution: {integrity: sha512-LctoOAlOX7bI3dQ5IA9DXBmHhhb2l59pg+aFclIp0qR86bqrB7eEH/odu8wn+yWjPy90D40aU0E1sNDYz985vA==}
'@ai-sdk/openai@0.0.31':
resolution: {integrity: sha512-7ehX2N0NzCdxUOYXutwYgu6gdWO+zS/v8pWEd7VW8QpNq3equ0VZ0j+pDUNv4f3GJ449QwySb6+V+DHM9W/pLg==}
engines: {node: '>=18'}
peerDependencies:
zod: ^3.0.0
'@ai-sdk/provider-utils@0.0.14':
resolution: {integrity: sha512-PCQFN3MlC6DShS/81IFU9NVvt9OekQGiZTEowRc2AwAwWrDsv7er3UkcMswFAL/Z7xZKjgu0dZTNH1z9oUlo7A==}
'@ai-sdk/provider-utils@0.0.15':
resolution: {integrity: sha512-eTkIaZc/Ud96DYG40lLuKWJvZ2GoW/wT4KH9r1f3wGUhj5wgQN+bzgdI57z60VOEDuMmDVuILVnTLFe0HNT5Iw==}
engines: {node: '>=18'}
peerDependencies:
zod: ^3.0.0
@ -183,17 +183,20 @@ packages:
resolution: {integrity: sha512-NzkrtREQpHID1cTqY/C4CI30PVOaXWKYytDR2EcytmFgnP7Z6+CrGIA/YCnNhYAuUm6Nx+nGpRL/Hmyrv7NYzg==}
engines: {node: '>=18'}
'@ai-sdk/react@0.0.2':
resolution: {integrity: sha512-segG03b5Gdt5h2Q41Ylfn88Rv5OiyXBZOi1ycQ/4MSkQX0D6WLJ8QhNIPkI5ie2qLeQA7sVqFLVuDTnpZQtDSg==}
'@ai-sdk/react@0.0.4':
resolution: {integrity: sha512-YPvp81onTxNlnOWolyjvappS5y9pMkZwWKMxrqwMimaJI4NWquPrAeHCYqzaVAb/+RKaveEGSvyYs/SD8AO6ig==}
engines: {node: '>=18'}
peerDependencies:
react: ^18 || ^19
zod: ^3.0.0
peerDependenciesMeta:
react:
optional: true
zod:
optional: true
'@ai-sdk/solid@0.0.2':
resolution: {integrity: sha512-zGj01mXzar10XwRwWGb0tQ4dLf4M3lGGdcZ2eDm79BN2U4KhNtEwyELKg+EaKdqHgfYJDyiotuqKjT4bcEFttQ==}
'@ai-sdk/solid@0.0.4':
resolution: {integrity: sha512-1X/vauXG+V0Hsb2P8kZFKaDrderTtB/7XdHZ/UkSMzTk8k0twx9OEXgztW8Rggh51t6sdI7mUoqAY5Khvjf01w==}
engines: {node: '>=18'}
peerDependencies:
solid-js: ^1.7.7
@ -201,8 +204,8 @@ packages:
solid-js:
optional: true
'@ai-sdk/svelte@0.0.2':
resolution: {integrity: sha512-q5heL7XxDzm2z3mxEESZuTx4rgOKMiKA5UkobFrUQgdJeE2jk/Efyl+1urvU8JWOZ5gokDS8beW1WA10LuuIvw==}
'@ai-sdk/svelte@0.0.4':
resolution: {integrity: sha512-LVxg9/60ARX8AQIswyDx53HQlQQH91yUOThhUA0x9s2BcxgpDgDN37imynnoZbU7lvA5M9NvwlinkmUdJzUVTA==}
engines: {node: '>=18'}
peerDependencies:
svelte: ^3.0.0 || ^4.0.0
@ -210,12 +213,17 @@ packages:
svelte:
optional: true
'@ai-sdk/ui-utils@0.0.2':
resolution: {integrity: sha512-CpWKvYO99UC72oHUts5MrJGPHEoOWrxhN4R8KjeHanZn7cosJ3bal++seSGJrwDz2ImqrpfAdRHmQtdbsCCOyQ==}
'@ai-sdk/ui-utils@0.0.4':
resolution: {integrity: sha512-vUfuqVOZV3MyFokAduQyJsnDP00qzyZut6mizFscXlCOmiiW3FAnu/XEnMEwCmf7yUG7O4v7Xa2zd4X1tsN5pg==}
engines: {node: '>=18'}
peerDependencies:
zod: ^3.0.0
peerDependenciesMeta:
zod:
optional: true
'@ai-sdk/vue@0.0.2':
resolution: {integrity: sha512-AfhB1YbdvqeZKheBsjeRsYZOJK2N/InC0VtWook08jiLgI47cau444Bj5dmx6401a1de/3tjw218G4rpJM/icA==}
'@ai-sdk/vue@0.0.4':
resolution: {integrity: sha512-gWyvenqPi1FC8tvczKhla4pCDTVMXvXHpiIJaBn7fRNq2vO7gDSAr9O//SCSPGY3l1aUCKLgKJbbeoXiTRSGBQ==}
engines: {node: '>=18'}
peerDependencies:
vue: ^3.3.4
@ -268,20 +276,20 @@ packages:
'@aws-crypto/util@5.2.0':
resolution: {integrity: sha512-4RkU9EsI6ZpBve5fseQlGNUWKMa1RLPQ1dnjnQoe07ldfIzcsGb5hC5W0Dm7u423KWzawlrpbjXBrXCEv9zazQ==}
'@aws-sdk/client-s3@3.598.0':
resolution: {integrity: sha512-UMxftsgF6j1vzm4Qd9vQJHs2he1NQCWWV8esZfmNFq23OpUC2BPMxkqi13ZQ9tnTAZUNs7yFT/x4Zsi/wpRZEw==}
'@aws-sdk/client-s3@3.600.0':
resolution: {integrity: sha512-iYoKbJTputbf+ubkX6gSK/y/4uJEBRaXZ18jykLdBQ8UJuGrk2gqvV8h7OlGAhToCeysmmMqM0vDWyLt6lP8nw==}
engines: {node: '>=16.0.0'}
'@aws-sdk/client-sso-oidc@3.598.0':
resolution: {integrity: sha512-jfdH1pAO9Tt8Nkta/JJLoUnwl7jaRdxToQTJfUtE+o3+0JP5sA4LfC2rBkJSWcU5BdAA+kyOs5Lv776DlN04Vg==}
'@aws-sdk/client-sso-oidc@3.600.0':
resolution: {integrity: sha512-7+I8RWURGfzvChyNQSyj5/tKrqRbzRl7H+BnTOf/4Vsw1nFOi5ROhlhD4X/Y0QCTacxnaoNcIrqnY7uGGvVRzw==}
engines: {node: '>=16.0.0'}
'@aws-sdk/client-sso@3.598.0':
resolution: {integrity: sha512-nOI5lqPYa+YZlrrzwAJywJSw3MKVjvu6Ge2fCqQUNYMfxFB0NAaDFnl0EPjXi+sEbtCuz/uWE77poHbqiZ+7Iw==}
engines: {node: '>=16.0.0'}
'@aws-sdk/client-sts@3.598.0':
resolution: {integrity: sha512-bXhz/cHL0iB9UH9IFtMaJJf4F8mV+HzncETCRFzZ9SyUMt5rP9j8A7VZknqGYSx/6mI8SsB1XJQkWSbhn6FiSQ==}
'@aws-sdk/client-sts@3.600.0':
resolution: {integrity: sha512-KQG97B7LvTtTiGmjlrG1LRAY8wUvCQzrmZVV5bjrJ/1oXAU7DITYwVbSJeX9NWg6hDuSk0VE3MFwIXS2SvfLIA==}
engines: {node: '>=16.0.0'}
'@aws-sdk/core@3.598.0':
@ -302,8 +310,8 @@ packages:
peerDependencies:
'@aws-sdk/client-sts': ^3.598.0
'@aws-sdk/credential-provider-node@3.598.0':
resolution: {integrity: sha512-sXTlqL5I/awlF9Dg2MQ17SfrEaABVnsj2mf4jF5qQrIRhfbvQOIYdEqdy8Rn1AWlJMz/N450SGzc0XJ5owxxqw==}
'@aws-sdk/credential-provider-node@3.600.0':
resolution: {integrity: sha512-1pC7MPMYD45J7yFjA90SxpR0yaSvy+yZiq23aXhAPZLYgJBAxHLu0s0mDCk/piWGPh8+UGur5K0bVdx4B1D5hw==}
engines: {node: '>=16.0.0'}
'@aws-sdk/credential-provider-process@3.598.0':
@ -368,8 +376,8 @@ packages:
resolution: {integrity: sha512-oYXhmTokSav4ytmWleCr3rs/1nyvZW/S0tdi6X7u+dLNL5Jee+uMxWGzgOrWK6wrQOzucLVjS4E/wA11Kv2GTw==}
engines: {node: '>=16.0.0'}
'@aws-sdk/s3-request-presigner@3.598.0':
resolution: {integrity: sha512-IC06/HrZNlYxdyKH5+4A9B98NwcxJjgXOSUV581X7GpqHHspZ0T6tih8shBus3zzW8WfVqRAhJVwZtfMY55hdw==}
'@aws-sdk/s3-request-presigner@3.600.0':
resolution: {integrity: sha512-MYRwgti1DDc9/Q9AzvTQy0Ih0j4vLe0zYLV3qtSI0H8G02yRqTzet2s/76pUNOYJK9ASSgcxQ9yeV9EGKBwndQ==}
engines: {node: '>=16.0.0'}
'@aws-sdk/signature-v4-multi-region@3.598.0':
@ -1528,8 +1536,8 @@ packages:
'@types/json5@0.0.29':
resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==}
'@types/node@20.14.2':
resolution: {integrity: sha512-xyu6WAMVwv6AKFLB+e/7ySZVr/0zLCzOa7rSpq6jNwpqOrUbcACDWC+53d4n2QHOnDou0fbIsg8wZu/sxrnI4Q==}
'@types/node@20.14.6':
resolution: {integrity: sha512-JbA0XIJPL1IiNnU7PFxDXyfAwcwVVrOoqyzzyQTyMeVhBzkJVMSkC1LlVsRQ2lpqiY4n6Bb9oCS6lzDKVQxbZw==}
'@types/pg@8.11.6':
resolution: {integrity: sha512-/2WmmBXHLsfRqzfHW7BNZ8SbYzE8OSk7i3WjFYvfgRHj7S1xj+16Je5fUKv3lVdVzk/zn9TXOqf+avFCFIE0yQ==}
@ -1555,8 +1563,8 @@ packages:
'@types/yargs@17.0.32':
resolution: {integrity: sha512-xQ67Yc/laOG5uMfX/093MRlGGCIBzZMarVa+gfNKJxWAIgykYpVGkBdbqEzGDDfCrVUj6Hiff4mTZ5BA6TmAog==}
'@typescript-eslint/eslint-plugin@7.13.0':
resolution: {integrity: sha512-FX1X6AF0w8MdVFLSdqwqN/me2hyhuQg4ykN6ZpVhh1ij/80pTvDKclX1sZB9iqex8SjQfVhwMKs3JtnnMLzG9w==}
'@typescript-eslint/eslint-plugin@7.13.1':
resolution: {integrity: sha512-kZqi+WZQaZfPKnsflLJQCz6Ze9FFSMfXrrIOcyargekQxG37ES7DJNpJUE9Q/X5n3yTIP/WPutVNzgknQ7biLg==}
engines: {node: ^18.18.0 || >=20.0.0}
peerDependencies:
'@typescript-eslint/parser': ^7.0.0
@ -1566,8 +1574,8 @@ packages:
typescript:
optional: true
'@typescript-eslint/parser@7.13.0':
resolution: {integrity: sha512-EjMfl69KOS9awXXe83iRN7oIEXy9yYdqWfqdrFAYAAr6syP8eLEFI7ZE4939antx2mNgPRW/o1ybm2SFYkbTVA==}
'@typescript-eslint/parser@7.13.1':
resolution: {integrity: sha512-1ELDPlnLvDQ5ybTSrMhRTFDfOQEOXNM+eP+3HT/Yq7ruWpciQw+Avi73pdEbA4SooCawEWo3dtYbF68gN7Ed1A==}
engines: {node: ^18.18.0 || >=20.0.0}
peerDependencies:
eslint: ^8.56.0
@ -1586,16 +1594,16 @@ packages:
typescript:
optional: true
'@typescript-eslint/scope-manager@7.13.0':
resolution: {integrity: sha512-ZrMCe1R6a01T94ilV13egvcnvVJ1pxShkE0+NDjDzH4nvG1wXpwsVI5bZCvE7AEDH1mXEx5tJSVR68bLgG7Dng==}
'@typescript-eslint/scope-manager@7.13.1':
resolution: {integrity: sha512-adbXNVEs6GmbzaCpymHQ0MB6E4TqoiVbC0iqG3uijR8ZYfpAXMGttouQzF4Oat3P2GxDVIrg7bMI/P65LiQZdg==}
engines: {node: ^18.18.0 || >=20.0.0}
'@typescript-eslint/scope-manager@7.2.0':
resolution: {integrity: sha512-Qh976RbQM/fYtjx9hs4XkayYujB/aPwglw2choHmf3zBjB4qOywWSdt9+KLRdHubGcoSwBnXUH2sR3hkyaERRg==}
engines: {node: ^16.0.0 || >=18.0.0}
'@typescript-eslint/type-utils@7.13.0':
resolution: {integrity: sha512-xMEtMzxq9eRkZy48XuxlBFzpVMDurUAfDu5Rz16GouAtXm0TaAoTFzqWUFPPuQYXI/CDaH/Bgx/fk/84t/Bc9A==}
'@typescript-eslint/type-utils@7.13.1':
resolution: {integrity: sha512-aWDbLu1s9bmgPGXSzNCxELu+0+HQOapV/y+60gPXafR8e2g1Bifxzevaa+4L2ytCWm+CHqpELq4CSoN9ELiwCg==}
engines: {node: ^18.18.0 || >=20.0.0}
peerDependencies:
eslint: ^8.56.0
@ -1604,16 +1612,16 @@ packages:
typescript:
optional: true
'@typescript-eslint/types@7.13.0':
resolution: {integrity: sha512-QWuwm9wcGMAuTsxP+qz6LBBd3Uq8I5Nv8xb0mk54jmNoCyDspnMvVsOxI6IsMmway5d1S9Su2+sCKv1st2l6eA==}
'@typescript-eslint/types@7.13.1':
resolution: {integrity: sha512-7K7HMcSQIAND6RBL4kDl24sG/xKM13cA85dc7JnmQXw2cBDngg7c19B++JzvJHRG3zG36n9j1i451GBzRuHchw==}
engines: {node: ^18.18.0 || >=20.0.0}
'@typescript-eslint/types@7.2.0':
resolution: {integrity: sha512-XFtUHPI/abFhm4cbCDc5Ykc8npOKBSJePY3a3s+lwumt7XWJuzP5cZcfZ610MIPHjQjNsOLlYK8ASPaNG8UiyA==}
engines: {node: ^16.0.0 || >=18.0.0}
'@typescript-eslint/typescript-estree@7.13.0':
resolution: {integrity: sha512-cAvBvUoobaoIcoqox1YatXOnSl3gx92rCZoMRPzMNisDiM12siGilSM4+dJAekuuHTibI2hVC2fYK79iSFvWjw==}
'@typescript-eslint/typescript-estree@7.13.1':
resolution: {integrity: sha512-uxNr51CMV7npU1BxZzYjoVz9iyjckBduFBP0S5sLlh1tXYzHzgZ3BR9SVsNed+LmwKrmnqN3Kdl5t7eZ5TS1Yw==}
engines: {node: ^18.18.0 || >=20.0.0}
peerDependencies:
typescript: '*'
@ -1630,14 +1638,14 @@ packages:
typescript:
optional: true
'@typescript-eslint/utils@7.13.0':
resolution: {integrity: sha512-jceD8RgdKORVnB4Y6BqasfIkFhl4pajB1wVxrF4akxD2QPM8GNYjgGwEzYS+437ewlqqrg7Dw+6dhdpjMpeBFQ==}
'@typescript-eslint/utils@7.13.1':
resolution: {integrity: sha512-h5MzFBD5a/Gh/fvNdp9pTfqJAbuQC4sCN2WzuXme71lqFJsZtLbjxfSk4r3p02WIArOF9N94pdsLiGutpDbrXQ==}
engines: {node: ^18.18.0 || >=20.0.0}
peerDependencies:
eslint: ^8.56.0
'@typescript-eslint/visitor-keys@7.13.0':
resolution: {integrity: sha512-nxn+dozQx+MK61nn/JP+M4eCkHDSxSLDpgE3WcQo0+fkjEolnaB5jswvIKC4K56By8MMgIho7f1PVxERHEo8rw==}
'@typescript-eslint/visitor-keys@7.13.1':
resolution: {integrity: sha512-k/Bfne7lrP7hcb7m9zSsgcBmo+8eicqqfNAJ7uUY+jkTFpKeH2FSkWpFRtimBxgkyvqfu9jTPRbYOvud6isdXA==}
engines: {node: ^18.18.0 || >=20.0.0}
'@typescript-eslint/visitor-keys@7.2.0':
@ -1753,8 +1761,8 @@ packages:
resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==}
engines: {node: '>= 6.0.0'}
ai@3.1.36:
resolution: {integrity: sha512-mYAMofD43mrdMa4m0Bd3W/xsrjJeAMBg+jBDZtWdQWb+mipE7gY0CVbcG4AgEYXkJdPFV7/I8d7fC6QKfAw5+w==}
ai@3.2.1:
resolution: {integrity: sha512-6C2rGQLeZmhbjPBOZy2IU8aGg2c9btL8QKWS+dT2Pyxik2ue28FbEsOWQ2O1DOG/5NLX6VM6yNXMlBem3N59Cg==}
engines: {node: '>=18'}
peerDependencies:
openai: ^4.42.0
@ -2521,8 +2529,8 @@ packages:
fraction.js@4.3.7:
resolution: {integrity: sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==}
framer-motion@11.2.10:
resolution: {integrity: sha512-/gr3PLZUVFCc86a9MqCUboVrALscrdluzTb3yew+2/qKBU8CX6nzs918/SRBRCqaPbx0TZP10CB6yFgK2C5cYQ==}
framer-motion@11.2.11:
resolution: {integrity: sha512-n+ozoEzgJu/2h9NoQMokF+CwNqIRVyuRC4RwMPwklfrrTjbVV32k9uBIgqYAwn7Jfpt5LuDVCtT57MWz1FbaLw==}
peerDependencies:
'@emotion/is-prop-valid': '*'
react: ^18.0.0
@ -4131,8 +4139,8 @@ packages:
resolution: {integrity: sha512-72RFADWFqKmUb2hmmvNODKL3p9hcB6Gt2DOQMis1SEBaV6a4MH8soBvzg+95CYhCKPFedut2JY9bMfrDl9D23g==}
engines: {node: '>=14.0'}
undici@6.19.0:
resolution: {integrity: sha512-9gGwbSLgYMjp4r6M5P9bhqhx1E+RyUIHqZE0r7BmrRoqroJUG6xlVu5TXH9DnwmCPLkcaVNrcYtxUE9d3InnyQ==}
undici@6.19.2:
resolution: {integrity: sha512-JfjKqIauur3Q6biAtHJ564e3bWa8VvT+7cSiOJHFbX4Erv6CLGDpg8z+Fmg/1OI/47RA+GI2QZaF48SSaLvyBA==}
engines: {node: '>=18.17'}
universalify@0.2.0:
@ -4339,13 +4347,13 @@ snapshots:
'@adobe/css-tools@4.4.0': {}
'@ai-sdk/openai@0.0.29(zod@3.23.8)':
'@ai-sdk/openai@0.0.31(zod@3.23.8)':
dependencies:
'@ai-sdk/provider': 0.0.10
'@ai-sdk/provider-utils': 0.0.14(zod@3.23.8)
'@ai-sdk/provider-utils': 0.0.15(zod@3.23.8)
zod: 3.23.8
'@ai-sdk/provider-utils@0.0.14(zod@3.23.8)':
'@ai-sdk/provider-utils@0.0.15(zod@3.23.8)':
dependencies:
'@ai-sdk/provider': 0.0.10
eventsource-parser: 1.1.2
@ -4358,19 +4366,18 @@ snapshots:
dependencies:
json-schema: 0.4.0
'@ai-sdk/react@0.0.2(react@18.3.1)(zod@3.23.8)':
'@ai-sdk/react@0.0.4(react@18.3.1)(zod@3.23.8)':
dependencies:
'@ai-sdk/provider-utils': 0.0.14(zod@3.23.8)
'@ai-sdk/ui-utils': 0.0.2(zod@3.23.8)
'@ai-sdk/provider-utils': 0.0.15(zod@3.23.8)
'@ai-sdk/ui-utils': 0.0.4(zod@3.23.8)
swr: 2.2.0(react@18.3.1)
optionalDependencies:
react: 18.3.1
transitivePeerDependencies:
- zod
zod: 3.23.8
'@ai-sdk/solid@0.0.2(solid-js@1.8.17)(zod@3.23.8)':
'@ai-sdk/solid@0.0.4(solid-js@1.8.17)(zod@3.23.8)':
dependencies:
'@ai-sdk/ui-utils': 0.0.2(zod@3.23.8)
'@ai-sdk/ui-utils': 0.0.4(zod@3.23.8)
solid-swr-store: 0.10.7(solid-js@1.8.17)(swr-store@0.10.6)
swr-store: 0.10.6
optionalDependencies:
@ -4378,25 +4385,26 @@ snapshots:
transitivePeerDependencies:
- zod
'@ai-sdk/svelte@0.0.2(svelte@4.2.17)(zod@3.23.8)':
'@ai-sdk/svelte@0.0.4(svelte@4.2.17)(zod@3.23.8)':
dependencies:
'@ai-sdk/provider-utils': 0.0.14(zod@3.23.8)
'@ai-sdk/ui-utils': 0.0.2(zod@3.23.8)
'@ai-sdk/provider-utils': 0.0.15(zod@3.23.8)
'@ai-sdk/ui-utils': 0.0.4(zod@3.23.8)
sswr: 2.1.0(svelte@4.2.17)
optionalDependencies:
svelte: 4.2.17
transitivePeerDependencies:
- zod
'@ai-sdk/ui-utils@0.0.2(zod@3.23.8)':
'@ai-sdk/ui-utils@0.0.4(zod@3.23.8)':
dependencies:
'@ai-sdk/provider-utils': 0.0.14(zod@3.23.8)
transitivePeerDependencies:
- zod
'@ai-sdk/provider-utils': 0.0.15(zod@3.23.8)
secure-json-parse: 2.7.0
optionalDependencies:
zod: 3.23.8
'@ai-sdk/vue@0.0.2(vue@3.4.27(typescript@5.4.5))(zod@3.23.8)':
'@ai-sdk/vue@0.0.4(vue@3.4.27(typescript@5.4.5))(zod@3.23.8)':
dependencies:
'@ai-sdk/ui-utils': 0.0.2(zod@3.23.8)
'@ai-sdk/ui-utils': 0.0.4(zod@3.23.8)
swrv: 1.0.4(vue@3.4.27(typescript@5.4.5))
optionalDependencies:
vue: 3.4.27(typescript@5.4.5)
@ -4467,15 +4475,15 @@ snapshots:
'@smithy/util-utf8': 2.3.0
tslib: 2.6.2
'@aws-sdk/client-s3@3.598.0':
'@aws-sdk/client-s3@3.600.0':
dependencies:
'@aws-crypto/sha1-browser': 5.2.0
'@aws-crypto/sha256-browser': 5.2.0
'@aws-crypto/sha256-js': 5.2.0
'@aws-sdk/client-sso-oidc': 3.598.0
'@aws-sdk/client-sts': 3.598.0(@aws-sdk/client-sso-oidc@3.598.0)
'@aws-sdk/client-sso-oidc': 3.600.0
'@aws-sdk/client-sts': 3.600.0(@aws-sdk/client-sso-oidc@3.600.0)
'@aws-sdk/core': 3.598.0
'@aws-sdk/credential-provider-node': 3.598.0(@aws-sdk/client-sso-oidc@3.598.0)(@aws-sdk/client-sts@3.598.0(@aws-sdk/client-sso-oidc@3.598.0))
'@aws-sdk/credential-provider-node': 3.600.0(@aws-sdk/client-sso-oidc@3.600.0)(@aws-sdk/client-sts@3.600.0(@aws-sdk/client-sso-oidc@3.600.0))
'@aws-sdk/middleware-bucket-endpoint': 3.598.0
'@aws-sdk/middleware-expect-continue': 3.598.0
'@aws-sdk/middleware-flexible-checksums': 3.598.0
@ -4530,13 +4538,13 @@ snapshots:
transitivePeerDependencies:
- aws-crt
'@aws-sdk/client-sso-oidc@3.598.0':
'@aws-sdk/client-sso-oidc@3.600.0':
dependencies:
'@aws-crypto/sha256-browser': 5.2.0
'@aws-crypto/sha256-js': 5.2.0
'@aws-sdk/client-sts': 3.598.0(@aws-sdk/client-sso-oidc@3.598.0)
'@aws-sdk/client-sts': 3.600.0(@aws-sdk/client-sso-oidc@3.600.0)
'@aws-sdk/core': 3.598.0
'@aws-sdk/credential-provider-node': 3.598.0(@aws-sdk/client-sso-oidc@3.598.0)(@aws-sdk/client-sts@3.598.0(@aws-sdk/client-sso-oidc@3.598.0))
'@aws-sdk/credential-provider-node': 3.600.0(@aws-sdk/client-sso-oidc@3.600.0)(@aws-sdk/client-sts@3.600.0(@aws-sdk/client-sso-oidc@3.600.0))
'@aws-sdk/middleware-host-header': 3.598.0
'@aws-sdk/middleware-logger': 3.598.0
'@aws-sdk/middleware-recursion-detection': 3.598.0
@ -4618,13 +4626,13 @@ snapshots:
transitivePeerDependencies:
- aws-crt
'@aws-sdk/client-sts@3.598.0(@aws-sdk/client-sso-oidc@3.598.0)':
'@aws-sdk/client-sts@3.600.0(@aws-sdk/client-sso-oidc@3.600.0)':
dependencies:
'@aws-crypto/sha256-browser': 5.2.0
'@aws-crypto/sha256-js': 5.2.0
'@aws-sdk/client-sso-oidc': 3.598.0
'@aws-sdk/client-sso-oidc': 3.600.0
'@aws-sdk/core': 3.598.0
'@aws-sdk/credential-provider-node': 3.598.0(@aws-sdk/client-sso-oidc@3.598.0)(@aws-sdk/client-sts@3.598.0(@aws-sdk/client-sso-oidc@3.598.0))
'@aws-sdk/credential-provider-node': 3.600.0(@aws-sdk/client-sso-oidc@3.600.0)(@aws-sdk/client-sts@3.600.0(@aws-sdk/client-sso-oidc@3.600.0))
'@aws-sdk/middleware-host-header': 3.598.0
'@aws-sdk/middleware-logger': 3.598.0
'@aws-sdk/middleware-recursion-detection': 3.598.0
@ -4693,14 +4701,14 @@ snapshots:
'@smithy/util-stream': 3.0.2
tslib: 2.6.2
'@aws-sdk/credential-provider-ini@3.598.0(@aws-sdk/client-sso-oidc@3.598.0)(@aws-sdk/client-sts@3.598.0(@aws-sdk/client-sso-oidc@3.598.0))':
'@aws-sdk/credential-provider-ini@3.598.0(@aws-sdk/client-sso-oidc@3.600.0)(@aws-sdk/client-sts@3.600.0(@aws-sdk/client-sso-oidc@3.600.0))':
dependencies:
'@aws-sdk/client-sts': 3.598.0(@aws-sdk/client-sso-oidc@3.598.0)
'@aws-sdk/client-sts': 3.600.0(@aws-sdk/client-sso-oidc@3.600.0)
'@aws-sdk/credential-provider-env': 3.598.0
'@aws-sdk/credential-provider-http': 3.598.0
'@aws-sdk/credential-provider-process': 3.598.0
'@aws-sdk/credential-provider-sso': 3.598.0(@aws-sdk/client-sso-oidc@3.598.0)
'@aws-sdk/credential-provider-web-identity': 3.598.0(@aws-sdk/client-sts@3.598.0(@aws-sdk/client-sso-oidc@3.598.0))
'@aws-sdk/credential-provider-sso': 3.598.0(@aws-sdk/client-sso-oidc@3.600.0)
'@aws-sdk/credential-provider-web-identity': 3.598.0(@aws-sdk/client-sts@3.600.0(@aws-sdk/client-sso-oidc@3.600.0))
'@aws-sdk/types': 3.598.0
'@smithy/credential-provider-imds': 3.1.1
'@smithy/property-provider': 3.1.1
@ -4711,14 +4719,14 @@ snapshots:
- '@aws-sdk/client-sso-oidc'
- aws-crt
'@aws-sdk/credential-provider-node@3.598.0(@aws-sdk/client-sso-oidc@3.598.0)(@aws-sdk/client-sts@3.598.0(@aws-sdk/client-sso-oidc@3.598.0))':
'@aws-sdk/credential-provider-node@3.600.0(@aws-sdk/client-sso-oidc@3.600.0)(@aws-sdk/client-sts@3.600.0(@aws-sdk/client-sso-oidc@3.600.0))':
dependencies:
'@aws-sdk/credential-provider-env': 3.598.0
'@aws-sdk/credential-provider-http': 3.598.0
'@aws-sdk/credential-provider-ini': 3.598.0(@aws-sdk/client-sso-oidc@3.598.0)(@aws-sdk/client-sts@3.598.0(@aws-sdk/client-sso-oidc@3.598.0))
'@aws-sdk/credential-provider-ini': 3.598.0(@aws-sdk/client-sso-oidc@3.600.0)(@aws-sdk/client-sts@3.600.0(@aws-sdk/client-sso-oidc@3.600.0))
'@aws-sdk/credential-provider-process': 3.598.0
'@aws-sdk/credential-provider-sso': 3.598.0(@aws-sdk/client-sso-oidc@3.598.0)
'@aws-sdk/credential-provider-web-identity': 3.598.0(@aws-sdk/client-sts@3.598.0(@aws-sdk/client-sso-oidc@3.598.0))
'@aws-sdk/credential-provider-sso': 3.598.0(@aws-sdk/client-sso-oidc@3.600.0)
'@aws-sdk/credential-provider-web-identity': 3.598.0(@aws-sdk/client-sts@3.600.0(@aws-sdk/client-sso-oidc@3.600.0))
'@aws-sdk/types': 3.598.0
'@smithy/credential-provider-imds': 3.1.1
'@smithy/property-provider': 3.1.1
@ -4738,10 +4746,10 @@ snapshots:
'@smithy/types': 3.1.0
tslib: 2.6.2
'@aws-sdk/credential-provider-sso@3.598.0(@aws-sdk/client-sso-oidc@3.598.0)':
'@aws-sdk/credential-provider-sso@3.598.0(@aws-sdk/client-sso-oidc@3.600.0)':
dependencies:
'@aws-sdk/client-sso': 3.598.0
'@aws-sdk/token-providers': 3.598.0(@aws-sdk/client-sso-oidc@3.598.0)
'@aws-sdk/token-providers': 3.598.0(@aws-sdk/client-sso-oidc@3.600.0)
'@aws-sdk/types': 3.598.0
'@smithy/property-provider': 3.1.1
'@smithy/shared-ini-file-loader': 3.1.1
@ -4751,9 +4759,9 @@ snapshots:
- '@aws-sdk/client-sso-oidc'
- aws-crt
'@aws-sdk/credential-provider-web-identity@3.598.0(@aws-sdk/client-sts@3.598.0(@aws-sdk/client-sso-oidc@3.598.0))':
'@aws-sdk/credential-provider-web-identity@3.598.0(@aws-sdk/client-sts@3.600.0(@aws-sdk/client-sso-oidc@3.600.0))':
dependencies:
'@aws-sdk/client-sts': 3.598.0(@aws-sdk/client-sso-oidc@3.598.0)
'@aws-sdk/client-sts': 3.600.0(@aws-sdk/client-sso-oidc@3.600.0)
'@aws-sdk/types': 3.598.0
'@smithy/property-provider': 3.1.1
'@smithy/types': 3.1.0
@ -4858,7 +4866,7 @@ snapshots:
'@smithy/util-middleware': 3.0.1
tslib: 2.6.2
'@aws-sdk/s3-request-presigner@3.598.0':
'@aws-sdk/s3-request-presigner@3.600.0':
dependencies:
'@aws-sdk/signature-v4-multi-region': 3.598.0
'@aws-sdk/types': 3.598.0
@ -4878,9 +4886,9 @@ snapshots:
'@smithy/types': 3.1.0
tslib: 2.6.2
'@aws-sdk/token-providers@3.598.0(@aws-sdk/client-sso-oidc@3.598.0)':
'@aws-sdk/token-providers@3.598.0(@aws-sdk/client-sso-oidc@3.600.0)':
dependencies:
'@aws-sdk/client-sso-oidc': 3.598.0
'@aws-sdk/client-sso-oidc': 3.600.0
'@aws-sdk/types': 3.598.0
'@smithy/property-provider': 3.1.1
'@smithy/shared-ini-file-loader': 3.1.1
@ -5295,7 +5303,7 @@ snapshots:
'@jest/console@29.7.0':
dependencies:
'@jest/types': 29.6.3
'@types/node': 20.14.2
'@types/node': 20.14.6
chalk: 4.1.2
jest-message-util: 29.7.0
jest-util: 29.7.0
@ -5308,14 +5316,14 @@ snapshots:
'@jest/test-result': 29.7.0
'@jest/transform': 29.7.0
'@jest/types': 29.6.3
'@types/node': 20.14.2
'@types/node': 20.14.6
ansi-escapes: 4.3.2
chalk: 4.1.2
ci-info: 3.9.0
exit: 0.1.2
graceful-fs: 4.2.11
jest-changed-files: 29.7.0
jest-config: 29.7.0(@types/node@20.14.2)
jest-config: 29.7.0(@types/node@20.14.6)
jest-haste-map: 29.7.0
jest-message-util: 29.7.0
jest-regex-util: 29.6.3
@ -5340,7 +5348,7 @@ snapshots:
dependencies:
'@jest/fake-timers': 29.7.0
'@jest/types': 29.6.3
'@types/node': 20.14.2
'@types/node': 20.14.6
jest-mock: 29.7.0
'@jest/expect-utils@29.7.0':
@ -5358,7 +5366,7 @@ snapshots:
dependencies:
'@jest/types': 29.6.3
'@sinonjs/fake-timers': 10.3.0
'@types/node': 20.14.2
'@types/node': 20.14.6
jest-message-util: 29.7.0
jest-mock: 29.7.0
jest-util: 29.7.0
@ -5380,7 +5388,7 @@ snapshots:
'@jest/transform': 29.7.0
'@jest/types': 29.6.3
'@jridgewell/trace-mapping': 0.3.25
'@types/node': 20.14.2
'@types/node': 20.14.6
chalk: 4.1.2
collect-v8-coverage: 1.0.2
exit: 0.1.2
@ -5450,7 +5458,7 @@ snapshots:
'@jest/schemas': 29.6.3
'@types/istanbul-lib-coverage': 2.0.6
'@types/istanbul-reports': 3.0.4
'@types/node': 20.14.2
'@types/node': 20.14.6
'@types/yargs': 17.0.32
chalk: 4.1.2
@ -6178,7 +6186,7 @@ snapshots:
lz-string: 1.5.0
pretty-format: 27.5.1
'@testing-library/jest-dom@6.4.6(@jest/globals@29.7.0)(@types/jest@29.5.12)(jest@29.7.0(@types/node@20.14.2))':
'@testing-library/jest-dom@6.4.6(@jest/globals@29.7.0)(@types/jest@29.5.12)(jest@29.7.0(@types/node@20.14.6))':
dependencies:
'@adobe/css-tools': 4.4.0
'@babel/runtime': 7.24.5
@ -6191,7 +6199,7 @@ snapshots:
optionalDependencies:
'@jest/globals': 29.7.0
'@types/jest': 29.5.12
jest: 29.7.0(@types/node@20.14.2)
jest: 29.7.0(@types/node@20.14.6)
'@testing-library/react@16.0.0(@testing-library/dom@10.1.0)(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
dependencies:
@ -6236,7 +6244,7 @@ snapshots:
'@types/graceful-fs@4.1.9':
dependencies:
'@types/node': 20.14.2
'@types/node': 20.14.6
'@types/istanbul-lib-coverage@2.0.6': {}
@ -6255,19 +6263,19 @@ snapshots:
'@types/jsdom@20.0.1':
dependencies:
'@types/node': 20.14.2
'@types/node': 20.14.6
'@types/tough-cookie': 4.0.5
parse5: 7.1.2
'@types/json5@0.0.29': {}
'@types/node@20.14.2':
'@types/node@20.14.6':
dependencies:
undici-types: 5.26.5
'@types/pg@8.11.6':
dependencies:
'@types/node': 20.14.2
'@types/node': 20.14.6
pg-protocol: 1.6.1
pg-types: 4.0.2
@ -6292,14 +6300,14 @@ snapshots:
dependencies:
'@types/yargs-parser': 21.0.3
'@typescript-eslint/eslint-plugin@7.13.0(@typescript-eslint/parser@7.13.0(eslint@8.57.0)(typescript@5.4.5))(eslint@8.57.0)(typescript@5.4.5)':
'@typescript-eslint/eslint-plugin@7.13.1(@typescript-eslint/parser@7.13.1(eslint@8.57.0)(typescript@5.4.5))(eslint@8.57.0)(typescript@5.4.5)':
dependencies:
'@eslint-community/regexpp': 4.10.0
'@typescript-eslint/parser': 7.13.0(eslint@8.57.0)(typescript@5.4.5)
'@typescript-eslint/scope-manager': 7.13.0
'@typescript-eslint/type-utils': 7.13.0(eslint@8.57.0)(typescript@5.4.5)
'@typescript-eslint/utils': 7.13.0(eslint@8.57.0)(typescript@5.4.5)
'@typescript-eslint/visitor-keys': 7.13.0
'@typescript-eslint/parser': 7.13.1(eslint@8.57.0)(typescript@5.4.5)
'@typescript-eslint/scope-manager': 7.13.1
'@typescript-eslint/type-utils': 7.13.1(eslint@8.57.0)(typescript@5.4.5)
'@typescript-eslint/utils': 7.13.1(eslint@8.57.0)(typescript@5.4.5)
'@typescript-eslint/visitor-keys': 7.13.1
eslint: 8.57.0
graphemer: 1.4.0
ignore: 5.3.1
@ -6310,12 +6318,12 @@ snapshots:
transitivePeerDependencies:
- supports-color
'@typescript-eslint/parser@7.13.0(eslint@8.57.0)(typescript@5.4.5)':
'@typescript-eslint/parser@7.13.1(eslint@8.57.0)(typescript@5.4.5)':
dependencies:
'@typescript-eslint/scope-manager': 7.13.0
'@typescript-eslint/types': 7.13.0
'@typescript-eslint/typescript-estree': 7.13.0(typescript@5.4.5)
'@typescript-eslint/visitor-keys': 7.13.0
'@typescript-eslint/scope-manager': 7.13.1
'@typescript-eslint/types': 7.13.1
'@typescript-eslint/typescript-estree': 7.13.1(typescript@5.4.5)
'@typescript-eslint/visitor-keys': 7.13.1
debug: 4.3.4
eslint: 8.57.0
optionalDependencies:
@ -6336,20 +6344,20 @@ snapshots:
transitivePeerDependencies:
- supports-color
'@typescript-eslint/scope-manager@7.13.0':
'@typescript-eslint/scope-manager@7.13.1':
dependencies:
'@typescript-eslint/types': 7.13.0
'@typescript-eslint/visitor-keys': 7.13.0
'@typescript-eslint/types': 7.13.1
'@typescript-eslint/visitor-keys': 7.13.1
'@typescript-eslint/scope-manager@7.2.0':
dependencies:
'@typescript-eslint/types': 7.2.0
'@typescript-eslint/visitor-keys': 7.2.0
'@typescript-eslint/type-utils@7.13.0(eslint@8.57.0)(typescript@5.4.5)':
'@typescript-eslint/type-utils@7.13.1(eslint@8.57.0)(typescript@5.4.5)':
dependencies:
'@typescript-eslint/typescript-estree': 7.13.0(typescript@5.4.5)
'@typescript-eslint/utils': 7.13.0(eslint@8.57.0)(typescript@5.4.5)
'@typescript-eslint/typescript-estree': 7.13.1(typescript@5.4.5)
'@typescript-eslint/utils': 7.13.1(eslint@8.57.0)(typescript@5.4.5)
debug: 4.3.4
eslint: 8.57.0
ts-api-utils: 1.3.0(typescript@5.4.5)
@ -6358,14 +6366,14 @@ snapshots:
transitivePeerDependencies:
- supports-color
'@typescript-eslint/types@7.13.0': {}
'@typescript-eslint/types@7.13.1': {}
'@typescript-eslint/types@7.2.0': {}
'@typescript-eslint/typescript-estree@7.13.0(typescript@5.4.5)':
'@typescript-eslint/typescript-estree@7.13.1(typescript@5.4.5)':
dependencies:
'@typescript-eslint/types': 7.13.0
'@typescript-eslint/visitor-keys': 7.13.0
'@typescript-eslint/types': 7.13.1
'@typescript-eslint/visitor-keys': 7.13.1
debug: 4.3.4
globby: 11.1.0
is-glob: 4.0.3
@ -6392,20 +6400,20 @@ snapshots:
transitivePeerDependencies:
- supports-color
'@typescript-eslint/utils@7.13.0(eslint@8.57.0)(typescript@5.4.5)':
'@typescript-eslint/utils@7.13.1(eslint@8.57.0)(typescript@5.4.5)':
dependencies:
'@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0)
'@typescript-eslint/scope-manager': 7.13.0
'@typescript-eslint/types': 7.13.0
'@typescript-eslint/typescript-estree': 7.13.0(typescript@5.4.5)
'@typescript-eslint/scope-manager': 7.13.1
'@typescript-eslint/types': 7.13.1
'@typescript-eslint/typescript-estree': 7.13.1(typescript@5.4.5)
eslint: 8.57.0
transitivePeerDependencies:
- supports-color
- typescript
'@typescript-eslint/visitor-keys@7.13.0':
'@typescript-eslint/visitor-keys@7.13.1':
dependencies:
'@typescript-eslint/types': 7.13.0
'@typescript-eslint/types': 7.13.1
eslint-visitor-keys: 3.4.3
'@typescript-eslint/visitor-keys@7.2.0':
@ -6526,15 +6534,15 @@ snapshots:
transitivePeerDependencies:
- supports-color
ai@3.1.36(react@18.3.1)(solid-js@1.8.17)(svelte@4.2.17)(vue@3.4.27(typescript@5.4.5))(zod@3.23.8):
ai@3.2.1(react@18.3.1)(solid-js@1.8.17)(svelte@4.2.17)(vue@3.4.27(typescript@5.4.5))(zod@3.23.8):
dependencies:
'@ai-sdk/provider': 0.0.10
'@ai-sdk/provider-utils': 0.0.14(zod@3.23.8)
'@ai-sdk/react': 0.0.2(react@18.3.1)(zod@3.23.8)
'@ai-sdk/solid': 0.0.2(solid-js@1.8.17)(zod@3.23.8)
'@ai-sdk/svelte': 0.0.2(svelte@4.2.17)(zod@3.23.8)
'@ai-sdk/ui-utils': 0.0.2(zod@3.23.8)
'@ai-sdk/vue': 0.0.2(vue@3.4.27(typescript@5.4.5))(zod@3.23.8)
'@ai-sdk/provider-utils': 0.0.15(zod@3.23.8)
'@ai-sdk/react': 0.0.4(react@18.3.1)(zod@3.23.8)
'@ai-sdk/solid': 0.0.4(solid-js@1.8.17)(zod@3.23.8)
'@ai-sdk/svelte': 0.0.4(svelte@4.2.17)(zod@3.23.8)
'@ai-sdk/ui-utils': 0.0.4(zod@3.23.8)
'@ai-sdk/vue': 0.0.4(vue@3.4.27(typescript@5.4.5))(zod@3.23.8)
eventsource-parser: 1.1.2
json-schema: 0.4.0
jsondiffpatch: 0.6.0
@ -6927,13 +6935,13 @@ snapshots:
cookie@0.6.0: {}
create-jest@29.7.0(@types/node@20.14.2):
create-jest@29.7.0(@types/node@20.14.6):
dependencies:
'@jest/types': 29.6.3
chalk: 4.1.2
exit: 0.1.2
graceful-fs: 4.2.11
jest-config: 29.7.0(@types/node@20.14.2)
jest-config: 29.7.0(@types/node@20.14.6)
jest-util: 29.7.0
prompts: 2.4.2
transitivePeerDependencies:
@ -7204,7 +7212,7 @@ snapshots:
eslint: 8.57.0
eslint-import-resolver-node: 0.3.9
eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.4.5))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.57.0)
eslint-plugin-import: 2.29.1(@typescript-eslint/parser@7.13.0(eslint@8.57.0)(typescript@5.4.5))(eslint@8.57.0)
eslint-plugin-import: 2.29.1(@typescript-eslint/parser@7.13.1(eslint@8.57.0)(typescript@5.4.5))(eslint@8.57.0)
eslint-plugin-jsx-a11y: 6.8.0(eslint@8.57.0)
eslint-plugin-react: 7.34.1(eslint@8.57.0)
eslint-plugin-react-hooks: 4.6.2(eslint@8.57.0)
@ -7228,7 +7236,7 @@ snapshots:
enhanced-resolve: 5.16.1
eslint: 8.57.0
eslint-module-utils: 2.8.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.4.5))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.4.5))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.57.0))(eslint@8.57.0)
eslint-plugin-import: 2.29.1(@typescript-eslint/parser@7.13.0(eslint@8.57.0)(typescript@5.4.5))(eslint@8.57.0)
eslint-plugin-import: 2.29.1(@typescript-eslint/parser@7.13.1(eslint@8.57.0)(typescript@5.4.5))(eslint@8.57.0)
fast-glob: 3.3.2
get-tsconfig: 4.7.5
is-core-module: 2.13.1
@ -7239,11 +7247,11 @@ snapshots:
- eslint-import-resolver-webpack
- supports-color
eslint-module-utils@2.8.1(@typescript-eslint/parser@7.13.0(eslint@8.57.0)(typescript@5.4.5))(eslint-import-resolver-node@0.3.9)(eslint@8.57.0):
eslint-module-utils@2.8.1(@typescript-eslint/parser@7.13.1(eslint@8.57.0)(typescript@5.4.5))(eslint-import-resolver-node@0.3.9)(eslint@8.57.0):
dependencies:
debug: 3.2.7
optionalDependencies:
'@typescript-eslint/parser': 7.13.0(eslint@8.57.0)(typescript@5.4.5)
'@typescript-eslint/parser': 7.13.1(eslint@8.57.0)(typescript@5.4.5)
eslint: 8.57.0
eslint-import-resolver-node: 0.3.9
transitivePeerDependencies:
@ -7260,7 +7268,7 @@ snapshots:
transitivePeerDependencies:
- supports-color
eslint-plugin-import@2.29.1(@typescript-eslint/parser@7.13.0(eslint@8.57.0)(typescript@5.4.5))(eslint@8.57.0):
eslint-plugin-import@2.29.1(@typescript-eslint/parser@7.13.1(eslint@8.57.0)(typescript@5.4.5))(eslint@8.57.0):
dependencies:
array-includes: 3.1.8
array.prototype.findlastindex: 1.2.5
@ -7270,7 +7278,7 @@ snapshots:
doctrine: 2.1.0
eslint: 8.57.0
eslint-import-resolver-node: 0.3.9
eslint-module-utils: 2.8.1(@typescript-eslint/parser@7.13.0(eslint@8.57.0)(typescript@5.4.5))(eslint-import-resolver-node@0.3.9)(eslint@8.57.0)
eslint-module-utils: 2.8.1(@typescript-eslint/parser@7.13.1(eslint@8.57.0)(typescript@5.4.5))(eslint-import-resolver-node@0.3.9)(eslint@8.57.0)
hasown: 2.0.2
is-core-module: 2.13.1
is-glob: 4.0.3
@ -7281,7 +7289,7 @@ snapshots:
semver: 6.3.1
tsconfig-paths: 3.15.0
optionalDependencies:
'@typescript-eslint/parser': 7.13.0(eslint@8.57.0)(typescript@5.4.5)
'@typescript-eslint/parser': 7.13.1(eslint@8.57.0)(typescript@5.4.5)
transitivePeerDependencies:
- eslint-import-resolver-typescript
- eslint-import-resolver-webpack
@ -7504,7 +7512,7 @@ snapshots:
fraction.js@4.3.7: {}
framer-motion@11.2.10(react-dom@18.3.1(react@18.3.1))(react@18.3.1):
framer-motion@11.2.11(react-dom@18.3.1(react@18.3.1))(react@18.3.1):
dependencies:
tslib: 2.6.2
optionalDependencies:
@ -7889,7 +7897,7 @@ snapshots:
'@jest/expect': 29.7.0
'@jest/test-result': 29.7.0
'@jest/types': 29.6.3
'@types/node': 20.14.2
'@types/node': 20.14.6
chalk: 4.1.2
co: 4.6.0
dedent: 1.5.3
@ -7909,16 +7917,16 @@ snapshots:
- babel-plugin-macros
- supports-color
jest-cli@29.7.0(@types/node@20.14.2):
jest-cli@29.7.0(@types/node@20.14.6):
dependencies:
'@jest/core': 29.7.0
'@jest/test-result': 29.7.0
'@jest/types': 29.6.3
chalk: 4.1.2
create-jest: 29.7.0(@types/node@20.14.2)
create-jest: 29.7.0(@types/node@20.14.6)
exit: 0.1.2
import-local: 3.1.0
jest-config: 29.7.0(@types/node@20.14.2)
jest-config: 29.7.0(@types/node@20.14.6)
jest-util: 29.7.0
jest-validate: 29.7.0
yargs: 17.7.2
@ -7928,7 +7936,7 @@ snapshots:
- supports-color
- ts-node
jest-config@29.7.0(@types/node@20.14.2):
jest-config@29.7.0(@types/node@20.14.6):
dependencies:
'@babel/core': 7.24.5
'@jest/test-sequencer': 29.7.0
@ -7953,7 +7961,7 @@ snapshots:
slash: 3.0.0
strip-json-comments: 3.1.1
optionalDependencies:
'@types/node': 20.14.2
'@types/node': 20.14.6
transitivePeerDependencies:
- babel-plugin-macros
- supports-color
@ -7983,7 +7991,7 @@ snapshots:
'@jest/fake-timers': 29.7.0
'@jest/types': 29.6.3
'@types/jsdom': 20.0.1
'@types/node': 20.14.2
'@types/node': 20.14.6
jest-mock: 29.7.0
jest-util: 29.7.0
jsdom: 20.0.3
@ -7997,7 +8005,7 @@ snapshots:
'@jest/environment': 29.7.0
'@jest/fake-timers': 29.7.0
'@jest/types': 29.6.3
'@types/node': 20.14.2
'@types/node': 20.14.6
jest-mock: 29.7.0
jest-util: 29.7.0
@ -8007,7 +8015,7 @@ snapshots:
dependencies:
'@jest/types': 29.6.3
'@types/graceful-fs': 4.1.9
'@types/node': 20.14.2
'@types/node': 20.14.6
anymatch: 3.1.3
fb-watchman: 2.0.2
graceful-fs: 4.2.11
@ -8046,7 +8054,7 @@ snapshots:
jest-mock@29.7.0:
dependencies:
'@jest/types': 29.6.3
'@types/node': 20.14.2
'@types/node': 20.14.6
jest-util: 29.7.0
jest-pnp-resolver@1.2.3(jest-resolve@29.7.0):
@ -8081,7 +8089,7 @@ snapshots:
'@jest/test-result': 29.7.0
'@jest/transform': 29.7.0
'@jest/types': 29.6.3
'@types/node': 20.14.2
'@types/node': 20.14.6
chalk: 4.1.2
emittery: 0.13.1
graceful-fs: 4.2.11
@ -8109,7 +8117,7 @@ snapshots:
'@jest/test-result': 29.7.0
'@jest/transform': 29.7.0
'@jest/types': 29.6.3
'@types/node': 20.14.2
'@types/node': 20.14.6
chalk: 4.1.2
cjs-module-lexer: 1.3.1
collect-v8-coverage: 1.0.2
@ -8155,7 +8163,7 @@ snapshots:
jest-util@29.7.0:
dependencies:
'@jest/types': 29.6.3
'@types/node': 20.14.2
'@types/node': 20.14.6
chalk: 4.1.2
ci-info: 3.9.0
graceful-fs: 4.2.11
@ -8174,7 +8182,7 @@ snapshots:
dependencies:
'@jest/test-result': 29.7.0
'@jest/types': 29.6.3
'@types/node': 20.14.2
'@types/node': 20.14.6
ansi-escapes: 4.3.2
chalk: 4.1.2
emittery: 0.13.1
@ -8183,17 +8191,17 @@ snapshots:
jest-worker@29.7.0:
dependencies:
'@types/node': 20.14.2
'@types/node': 20.14.6
jest-util: 29.7.0
merge-stream: 2.0.0
supports-color: 8.1.1
jest@29.7.0(@types/node@20.14.2):
jest@29.7.0(@types/node@20.14.6):
dependencies:
'@jest/core': 29.7.0
'@jest/types': 29.6.3
import-local: 3.1.0
jest-cli: 29.7.0(@types/node@20.14.2)
jest-cli: 29.7.0(@types/node@20.14.6)
transitivePeerDependencies:
- '@types/node'
- babel-plugin-macros
@ -9308,7 +9316,7 @@ snapshots:
dependencies:
'@fastify/busboy': 2.1.1
undici@6.19.0: {}
undici@6.19.2: {}
universalify@0.2.0: {}

View File

@ -7,7 +7,7 @@ export default async function AdminConfigurationPage() {
return (
<SiteGrid
contentMain={
<div className="space-y-6">
<div className="space-y-4">
<div className="flex items-center">
<div className="flex-grow">
App Configuration

View File

@ -2,15 +2,18 @@ import { ReactNode } from 'react';
import { clsx } from 'clsx/lite';
import ExperimentalBadge from './ExperimentalBadge';
import Badge from './Badge';
import ResponsiveText from './primitives/ResponsiveText';
export default function Checklist({
title,
titleShort,
icon,
optional,
experimental,
children,
}: {
title: string
titleShort?: string
icon?: ReactNode
optional?: boolean
experimental?: boolean
@ -25,7 +28,9 @@ export default function Checklist({
)}>
<span className="w-7 shrink-0">{icon}</span>
<span className="inline-flex flex-wrap items-center gap-y-1 gap-x-1.5">
<ResponsiveText shortText={titleShort}>
{title}
</ResponsiveText>
{optional &&
<Badge type="small">Optional</Badge>}
{experimental &&

View File

@ -19,11 +19,17 @@ export default function ResponsiveDate({
className={clsx(className, 'uppercase')}
>
{/* Small */}
<span className="xs:hidden">
<span
className="xs:hidden"
aria-hidden
>
{formatDate(date, 'short')}
</span>
{/* Medium */}
<span className="hidden xs:inline-block sm:hidden">
<span
className="hidden xs:inline-block sm:hidden"
aria-hidden
>
{formatDate(date, 'medium')}
</span>
{/* Large */}

View File

@ -0,0 +1,22 @@
import { ReactNode } from 'react';
export default function ResponsiveText({
children,
shortText,
}: {
children: ReactNode
shortText?: string
}) {
return (
<>
{/* Full text */}
<span className="hidden sm:inline">
{children}
</span>
{/* Short text */}
<span className="sm:hidden" aria-hidden>
{shortText ?? children}
</span>
</>
);
}

View File

@ -166,7 +166,8 @@ export default function SiteChecklistClient({
</ErrorNote>;
return (
<div className="max-w-xl space-y-6 w-full">
<div className="max-w-xl w-full">
<div className="space-y-6">
<Checklist
title="Storage"
icon={<BiData size={16} />}
@ -270,7 +271,9 @@ export default function SiteChecklistClient({
'flex flex-nowrap items-center gap-2 leading-none -mx-1',
)}>
{secret ? <span>{secret}</span> : <Spinner />}
<div className="flex items-center gap-0.5 translate-y-[-2px]">
<div
className="flex items-center gap-0.5 translate-y-[-2px]"
>
{renderCopyButton('Secret', secret)}
</div>
</div>
@ -323,6 +326,7 @@ export default function SiteChecklistClient({
{!simplifiedView && <>
<Checklist
title="AI Text Generation"
titleShort="AI"
icon={<HiSparkles />}
experimental
optional
@ -508,18 +512,25 @@ export default function SiteChecklistClient({
</ChecklistRow>
</Checklist>
</>}
<div className="px-11 space-y-5 pt-0.5">
</div>
<div className="pl-11 pr-2 sm:pr-11 mt-4 sm:mt-7">
<div>
Changes to environment variables require a redeploy
or reboot of local dev server
</div>
{!simplifiedView &&
<div className="text-dim">
<div>Base Url: {baseUrl || 'Not Defined'}</div>
<div className="text-dim before:content-['—']">
<div className="flex whitespace-nowrap">
<span className="font-bold">Base Url</span>
&nbsp;&nbsp;
<span className="w-full flex overflow-x-auto">
{baseUrl || 'Not Defined'}
</span>
</div>
<div>
Commit:&nbsp;&nbsp;
{' '}
{commitSha ? commitSha.slice(0, 7) : 'Not Found'}
<span className="font-bold">Commit</span>
&nbsp;&nbsp;&nbsp;&nbsp;
{commitSha || 'Not Found'}
</div>
</div>}
</div>

View File

@ -8,7 +8,7 @@ export default async function SiteChecklistServer({
}: {
simplifiedView?: boolean
}) {
const secret = await generateAuthSecret();
const secret = await generateAuthSecret().catch(() => 'TRY AGAIN');
const connectionErrors = await testConnectionsAction().catch(() => ({}));
return (
<SiteChecklistClient {...{

View File

@ -207,7 +207,7 @@ export const CONFIG_CHECKLIST_STATUS = {
hasGridAspectRatio: Boolean(process.env.NEXT_PUBLIC_GRID_ASPECT_RATIO),
baseUrl: BASE_URL,
commitMessage: VERCEL_COMMIT_MESSAGE,
commitSha: VERCEL_COMMIT_SHA,
commitSha: VERCEL_COMMIT_SHA ? VERCEL_COMMIT_SHA.slice(0, 7) : undefined,
};
export type ConfigChecklistStatus = typeof CONFIG_CHECKLIST_STATUS;