From 72b4354f19db4140742e5406661a34417a94859c Mon Sep 17 00:00:00 2001 From: thecodebranch Date: Thu, 27 Jun 2024 14:04:18 -0600 Subject: [PATCH] Add svelte introduction code content --- .gitignore | 2 + svelte-introduction/README.md | 21 + svelte-introduction/images/todo-component.png | Bin 0 -> 29729 bytes svelte-introduction/index.html | 12 + svelte-introduction/jsconfig.json | 32 ++ svelte-introduction/package.json | 16 + svelte-introduction/src/App.svelte | 7 + svelte-introduction/src/lib/ShopList.svelte | 93 ++++ svelte-introduction/src/main.js | 7 + svelte-introduction/svelte.config.js | 5 + svelte-introduction/vite.config.js | 6 + svelte-introduction/yarn.lock | 492 ++++++++++++++++++ 12 files changed, 693 insertions(+) create mode 100644 .gitignore create mode 100644 svelte-introduction/README.md create mode 100644 svelte-introduction/images/todo-component.png create mode 100644 svelte-introduction/index.html create mode 100644 svelte-introduction/jsconfig.json create mode 100644 svelte-introduction/package.json create mode 100644 svelte-introduction/src/App.svelte create mode 100644 svelte-introduction/src/lib/ShopList.svelte create mode 100644 svelte-introduction/src/main.js create mode 100644 svelte-introduction/svelte.config.js create mode 100644 svelte-introduction/vite.config.js create mode 100644 svelte-introduction/yarn.lock diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..7f32e4b --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +.vscode +node_modules \ No newline at end of file diff --git a/svelte-introduction/README.md b/svelte-introduction/README.md new file mode 100644 index 0000000..35b248b --- /dev/null +++ b/svelte-introduction/README.md @@ -0,0 +1,21 @@ +# Svelte Introduction + +This sample code is relate to the following blog post: + +- https://thecodebranch.com/posts/svelte/why-svelte + +Here, we showcase a simple todo component that highlights some basic features Svelte. It also uses a development server called Vite, which helps to facilitate local development and project bundling. For example, it provides hot-reloading capabailities, local server proxying, and more! + + +## Setup + +Navigate to this directory and run: + +```bash +yarn install +yarn dev +``` + +## Demo + +![svelte todo component](./images/todo-component.png "Svelte Todo Component") \ No newline at end of file diff --git a/svelte-introduction/images/todo-component.png b/svelte-introduction/images/todo-component.png new file mode 100644 index 0000000000000000000000000000000000000000..c6c9553909fa596ed7b26043e6cb3443f4d0073c GIT binary patch literal 29729 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 V2d6x@!1A3KG7|FQMPmA|{s*S=T^s-a literal 0 HcmV?d00001 diff --git a/svelte-introduction/index.html b/svelte-introduction/index.html new file mode 100644 index 0000000..7616747 --- /dev/null +++ b/svelte-introduction/index.html @@ -0,0 +1,12 @@ + + + + + + Basic Todo + + +
+ + + diff --git a/svelte-introduction/jsconfig.json b/svelte-introduction/jsconfig.json new file mode 100644 index 0000000..3f145a3 --- /dev/null +++ b/svelte-introduction/jsconfig.json @@ -0,0 +1,32 @@ +{ + "compilerOptions": { + "moduleResolution": "bundler", + "target": "ESNext", + "module": "ESNext", + /** + * svelte-preprocess cannot figure out whether you have + * a value or a type, so tell TypeScript to enforce using + * `import type` instead of `import` for Types. + */ + "verbatimModuleSyntax": true, + "isolatedModules": true, + "resolveJsonModule": true, + /** + * To have warnings / errors of the Svelte compiler at the + * correct position, enable source maps by default. + */ + "sourceMap": true, + "esModuleInterop": true, + "skipLibCheck": true, + /** + * Typecheck JS in `.svelte` and `.js` files by default. + * Disable this if you'd like to use dynamic types. + */ + "checkJs": false + }, + /** + * Use global.d.ts instead of compilerOptions.types + * to avoid limiting type declarations. + */ + "include": ["src/**/*.d.ts", "src/**/*.js", "src/**/*.svelte"] +} diff --git a/svelte-introduction/package.json b/svelte-introduction/package.json new file mode 100644 index 0000000..c6b2410 --- /dev/null +++ b/svelte-introduction/package.json @@ -0,0 +1,16 @@ +{ + "name": "svelte-demo", + "private": true, + "version": "0.0.0", + "type": "module", + "scripts": { + "dev": "vite", + "build": "vite build", + "preview": "vite preview" + }, + "devDependencies": { + "@sveltejs/vite-plugin-svelte": "^3.1.1", + "svelte": "^4.2.18", + "vite": "^5.3.1" + } +} diff --git a/svelte-introduction/src/App.svelte b/svelte-introduction/src/App.svelte new file mode 100644 index 0000000..fba93b1 --- /dev/null +++ b/svelte-introduction/src/App.svelte @@ -0,0 +1,7 @@ + + +
+ +
diff --git a/svelte-introduction/src/lib/ShopList.svelte b/svelte-introduction/src/lib/ShopList.svelte new file mode 100644 index 0000000..3396d60 --- /dev/null +++ b/svelte-introduction/src/lib/ShopList.svelte @@ -0,0 +1,93 @@ + + + +
+ {#each todos as todo} + {#if $pickedUp[todo.id]} +
+

{todo.id}

+

{todo.item}

+

Completed

+
+ {:else} +
+

{todo.id}

+

{todo.item}

+ +
+ {/if} + {/each} +
+ + + diff --git a/svelte-introduction/src/main.js b/svelte-introduction/src/main.js new file mode 100644 index 0000000..fb36356 --- /dev/null +++ b/svelte-introduction/src/main.js @@ -0,0 +1,7 @@ +import App from './App.svelte' + +const app = new App({ + target: document.getElementById('app'), +}) + +export default app diff --git a/svelte-introduction/svelte.config.js b/svelte-introduction/svelte.config.js new file mode 100644 index 0000000..8abe436 --- /dev/null +++ b/svelte-introduction/svelte.config.js @@ -0,0 +1,5 @@ +import { vitePreprocess } from '@sveltejs/vite-plugin-svelte' + +export default { + preprocess: vitePreprocess(), +} diff --git a/svelte-introduction/vite.config.js b/svelte-introduction/vite.config.js new file mode 100644 index 0000000..951a9ba --- /dev/null +++ b/svelte-introduction/vite.config.js @@ -0,0 +1,6 @@ +import { defineConfig } from 'vite' +import { svelte } from '@sveltejs/vite-plugin-svelte' + +export default defineConfig({ + plugins: [svelte()], +}) diff --git a/svelte-introduction/yarn.lock b/svelte-introduction/yarn.lock new file mode 100644 index 0000000..af3495a --- /dev/null +++ b/svelte-introduction/yarn.lock @@ -0,0 +1,492 @@ +# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. +# yarn lockfile v1 + + +"@ampproject/remapping@^2.2.1": + version "2.3.0" + resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.3.0.tgz#ed441b6fa600072520ce18b43d2c8cc8caecc7f4" + integrity sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw== + dependencies: + "@jridgewell/gen-mapping" "^0.3.5" + "@jridgewell/trace-mapping" "^0.3.24" + +"@esbuild/aix-ppc64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz#c7184a326533fcdf1b8ee0733e21c713b975575f" + integrity sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ== + +"@esbuild/android-arm64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/android-arm64/-/android-arm64-0.21.5.tgz#09d9b4357780da9ea3a7dfb833a1f1ff439b4052" + integrity sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A== + +"@esbuild/android-arm@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/android-arm/-/android-arm-0.21.5.tgz#9b04384fb771926dfa6d7ad04324ecb2ab9b2e28" + integrity sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg== + +"@esbuild/android-x64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/android-x64/-/android-x64-0.21.5.tgz#29918ec2db754cedcb6c1b04de8cd6547af6461e" + integrity sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA== + +"@esbuild/darwin-arm64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/darwin-arm64/-/darwin-arm64-0.21.5.tgz#e495b539660e51690f3928af50a76fb0a6ccff2a" + integrity sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ== + +"@esbuild/darwin-x64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/darwin-x64/-/darwin-x64-0.21.5.tgz#c13838fa57372839abdddc91d71542ceea2e1e22" + integrity sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw== + +"@esbuild/freebsd-arm64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.21.5.tgz#646b989aa20bf89fd071dd5dbfad69a3542e550e" + integrity sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g== + +"@esbuild/freebsd-x64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/freebsd-x64/-/freebsd-x64-0.21.5.tgz#aa615cfc80af954d3458906e38ca22c18cf5c261" + integrity sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ== + +"@esbuild/linux-arm64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/linux-arm64/-/linux-arm64-0.21.5.tgz#70ac6fa14f5cb7e1f7f887bcffb680ad09922b5b" + integrity sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q== + +"@esbuild/linux-arm@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/linux-arm/-/linux-arm-0.21.5.tgz#fc6fd11a8aca56c1f6f3894f2bea0479f8f626b9" + integrity sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA== + +"@esbuild/linux-ia32@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/linux-ia32/-/linux-ia32-0.21.5.tgz#3271f53b3f93e3d093d518d1649d6d68d346ede2" + integrity sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg== + +"@esbuild/linux-loong64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/linux-loong64/-/linux-loong64-0.21.5.tgz#ed62e04238c57026aea831c5a130b73c0f9f26df" + integrity sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg== + +"@esbuild/linux-mips64el@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/linux-mips64el/-/linux-mips64el-0.21.5.tgz#e79b8eb48bf3b106fadec1ac8240fb97b4e64cbe" + integrity sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg== + +"@esbuild/linux-ppc64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/linux-ppc64/-/linux-ppc64-0.21.5.tgz#5f2203860a143b9919d383ef7573521fb154c3e4" + integrity sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w== + +"@esbuild/linux-riscv64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/linux-riscv64/-/linux-riscv64-0.21.5.tgz#07bcafd99322d5af62f618cb9e6a9b7f4bb825dc" + integrity sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA== + +"@esbuild/linux-s390x@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/linux-s390x/-/linux-s390x-0.21.5.tgz#b7ccf686751d6a3e44b8627ababc8be3ef62d8de" + integrity sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A== + +"@esbuild/linux-x64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/linux-x64/-/linux-x64-0.21.5.tgz#6d8f0c768e070e64309af8004bb94e68ab2bb3b0" + integrity sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ== + +"@esbuild/netbsd-x64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/netbsd-x64/-/netbsd-x64-0.21.5.tgz#bbe430f60d378ecb88decb219c602667387a6047" + integrity sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg== + +"@esbuild/openbsd-x64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/openbsd-x64/-/openbsd-x64-0.21.5.tgz#99d1cf2937279560d2104821f5ccce220cb2af70" + integrity sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow== + +"@esbuild/sunos-x64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/sunos-x64/-/sunos-x64-0.21.5.tgz#08741512c10d529566baba837b4fe052c8f3487b" + integrity sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg== + +"@esbuild/win32-arm64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/win32-arm64/-/win32-arm64-0.21.5.tgz#675b7385398411240735016144ab2e99a60fc75d" + integrity sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A== + +"@esbuild/win32-ia32@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/win32-ia32/-/win32-ia32-0.21.5.tgz#1bfc3ce98aa6ca9a0969e4d2af72144c59c1193b" + integrity sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA== + +"@esbuild/win32-x64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/win32-x64/-/win32-x64-0.21.5.tgz#acad351d582d157bb145535db2a6ff53dd514b5c" + integrity sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw== + +"@jridgewell/gen-mapping@^0.3.5": + version "0.3.5" + resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz#dcce6aff74bdf6dad1a95802b69b04a2fcb1fb36" + integrity sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg== + dependencies: + "@jridgewell/set-array" "^1.2.1" + "@jridgewell/sourcemap-codec" "^1.4.10" + "@jridgewell/trace-mapping" "^0.3.24" + +"@jridgewell/resolve-uri@^3.1.0": + version "3.1.2" + resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz#7a0ee601f60f99a20c7c7c5ff0c80388c1189bd6" + integrity sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw== + +"@jridgewell/set-array@^1.2.1": + version "1.2.1" + resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.2.1.tgz#558fb6472ed16a4c850b889530e6b36438c49280" + integrity sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A== + +"@jridgewell/sourcemap-codec@^1.4.10", "@jridgewell/sourcemap-codec@^1.4.14", "@jridgewell/sourcemap-codec@^1.4.15": + version "1.4.15" + resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz#d7c6e6755c78567a951e04ab52ef0fd26de59f32" + integrity sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg== + +"@jridgewell/trace-mapping@^0.3.18", "@jridgewell/trace-mapping@^0.3.24": + version "0.3.25" + resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz#15f190e98895f3fc23276ee14bc76b675c2e50f0" + integrity sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ== + dependencies: + "@jridgewell/resolve-uri" "^3.1.0" + "@jridgewell/sourcemap-codec" "^1.4.14" + +"@rollup/rollup-android-arm-eabi@4.18.0": + version "4.18.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.18.0.tgz#bbd0e616b2078cd2d68afc9824d1fadb2f2ffd27" + integrity sha512-Tya6xypR10giZV1XzxmH5wr25VcZSncG0pZIjfePT0OVBvqNEurzValetGNarVrGiq66EBVAFn15iYX4w6FKgQ== + +"@rollup/rollup-android-arm64@4.18.0": + version "4.18.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.18.0.tgz#97255ef6384c5f73f4800c0de91f5f6518e21203" + integrity sha512-avCea0RAP03lTsDhEyfy+hpfr85KfyTctMADqHVhLAF3MlIkq83CP8UfAHUssgXTYd+6er6PaAhx/QGv4L1EiA== + +"@rollup/rollup-darwin-arm64@4.18.0": + version "4.18.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.18.0.tgz#b6dd74e117510dfe94541646067b0545b42ff096" + integrity sha512-IWfdwU7KDSm07Ty0PuA/W2JYoZ4iTj3TUQjkVsO/6U+4I1jN5lcR71ZEvRh52sDOERdnNhhHU57UITXz5jC1/w== + +"@rollup/rollup-darwin-x64@4.18.0": + version "4.18.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.18.0.tgz#e07d76de1cec987673e7f3d48ccb8e106d42c05c" + integrity sha512-n2LMsUz7Ynu7DoQrSQkBf8iNrjOGyPLrdSg802vk6XT3FtsgX6JbE8IHRvposskFm9SNxzkLYGSq9QdpLYpRNA== + +"@rollup/rollup-linux-arm-gnueabihf@4.18.0": + version "4.18.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.18.0.tgz#9f1a6d218b560c9d75185af4b8bb42f9f24736b8" + integrity sha512-C/zbRYRXFjWvz9Z4haRxcTdnkPt1BtCkz+7RtBSuNmKzMzp3ZxdM28Mpccn6pt28/UWUCTXa+b0Mx1k3g6NOMA== + +"@rollup/rollup-linux-arm-musleabihf@4.18.0": + version "4.18.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.18.0.tgz#53618b92e6ffb642c7b620e6e528446511330549" + integrity sha512-l3m9ewPgjQSXrUMHg93vt0hYCGnrMOcUpTz6FLtbwljo2HluS4zTXFy2571YQbisTnfTKPZ01u/ukJdQTLGh9A== + +"@rollup/rollup-linux-arm64-gnu@4.18.0": + version "4.18.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.18.0.tgz#99a7ba5e719d4f053761a698f7b52291cefba577" + integrity sha512-rJ5D47d8WD7J+7STKdCUAgmQk49xuFrRi9pZkWoRD1UeSMakbcepWXPF8ycChBoAqs1pb2wzvbY6Q33WmN2ftw== + +"@rollup/rollup-linux-arm64-musl@4.18.0": + version "4.18.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.18.0.tgz#f53db99a45d9bc00ce94db8a35efa7c3c144a58c" + integrity sha512-be6Yx37b24ZwxQ+wOQXXLZqpq4jTckJhtGlWGZs68TgdKXJgw54lUUoFYrg6Zs/kjzAQwEwYbp8JxZVzZLRepQ== + +"@rollup/rollup-linux-powerpc64le-gnu@4.18.0": + version "4.18.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.18.0.tgz#cbb0837408fe081ce3435cf3730e090febafc9bf" + integrity sha512-hNVMQK+qrA9Todu9+wqrXOHxFiD5YmdEi3paj6vP02Kx1hjd2LLYR2eaN7DsEshg09+9uzWi2W18MJDlG0cxJA== + +"@rollup/rollup-linux-riscv64-gnu@4.18.0": + version "4.18.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.18.0.tgz#8ed09c1d1262ada4c38d791a28ae0fea28b80cc9" + integrity sha512-ROCM7i+m1NfdrsmvwSzoxp9HFtmKGHEqu5NNDiZWQtXLA8S5HBCkVvKAxJ8U+CVctHwV2Gb5VUaK7UAkzhDjlg== + +"@rollup/rollup-linux-s390x-gnu@4.18.0": + version "4.18.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.18.0.tgz#938138d3c8e0c96f022252a28441dcfb17afd7ec" + integrity sha512-0UyyRHyDN42QL+NbqevXIIUnKA47A+45WyasO+y2bGJ1mhQrfrtXUpTxCOrfxCR4esV3/RLYyucGVPiUsO8xjg== + +"@rollup/rollup-linux-x64-gnu@4.18.0": + version "4.18.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.18.0.tgz#1a7481137a54740bee1ded4ae5752450f155d942" + integrity sha512-xuglR2rBVHA5UsI8h8UbX4VJ470PtGCf5Vpswh7p2ukaqBGFTnsfzxUBetoWBWymHMxbIG0Cmx7Y9qDZzr648w== + +"@rollup/rollup-linux-x64-musl@4.18.0": + version "4.18.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.18.0.tgz#f1186afc601ac4f4fc25fac4ca15ecbee3a1874d" + integrity sha512-LKaqQL9osY/ir2geuLVvRRs+utWUNilzdE90TpyoX0eNqPzWjRm14oMEE+YLve4k/NAqCdPkGYDaDF5Sw+xBfg== + +"@rollup/rollup-win32-arm64-msvc@4.18.0": + version "4.18.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.18.0.tgz#ed6603e93636a96203c6915be4117245c1bd2daf" + integrity sha512-7J6TkZQFGo9qBKH0pk2cEVSRhJbL6MtfWxth7Y5YmZs57Pi+4x6c2dStAUvaQkHQLnEQv1jzBUW43GvZW8OFqA== + +"@rollup/rollup-win32-ia32-msvc@4.18.0": + version "4.18.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.18.0.tgz#14e0b404b1c25ebe6157a15edb9c46959ba74c54" + integrity sha512-Txjh+IxBPbkUB9+SXZMpv+b/vnTEtFyfWZgJ6iyCmt2tdx0OF5WhFowLmnh8ENGNpfUlUZkdI//4IEmhwPieNg== + +"@rollup/rollup-win32-x64-msvc@4.18.0": + version "4.18.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.18.0.tgz#5d694d345ce36b6ecf657349e03eb87297e68da4" + integrity sha512-UOo5FdvOL0+eIVTgS4tIdbW+TtnBLWg1YBCcU2KWM7nuNwRz9bksDX1bekJJCpu25N1DVWaCwnT39dVQxzqS8g== + +"@sveltejs/vite-plugin-svelte-inspector@^2.1.0": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@sveltejs/vite-plugin-svelte-inspector/-/vite-plugin-svelte-inspector-2.1.0.tgz#116ba2b73be43c1d7d93de749f37becc7e45bb8c" + integrity sha512-9QX28IymvBlSCqsCll5t0kQVxipsfhFFL+L2t3nTWfXnddYwxBuAEtTtlaVQpRz9c37BhJjltSeY4AJSC03SSg== + dependencies: + debug "^4.3.4" + +"@sveltejs/vite-plugin-svelte@^3.1.1": + version "3.1.1" + resolved "https://registry.yarnpkg.com/@sveltejs/vite-plugin-svelte/-/vite-plugin-svelte-3.1.1.tgz#e71bb0631ca40a3a1d272315beaff9bdd5482841" + integrity sha512-rimpFEAboBBHIlzISibg94iP09k/KYdHgVhJlcsTfn7KMBhc70jFX/GRWkRdFCc2fdnk+4+Bdfej23cMDnJS6A== + dependencies: + "@sveltejs/vite-plugin-svelte-inspector" "^2.1.0" + debug "^4.3.4" + deepmerge "^4.3.1" + kleur "^4.1.5" + magic-string "^0.30.10" + svelte-hmr "^0.16.0" + vitefu "^0.2.5" + +"@types/estree@*", "@types/estree@1.0.5", "@types/estree@^1.0.0", "@types/estree@^1.0.1": + version "1.0.5" + resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.5.tgz#a6ce3e556e00fd9895dd872dd172ad0d4bd687f4" + integrity sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw== + +acorn@^8.10.0, acorn@^8.9.0: + version "8.12.0" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.12.0.tgz#1627bfa2e058148036133b8d9b51a700663c294c" + integrity sha512-RTvkC4w+KNXrM39/lWCUaG0IbRkWdCv7W/IOW9oU6SawyxulvkQy5HQPVTKxEjczcUvapcrw3cFx/60VN/NRNw== + +aria-query@^5.3.0: + version "5.3.0" + resolved "https://registry.yarnpkg.com/aria-query/-/aria-query-5.3.0.tgz#650c569e41ad90b51b3d7df5e5eed1c7549c103e" + integrity sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A== + dependencies: + dequal "^2.0.3" + +axobject-query@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/axobject-query/-/axobject-query-4.0.0.tgz#04a4c90dce33cc5d606c76d6216e3b250ff70dab" + integrity sha512-+60uv1hiVFhHZeO+Lz0RYzsVHy5Wr1ayX0mwda9KPDVLNJgZ1T9Ny7VmFbLDzxsH0D87I86vgj3gFrjTJUYznw== + dependencies: + dequal "^2.0.3" + +code-red@^1.0.3: + version "1.0.4" + resolved "https://registry.yarnpkg.com/code-red/-/code-red-1.0.4.tgz#59ba5c9d1d320a4ef795bc10a28bd42bfebe3e35" + integrity sha512-7qJWqItLA8/VPVlKJlFXU+NBlo/qyfs39aJcuMT/2ere32ZqvF5OSxgdM5xOfJJ7O429gg2HM47y8v9P+9wrNw== + dependencies: + "@jridgewell/sourcemap-codec" "^1.4.15" + "@types/estree" "^1.0.1" + acorn "^8.10.0" + estree-walker "^3.0.3" + periscopic "^3.1.0" + +css-tree@^2.3.1: + version "2.3.1" + resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-2.3.1.tgz#10264ce1e5442e8572fc82fbe490644ff54b5c20" + integrity sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw== + dependencies: + mdn-data "2.0.30" + source-map-js "^1.0.1" + +debug@^4.3.4: + version "4.3.5" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.5.tgz#e83444eceb9fedd4a1da56d671ae2446a01a6e1e" + integrity sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg== + dependencies: + ms "2.1.2" + +deepmerge@^4.3.1: + version "4.3.1" + resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.3.1.tgz#44b5f2147cd3b00d4b56137685966f26fd25dd4a" + integrity sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A== + +dequal@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/dequal/-/dequal-2.0.3.tgz#2644214f1997d39ed0ee0ece72335490a7ac67be" + integrity sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA== + +esbuild@^0.21.3: + version "0.21.5" + resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.21.5.tgz#9ca301b120922959b766360d8ac830da0d02997d" + integrity sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw== + optionalDependencies: + "@esbuild/aix-ppc64" "0.21.5" + "@esbuild/android-arm" "0.21.5" + "@esbuild/android-arm64" "0.21.5" + "@esbuild/android-x64" "0.21.5" + "@esbuild/darwin-arm64" "0.21.5" + "@esbuild/darwin-x64" "0.21.5" + "@esbuild/freebsd-arm64" "0.21.5" + "@esbuild/freebsd-x64" "0.21.5" + "@esbuild/linux-arm" "0.21.5" + "@esbuild/linux-arm64" "0.21.5" + "@esbuild/linux-ia32" "0.21.5" + "@esbuild/linux-loong64" "0.21.5" + "@esbuild/linux-mips64el" "0.21.5" + "@esbuild/linux-ppc64" "0.21.5" + "@esbuild/linux-riscv64" "0.21.5" + "@esbuild/linux-s390x" "0.21.5" + "@esbuild/linux-x64" "0.21.5" + "@esbuild/netbsd-x64" "0.21.5" + "@esbuild/openbsd-x64" "0.21.5" + "@esbuild/sunos-x64" "0.21.5" + "@esbuild/win32-arm64" "0.21.5" + "@esbuild/win32-ia32" "0.21.5" + "@esbuild/win32-x64" "0.21.5" + +estree-walker@^3.0.0, estree-walker@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-3.0.3.tgz#67c3e549ec402a487b4fc193d1953a524752340d" + integrity sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g== + dependencies: + "@types/estree" "^1.0.0" + +fsevents@~2.3.2, fsevents@~2.3.3: + version "2.3.3" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6" + integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw== + +is-reference@^3.0.0, is-reference@^3.0.1: + version "3.0.2" + resolved "https://registry.yarnpkg.com/is-reference/-/is-reference-3.0.2.tgz#154747a01f45cd962404ee89d43837af2cba247c" + integrity sha512-v3rht/LgVcsdZa3O2Nqs+NMowLOxeOm7Ay9+/ARQ2F+qEoANRcqrjAZKGN0v8ymUetZGgkp26LTnGT7H0Qo9Pg== + dependencies: + "@types/estree" "*" + +kleur@^4.1.5: + version "4.1.5" + resolved "https://registry.yarnpkg.com/kleur/-/kleur-4.1.5.tgz#95106101795f7050c6c650f350c683febddb1780" + integrity sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ== + +locate-character@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/locate-character/-/locate-character-3.0.0.tgz#0305c5b8744f61028ef5d01f444009e00779f974" + integrity sha512-SW13ws7BjaeJ6p7Q6CO2nchbYEc3X3J6WrmTTDto7yMPqVSZTUyY5Tjbid+Ab8gLnATtygYtiDIJGQRRn2ZOiA== + +magic-string@^0.30.10, magic-string@^0.30.4: + version "0.30.10" + resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.30.10.tgz#123d9c41a0cb5640c892b041d4cfb3bd0aa4b39e" + integrity sha512-iIRwTIf0QKV3UAnYK4PU8uiEc4SRh5jX0mwpIwETPpHdhVM4f53RSwS/vXvN1JhGX+Cs7B8qIq3d6AH49O5fAQ== + dependencies: + "@jridgewell/sourcemap-codec" "^1.4.15" + +mdn-data@2.0.30: + version "2.0.30" + resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.30.tgz#ce4df6f80af6cfbe218ecd5c552ba13c4dfa08cc" + integrity sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA== + +ms@2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" + integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== + +nanoid@^3.3.7: + version "3.3.7" + resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.7.tgz#d0c301a691bc8d54efa0a2226ccf3fe2fd656bd8" + integrity sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g== + +periscopic@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/periscopic/-/periscopic-3.1.0.tgz#7e9037bf51c5855bd33b48928828db4afa79d97a" + integrity sha512-vKiQ8RRtkl9P+r/+oefh25C3fhybptkHKCZSPlcXiJux2tJF55GnEj3BVn4A5gKfq9NWWXXrxkHBwVPUfH0opw== + dependencies: + "@types/estree" "^1.0.0" + estree-walker "^3.0.0" + is-reference "^3.0.0" + +picocolors@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.1.tgz#a8ad579b571952f0e5d25892de5445bcfe25aaa1" + integrity sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew== + +postcss@^8.4.38: + version "8.4.38" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.38.tgz#b387d533baf2054288e337066d81c6bee9db9e0e" + integrity sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A== + dependencies: + nanoid "^3.3.7" + picocolors "^1.0.0" + source-map-js "^1.2.0" + +rollup@^4.13.0: + version "4.18.0" + resolved "https://registry.yarnpkg.com/rollup/-/rollup-4.18.0.tgz#497f60f0c5308e4602cf41136339fbf87d5f5dda" + integrity sha512-QmJz14PX3rzbJCN1SG4Xe/bAAX2a6NpCP8ab2vfu2GiUr8AQcr2nCV/oEO3yneFarB67zk8ShlIyWb2LGTb3Sg== + dependencies: + "@types/estree" "1.0.5" + optionalDependencies: + "@rollup/rollup-android-arm-eabi" "4.18.0" + "@rollup/rollup-android-arm64" "4.18.0" + "@rollup/rollup-darwin-arm64" "4.18.0" + "@rollup/rollup-darwin-x64" "4.18.0" + "@rollup/rollup-linux-arm-gnueabihf" "4.18.0" + "@rollup/rollup-linux-arm-musleabihf" "4.18.0" + "@rollup/rollup-linux-arm64-gnu" "4.18.0" + "@rollup/rollup-linux-arm64-musl" "4.18.0" + "@rollup/rollup-linux-powerpc64le-gnu" "4.18.0" + "@rollup/rollup-linux-riscv64-gnu" "4.18.0" + "@rollup/rollup-linux-s390x-gnu" "4.18.0" + "@rollup/rollup-linux-x64-gnu" "4.18.0" + "@rollup/rollup-linux-x64-musl" "4.18.0" + "@rollup/rollup-win32-arm64-msvc" "4.18.0" + "@rollup/rollup-win32-ia32-msvc" "4.18.0" + "@rollup/rollup-win32-x64-msvc" "4.18.0" + fsevents "~2.3.2" + +source-map-js@^1.0.1, source-map-js@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.2.0.tgz#16b809c162517b5b8c3e7dcd315a2a5c2612b2af" + integrity sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg== + +svelte-hmr@^0.16.0: + version "0.16.0" + resolved "https://registry.yarnpkg.com/svelte-hmr/-/svelte-hmr-0.16.0.tgz#9f345b7d1c1662f1613747ed7e82507e376c1716" + integrity sha512-Gyc7cOS3VJzLlfj7wKS0ZnzDVdv3Pn2IuVeJPk9m2skfhcu5bq3wtIZyQGggr7/Iim5rH5cncyQft/kRLupcnA== + +svelte@^4.2.18: + version "4.2.18" + resolved "https://registry.yarnpkg.com/svelte/-/svelte-4.2.18.tgz#33dbce74e83eb6dcc54dbea25f9758b1d8e8bb78" + integrity sha512-d0FdzYIiAePqRJEb90WlJDkjUEx42xhivxN8muUBmfZnP+tzUgz12DJ2hRJi8sIHCME7jeK1PTMgKPSfTd8JrA== + dependencies: + "@ampproject/remapping" "^2.2.1" + "@jridgewell/sourcemap-codec" "^1.4.15" + "@jridgewell/trace-mapping" "^0.3.18" + "@types/estree" "^1.0.1" + acorn "^8.9.0" + aria-query "^5.3.0" + axobject-query "^4.0.0" + code-red "^1.0.3" + css-tree "^2.3.1" + estree-walker "^3.0.3" + is-reference "^3.0.1" + locate-character "^3.0.0" + magic-string "^0.30.4" + periscopic "^3.1.0" + +vite@^5.3.1: + version "5.3.1" + resolved "https://registry.yarnpkg.com/vite/-/vite-5.3.1.tgz#bb2ca6b5fd7483249d3e86b25026e27ba8a663e6" + integrity sha512-XBmSKRLXLxiaPYamLv3/hnP/KXDai1NDexN0FpkTaZXTfycHvkRHoenpgl/fvuK/kPbB6xAgoyiryAhQNxYmAQ== + dependencies: + esbuild "^0.21.3" + postcss "^8.4.38" + rollup "^4.13.0" + optionalDependencies: + fsevents "~2.3.3" + +vitefu@^0.2.5: + version "0.2.5" + resolved "https://registry.yarnpkg.com/vitefu/-/vitefu-0.2.5.tgz#c1b93c377fbdd3e5ddd69840ea3aa70b40d90969" + integrity sha512-SgHtMLoqaeeGnd2evZ849ZbACbnwQCIwRH57t18FxcXoZop0uQu0uzlIhJBlF/eWVzuce0sHeqPcDo+evVcg8Q==