├── .env ├── .gitignore ├── README.md ├── app ├── components │ └── Header.jsx ├── dashboard │ └── page.jsx ├── favicon.ico ├── globals.css ├── layout.jsx ├── page.jsx ├── profile │ └── page.jsx ├── register │ └── page.jsx ├── sign-in │ └── [[...sign-in]] │ │ └── page.jsx └── sign-up │ └── [[...sign-up]] │ └── page.jsx ├── jsconfig.json ├── middleware.js ├── next.config.js ├── package-lock.json ├── package.json ├── postcss.config.js ├── public ├── next.svg └── vercel.svg └── tailwind.config.js /.env: -------------------------------------------------------------------------------- 1 | NEXT_PUBLIC_CLERK_SIGN_IN_URL=/sign-in 2 | NEXT_PUBLIC_CLERK_SIGN_UP_URL=/sign-up 3 | NEXT_PUBLIC_CLERK_AFTER_SIGN_IN_URL=/dashboard 4 | NEXT_PUBLIC_CLERK_AFTER_SIGN_UP_URL=/dashboard 5 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # See https://help.github.com/articles/ignoring-files/ for more about ignoring files. 2 | 3 | # dependencies 4 | /node_modules 5 | /.pnp 6 | .pnp.js 7 | 8 | # testing 9 | /coverage 10 | 11 | # next.js 12 | /.next/ 13 | /out/ 14 | 15 | # production 16 | /build 17 | 18 | # misc 19 | .DS_Store 20 | *.pem 21 | 22 | # debug 23 | npm-debug.log* 24 | yarn-debug.log* 25 | yarn-error.log* 26 | 27 | # local env files 28 | .env*.local 29 | 30 | # vercel 31 | .vercel 32 | 33 | # typescript 34 | *.tsbuildinfo 35 | next-env.d.ts 36 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Clerk Authentication App 2 | 3 | This is an example of a Next.js app that uses [Clerk](https://clerk.com) for authentication and user management. This project goes along with my [YouTube Tutorial](). 4 | 5 | ## Usage 6 | 7 | Go to your https://clerk.com dashboard and click on `Developer->API Keys` to copy your keys. Create a file named `.env.local` and add the following: 8 | 9 | ``` 10 | NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=YOUR KEY 11 | CLERK_SECRET_KEY=YOUR KEY 12 | ``` 13 | 14 | 15 | Install the dependencies: 16 | 17 | ```bash 18 | npm install 19 | ``` 20 | 21 | Run the development server: 22 | 23 | ```bash 24 | npm run dev 25 | ``` 26 | 27 | Open [http://localhost:3000](http://localhost:3000) with your browser to see the result. 28 | 29 | -------------------------------------------------------------------------------- /app/components/Header.jsx: -------------------------------------------------------------------------------- 1 | import Link from 'next/link'; 2 | import { UserButton, auth } from '@clerk/nextjs'; 3 | 4 | const Header = async ({ username }) => { 5 | const { userId } = auth(); 6 | 7 | return ( 8 | 43 | ); 44 | }; 45 | 46 | export default Header; 47 | -------------------------------------------------------------------------------- /app/dashboard/page.jsx: -------------------------------------------------------------------------------- 1 | const Dashboard = () => { 2 | return ( 3 | <> 4 |

Dashboard

5 |

Welcome to the dashboard!

