├── .env.example ├── .gitignore ├── .idea ├── .gitignore ├── inspectionProfiles │ └── Project_Default.xml ├── jsLibraryMappings.xml ├── modules.xml ├── prettier.xml ├── sveltekit-devto-blog.iml └── vcs.xml ├── .npmrc ├── .prettierignore ├── .prettierrc ├── README.md ├── package.json ├── pnpm-lock.yaml ├── postcss.config.cjs ├── src ├── app.css ├── app.d.ts ├── app.html ├── components │ ├── Footer.svelte │ ├── Navbar.svelte │ ├── Newsletter.svelte │ └── ThemeSwitcher.svelte ├── hooks.server.ts ├── lib │ ├── constants.ts │ ├── devtoApi.ts │ ├── search.ts │ └── themeData.ts └── routes │ ├── +layout.server.ts │ ├── +layout.svelte │ ├── +page.server.ts │ ├── +page.svelte │ ├── blog │ ├── +page.server.ts │ ├── +page.svelte │ └── [slug] │ │ ├── +page.server.ts │ │ └── +page.svelte │ ├── og │ └── +server.ts │ ├── robots.txt │ └── +server.ts │ ├── rss │ └── +server.ts │ └── sitemap.xml │ └── +server.ts ├── static ├── BlogTemplateImage.jpeg ├── favicon.png ├── fonts │ ├── Basteleur-Bold.woff │ ├── Basteleur-Bold.woff2 │ ├── Basteleur-Moonlight.woff │ ├── Basteleur-Moonlight.woff2 │ └── stylesheet.css ├── icon.svg ├── logo.png ├── og.png └── trans_logo.png ├── svelte.config.js ├── tailwind.config.cjs ├── tsconfig.json └── vite.config.ts /.env.example: -------------------------------------------------------------------------------- 1 | PUBLIC_SITE_NAME=EtherCorps 2 | DEV_TO_API_KEY=sdfghjktfh 3 | PUBLIC_DEV_TO_USERNAME=theether0 4 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | node_modules 3 | /build 4 | /.svelte-kit 5 | /package 6 | .env 7 | .env.* 8 | !.env.example 9 | vite.config.js.timestamp-* 10 | vite.config.ts.timestamp-* 11 | -------------------------------------------------------------------------------- /.idea/.gitignore: -------------------------------------------------------------------------------- 1 | # Default ignored files 2 | /shelf/ 3 | /workspace.xml 4 | # Editor-based HTTP Client requests 5 | /httpRequests/ 6 | -------------------------------------------------------------------------------- /.idea/inspectionProfiles/Project_Default.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 125 | -------------------------------------------------------------------------------- /.idea/jsLibraryMappings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /.idea/prettier.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /.idea/sveltekit-devto-blog.iml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /.npmrc: -------------------------------------------------------------------------------- 1 | engine-strict=true 2 | -------------------------------------------------------------------------------- /.prettierignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | node_modules 3 | /build 4 | /.svelte-kit 5 | /package 6 | .env 7 | .env.* 8 | !.env.example 9 | 10 | # Ignore files for PNPM, NPM and YARN 11 | pnpm-lock.yaml 12 | package-lock.json 13 | yarn.lock 14 | -------------------------------------------------------------------------------- /.prettierrc: -------------------------------------------------------------------------------- 1 | { 2 | "useTabs": true, 3 | "singleQuote": true, 4 | "trailingComma": "none", 5 | "printWidth": 100, 6 | "plugins": ["prettier-plugin-svelte"], 7 | "pluginSearchDirs": ["."], 8 | "overrides": [{ "files": "*.svelte", "options": { "parser": "svelte" } }] 9 | } 10 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 |
2 | 3 | Logo 4 | 5 |
6 | 7 | ## SveDev 8 | 9 | It's a blog template for the writer who writes on Dev.to and want to have their own blog website without to worry about tech stuff and if you want to customize it you can. We use Dev.to(Forem) Api to interact with SveDev's frontend which uses Svelte and SvelteKit. 10 | 11 | [![SveDev](https://raw.githubusercontent.com/etherCorps/sveltekit-devto-blog/main/static/BlogTemplateImage.jpeg)](https://www.youtube.com/watch?v=lZ__u7B8v-c) 12 | 13 | ## Tech Stack 14 | 15 | **Client:** Svelte, Tailwind, DaisyUI 16 | 17 | **Server:** SvelteKit, Dev.to(Forum) Rest API 18 | 19 | ## Deployment 20 | 21 | You can use one click deployment for Vercel and Netlify and for Linux and other deployment please check [How to use](#how-to-deploy) guide. 22 | 23 | [![Deploy with Vercel](https://vercel.com/button)](https://vercel.com/new/clone?repository-url=https%3A%2F%2Fgithub.com%2FetherCorps%2Fsveltekit-devto-blog&env=PUBLIC_APP_NAME,DEV_TO_API_KEY,PUBLIC_DEV_TO_USERNAME&envDescription=PUBLIC_APP_NAME%3A%20Means%20the%20name%20you%20wanna%20show%20on%20Navigation%20Header%2C%20DEV_TO_API_KEY%3A%20Means%20api%20key%20fronm%20devto%20plateform%20and%20PUBLIC_DEV_TO_USERNAME%3A%20Means%20your%20username%20on%20devTo%20&demo-title=Blog%20Template%20with%20Devto%20and%20Sveltekit&demo-description=A%20blog%20template%20which%20uses%20Devto%20as%20CMS%20and%20SvelteKit%20as%20UI%2FUX.&demo-url=https%3A%2F%2Fblog.ethercorps.io&demo-image=https%3A%2F%2Fblog.ethercorps.io%2FBlogTemplateImage.jpeg) 24 | 25 | #### Demo 26 | 27 | - Vercel - [Vercel Deploy Demo](https://svedev.vercel.app/) - One Click Deploy 28 | - Netlify - [Netlify Deploy Demo](https://svedev.netlify.app/) - How To Deploy Guide 29 | 30 | > When you use One Click Deploy You can't use meta icon so first change that and deploy it. 31 | 32 | ### How to Deploy 33 | 34 | You can deploy SveDev to any platform using SvelteKit adapters. Some of them are made by community and some are officially by the Svelte team. 35 | 36 | To deploy SveDev you have to add some environment variables in '.env' or in deployment specific plateform's environment values. 37 | 38 | 1. PUBLIC_APP_NAME=EtherCorps // Your Blog name 39 | 2. DEV_TO_API_KEY=sdfghjktfh // Your devto Api key 40 | 3. PUBLIC_DEV_TO_USERNAME=theether0 // Your devto username 41 | 42 | For adapters, you can read [SvelteKit Docs](https://kit.svelte.dev/docs/adapters) and according to that you can change your adapter in `svelte.config.js` file. Then build your app and deploy. 43 | 44 | ## Lessons Learned 45 | 46 | What did you learn while building this project? What challenges did you face and how did you overcome them? 47 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "sveltekit-devto-blog", 3 | "version": "0.0.1", 4 | "private": true, 5 | "scripts": { 6 | "dev": "vite dev", 7 | "build": "vite build", 8 | "preview": "vite preview", 9 | "check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json", 10 | "check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch", 11 | "lint": "prettier --plugin-search-dir . --check .", 12 | "format": "prettier --plugin-search-dir . --write ." 13 | }, 14 | "devDependencies": { 15 | "@ethercorps/sveltekit-og": "^1.2.2", 16 | "@sveltejs/adapter-auto": "^1.0.3", 17 | "@sveltejs/adapter-vercel": "^2.3.2", 18 | "@sveltejs/kit": "^1.12.0", 19 | "@tailwindcss/typography": "^0.5.9", 20 | "@types/rss": "^0.0.30", 21 | "autoprefixer": "^10.4.14", 22 | "axios": "^1.3.4", 23 | "daisyui": "^2.51.4", 24 | "postcss": "^8.4.21", 25 | "prettier": "^2.8.4", 26 | "prettier-plugin-svelte": "^2.9.0", 27 | "rss": "^1.2.2", 28 | "svelte": "^3.57.0", 29 | "svelte-action-balancer": "^1.0.4", 30 | "svelte-check": "^3.1.4", 31 | "tailwindcss": "^3.2.7", 32 | "tslib": "^2.5.0", 33 | "typescript": "^4.9.5", 34 | "vite": "^4.2.0" 35 | }, 36 | "type": "module", 37 | "dependencies": { 38 | "@lyrasearch/lyra": "^0.4.11", 39 | "@resvg/resvg-js": "^2.4.1", 40 | "satori": "^0.4.3" 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | lockfileVersion: 5.4 2 | 3 | specifiers: 4 | '@ethercorps/sveltekit-og': ^1.2.2 5 | '@lyrasearch/lyra': ^0.4.11 6 | '@resvg/resvg-js': ^2.4.1 7 | '@sveltejs/adapter-auto': ^1.0.3 8 | '@sveltejs/adapter-vercel': ^2.3.2 9 | '@sveltejs/kit': ^1.12.0 10 | '@tailwindcss/typography': ^0.5.9 11 | '@types/rss': ^0.0.30 12 | autoprefixer: ^10.4.14 13 | axios: ^1.3.4 14 | daisyui: ^2.51.4 15 | postcss: ^8.4.21 16 | prettier: ^2.8.4 17 | prettier-plugin-svelte: ^2.9.0 18 | rss: ^1.2.2 19 | satori: ^0.4.3 20 | svelte: ^3.57.0 21 | svelte-action-balancer: ^1.0.4 22 | svelte-check: ^3.1.4 23 | tailwindcss: ^3.2.7 24 | tslib: ^2.5.0 25 | typescript: ^4.9.5 26 | vite: ^4.2.0 27 | 28 | dependencies: 29 | '@lyrasearch/lyra': 0.4.11 30 | '@resvg/resvg-js': 2.4.1 31 | satori: 0.4.3 32 | 33 | devDependencies: 34 | '@ethercorps/sveltekit-og': 1.2.2_nyd7m5ktkhzdipzcli6cl6m5ny 35 | '@sveltejs/adapter-auto': 1.0.3_@sveltejs+kit@1.12.0 36 | '@sveltejs/adapter-vercel': 2.3.2_@sveltejs+kit@1.12.0 37 | '@sveltejs/kit': 1.12.0_svelte@3.57.0+vite@4.2.0 38 | '@tailwindcss/typography': 0.5.9_tailwindcss@3.2.7 39 | '@types/rss': 0.0.30 40 | autoprefixer: 10.4.14_postcss@8.4.21 41 | axios: 1.3.4 42 | daisyui: 2.51.4_j7yt3jd32cwenjqavrrga47yr4 43 | postcss: 8.4.21 44 | prettier: 2.8.4 45 | prettier-plugin-svelte: 2.9.0_k23gl6auqwrxgr3e6o2bajswou 46 | rss: 1.2.2 47 | svelte: 3.57.0 48 | svelte-action-balancer: 1.0.4 49 | svelte-check: 3.1.4_sd5d5bwhwct4qrvp7ra4wv5wou 50 | tailwindcss: 3.2.7_postcss@8.4.21 51 | tslib: 2.5.0 52 | typescript: 4.9.5 53 | vite: 4.2.0 54 | 55 | packages: 56 | 57 | /@esbuild/android-arm/0.16.17: 58 | resolution: {integrity: sha512-N9x1CMXVhtWEAMS7pNNONyA14f71VPQN9Cnavj1XQh6T7bskqiLLrSca4O0Vr8Wdcga943eThxnVp3JLnBMYtw==} 59 | engines: {node: '>=12'} 60 | cpu: [arm] 61 | os: [android] 62 | requiresBuild: true 63 | dev: true 64 | optional: true 65 | 66 | /@esbuild/android-arm/0.17.12: 67 | resolution: {integrity: sha512-E/sgkvwoIfj4aMAPL2e35VnUJspzVYl7+M1B2cqeubdBhADV4uPon0KCc8p2G+LqSJ6i8ocYPCqY3A4GGq0zkQ==} 68 | engines: {node: '>=12'} 69 | cpu: [arm] 70 | os: [android] 71 | requiresBuild: true 72 | dev: true 73 | optional: true 74 | 75 | /@esbuild/android-arm64/0.16.17: 76 | resolution: {integrity: sha512-MIGl6p5sc3RDTLLkYL1MyL8BMRN4tLMRCn+yRJJmEDvYZ2M7tmAf80hx1kbNEUX2KJ50RRtxZ4JHLvCfuB6kBg==} 77 | engines: {node: '>=12'} 78 | cpu: [arm64] 79 | os: [android] 80 | requiresBuild: true 81 | dev: true 82 | optional: true 83 | 84 | /@esbuild/android-arm64/0.17.12: 85 | resolution: {integrity: sha512-WQ9p5oiXXYJ33F2EkE3r0FRDFVpEdcDiwNX3u7Xaibxfx6vQE0Sb8ytrfQsA5WO6kDn6mDfKLh6KrPBjvkk7xA==} 86 | engines: {node: '>=12'} 87 | cpu: [arm64] 88 | os: [android] 89 | requiresBuild: true 90 | dev: true 91 | optional: true 92 | 93 | /@esbuild/android-x64/0.16.17: 94 | resolution: {integrity: sha512-a3kTv3m0Ghh4z1DaFEuEDfz3OLONKuFvI4Xqczqx4BqLyuFaFkuaG4j2MtA6fuWEFeC5x9IvqnX7drmRq/fyAQ==} 95 | engines: {node: '>=12'} 96 | cpu: [x64] 97 | os: [android] 98 | requiresBuild: true 99 | dev: true 100 | optional: true 101 | 102 | /@esbuild/android-x64/0.17.12: 103 | resolution: {integrity: sha512-m4OsaCr5gT+se25rFPHKQXARMyAehHTQAz4XX1Vk3d27VtqiX0ALMBPoXZsGaB6JYryCLfgGwUslMqTfqeLU0w==} 104 | engines: {node: '>=12'} 105 | cpu: [x64] 106 | os: [android] 107 | requiresBuild: true 108 | dev: true 109 | optional: true 110 | 111 | /@esbuild/darwin-arm64/0.16.17: 112 | resolution: {integrity: sha512-/2agbUEfmxWHi9ARTX6OQ/KgXnOWfsNlTeLcoV7HSuSTv63E4DqtAc+2XqGw1KHxKMHGZgbVCZge7HXWX9Vn+w==} 113 | engines: {node: '>=12'} 114 | cpu: [arm64] 115 | os: [darwin] 116 | requiresBuild: true 117 | dev: true 118 | optional: true 119 | 120 | /@esbuild/darwin-arm64/0.17.12: 121 | resolution: {integrity: sha512-O3GCZghRIx+RAN0NDPhyyhRgwa19MoKlzGonIb5hgTj78krqp9XZbYCvFr9N1eUxg0ZQEpiiZ4QvsOQwBpP+lg==} 122 | engines: {node: '>=12'} 123 | cpu: [arm64] 124 | os: [darwin] 125 | requiresBuild: true 126 | dev: true 127 | optional: true 128 | 129 | /@esbuild/darwin-x64/0.16.17: 130 | resolution: {integrity: sha512-2By45OBHulkd9Svy5IOCZt376Aa2oOkiE9QWUK9fe6Tb+WDr8hXL3dpqi+DeLiMed8tVXspzsTAvd0jUl96wmg==} 131 | engines: {node: '>=12'} 132 | cpu: [x64] 133 | os: [darwin] 134 | requiresBuild: true 135 | dev: true 136 | optional: true 137 | 138 | /@esbuild/darwin-x64/0.17.12: 139 | resolution: {integrity: sha512-5D48jM3tW27h1qjaD9UNRuN+4v0zvksqZSPZqeSWggfMlsVdAhH3pwSfQIFJwcs9QJ9BRibPS4ViZgs3d2wsCA==} 140 | engines: {node: '>=12'} 141 | cpu: [x64] 142 | os: [darwin] 143 | requiresBuild: true 144 | dev: true 145 | optional: true 146 | 147 | /@esbuild/freebsd-arm64/0.16.17: 148 | resolution: {integrity: sha512-mt+cxZe1tVx489VTb4mBAOo2aKSnJ33L9fr25JXpqQqzbUIw/yzIzi+NHwAXK2qYV1lEFp4OoVeThGjUbmWmdw==} 149 | engines: {node: '>=12'} 150 | cpu: [arm64] 151 | os: [freebsd] 152 | requiresBuild: true 153 | dev: true 154 | optional: true 155 | 156 | /@esbuild/freebsd-arm64/0.17.12: 157 | resolution: {integrity: sha512-OWvHzmLNTdF1erSvrfoEBGlN94IE6vCEaGEkEH29uo/VoONqPnoDFfShi41Ew+yKimx4vrmmAJEGNoyyP+OgOQ==} 158 | engines: {node: '>=12'} 159 | cpu: [arm64] 160 | os: [freebsd] 161 | requiresBuild: true 162 | dev: true 163 | optional: true 164 | 165 | /@esbuild/freebsd-x64/0.16.17: 166 | resolution: {integrity: sha512-8ScTdNJl5idAKjH8zGAsN7RuWcyHG3BAvMNpKOBaqqR7EbUhhVHOqXRdL7oZvz8WNHL2pr5+eIT5c65kA6NHug==} 167 | engines: {node: '>=12'} 168 | cpu: [x64] 169 | os: [freebsd] 170 | requiresBuild: true 171 | dev: true 172 | optional: true 173 | 174 | /@esbuild/freebsd-x64/0.17.12: 175 | resolution: {integrity: sha512-A0Xg5CZv8MU9xh4a+7NUpi5VHBKh1RaGJKqjxe4KG87X+mTjDE6ZvlJqpWoeJxgfXHT7IMP9tDFu7IZ03OtJAw==} 176 | engines: {node: '>=12'} 177 | cpu: [x64] 178 | os: [freebsd] 179 | requiresBuild: true 180 | dev: true 181 | optional: true 182 | 183 | /@esbuild/linux-arm/0.16.17: 184 | resolution: {integrity: sha512-iihzrWbD4gIT7j3caMzKb/RsFFHCwqqbrbH9SqUSRrdXkXaygSZCZg1FybsZz57Ju7N/SHEgPyaR0LZ8Zbe9gQ==} 185 | engines: {node: '>=12'} 186 | cpu: [arm] 187 | os: [linux] 188 | requiresBuild: true 189 | dev: true 190 | optional: true 191 | 192 | /@esbuild/linux-arm/0.17.12: 193 | resolution: {integrity: sha512-WsHyJ7b7vzHdJ1fv67Yf++2dz3D726oO3QCu8iNYik4fb5YuuReOI9OtA+n7Mk0xyQivNTPbl181s+5oZ38gyA==} 194 | engines: {node: '>=12'} 195 | cpu: [arm] 196 | os: [linux] 197 | requiresBuild: true 198 | dev: true 199 | optional: true 200 | 201 | /@esbuild/linux-arm64/0.16.17: 202 | resolution: {integrity: sha512-7S8gJnSlqKGVJunnMCrXHU9Q8Q/tQIxk/xL8BqAP64wchPCTzuM6W3Ra8cIa1HIflAvDnNOt2jaL17vaW+1V0g==} 203 | engines: {node: '>=12'} 204 | cpu: [arm64] 205 | os: [linux] 206 | requiresBuild: true 207 | dev: true 208 | optional: true 209 | 210 | /@esbuild/linux-arm64/0.17.12: 211 | resolution: {integrity: sha512-cK3AjkEc+8v8YG02hYLQIQlOznW+v9N+OI9BAFuyqkfQFR+DnDLhEM5N8QRxAUz99cJTo1rLNXqRrvY15gbQUg==} 212 | engines: {node: '>=12'} 213 | cpu: [arm64] 214 | os: [linux] 215 | requiresBuild: true 216 | dev: true 217 | optional: true 218 | 219 | /@esbuild/linux-ia32/0.16.17: 220 | resolution: {integrity: sha512-kiX69+wcPAdgl3Lonh1VI7MBr16nktEvOfViszBSxygRQqSpzv7BffMKRPMFwzeJGPxcio0pdD3kYQGpqQ2SSg==} 221 | engines: {node: '>=12'} 222 | cpu: [ia32] 223 | os: [linux] 224 | requiresBuild: true 225 | dev: true 226 | optional: true 227 | 228 | /@esbuild/linux-ia32/0.17.12: 229 | resolution: {integrity: sha512-jdOBXJqcgHlah/nYHnj3Hrnl9l63RjtQ4vn9+bohjQPI2QafASB5MtHAoEv0JQHVb/xYQTFOeuHnNYE1zF7tYw==} 230 | engines: {node: '>=12'} 231 | cpu: [ia32] 232 | os: [linux] 233 | requiresBuild: true 234 | dev: true 235 | optional: true 236 | 237 | /@esbuild/linux-loong64/0.16.17: 238 | resolution: {integrity: sha512-dTzNnQwembNDhd654cA4QhbS9uDdXC3TKqMJjgOWsC0yNCbpzfWoXdZvp0mY7HU6nzk5E0zpRGGx3qoQg8T2DQ==} 239 | engines: {node: '>=12'} 240 | cpu: [loong64] 241 | os: [linux] 242 | requiresBuild: true 243 | dev: true 244 | optional: true 245 | 246 | /@esbuild/linux-loong64/0.17.12: 247 | resolution: {integrity: sha512-GTOEtj8h9qPKXCyiBBnHconSCV9LwFyx/gv3Phw0pa25qPYjVuuGZ4Dk14bGCfGX3qKF0+ceeQvwmtI+aYBbVA==} 248 | engines: {node: '>=12'} 249 | cpu: [loong64] 250 | os: [linux] 251 | requiresBuild: true 252 | dev: true 253 | optional: true 254 | 255 | /@esbuild/linux-mips64el/0.16.17: 256 | resolution: {integrity: sha512-ezbDkp2nDl0PfIUn0CsQ30kxfcLTlcx4Foz2kYv8qdC6ia2oX5Q3E/8m6lq84Dj/6b0FrkgD582fJMIfHhJfSw==} 257 | engines: {node: '>=12'} 258 | cpu: [mips64el] 259 | os: [linux] 260 | requiresBuild: true 261 | dev: true 262 | optional: true 263 | 264 | /@esbuild/linux-mips64el/0.17.12: 265 | resolution: {integrity: sha512-o8CIhfBwKcxmEENOH9RwmUejs5jFiNoDw7YgS0EJTF6kgPgcqLFjgoc5kDey5cMHRVCIWc6kK2ShUePOcc7RbA==} 266 | engines: {node: '>=12'} 267 | cpu: [mips64el] 268 | os: [linux] 269 | requiresBuild: true 270 | dev: true 271 | optional: true 272 | 273 | /@esbuild/linux-ppc64/0.16.17: 274 | resolution: {integrity: sha512-dzS678gYD1lJsW73zrFhDApLVdM3cUF2MvAa1D8K8KtcSKdLBPP4zZSLy6LFZ0jYqQdQ29bjAHJDgz0rVbLB3g==} 275 | engines: {node: '>=12'} 276 | cpu: [ppc64] 277 | os: [linux] 278 | requiresBuild: true 279 | dev: true 280 | optional: true 281 | 282 | /@esbuild/linux-ppc64/0.17.12: 283 | resolution: {integrity: sha512-biMLH6NR/GR4z+ap0oJYb877LdBpGac8KfZoEnDiBKd7MD/xt8eaw1SFfYRUeMVx519kVkAOL2GExdFmYnZx3A==} 284 | engines: {node: '>=12'} 285 | cpu: [ppc64] 286 | os: [linux] 287 | requiresBuild: true 288 | dev: true 289 | optional: true 290 | 291 | /@esbuild/linux-riscv64/0.16.17: 292 | resolution: {integrity: sha512-ylNlVsxuFjZK8DQtNUwiMskh6nT0vI7kYl/4fZgV1llP5d6+HIeL/vmmm3jpuoo8+NuXjQVZxmKuhDApK0/cKw==} 293 | engines: {node: '>=12'} 294 | cpu: [riscv64] 295 | os: [linux] 296 | requiresBuild: true 297 | dev: true 298 | optional: true 299 | 300 | /@esbuild/linux-riscv64/0.17.12: 301 | resolution: {integrity: sha512-jkphYUiO38wZGeWlfIBMB72auOllNA2sLfiZPGDtOBb1ELN8lmqBrlMiucgL8awBw1zBXN69PmZM6g4yTX84TA==} 302 | engines: {node: '>=12'} 303 | cpu: [riscv64] 304 | os: [linux] 305 | requiresBuild: true 306 | dev: true 307 | optional: true 308 | 309 | /@esbuild/linux-s390x/0.16.17: 310 | resolution: {integrity: sha512-gzy7nUTO4UA4oZ2wAMXPNBGTzZFP7mss3aKR2hH+/4UUkCOyqmjXiKpzGrY2TlEUhbbejzXVKKGazYcQTZWA/w==} 311 | engines: {node: '>=12'} 312 | cpu: [s390x] 313 | os: [linux] 314 | requiresBuild: true 315 | dev: true 316 | optional: true 317 | 318 | /@esbuild/linux-s390x/0.17.12: 319 | resolution: {integrity: sha512-j3ucLdeY9HBcvODhCY4b+Ds3hWGO8t+SAidtmWu/ukfLLG/oYDMaA+dnugTVAg5fnUOGNbIYL9TOjhWgQB8W5g==} 320 | engines: {node: '>=12'} 321 | cpu: [s390x] 322 | os: [linux] 323 | requiresBuild: true 324 | dev: true 325 | optional: true 326 | 327 | /@esbuild/linux-x64/0.16.17: 328 | resolution: {integrity: sha512-mdPjPxfnmoqhgpiEArqi4egmBAMYvaObgn4poorpUaqmvzzbvqbowRllQ+ZgzGVMGKaPkqUmPDOOFQRUFDmeUw==} 329 | engines: {node: '>=12'} 330 | cpu: [x64] 331 | os: [linux] 332 | requiresBuild: true 333 | dev: true 334 | optional: true 335 | 336 | /@esbuild/linux-x64/0.17.12: 337 | resolution: {integrity: sha512-uo5JL3cgaEGotaqSaJdRfFNSCUJOIliKLnDGWaVCgIKkHxwhYMm95pfMbWZ9l7GeW9kDg0tSxcy9NYdEtjwwmA==} 338 | engines: {node: '>=12'} 339 | cpu: [x64] 340 | os: [linux] 341 | requiresBuild: true 342 | dev: true 343 | optional: true 344 | 345 | /@esbuild/netbsd-x64/0.16.17: 346 | resolution: {integrity: sha512-/PzmzD/zyAeTUsduZa32bn0ORug+Jd1EGGAUJvqfeixoEISYpGnAezN6lnJoskauoai0Jrs+XSyvDhppCPoKOA==} 347 | engines: {node: '>=12'} 348 | cpu: [x64] 349 | os: [netbsd] 350 | requiresBuild: true 351 | dev: true 352 | optional: true 353 | 354 | /@esbuild/netbsd-x64/0.17.12: 355 | resolution: {integrity: sha512-DNdoRg8JX+gGsbqt2gPgkgb00mqOgOO27KnrWZtdABl6yWTST30aibGJ6geBq3WM2TIeW6COs5AScnC7GwtGPg==} 356 | engines: {node: '>=12'} 357 | cpu: [x64] 358 | os: [netbsd] 359 | requiresBuild: true 360 | dev: true 361 | optional: true 362 | 363 | /@esbuild/openbsd-x64/0.16.17: 364 | resolution: {integrity: sha512-2yaWJhvxGEz2RiftSk0UObqJa/b+rIAjnODJgv2GbGGpRwAfpgzyrg1WLK8rqA24mfZa9GvpjLcBBg8JHkoodg==} 365 | engines: {node: '>=12'} 366 | cpu: [x64] 367 | os: [openbsd] 368 | requiresBuild: true 369 | dev: true 370 | optional: true 371 | 372 | /@esbuild/openbsd-x64/0.17.12: 373 | resolution: {integrity: sha512-aVsENlr7B64w8I1lhHShND5o8cW6sB9n9MUtLumFlPhG3elhNWtE7M1TFpj3m7lT3sKQUMkGFjTQBrvDDO1YWA==} 374 | engines: {node: '>=12'} 375 | cpu: [x64] 376 | os: [openbsd] 377 | requiresBuild: true 378 | dev: true 379 | optional: true 380 | 381 | /@esbuild/sunos-x64/0.16.17: 382 | resolution: {integrity: sha512-xtVUiev38tN0R3g8VhRfN7Zl42YCJvyBhRKw1RJjwE1d2emWTVToPLNEQj/5Qxc6lVFATDiy6LjVHYhIPrLxzw==} 383 | engines: {node: '>=12'} 384 | cpu: [x64] 385 | os: [sunos] 386 | requiresBuild: true 387 | dev: true 388 | optional: true 389 | 390 | /@esbuild/sunos-x64/0.17.12: 391 | resolution: {integrity: sha512-qbHGVQdKSwi0JQJuZznS4SyY27tYXYF0mrgthbxXrZI3AHKuRvU+Eqbg/F0rmLDpW/jkIZBlCO1XfHUBMNJ1pg==} 392 | engines: {node: '>=12'} 393 | cpu: [x64] 394 | os: [sunos] 395 | requiresBuild: true 396 | dev: true 397 | optional: true 398 | 399 | /@esbuild/win32-arm64/0.16.17: 400 | resolution: {integrity: sha512-ga8+JqBDHY4b6fQAmOgtJJue36scANy4l/rL97W+0wYmijhxKetzZdKOJI7olaBaMhWt8Pac2McJdZLxXWUEQw==} 401 | engines: {node: '>=12'} 402 | cpu: [arm64] 403 | os: [win32] 404 | requiresBuild: true 405 | dev: true 406 | optional: true 407 | 408 | /@esbuild/win32-arm64/0.17.12: 409 | resolution: {integrity: sha512-zsCp8Ql+96xXTVTmm6ffvoTSZSV2B/LzzkUXAY33F/76EajNw1m+jZ9zPfNJlJ3Rh4EzOszNDHsmG/fZOhtqDg==} 410 | engines: {node: '>=12'} 411 | cpu: [arm64] 412 | os: [win32] 413 | requiresBuild: true 414 | dev: true 415 | optional: true 416 | 417 | /@esbuild/win32-ia32/0.16.17: 418 | resolution: {integrity: sha512-WnsKaf46uSSF/sZhwnqE4L/F89AYNMiD4YtEcYekBt9Q7nj0DiId2XH2Ng2PHM54qi5oPrQ8luuzGszqi/veig==} 419 | engines: {node: '>=12'} 420 | cpu: [ia32] 421 | os: [win32] 422 | requiresBuild: true 423 | dev: true 424 | optional: true 425 | 426 | /@esbuild/win32-ia32/0.17.12: 427 | resolution: {integrity: sha512-FfrFjR4id7wcFYOdqbDfDET3tjxCozUgbqdkOABsSFzoZGFC92UK7mg4JKRc/B3NNEf1s2WHxJ7VfTdVDPN3ng==} 428 | engines: {node: '>=12'} 429 | cpu: [ia32] 430 | os: [win32] 431 | requiresBuild: true 432 | dev: true 433 | optional: true 434 | 435 | /@esbuild/win32-x64/0.16.17: 436 | resolution: {integrity: sha512-y+EHuSchhL7FjHgvQL/0fnnFmO4T1bhvWANX6gcnqTjtnKWbTvUMCpGnv2+t+31d7RzyEAYAd4u2fnIhHL6N/Q==} 437 | engines: {node: '>=12'} 438 | cpu: [x64] 439 | os: [win32] 440 | requiresBuild: true 441 | dev: true 442 | optional: true 443 | 444 | /@esbuild/win32-x64/0.17.12: 445 | resolution: {integrity: sha512-JOOxw49BVZx2/5tW3FqkdjSD/5gXYeVGPDcB0lvap0gLQshkh1Nyel1QazC+wNxus3xPlsYAgqU1BUmrmCvWtw==} 446 | engines: {node: '>=12'} 447 | cpu: [x64] 448 | os: [win32] 449 | requiresBuild: true 450 | dev: true 451 | optional: true 452 | 453 | /@ethercorps/sveltekit-og/1.2.2_nyd7m5ktkhzdipzcli6cl6m5ny: 454 | resolution: {integrity: sha512-O11pMpEF928/G9KS4iitO8CKmm4tZfk+x9g/luRo3UUn3QS/PSEdKtHB90reGSTd/nIzm1B+87I0FZYBxMDP1w==} 455 | peerDependencies: 456 | '@resvg/resvg-js': ^2.4.1 457 | satori: ^0.4.1 458 | svelte: ^3.54.0 459 | dependencies: 460 | '@resvg/resvg-js': 2.4.1 461 | satori: 0.4.3 462 | svelte: 3.57.0 463 | dev: true 464 | 465 | /@jridgewell/resolve-uri/3.1.0: 466 | resolution: {integrity: sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==} 467 | engines: {node: '>=6.0.0'} 468 | dev: true 469 | 470 | /@jridgewell/sourcemap-codec/1.4.14: 471 | resolution: {integrity: sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==} 472 | dev: true 473 | 474 | /@jridgewell/trace-mapping/0.3.17: 475 | resolution: {integrity: sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==} 476 | dependencies: 477 | '@jridgewell/resolve-uri': 3.1.0 478 | '@jridgewell/sourcemap-codec': 1.4.14 479 | dev: true 480 | 481 | /@lyrasearch/lyra/0.4.11: 482 | resolution: {integrity: sha512-KvTTCLNG5+BaAKQnYXP/b/NMatqitHFu5LDKGxbga7IXZMPFBdJe4TSvhkJcPsdnEQOccYlPYvkxgjV9BPmV0Q==} 483 | engines: {node: '>= 16.0.0'} 484 | dev: false 485 | 486 | /@mapbox/node-pre-gyp/1.0.10: 487 | resolution: {integrity: sha512-4ySo4CjzStuprMwk35H5pPbkymjv1SF3jGLj6rAHp/xT/RF7TL7bd9CTm1xDY49K2qF7jmR/g7k+SkLETP6opA==} 488 | hasBin: true 489 | dependencies: 490 | detect-libc: 2.0.1 491 | https-proxy-agent: 5.0.1 492 | make-dir: 3.1.0 493 | node-fetch: 2.6.9 494 | nopt: 5.0.0 495 | npmlog: 5.0.1 496 | rimraf: 3.0.2 497 | semver: 7.3.8 498 | tar: 6.1.13 499 | transitivePeerDependencies: 500 | - encoding 501 | - supports-color 502 | dev: true 503 | 504 | /@nodelib/fs.scandir/2.1.5: 505 | resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} 506 | engines: {node: '>= 8'} 507 | dependencies: 508 | '@nodelib/fs.stat': 2.0.5 509 | run-parallel: 1.2.0 510 | dev: true 511 | 512 | /@nodelib/fs.stat/2.0.5: 513 | resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} 514 | engines: {node: '>= 8'} 515 | dev: true 516 | 517 | /@nodelib/fs.walk/1.2.8: 518 | resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} 519 | engines: {node: '>= 8'} 520 | dependencies: 521 | '@nodelib/fs.scandir': 2.1.5 522 | fastq: 1.15.0 523 | dev: true 524 | 525 | /@polka/url/1.0.0-next.21: 526 | resolution: {integrity: sha512-a5Sab1C4/icpTZVzZc5Ghpz88yQtGOyNqYXcZgOssB2uuAr+wF/MvN6bgtW32q7HHrvBki+BsZ0OuNv6EV3K9g==} 527 | dev: true 528 | 529 | /@resvg/resvg-js-android-arm-eabi/2.4.1: 530 | resolution: {integrity: sha512-AA6f7hS0FAPpvQMhBCf6f1oD1LdlqNXKCxAAPpKh6tR11kqV0YIB9zOlIYgITM14mq2YooLFl6XIbbvmY+jwUw==} 531 | engines: {node: '>= 10'} 532 | cpu: [arm] 533 | os: [android] 534 | requiresBuild: true 535 | optional: true 536 | 537 | /@resvg/resvg-js-android-arm64/2.4.1: 538 | resolution: {integrity: sha512-/QleoRdPfsEuH9jUjilYcDtKK/BkmWcK+1LXM8L2nsnf/CI8EnFyv7ZzCj4xAIvZGAy9dTYr/5NZBcTwxG2HQg==} 539 | engines: {node: '>= 10'} 540 | cpu: [arm64] 541 | os: [android] 542 | requiresBuild: true 543 | optional: true 544 | 545 | /@resvg/resvg-js-darwin-arm64/2.4.1: 546 | resolution: {integrity: sha512-U1oMNhea+kAXgiEXgzo7EbFGCD1Edq5aSlQoe6LMly6UjHzgx2W3N5kEXCwU/CgN5FiQhZr7PlSJSlcr7mdhfg==} 547 | engines: {node: '>= 10'} 548 | cpu: [arm64] 549 | os: [darwin] 550 | requiresBuild: true 551 | optional: true 552 | 553 | /@resvg/resvg-js-darwin-x64/2.4.1: 554 | resolution: {integrity: sha512-avyVh6DpebBfHHtTQTZYSr6NG1Ur6TEilk1+H0n7V+g4F7x7WPOo8zL00ZhQCeRQ5H4f8WXNWIEKL8fwqcOkYw==} 555 | engines: {node: '>= 10'} 556 | cpu: [x64] 557 | os: [darwin] 558 | requiresBuild: true 559 | optional: true 560 | 561 | /@resvg/resvg-js-linux-arm-gnueabihf/2.4.1: 562 | resolution: {integrity: sha512-isY/mdKoBWH4VB5v621co+8l101jxxYjuTkwOLsbW+5RK9EbLciPlCB02M99ThAHzI2MYxIUjXNmNgOW8btXvw==} 563 | engines: {node: '>= 10'} 564 | cpu: [arm] 565 | os: [linux] 566 | requiresBuild: true 567 | optional: true 568 | 569 | /@resvg/resvg-js-linux-arm64-gnu/2.4.1: 570 | resolution: {integrity: sha512-uY5voSCrFI8TH95vIYBm5blpkOtltLxLRODyhKJhGfskOI7XkRw5/t1u0sWAGYD8rRSNX+CA+np86otKjubrNg==} 571 | engines: {node: '>= 10'} 572 | cpu: [arm64] 573 | os: [linux] 574 | requiresBuild: true 575 | optional: true 576 | 577 | /@resvg/resvg-js-linux-arm64-musl/2.4.1: 578 | resolution: {integrity: sha512-6mT0+JBCsermKMdi/O2mMk3m7SqOjwi9TKAwSngRZ/nQoL3Z0Z5zV+572ztgbWr0GODB422uD8e9R9zzz38dRQ==} 579 | engines: {node: '>= 10'} 580 | cpu: [arm64] 581 | os: [linux] 582 | requiresBuild: true 583 | optional: true 584 | 585 | /@resvg/resvg-js-linux-x64-gnu/2.4.1: 586 | resolution: {integrity: sha512-60KnrscLj6VGhkYOJEmmzPlqqfcw1keDh6U+vMcNDjPhV3B5vRSkpP/D/a8sfokyeh4VEacPSYkWGezvzS2/mg==} 587 | engines: {node: '>= 10'} 588 | cpu: [x64] 589 | os: [linux] 590 | requiresBuild: true 591 | optional: true 592 | 593 | /@resvg/resvg-js-linux-x64-musl/2.4.1: 594 | resolution: {integrity: sha512-0AMyZSICC1D7ge115cOZQW8Pcad6PjWuZkBFF3FJuSxC6Dgok0MQnLTs2MfMdKBlAcwO9dXsf3bv9tJZj8pATA==} 595 | engines: {node: '>= 10'} 596 | cpu: [x64] 597 | os: [linux] 598 | requiresBuild: true 599 | optional: true 600 | 601 | /@resvg/resvg-js-win32-arm64-msvc/2.4.1: 602 | resolution: {integrity: sha512-76XDFOFSa3d0QotmcNyChh2xHwk+JTFiEQBVxMlHpHMeq7hNrQJ1IpE1zcHSQvrckvkdfLboKRrlGB86B10Qjw==} 603 | engines: {node: '>= 10'} 604 | cpu: [arm64] 605 | os: [win32] 606 | requiresBuild: true 607 | optional: true 608 | 609 | /@resvg/resvg-js-win32-ia32-msvc/2.4.1: 610 | resolution: {integrity: sha512-odyVFGrEWZIzzJ89KdaFtiYWaIJh9hJRW/frcEcG3agJ464VXkN/2oEVF5ulD+5mpGlug9qJg7htzHcKxDN8sg==} 611 | engines: {node: '>= 10'} 612 | cpu: [ia32] 613 | os: [win32] 614 | requiresBuild: true 615 | optional: true 616 | 617 | /@resvg/resvg-js-win32-x64-msvc/2.4.1: 618 | resolution: {integrity: sha512-vY4kTLH2S3bP+puU5x7hlAxHv+ulFgcK6Zn3efKSr0M0KnZ9A3qeAjZteIpkowEFfUeMPNg2dvvoFRJA9zqxSw==} 619 | engines: {node: '>= 10'} 620 | cpu: [x64] 621 | os: [win32] 622 | requiresBuild: true 623 | optional: true 624 | 625 | /@resvg/resvg-js/2.4.1: 626 | resolution: {integrity: sha512-wTOf1zerZX8qYcMmLZw3czR4paI4hXqPjShNwJRh5DeHxvgffUS5KM7XwxtbIheUW6LVYT5fhT2AJiP6mU7U4A==} 627 | engines: {node: '>= 10'} 628 | optionalDependencies: 629 | '@resvg/resvg-js-android-arm-eabi': 2.4.1 630 | '@resvg/resvg-js-android-arm64': 2.4.1 631 | '@resvg/resvg-js-darwin-arm64': 2.4.1 632 | '@resvg/resvg-js-darwin-x64': 2.4.1 633 | '@resvg/resvg-js-linux-arm-gnueabihf': 2.4.1 634 | '@resvg/resvg-js-linux-arm64-gnu': 2.4.1 635 | '@resvg/resvg-js-linux-arm64-musl': 2.4.1 636 | '@resvg/resvg-js-linux-x64-gnu': 2.4.1 637 | '@resvg/resvg-js-linux-x64-musl': 2.4.1 638 | '@resvg/resvg-js-win32-arm64-msvc': 2.4.1 639 | '@resvg/resvg-js-win32-ia32-msvc': 2.4.1 640 | '@resvg/resvg-js-win32-x64-msvc': 2.4.1 641 | 642 | /@rollup/pluginutils/4.2.1: 643 | resolution: {integrity: sha512-iKnFXr7NkdZAIHiIWE+BX5ULi/ucVFYWD6TbAV+rZctiRTY2PL6tsIKhoIOaoskiWAkgu+VsbXgUVDNLHf+InQ==} 644 | engines: {node: '>= 8.0.0'} 645 | dependencies: 646 | estree-walker: 2.0.2 647 | picomatch: 2.3.1 648 | dev: true 649 | 650 | /@shuding/opentype.js/1.4.0-beta.0: 651 | resolution: {integrity: sha512-3NgmNyH3l/Hv6EvsWJbsvpcpUba6R8IREQ83nH83cyakCw7uM1arZKNfHwv1Wz6jgqrF/j4x5ELvR6PnK9nTcA==} 652 | engines: {node: '>= 8.0.0'} 653 | hasBin: true 654 | dependencies: 655 | fflate: 0.7.4 656 | string.prototype.codepointat: 0.2.1 657 | 658 | /@sveltejs/adapter-auto/1.0.3_@sveltejs+kit@1.12.0: 659 | resolution: {integrity: sha512-hc7O12YQqvZ1CD4fo1gMJuPzBZvuoG5kwxb2RRoz4fVoB8B2vuPO2cY751Ln0G6T/HMrAf8kCqw6Pg+wbxcstw==} 660 | peerDependencies: 661 | '@sveltejs/kit': ^1.0.0 662 | dependencies: 663 | '@sveltejs/kit': 1.12.0_svelte@3.57.0+vite@4.2.0 664 | import-meta-resolve: 2.2.2 665 | dev: true 666 | 667 | /@sveltejs/adapter-vercel/2.3.2_@sveltejs+kit@1.12.0: 668 | resolution: {integrity: sha512-Egd5t56uu8DCvyRNHIAhpSxXkQUQg7klxVs/WSHhMZSZLQfNClJF1JlK8Ub55KkrZ5dkSDO2oBPh4piwjxznzA==} 669 | peerDependencies: 670 | '@sveltejs/kit': ^1.5.0 671 | dependencies: 672 | '@sveltejs/kit': 1.12.0_svelte@3.57.0+vite@4.2.0 673 | '@vercel/nft': 0.22.6 674 | esbuild: 0.16.17 675 | transitivePeerDependencies: 676 | - encoding 677 | - supports-color 678 | dev: true 679 | 680 | /@sveltejs/kit/1.12.0_svelte@3.57.0+vite@4.2.0: 681 | resolution: {integrity: sha512-hhOtaL3jS7p4A3O34m8RlM+K5OSyrEyFUIh4iqsv6e8BDvupzNSxGa7J9+Gfjb+Z1yZCxjvxJ8Flb2Cj0g8cLg==} 682 | engines: {node: ^16.14 || >=18} 683 | hasBin: true 684 | requiresBuild: true 685 | peerDependencies: 686 | svelte: ^3.54.0 687 | vite: ^4.0.0 688 | dependencies: 689 | '@sveltejs/vite-plugin-svelte': 2.0.3_svelte@3.57.0+vite@4.2.0 690 | '@types/cookie': 0.5.1 691 | cookie: 0.5.0 692 | devalue: 4.3.0 693 | esm-env: 1.0.0 694 | kleur: 4.1.5 695 | magic-string: 0.30.0 696 | mime: 3.0.0 697 | sade: 1.8.1 698 | set-cookie-parser: 2.5.1 699 | sirv: 2.0.2 700 | svelte: 3.57.0 701 | tiny-glob: 0.2.9 702 | undici: 5.21.0 703 | vite: 4.2.0 704 | transitivePeerDependencies: 705 | - supports-color 706 | dev: true 707 | 708 | /@sveltejs/vite-plugin-svelte/2.0.3_svelte@3.57.0+vite@4.2.0: 709 | resolution: {integrity: sha512-o+cguBFdwIGtRbNkYOyqTM7KvRUffxh5bfK4oJsWKG2obu+v/cbpT03tJrGl58C7tRXo/aEC0/axN5FVHBj0nA==} 710 | engines: {node: ^14.18.0 || >= 16} 711 | peerDependencies: 712 | svelte: ^3.54.0 713 | vite: ^4.0.0 714 | dependencies: 715 | debug: 4.3.4 716 | deepmerge: 4.3.1 717 | kleur: 4.1.5 718 | magic-string: 0.29.0 719 | svelte: 3.57.0 720 | svelte-hmr: 0.15.1_svelte@3.57.0 721 | vite: 4.2.0 722 | vitefu: 0.2.4_vite@4.2.0 723 | transitivePeerDependencies: 724 | - supports-color 725 | dev: true 726 | 727 | /@tailwindcss/typography/0.5.9_tailwindcss@3.2.7: 728 | resolution: {integrity: sha512-t8Sg3DyynFysV9f4JDOVISGsjazNb48AeIYQwcL+Bsq5uf4RYL75C1giZ43KISjeDGBaTN3Kxh7Xj/vRSMJUUg==} 729 | peerDependencies: 730 | tailwindcss: '>=3.0.0 || insiders' 731 | dependencies: 732 | lodash.castarray: 4.4.0 733 | lodash.isplainobject: 4.0.6 734 | lodash.merge: 4.6.2 735 | postcss-selector-parser: 6.0.10 736 | tailwindcss: 3.2.7_postcss@8.4.21 737 | dev: true 738 | 739 | /@types/cookie/0.5.1: 740 | resolution: {integrity: sha512-COUnqfB2+ckwXXSFInsFdOAWQzCCx+a5hq2ruyj+Vjund94RJQd4LG2u9hnvJrTgunKAaax7ancBYlDrNYxA0g==} 741 | dev: true 742 | 743 | /@types/pug/2.0.6: 744 | resolution: {integrity: sha512-SnHmG9wN1UVmagJOnyo/qkk0Z7gejYxOYYmaAwr5u2yFYfsupN3sg10kyzN8Hep/2zbHxCnsumxOoRIRMBwKCg==} 745 | dev: true 746 | 747 | /@types/rss/0.0.30: 748 | resolution: {integrity: sha512-RnWs98qajbcAZqie6EWYraJ2N+1Q1Wy9KN7HcVPJ//sYJGVjLjvkChZdeQPwf88xAcNUCcLXt6Zz3kiid7s/yw==} 749 | dev: true 750 | 751 | /@vercel/nft/0.22.6: 752 | resolution: {integrity: sha512-gTsFnnT4mGxodr4AUlW3/urY+8JKKB452LwF3m477RFUJTAaDmcz2JqFuInzvdybYIeyIv1sSONEJxsxnbQ5JQ==} 753 | engines: {node: '>=14'} 754 | hasBin: true 755 | dependencies: 756 | '@mapbox/node-pre-gyp': 1.0.10 757 | '@rollup/pluginutils': 4.2.1 758 | acorn: 8.8.2 759 | async-sema: 3.1.1 760 | bindings: 1.5.0 761 | estree-walker: 2.0.2 762 | glob: 7.2.3 763 | graceful-fs: 4.2.11 764 | micromatch: 4.0.5 765 | node-gyp-build: 4.6.0 766 | resolve-from: 5.0.0 767 | transitivePeerDependencies: 768 | - encoding 769 | - supports-color 770 | dev: true 771 | 772 | /abbrev/1.1.1: 773 | resolution: {integrity: sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==} 774 | dev: true 775 | 776 | /acorn-node/1.8.2: 777 | resolution: {integrity: sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A==} 778 | dependencies: 779 | acorn: 7.4.1 780 | acorn-walk: 7.2.0 781 | xtend: 4.0.2 782 | dev: true 783 | 784 | /acorn-walk/7.2.0: 785 | resolution: {integrity: sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==} 786 | engines: {node: '>=0.4.0'} 787 | dev: true 788 | 789 | /acorn/7.4.1: 790 | resolution: {integrity: sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==} 791 | engines: {node: '>=0.4.0'} 792 | hasBin: true 793 | dev: true 794 | 795 | /acorn/8.8.2: 796 | resolution: {integrity: sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==} 797 | engines: {node: '>=0.4.0'} 798 | hasBin: true 799 | dev: true 800 | 801 | /agent-base/6.0.2: 802 | resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==} 803 | engines: {node: '>= 6.0.0'} 804 | dependencies: 805 | debug: 4.3.4 806 | transitivePeerDependencies: 807 | - supports-color 808 | dev: true 809 | 810 | /ansi-regex/5.0.1: 811 | resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} 812 | engines: {node: '>=8'} 813 | dev: true 814 | 815 | /anymatch/3.1.3: 816 | resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} 817 | engines: {node: '>= 8'} 818 | dependencies: 819 | normalize-path: 3.0.0 820 | picomatch: 2.3.1 821 | dev: true 822 | 823 | /aproba/2.0.0: 824 | resolution: {integrity: sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==} 825 | dev: true 826 | 827 | /are-we-there-yet/2.0.0: 828 | resolution: {integrity: sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==} 829 | engines: {node: '>=10'} 830 | dependencies: 831 | delegates: 1.0.0 832 | readable-stream: 3.6.2 833 | dev: true 834 | 835 | /arg/5.0.2: 836 | resolution: {integrity: sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==} 837 | dev: true 838 | 839 | /async-sema/3.1.1: 840 | resolution: {integrity: sha512-tLRNUXati5MFePdAk8dw7Qt7DpxPB60ofAgn8WRhW6a2rcimZnYBP9oxHiv0OHy+Wz7kPMG+t4LGdt31+4EmGg==} 841 | dev: true 842 | 843 | /asynckit/0.4.0: 844 | resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} 845 | dev: true 846 | 847 | /autoprefixer/10.4.14_postcss@8.4.21: 848 | resolution: {integrity: sha512-FQzyfOsTlwVzjHxKEqRIAdJx9niO6VCBCoEwax/VLSoQF29ggECcPuBqUMZ+u8jCZOPSy8b8/8KnuFbp0SaFZQ==} 849 | engines: {node: ^10 || ^12 || >=14} 850 | hasBin: true 851 | peerDependencies: 852 | postcss: ^8.1.0 853 | dependencies: 854 | browserslist: 4.21.5 855 | caniuse-lite: 1.0.30001467 856 | fraction.js: 4.2.0 857 | normalize-range: 0.1.2 858 | picocolors: 1.0.0 859 | postcss: 8.4.21 860 | postcss-value-parser: 4.2.0 861 | dev: true 862 | 863 | /axios/1.3.4: 864 | resolution: {integrity: sha512-toYm+Bsyl6VC5wSkfkbbNB6ROv7KY93PEBBL6xyDczaIHasAiv4wPqQ/c4RjoQzipxRD2W5g21cOqQulZ7rHwQ==} 865 | dependencies: 866 | follow-redirects: 1.15.2 867 | form-data: 4.0.0 868 | proxy-from-env: 1.1.0 869 | transitivePeerDependencies: 870 | - debug 871 | dev: true 872 | 873 | /balanced-match/1.0.2: 874 | resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} 875 | dev: true 876 | 877 | /base64-js/0.0.8: 878 | resolution: {integrity: sha512-3XSA2cR/h/73EzlXXdU6YNycmYI7+kicTxks4eJg2g39biHR84slg2+des+p7iHYhbRg/udIS4TD53WabcOUkw==} 879 | engines: {node: '>= 0.4'} 880 | 881 | /binary-extensions/2.2.0: 882 | resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==} 883 | engines: {node: '>=8'} 884 | dev: true 885 | 886 | /bindings/1.5.0: 887 | resolution: {integrity: sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==} 888 | dependencies: 889 | file-uri-to-path: 1.0.0 890 | dev: true 891 | 892 | /brace-expansion/1.1.11: 893 | resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} 894 | dependencies: 895 | balanced-match: 1.0.2 896 | concat-map: 0.0.1 897 | dev: true 898 | 899 | /braces/3.0.2: 900 | resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==} 901 | engines: {node: '>=8'} 902 | dependencies: 903 | fill-range: 7.0.1 904 | dev: true 905 | 906 | /browserslist/4.21.5: 907 | resolution: {integrity: sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w==} 908 | engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} 909 | hasBin: true 910 | dependencies: 911 | caniuse-lite: 1.0.30001467 912 | electron-to-chromium: 1.4.332 913 | node-releases: 2.0.10 914 | update-browserslist-db: 1.0.10_browserslist@4.21.5 915 | dev: true 916 | 917 | /buffer-crc32/0.2.13: 918 | resolution: {integrity: sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==} 919 | dev: true 920 | 921 | /busboy/1.6.0: 922 | resolution: {integrity: sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==} 923 | engines: {node: '>=10.16.0'} 924 | dependencies: 925 | streamsearch: 1.1.0 926 | dev: true 927 | 928 | /callsites/3.1.0: 929 | resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} 930 | engines: {node: '>=6'} 931 | dev: true 932 | 933 | /camelcase-css/2.0.1: 934 | resolution: {integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==} 935 | engines: {node: '>= 6'} 936 | dev: true 937 | 938 | /camelize/1.0.1: 939 | resolution: {integrity: sha512-dU+Tx2fsypxTgtLoE36npi3UqcjSSMNYfkqgmoEhtZrraP5VWq0K7FkWVTYa8eMPtnU/G2txVsfdCJTn9uzpuQ==} 940 | 941 | /caniuse-lite/1.0.30001467: 942 | resolution: {integrity: sha512-cEdN/5e+RPikvl9AHm4uuLXxeCNq8rFsQ+lPHTfe/OtypP3WwnVVbjn+6uBV7PaFL6xUFzTh+sSCOz1rKhcO+Q==} 943 | dev: true 944 | 945 | /chokidar/3.5.3: 946 | resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==} 947 | engines: {node: '>= 8.10.0'} 948 | dependencies: 949 | anymatch: 3.1.3 950 | braces: 3.0.2 951 | glob-parent: 5.1.2 952 | is-binary-path: 2.1.0 953 | is-glob: 4.0.3 954 | normalize-path: 3.0.0 955 | readdirp: 3.6.0 956 | optionalDependencies: 957 | fsevents: 2.3.2 958 | dev: true 959 | 960 | /chownr/2.0.0: 961 | resolution: {integrity: sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==} 962 | engines: {node: '>=10'} 963 | dev: true 964 | 965 | /color-convert/2.0.1: 966 | resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} 967 | engines: {node: '>=7.0.0'} 968 | dependencies: 969 | color-name: 1.1.4 970 | dev: true 971 | 972 | /color-name/1.1.4: 973 | resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} 974 | dev: true 975 | 976 | /color-string/1.9.1: 977 | resolution: {integrity: sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==} 978 | dependencies: 979 | color-name: 1.1.4 980 | simple-swizzle: 0.2.2 981 | dev: true 982 | 983 | /color-support/1.1.3: 984 | resolution: {integrity: sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==} 985 | hasBin: true 986 | dev: true 987 | 988 | /color/4.2.3: 989 | resolution: {integrity: sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==} 990 | engines: {node: '>=12.5.0'} 991 | dependencies: 992 | color-convert: 2.0.1 993 | color-string: 1.9.1 994 | dev: true 995 | 996 | /combined-stream/1.0.8: 997 | resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} 998 | engines: {node: '>= 0.8'} 999 | dependencies: 1000 | delayed-stream: 1.0.0 1001 | dev: true 1002 | 1003 | /concat-map/0.0.1: 1004 | resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} 1005 | dev: true 1006 | 1007 | /console-control-strings/1.1.0: 1008 | resolution: {integrity: sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==} 1009 | dev: true 1010 | 1011 | /cookie/0.5.0: 1012 | resolution: {integrity: sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==} 1013 | engines: {node: '>= 0.6'} 1014 | dev: true 1015 | 1016 | /css-background-parser/0.1.0: 1017 | resolution: {integrity: sha512-2EZLisiZQ+7m4wwur/qiYJRniHX4K5Tc9w93MT3AS0WS1u5kaZ4FKXlOTBhOjc+CgEgPiGY+fX1yWD8UwpEqUA==} 1018 | 1019 | /css-box-shadow/1.0.0-3: 1020 | resolution: {integrity: sha512-9jaqR6e7Ohds+aWwmhe6wILJ99xYQbfmK9QQB9CcMjDbTxPZjwEmUQpU91OG05Xgm8BahT5fW+svbsQGjS/zPg==} 1021 | 1022 | /css-color-keywords/1.0.0: 1023 | resolution: {integrity: sha512-FyyrDHZKEjXDpNJYvVsV960FiqQyXc/LlYmsxl2BcdMb2WPx0OGRVgTg55rPSyLSNMqP52R9r8geSp7apN3Ofg==} 1024 | engines: {node: '>=4'} 1025 | 1026 | /css-selector-tokenizer/0.8.0: 1027 | resolution: {integrity: sha512-Jd6Ig3/pe62/qe5SBPTN8h8LeUg/pT4lLgtavPf7updwwHpvFzxvOQBHYj2LZDMjUnBzgvIUSjRcf6oT5HzHFg==} 1028 | dependencies: 1029 | cssesc: 3.0.0 1030 | fastparse: 1.1.2 1031 | dev: true 1032 | 1033 | /css-to-react-native/3.2.0: 1034 | resolution: {integrity: sha512-e8RKaLXMOFii+02mOlqwjbD00KSEKqblnpO9e++1aXS1fPQOpS1YoqdVHBqPjHNoxeF2mimzVqawm2KCbEdtHQ==} 1035 | dependencies: 1036 | camelize: 1.0.1 1037 | css-color-keywords: 1.0.0 1038 | postcss-value-parser: 4.2.0 1039 | 1040 | /cssesc/3.0.0: 1041 | resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==} 1042 | engines: {node: '>=4'} 1043 | hasBin: true 1044 | dev: true 1045 | 1046 | /daisyui/2.51.4_j7yt3jd32cwenjqavrrga47yr4: 1047 | resolution: {integrity: sha512-TGYD2BQCduxkKbDALlaWWaUdi33tryUuO/MxxBtAmLJ9zKn04gF6xduMxbrAUesR4AFr6LZW187TqF2H5c1AoA==} 1048 | peerDependencies: 1049 | autoprefixer: ^10.0.2 1050 | postcss: ^8.1.6 1051 | dependencies: 1052 | autoprefixer: 10.4.14_postcss@8.4.21 1053 | color: 4.2.3 1054 | css-selector-tokenizer: 0.8.0 1055 | postcss: 8.4.21 1056 | postcss-js: 4.0.1_postcss@8.4.21 1057 | tailwindcss: 3.2.7_postcss@8.4.21 1058 | transitivePeerDependencies: 1059 | - ts-node 1060 | dev: true 1061 | 1062 | /debug/4.3.4: 1063 | resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} 1064 | engines: {node: '>=6.0'} 1065 | peerDependencies: 1066 | supports-color: '*' 1067 | peerDependenciesMeta: 1068 | supports-color: 1069 | optional: true 1070 | dependencies: 1071 | ms: 2.1.2 1072 | dev: true 1073 | 1074 | /deepmerge/4.3.1: 1075 | resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==} 1076 | engines: {node: '>=0.10.0'} 1077 | dev: true 1078 | 1079 | /defined/1.0.1: 1080 | resolution: {integrity: sha512-hsBd2qSVCRE+5PmNdHt1uzyrFu5d3RwmFDKzyNZMFq/EwDNJF7Ee5+D5oEKF0hU6LhtoUF1macFvOe4AskQC1Q==} 1081 | dev: true 1082 | 1083 | /delayed-stream/1.0.0: 1084 | resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} 1085 | engines: {node: '>=0.4.0'} 1086 | dev: true 1087 | 1088 | /delegates/1.0.0: 1089 | resolution: {integrity: sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==} 1090 | dev: true 1091 | 1092 | /detect-indent/6.1.0: 1093 | resolution: {integrity: sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==} 1094 | engines: {node: '>=8'} 1095 | dev: true 1096 | 1097 | /detect-libc/2.0.1: 1098 | resolution: {integrity: sha512-463v3ZeIrcWtdgIg6vI6XUncguvr2TnGl4SzDXinkt9mSLpBJKXT3mW6xT3VQdDN11+WVs29pgvivTc4Lp8v+w==} 1099 | engines: {node: '>=8'} 1100 | dev: true 1101 | 1102 | /detective/5.2.1: 1103 | resolution: {integrity: sha512-v9XE1zRnz1wRtgurGu0Bs8uHKFSTdteYZNbIPFVhUZ39L/S79ppMpdmVOZAnoz1jfEFodc48n6MX483Xo3t1yw==} 1104 | engines: {node: '>=0.8.0'} 1105 | hasBin: true 1106 | dependencies: 1107 | acorn-node: 1.8.2 1108 | defined: 1.0.1 1109 | minimist: 1.2.8 1110 | dev: true 1111 | 1112 | /devalue/4.3.0: 1113 | resolution: {integrity: sha512-n94yQo4LI3w7erwf84mhRUkUJfhLoCZiLyoOZ/QFsDbcWNZePrLwbQpvZBUG2TNxwV3VjCKPxkiiQA6pe3TrTA==} 1114 | dev: true 1115 | 1116 | /didyoumean/1.2.2: 1117 | resolution: {integrity: sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==} 1118 | dev: true 1119 | 1120 | /dlv/1.1.3: 1121 | resolution: {integrity: sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==} 1122 | dev: true 1123 | 1124 | /electron-to-chromium/1.4.332: 1125 | resolution: {integrity: sha512-c1Vbv5tuUlBFp0mb3mCIjw+REEsgthRgNE8BlbEDKmvzb8rxjcVki6OkQP83vLN34s0XCxpSkq7AZNep1a6xhw==} 1126 | dev: true 1127 | 1128 | /emoji-regex/10.2.1: 1129 | resolution: {integrity: sha512-97g6QgOk8zlDRdgq1WxwgTMgEWGVAQvB5Fdpgc1MkNy56la5SKP9GsMXKDOdqwn90/41a8yPwIGk1Y6WVbeMQA==} 1130 | 1131 | /emoji-regex/8.0.0: 1132 | resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} 1133 | dev: true 1134 | 1135 | /es6-promise/3.3.1: 1136 | resolution: {integrity: sha512-SOp9Phqvqn7jtEUxPWdWfWoLmyt2VaJ6MpvP9Comy1MceMXqE6bxvaTu4iaxpYYPzhny28Lc+M87/c2cPK6lDg==} 1137 | dev: true 1138 | 1139 | /esbuild/0.16.17: 1140 | resolution: {integrity: sha512-G8LEkV0XzDMNwXKgM0Jwu3nY3lSTwSGY6XbxM9cr9+s0T/qSV1q1JVPBGzm3dcjhCic9+emZDmMffkwgPeOeLg==} 1141 | engines: {node: '>=12'} 1142 | hasBin: true 1143 | requiresBuild: true 1144 | optionalDependencies: 1145 | '@esbuild/android-arm': 0.16.17 1146 | '@esbuild/android-arm64': 0.16.17 1147 | '@esbuild/android-x64': 0.16.17 1148 | '@esbuild/darwin-arm64': 0.16.17 1149 | '@esbuild/darwin-x64': 0.16.17 1150 | '@esbuild/freebsd-arm64': 0.16.17 1151 | '@esbuild/freebsd-x64': 0.16.17 1152 | '@esbuild/linux-arm': 0.16.17 1153 | '@esbuild/linux-arm64': 0.16.17 1154 | '@esbuild/linux-ia32': 0.16.17 1155 | '@esbuild/linux-loong64': 0.16.17 1156 | '@esbuild/linux-mips64el': 0.16.17 1157 | '@esbuild/linux-ppc64': 0.16.17 1158 | '@esbuild/linux-riscv64': 0.16.17 1159 | '@esbuild/linux-s390x': 0.16.17 1160 | '@esbuild/linux-x64': 0.16.17 1161 | '@esbuild/netbsd-x64': 0.16.17 1162 | '@esbuild/openbsd-x64': 0.16.17 1163 | '@esbuild/sunos-x64': 0.16.17 1164 | '@esbuild/win32-arm64': 0.16.17 1165 | '@esbuild/win32-ia32': 0.16.17 1166 | '@esbuild/win32-x64': 0.16.17 1167 | dev: true 1168 | 1169 | /esbuild/0.17.12: 1170 | resolution: {integrity: sha512-bX/zHl7Gn2CpQwcMtRogTTBf9l1nl+H6R8nUbjk+RuKqAE3+8FDulLA+pHvX7aA7Xe07Iwa+CWvy9I8Y2qqPKQ==} 1171 | engines: {node: '>=12'} 1172 | hasBin: true 1173 | requiresBuild: true 1174 | optionalDependencies: 1175 | '@esbuild/android-arm': 0.17.12 1176 | '@esbuild/android-arm64': 0.17.12 1177 | '@esbuild/android-x64': 0.17.12 1178 | '@esbuild/darwin-arm64': 0.17.12 1179 | '@esbuild/darwin-x64': 0.17.12 1180 | '@esbuild/freebsd-arm64': 0.17.12 1181 | '@esbuild/freebsd-x64': 0.17.12 1182 | '@esbuild/linux-arm': 0.17.12 1183 | '@esbuild/linux-arm64': 0.17.12 1184 | '@esbuild/linux-ia32': 0.17.12 1185 | '@esbuild/linux-loong64': 0.17.12 1186 | '@esbuild/linux-mips64el': 0.17.12 1187 | '@esbuild/linux-ppc64': 0.17.12 1188 | '@esbuild/linux-riscv64': 0.17.12 1189 | '@esbuild/linux-s390x': 0.17.12 1190 | '@esbuild/linux-x64': 0.17.12 1191 | '@esbuild/netbsd-x64': 0.17.12 1192 | '@esbuild/openbsd-x64': 0.17.12 1193 | '@esbuild/sunos-x64': 0.17.12 1194 | '@esbuild/win32-arm64': 0.17.12 1195 | '@esbuild/win32-ia32': 0.17.12 1196 | '@esbuild/win32-x64': 0.17.12 1197 | dev: true 1198 | 1199 | /escalade/3.1.1: 1200 | resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} 1201 | engines: {node: '>=6'} 1202 | dev: true 1203 | 1204 | /esm-env/1.0.0: 1205 | resolution: {integrity: sha512-Cf6VksWPsTuW01vU9Mk/3vRue91Zevka5SjyNf3nEpokFRuqt/KjUQoGAwq9qMmhpLTHmXzSIrFRw8zxWzmFBA==} 1206 | dev: true 1207 | 1208 | /estree-walker/2.0.2: 1209 | resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==} 1210 | dev: true 1211 | 1212 | /fast-glob/3.2.12: 1213 | resolution: {integrity: sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==} 1214 | engines: {node: '>=8.6.0'} 1215 | dependencies: 1216 | '@nodelib/fs.stat': 2.0.5 1217 | '@nodelib/fs.walk': 1.2.8 1218 | glob-parent: 5.1.2 1219 | merge2: 1.4.1 1220 | micromatch: 4.0.5 1221 | dev: true 1222 | 1223 | /fastparse/1.1.2: 1224 | resolution: {integrity: sha512-483XLLxTVIwWK3QTrMGRqUfUpoOs/0hbQrl2oz4J0pAcm3A3bu84wxTFqGqkJzewCLdME38xJLJAxBABfQT8sQ==} 1225 | dev: true 1226 | 1227 | /fastq/1.15.0: 1228 | resolution: {integrity: sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==} 1229 | dependencies: 1230 | reusify: 1.0.4 1231 | dev: true 1232 | 1233 | /fflate/0.7.4: 1234 | resolution: {integrity: sha512-5u2V/CDW15QM1XbbgS+0DfPxVB+jUKhWEKuuFuHncbk3tEEqzmoXL+2KyOFuKGqOnmdIy0/davWF1CkuwtibCw==} 1235 | 1236 | /file-uri-to-path/1.0.0: 1237 | resolution: {integrity: sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==} 1238 | dev: true 1239 | 1240 | /fill-range/7.0.1: 1241 | resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==} 1242 | engines: {node: '>=8'} 1243 | dependencies: 1244 | to-regex-range: 5.0.1 1245 | dev: true 1246 | 1247 | /follow-redirects/1.15.2: 1248 | resolution: {integrity: sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==} 1249 | engines: {node: '>=4.0'} 1250 | peerDependencies: 1251 | debug: '*' 1252 | peerDependenciesMeta: 1253 | debug: 1254 | optional: true 1255 | dev: true 1256 | 1257 | /form-data/4.0.0: 1258 | resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==} 1259 | engines: {node: '>= 6'} 1260 | dependencies: 1261 | asynckit: 0.4.0 1262 | combined-stream: 1.0.8 1263 | mime-types: 2.1.35 1264 | dev: true 1265 | 1266 | /fraction.js/4.2.0: 1267 | resolution: {integrity: sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==} 1268 | dev: true 1269 | 1270 | /fs-minipass/2.1.0: 1271 | resolution: {integrity: sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==} 1272 | engines: {node: '>= 8'} 1273 | dependencies: 1274 | minipass: 3.3.6 1275 | dev: true 1276 | 1277 | /fs.realpath/1.0.0: 1278 | resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} 1279 | dev: true 1280 | 1281 | /fsevents/2.3.2: 1282 | resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==} 1283 | engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} 1284 | os: [darwin] 1285 | requiresBuild: true 1286 | dev: true 1287 | optional: true 1288 | 1289 | /function-bind/1.1.1: 1290 | resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==} 1291 | dev: true 1292 | 1293 | /gauge/3.0.2: 1294 | resolution: {integrity: sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==} 1295 | engines: {node: '>=10'} 1296 | dependencies: 1297 | aproba: 2.0.0 1298 | color-support: 1.1.3 1299 | console-control-strings: 1.1.0 1300 | has-unicode: 2.0.1 1301 | object-assign: 4.1.1 1302 | signal-exit: 3.0.7 1303 | string-width: 4.2.3 1304 | strip-ansi: 6.0.1 1305 | wide-align: 1.1.5 1306 | dev: true 1307 | 1308 | /glob-parent/5.1.2: 1309 | resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} 1310 | engines: {node: '>= 6'} 1311 | dependencies: 1312 | is-glob: 4.0.3 1313 | dev: true 1314 | 1315 | /glob-parent/6.0.2: 1316 | resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} 1317 | engines: {node: '>=10.13.0'} 1318 | dependencies: 1319 | is-glob: 4.0.3 1320 | dev: true 1321 | 1322 | /glob/7.2.3: 1323 | resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} 1324 | dependencies: 1325 | fs.realpath: 1.0.0 1326 | inflight: 1.0.6 1327 | inherits: 2.0.4 1328 | minimatch: 3.1.2 1329 | once: 1.4.0 1330 | path-is-absolute: 1.0.1 1331 | dev: true 1332 | 1333 | /globalyzer/0.1.0: 1334 | resolution: {integrity: sha512-40oNTM9UfG6aBmuKxk/giHn5nQ8RVz/SS4Ir6zgzOv9/qC3kKZ9v4etGTcJbEl/NyVQH7FGU7d+X1egr57Md2Q==} 1335 | dev: true 1336 | 1337 | /globrex/0.1.2: 1338 | resolution: {integrity: sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==} 1339 | dev: true 1340 | 1341 | /graceful-fs/4.2.11: 1342 | resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} 1343 | dev: true 1344 | 1345 | /has-unicode/2.0.1: 1346 | resolution: {integrity: sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==} 1347 | dev: true 1348 | 1349 | /has/1.0.3: 1350 | resolution: {integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==} 1351 | engines: {node: '>= 0.4.0'} 1352 | dependencies: 1353 | function-bind: 1.1.1 1354 | dev: true 1355 | 1356 | /https-proxy-agent/5.0.1: 1357 | resolution: {integrity: sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==} 1358 | engines: {node: '>= 6'} 1359 | dependencies: 1360 | agent-base: 6.0.2 1361 | debug: 4.3.4 1362 | transitivePeerDependencies: 1363 | - supports-color 1364 | dev: true 1365 | 1366 | /import-fresh/3.3.0: 1367 | resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} 1368 | engines: {node: '>=6'} 1369 | dependencies: 1370 | parent-module: 1.0.1 1371 | resolve-from: 4.0.0 1372 | dev: true 1373 | 1374 | /import-meta-resolve/2.2.2: 1375 | resolution: {integrity: sha512-f8KcQ1D80V7RnqVm+/lirO9zkOxjGxhaTC1IPrBGd3MEfNgmNG67tSUO9gTi2F3Blr2Az6g1vocaxzkVnWl9MA==} 1376 | dev: true 1377 | 1378 | /inflight/1.0.6: 1379 | resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} 1380 | dependencies: 1381 | once: 1.4.0 1382 | wrappy: 1.0.2 1383 | dev: true 1384 | 1385 | /inherits/2.0.4: 1386 | resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} 1387 | dev: true 1388 | 1389 | /is-arrayish/0.3.2: 1390 | resolution: {integrity: sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==} 1391 | dev: true 1392 | 1393 | /is-binary-path/2.1.0: 1394 | resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} 1395 | engines: {node: '>=8'} 1396 | dependencies: 1397 | binary-extensions: 2.2.0 1398 | dev: true 1399 | 1400 | /is-core-module/2.11.0: 1401 | resolution: {integrity: sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==} 1402 | dependencies: 1403 | has: 1.0.3 1404 | dev: true 1405 | 1406 | /is-extglob/2.1.1: 1407 | resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} 1408 | engines: {node: '>=0.10.0'} 1409 | dev: true 1410 | 1411 | /is-fullwidth-code-point/3.0.0: 1412 | resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} 1413 | engines: {node: '>=8'} 1414 | dev: true 1415 | 1416 | /is-glob/4.0.3: 1417 | resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} 1418 | engines: {node: '>=0.10.0'} 1419 | dependencies: 1420 | is-extglob: 2.1.1 1421 | dev: true 1422 | 1423 | /is-number/7.0.0: 1424 | resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} 1425 | engines: {node: '>=0.12.0'} 1426 | dev: true 1427 | 1428 | /kleur/4.1.5: 1429 | resolution: {integrity: sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==} 1430 | engines: {node: '>=6'} 1431 | dev: true 1432 | 1433 | /lilconfig/2.1.0: 1434 | resolution: {integrity: sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==} 1435 | engines: {node: '>=10'} 1436 | dev: true 1437 | 1438 | /linebreak/1.1.0: 1439 | resolution: {integrity: sha512-MHp03UImeVhB7XZtjd0E4n6+3xr5Dq/9xI/5FptGk5FrbDR3zagPa2DS6U8ks/3HjbKWG9Q1M2ufOzxV2qLYSQ==} 1440 | dependencies: 1441 | base64-js: 0.0.8 1442 | unicode-trie: 2.0.0 1443 | 1444 | /lodash.castarray/4.4.0: 1445 | resolution: {integrity: sha512-aVx8ztPv7/2ULbArGJ2Y42bG1mEQ5mGjpdvrbJcJFU3TbYybe+QlLS4pst9zV52ymy2in1KpFPiZnAOATxD4+Q==} 1446 | dev: true 1447 | 1448 | /lodash.isplainobject/4.0.6: 1449 | resolution: {integrity: sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==} 1450 | dev: true 1451 | 1452 | /lodash.merge/4.6.2: 1453 | resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} 1454 | dev: true 1455 | 1456 | /lru-cache/6.0.0: 1457 | resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} 1458 | engines: {node: '>=10'} 1459 | dependencies: 1460 | yallist: 4.0.0 1461 | dev: true 1462 | 1463 | /magic-string/0.27.0: 1464 | resolution: {integrity: sha512-8UnnX2PeRAPZuN12svgR9j7M1uWMovg/CEnIwIG0LFkXSJJe4PdfUGiTGl8V9bsBHFUtfVINcSyYxd7q+kx9fA==} 1465 | engines: {node: '>=12'} 1466 | dependencies: 1467 | '@jridgewell/sourcemap-codec': 1.4.14 1468 | dev: true 1469 | 1470 | /magic-string/0.29.0: 1471 | resolution: {integrity: sha512-WcfidHrDjMY+eLjlU+8OvwREqHwpgCeKVBUpQ3OhYYuvfaYCUgcbuBzappNzZvg/v8onU3oQj+BYpkOJe9Iw4Q==} 1472 | engines: {node: '>=12'} 1473 | dependencies: 1474 | '@jridgewell/sourcemap-codec': 1.4.14 1475 | dev: true 1476 | 1477 | /magic-string/0.30.0: 1478 | resolution: {integrity: sha512-LA+31JYDJLs82r2ScLrlz1GjSgu66ZV518eyWT+S8VhyQn/JL0u9MeBOvQMGYiPk1DBiSN9DDMOcXvigJZaViQ==} 1479 | engines: {node: '>=12'} 1480 | dependencies: 1481 | '@jridgewell/sourcemap-codec': 1.4.14 1482 | dev: true 1483 | 1484 | /make-dir/3.1.0: 1485 | resolution: {integrity: sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==} 1486 | engines: {node: '>=8'} 1487 | dependencies: 1488 | semver: 6.3.0 1489 | dev: true 1490 | 1491 | /merge2/1.4.1: 1492 | resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} 1493 | engines: {node: '>= 8'} 1494 | dev: true 1495 | 1496 | /micromatch/4.0.5: 1497 | resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} 1498 | engines: {node: '>=8.6'} 1499 | dependencies: 1500 | braces: 3.0.2 1501 | picomatch: 2.3.1 1502 | dev: true 1503 | 1504 | /mime-db/1.25.0: 1505 | resolution: {integrity: sha512-5k547tI4Cy+Lddr/hdjNbBEWBwSl8EBc5aSdKvedav8DReADgWJzcYiktaRIw3GtGC1jjwldXtTzvqJZmtvC7w==} 1506 | engines: {node: '>= 0.6'} 1507 | dev: true 1508 | 1509 | /mime-db/1.52.0: 1510 | resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} 1511 | engines: {node: '>= 0.6'} 1512 | dev: true 1513 | 1514 | /mime-types/2.1.13: 1515 | resolution: {integrity: sha512-ryBDp1Z/6X90UvjUK3RksH0IBPM137T7cmg4OgD5wQBojlAiUwuok0QeELkim/72EtcYuNlmbkrcGuxj3Kl0YQ==} 1516 | engines: {node: '>= 0.6'} 1517 | dependencies: 1518 | mime-db: 1.25.0 1519 | dev: true 1520 | 1521 | /mime-types/2.1.35: 1522 | resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} 1523 | engines: {node: '>= 0.6'} 1524 | dependencies: 1525 | mime-db: 1.52.0 1526 | dev: true 1527 | 1528 | /mime/3.0.0: 1529 | resolution: {integrity: sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==} 1530 | engines: {node: '>=10.0.0'} 1531 | hasBin: true 1532 | dev: true 1533 | 1534 | /min-indent/1.0.1: 1535 | resolution: {integrity: sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==} 1536 | engines: {node: '>=4'} 1537 | dev: true 1538 | 1539 | /minimatch/3.1.2: 1540 | resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} 1541 | dependencies: 1542 | brace-expansion: 1.1.11 1543 | dev: true 1544 | 1545 | /minimist/1.2.8: 1546 | resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} 1547 | dev: true 1548 | 1549 | /minipass/3.3.6: 1550 | resolution: {integrity: sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==} 1551 | engines: {node: '>=8'} 1552 | dependencies: 1553 | yallist: 4.0.0 1554 | dev: true 1555 | 1556 | /minipass/4.2.5: 1557 | resolution: {integrity: sha512-+yQl7SX3bIT83Lhb4BVorMAHVuqsskxRdlmO9kTpyukp8vsm2Sn/fUOV9xlnG8/a5JsypJzap21lz/y3FBMJ8Q==} 1558 | engines: {node: '>=8'} 1559 | dev: true 1560 | 1561 | /minizlib/2.1.2: 1562 | resolution: {integrity: sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==} 1563 | engines: {node: '>= 8'} 1564 | dependencies: 1565 | minipass: 3.3.6 1566 | yallist: 4.0.0 1567 | dev: true 1568 | 1569 | /mkdirp/0.5.6: 1570 | resolution: {integrity: sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==} 1571 | hasBin: true 1572 | dependencies: 1573 | minimist: 1.2.8 1574 | dev: true 1575 | 1576 | /mkdirp/1.0.4: 1577 | resolution: {integrity: sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==} 1578 | engines: {node: '>=10'} 1579 | hasBin: true 1580 | dev: true 1581 | 1582 | /mri/1.2.0: 1583 | resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==} 1584 | engines: {node: '>=4'} 1585 | dev: true 1586 | 1587 | /mrmime/1.0.1: 1588 | resolution: {integrity: sha512-hzzEagAgDyoU1Q6yg5uI+AorQgdvMCur3FcKf7NhMKWsaYg+RnbTyHRa/9IlLF9rf455MOCtcqqrQQ83pPP7Uw==} 1589 | engines: {node: '>=10'} 1590 | dev: true 1591 | 1592 | /ms/2.1.2: 1593 | resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} 1594 | dev: true 1595 | 1596 | /nanoid/3.3.4: 1597 | resolution: {integrity: sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==} 1598 | engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} 1599 | hasBin: true 1600 | dev: true 1601 | 1602 | /node-fetch/2.6.9: 1603 | resolution: {integrity: sha512-DJm/CJkZkRjKKj4Zi4BsKVZh3ValV5IR5s7LVZnW+6YMh0W1BfNA8XSs6DLMGYlId5F3KnA70uu2qepcR08Qqg==} 1604 | engines: {node: 4.x || >=6.0.0} 1605 | peerDependencies: 1606 | encoding: ^0.1.0 1607 | peerDependenciesMeta: 1608 | encoding: 1609 | optional: true 1610 | dependencies: 1611 | whatwg-url: 5.0.0 1612 | dev: true 1613 | 1614 | /node-gyp-build/4.6.0: 1615 | resolution: {integrity: sha512-NTZVKn9IylLwUzaKjkas1e4u2DLNcV4rdYagA4PWdPwW87Bi7z+BznyKSRwS/761tV/lzCGXplWsiaMjLqP2zQ==} 1616 | hasBin: true 1617 | dev: true 1618 | 1619 | /node-releases/2.0.10: 1620 | resolution: {integrity: sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w==} 1621 | dev: true 1622 | 1623 | /nopt/5.0.0: 1624 | resolution: {integrity: sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==} 1625 | engines: {node: '>=6'} 1626 | hasBin: true 1627 | dependencies: 1628 | abbrev: 1.1.1 1629 | dev: true 1630 | 1631 | /normalize-path/3.0.0: 1632 | resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} 1633 | engines: {node: '>=0.10.0'} 1634 | dev: true 1635 | 1636 | /normalize-range/0.1.2: 1637 | resolution: {integrity: sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==} 1638 | engines: {node: '>=0.10.0'} 1639 | dev: true 1640 | 1641 | /npmlog/5.0.1: 1642 | resolution: {integrity: sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==} 1643 | dependencies: 1644 | are-we-there-yet: 2.0.0 1645 | console-control-strings: 1.1.0 1646 | gauge: 3.0.2 1647 | set-blocking: 2.0.0 1648 | dev: true 1649 | 1650 | /object-assign/4.1.1: 1651 | resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} 1652 | engines: {node: '>=0.10.0'} 1653 | dev: true 1654 | 1655 | /object-hash/3.0.0: 1656 | resolution: {integrity: sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==} 1657 | engines: {node: '>= 6'} 1658 | dev: true 1659 | 1660 | /once/1.4.0: 1661 | resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} 1662 | dependencies: 1663 | wrappy: 1.0.2 1664 | dev: true 1665 | 1666 | /pako/0.2.9: 1667 | resolution: {integrity: sha512-NUcwaKxUxWrZLpDG+z/xZaCgQITkA/Dv4V/T6bw7VON6l1Xz/VnrBqrYjZQ12TamKHzITTfOEIYUj48y2KXImA==} 1668 | 1669 | /parent-module/1.0.1: 1670 | resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} 1671 | engines: {node: '>=6'} 1672 | dependencies: 1673 | callsites: 3.1.0 1674 | dev: true 1675 | 1676 | /path-is-absolute/1.0.1: 1677 | resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} 1678 | engines: {node: '>=0.10.0'} 1679 | dev: true 1680 | 1681 | /path-parse/1.0.7: 1682 | resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} 1683 | dev: true 1684 | 1685 | /picocolors/1.0.0: 1686 | resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==} 1687 | dev: true 1688 | 1689 | /picomatch/2.3.1: 1690 | resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} 1691 | engines: {node: '>=8.6'} 1692 | dev: true 1693 | 1694 | /pify/2.3.0: 1695 | resolution: {integrity: sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==} 1696 | engines: {node: '>=0.10.0'} 1697 | dev: true 1698 | 1699 | /postcss-import/14.1.0_postcss@8.4.21: 1700 | resolution: {integrity: sha512-flwI+Vgm4SElObFVPpTIT7SU7R3qk2L7PyduMcokiaVKuWv9d/U+Gm/QAd8NDLuykTWTkcrjOeD2Pp1rMeBTGw==} 1701 | engines: {node: '>=10.0.0'} 1702 | peerDependencies: 1703 | postcss: ^8.0.0 1704 | dependencies: 1705 | postcss: 8.4.21 1706 | postcss-value-parser: 4.2.0 1707 | read-cache: 1.0.0 1708 | resolve: 1.22.1 1709 | dev: true 1710 | 1711 | /postcss-js/4.0.1_postcss@8.4.21: 1712 | resolution: {integrity: sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==} 1713 | engines: {node: ^12 || ^14 || >= 16} 1714 | peerDependencies: 1715 | postcss: ^8.4.21 1716 | dependencies: 1717 | camelcase-css: 2.0.1 1718 | postcss: 8.4.21 1719 | dev: true 1720 | 1721 | /postcss-load-config/3.1.4_postcss@8.4.21: 1722 | resolution: {integrity: sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==} 1723 | engines: {node: '>= 10'} 1724 | peerDependencies: 1725 | postcss: '>=8.0.9' 1726 | ts-node: '>=9.0.0' 1727 | peerDependenciesMeta: 1728 | postcss: 1729 | optional: true 1730 | ts-node: 1731 | optional: true 1732 | dependencies: 1733 | lilconfig: 2.1.0 1734 | postcss: 8.4.21 1735 | yaml: 1.10.2 1736 | dev: true 1737 | 1738 | /postcss-nested/6.0.0_postcss@8.4.21: 1739 | resolution: {integrity: sha512-0DkamqrPcmkBDsLn+vQDIrtkSbNkv5AD/M322ySo9kqFkCIYklym2xEmWkwo+Y3/qZo34tzEPNUw4y7yMCdv5w==} 1740 | engines: {node: '>=12.0'} 1741 | peerDependencies: 1742 | postcss: ^8.2.14 1743 | dependencies: 1744 | postcss: 8.4.21 1745 | postcss-selector-parser: 6.0.11 1746 | dev: true 1747 | 1748 | /postcss-selector-parser/6.0.10: 1749 | resolution: {integrity: sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==} 1750 | engines: {node: '>=4'} 1751 | dependencies: 1752 | cssesc: 3.0.0 1753 | util-deprecate: 1.0.2 1754 | dev: true 1755 | 1756 | /postcss-selector-parser/6.0.11: 1757 | resolution: {integrity: sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g==} 1758 | engines: {node: '>=4'} 1759 | dependencies: 1760 | cssesc: 3.0.0 1761 | util-deprecate: 1.0.2 1762 | dev: true 1763 | 1764 | /postcss-value-parser/4.2.0: 1765 | resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} 1766 | 1767 | /postcss/8.4.21: 1768 | resolution: {integrity: sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==} 1769 | engines: {node: ^10 || ^12 || >=14} 1770 | dependencies: 1771 | nanoid: 3.3.4 1772 | picocolors: 1.0.0 1773 | source-map-js: 1.0.2 1774 | dev: true 1775 | 1776 | /prettier-plugin-svelte/2.9.0_k23gl6auqwrxgr3e6o2bajswou: 1777 | resolution: {integrity: sha512-3doBi5NO4IVgaNPtwewvrgPpqAcvNv0NwJNflr76PIGgi9nf1oguQV1Hpdm9TI2ALIQVn/9iIwLpBO5UcD2Jiw==} 1778 | peerDependencies: 1779 | prettier: ^1.16.4 || ^2.0.0 1780 | svelte: ^3.2.0 1781 | dependencies: 1782 | prettier: 2.8.4 1783 | svelte: 3.57.0 1784 | dev: true 1785 | 1786 | /prettier/2.8.4: 1787 | resolution: {integrity: sha512-vIS4Rlc2FNh0BySk3Wkd6xmwxB0FpOndW5fisM5H8hsZSxU2VWVB5CWIkIjWvrHjIhxk2g3bfMKM87zNTrZddw==} 1788 | engines: {node: '>=10.13.0'} 1789 | hasBin: true 1790 | dev: true 1791 | 1792 | /proxy-from-env/1.1.0: 1793 | resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==} 1794 | dev: true 1795 | 1796 | /queue-microtask/1.2.3: 1797 | resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} 1798 | dev: true 1799 | 1800 | /quick-lru/5.1.1: 1801 | resolution: {integrity: sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==} 1802 | engines: {node: '>=10'} 1803 | dev: true 1804 | 1805 | /read-cache/1.0.0: 1806 | resolution: {integrity: sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==} 1807 | dependencies: 1808 | pify: 2.3.0 1809 | dev: true 1810 | 1811 | /readable-stream/3.6.2: 1812 | resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==} 1813 | engines: {node: '>= 6'} 1814 | dependencies: 1815 | inherits: 2.0.4 1816 | string_decoder: 1.3.0 1817 | util-deprecate: 1.0.2 1818 | dev: true 1819 | 1820 | /readdirp/3.6.0: 1821 | resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} 1822 | engines: {node: '>=8.10.0'} 1823 | dependencies: 1824 | picomatch: 2.3.1 1825 | dev: true 1826 | 1827 | /resolve-from/4.0.0: 1828 | resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} 1829 | engines: {node: '>=4'} 1830 | dev: true 1831 | 1832 | /resolve-from/5.0.0: 1833 | resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==} 1834 | engines: {node: '>=8'} 1835 | dev: true 1836 | 1837 | /resolve/1.22.1: 1838 | resolution: {integrity: sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==} 1839 | hasBin: true 1840 | dependencies: 1841 | is-core-module: 2.11.0 1842 | path-parse: 1.0.7 1843 | supports-preserve-symlinks-flag: 1.0.0 1844 | dev: true 1845 | 1846 | /reusify/1.0.4: 1847 | resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} 1848 | engines: {iojs: '>=1.0.0', node: '>=0.10.0'} 1849 | dev: true 1850 | 1851 | /rimraf/2.7.1: 1852 | resolution: {integrity: sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==} 1853 | hasBin: true 1854 | dependencies: 1855 | glob: 7.2.3 1856 | dev: true 1857 | 1858 | /rimraf/3.0.2: 1859 | resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} 1860 | hasBin: true 1861 | dependencies: 1862 | glob: 7.2.3 1863 | dev: true 1864 | 1865 | /rollup/3.19.1: 1866 | resolution: {integrity: sha512-lAbrdN7neYCg/8WaoWn/ckzCtz+jr70GFfYdlf50OF7387HTg+wiuiqJRFYawwSPpqfqDNYqK7smY/ks2iAudg==} 1867 | engines: {node: '>=14.18.0', npm: '>=8.0.0'} 1868 | hasBin: true 1869 | optionalDependencies: 1870 | fsevents: 2.3.2 1871 | dev: true 1872 | 1873 | /rss/1.2.2: 1874 | resolution: {integrity: sha512-xUhRTgslHeCBeHAqaWSbOYTydN2f0tAzNXvzh3stjz7QDhQMzdgHf3pfgNIngeytQflrFPfy6axHilTETr6gDg==} 1875 | dependencies: 1876 | mime-types: 2.1.13 1877 | xml: 1.0.1 1878 | dev: true 1879 | 1880 | /run-parallel/1.2.0: 1881 | resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} 1882 | dependencies: 1883 | queue-microtask: 1.2.3 1884 | dev: true 1885 | 1886 | /sade/1.8.1: 1887 | resolution: {integrity: sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A==} 1888 | engines: {node: '>=6'} 1889 | dependencies: 1890 | mri: 1.2.0 1891 | dev: true 1892 | 1893 | /safe-buffer/5.2.1: 1894 | resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} 1895 | dev: true 1896 | 1897 | /sander/0.5.1: 1898 | resolution: {integrity: sha512-3lVqBir7WuKDHGrKRDn/1Ye3kwpXaDOMsiRP1wd6wpZW56gJhsbp5RqQpA6JG/P+pkXizygnr1dKR8vzWaVsfA==} 1899 | dependencies: 1900 | es6-promise: 3.3.1 1901 | graceful-fs: 4.2.11 1902 | mkdirp: 0.5.6 1903 | rimraf: 2.7.1 1904 | dev: true 1905 | 1906 | /satori/0.4.3: 1907 | resolution: {integrity: sha512-gGiXXD52Rk0vkknf0ntf7Bmn0BzoMp9bU/wVdQiUFTf1vRLpxixlsMlT4hP6oqF+Z7sb98+dNtLGJ3ZVVPDyrg==} 1908 | engines: {node: '>=16'} 1909 | dependencies: 1910 | '@shuding/opentype.js': 1.4.0-beta.0 1911 | css-background-parser: 0.1.0 1912 | css-box-shadow: 1.0.0-3 1913 | css-to-react-native: 3.2.0 1914 | emoji-regex: 10.2.1 1915 | linebreak: 1.1.0 1916 | postcss-value-parser: 4.2.0 1917 | yoga-wasm-web: 0.3.3 1918 | 1919 | /semver/6.3.0: 1920 | resolution: {integrity: sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==} 1921 | hasBin: true 1922 | dev: true 1923 | 1924 | /semver/7.3.8: 1925 | resolution: {integrity: sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==} 1926 | engines: {node: '>=10'} 1927 | hasBin: true 1928 | dependencies: 1929 | lru-cache: 6.0.0 1930 | dev: true 1931 | 1932 | /set-blocking/2.0.0: 1933 | resolution: {integrity: sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==} 1934 | dev: true 1935 | 1936 | /set-cookie-parser/2.5.1: 1937 | resolution: {integrity: sha512-1jeBGaKNGdEq4FgIrORu/N570dwoPYio8lSoYLWmX7sQ//0JY08Xh9o5pBcgmHQ/MbsYp/aZnOe1s1lIsbLprQ==} 1938 | dev: true 1939 | 1940 | /signal-exit/3.0.7: 1941 | resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} 1942 | dev: true 1943 | 1944 | /simple-swizzle/0.2.2: 1945 | resolution: {integrity: sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==} 1946 | dependencies: 1947 | is-arrayish: 0.3.2 1948 | dev: true 1949 | 1950 | /sirv/2.0.2: 1951 | resolution: {integrity: sha512-4Qog6aE29nIjAOKe/wowFTxOdmbEZKb+3tsLljaBRzJwtqto0BChD2zzH0LhgCSXiI+V7X+Y45v14wBZQ1TK3w==} 1952 | engines: {node: '>= 10'} 1953 | dependencies: 1954 | '@polka/url': 1.0.0-next.21 1955 | mrmime: 1.0.1 1956 | totalist: 3.0.0 1957 | dev: true 1958 | 1959 | /sorcery/0.11.0: 1960 | resolution: {integrity: sha512-J69LQ22xrQB1cIFJhPfgtLuI6BpWRiWu1Y3vSsIwK/eAScqJxd/+CJlUuHQRdX2C9NGFamq+KqNywGgaThwfHw==} 1961 | hasBin: true 1962 | dependencies: 1963 | '@jridgewell/sourcemap-codec': 1.4.14 1964 | buffer-crc32: 0.2.13 1965 | minimist: 1.2.8 1966 | sander: 0.5.1 1967 | dev: true 1968 | 1969 | /source-map-js/1.0.2: 1970 | resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==} 1971 | engines: {node: '>=0.10.0'} 1972 | dev: true 1973 | 1974 | /streamsearch/1.1.0: 1975 | resolution: {integrity: sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==} 1976 | engines: {node: '>=10.0.0'} 1977 | dev: true 1978 | 1979 | /string-width/4.2.3: 1980 | resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} 1981 | engines: {node: '>=8'} 1982 | dependencies: 1983 | emoji-regex: 8.0.0 1984 | is-fullwidth-code-point: 3.0.0 1985 | strip-ansi: 6.0.1 1986 | dev: true 1987 | 1988 | /string.prototype.codepointat/0.2.1: 1989 | resolution: {integrity: sha512-2cBVCj6I4IOvEnjgO/hWqXjqBGsY+zwPmHl12Srk9IXSZ56Jwwmy+66XO5Iut/oQVR7t5ihYdLB0GMa4alEUcg==} 1990 | 1991 | /string_decoder/1.3.0: 1992 | resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==} 1993 | dependencies: 1994 | safe-buffer: 5.2.1 1995 | dev: true 1996 | 1997 | /strip-ansi/6.0.1: 1998 | resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} 1999 | engines: {node: '>=8'} 2000 | dependencies: 2001 | ansi-regex: 5.0.1 2002 | dev: true 2003 | 2004 | /strip-indent/3.0.0: 2005 | resolution: {integrity: sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==} 2006 | engines: {node: '>=8'} 2007 | dependencies: 2008 | min-indent: 1.0.1 2009 | dev: true 2010 | 2011 | /supports-preserve-symlinks-flag/1.0.0: 2012 | resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} 2013 | engines: {node: '>= 0.4'} 2014 | dev: true 2015 | 2016 | /svelte-action-balancer/1.0.4: 2017 | resolution: {integrity: sha512-QEJ/UJ576/wt+Sr3Uhswg/6k1s98034QZQBbO3WuNeyPYKa+9w2z/W5SFlusdAi8H7IF+s8BaMptEsUZINfxbw==} 2018 | dev: true 2019 | 2020 | /svelte-check/3.1.4_sd5d5bwhwct4qrvp7ra4wv5wou: 2021 | resolution: {integrity: sha512-25Lb46ZS4IK/XpBMe4IBMrtYf23V8alqBX+szXoccb7uM0D2Wqq5rMRzYBONZnFVuU1bQG3R50lyIT5eRewv2g==} 2022 | hasBin: true 2023 | peerDependencies: 2024 | svelte: ^3.55.0 2025 | dependencies: 2026 | '@jridgewell/trace-mapping': 0.3.17 2027 | chokidar: 3.5.3 2028 | fast-glob: 3.2.12 2029 | import-fresh: 3.3.0 2030 | picocolors: 1.0.0 2031 | sade: 1.8.1 2032 | svelte: 3.57.0 2033 | svelte-preprocess: 5.0.3_ybrbwhhu54cxvzb5hyvixtn33q 2034 | typescript: 4.9.5 2035 | transitivePeerDependencies: 2036 | - '@babel/core' 2037 | - coffeescript 2038 | - less 2039 | - postcss 2040 | - postcss-load-config 2041 | - pug 2042 | - sass 2043 | - stylus 2044 | - sugarss 2045 | dev: true 2046 | 2047 | /svelte-hmr/0.15.1_svelte@3.57.0: 2048 | resolution: {integrity: sha512-BiKB4RZ8YSwRKCNVdNxK/GfY+r4Kjgp9jCLEy0DuqAKfmQtpL38cQK3afdpjw4sqSs4PLi3jIPJIFp259NkZtA==} 2049 | engines: {node: ^12.20 || ^14.13.1 || >= 16} 2050 | peerDependencies: 2051 | svelte: '>=3.19.0' 2052 | dependencies: 2053 | svelte: 3.57.0 2054 | dev: true 2055 | 2056 | /svelte-preprocess/5.0.3_ybrbwhhu54cxvzb5hyvixtn33q: 2057 | resolution: {integrity: sha512-GrHF1rusdJVbOZOwgPWtpqmaexkydznKzy5qIC2FabgpFyKN57bjMUUUqPRfbBXK5igiEWn1uO/DXsa2vJ5VHA==} 2058 | engines: {node: '>= 14.10.0'} 2059 | requiresBuild: true 2060 | peerDependencies: 2061 | '@babel/core': ^7.10.2 2062 | coffeescript: ^2.5.1 2063 | less: ^3.11.3 || ^4.0.0 2064 | postcss: ^7 || ^8 2065 | postcss-load-config: ^2.1.0 || ^3.0.0 || ^4.0.0 2066 | pug: ^3.0.0 2067 | sass: ^1.26.8 2068 | stylus: ^0.55.0 2069 | sugarss: ^2.0.0 || ^3.0.0 || ^4.0.0 2070 | svelte: ^3.23.0 2071 | typescript: '>=3.9.5 || ^4.0.0 || ^5.0.0' 2072 | peerDependenciesMeta: 2073 | '@babel/core': 2074 | optional: true 2075 | coffeescript: 2076 | optional: true 2077 | less: 2078 | optional: true 2079 | postcss: 2080 | optional: true 2081 | postcss-load-config: 2082 | optional: true 2083 | pug: 2084 | optional: true 2085 | sass: 2086 | optional: true 2087 | stylus: 2088 | optional: true 2089 | sugarss: 2090 | optional: true 2091 | typescript: 2092 | optional: true 2093 | dependencies: 2094 | '@types/pug': 2.0.6 2095 | detect-indent: 6.1.0 2096 | magic-string: 0.27.0 2097 | postcss: 8.4.21 2098 | sorcery: 0.11.0 2099 | strip-indent: 3.0.0 2100 | svelte: 3.57.0 2101 | typescript: 4.9.5 2102 | dev: true 2103 | 2104 | /svelte/3.57.0: 2105 | resolution: {integrity: sha512-WMXEvF+RtAaclw0t3bPDTUe19pplMlfyKDsixbHQYgCWi9+O9VN0kXU1OppzrB9gPAvz4NALuoca2LfW2bOjTQ==} 2106 | engines: {node: '>= 8'} 2107 | dev: true 2108 | 2109 | /tailwindcss/3.2.7_postcss@8.4.21: 2110 | resolution: {integrity: sha512-B6DLqJzc21x7wntlH/GsZwEXTBttVSl1FtCzC8WP4oBc/NKef7kaax5jeihkkCEWc831/5NDJ9gRNDK6NEioQQ==} 2111 | engines: {node: '>=12.13.0'} 2112 | hasBin: true 2113 | peerDependencies: 2114 | postcss: ^8.0.9 2115 | dependencies: 2116 | arg: 5.0.2 2117 | chokidar: 3.5.3 2118 | color-name: 1.1.4 2119 | detective: 5.2.1 2120 | didyoumean: 1.2.2 2121 | dlv: 1.1.3 2122 | fast-glob: 3.2.12 2123 | glob-parent: 6.0.2 2124 | is-glob: 4.0.3 2125 | lilconfig: 2.1.0 2126 | micromatch: 4.0.5 2127 | normalize-path: 3.0.0 2128 | object-hash: 3.0.0 2129 | picocolors: 1.0.0 2130 | postcss: 8.4.21 2131 | postcss-import: 14.1.0_postcss@8.4.21 2132 | postcss-js: 4.0.1_postcss@8.4.21 2133 | postcss-load-config: 3.1.4_postcss@8.4.21 2134 | postcss-nested: 6.0.0_postcss@8.4.21 2135 | postcss-selector-parser: 6.0.11 2136 | postcss-value-parser: 4.2.0 2137 | quick-lru: 5.1.1 2138 | resolve: 1.22.1 2139 | transitivePeerDependencies: 2140 | - ts-node 2141 | dev: true 2142 | 2143 | /tar/6.1.13: 2144 | resolution: {integrity: sha512-jdIBIN6LTIe2jqzay/2vtYLlBHa3JF42ot3h1dW8Q0PaAG4v8rm0cvpVePtau5C6OKXGGcgO9q2AMNSWxiLqKw==} 2145 | engines: {node: '>=10'} 2146 | dependencies: 2147 | chownr: 2.0.0 2148 | fs-minipass: 2.1.0 2149 | minipass: 4.2.5 2150 | minizlib: 2.1.2 2151 | mkdirp: 1.0.4 2152 | yallist: 4.0.0 2153 | dev: true 2154 | 2155 | /tiny-glob/0.2.9: 2156 | resolution: {integrity: sha512-g/55ssRPUjShh+xkfx9UPDXqhckHEsHr4Vd9zX55oSdGZc/MD0m3sferOkwWtp98bv+kcVfEHtRJgBVJzelrzg==} 2157 | dependencies: 2158 | globalyzer: 0.1.0 2159 | globrex: 0.1.2 2160 | dev: true 2161 | 2162 | /tiny-inflate/1.0.3: 2163 | resolution: {integrity: sha512-pkY1fj1cKHb2seWDy0B16HeWyczlJA9/WW3u3c4z/NiWDsO3DOU5D7nhTLE9CF0yXv/QZFY7sEJmj24dK+Rrqw==} 2164 | 2165 | /to-regex-range/5.0.1: 2166 | resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} 2167 | engines: {node: '>=8.0'} 2168 | dependencies: 2169 | is-number: 7.0.0 2170 | dev: true 2171 | 2172 | /totalist/3.0.0: 2173 | resolution: {integrity: sha512-eM+pCBxXO/njtF7vdFsHuqb+ElbxqtI4r5EAvk6grfAFyJ6IvWlSkfZ5T9ozC6xWw3Fj1fGoSmrl0gUs46JVIw==} 2174 | engines: {node: '>=6'} 2175 | dev: true 2176 | 2177 | /tr46/0.0.3: 2178 | resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} 2179 | dev: true 2180 | 2181 | /tslib/2.5.0: 2182 | resolution: {integrity: sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==} 2183 | dev: true 2184 | 2185 | /typescript/4.9.5: 2186 | resolution: {integrity: sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==} 2187 | engines: {node: '>=4.2.0'} 2188 | hasBin: true 2189 | dev: true 2190 | 2191 | /undici/5.21.0: 2192 | resolution: {integrity: sha512-HOjK8l6a57b2ZGXOcUsI5NLfoTrfmbOl90ixJDl0AEFG4wgHNDQxtZy15/ZQp7HhjkpaGlp/eneMgtsu1dIlUA==} 2193 | engines: {node: '>=12.18'} 2194 | dependencies: 2195 | busboy: 1.6.0 2196 | dev: true 2197 | 2198 | /unicode-trie/2.0.0: 2199 | resolution: {integrity: sha512-x7bc76x0bm4prf1VLg79uhAzKw8DVboClSN5VxJuQ+LKDOVEW9CdH+VY7SP+vX7xCYQqzzgQpFqz15zeLvAtZQ==} 2200 | dependencies: 2201 | pako: 0.2.9 2202 | tiny-inflate: 1.0.3 2203 | 2204 | /update-browserslist-db/1.0.10_browserslist@4.21.5: 2205 | resolution: {integrity: sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==} 2206 | hasBin: true 2207 | peerDependencies: 2208 | browserslist: '>= 4.21.0' 2209 | dependencies: 2210 | browserslist: 4.21.5 2211 | escalade: 3.1.1 2212 | picocolors: 1.0.0 2213 | dev: true 2214 | 2215 | /util-deprecate/1.0.2: 2216 | resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} 2217 | dev: true 2218 | 2219 | /vite/4.2.0: 2220 | resolution: {integrity: sha512-AbDTyzzwuKoRtMIRLGNxhLRuv1FpRgdIw+1y6AQG73Q5+vtecmvzKo/yk8X/vrHDpETRTx01ABijqUHIzBXi0g==} 2221 | engines: {node: ^14.18.0 || >=16.0.0} 2222 | hasBin: true 2223 | peerDependencies: 2224 | '@types/node': '>= 14' 2225 | less: '*' 2226 | sass: '*' 2227 | stylus: '*' 2228 | sugarss: '*' 2229 | terser: ^5.4.0 2230 | peerDependenciesMeta: 2231 | '@types/node': 2232 | optional: true 2233 | less: 2234 | optional: true 2235 | sass: 2236 | optional: true 2237 | stylus: 2238 | optional: true 2239 | sugarss: 2240 | optional: true 2241 | terser: 2242 | optional: true 2243 | dependencies: 2244 | esbuild: 0.17.12 2245 | postcss: 8.4.21 2246 | resolve: 1.22.1 2247 | rollup: 3.19.1 2248 | optionalDependencies: 2249 | fsevents: 2.3.2 2250 | dev: true 2251 | 2252 | /vitefu/0.2.4_vite@4.2.0: 2253 | resolution: {integrity: sha512-fanAXjSaf9xXtOOeno8wZXIhgia+CZury481LsDaV++lSvcU2R9Ch2bPh3PYFyoHW+w9LqAeYRISVQjUIew14g==} 2254 | peerDependencies: 2255 | vite: ^3.0.0 || ^4.0.0 2256 | peerDependenciesMeta: 2257 | vite: 2258 | optional: true 2259 | dependencies: 2260 | vite: 4.2.0 2261 | dev: true 2262 | 2263 | /webidl-conversions/3.0.1: 2264 | resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} 2265 | dev: true 2266 | 2267 | /whatwg-url/5.0.0: 2268 | resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==} 2269 | dependencies: 2270 | tr46: 0.0.3 2271 | webidl-conversions: 3.0.1 2272 | dev: true 2273 | 2274 | /wide-align/1.1.5: 2275 | resolution: {integrity: sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==} 2276 | dependencies: 2277 | string-width: 4.2.3 2278 | dev: true 2279 | 2280 | /wrappy/1.0.2: 2281 | resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} 2282 | dev: true 2283 | 2284 | /xml/1.0.1: 2285 | resolution: {integrity: sha512-huCv9IH9Tcf95zuYCsQraZtWnJvBtLVE0QHMOs8bWyZAFZNDcYjsPq1nEx8jKA9y+Beo9v+7OBPRisQTjinQMw==} 2286 | dev: true 2287 | 2288 | /xtend/4.0.2: 2289 | resolution: {integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==} 2290 | engines: {node: '>=0.4'} 2291 | dev: true 2292 | 2293 | /yallist/4.0.0: 2294 | resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} 2295 | dev: true 2296 | 2297 | /yaml/1.10.2: 2298 | resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==} 2299 | engines: {node: '>= 6'} 2300 | dev: true 2301 | 2302 | /yoga-wasm-web/0.3.3: 2303 | resolution: {integrity: sha512-N+d4UJSJbt/R3wqY7Coqs5pcV0aUj2j9IaQ3rNj9bVCLld8tTGKRa2USARjnvZJWVx1NDmQev8EknoczaOQDOA==} 2304 | -------------------------------------------------------------------------------- /postcss.config.cjs: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | plugins: { 3 | tailwindcss: {}, 4 | autoprefixer: {} 5 | } 6 | }; 7 | -------------------------------------------------------------------------------- /src/app.css: -------------------------------------------------------------------------------- 1 | @tailwind base; 2 | @tailwind components; 3 | @tailwind utilities; 4 | 5 | .js-fullscreen-code-action { 6 | @apply hidden; 7 | } 8 | 9 | .article-body-image-wrapper { 10 | @apply rounded-3xl; 11 | } 12 | 13 | .table-of-contents { 14 | z-index: 1; 15 | position: fixed; 16 | left: calc(50% + 400px); 17 | top: 18rem; 18 | max-height: 50vh; 19 | width: 310px; 20 | padding: 0.75rem; 21 | margin: 0.75rem 0; 22 | font-size: 1rem; 23 | line-height: 1.75rem; 24 | } 25 | 26 | @layer base { 27 | html { 28 | @apply scroll-smooth; 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /src/app.d.ts: -------------------------------------------------------------------------------- 1 | // See https://kit.svelte.dev/docs/types#app 2 | // for information about these interfaces 3 | declare global { 4 | namespace App { 5 | // interface Error {} 6 | // interface Locals {} 7 | // interface PageData {} 8 | // interface Platform {} 9 | } 10 | } 11 | 12 | export {}; 13 | -------------------------------------------------------------------------------- /src/app.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | %sveltekit.head% 8 | 9 | 10 |
%sveltekit.body%
11 | 12 | 13 | -------------------------------------------------------------------------------- /src/components/Footer.svelte: -------------------------------------------------------------------------------- 1 | 4 | 5 | 29 | -------------------------------------------------------------------------------- /src/components/Navbar.svelte: -------------------------------------------------------------------------------- 1 | 6 | 7 |
8 |
9 | 43 |
44 |
45 | -------------------------------------------------------------------------------- /src/components/Newsletter.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/etherCorps/SveDev/af96dc669670292982cb8b2781160b028e0fbe02/src/components/Newsletter.svelte -------------------------------------------------------------------------------- /src/components/ThemeSwitcher.svelte: -------------------------------------------------------------------------------- 1 | 25 | 26 |
27 |
28 | 42 | {#await getTheme()} 43 | Theme 44 | {:then theme} 45 | {currentTheme} 46 | {/await} 47 | 55 |
56 |
59 |
60 | {#each themes as theme} 61 |
62 |
66 | 79 |
80 |
81 | {/each} 82 | 88 |
89 |
90 | 97 | 98 | 99 | 102 | 103 | 104 | 107 | 108 | 111 | 114 | 117 | 118 |
{'Make your theme'}!
119 |
120 |
121 |
122 |
123 |
124 |
125 | -------------------------------------------------------------------------------- /src/hooks.server.ts: -------------------------------------------------------------------------------- 1 | import type { Handle } from '@sveltejs/kit'; 2 | 3 | export const handle = (async ({ event, resolve }) => { 4 | let theme: string | null = null; 5 | const newTheme = event.url.searchParams.get('theme'); 6 | const cookieTheme = event.cookies.get('colortheme'); 7 | if (newTheme) { 8 | theme = newTheme; 9 | } else if (cookieTheme) { 10 | theme = cookieTheme; 11 | } 12 | if (theme) { 13 | return resolve(event, { 14 | transformPageChunk: ({ html }) => 15 | html.replace('data-theme="bumblebee"', `data-theme="${theme}"`) 16 | }); 17 | } 18 | return resolve(event); 19 | }) satisfies Handle; 20 | -------------------------------------------------------------------------------- /src/lib/constants.ts: -------------------------------------------------------------------------------- 1 | import { PUBLIC_DEV_TO_USERNAME, PUBLIC_SITE_NAME } from '$env/static/public'; 2 | export const devToUsername = PUBLIC_DEV_TO_USERNAME; 3 | export const siteName = PUBLIC_SITE_NAME; 4 | export const siteDescription = 5 | 'A blog for coders with tutorials, tips, and best practices on various programming languages and technologies to help improve skills and stay current. The ultimate resource for coders looking to level up or find inspiration.'; 6 | -------------------------------------------------------------------------------- /src/lib/devtoApi.ts: -------------------------------------------------------------------------------- 1 | import axios from 'axios'; 2 | import { DEV_TO_API_KEY } from '$env/static/private'; 3 | import { devToUsername } from './constants'; 4 | 5 | const apiInstance = axios.create({ 6 | baseURL: 'https://dev.to/api/', 7 | timeout: 2000, 8 | headers: { 9 | accept: 'application/vnd.forem.api-v1+json', 10 | 'Content-Type': 'application/json', 11 | 'api-key': DEV_TO_API_KEY as string 12 | } 13 | }); 14 | 15 | export const getMyDevToDetails = async () => { 16 | const { data } = await apiInstance.get('users/me'); 17 | return data; 18 | }; 19 | 20 | export const getMyArticles = async () => { 21 | const { data, status } = await apiInstance.get('articles/me/published'); 22 | return { userArticles: data, errors: !(status === 200) }; 23 | }; 24 | 25 | export const getArticleBySlug = async (slug: string) => { 26 | const { data } = await apiInstance.get(`articles/${devToUsername}/${slug}`); 27 | return data; 28 | }; 29 | 30 | export const getMyAllArticles = async () => { 31 | const { data } = await apiInstance.get(`articles/me/published?page=1&per_page=500`); 32 | return data; 33 | }; 34 | -------------------------------------------------------------------------------- /src/lib/search.ts: -------------------------------------------------------------------------------- 1 | import { create, search } from '@lyrasearch/lyra'; 2 | import { insertBatch } from '@lyrasearch/lyra'; 3 | 4 | let articleDB: any; 5 | 6 | export const createArticleDB = async () => { 7 | articleDB = await create({ 8 | schema: { 9 | title: 'string', 10 | body_markdown: 'string' 11 | } 12 | }); 13 | }; 14 | 15 | const insertConfig = { 16 | id: (doc: any) => { 17 | return doc.slug; 18 | } 19 | }; 20 | 21 | export const insertArticles = async (articles: any) => { 22 | await insertBatch(articleDB, articles, insertConfig); 23 | }; 24 | 25 | export const searchArticles = async (searchItem: string) => { 26 | const searchResult = await search(articleDB, { 27 | term: searchItem, 28 | properties: ['title', 'body_markdown'] 29 | }); 30 | return searchResult.hits; 31 | }; 32 | -------------------------------------------------------------------------------- /src/lib/themeData.ts: -------------------------------------------------------------------------------- 1 | export let themes = [ 2 | { 3 | name: '🌝  light', 4 | id: 'light' 5 | }, 6 | { 7 | name: '🌚  dark', 8 | id: 'dark' 9 | }, 10 | { 11 | name: '🧁  cupcake', 12 | id: 'cupcake' 13 | }, 14 | { 15 | name: '🐝  bumblebee', 16 | id: 'bumblebee' 17 | }, 18 | { 19 | name: '✳️  Emerald', 20 | id: 'emerald' 21 | }, 22 | { 23 | name: '🏢  Corporate', 24 | id: 'corporate' 25 | }, 26 | { 27 | name: '🌃  synthwave', 28 | id: 'synthwave' 29 | }, 30 | { 31 | name: '👴  retro', 32 | id: 'retro' 33 | }, 34 | { 35 | name: '🤖  cyberpunk', 36 | id: 'cyberpunk' 37 | }, 38 | { 39 | name: '🌸  valentine', 40 | id: 'valentine' 41 | }, 42 | { 43 | name: '🎃  halloween', 44 | id: 'halloween' 45 | }, 46 | { 47 | name: '🌷  garden', 48 | id: 'garden' 49 | }, 50 | { 51 | name: '🌲  forest', 52 | id: 'forest' 53 | }, 54 | { 55 | name: '🐟  aqua', 56 | id: 'aqua' 57 | }, 58 | { 59 | name: '👓  lofi', 60 | id: 'lofi' 61 | }, 62 | { 63 | name: '🖍  pastel', 64 | id: 'pastel' 65 | }, 66 | { 67 | name: '🧚‍♀️  fantasy', 68 | id: 'fantasy' 69 | }, 70 | { 71 | name: '📝  Wireframe', 72 | id: 'wireframe' 73 | }, 74 | { 75 | name: '🏴  black', 76 | id: 'black' 77 | }, 78 | { 79 | name: '💎  luxury', 80 | id: 'luxury' 81 | }, 82 | { 83 | name: '🧛‍♂️  dracula', 84 | id: 'dracula' 85 | }, 86 | { 87 | name: '🖨  CMYK', 88 | id: 'cmyk' 89 | }, 90 | { 91 | name: '🍁  Autumn', 92 | id: 'autumn' 93 | }, 94 | { 95 | name: '💼  Business', 96 | id: 'business' 97 | }, 98 | { 99 | name: '💊  Acid', 100 | id: 'acid' 101 | }, 102 | { 103 | name: '🍋  Lemonade', 104 | id: 'lemonade' 105 | }, 106 | { 107 | name: '🌙  Night', 108 | id: 'night' 109 | }, 110 | { 111 | name: '☕️  Coffee', 112 | id: 'coffee' 113 | }, 114 | { 115 | name: '❄️  Winter', 116 | id: 'winter' 117 | } 118 | ]; 119 | -------------------------------------------------------------------------------- /src/routes/+layout.server.ts: -------------------------------------------------------------------------------- 1 | import type { LayoutServerLoad } from './$types'; 2 | import { getMyDevToDetails } from '$lib/devtoApi'; 3 | 4 | export const load = (async () => { 5 | return { 6 | user: getMyDevToDetails() 7 | }; 8 | }) satisfies LayoutServerLoad; 9 | -------------------------------------------------------------------------------- /src/routes/+layout.svelte: -------------------------------------------------------------------------------- 1 | 9 | 10 |
11 |
12 | 13 | 14 | 15 |
17 |
18 | -------------------------------------------------------------------------------- /src/routes/+page.server.ts: -------------------------------------------------------------------------------- 1 | import { redirect } from '@sveltejs/kit'; 2 | import type { Actions, PageServerLoad } from './$types'; 3 | import { dev } from '$app/environment'; 4 | import { getMyArticles } from '$lib/devtoApi'; 5 | 6 | const randomEditorsChoice = async (articleList: any) => { 7 | articleList = [...articleList]; 8 | for (let i = articleList.length - 1; i > 0; i--) { 9 | const j = Math.floor(Math.random() * (i + 1)); 10 | [articleList[i], articleList[j]] = [articleList[j], articleList[i]]; 11 | } 12 | return articleList.splice(0, 4); 13 | }; 14 | 15 | const trendingArticles = async (articles: any) => { 16 | articles = [...articles]; 17 | articles.sort((a: any, b: any) => { 18 | return b.page_views_count - a.page_views_count; 19 | }); 20 | return articles.splice(0, 4); 21 | }; 22 | 23 | const getFirstFiveArticles = (articles = []) => { 24 | articles = [...articles]; 25 | const firstArticle = articles.splice(0, 1)[0]; 26 | const latestFourArticles = articles.splice(0, 4); 27 | return { firstArticle, latestFourArticles }; 28 | }; 29 | export const load = (async ({ setHeaders }) => { 30 | const { userArticles, errors } = await getMyArticles(); 31 | // setHeaders({ 32 | // 'Cache-Control': `public max-age=0, s-maxage=${60 * 60}` 33 | // }); 34 | return { 35 | articles: getFirstFiveArticles(userArticles), 36 | trending: trendingArticles(userArticles), 37 | authorsPick: randomEditorsChoice(userArticles), 38 | errors 39 | }; 40 | }) satisfies PageServerLoad; 41 | 42 | export const actions: Actions = { 43 | setTheme: async ({ url, cookies }) => { 44 | const theme = url.searchParams.get('theme'); 45 | const redirectTo = url.searchParams.get('redirectTo'); 46 | if (theme) { 47 | await cookies.set('colortheme', theme, { 48 | path: '/', 49 | sameSite: 'lax', 50 | maxAge: 60 * 60 * 24 * 365, 51 | secure: !dev 52 | }); 53 | } 54 | throw redirect(303, redirectTo ?? '/'); 55 | } 56 | }; 57 | -------------------------------------------------------------------------------- /src/routes/+page.svelte: -------------------------------------------------------------------------------- 1 | 8 | 9 | 10 | {siteName} | Home 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | {#if data.errors} 24 |
25 |
26 | 38 | No Content Found 39 |
40 |
41 | {:else} 42 |
43 |
44 |
47 | 54 |
55 | 56 |
57 |
58 | New 62 | {#each firstArticle.tag_list as tag} 63 | {tag} 67 | {/each} 68 |
69 |

70 | {firstArticle.title} 71 | 81 | 82 | 83 | 84 | 85 |

86 |

87 | {new Intl.DateTimeFormat('en-US', { dateStyle: 'long' }).format( 88 | new Date(firstArticle.published_at) 89 | )} 90 |

91 |

92 | {firstArticle.description} 93 |

94 | 104 |
105 |
106 |
107 |
108 | 109 |
110 |
111 |
112 |

113 | Popular 114 |

115 |
116 |
117 | {#each data.trending as article} 118 |
121 | 122 | {article.title} 127 | 128 | 136 |
137 |
138 |
139 |

Read

140 | 141 |

142 | {article.reading_time_minutes} min 143 |

144 |
145 | 146 | 154 | dev.to link 159 | 160 |
161 |
162 |
163 | {/each} 164 |
165 |
166 |
167 | 168 |
169 |
170 |
171 |

172 | Latest 173 |

174 |
175 |
176 | {#each data.articles.latestFourArticles as article} 177 |
180 | 181 | {article.title} 186 | 187 | 195 |
196 |
197 |
198 |

Read

199 | 200 |

201 | {article.reading_time_minutes} min 202 |

203 |
204 | 205 | 213 | dev.to link 218 | 219 |
220 |
221 |
222 | {/each} 223 | 227 | See more articles 228 | 236 | 241 | 242 | 243 |
244 |
245 |
246 | 247 |
248 |
249 |
250 |

251 | Author's Pick 252 |

253 |
254 |
255 | {#each data.authorsPick as article} 256 |
259 | 260 | {article.title} 265 | 266 | 274 |
275 |
276 |
277 |

Read

278 | 279 |

280 | {article.reading_time_minutes} min 281 |

282 |
283 | 284 | 292 | dev.to link 297 | 298 |
299 |
300 |
301 | {/each} 302 | 306 | See more articles 307 | 315 | 320 | 321 | 322 |
323 |
324 |
325 | {/if} 326 | -------------------------------------------------------------------------------- /src/routes/blog/+page.server.ts: -------------------------------------------------------------------------------- 1 | import type { PageServerLoad } from './$types'; 2 | import { getMyAllArticles } from '$lib/devtoApi'; 3 | 4 | export const load = (async ({ setHeaders }) => { 5 | setHeaders({ 6 | 'Cache-Control': `max-age=0, s-maxage=${60 * 60}` 7 | }); 8 | return { 9 | posts: getMyAllArticles() 10 | }; 11 | }) satisfies PageServerLoad; 12 | -------------------------------------------------------------------------------- /src/routes/blog/+page.svelte: -------------------------------------------------------------------------------- 1 | 17 | 18 | 19 | {siteName} | Blog 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 |
33 |
34 |
35 |

36 | Crafting digital experiences,
one line of code at a time. 37 |

38 |

39 | From Novice to Pro: A Collection of Reflections on Programming, Development, and the Journey 40 | of Learning 41 |

42 |
43 |
44 | { 50 | if (searchField.length > 0) { 51 | const hits = await searchArticles(searchField); 52 | const searchedData = []; 53 | await hits.forEach((hit) => { 54 | searchedData.push(hit.document); 55 | }); 56 | postData = searchedData; 57 | } 58 | }} 59 | /> 60 |
61 | {#if searchField.length > 0 && postData.length < 1} 62 |
63 |
64 | 76 | No Content Found 77 |
78 |
79 | {:else} 80 |
81 |
82 |
83 | {#each postData as post} 84 |
85 |
86 |

87 |
90 | {post.title} 97 |

98 | 106 |

107 | {post.description} 108 |

109 | 126 |
127 | 133 |
134 | {/each} 135 |
136 |
137 |
138 | {/if} 139 |
140 |
141 | -------------------------------------------------------------------------------- /src/routes/blog/[slug]/+page.server.ts: -------------------------------------------------------------------------------- 1 | import type { PageServerLoad } from './$types'; 2 | import { articleAPI, DevToUsername } from '$lib/constants'; 3 | import { getArticleBySlug } from '../../../lib/devtoApi'; 4 | 5 | export const load = (async ({ params, setHeaders }) => { 6 | setHeaders({ 7 | 'Cache-Control': `public max-age=0, s-maxage=518400}` 8 | }); 9 | return { 10 | post: getArticleBySlug(params.slug) 11 | }; 12 | }) satisfies PageServerLoad; 13 | -------------------------------------------------------------------------------- /src/routes/blog/[slug]/+page.svelte: -------------------------------------------------------------------------------- 1 | 28 | 29 | 30 | {siteName} | {data.post.title} 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 |
45 |
46 |
47 |

51 | {data.post.title} 52 |

53 | {data.post.title} 58 |
59 | {#await getHeadings() then value} 60 | {#if headings.length > 0} 61 | 77 | {/if} 78 | {/await} 79 |
80 |
81 | {@html data.post.body_html} 82 |
83 |
84 |
85 |
86 | -------------------------------------------------------------------------------- /src/routes/og/+server.ts: -------------------------------------------------------------------------------- 1 | import { ImageResponse } from '@ethercorps/sveltekit-og'; 2 | import type { RequestHandler } from '@sveltejs/kit'; 3 | import { siteName, siteDescription } from '$lib/constants'; 4 | 5 | const buildTemplate = (title: string) => { 6 | return ` 7 |
8 |
9 |
10 |

11 | ${title} 12 |

13 |
14 |
15 |
16 | `; 17 | }; 18 | 19 | const fontFile = await fetch( 20 | 'https://raw.githubusercontent.com/etherCorps/SveDev/6ded9a0188b4debec845b738284c8a0156aca72d/static/fonts/Basteleur-Moonlight.woff' 21 | ); 22 | const fontData = await fontFile.arrayBuffer(); 23 | 24 | export const GET: RequestHandler = async ({ url, params, route }) => { 25 | let title = siteName; 26 | const hasTitle = url.searchParams.has('title'); 27 | 28 | if (hasTitle) { 29 | title = url.searchParams.get('title')?.slice(0, 100) as string; 30 | } 31 | 32 | const htmlTemplate = buildTemplate(title); 33 | 34 | return await ImageResponse(htmlTemplate, { 35 | height: 630, 36 | width: 1200, 37 | fonts: [ 38 | { 39 | name: 'DM Serif Display', 40 | data: fontData, 41 | weight: 400 42 | } 43 | ], 44 | headers: { 45 | 'Cache-Control': `public max-age=0, s-maxage=${60 * 60 * 24 * 365}` 46 | } 47 | }); 48 | }; 49 | 50 | export let trailingSlash = true; 51 | -------------------------------------------------------------------------------- /src/routes/robots.txt/+server.ts: -------------------------------------------------------------------------------- 1 | import { type RequestHandler, text } from '@sveltejs/kit'; 2 | 3 | export const GET: RequestHandler = async ({ url }) => { 4 | const robots = `User-agent: *\nSitemap: ${url.origin}/sitemap.xml`; 5 | return text(robots); 6 | }; 7 | -------------------------------------------------------------------------------- /src/routes/rss/+server.ts: -------------------------------------------------------------------------------- 1 | import RSS from 'rss'; 2 | import type { RequestHandler } from '@sveltejs/kit'; 3 | 4 | import { siteDescription, siteName } from '$lib/constants'; 5 | import { getMyAllArticles } from '$lib/devtoApi'; 6 | 7 | export const GET: RequestHandler = async ({ url }) => { 8 | const posts = await getMyAllArticles(); 9 | 10 | const feed = new RSS({ 11 | title: `${siteName} RSS Feed`, 12 | description: siteDescription, 13 | site_url: url.origin, 14 | feed_url: `${url.origin}rss.xml` 15 | }); 16 | 17 | posts.forEach((post: any) => 18 | feed.item({ 19 | title: post.title, 20 | description: post.description, 21 | url: `${url.origin}/blog/${post.slug}`, 22 | date: post.published_timestamp 23 | }) 24 | ); 25 | 26 | return new Response(feed.xml({ indent: true }), { 27 | headers: { 28 | 'Content-Type': 'application/xml', 29 | 'Cache-Control': `max-age=0, s-maxage=${60 * 60}` 30 | } 31 | }); 32 | }; 33 | -------------------------------------------------------------------------------- /src/routes/sitemap.xml/+server.ts: -------------------------------------------------------------------------------- 1 | import type { RequestHandler } from '@sveltejs/kit'; 2 | import { getMyAllArticles } from '$lib/devtoApi'; 3 | 4 | export const GET: RequestHandler = async ({ url }) => { 5 | const pages = [...(await getMyAllArticles()).map((post: any) => post.slug)]; 6 | 7 | const sitemap = ` 8 | 9 | 17 | 18 | ${url.origin}/blog 19 | ${new Date().toISOString()} 20 | 21 | ${pages 22 | .map((page) => { 23 | return ` 24 | 25 | ${url.origin}/blog/${page} 26 | ${new Date().toISOString()} 27 | 28 | `; 29 | }) 30 | .join('')} 31 | 32 | `.trim(); 33 | 34 | return new Response(sitemap, { 35 | headers: { 36 | 'Content-Type': 'application/xml', 37 | 'Cache-Control': `public, max-age=0, s-maxage=${60 * 60 * 24}` 38 | } 39 | }); 40 | }; 41 | -------------------------------------------------------------------------------- /static/BlogTemplateImage.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/etherCorps/SveDev/af96dc669670292982cb8b2781160b028e0fbe02/static/BlogTemplateImage.jpeg -------------------------------------------------------------------------------- /static/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/etherCorps/SveDev/af96dc669670292982cb8b2781160b028e0fbe02/static/favicon.png -------------------------------------------------------------------------------- /static/fonts/Basteleur-Bold.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/etherCorps/SveDev/af96dc669670292982cb8b2781160b028e0fbe02/static/fonts/Basteleur-Bold.woff -------------------------------------------------------------------------------- /static/fonts/Basteleur-Bold.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/etherCorps/SveDev/af96dc669670292982cb8b2781160b028e0fbe02/static/fonts/Basteleur-Bold.woff2 -------------------------------------------------------------------------------- /static/fonts/Basteleur-Moonlight.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/etherCorps/SveDev/af96dc669670292982cb8b2781160b028e0fbe02/static/fonts/Basteleur-Moonlight.woff -------------------------------------------------------------------------------- /static/fonts/Basteleur-Moonlight.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/etherCorps/SveDev/af96dc669670292982cb8b2781160b028e0fbe02/static/fonts/Basteleur-Moonlight.woff2 -------------------------------------------------------------------------------- /static/fonts/stylesheet.css: -------------------------------------------------------------------------------- 1 | @font-face { 2 | font-family: 'Basteleur'; 3 | src: local('Basteleur Bold'), local('Basteleur-Bold'), url('Basteleur-Bold.woff2') format('woff2'), 4 | url('Basteleur-Bold.woff') format('woff'); 5 | font-weight: bold; 6 | font-style: normal; 7 | font-display: swap; 8 | } 9 | 10 | @font-face { 11 | font-family: 'Basteleur'; 12 | src: local('Basteleur Bold'), local('Basteleur-Bold'), url('Basteleur-Bold.woff2') format('woff2'), 13 | url('Basteleur-Bold.woff') format('woff'); 14 | font-weight: bold; 15 | font-style: normal; 16 | font-display: swap; 17 | } 18 | 19 | @font-face { 20 | font-family: 'Basteleur Moonlight'; 21 | src: local('Basteleur Moonlight'), local('Basteleur-Moonlight'), 22 | url('Basteleur-Moonlight.woff2') format('woff2'), url('Basteleur-Moonlight.woff') format('woff'); 23 | font-weight: 300; 24 | font-style: normal; 25 | font-display: swap; 26 | } 27 | 28 | @font-face { 29 | font-family: 'Basteleur Moonlight'; 30 | src: local('Basteleur Moonlight'), local('Basteleur-Moonlight'), 31 | url('Basteleur-Moonlight.woff2') format('woff2'), url('Basteleur-Moonlight.woff') format('woff'); 32 | font-weight: 300; 33 | font-style: normal; 34 | font-display: swap; 35 | } 36 | -------------------------------------------------------------------------------- /static/icon.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /static/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/etherCorps/SveDev/af96dc669670292982cb8b2781160b028e0fbe02/static/logo.png -------------------------------------------------------------------------------- /static/og.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/etherCorps/SveDev/af96dc669670292982cb8b2781160b028e0fbe02/static/og.png -------------------------------------------------------------------------------- /static/trans_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/etherCorps/SveDev/af96dc669670292982cb8b2781160b028e0fbe02/static/trans_logo.png -------------------------------------------------------------------------------- /svelte.config.js: -------------------------------------------------------------------------------- 1 | import adapter from '@sveltejs/adapter-auto'; 2 | import { vitePreprocess } from '@sveltejs/kit/vite'; 3 | 4 | /** @type {import('@sveltejs/kit').Config} */ 5 | const config = { 6 | // Consult https://kit.svelte.dev/docs/integrations#preprocessors 7 | // for more information about preprocessors 8 | preprocess: vitePreprocess(), 9 | 10 | kit: { 11 | adapter: adapter(), 12 | alias: { 13 | $components: 'src/components' 14 | } 15 | } 16 | }; 17 | 18 | export default config; 19 | -------------------------------------------------------------------------------- /tailwind.config.cjs: -------------------------------------------------------------------------------- 1 | /** @type {import('tailwindcss').Config} */ 2 | module.exports = { 3 | content: ['./src/**/*.{html,js,svelte,ts}'], 4 | theme: { 5 | extend: { 6 | fontFamily: { 7 | bss: ['Basteleur', 'sans-serif'], 8 | bms: ['Basteleur Moonlight', 'serif'] 9 | }, 10 | animation: { 11 | text: 'text 3s ease infinite' 12 | }, 13 | keyframes: { 14 | text: { 15 | '0%, 100%': { 16 | 'background-size': '200% 200%', 17 | 'background-position': 'left center' 18 | }, 19 | '50%': { 20 | 'background-size': '200% 200%', 21 | 'background-position': 'right center' 22 | } 23 | } 24 | } 25 | } 26 | }, 27 | plugins: [require('@tailwindcss/typography'), require('daisyui')] 28 | }; 29 | -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "./.svelte-kit/tsconfig.json", 3 | "compilerOptions": { 4 | "allowJs": true, 5 | "checkJs": true, 6 | "esModuleInterop": true, 7 | "forceConsistentCasingInFileNames": true, 8 | "resolveJsonModule": true, 9 | "skipLibCheck": true, 10 | "sourceMap": true, 11 | "strict": true 12 | } 13 | // Path aliases are handled by https://kit.svelte.dev/docs/configuration#alias 14 | // 15 | // If you want to overwrite includes/excludes, make sure to copy over the relevant includes/excludes 16 | // from the referenced tsconfig.json - TypeScript does not merge them in 17 | } 18 | -------------------------------------------------------------------------------- /vite.config.ts: -------------------------------------------------------------------------------- 1 | import { sveltekit } from '@sveltejs/kit/vite'; 2 | import type { UserConfig } from 'vite'; 3 | 4 | const config: UserConfig = { 5 | plugins: [sveltekit()] 6 | }; 7 | 8 | export default config; 9 | --------------------------------------------------------------------------------