6 | 7 | ); 8 | }; 9 | 10 | export default Dashboard; 11 | -------------------------------------------------------------------------------- /app/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bradtraversy/clerk-app/8b76184518c4d67220274b21b11fe386a1094567/app/favicon.ico -------------------------------------------------------------------------------- /app/globals.css: -------------------------------------------------------------------------------- 1 | @tailwind base; 2 | @tailwind components; 3 | @tailwind utilities; 4 | -------------------------------------------------------------------------------- /app/layout.jsx: -------------------------------------------------------------------------------- 1 | import './globals.css'; 2 | import { Inter } from 'next/font/google'; 3 | import { ClerkProvider } from '@clerk/nextjs'; 4 | import { light } from '@clerk/themes'; 5 | import Header from './components/Header'; 6 | 7 | const inter = Inter({ subsets: ['latin'] }); 8 | 9 | export const metadata = { 10 | title: 'Clerk App', 11 | description: 'Example Clerk App', 12 | }; 13 | 14 | export default function RootLayout({ children }) { 15 | return ( 16 | 21 | 22 | 23 |
24 |
25 |
26 |
{children}
27 |
28 |
29 | 30 | 31 | 32 | ); 33 | } 34 | -------------------------------------------------------------------------------- /app/page.jsx: -------------------------------------------------------------------------------- 1 | export default function Home() { 2 | return ( 3 | <> 4 |

Welcome

5 |

6 | This is the demo site for Traversy Media's Next.js & Clerk tutorial. Go 7 | ahead and sign up or sign in! 8 |

9 | 10 | ); 11 | } 12 | -------------------------------------------------------------------------------- /app/profile/page.jsx: -------------------------------------------------------------------------------- 1 | import { UserProfile } from '@clerk/nextjs'; 2 | 3 | const ProfilePage = () => { 4 | return ( 5 | <> 6 | 7 | 8 | ); 9 | }; 10 | 11 | export default ProfilePage; 12 | -------------------------------------------------------------------------------- /app/register/page.jsx: -------------------------------------------------------------------------------- 1 | 'use client'; 2 | import { useState } from 'react'; 3 | import { useSignUp } from '@clerk/nextjs'; 4 | import { useRouter } from 'next/navigation'; 5 | 6 | const RegisterPage = () => { 7 | const { isLoaded, signUp, setActive } = useSignUp(); 8 | const [email, setEmail] = useState(''); 9 | const [firstName, setFirstName] = useState(''); 10 | const [lastName, setLastName] = useState(''); 11 | const [password, setPassword] = useState(''); 12 | const [pendingVerification, setPendingVerification] = useState(false); 13 | const [code, setCode] = useState(''); 14 | const router = useRouter(); 15 | 16 | // Form Submit 17 | const handleSubmit = async (e) => { 18 | e.preventDefault(); 19 | 20 | if (!isLoaded) { 21 | return; 22 | } 23 | 24 | try { 25 | await signUp.create({ 26 | first_name: firstName, 27 | last_name: lastName, 28 | email_address: email, 29 | password, 30 | }); 31 | 32 | // send the email. 33 | await signUp.prepareEmailAddressVerification({ strategy: 'email_code' }); 34 | 35 | // change the UI to our pending section. 36 | setPendingVerification(true); 37 | } catch (err) { 38 | console.error(err); 39 | } 40 | }; 41 | 42 | // Verify User Email Code 43 | const onPressVerify = async (e) => { 44 | e.preventDefault(); 45 | if (!isLoaded) { 46 | return; 47 | } 48 | 49 | try { 50 | const completeSignUp = await signUp.attemptEmailAddressVerification({ 51 | code, 52 | }); 53 | if (completeSignUp.status !== 'complete') { 54 | /* investigate the response, to see if there was an error 55 | or if the user needs to complete more steps.*/ 56 | console.log(JSON.stringify(completeSignUp, null, 2)); 57 | } 58 | if (completeSignUp.status === 'complete') { 59 | await setActive({ session: completeSignUp.createdSessionId }); 60 | router.push('/'); 61 | } 62 | } catch (err) { 63 | console.error(JSON.stringify(err, null, 2)); 64 | } 65 | }; 66 | 67 | return ( 68 |
69 |

Register

70 | {!pendingVerification && ( 71 |
72 |
73 | 79 | setFirstName(e.target.value)} 84 | className='bg-gray-50 border border-gray-300 text-gray-900 sm:text-sm rounded-lg focus:ring-blue-600 focus:border-blue-600 block w-full p-2.5' 85 | required={true} 86 | /> 87 |
88 |
89 | 95 | setLastName(e.target.value)} 100 | className='bg-gray-50 border border-gray-300 text-gray-900 sm:text-sm rounded-lg focus:ring-blue-600 focus:border-blue-600 block w-full p-2.5' 101 | required={true} 102 | /> 103 |
104 |
105 | 111 | setEmail(e.target.value)} 116 | className='bg-gray-50 border border-gray-300 text-gray-900 sm:text-sm rounded-lg focus:ring-blue-600 focus:border-blue-600 block w-full p-2.5' 117 | placeholder='name@company.com' 118 | required={true} 119 | /> 120 |
121 |
122 | 128 | setPassword(e.target.value)} 133 | className='bg-gray-50 border border-gray-300 text-gray-900 sm:text-sm rounded-lg block w-full p-2.5' 134 | required={true} 135 | /> 136 |
137 | 143 |
144 | )} 145 | {pendingVerification && ( 146 |
147 |
148 | setCode(e.target.value)} 153 | /> 154 | 161 |
162 |
163 | )} 164 |
165 | ); 166 | }; 167 | 168 | export default RegisterPage; 169 | -------------------------------------------------------------------------------- /app/sign-in/[[...sign-in]]/page.jsx: -------------------------------------------------------------------------------- 1 | import { SignIn } from '@clerk/nextjs'; 2 | 3 | const SignInPage = () => { 4 | return ( 5 | <> 6 | 7 | 8 | ); 9 | }; 10 | export default SignInPage; 11 | -------------------------------------------------------------------------------- /app/sign-up/[[...sign-up]]/page.jsx: -------------------------------------------------------------------------------- 1 | import { SignUp } from '@clerk/nextjs'; 2 | 3 | const SignUpPage = () => { 4 | return ( 5 | <> 6 | 7 | 8 | ); 9 | }; 10 | export default SignUpPage; 11 | -------------------------------------------------------------------------------- /jsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "paths": { 4 | "@/*": ["./*"] 5 | } 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /middleware.js: -------------------------------------------------------------------------------- 1 | import { authMiddleware } from '@clerk/nextjs'; 2 | 3 | export default authMiddleware({ 4 | publicRoutes: ['/', '/profile', '/register'], 5 | }); 6 | 7 | export const config = { 8 | matcher: ['/((?!.*\\..*|_next).*)', '/', '/(api|trpc)(.*)'], 9 | }; 10 | -------------------------------------------------------------------------------- /next.config.js: -------------------------------------------------------------------------------- 1 | /** @type {import('next').NextConfig} */ 2 | const nextConfig = {} 3 | 4 | module.exports = nextConfig 5 | -------------------------------------------------------------------------------- /package-lock.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "clerk-app", 3 | "version": "0.1.0", 4 | "lockfileVersion": 3, 5 | "requires": true, 6 | "packages": { 7 | "": { 8 | "name": "clerk-app", 9 | "version": "0.1.0", 10 | "dependencies": { 11 | "@clerk/nextjs": "^4.21.8", 12 | "@clerk/themes": "^1.7.5", 13 | "autoprefixer": "10.4.14", 14 | "next": "13.4.7", 15 | "postcss": "8.4.24", 16 | "react": "18.2.0", 17 | "react-dom": "18.2.0", 18 | "tailwindcss": "3.3.2" 19 | } 20 | }, 21 | "node_modules/@alloc/quick-lru": { 22 | "version": "5.2.0", 23 | "resolved": "https://registry.npmjs.org/@alloc/quick-lru/-/quick-lru-5.2.0.tgz", 24 | "integrity": "sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==", 25 | "engines": { 26 | "node": ">=10" 27 | }, 28 | "funding": { 29 | "url": "https://github.com/sponsors/sindresorhus" 30 | } 31 | }, 32 | "node_modules/@clerk/backend": { 33 | "version": "0.23.5", 34 | "resolved": "https://registry.npmjs.org/@clerk/backend/-/backend-0.23.5.tgz", 35 | "integrity": "sha512-x+NCRvgaVFbAQX2r5hJ6SRI1JnQWD8HAfKxZb+op0KBuKvnk1shpDX67n/23ehx+YG5rQ7FbbKHXyrO5chM5Mw==", 36 | "dependencies": { 37 | "@clerk/types": "^3.46.0", 38 | "@peculiar/webcrypto": "1.4.1", 39 | "@types/node": "16.18.6", 40 | "deepmerge": "4.2.2", 41 | "node-fetch-native": "1.0.1", 42 | "snakecase-keys": "5.4.4", 43 | "tslib": "2.4.1" 44 | }, 45 | "engines": { 46 | "node": ">=14" 47 | } 48 | }, 49 | "node_modules/@clerk/backend/node_modules/tslib": { 50 | "version": "2.4.1", 51 | "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.1.tgz", 52 | "integrity": "sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==" 53 | }, 54 | "node_modules/@clerk/clerk-react": { 55 | "version": "4.20.5", 56 | "resolved": "https://registry.npmjs.org/@clerk/clerk-react/-/clerk-react-4.20.5.tgz", 57 | "integrity": "sha512-y5edxot+7adnyUqOGNgS7bEA3eoM53FMC8jV8VmUFvKLkOOMQpgfdo3/I7PWoTrRaNwqNWmhQGy1J3uqw8gv4g==", 58 | "dependencies": { 59 | "@clerk/shared": "^0.19.1", 60 | "@clerk/types": "^3.46.0", 61 | "swr": "1.3.0", 62 | "tslib": "2.4.1" 63 | }, 64 | "engines": { 65 | "node": ">=14" 66 | }, 67 | "peerDependencies": { 68 | "react": ">=16" 69 | } 70 | }, 71 | "node_modules/@clerk/clerk-react/node_modules/tslib": { 72 | "version": "2.4.1", 73 | "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.1.tgz", 74 | "integrity": "sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==" 75 | }, 76 | "node_modules/@clerk/clerk-sdk-node": { 77 | "version": "4.10.12", 78 | "resolved": "https://registry.npmjs.org/@clerk/clerk-sdk-node/-/clerk-sdk-node-4.10.12.tgz", 79 | "integrity": "sha512-6LzLFEMZMnUE4O19XOW/6LAoAnHP7mZ2scMCib4dOvTRQxcZz1ql34ZMzewNYKrS6V5loQlslc1bnPlJ2zoX3g==", 80 | "dependencies": { 81 | "@clerk/backend": "^0.23.5", 82 | "@clerk/types": "^3.46.0", 83 | "@types/cookies": "0.7.7", 84 | "@types/express": "4.17.14", 85 | "@types/node-fetch": "2.6.2", 86 | "camelcase-keys": "6.2.2", 87 | "cookie": "0.5.0", 88 | "snakecase-keys": "3.2.1", 89 | "tslib": "2.4.1" 90 | }, 91 | "engines": { 92 | "node": ">=14" 93 | } 94 | }, 95 | "node_modules/@clerk/clerk-sdk-node/node_modules/snakecase-keys": { 96 | "version": "3.2.1", 97 | "resolved": "https://registry.npmjs.org/snakecase-keys/-/snakecase-keys-3.2.1.tgz", 98 | "integrity": "sha512-CjU5pyRfwOtaOITYv5C8DzpZ8XA/ieRsDpr93HI2r6e3YInC6moZpSQbmUtg8cTk58tq2x3jcG2gv+p1IZGmMA==", 99 | "dependencies": { 100 | "map-obj": "^4.1.0", 101 | "to-snake-case": "^1.0.0" 102 | }, 103 | "engines": { 104 | "node": ">=8" 105 | } 106 | }, 107 | "node_modules/@clerk/clerk-sdk-node/node_modules/tslib": { 108 | "version": "2.4.1", 109 | "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.1.tgz", 110 | "integrity": "sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==" 111 | }, 112 | "node_modules/@clerk/nextjs": { 113 | "version": "4.21.8", 114 | "resolved": "https://registry.npmjs.org/@clerk/nextjs/-/nextjs-4.21.8.tgz", 115 | "integrity": "sha512-Z32BsnoTg5C4ZstCHhKtoV90yr062mQRgkjhfZs5mAMtAMJfZ/UjNSfdBkBLVfxqUiBcLQXRxZbVayytkeTlEQ==", 116 | "dependencies": { 117 | "@clerk/backend": "^0.23.5", 118 | "@clerk/clerk-react": "^4.20.5", 119 | "@clerk/clerk-sdk-node": "^4.10.12", 120 | "@clerk/types": "^3.46.0", 121 | "path-to-regexp": "6.2.1", 122 | "tslib": "2.4.1" 123 | }, 124 | "engines": { 125 | "node": ">=14" 126 | }, 127 | "peerDependencies": { 128 | "next": ">=10", 129 | "react": "^17.0.2 || ^18.0.0-0", 130 | "react-dom": "^17.0.2 || ^18.0.0-0" 131 | } 132 | }, 133 | "node_modules/@clerk/nextjs/node_modules/tslib": { 134 | "version": "2.4.1", 135 | "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.1.tgz", 136 | "integrity": "sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==" 137 | }, 138 | "node_modules/@clerk/shared": { 139 | "version": "0.19.1", 140 | "resolved": "https://registry.npmjs.org/@clerk/shared/-/shared-0.19.1.tgz", 141 | "integrity": "sha512-5RwASoff6CPgHcrM3kuvgUwp9qQa02zkjUdV8lNzQYEhojz6dfahLv3xZW3MS1UqDOIGrbrPviqi9pBmjpNKPA==", 142 | "dependencies": { 143 | "glob-to-regexp": "0.4.1", 144 | "js-cookie": "3.0.1", 145 | "swr": "1.3.0" 146 | }, 147 | "peerDependencies": { 148 | "react": ">=16" 149 | } 150 | }, 151 | "node_modules/@clerk/themes": { 152 | "version": "1.7.5", 153 | "resolved": "https://registry.npmjs.org/@clerk/themes/-/themes-1.7.5.tgz", 154 | "integrity": "sha512-kIdCIBSCp6t1saGAzbelcfZi5P+L3+CuVFwSjpulwGTRxeOOs/S8hB4CAHVbTwfxPw5Ms+AnN4dXJKHjSnxPIg==", 155 | "engines": { 156 | "node": ">=14" 157 | }, 158 | "peerDependencies": { 159 | "react": ">=16" 160 | } 161 | }, 162 | "node_modules/@clerk/types": { 163 | "version": "3.46.0", 164 | "resolved": "https://registry.npmjs.org/@clerk/types/-/types-3.46.0.tgz", 165 | "integrity": "sha512-IooGZ64uARKg+GS6b38usrWqhzU0PcrDbZBaZm4JmtYd5CZbWABklBNkiXQhnnaKYdvHr5K8vhJd5spsJarNpw==", 166 | "dependencies": { 167 | "csstype": "3.1.1" 168 | }, 169 | "engines": { 170 | "node": ">=14" 171 | } 172 | }, 173 | "node_modules/@jridgewell/gen-mapping": { 174 | "version": "0.3.3", 175 | "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", 176 | "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", 177 | "dependencies": { 178 | "@jridgewell/set-array": "^1.0.1", 179 | "@jridgewell/sourcemap-codec": "^1.4.10", 180 | "@jridgewell/trace-mapping": "^0.3.9" 181 | }, 182 | "engines": { 183 | "node": ">=6.0.0" 184 | } 185 | }, 186 | "node_modules/@jridgewell/resolve-uri": { 187 | "version": "3.1.0", 188 | "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", 189 | "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", 190 | "engines": { 191 | "node": ">=6.0.0" 192 | } 193 | }, 194 | "node_modules/@jridgewell/set-array": { 195 | "version": "1.1.2", 196 | "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", 197 | "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", 198 | "engines": { 199 | "node": ">=6.0.0" 200 | } 201 | }, 202 | "node_modules/@jridgewell/sourcemap-codec": { 203 | "version": "1.4.15", 204 | "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", 205 | "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==" 206 | }, 207 | "node_modules/@jridgewell/trace-mapping": { 208 | "version": "0.3.18", 209 | "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz", 210 | "integrity": "sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==", 211 | "dependencies": { 212 | "@jridgewell/resolve-uri": "3.1.0", 213 | "@jridgewell/sourcemap-codec": "1.4.14" 214 | } 215 | }, 216 | "node_modules/@jridgewell/trace-mapping/node_modules/@jridgewell/sourcemap-codec": { 217 | "version": "1.4.14", 218 | "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", 219 | "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==" 220 | }, 221 | "node_modules/@next/env": { 222 | "version": "13.4.7", 223 | "resolved": "https://registry.npmjs.org/@next/env/-/env-13.4.7.tgz", 224 | "integrity": "sha512-ZlbiFulnwiFsW9UV1ku1OvX/oyIPLtMk9p/nnvDSwI0s7vSoZdRtxXNsaO+ZXrLv/pMbXVGq4lL8TbY9iuGmVw==" 225 | }, 226 | "node_modules/@next/swc-darwin-arm64": { 227 | "version": "13.4.7", 228 | "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-13.4.7.tgz", 229 | "integrity": "sha512-VZTxPv1b59KGiv/pZHTO5Gbsdeoxcj2rU2cqJu03btMhHpn3vwzEK0gUSVC/XW96aeGO67X+cMahhwHzef24/w==", 230 | "cpu": [ 231 | "arm64" 232 | ], 233 | "optional": true, 234 | "os": [ 235 | "darwin" 236 | ], 237 | "engines": { 238 | "node": ">= 10" 239 | } 240 | }, 241 | "node_modules/@next/swc-darwin-x64": { 242 | "version": "13.4.7", 243 | "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-13.4.7.tgz", 244 | "integrity": "sha512-gO2bw+2Ymmga+QYujjvDz9955xvYGrWofmxTq7m70b9pDPvl7aDFABJOZ2a8SRCuSNB5mXU8eTOmVVwyp/nAew==", 245 | "cpu": [ 246 | "x64" 247 | ], 248 | "optional": true, 249 | "os": [ 250 | "darwin" 251 | ], 252 | "engines": { 253 | "node": ">= 10" 254 | } 255 | }, 256 | "node_modules/@next/swc-linux-arm64-gnu": { 257 | "version": "13.4.7", 258 | "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-13.4.7.tgz", 259 | "integrity": "sha512-6cqp3vf1eHxjIDhEOc7Mh/s8z1cwc/l5B6ZNkOofmZVyu1zsbEM5Hmx64s12Rd9AYgGoiCz4OJ4M/oRnkE16/Q==", 260 | "cpu": [ 261 | "arm64" 262 | ], 263 | "optional": true, 264 | "os": [ 265 | "linux" 266 | ], 267 | "engines": { 268 | "node": ">= 10" 269 | } 270 | }, 271 | "node_modules/@next/swc-linux-arm64-musl": { 272 | "version": "13.4.7", 273 | "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-13.4.7.tgz", 274 | "integrity": "sha512-T1kD2FWOEy5WPidOn1si0rYmWORNch4a/NR52Ghyp4q7KyxOCuiOfZzyhVC5tsLIBDH3+cNdB5DkD9afpNDaOw==", 275 | "cpu": [ 276 | "arm64" 277 | ], 278 | "optional": true, 279 | "os": [ 280 | "linux" 281 | ], 282 | "engines": { 283 | "node": ">= 10" 284 | } 285 | }, 286 | "node_modules/@next/swc-linux-x64-gnu": { 287 | "version": "13.4.7", 288 | "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-13.4.7.tgz", 289 | "integrity": "sha512-zaEC+iEiAHNdhl6fuwl0H0shnTzQoAoJiDYBUze8QTntE/GNPfTYpYboxF5LRYIjBwETUatvE0T64W6SKDipvg==", 290 | "cpu": [ 291 | "x64" 292 | ], 293 | "optional": true, 294 | "os": [ 295 | "linux" 296 | ], 297 | "engines": { 298 | "node": ">= 10" 299 | } 300 | }, 301 | "node_modules/@next/swc-linux-x64-musl": { 302 | "version": "13.4.7", 303 | "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-13.4.7.tgz", 304 | "integrity": "sha512-X6r12F8d8SKAtYJqLZBBMIwEqcTRvUdVm+xIq+l6pJqlgT2tNsLLf2i5Cl88xSsIytBICGsCNNHd+siD2fbWBA==", 305 | "cpu": [ 306 | "x64" 307 | ], 308 | "optional": true, 309 | "os": [ 310 | "linux" 311 | ], 312 | "engines": { 313 | "node": ">= 10" 314 | } 315 | }, 316 | "node_modules/@next/swc-win32-arm64-msvc": { 317 | "version": "13.4.7", 318 | "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-13.4.7.tgz", 319 | "integrity": "sha512-NPnmnV+vEIxnu6SUvjnuaWRglZzw4ox5n/MQTxeUhb5iwVWFedolPFebMNwgrWu4AELwvTdGtWjqof53AiWHcw==", 320 | "cpu": [ 321 | "arm64" 322 | ], 323 | "optional": true, 324 | "os": [ 325 | "win32" 326 | ], 327 | "engines": { 328 | "node": ">= 10" 329 | } 330 | }, 331 | "node_modules/@next/swc-win32-ia32-msvc": { 332 | "version": "13.4.7", 333 | "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-13.4.7.tgz", 334 | "integrity": "sha512-6Hxijm6/a8XqLQpOOf/XuwWRhcuc/g4rBB2oxjgCMuV9Xlr2bLs5+lXyh8w9YbAUMYR3iC9mgOlXbHa79elmXw==", 335 | "cpu": [ 336 | "ia32" 337 | ], 338 | "optional": true, 339 | "os": [ 340 | "win32" 341 | ], 342 | "engines": { 343 | "node": ">= 10" 344 | } 345 | }, 346 | "node_modules/@next/swc-win32-x64-msvc": { 347 | "version": "13.4.7", 348 | "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-13.4.7.tgz", 349 | "integrity": "sha512-sW9Yt36Db1nXJL+mTr2Wo0y+VkPWeYhygvcHj1FF0srVtV+VoDjxleKtny21QHaG05zdeZnw2fCtf2+dEqgwqA==", 350 | "cpu": [ 351 | "x64" 352 | ], 353 | "optional": true, 354 | "os": [ 355 | "win32" 356 | ], 357 | "engines": { 358 | "node": ">= 10" 359 | } 360 | }, 361 | "node_modules/@nodelib/fs.scandir": { 362 | "version": "2.1.5", 363 | "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", 364 | "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", 365 | "dependencies": { 366 | "@nodelib/fs.stat": "2.0.5", 367 | "run-parallel": "^1.1.9" 368 | }, 369 | "engines": { 370 | "node": ">= 8" 371 | } 372 | }, 373 | "node_modules/@nodelib/fs.stat": { 374 | "version": "2.0.5", 375 | "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", 376 | "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", 377 | "engines": { 378 | "node": ">= 8" 379 | } 380 | }, 381 | "node_modules/@nodelib/fs.walk": { 382 | "version": "1.2.8", 383 | "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", 384 | "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", 385 | "dependencies": { 386 | "@nodelib/fs.scandir": "2.1.5", 387 | "fastq": "^1.6.0" 388 | }, 389 | "engines": { 390 | "node": ">= 8" 391 | } 392 | }, 393 | "node_modules/@peculiar/asn1-schema": { 394 | "version": "2.3.6", 395 | "resolved": "https://registry.npmjs.org/@peculiar/asn1-schema/-/asn1-schema-2.3.6.tgz", 396 | "integrity": "sha512-izNRxPoaeJeg/AyH8hER6s+H7p4itk+03QCa4sbxI3lNdseQYCuxzgsuNK8bTXChtLTjpJz6NmXKA73qLa3rCA==", 397 | "dependencies": { 398 | "asn1js": "^3.0.5", 399 | "pvtsutils": "^1.3.2", 400 | "tslib": "^2.4.0" 401 | } 402 | }, 403 | "node_modules/@peculiar/json-schema": { 404 | "version": "1.1.12", 405 | "resolved": "https://registry.npmjs.org/@peculiar/json-schema/-/json-schema-1.1.12.tgz", 406 | "integrity": "sha512-coUfuoMeIB7B8/NMekxaDzLhaYmp0HZNPEjYRm9goRou8UZIC3z21s0sL9AWoCw4EG876QyO3kYrc61WNF9B/w==", 407 | "dependencies": { 408 | "tslib": "^2.0.0" 409 | }, 410 | "engines": { 411 | "node": ">=8.0.0" 412 | } 413 | }, 414 | "node_modules/@peculiar/webcrypto": { 415 | "version": "1.4.1", 416 | "resolved": "https://registry.npmjs.org/@peculiar/webcrypto/-/webcrypto-1.4.1.tgz", 417 | "integrity": "sha512-eK4C6WTNYxoI7JOabMoZICiyqRRtJB220bh0Mbj5RwRycleZf9BPyZoxsTvpP0FpmVS2aS13NKOuh5/tN3sIRw==", 418 | "dependencies": { 419 | "@peculiar/asn1-schema": "^2.3.0", 420 | "@peculiar/json-schema": "^1.1.12", 421 | "pvtsutils": "^1.3.2", 422 | "tslib": "^2.4.1", 423 | "webcrypto-core": "^1.7.4" 424 | }, 425 | "engines": { 426 | "node": ">=10.12.0" 427 | } 428 | }, 429 | "node_modules/@swc/helpers": { 430 | "version": "0.5.1", 431 | "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.1.tgz", 432 | "integrity": "sha512-sJ902EfIzn1Fa+qYmjdQqh8tPsoxyBz+8yBKC2HKUxyezKJFwPGOn7pv4WY6QuQW//ySQi5lJjA/ZT9sNWWNTg==", 433 | "dependencies": { 434 | "tslib": "^2.4.0" 435 | } 436 | }, 437 | "node_modules/@types/body-parser": { 438 | "version": "1.19.2", 439 | "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz", 440 | "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==", 441 | "dependencies": { 442 | "@types/connect": "*", 443 | "@types/node": "*" 444 | } 445 | }, 446 | "node_modules/@types/connect": { 447 | "version": "3.4.35", 448 | "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", 449 | "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", 450 | "dependencies": { 451 | "@types/node": "*" 452 | } 453 | }, 454 | "node_modules/@types/cookies": { 455 | "version": "0.7.7", 456 | "resolved": "https://registry.npmjs.org/@types/cookies/-/cookies-0.7.7.tgz", 457 | "integrity": "sha512-h7BcvPUogWbKCzBR2lY4oqaZbO3jXZksexYJVFvkrFeLgbZjQkU4x8pRq6eg2MHXQhY0McQdqmmsxRWlVAHooA==", 458 | "dependencies": { 459 | "@types/connect": "*", 460 | "@types/express": "*", 461 | "@types/keygrip": "*", 462 | "@types/node": "*" 463 | } 464 | }, 465 | "node_modules/@types/express": { 466 | "version": "4.17.14", 467 | "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.14.tgz", 468 | "integrity": "sha512-TEbt+vaPFQ+xpxFLFssxUDXj5cWCxZJjIcB7Yg0k0GMHGtgtQgpvx/MUQUeAkNbA9AAGrwkAsoeItdTgS7FMyg==", 469 | "dependencies": { 470 | "@types/body-parser": "*", 471 | "@types/express-serve-static-core": "^4.17.18", 472 | "@types/qs": "*", 473 | "@types/serve-static": "*" 474 | } 475 | }, 476 | "node_modules/@types/express-serve-static-core": { 477 | "version": "4.17.35", 478 | "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.35.tgz", 479 | "integrity": "sha512-wALWQwrgiB2AWTT91CB62b6Yt0sNHpznUXeZEcnPU3DRdlDIz74x8Qg1UUYKSVFi+va5vKOLYRBI1bRKiLLKIg==", 480 | "dependencies": { 481 | "@types/node": "*", 482 | "@types/qs": "*", 483 | "@types/range-parser": "*", 484 | "@types/send": "*" 485 | } 486 | }, 487 | "node_modules/@types/keygrip": { 488 | "version": "1.0.2", 489 | "resolved": "https://registry.npmjs.org/@types/keygrip/-/keygrip-1.0.2.tgz", 490 | "integrity": "sha512-GJhpTepz2udxGexqos8wgaBx4I/zWIDPh/KOGEwAqtuGDkOUJu5eFvwmdBX4AmB8Odsr+9pHCQqiAqDL/yKMKw==" 491 | }, 492 | "node_modules/@types/mime": { 493 | "version": "1.3.2", 494 | "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.2.tgz", 495 | "integrity": "sha512-YATxVxgRqNH6nHEIsvg6k2Boc1JHI9ZbH5iWFFv/MTkchz3b1ieGDa5T0a9RznNdI0KhVbdbWSN+KWWrQZRxTw==" 496 | }, 497 | "node_modules/@types/node": { 498 | "version": "16.18.6", 499 | "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.6.tgz", 500 | "integrity": "sha512-vmYJF0REqDyyU0gviezF/KHq/fYaUbFhkcNbQCuPGFQj6VTbXuHZoxs/Y7mutWe73C8AC6l9fFu8mSYiBAqkGA==" 501 | }, 502 | "node_modules/@types/node-fetch": { 503 | "version": "2.6.2", 504 | "resolved": "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.6.2.tgz", 505 | "integrity": "sha512-DHqhlq5jeESLy19TYhLakJ07kNumXWjcDdxXsLUMJZ6ue8VZJj4kLPQVE/2mdHh3xZziNF1xppu5lwmS53HR+A==", 506 | "dependencies": { 507 | "@types/node": "*", 508 | "form-data": "^3.0.0" 509 | } 510 | }, 511 | "node_modules/@types/qs": { 512 | "version": "6.9.7", 513 | "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", 514 | "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==" 515 | }, 516 | "node_modules/@types/range-parser": { 517 | "version": "1.2.4", 518 | "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz", 519 | "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==" 520 | }, 521 | "node_modules/@types/send": { 522 | "version": "0.17.1", 523 | "resolved": "https://registry.npmjs.org/@types/send/-/send-0.17.1.tgz", 524 | "integrity": "sha512-Cwo8LE/0rnvX7kIIa3QHCkcuF21c05Ayb0ZfxPiv0W8VRiZiNW/WuRupHKpqqGVGf7SUA44QSOUKaEd9lIrd/Q==", 525 | "dependencies": { 526 | "@types/mime": "^1", 527 | "@types/node": "*" 528 | } 529 | }, 530 | "node_modules/@types/serve-static": { 531 | "version": "1.15.1", 532 | "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.1.tgz", 533 | "integrity": "sha512-NUo5XNiAdULrJENtJXZZ3fHtfMolzZwczzBbnAeBbqBwG+LaG6YaJtuwzwGSQZ2wsCrxjEhNNjAkKigy3n8teQ==", 534 | "dependencies": { 535 | "@types/mime": "*", 536 | "@types/node": "*" 537 | } 538 | }, 539 | "node_modules/any-promise": { 540 | "version": "1.3.0", 541 | "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", 542 | "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==" 543 | }, 544 | "node_modules/anymatch": { 545 | "version": "3.1.3", 546 | "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", 547 | "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", 548 | "dependencies": { 549 | "normalize-path": "^3.0.0", 550 | "picomatch": "^2.0.4" 551 | }, 552 | "engines": { 553 | "node": ">= 8" 554 | } 555 | }, 556 | "node_modules/arg": { 557 | "version": "5.0.2", 558 | "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", 559 | "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==" 560 | }, 561 | "node_modules/asn1js": { 562 | "version": "3.0.5", 563 | "resolved": "https://registry.npmjs.org/asn1js/-/asn1js-3.0.5.tgz", 564 | "integrity": "sha512-FVnvrKJwpt9LP2lAMl8qZswRNm3T4q9CON+bxldk2iwk3FFpuwhx2FfinyitizWHsVYyaY+y5JzDR0rCMV5yTQ==", 565 | "dependencies": { 566 | "pvtsutils": "^1.3.2", 567 | "pvutils": "^1.1.3", 568 | "tslib": "^2.4.0" 569 | }, 570 | "engines": { 571 | "node": ">=12.0.0" 572 | } 573 | }, 574 | "node_modules/asynckit": { 575 | "version": "0.4.0", 576 | "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", 577 | "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" 578 | }, 579 | "node_modules/autoprefixer": { 580 | "version": "10.4.14", 581 | "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.14.tgz", 582 | "integrity": "sha512-FQzyfOsTlwVzjHxKEqRIAdJx9niO6VCBCoEwax/VLSoQF29ggECcPuBqUMZ+u8jCZOPSy8b8/8KnuFbp0SaFZQ==", 583 | "funding": [ 584 | { 585 | "type": "opencollective", 586 | "url": "https://opencollective.com/postcss/" 587 | }, 588 | { 589 | "type": "tidelift", 590 | "url": "https://tidelift.com/funding/github/npm/autoprefixer" 591 | } 592 | ], 593 | "dependencies": { 594 | "browserslist": "^4.21.5", 595 | "caniuse-lite": "^1.0.30001464", 596 | "fraction.js": "^4.2.0", 597 | "normalize-range": "^0.1.2", 598 | "picocolors": "^1.0.0", 599 | "postcss-value-parser": "^4.2.0" 600 | }, 601 | "bin": { 602 | "autoprefixer": "bin/autoprefixer" 603 | }, 604 | "engines": { 605 | "node": "^10 || ^12 || >=14" 606 | }, 607 | "peerDependencies": { 608 | "postcss": "^8.1.0" 609 | } 610 | }, 611 | "node_modules/balanced-match": { 612 | "version": "1.0.2", 613 | "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", 614 | "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" 615 | }, 616 | "node_modules/binary-extensions": { 617 | "version": "2.2.0", 618 | "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", 619 | "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", 620 | "engines": { 621 | "node": ">=8" 622 | } 623 | }, 624 | "node_modules/brace-expansion": { 625 | "version": "1.1.11", 626 | "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", 627 | "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", 628 | "dependencies": { 629 | "balanced-match": "^1.0.0", 630 | "concat-map": "0.0.1" 631 | } 632 | }, 633 | "node_modules/braces": { 634 | "version": "3.0.2", 635 | "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", 636 | "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", 637 | "dependencies": { 638 | "fill-range": "^7.0.1" 639 | }, 640 | "engines": { 641 | "node": ">=8" 642 | } 643 | }, 644 | "node_modules/browserslist": { 645 | "version": "4.21.9", 646 | "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.9.tgz", 647 | "integrity": "sha512-M0MFoZzbUrRU4KNfCrDLnvyE7gub+peetoTid3TBIqtunaDJyXlwhakT+/VkvSXcfIzFfK/nkCs4nmyTmxdNSg==", 648 | "funding": [ 649 | { 650 | "type": "opencollective", 651 | "url": "https://opencollective.com/browserslist" 652 | }, 653 | { 654 | "type": "tidelift", 655 | "url": "https://tidelift.com/funding/github/npm/browserslist" 656 | }, 657 | { 658 | "type": "github", 659 | "url": "https://github.com/sponsors/ai" 660 | } 661 | ], 662 | "dependencies": { 663 | "caniuse-lite": "^1.0.30001503", 664 | "electron-to-chromium": "^1.4.431", 665 | "node-releases": "^2.0.12", 666 | "update-browserslist-db": "^1.0.11" 667 | }, 668 | "bin": { 669 | "browserslist": "cli.js" 670 | }, 671 | "engines": { 672 | "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" 673 | } 674 | }, 675 | "node_modules/busboy": { 676 | "version": "1.6.0", 677 | "resolved": "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz", 678 | "integrity": "sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==", 679 | "dependencies": { 680 | "streamsearch": "^1.1.0" 681 | }, 682 | "engines": { 683 | "node": ">=10.16.0" 684 | } 685 | }, 686 | "node_modules/camelcase": { 687 | "version": "5.3.1", 688 | "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", 689 | "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", 690 | "engines": { 691 | "node": ">=6" 692 | } 693 | }, 694 | "node_modules/camelcase-css": { 695 | "version": "2.0.1", 696 | "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", 697 | "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==", 698 | "engines": { 699 | "node": ">= 6" 700 | } 701 | }, 702 | "node_modules/camelcase-keys": { 703 | "version": "6.2.2", 704 | "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-6.2.2.tgz", 705 | "integrity": "sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==", 706 | "dependencies": { 707 | "camelcase": "^5.3.1", 708 | "map-obj": "^4.0.0", 709 | "quick-lru": "^4.0.1" 710 | }, 711 | "engines": { 712 | "node": ">=8" 713 | }, 714 | "funding": { 715 | "url": "https://github.com/sponsors/sindresorhus" 716 | } 717 | }, 718 | "node_modules/caniuse-lite": { 719 | "version": "1.0.30001506", 720 | "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001506.tgz", 721 | "integrity": "sha512-6XNEcpygZMCKaufIcgpQNZNf00GEqc7VQON+9Rd0K1bMYo8xhMZRAo5zpbnbMNizi4YNgIDAFrdykWsvY3H4Hw==", 722 | "funding": [ 723 | { 724 | "type": "opencollective", 725 | "url": "https://opencollective.com/browserslist" 726 | }, 727 | { 728 | "type": "tidelift", 729 | "url": "https://tidelift.com/funding/github/npm/caniuse-lite" 730 | }, 731 | { 732 | "type": "github", 733 | "url": "https://github.com/sponsors/ai" 734 | } 735 | ] 736 | }, 737 | "node_modules/chokidar": { 738 | "version": "3.5.3", 739 | "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", 740 | "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", 741 | "funding": [ 742 | { 743 | "type": "individual", 744 | "url": "https://paulmillr.com/funding/" 745 | } 746 | ], 747 | "dependencies": { 748 | "anymatch": "~3.1.2", 749 | "braces": "~3.0.2", 750 | "glob-parent": "~5.1.2", 751 | "is-binary-path": "~2.1.0", 752 | "is-glob": "~4.0.1", 753 | "normalize-path": "~3.0.0", 754 | "readdirp": "~3.6.0" 755 | }, 756 | "engines": { 757 | "node": ">= 8.10.0" 758 | }, 759 | "optionalDependencies": { 760 | "fsevents": "~2.3.2" 761 | } 762 | }, 763 | "node_modules/chokidar/node_modules/glob-parent": { 764 | "version": "5.1.2", 765 | "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", 766 | "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", 767 | "dependencies": { 768 | "is-glob": "^4.0.1" 769 | }, 770 | "engines": { 771 | "node": ">= 6" 772 | } 773 | }, 774 | "node_modules/client-only": { 775 | "version": "0.0.1", 776 | "resolved": "https://registry.npmjs.org/client-only/-/client-only-0.0.1.tgz", 777 | "integrity": "sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==" 778 | }, 779 | "node_modules/combined-stream": { 780 | "version": "1.0.8", 781 | "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", 782 | "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", 783 | "dependencies": { 784 | "delayed-stream": "~1.0.0" 785 | }, 786 | "engines": { 787 | "node": ">= 0.8" 788 | } 789 | }, 790 | "node_modules/commander": { 791 | "version": "4.1.1", 792 | "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", 793 | "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", 794 | "engines": { 795 | "node": ">= 6" 796 | } 797 | }, 798 | "node_modules/concat-map": { 799 | "version": "0.0.1", 800 | "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", 801 | "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" 802 | }, 803 | "node_modules/cookie": { 804 | "version": "0.5.0", 805 | "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", 806 | "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", 807 | "engines": { 808 | "node": ">= 0.6" 809 | } 810 | }, 811 | "node_modules/cssesc": { 812 | "version": "3.0.0", 813 | "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", 814 | "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", 815 | "bin": { 816 | "cssesc": "bin/cssesc" 817 | }, 818 | "engines": { 819 | "node": ">=4" 820 | } 821 | }, 822 | "node_modules/csstype": { 823 | "version": "3.1.1", 824 | "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.1.tgz", 825 | "integrity": "sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw==" 826 | }, 827 | "node_modules/deepmerge": { 828 | "version": "4.2.2", 829 | "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz", 830 | "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==", 831 | "engines": { 832 | "node": ">=0.10.0" 833 | } 834 | }, 835 | "node_modules/delayed-stream": { 836 | "version": "1.0.0", 837 | "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", 838 | "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", 839 | "engines": { 840 | "node": ">=0.4.0" 841 | } 842 | }, 843 | "node_modules/didyoumean": { 844 | "version": "1.2.2", 845 | "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz", 846 | "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==" 847 | }, 848 | "node_modules/dlv": { 849 | "version": "1.1.3", 850 | "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz", 851 | "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==" 852 | }, 853 | "node_modules/dot-case": { 854 | "version": "3.0.4", 855 | "resolved": "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz", 856 | "integrity": "sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==", 857 | "dependencies": { 858 | "no-case": "^3.0.4", 859 | "tslib": "^2.0.3" 860 | } 861 | }, 862 | "node_modules/electron-to-chromium": { 863 | "version": "1.4.437", 864 | "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.437.tgz", 865 | "integrity": "sha512-ZFekRuBOHUXp21wrR5lshT6pZa/KmjkhKBAtmZz4NN5sCWlHOk3kdhiwFINrDBsRLX6FjyBAb1TRN+KBeNlyzQ==" 866 | }, 867 | "node_modules/escalade": { 868 | "version": "3.1.1", 869 | "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", 870 | "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", 871 | "engines": { 872 | "node": ">=6" 873 | } 874 | }, 875 | "node_modules/fast-glob": { 876 | "version": "3.2.12", 877 | "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz", 878 | "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==", 879 | "dependencies": { 880 | "@nodelib/fs.stat": "^2.0.2", 881 | "@nodelib/fs.walk": "^1.2.3", 882 | "glob-parent": "^5.1.2", 883 | "merge2": "^1.3.0", 884 | "micromatch": "^4.0.4" 885 | }, 886 | "engines": { 887 | "node": ">=8.6.0" 888 | } 889 | }, 890 | "node_modules/fast-glob/node_modules/glob-parent": { 891 | "version": "5.1.2", 892 | "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", 893 | "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", 894 | "dependencies": { 895 | "is-glob": "^4.0.1" 896 | }, 897 | "engines": { 898 | "node": ">= 6" 899 | } 900 | }, 901 | "node_modules/fastq": { 902 | "version": "1.15.0", 903 | "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", 904 | "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", 905 | "dependencies": { 906 | "reusify": "^1.0.4" 907 | } 908 | }, 909 | "node_modules/fill-range": { 910 | "version": "7.0.1", 911 | "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", 912 | "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", 913 | "dependencies": { 914 | "to-regex-range": "^5.0.1" 915 | }, 916 | "engines": { 917 | "node": ">=8" 918 | } 919 | }, 920 | "node_modules/form-data": { 921 | "version": "3.0.1", 922 | "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", 923 | "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", 924 | "dependencies": { 925 | "asynckit": "^0.4.0", 926 | "combined-stream": "^1.0.8", 927 | "mime-types": "^2.1.12" 928 | }, 929 | "engines": { 930 | "node": ">= 6" 931 | } 932 | }, 933 | "node_modules/fraction.js": { 934 | "version": "4.2.0", 935 | "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz", 936 | "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==", 937 | "engines": { 938 | "node": "*" 939 | }, 940 | "funding": { 941 | "type": "patreon", 942 | "url": "https://www.patreon.com/infusion" 943 | } 944 | }, 945 | "node_modules/fs.realpath": { 946 | "version": "1.0.0", 947 | "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", 948 | "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" 949 | }, 950 | "node_modules/fsevents": { 951 | "version": "2.3.2", 952 | "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", 953 | "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", 954 | "hasInstallScript": true, 955 | "optional": true, 956 | "os": [ 957 | "darwin" 958 | ], 959 | "engines": { 960 | "node": "^8.16.0 || ^10.6.0 || >=11.0.0" 961 | } 962 | }, 963 | "node_modules/function-bind": { 964 | "version": "1.1.1", 965 | "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", 966 | "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" 967 | }, 968 | "node_modules/glob": { 969 | "version": "7.1.6", 970 | "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", 971 | "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", 972 | "dependencies": { 973 | "fs.realpath": "^1.0.0", 974 | "inflight": "^1.0.4", 975 | "inherits": "2", 976 | "minimatch": "^3.0.4", 977 | "once": "^1.3.0", 978 | "path-is-absolute": "^1.0.0" 979 | }, 980 | "engines": { 981 | "node": "*" 982 | }, 983 | "funding": { 984 | "url": "https://github.com/sponsors/isaacs" 985 | } 986 | }, 987 | "node_modules/glob-parent": { 988 | "version": "6.0.2", 989 | "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", 990 | "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", 991 | "dependencies": { 992 | "is-glob": "^4.0.3" 993 | }, 994 | "engines": { 995 | "node": ">=10.13.0" 996 | } 997 | }, 998 | "node_modules/glob-to-regexp": { 999 | "version": "0.4.1", 1000 | "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", 1001 | "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==" 1002 | }, 1003 | "node_modules/graceful-fs": { 1004 | "version": "4.2.11", 1005 | "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", 1006 | "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" 1007 | }, 1008 | "node_modules/has": { 1009 | "version": "1.0.3", 1010 | "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", 1011 | "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", 1012 | "dependencies": { 1013 | "function-bind": "^1.1.1" 1014 | }, 1015 | "engines": { 1016 | "node": ">= 0.4.0" 1017 | } 1018 | }, 1019 | "node_modules/inflight": { 1020 | "version": "1.0.6", 1021 | "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", 1022 | "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", 1023 | "dependencies": { 1024 | "once": "^1.3.0", 1025 | "wrappy": "1" 1026 | } 1027 | }, 1028 | "node_modules/inherits": { 1029 | "version": "2.0.4", 1030 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", 1031 | "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" 1032 | }, 1033 | "node_modules/is-binary-path": { 1034 | "version": "2.1.0", 1035 | "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", 1036 | "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", 1037 | "dependencies": { 1038 | "binary-extensions": "^2.0.0" 1039 | }, 1040 | "engines": { 1041 | "node": ">=8" 1042 | } 1043 | }, 1044 | "node_modules/is-core-module": { 1045 | "version": "2.12.1", 1046 | "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.12.1.tgz", 1047 | "integrity": "sha512-Q4ZuBAe2FUsKtyQJoQHlvP8OvBERxO3jEmy1I7hcRXcJBGGHFh/aJBswbXuS9sgrDH2QUO8ilkwNPHvHMd8clg==", 1048 | "dependencies": { 1049 | "has": "^1.0.3" 1050 | }, 1051 | "funding": { 1052 | "url": "https://github.com/sponsors/ljharb" 1053 | } 1054 | }, 1055 | "node_modules/is-extglob": { 1056 | "version": "2.1.1", 1057 | "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", 1058 | "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", 1059 | "engines": { 1060 | "node": ">=0.10.0" 1061 | } 1062 | }, 1063 | "node_modules/is-glob": { 1064 | "version": "4.0.3", 1065 | "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", 1066 | "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", 1067 | "dependencies": { 1068 | "is-extglob": "^2.1.1" 1069 | }, 1070 | "engines": { 1071 | "node": ">=0.10.0" 1072 | } 1073 | }, 1074 | "node_modules/is-number": { 1075 | "version": "7.0.0", 1076 | "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", 1077 | "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", 1078 | "engines": { 1079 | "node": ">=0.12.0" 1080 | } 1081 | }, 1082 | "node_modules/jiti": { 1083 | "version": "1.18.2", 1084 | "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.18.2.tgz", 1085 | "integrity": "sha512-QAdOptna2NYiSSpv0O/BwoHBSmz4YhpzJHyi+fnMRTXFjp7B8i/YG5Z8IfusxB1ufjcD2Sre1F3R+nX3fvy7gg==", 1086 | "bin": { 1087 | "jiti": "bin/jiti.js" 1088 | } 1089 | }, 1090 | "node_modules/js-cookie": { 1091 | "version": "3.0.1", 1092 | "resolved": "https://registry.npmjs.org/js-cookie/-/js-cookie-3.0.1.tgz", 1093 | "integrity": "sha512-+0rgsUXZu4ncpPxRL+lNEptWMOWl9etvPHc/koSRp6MPwpRYAhmk0dUG00J4bxVV3r9uUzfo24wW0knS07SKSw==", 1094 | "engines": { 1095 | "node": ">=12" 1096 | } 1097 | }, 1098 | "node_modules/js-tokens": { 1099 | "version": "4.0.0", 1100 | "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", 1101 | "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" 1102 | }, 1103 | "node_modules/lilconfig": { 1104 | "version": "2.1.0", 1105 | "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.1.0.tgz", 1106 | "integrity": "sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==", 1107 | "engines": { 1108 | "node": ">=10" 1109 | } 1110 | }, 1111 | "node_modules/lines-and-columns": { 1112 | "version": "1.2.4", 1113 | "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", 1114 | "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==" 1115 | }, 1116 | "node_modules/loose-envify": { 1117 | "version": "1.4.0", 1118 | "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", 1119 | "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", 1120 | "dependencies": { 1121 | "js-tokens": "^3.0.0 || ^4.0.0" 1122 | }, 1123 | "bin": { 1124 | "loose-envify": "cli.js" 1125 | } 1126 | }, 1127 | "node_modules/lower-case": { 1128 | "version": "2.0.2", 1129 | "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz", 1130 | "integrity": "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==", 1131 | "dependencies": { 1132 | "tslib": "^2.0.3" 1133 | } 1134 | }, 1135 | "node_modules/map-obj": { 1136 | "version": "4.3.0", 1137 | "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.3.0.tgz", 1138 | "integrity": "sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==", 1139 | "engines": { 1140 | "node": ">=8" 1141 | }, 1142 | "funding": { 1143 | "url": "https://github.com/sponsors/sindresorhus" 1144 | } 1145 | }, 1146 | "node_modules/merge2": { 1147 | "version": "1.4.1", 1148 | "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", 1149 | "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", 1150 | "engines": { 1151 | "node": ">= 8" 1152 | } 1153 | }, 1154 | "node_modules/micromatch": { 1155 | "version": "4.0.5", 1156 | "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", 1157 | "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", 1158 | "dependencies": { 1159 | "braces": "^3.0.2", 1160 | "picomatch": "^2.3.1" 1161 | }, 1162 | "engines": { 1163 | "node": ">=8.6" 1164 | } 1165 | }, 1166 | "node_modules/mime-db": { 1167 | "version": "1.52.0", 1168 | "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", 1169 | "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", 1170 | "engines": { 1171 | "node": ">= 0.6" 1172 | } 1173 | }, 1174 | "node_modules/mime-types": { 1175 | "version": "2.1.35", 1176 | "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", 1177 | "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", 1178 | "dependencies": { 1179 | "mime-db": "1.52.0" 1180 | }, 1181 | "engines": { 1182 | "node": ">= 0.6" 1183 | } 1184 | }, 1185 | "node_modules/minimatch": { 1186 | "version": "3.1.2", 1187 | "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", 1188 | "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", 1189 | "dependencies": { 1190 | "brace-expansion": "^1.1.7" 1191 | }, 1192 | "engines": { 1193 | "node": "*" 1194 | } 1195 | }, 1196 | "node_modules/mz": { 1197 | "version": "2.7.0", 1198 | "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", 1199 | "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==", 1200 | "dependencies": { 1201 | "any-promise": "^1.0.0", 1202 | "object-assign": "^4.0.1", 1203 | "thenify-all": "^1.0.0" 1204 | } 1205 | }, 1206 | "node_modules/nanoid": { 1207 | "version": "3.3.6", 1208 | "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz", 1209 | "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==", 1210 | "funding": [ 1211 | { 1212 | "type": "github", 1213 | "url": "https://github.com/sponsors/ai" 1214 | } 1215 | ], 1216 | "bin": { 1217 | "nanoid": "bin/nanoid.cjs" 1218 | }, 1219 | "engines": { 1220 | "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" 1221 | } 1222 | }, 1223 | "node_modules/next": { 1224 | "version": "13.4.7", 1225 | "resolved": "https://registry.npmjs.org/next/-/next-13.4.7.tgz", 1226 | "integrity": "sha512-M8z3k9VmG51SRT6v5uDKdJXcAqLzP3C+vaKfLIAM0Mhx1um1G7MDnO63+m52qPdZfrTFzMZNzfsgvm3ghuVHIQ==", 1227 | "dependencies": { 1228 | "@next/env": "13.4.7", 1229 | "@swc/helpers": "0.5.1", 1230 | "busboy": "1.6.0", 1231 | "caniuse-lite": "^1.0.30001406", 1232 | "postcss": "8.4.14", 1233 | "styled-jsx": "5.1.1", 1234 | "watchpack": "2.4.0", 1235 | "zod": "3.21.4" 1236 | }, 1237 | "bin": { 1238 | "next": "dist/bin/next" 1239 | }, 1240 | "engines": { 1241 | "node": ">=16.8.0" 1242 | }, 1243 | "optionalDependencies": { 1244 | "@next/swc-darwin-arm64": "13.4.7", 1245 | "@next/swc-darwin-x64": "13.4.7", 1246 | "@next/swc-linux-arm64-gnu": "13.4.7", 1247 | "@next/swc-linux-arm64-musl": "13.4.7", 1248 | "@next/swc-linux-x64-gnu": "13.4.7", 1249 | "@next/swc-linux-x64-musl": "13.4.7", 1250 | "@next/swc-win32-arm64-msvc": "13.4.7", 1251 | "@next/swc-win32-ia32-msvc": "13.4.7", 1252 | "@next/swc-win32-x64-msvc": "13.4.7" 1253 | }, 1254 | "peerDependencies": { 1255 | "@opentelemetry/api": "^1.1.0", 1256 | "fibers": ">= 3.1.0", 1257 | "react": "^18.2.0", 1258 | "react-dom": "^18.2.0", 1259 | "sass": "^1.3.0" 1260 | }, 1261 | "peerDependenciesMeta": { 1262 | "@opentelemetry/api": { 1263 | "optional": true 1264 | }, 1265 | "fibers": { 1266 | "optional": true 1267 | }, 1268 | "sass": { 1269 | "optional": true 1270 | } 1271 | } 1272 | }, 1273 | "node_modules/next/node_modules/postcss": { 1274 | "version": "8.4.14", 1275 | "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.14.tgz", 1276 | "integrity": "sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==", 1277 | "funding": [ 1278 | { 1279 | "type": "opencollective", 1280 | "url": "https://opencollective.com/postcss/" 1281 | }, 1282 | { 1283 | "type": "tidelift", 1284 | "url": "https://tidelift.com/funding/github/npm/postcss" 1285 | } 1286 | ], 1287 | "dependencies": { 1288 | "nanoid": "^3.3.4", 1289 | "picocolors": "^1.0.0", 1290 | "source-map-js": "^1.0.2" 1291 | }, 1292 | "engines": { 1293 | "node": "^10 || ^12 || >=14" 1294 | } 1295 | }, 1296 | "node_modules/no-case": { 1297 | "version": "3.0.4", 1298 | "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz", 1299 | "integrity": "sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==", 1300 | "dependencies": { 1301 | "lower-case": "^2.0.2", 1302 | "tslib": "^2.0.3" 1303 | } 1304 | }, 1305 | "node_modules/node-fetch-native": { 1306 | "version": "1.0.1", 1307 | "resolved": "https://registry.npmjs.org/node-fetch-native/-/node-fetch-native-1.0.1.tgz", 1308 | "integrity": "sha512-VzW+TAk2wE4X9maiKMlT+GsPU4OMmR1U9CrHSmd3DFLn2IcZ9VJ6M6BBugGfYUnPCLSYxXdZy17M0BEJyhUTwg==" 1309 | }, 1310 | "node_modules/node-releases": { 1311 | "version": "2.0.12", 1312 | "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.12.tgz", 1313 | "integrity": "sha512-QzsYKWhXTWx8h1kIvqfnC++o0pEmpRQA/aenALsL2F4pqNVr7YzcdMlDij5WBnwftRbJCNJL/O7zdKaxKPHqgQ==" 1314 | }, 1315 | "node_modules/normalize-path": { 1316 | "version": "3.0.0", 1317 | "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", 1318 | "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", 1319 | "engines": { 1320 | "node": ">=0.10.0" 1321 | } 1322 | }, 1323 | "node_modules/normalize-range": { 1324 | "version": "0.1.2", 1325 | "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", 1326 | "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", 1327 | "engines": { 1328 | "node": ">=0.10.0" 1329 | } 1330 | }, 1331 | "node_modules/object-assign": { 1332 | "version": "4.1.1", 1333 | "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", 1334 | "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", 1335 | "engines": { 1336 | "node": ">=0.10.0" 1337 | } 1338 | }, 1339 | "node_modules/object-hash": { 1340 | "version": "3.0.0", 1341 | "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz", 1342 | "integrity": "sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==", 1343 | "engines": { 1344 | "node": ">= 6" 1345 | } 1346 | }, 1347 | "node_modules/once": { 1348 | "version": "1.4.0", 1349 | "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", 1350 | "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", 1351 | "dependencies": { 1352 | "wrappy": "1" 1353 | } 1354 | }, 1355 | "node_modules/path-is-absolute": { 1356 | "version": "1.0.1", 1357 | "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", 1358 | "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", 1359 | "engines": { 1360 | "node": ">=0.10.0" 1361 | } 1362 | }, 1363 | "node_modules/path-parse": { 1364 | "version": "1.0.7", 1365 | "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", 1366 | "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" 1367 | }, 1368 | "node_modules/path-to-regexp": { 1369 | "version": "6.2.1", 1370 | "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.2.1.tgz", 1371 | "integrity": "sha512-JLyh7xT1kizaEvcaXOQwOc2/Yhw6KZOvPf1S8401UyLk86CU79LN3vl7ztXGm/pZ+YjoyAJ4rxmHwbkBXJX+yw==" 1372 | }, 1373 | "node_modules/picocolors": { 1374 | "version": "1.0.0", 1375 | "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", 1376 | "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" 1377 | }, 1378 | "node_modules/picomatch": { 1379 | "version": "2.3.1", 1380 | "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", 1381 | "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", 1382 | "engines": { 1383 | "node": ">=8.6" 1384 | }, 1385 | "funding": { 1386 | "url": "https://github.com/sponsors/jonschlinkert" 1387 | } 1388 | }, 1389 | "node_modules/pify": { 1390 | "version": "2.3.0", 1391 | "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", 1392 | "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", 1393 | "engines": { 1394 | "node": ">=0.10.0" 1395 | } 1396 | }, 1397 | "node_modules/pirates": { 1398 | "version": "4.0.6", 1399 | "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", 1400 | "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", 1401 | "engines": { 1402 | "node": ">= 6" 1403 | } 1404 | }, 1405 | "node_modules/postcss": { 1406 | "version": "8.4.24", 1407 | "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.24.tgz", 1408 | "integrity": "sha512-M0RzbcI0sO/XJNucsGjvWU9ERWxb/ytp1w6dKtxTKgixdtQDq4rmx/g8W1hnaheq9jgwL/oyEdH5Bc4WwJKMqg==", 1409 | "funding": [ 1410 | { 1411 | "type": "opencollective", 1412 | "url": "https://opencollective.com/postcss/" 1413 | }, 1414 | { 1415 | "type": "tidelift", 1416 | "url": "https://tidelift.com/funding/github/npm/postcss" 1417 | }, 1418 | { 1419 | "type": "github", 1420 | "url": "https://github.com/sponsors/ai" 1421 | } 1422 | ], 1423 | "dependencies": { 1424 | "nanoid": "^3.3.6", 1425 | "picocolors": "^1.0.0", 1426 | "source-map-js": "^1.0.2" 1427 | }, 1428 | "engines": { 1429 | "node": "^10 || ^12 || >=14" 1430 | } 1431 | }, 1432 | "node_modules/postcss-import": { 1433 | "version": "15.1.0", 1434 | "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-15.1.0.tgz", 1435 | "integrity": "sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==", 1436 | "dependencies": { 1437 | "postcss-value-parser": "^4.0.0", 1438 | "read-cache": "^1.0.0", 1439 | "resolve": "^1.1.7" 1440 | }, 1441 | "engines": { 1442 | "node": ">=14.0.0" 1443 | }, 1444 | "peerDependencies": { 1445 | "postcss": "^8.0.0" 1446 | } 1447 | }, 1448 | "node_modules/postcss-js": { 1449 | "version": "4.0.1", 1450 | "resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.0.1.tgz", 1451 | "integrity": "sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==", 1452 | "dependencies": { 1453 | "camelcase-css": "^2.0.1" 1454 | }, 1455 | "engines": { 1456 | "node": "^12 || ^14 || >= 16" 1457 | }, 1458 | "funding": { 1459 | "type": "opencollective", 1460 | "url": "https://opencollective.com/postcss/" 1461 | }, 1462 | "peerDependencies": { 1463 | "postcss": "^8.4.21" 1464 | } 1465 | }, 1466 | "node_modules/postcss-load-config": { 1467 | "version": "4.0.1", 1468 | "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-4.0.1.tgz", 1469 | "integrity": "sha512-vEJIc8RdiBRu3oRAI0ymerOn+7rPuMvRXslTvZUKZonDHFIczxztIyJ1urxM1x9JXEikvpWWTUUqal5j/8QgvA==", 1470 | "dependencies": { 1471 | "lilconfig": "^2.0.5", 1472 | "yaml": "^2.1.1" 1473 | }, 1474 | "engines": { 1475 | "node": ">= 14" 1476 | }, 1477 | "funding": { 1478 | "type": "opencollective", 1479 | "url": "https://opencollective.com/postcss/" 1480 | }, 1481 | "peerDependencies": { 1482 | "postcss": ">=8.0.9", 1483 | "ts-node": ">=9.0.0" 1484 | }, 1485 | "peerDependenciesMeta": { 1486 | "postcss": { 1487 | "optional": true 1488 | }, 1489 | "ts-node": { 1490 | "optional": true 1491 | } 1492 | } 1493 | }, 1494 | "node_modules/postcss-nested": { 1495 | "version": "6.0.1", 1496 | "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-6.0.1.tgz", 1497 | "integrity": "sha512-mEp4xPMi5bSWiMbsgoPfcP74lsWLHkQbZc3sY+jWYd65CUwXrUaTp0fmNpa01ZcETKlIgUdFN/MpS2xZtqL9dQ==", 1498 | "dependencies": { 1499 | "postcss-selector-parser": "^6.0.11" 1500 | }, 1501 | "engines": { 1502 | "node": ">=12.0" 1503 | }, 1504 | "funding": { 1505 | "type": "opencollective", 1506 | "url": "https://opencollective.com/postcss/" 1507 | }, 1508 | "peerDependencies": { 1509 | "postcss": "^8.2.14" 1510 | } 1511 | }, 1512 | "node_modules/postcss-selector-parser": { 1513 | "version": "6.0.13", 1514 | "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.13.tgz", 1515 | "integrity": "sha512-EaV1Gl4mUEV4ddhDnv/xtj7sxwrwxdetHdWUGnT4VJQf+4d05v6lHYZr8N573k5Z0BViss7BDhfWtKS3+sfAqQ==", 1516 | "dependencies": { 1517 | "cssesc": "^3.0.0", 1518 | "util-deprecate": "^1.0.2" 1519 | }, 1520 | "engines": { 1521 | "node": ">=4" 1522 | } 1523 | }, 1524 | "node_modules/postcss-value-parser": { 1525 | "version": "4.2.0", 1526 | "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", 1527 | "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==" 1528 | }, 1529 | "node_modules/pvtsutils": { 1530 | "version": "1.3.2", 1531 | "resolved": "https://registry.npmjs.org/pvtsutils/-/pvtsutils-1.3.2.tgz", 1532 | "integrity": "sha512-+Ipe2iNUyrZz+8K/2IOo+kKikdtfhRKzNpQbruF2URmqPtoqAs8g3xS7TJvFF2GcPXjh7DkqMnpVveRFq4PgEQ==", 1533 | "dependencies": { 1534 | "tslib": "^2.4.0" 1535 | } 1536 | }, 1537 | "node_modules/pvutils": { 1538 | "version": "1.1.3", 1539 | "resolved": "https://registry.npmjs.org/pvutils/-/pvutils-1.1.3.tgz", 1540 | "integrity": "sha512-pMpnA0qRdFp32b1sJl1wOJNxZLQ2cbQx+k6tjNtZ8CpvVhNqEPRgivZ2WOUev2YMajecdH7ctUPDvEe87nariQ==", 1541 | "engines": { 1542 | "node": ">=6.0.0" 1543 | } 1544 | }, 1545 | "node_modules/queue-microtask": { 1546 | "version": "1.2.3", 1547 | "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", 1548 | "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", 1549 | "funding": [ 1550 | { 1551 | "type": "github", 1552 | "url": "https://github.com/sponsors/feross" 1553 | }, 1554 | { 1555 | "type": "patreon", 1556 | "url": "https://www.patreon.com/feross" 1557 | }, 1558 | { 1559 | "type": "consulting", 1560 | "url": "https://feross.org/support" 1561 | } 1562 | ] 1563 | }, 1564 | "node_modules/quick-lru": { 1565 | "version": "4.0.1", 1566 | "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz", 1567 | "integrity": "sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==", 1568 | "engines": { 1569 | "node": ">=8" 1570 | } 1571 | }, 1572 | "node_modules/react": { 1573 | "version": "18.2.0", 1574 | "resolved": "https://registry.npmjs.org/react/-/react-18.2.0.tgz", 1575 | "integrity": "sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==", 1576 | "dependencies": { 1577 | "loose-envify": "^1.1.0" 1578 | }, 1579 | "engines": { 1580 | "node": ">=0.10.0" 1581 | } 1582 | }, 1583 | "node_modules/react-dom": { 1584 | "version": "18.2.0", 1585 | "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz", 1586 | "integrity": "sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==", 1587 | "dependencies": { 1588 | "loose-envify": "^1.1.0", 1589 | "scheduler": "^0.23.0" 1590 | }, 1591 | "peerDependencies": { 1592 | "react": "^18.2.0" 1593 | } 1594 | }, 1595 | "node_modules/read-cache": { 1596 | "version": "1.0.0", 1597 | "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", 1598 | "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==", 1599 | "dependencies": { 1600 | "pify": "^2.3.0" 1601 | } 1602 | }, 1603 | "node_modules/readdirp": { 1604 | "version": "3.6.0", 1605 | "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", 1606 | "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", 1607 | "dependencies": { 1608 | "picomatch": "^2.2.1" 1609 | }, 1610 | "engines": { 1611 | "node": ">=8.10.0" 1612 | } 1613 | }, 1614 | "node_modules/resolve": { 1615 | "version": "1.22.2", 1616 | "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.2.tgz", 1617 | "integrity": "sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==", 1618 | "dependencies": { 1619 | "is-core-module": "^2.11.0", 1620 | "path-parse": "^1.0.7", 1621 | "supports-preserve-symlinks-flag": "^1.0.0" 1622 | }, 1623 | "bin": { 1624 | "resolve": "bin/resolve" 1625 | }, 1626 | "funding": { 1627 | "url": "https://github.com/sponsors/ljharb" 1628 | } 1629 | }, 1630 | "node_modules/reusify": { 1631 | "version": "1.0.4", 1632 | "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", 1633 | "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", 1634 | "engines": { 1635 | "iojs": ">=1.0.0", 1636 | "node": ">=0.10.0" 1637 | } 1638 | }, 1639 | "node_modules/run-parallel": { 1640 | "version": "1.2.0", 1641 | "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", 1642 | "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", 1643 | "funding": [ 1644 | { 1645 | "type": "github", 1646 | "url": "https://github.com/sponsors/feross" 1647 | }, 1648 | { 1649 | "type": "patreon", 1650 | "url": "https://www.patreon.com/feross" 1651 | }, 1652 | { 1653 | "type": "consulting", 1654 | "url": "https://feross.org/support" 1655 | } 1656 | ], 1657 | "dependencies": { 1658 | "queue-microtask": "^1.2.2" 1659 | } 1660 | }, 1661 | "node_modules/scheduler": { 1662 | "version": "0.23.0", 1663 | "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.0.tgz", 1664 | "integrity": "sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==", 1665 | "dependencies": { 1666 | "loose-envify": "^1.1.0" 1667 | } 1668 | }, 1669 | "node_modules/snake-case": { 1670 | "version": "3.0.4", 1671 | "resolved": "https://registry.npmjs.org/snake-case/-/snake-case-3.0.4.tgz", 1672 | "integrity": "sha512-LAOh4z89bGQvl9pFfNF8V146i7o7/CqFPbqzYgP+yYzDIDeS9HaNFtXABamRW+AQzEVODcvE79ljJ+8a9YSdMg==", 1673 | "dependencies": { 1674 | "dot-case": "^3.0.4", 1675 | "tslib": "^2.0.3" 1676 | } 1677 | }, 1678 | "node_modules/snakecase-keys": { 1679 | "version": "5.4.4", 1680 | "resolved": "https://registry.npmjs.org/snakecase-keys/-/snakecase-keys-5.4.4.tgz", 1681 | "integrity": "sha512-YTywJG93yxwHLgrYLZjlC75moVEX04LZM4FHfihjHe1FCXm+QaLOFfSf535aXOAd0ArVQMWUAe8ZPm4VtWyXaA==", 1682 | "dependencies": { 1683 | "map-obj": "^4.1.0", 1684 | "snake-case": "^3.0.4", 1685 | "type-fest": "^2.5.2" 1686 | }, 1687 | "engines": { 1688 | "node": ">=12" 1689 | } 1690 | }, 1691 | "node_modules/source-map-js": { 1692 | "version": "1.0.2", 1693 | "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", 1694 | "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", 1695 | "engines": { 1696 | "node": ">=0.10.0" 1697 | } 1698 | }, 1699 | "node_modules/streamsearch": { 1700 | "version": "1.1.0", 1701 | "resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-1.1.0.tgz", 1702 | "integrity": "sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==", 1703 | "engines": { 1704 | "node": ">=10.0.0" 1705 | } 1706 | }, 1707 | "node_modules/styled-jsx": { 1708 | "version": "5.1.1", 1709 | "resolved": "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.1.1.tgz", 1710 | "integrity": "sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==", 1711 | "dependencies": { 1712 | "client-only": "0.0.1" 1713 | }, 1714 | "engines": { 1715 | "node": ">= 12.0.0" 1716 | }, 1717 | "peerDependencies": { 1718 | "react": ">= 16.8.0 || 17.x.x || ^18.0.0-0" 1719 | }, 1720 | "peerDependenciesMeta": { 1721 | "@babel/core": { 1722 | "optional": true 1723 | }, 1724 | "babel-plugin-macros": { 1725 | "optional": true 1726 | } 1727 | } 1728 | }, 1729 | "node_modules/sucrase": { 1730 | "version": "3.32.0", 1731 | "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.32.0.tgz", 1732 | "integrity": "sha512-ydQOU34rpSyj2TGyz4D2p8rbktIOZ8QY9s+DGLvFU1i5pWJE8vkpruCjGCMHsdXwnD7JDcS+noSwM/a7zyNFDQ==", 1733 | "dependencies": { 1734 | "@jridgewell/gen-mapping": "^0.3.2", 1735 | "commander": "^4.0.0", 1736 | "glob": "7.1.6", 1737 | "lines-and-columns": "^1.1.6", 1738 | "mz": "^2.7.0", 1739 | "pirates": "^4.0.1", 1740 | "ts-interface-checker": "^0.1.9" 1741 | }, 1742 | "bin": { 1743 | "sucrase": "bin/sucrase", 1744 | "sucrase-node": "bin/sucrase-node" 1745 | }, 1746 | "engines": { 1747 | "node": ">=8" 1748 | } 1749 | }, 1750 | "node_modules/supports-preserve-symlinks-flag": { 1751 | "version": "1.0.0", 1752 | "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", 1753 | "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", 1754 | "engines": { 1755 | "node": ">= 0.4" 1756 | }, 1757 | "funding": { 1758 | "url": "https://github.com/sponsors/ljharb" 1759 | } 1760 | }, 1761 | "node_modules/swr": { 1762 | "version": "1.3.0", 1763 | "resolved": "https://registry.npmjs.org/swr/-/swr-1.3.0.tgz", 1764 | "integrity": "sha512-dkghQrOl2ORX9HYrMDtPa7LTVHJjCTeZoB1dqTbnnEDlSvN8JEKpYIYurDfvbQFUUS8Cg8PceFVZNkW0KNNYPw==", 1765 | "peerDependencies": { 1766 | "react": "^16.11.0 || ^17.0.0 || ^18.0.0" 1767 | } 1768 | }, 1769 | "node_modules/tailwindcss": { 1770 | "version": "3.3.2", 1771 | "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.3.2.tgz", 1772 | "integrity": "sha512-9jPkMiIBXvPc2KywkraqsUfbfj+dHDb+JPWtSJa9MLFdrPyazI7q6WX2sUrm7R9eVR7qqv3Pas7EvQFzxKnI6w==", 1773 | "dependencies": { 1774 | "@alloc/quick-lru": "^5.2.0", 1775 | "arg": "^5.0.2", 1776 | "chokidar": "^3.5.3", 1777 | "didyoumean": "^1.2.2", 1778 | "dlv": "^1.1.3", 1779 | "fast-glob": "^3.2.12", 1780 | "glob-parent": "^6.0.2", 1781 | "is-glob": "^4.0.3", 1782 | "jiti": "^1.18.2", 1783 | "lilconfig": "^2.1.0", 1784 | "micromatch": "^4.0.5", 1785 | "normalize-path": "^3.0.0", 1786 | "object-hash": "^3.0.0", 1787 | "picocolors": "^1.0.0", 1788 | "postcss": "^8.4.23", 1789 | "postcss-import": "^15.1.0", 1790 | "postcss-js": "^4.0.1", 1791 | "postcss-load-config": "^4.0.1", 1792 | "postcss-nested": "^6.0.1", 1793 | "postcss-selector-parser": "^6.0.11", 1794 | "postcss-value-parser": "^4.2.0", 1795 | "resolve": "^1.22.2", 1796 | "sucrase": "^3.32.0" 1797 | }, 1798 | "bin": { 1799 | "tailwind": "lib/cli.js", 1800 | "tailwindcss": "lib/cli.js" 1801 | }, 1802 | "engines": { 1803 | "node": ">=14.0.0" 1804 | } 1805 | }, 1806 | "node_modules/thenify": { 1807 | "version": "3.3.1", 1808 | "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz", 1809 | "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==", 1810 | "dependencies": { 1811 | "any-promise": "^1.0.0" 1812 | } 1813 | }, 1814 | "node_modules/thenify-all": { 1815 | "version": "1.6.0", 1816 | "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz", 1817 | "integrity": "sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==", 1818 | "dependencies": { 1819 | "thenify": ">= 3.1.0 < 4" 1820 | }, 1821 | "engines": { 1822 | "node": ">=0.8" 1823 | } 1824 | }, 1825 | "node_modules/to-no-case": { 1826 | "version": "1.0.2", 1827 | "resolved": "https://registry.npmjs.org/to-no-case/-/to-no-case-1.0.2.tgz", 1828 | "integrity": "sha512-Z3g735FxuZY8rodxV4gH7LxClE4H0hTIyHNIHdk+vpQxjLm0cwnKXq/OFVZ76SOQmto7txVcwSCwkU5kqp+FKg==" 1829 | }, 1830 | "node_modules/to-regex-range": { 1831 | "version": "5.0.1", 1832 | "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", 1833 | "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", 1834 | "dependencies": { 1835 | "is-number": "^7.0.0" 1836 | }, 1837 | "engines": { 1838 | "node": ">=8.0" 1839 | } 1840 | }, 1841 | "node_modules/to-snake-case": { 1842 | "version": "1.0.0", 1843 | "resolved": "https://registry.npmjs.org/to-snake-case/-/to-snake-case-1.0.0.tgz", 1844 | "integrity": "sha512-joRpzBAk1Bhi2eGEYBjukEWHOe/IvclOkiJl3DtA91jV6NwQ3MwXA4FHYeqk8BNp/D8bmi9tcNbRu/SozP0jbQ==", 1845 | "dependencies": { 1846 | "to-space-case": "^1.0.0" 1847 | } 1848 | }, 1849 | "node_modules/to-space-case": { 1850 | "version": "1.0.0", 1851 | "resolved": "https://registry.npmjs.org/to-space-case/-/to-space-case-1.0.0.tgz", 1852 | "integrity": "sha512-rLdvwXZ39VOn1IxGL3V6ZstoTbwLRckQmn/U8ZDLuWwIXNpuZDhQ3AiRUlhTbOXFVE9C+dR51wM0CBDhk31VcA==", 1853 | "dependencies": { 1854 | "to-no-case": "^1.0.0" 1855 | } 1856 | }, 1857 | "node_modules/ts-interface-checker": { 1858 | "version": "0.1.13", 1859 | "resolved": "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz", 1860 | "integrity": "sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==" 1861 | }, 1862 | "node_modules/tslib": { 1863 | "version": "2.5.3", 1864 | "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.3.tgz", 1865 | "integrity": "sha512-mSxlJJwl3BMEQCUNnxXBU9jP4JBktcEGhURcPR6VQVlnP0FdDEsIaz0C35dXNGLyRfrATNofF0F5p2KPxQgB+w==" 1866 | }, 1867 | "node_modules/type-fest": { 1868 | "version": "2.19.0", 1869 | "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", 1870 | "integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==", 1871 | "engines": { 1872 | "node": ">=12.20" 1873 | }, 1874 | "funding": { 1875 | "url": "https://github.com/sponsors/sindresorhus" 1876 | } 1877 | }, 1878 | "node_modules/update-browserslist-db": { 1879 | "version": "1.0.11", 1880 | "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz", 1881 | "integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==", 1882 | "funding": [ 1883 | { 1884 | "type": "opencollective", 1885 | "url": "https://opencollective.com/browserslist" 1886 | }, 1887 | { 1888 | "type": "tidelift", 1889 | "url": "https://tidelift.com/funding/github/npm/browserslist" 1890 | }, 1891 | { 1892 | "type": "github", 1893 | "url": "https://github.com/sponsors/ai" 1894 | } 1895 | ], 1896 | "dependencies": { 1897 | "escalade": "^3.1.1", 1898 | "picocolors": "^1.0.0" 1899 | }, 1900 | "bin": { 1901 | "update-browserslist-db": "cli.js" 1902 | }, 1903 | "peerDependencies": { 1904 | "browserslist": ">= 4.21.0" 1905 | } 1906 | }, 1907 | "node_modules/util-deprecate": { 1908 | "version": "1.0.2", 1909 | "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", 1910 | "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" 1911 | }, 1912 | "node_modules/watchpack": { 1913 | "version": "2.4.0", 1914 | "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", 1915 | "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", 1916 | "dependencies": { 1917 | "glob-to-regexp": "^0.4.1", 1918 | "graceful-fs": "^4.1.2" 1919 | }, 1920 | "engines": { 1921 | "node": ">=10.13.0" 1922 | } 1923 | }, 1924 | "node_modules/webcrypto-core": { 1925 | "version": "1.7.7", 1926 | "resolved": "https://registry.npmjs.org/webcrypto-core/-/webcrypto-core-1.7.7.tgz", 1927 | "integrity": "sha512-7FjigXNsBfopEj+5DV2nhNpfic2vumtjjgPmeDKk45z+MJwXKKfhPB7118Pfzrmh4jqOMST6Ch37iPAHoImg5g==", 1928 | "dependencies": { 1929 | "@peculiar/asn1-schema": "^2.3.6", 1930 | "@peculiar/json-schema": "^1.1.12", 1931 | "asn1js": "^3.0.1", 1932 | "pvtsutils": "^1.3.2", 1933 | "tslib": "^2.4.0" 1934 | } 1935 | }, 1936 | "node_modules/wrappy": { 1937 | "version": "1.0.2", 1938 | "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", 1939 | "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" 1940 | }, 1941 | "node_modules/yaml": { 1942 | "version": "2.3.1", 1943 | "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.3.1.tgz", 1944 | "integrity": "sha512-2eHWfjaoXgTBC2jNM1LRef62VQa0umtvRiDSk6HSzW7RvS5YtkabJrwYLLEKWBc8a5U2PTSCs+dJjUTJdlHsWQ==", 1945 | "engines": { 1946 | "node": ">= 14" 1947 | } 1948 | }, 1949 | "node_modules/zod": { 1950 | "version": "3.21.4", 1951 | "resolved": "https://registry.npmjs.org/zod/-/zod-3.21.4.tgz", 1952 | "integrity": "sha512-m46AKbrzKVzOzs/DZgVnG5H55N1sv1M8qZU3A8RIKbs3mrACDNeIOeilDymVb2HdmP8uwshOCF4uJ8uM9rCqJw==", 1953 | "funding": { 1954 | "url": "https://github.com/sponsors/colinhacks" 1955 | } 1956 | } 1957 | } 1958 | } 1959 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "clerk-app", 3 | "version": "0.1.0", 4 | "private": true, 5 | "scripts": { 6 | "dev": "next dev", 7 | "build": "next build", 8 | "start": "next start", 9 | "lint": "next lint" 10 | }, 11 | "dependencies": { 12 | "@clerk/nextjs": "^4.21.8", 13 | "@clerk/themes": "^1.7.5", 14 | "autoprefixer": "10.4.14", 15 | "next": "13.4.7", 16 | "postcss": "8.4.24", 17 | "react": "18.2.0", 18 | "react-dom": "18.2.0", 19 | "tailwindcss": "3.3.2" 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /postcss.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | plugins: { 3 | tailwindcss: {}, 4 | autoprefixer: {}, 5 | }, 6 | } 7 | -------------------------------------------------------------------------------- /public/next.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /public/vercel.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tailwind.config.js: -------------------------------------------------------------------------------- 1 | /** @type {import('tailwindcss').Config} */ 2 | module.exports = { 3 | content: [ 4 | './pages/**/*.{js,ts,jsx,tsx,mdx}', 5 | './components/**/*.{js,ts,jsx,tsx,mdx}', 6 | './app/**/*.{js,ts,jsx,tsx,mdx}', 7 | ], 8 | theme: { 9 | extend: { 10 | backgroundImage: { 11 | 'gradient-radial': 'radial-gradient(var(--tw-gradient-stops))', 12 | 'gradient-conic': 13 | 'conic-gradient(from 180deg at 50% 50%, var(--tw-gradient-stops))', 14 | }, 15 | }, 16 | container: { 17 | center: true, 18 | }, 19 | }, 20 | plugins: [], 21 | }; 22 | --------------------------------------------------------------------------------