├── .gitignore ├── .npmignore ├── README.md ├── index.js ├── package.json ├── playground ├── .gitignore ├── .vscode │ └── extensions.json ├── README.md ├── index.html ├── jsconfig.json ├── package.json ├── pnpm-lock.yaml ├── public │ └── vite.svg ├── src │ ├── App.svelte │ ├── lib │ │ └── Counter.svelte │ ├── main.js │ └── vite-env.d.ts └── vite.config.js ├── pnpm-lock.yaml └── types.d.ts /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | node_modules -------------------------------------------------------------------------------- /.npmignore: -------------------------------------------------------------------------------- 1 | pnpm-lock.yaml -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # vite-plugin-sveld 2 | 3 | A vite plugin to parse your Svelte components through [sveld](https://github.com/IBM/sveld) 4 | 5 | ## Setup 6 | 7 | ``` 8 | npm install -D vite-plugin-sveld sveld 9 | ``` 10 | 11 | ```js 12 | // vite.config.js 13 | import sveld from 'vite-plugin-sveld' 14 | 15 | export default { 16 | plugins: [sveld()] 17 | ... 18 | } 19 | ``` 20 | 21 | ## Usage 22 | 23 | By adding `?raw&sveld` to a .svelte import, it will return the JSON output from sveld for that component. 24 | 25 | ```svelte 26 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | {#each docs.props as prop} 41 | 42 | 43 | 44 | 45 | 46 | 47 | {/each} 48 | 49 |
NameTypeDefaultDescription
{prop.name}{prop.type?.replace(/'/g, '"')}{prop.value?.replace(/'/g, '"') ?? ''}{@html prop.description ? prop.description : ''}
50 | ``` 51 | 52 | ## ?raw&sveld types 53 | 54 | If you'd like to have the sveld imports typed, add 55 | 56 | ``` 57 | /// 58 | ``` 59 | 60 | to a `src/global.d.ts` file or similar in your project. Imports _must_ have `?raw&sveld` specifically to be typed. Adding additional query params, or flipping to `?sveld&raw` will cause them to be untyped. 61 | -------------------------------------------------------------------------------- /index.js: -------------------------------------------------------------------------------- 1 | import * as sveld from 'sveld' 2 | import * as svelte from 'svelte/compiler' 3 | import sveltePreprocess from 'svelte-preprocess' 4 | import qs from 'query-string' 5 | 6 | const { ComponentParser } = sveld.default 7 | 8 | 9 | export default function sveldPlugin() { 10 | return { 11 | name: 'vite-plugin-sveld', 12 | async transform(src, id) { 13 | const query = qs.parse(id.split('?')[1]) 14 | 15 | if ('raw' in query && 'sveld' in query) { 16 | const raw = JSON.parse(src.split('export default ')[1]) 17 | 18 | let { code } = await svelte.preprocess(raw, sveltePreprocess(), { 19 | filename: id 20 | }) 21 | const data = new ComponentParser({ 22 | verbose: false 23 | }).parseSvelteComponent(code, { 24 | filePath: id, 25 | moduleName: id 26 | }) 27 | 28 | 29 | return { 30 | code: `export default ${JSON.stringify(data)}`, 31 | map: null 32 | } 33 | } 34 | } 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "vite-plugin-sveld", 3 | "version": "2.0.0", 4 | "types": "types.d.ts", 5 | "description": "A vite plugin to parse your Svelte components through sveld", 6 | "repository": { 7 | "type": "git", 8 | "url": "https://github.com/mattjennings/vite-plugin-sveld" 9 | }, 10 | "keywords": [ 11 | "vite", 12 | "sveld", 13 | "svelte" 14 | ], 15 | "author": "Matt Jennings", 16 | "license": "ISC", 17 | "type": "module", 18 | "peerDependencies": { 19 | "svelte": ">=4.0.0", 20 | "sveld": ">=0.20.0" 21 | }, 22 | "devDependencies": { 23 | "svelte": "^4.2.19", 24 | "sveld": "^0.20.2" 25 | }, 26 | "dependencies": { 27 | "query-string": "^9.1.1", 28 | "svelte-preprocess": "^6.0.3" 29 | }, 30 | "exports": { 31 | ".": "./index.js" 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /playground/.gitignore: -------------------------------------------------------------------------------- 1 | # Logs 2 | logs 3 | *.log 4 | npm-debug.log* 5 | yarn-debug.log* 6 | yarn-error.log* 7 | pnpm-debug.log* 8 | lerna-debug.log* 9 | 10 | node_modules 11 | dist 12 | dist-ssr 13 | *.local 14 | 15 | # Editor directories and files 16 | .vscode/* 17 | !.vscode/extensions.json 18 | .idea 19 | .DS_Store 20 | *.suo 21 | *.ntvs* 22 | *.njsproj 23 | *.sln 24 | *.sw? 25 | -------------------------------------------------------------------------------- /playground/.vscode/extensions.json: -------------------------------------------------------------------------------- 1 | { 2 | "recommendations": ["svelte.svelte-vscode"] 3 | } 4 | -------------------------------------------------------------------------------- /playground/README.md: -------------------------------------------------------------------------------- 1 | # Svelte + Vite 2 | 3 | This template should help get you started developing with Svelte in Vite. 4 | 5 | ## Recommended IDE Setup 6 | 7 | [VS Code](https://code.visualstudio.com/) + [Svelte](https://marketplace.visualstudio.com/items?itemName=svelte.svelte-vscode). 8 | 9 | ## Need an official Svelte framework? 10 | 11 | Check out [SvelteKit](https://github.com/sveltejs/kit#readme), which is also powered by Vite. Deploy anywhere with its serverless-first approach and adapt to various platforms, with out of the box support for TypeScript, SCSS, and Less, and easily-added support for mdsvex, GraphQL, PostCSS, Tailwind CSS, and more. 12 | 13 | ## Technical considerations 14 | 15 | **Why use this over SvelteKit?** 16 | 17 | - It brings its own routing solution which might not be preferable for some users. 18 | - It is first and foremost a framework that just happens to use Vite under the hood, not a Vite app. 19 | `vite dev` and `vite build` wouldn't work in a SvelteKit environment, for example. 20 | 21 | This template contains as little as possible to get started with Vite + Svelte, while taking into account the developer experience with regards to HMR and intellisense. It demonstrates capabilities on par with the other `create-vite` templates and is a good starting point for beginners dipping their toes into a Vite + Svelte project. 22 | 23 | Should you later need the extended capabilities and extensibility provided by SvelteKit, the template has been structured similarly to SvelteKit so that it is easy to migrate. 24 | 25 | **Why `global.d.ts` instead of `compilerOptions.types` inside `jsconfig.json` or `tsconfig.json`?** 26 | 27 | Setting `compilerOptions.types` shuts out all other types not explicitly listed in the configuration. Using triple-slash references keeps the default TypeScript setting of accepting type information from the entire workspace, while also adding `svelte` and `vite/client` type information. 28 | 29 | **Why include `.vscode/extensions.json`?** 30 | 31 | Other templates indirectly recommend extensions via the README, but this file allows VS Code to prompt the user to install the recommended extension upon opening the project. 32 | 33 | **Why enable `checkJs` in the JS template?** 34 | 35 | It is likely that most cases of changing variable types in runtime are likely to be accidental, rather than deliberate. This provides advanced typechecking out of the box. Should you like to take advantage of the dynamically-typed nature of JavaScript, it is trivial to change the configuration. 36 | 37 | **Why is HMR not preserving my local component state?** 38 | 39 | HMR state preservation comes with a number of gotchas! It has been disabled by default in both `svelte-hmr` and `@sveltejs/vite-plugin-svelte` due to its often surprising behavior. You can read the details [here](https://github.com/rixo/svelte-hmr#svelte-hmr). 40 | 41 | If you have state that's important to retain within a component, consider creating an external store which would not be replaced by HMR. 42 | 43 | ```js 44 | // store.js 45 | // An extremely simple external store 46 | import { writable } from 'svelte/store' 47 | export default writable(0) 48 | ``` 49 | -------------------------------------------------------------------------------- /playground/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | Vite + Svelte 8 | 9 | 10 |
11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /playground/jsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "moduleResolution": "Node", 4 | "target": "ESNext", 5 | "module": "ESNext", 6 | /** 7 | * svelte-preprocess cannot figure out whether you have 8 | * a value or a type, so tell TypeScript to enforce using 9 | * `import type` instead of `import` for Types. 10 | */ 11 | "importsNotUsedAsValues": "error", 12 | "isolatedModules": true, 13 | "resolveJsonModule": true, 14 | /** 15 | * To have warnings / errors of the Svelte compiler at the 16 | * correct position, enable source maps by default. 17 | */ 18 | "sourceMap": true, 19 | "esModuleInterop": true, 20 | "skipLibCheck": true, 21 | "forceConsistentCasingInFileNames": true, 22 | "baseUrl": ".", 23 | /** 24 | * Typecheck JS in `.svelte` and `.js` files by default. 25 | * Disable this if you'd like to use dynamic types. 26 | */ 27 | "checkJs": true 28 | }, 29 | /** 30 | * Use global.d.ts instead of compilerOptions.types 31 | * to avoid limiting type declarations. 32 | */ 33 | "include": ["src/**/*.d.ts", "src/**/*.js", "src/**/*.svelte"] 34 | } 35 | -------------------------------------------------------------------------------- /playground/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "playground", 3 | "private": true, 4 | "version": "0.0.0", 5 | "type": "module", 6 | "scripts": { 7 | "dev": "vite", 8 | "build": "vite build", 9 | "preview": "vite preview" 10 | }, 11 | "devDependencies": { 12 | "@sveltejs/vite-plugin-svelte": "^3.1.2", 13 | "vite-plugin-sveld": "file:../", 14 | "svelte": "^4.2.19", 15 | "sveld": "^0.20.2", 16 | "vite": "^5.4.8" 17 | } 18 | } -------------------------------------------------------------------------------- /playground/pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | lockfileVersion: '6.0' 2 | 3 | settings: 4 | autoInstallPeers: true 5 | excludeLinksFromLockfile: false 6 | 7 | devDependencies: 8 | '@sveltejs/vite-plugin-svelte': 9 | specifier: ^3.1.2 10 | version: 3.1.2(svelte@4.2.19)(vite@5.4.8) 11 | sveld: 12 | specifier: ^0.20.2 13 | version: 0.20.2 14 | svelte: 15 | specifier: ^4.2.19 16 | version: 4.2.19 17 | vite: 18 | specifier: ^5.4.8 19 | version: 5.4.8 20 | vite-plugin-sveld: 21 | specifier: file:../ 22 | version: file:..(sveld@0.20.2)(svelte@4.2.19) 23 | 24 | packages: 25 | 26 | /@ampproject/remapping@2.3.0: 27 | resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==} 28 | engines: {node: '>=6.0.0'} 29 | dependencies: 30 | '@jridgewell/gen-mapping': 0.3.5 31 | '@jridgewell/trace-mapping': 0.3.25 32 | dev: true 33 | 34 | /@esbuild/aix-ppc64@0.21.5: 35 | resolution: {integrity: sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==} 36 | engines: {node: '>=12'} 37 | cpu: [ppc64] 38 | os: [aix] 39 | requiresBuild: true 40 | dev: true 41 | optional: true 42 | 43 | /@esbuild/android-arm64@0.21.5: 44 | resolution: {integrity: sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==} 45 | engines: {node: '>=12'} 46 | cpu: [arm64] 47 | os: [android] 48 | requiresBuild: true 49 | dev: true 50 | optional: true 51 | 52 | /@esbuild/android-arm@0.21.5: 53 | resolution: {integrity: sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==} 54 | engines: {node: '>=12'} 55 | cpu: [arm] 56 | os: [android] 57 | requiresBuild: true 58 | dev: true 59 | optional: true 60 | 61 | /@esbuild/android-x64@0.21.5: 62 | resolution: {integrity: sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==} 63 | engines: {node: '>=12'} 64 | cpu: [x64] 65 | os: [android] 66 | requiresBuild: true 67 | dev: true 68 | optional: true 69 | 70 | /@esbuild/darwin-arm64@0.21.5: 71 | resolution: {integrity: sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==} 72 | engines: {node: '>=12'} 73 | cpu: [arm64] 74 | os: [darwin] 75 | requiresBuild: true 76 | dev: true 77 | optional: true 78 | 79 | /@esbuild/darwin-x64@0.21.5: 80 | resolution: {integrity: sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==} 81 | engines: {node: '>=12'} 82 | cpu: [x64] 83 | os: [darwin] 84 | requiresBuild: true 85 | dev: true 86 | optional: true 87 | 88 | /@esbuild/freebsd-arm64@0.21.5: 89 | resolution: {integrity: sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==} 90 | engines: {node: '>=12'} 91 | cpu: [arm64] 92 | os: [freebsd] 93 | requiresBuild: true 94 | dev: true 95 | optional: true 96 | 97 | /@esbuild/freebsd-x64@0.21.5: 98 | resolution: {integrity: sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==} 99 | engines: {node: '>=12'} 100 | cpu: [x64] 101 | os: [freebsd] 102 | requiresBuild: true 103 | dev: true 104 | optional: true 105 | 106 | /@esbuild/linux-arm64@0.21.5: 107 | resolution: {integrity: sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==} 108 | engines: {node: '>=12'} 109 | cpu: [arm64] 110 | os: [linux] 111 | requiresBuild: true 112 | dev: true 113 | optional: true 114 | 115 | /@esbuild/linux-arm@0.21.5: 116 | resolution: {integrity: sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==} 117 | engines: {node: '>=12'} 118 | cpu: [arm] 119 | os: [linux] 120 | requiresBuild: true 121 | dev: true 122 | optional: true 123 | 124 | /@esbuild/linux-ia32@0.21.5: 125 | resolution: {integrity: sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==} 126 | engines: {node: '>=12'} 127 | cpu: [ia32] 128 | os: [linux] 129 | requiresBuild: true 130 | dev: true 131 | optional: true 132 | 133 | /@esbuild/linux-loong64@0.21.5: 134 | resolution: {integrity: sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==} 135 | engines: {node: '>=12'} 136 | cpu: [loong64] 137 | os: [linux] 138 | requiresBuild: true 139 | dev: true 140 | optional: true 141 | 142 | /@esbuild/linux-mips64el@0.21.5: 143 | resolution: {integrity: sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==} 144 | engines: {node: '>=12'} 145 | cpu: [mips64el] 146 | os: [linux] 147 | requiresBuild: true 148 | dev: true 149 | optional: true 150 | 151 | /@esbuild/linux-ppc64@0.21.5: 152 | resolution: {integrity: sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==} 153 | engines: {node: '>=12'} 154 | cpu: [ppc64] 155 | os: [linux] 156 | requiresBuild: true 157 | dev: true 158 | optional: true 159 | 160 | /@esbuild/linux-riscv64@0.21.5: 161 | resolution: {integrity: sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==} 162 | engines: {node: '>=12'} 163 | cpu: [riscv64] 164 | os: [linux] 165 | requiresBuild: true 166 | dev: true 167 | optional: true 168 | 169 | /@esbuild/linux-s390x@0.21.5: 170 | resolution: {integrity: sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==} 171 | engines: {node: '>=12'} 172 | cpu: [s390x] 173 | os: [linux] 174 | requiresBuild: true 175 | dev: true 176 | optional: true 177 | 178 | /@esbuild/linux-x64@0.21.5: 179 | resolution: {integrity: sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==} 180 | engines: {node: '>=12'} 181 | cpu: [x64] 182 | os: [linux] 183 | requiresBuild: true 184 | dev: true 185 | optional: true 186 | 187 | /@esbuild/netbsd-x64@0.21.5: 188 | resolution: {integrity: sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==} 189 | engines: {node: '>=12'} 190 | cpu: [x64] 191 | os: [netbsd] 192 | requiresBuild: true 193 | dev: true 194 | optional: true 195 | 196 | /@esbuild/openbsd-x64@0.21.5: 197 | resolution: {integrity: sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==} 198 | engines: {node: '>=12'} 199 | cpu: [x64] 200 | os: [openbsd] 201 | requiresBuild: true 202 | dev: true 203 | optional: true 204 | 205 | /@esbuild/sunos-x64@0.21.5: 206 | resolution: {integrity: sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==} 207 | engines: {node: '>=12'} 208 | cpu: [x64] 209 | os: [sunos] 210 | requiresBuild: true 211 | dev: true 212 | optional: true 213 | 214 | /@esbuild/win32-arm64@0.21.5: 215 | resolution: {integrity: sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==} 216 | engines: {node: '>=12'} 217 | cpu: [arm64] 218 | os: [win32] 219 | requiresBuild: true 220 | dev: true 221 | optional: true 222 | 223 | /@esbuild/win32-ia32@0.21.5: 224 | resolution: {integrity: sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==} 225 | engines: {node: '>=12'} 226 | cpu: [ia32] 227 | os: [win32] 228 | requiresBuild: true 229 | dev: true 230 | optional: true 231 | 232 | /@esbuild/win32-x64@0.21.5: 233 | resolution: {integrity: sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==} 234 | engines: {node: '>=12'} 235 | cpu: [x64] 236 | os: [win32] 237 | requiresBuild: true 238 | dev: true 239 | optional: true 240 | 241 | /@jridgewell/gen-mapping@0.3.5: 242 | resolution: {integrity: sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==} 243 | engines: {node: '>=6.0.0'} 244 | dependencies: 245 | '@jridgewell/set-array': 1.2.1 246 | '@jridgewell/sourcemap-codec': 1.5.0 247 | '@jridgewell/trace-mapping': 0.3.25 248 | dev: true 249 | 250 | /@jridgewell/resolve-uri@3.1.2: 251 | resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} 252 | engines: {node: '>=6.0.0'} 253 | dev: true 254 | 255 | /@jridgewell/set-array@1.2.1: 256 | resolution: {integrity: sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==} 257 | engines: {node: '>=6.0.0'} 258 | dev: true 259 | 260 | /@jridgewell/sourcemap-codec@1.5.0: 261 | resolution: {integrity: sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==} 262 | dev: true 263 | 264 | /@jridgewell/trace-mapping@0.3.25: 265 | resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} 266 | dependencies: 267 | '@jridgewell/resolve-uri': 3.1.2 268 | '@jridgewell/sourcemap-codec': 1.5.0 269 | dev: true 270 | 271 | /@rollup/plugin-node-resolve@13.3.0(rollup@2.79.2): 272 | resolution: {integrity: sha512-Lus8rbUo1eEcnS4yTFKLZrVumLPY+YayBdWXgFSHYhTT2iJbMhoaaBL3xl5NCdeRytErGr8tZ0L71BMRmnlwSw==} 273 | engines: {node: '>= 10.0.0'} 274 | peerDependencies: 275 | rollup: ^2.42.0 276 | dependencies: 277 | '@rollup/pluginutils': 3.1.0(rollup@2.79.2) 278 | '@types/resolve': 1.17.1 279 | deepmerge: 4.2.2 280 | is-builtin-module: 3.2.0 281 | is-module: 1.0.0 282 | resolve: 1.22.1 283 | rollup: 2.79.2 284 | dev: true 285 | 286 | /@rollup/pluginutils@3.1.0(rollup@2.79.2): 287 | resolution: {integrity: sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==} 288 | engines: {node: '>= 8.0.0'} 289 | peerDependencies: 290 | rollup: ^1.20.0||^2.0.0 291 | dependencies: 292 | '@types/estree': 0.0.39 293 | estree-walker: 1.0.1 294 | picomatch: 2.3.1 295 | rollup: 2.79.2 296 | dev: true 297 | 298 | /@rollup/pluginutils@4.2.1: 299 | resolution: {integrity: sha512-iKnFXr7NkdZAIHiIWE+BX5ULi/ucVFYWD6TbAV+rZctiRTY2PL6tsIKhoIOaoskiWAkgu+VsbXgUVDNLHf+InQ==} 300 | engines: {node: '>= 8.0.0'} 301 | dependencies: 302 | estree-walker: 2.0.2 303 | picomatch: 2.3.1 304 | dev: true 305 | 306 | /@rollup/rollup-android-arm-eabi@4.24.0: 307 | resolution: {integrity: sha512-Q6HJd7Y6xdB48x8ZNVDOqsbh2uByBhgK8PiQgPhwkIw/HC/YX5Ghq2mQY5sRMZWHb3VsFkWooUVOZHKr7DmDIA==} 308 | cpu: [arm] 309 | os: [android] 310 | requiresBuild: true 311 | dev: true 312 | optional: true 313 | 314 | /@rollup/rollup-android-arm64@4.24.0: 315 | resolution: {integrity: sha512-ijLnS1qFId8xhKjT81uBHuuJp2lU4x2yxa4ctFPtG+MqEE6+C5f/+X/bStmxapgmwLwiL3ih122xv8kVARNAZA==} 316 | cpu: [arm64] 317 | os: [android] 318 | requiresBuild: true 319 | dev: true 320 | optional: true 321 | 322 | /@rollup/rollup-darwin-arm64@4.24.0: 323 | resolution: {integrity: sha512-bIv+X9xeSs1XCk6DVvkO+S/z8/2AMt/2lMqdQbMrmVpgFvXlmde9mLcbQpztXm1tajC3raFDqegsH18HQPMYtA==} 324 | cpu: [arm64] 325 | os: [darwin] 326 | requiresBuild: true 327 | dev: true 328 | optional: true 329 | 330 | /@rollup/rollup-darwin-x64@4.24.0: 331 | resolution: {integrity: sha512-X6/nOwoFN7RT2svEQWUsW/5C/fYMBe4fnLK9DQk4SX4mgVBiTA9h64kjUYPvGQ0F/9xwJ5U5UfTbl6BEjaQdBQ==} 332 | cpu: [x64] 333 | os: [darwin] 334 | requiresBuild: true 335 | dev: true 336 | optional: true 337 | 338 | /@rollup/rollup-linux-arm-gnueabihf@4.24.0: 339 | resolution: {integrity: sha512-0KXvIJQMOImLCVCz9uvvdPgfyWo93aHHp8ui3FrtOP57svqrF/roSSR5pjqL2hcMp0ljeGlU4q9o/rQaAQ3AYA==} 340 | cpu: [arm] 341 | os: [linux] 342 | requiresBuild: true 343 | dev: true 344 | optional: true 345 | 346 | /@rollup/rollup-linux-arm-musleabihf@4.24.0: 347 | resolution: {integrity: sha512-it2BW6kKFVh8xk/BnHfakEeoLPv8STIISekpoF+nBgWM4d55CZKc7T4Dx1pEbTnYm/xEKMgy1MNtYuoA8RFIWw==} 348 | cpu: [arm] 349 | os: [linux] 350 | requiresBuild: true 351 | dev: true 352 | optional: true 353 | 354 | /@rollup/rollup-linux-arm64-gnu@4.24.0: 355 | resolution: {integrity: sha512-i0xTLXjqap2eRfulFVlSnM5dEbTVque/3Pi4g2y7cxrs7+a9De42z4XxKLYJ7+OhE3IgxvfQM7vQc43bwTgPwA==} 356 | cpu: [arm64] 357 | os: [linux] 358 | requiresBuild: true 359 | dev: true 360 | optional: true 361 | 362 | /@rollup/rollup-linux-arm64-musl@4.24.0: 363 | resolution: {integrity: sha512-9E6MKUJhDuDh604Qco5yP/3qn3y7SLXYuiC0Rpr89aMScS2UAmK1wHP2b7KAa1nSjWJc/f/Lc0Wl1L47qjiyQw==} 364 | cpu: [arm64] 365 | os: [linux] 366 | requiresBuild: true 367 | dev: true 368 | optional: true 369 | 370 | /@rollup/rollup-linux-powerpc64le-gnu@4.24.0: 371 | resolution: {integrity: sha512-2XFFPJ2XMEiF5Zi2EBf4h73oR1V/lycirxZxHZNc93SqDN/IWhYYSYj8I9381ikUFXZrz2v7r2tOVk2NBwxrWw==} 372 | cpu: [ppc64] 373 | os: [linux] 374 | requiresBuild: true 375 | dev: true 376 | optional: true 377 | 378 | /@rollup/rollup-linux-riscv64-gnu@4.24.0: 379 | resolution: {integrity: sha512-M3Dg4hlwuntUCdzU7KjYqbbd+BLq3JMAOhCKdBE3TcMGMZbKkDdJ5ivNdehOssMCIokNHFOsv7DO4rlEOfyKpg==} 380 | cpu: [riscv64] 381 | os: [linux] 382 | requiresBuild: true 383 | dev: true 384 | optional: true 385 | 386 | /@rollup/rollup-linux-s390x-gnu@4.24.0: 387 | resolution: {integrity: sha512-mjBaoo4ocxJppTorZVKWFpy1bfFj9FeCMJqzlMQGjpNPY9JwQi7OuS1axzNIk0nMX6jSgy6ZURDZ2w0QW6D56g==} 388 | cpu: [s390x] 389 | os: [linux] 390 | requiresBuild: true 391 | dev: true 392 | optional: true 393 | 394 | /@rollup/rollup-linux-x64-gnu@4.24.0: 395 | resolution: {integrity: sha512-ZXFk7M72R0YYFN5q13niV0B7G8/5dcQ9JDp8keJSfr3GoZeXEoMHP/HlvqROA3OMbMdfr19IjCeNAnPUG93b6A==} 396 | cpu: [x64] 397 | os: [linux] 398 | requiresBuild: true 399 | dev: true 400 | optional: true 401 | 402 | /@rollup/rollup-linux-x64-musl@4.24.0: 403 | resolution: {integrity: sha512-w1i+L7kAXZNdYl+vFvzSZy8Y1arS7vMgIy8wusXJzRrPyof5LAb02KGr1PD2EkRcl73kHulIID0M501lN+vobQ==} 404 | cpu: [x64] 405 | os: [linux] 406 | requiresBuild: true 407 | dev: true 408 | optional: true 409 | 410 | /@rollup/rollup-win32-arm64-msvc@4.24.0: 411 | resolution: {integrity: sha512-VXBrnPWgBpVDCVY6XF3LEW0pOU51KbaHhccHw6AS6vBWIC60eqsH19DAeeObl+g8nKAz04QFdl/Cefta0xQtUQ==} 412 | cpu: [arm64] 413 | os: [win32] 414 | requiresBuild: true 415 | dev: true 416 | optional: true 417 | 418 | /@rollup/rollup-win32-ia32-msvc@4.24.0: 419 | resolution: {integrity: sha512-xrNcGDU0OxVcPTH/8n/ShH4UevZxKIO6HJFK0e15XItZP2UcaiLFd5kiX7hJnqCbSztUF8Qot+JWBC/QXRPYWQ==} 420 | cpu: [ia32] 421 | os: [win32] 422 | requiresBuild: true 423 | dev: true 424 | optional: true 425 | 426 | /@rollup/rollup-win32-x64-msvc@4.24.0: 427 | resolution: {integrity: sha512-fbMkAF7fufku0N2dE5TBXcNlg0pt0cJue4xBRE2Qc5Vqikxr4VCgKj/ht6SMdFcOacVA9rqF70APJ8RN/4vMJw==} 428 | cpu: [x64] 429 | os: [win32] 430 | requiresBuild: true 431 | dev: true 432 | optional: true 433 | 434 | /@sveltejs/vite-plugin-svelte-inspector@2.1.0(@sveltejs/vite-plugin-svelte@3.1.2)(svelte@4.2.19)(vite@5.4.8): 435 | resolution: {integrity: sha512-9QX28IymvBlSCqsCll5t0kQVxipsfhFFL+L2t3nTWfXnddYwxBuAEtTtlaVQpRz9c37BhJjltSeY4AJSC03SSg==} 436 | engines: {node: ^18.0.0 || >=20} 437 | peerDependencies: 438 | '@sveltejs/vite-plugin-svelte': ^3.0.0 439 | svelte: ^4.0.0 || ^5.0.0-next.0 440 | vite: ^5.0.0 441 | dependencies: 442 | '@sveltejs/vite-plugin-svelte': 3.1.2(svelte@4.2.19)(vite@5.4.8) 443 | debug: 4.3.4 444 | svelte: 4.2.19 445 | vite: 5.4.8 446 | transitivePeerDependencies: 447 | - supports-color 448 | dev: true 449 | 450 | /@sveltejs/vite-plugin-svelte@3.1.2(svelte@4.2.19)(vite@5.4.8): 451 | resolution: {integrity: sha512-Txsm1tJvtiYeLUVRNqxZGKR/mI+CzuIQuc2gn+YCs9rMTowpNZ2Nqt53JdL8KF9bLhAf2ruR/dr9eZCwdTriRA==} 452 | engines: {node: ^18.0.0 || >=20} 453 | peerDependencies: 454 | svelte: ^4.0.0 || ^5.0.0-next.0 455 | vite: ^5.0.0 456 | dependencies: 457 | '@sveltejs/vite-plugin-svelte-inspector': 2.1.0(@sveltejs/vite-plugin-svelte@3.1.2)(svelte@4.2.19)(vite@5.4.8) 458 | debug: 4.3.4 459 | deepmerge: 4.3.1 460 | kleur: 4.1.5 461 | magic-string: 0.30.11 462 | svelte: 4.2.19 463 | svelte-hmr: 0.16.0(svelte@4.2.19) 464 | vite: 5.4.8 465 | vitefu: 0.2.5(vite@5.4.8) 466 | transitivePeerDependencies: 467 | - supports-color 468 | dev: true 469 | 470 | /@types/estree@0.0.39: 471 | resolution: {integrity: sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==} 472 | dev: true 473 | 474 | /@types/estree@1.0.6: 475 | resolution: {integrity: sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==} 476 | dev: true 477 | 478 | /@types/node@18.11.4: 479 | resolution: {integrity: sha512-BxcJpBu8D3kv/GZkx/gSMz6VnTJREBj/4lbzYOQueUOELkt8WrO6zAcSPmp9uRPEW/d+lUO8QK0W2xnS1hEU0A==} 480 | dev: true 481 | 482 | /@types/resolve@1.17.1: 483 | resolution: {integrity: sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw==} 484 | dependencies: 485 | '@types/node': 18.11.4 486 | dev: true 487 | 488 | /acorn@8.12.1: 489 | resolution: {integrity: sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==} 490 | engines: {node: '>=0.4.0'} 491 | hasBin: true 492 | dev: true 493 | 494 | /aria-query@5.3.2: 495 | resolution: {integrity: sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==} 496 | engines: {node: '>= 0.4'} 497 | dev: true 498 | 499 | /axobject-query@4.1.0: 500 | resolution: {integrity: sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==} 501 | engines: {node: '>= 0.4'} 502 | dev: true 503 | 504 | /builtin-modules@3.3.0: 505 | resolution: {integrity: sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==} 506 | engines: {node: '>=6'} 507 | dev: true 508 | 509 | /code-red@1.0.4: 510 | resolution: {integrity: sha512-7qJWqItLA8/VPVlKJlFXU+NBlo/qyfs39aJcuMT/2ere32ZqvF5OSxgdM5xOfJJ7O429gg2HM47y8v9P+9wrNw==} 511 | dependencies: 512 | '@jridgewell/sourcemap-codec': 1.5.0 513 | '@types/estree': 1.0.6 514 | acorn: 8.12.1 515 | estree-walker: 3.0.3 516 | periscopic: 3.1.0 517 | dev: true 518 | 519 | /comment-parser@1.4.1: 520 | resolution: {integrity: sha512-buhp5kePrmda3vhc5B9t7pUQXAb2Tnd0qgpkIhPhkHXxJpiPJ11H0ZEU0oBpJ2QztSbzG/ZxMj/CHsYJqRHmyg==} 521 | engines: {node: '>= 12.0.0'} 522 | dev: true 523 | 524 | /css-tree@2.3.1: 525 | resolution: {integrity: sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==} 526 | engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0} 527 | dependencies: 528 | mdn-data: 2.0.30 529 | source-map-js: 1.0.2 530 | dev: true 531 | 532 | /debug@4.3.4: 533 | resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} 534 | engines: {node: '>=6.0'} 535 | peerDependencies: 536 | supports-color: '*' 537 | peerDependenciesMeta: 538 | supports-color: 539 | optional: true 540 | dependencies: 541 | ms: 2.1.2 542 | dev: true 543 | 544 | /decode-uri-component@0.4.1: 545 | resolution: {integrity: sha512-+8VxcR21HhTy8nOt6jf20w0c9CADrw1O8d+VZ/YzzCt4bJ3uBjw+D1q2osAB8RnpwwaeYBxy0HyKQxD5JBMuuQ==} 546 | engines: {node: '>=14.16'} 547 | dev: true 548 | 549 | /deepmerge@4.2.2: 550 | resolution: {integrity: sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==} 551 | engines: {node: '>=0.10.0'} 552 | dev: true 553 | 554 | /deepmerge@4.3.1: 555 | resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==} 556 | engines: {node: '>=0.10.0'} 557 | dev: true 558 | 559 | /esbuild@0.21.5: 560 | resolution: {integrity: sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==} 561 | engines: {node: '>=12'} 562 | hasBin: true 563 | requiresBuild: true 564 | optionalDependencies: 565 | '@esbuild/aix-ppc64': 0.21.5 566 | '@esbuild/android-arm': 0.21.5 567 | '@esbuild/android-arm64': 0.21.5 568 | '@esbuild/android-x64': 0.21.5 569 | '@esbuild/darwin-arm64': 0.21.5 570 | '@esbuild/darwin-x64': 0.21.5 571 | '@esbuild/freebsd-arm64': 0.21.5 572 | '@esbuild/freebsd-x64': 0.21.5 573 | '@esbuild/linux-arm': 0.21.5 574 | '@esbuild/linux-arm64': 0.21.5 575 | '@esbuild/linux-ia32': 0.21.5 576 | '@esbuild/linux-loong64': 0.21.5 577 | '@esbuild/linux-mips64el': 0.21.5 578 | '@esbuild/linux-ppc64': 0.21.5 579 | '@esbuild/linux-riscv64': 0.21.5 580 | '@esbuild/linux-s390x': 0.21.5 581 | '@esbuild/linux-x64': 0.21.5 582 | '@esbuild/netbsd-x64': 0.21.5 583 | '@esbuild/openbsd-x64': 0.21.5 584 | '@esbuild/sunos-x64': 0.21.5 585 | '@esbuild/win32-arm64': 0.21.5 586 | '@esbuild/win32-ia32': 0.21.5 587 | '@esbuild/win32-x64': 0.21.5 588 | dev: true 589 | 590 | /estree-walker@1.0.1: 591 | resolution: {integrity: sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==} 592 | dev: true 593 | 594 | /estree-walker@2.0.2: 595 | resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==} 596 | dev: true 597 | 598 | /estree-walker@3.0.3: 599 | resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==} 600 | dependencies: 601 | '@types/estree': 1.0.6 602 | dev: true 603 | 604 | /fdir@6.4.0(picomatch@4.0.2): 605 | resolution: {integrity: sha512-3oB133prH1o4j/L5lLW7uOCF1PlD+/It2L0eL/iAqWMB91RBbqTewABqxhj0ibBd90EEmWZq7ntIWzVaWcXTGQ==} 606 | peerDependencies: 607 | picomatch: ^3 || ^4 608 | peerDependenciesMeta: 609 | picomatch: 610 | optional: true 611 | dependencies: 612 | picomatch: 4.0.2 613 | dev: true 614 | 615 | /filter-obj@5.1.0: 616 | resolution: {integrity: sha512-qWeTREPoT7I0bifpPUXtxkZJ1XJzxWtfoWWkdVGqa+eCr3SHW/Ocp89o8vLvbUuQnadybJpjOKu4V+RwO6sGng==} 617 | engines: {node: '>=14.16'} 618 | dev: true 619 | 620 | /fsevents@2.3.3: 621 | resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} 622 | engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} 623 | os: [darwin] 624 | requiresBuild: true 625 | dev: true 626 | optional: true 627 | 628 | /function-bind@1.1.1: 629 | resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==} 630 | dev: true 631 | 632 | /has@1.0.3: 633 | resolution: {integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==} 634 | engines: {node: '>= 0.4.0'} 635 | dependencies: 636 | function-bind: 1.1.1 637 | dev: true 638 | 639 | /is-builtin-module@3.2.0: 640 | resolution: {integrity: sha512-phDA4oSGt7vl1n5tJvTWooWWAsXLY+2xCnxNqvKhGEzujg+A43wPlPOyDg3C8XQHN+6k/JTQWJ/j0dQh/qr+Hw==} 641 | engines: {node: '>=6'} 642 | dependencies: 643 | builtin-modules: 3.3.0 644 | dev: true 645 | 646 | /is-core-module@2.11.0: 647 | resolution: {integrity: sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==} 648 | dependencies: 649 | has: 1.0.3 650 | dev: true 651 | 652 | /is-module@1.0.0: 653 | resolution: {integrity: sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==} 654 | dev: true 655 | 656 | /is-reference@3.0.2: 657 | resolution: {integrity: sha512-v3rht/LgVcsdZa3O2Nqs+NMowLOxeOm7Ay9+/ARQ2F+qEoANRcqrjAZKGN0v8ymUetZGgkp26LTnGT7H0Qo9Pg==} 658 | dependencies: 659 | '@types/estree': 1.0.6 660 | dev: true 661 | 662 | /kleur@4.1.5: 663 | resolution: {integrity: sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==} 664 | engines: {node: '>=6'} 665 | dev: true 666 | 667 | /locate-character@3.0.0: 668 | resolution: {integrity: sha512-SW13ws7BjaeJ6p7Q6CO2nchbYEc3X3J6WrmTTDto7yMPqVSZTUyY5Tjbid+Ab8gLnATtygYtiDIJGQRRn2ZOiA==} 669 | dev: true 670 | 671 | /magic-string@0.30.11: 672 | resolution: {integrity: sha512-+Wri9p0QHMy+545hKww7YAu5NyzF8iomPL/RQazugQ9+Ez4Ic3mERMd8ZTX5rfK944j+560ZJi8iAwgak1Ac7A==} 673 | dependencies: 674 | '@jridgewell/sourcemap-codec': 1.5.0 675 | dev: true 676 | 677 | /mdn-data@2.0.30: 678 | resolution: {integrity: sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==} 679 | dev: true 680 | 681 | /ms@2.1.2: 682 | resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} 683 | dev: true 684 | 685 | /nanoid@3.3.7: 686 | resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==} 687 | engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} 688 | hasBin: true 689 | dev: true 690 | 691 | /path-parse@1.0.7: 692 | resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} 693 | dev: true 694 | 695 | /periscopic@3.1.0: 696 | resolution: {integrity: sha512-vKiQ8RRtkl9P+r/+oefh25C3fhybptkHKCZSPlcXiJux2tJF55GnEj3BVn4A5gKfq9NWWXXrxkHBwVPUfH0opw==} 697 | dependencies: 698 | '@types/estree': 1.0.6 699 | estree-walker: 3.0.3 700 | is-reference: 3.0.2 701 | dev: true 702 | 703 | /picocolors@1.1.0: 704 | resolution: {integrity: sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==} 705 | dev: true 706 | 707 | /picomatch@2.3.1: 708 | resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} 709 | engines: {node: '>=8.6'} 710 | dev: true 711 | 712 | /picomatch@4.0.2: 713 | resolution: {integrity: sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==} 714 | engines: {node: '>=12'} 715 | dev: true 716 | 717 | /postcss@8.4.47: 718 | resolution: {integrity: sha512-56rxCq7G/XfB4EkXq9Egn5GCqugWvDFjafDOThIdMBsI15iqPqR5r15TfSr1YPYeEI19YeaXMCbY6u88Y76GLQ==} 719 | engines: {node: ^10 || ^12 || >=14} 720 | dependencies: 721 | nanoid: 3.3.7 722 | picocolors: 1.1.0 723 | source-map-js: 1.2.1 724 | dev: true 725 | 726 | /prettier@2.8.8: 727 | resolution: {integrity: sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==} 728 | engines: {node: '>=10.13.0'} 729 | hasBin: true 730 | dev: true 731 | 732 | /query-string@9.1.1: 733 | resolution: {integrity: sha512-MWkCOVIcJP9QSKU52Ngow6bsAWAPlPK2MludXvcrS2bGZSl+T1qX9MZvRIkqUIkGLJquMJHWfsT6eRqUpp4aWg==} 734 | engines: {node: '>=18'} 735 | dependencies: 736 | decode-uri-component: 0.4.1 737 | filter-obj: 5.1.0 738 | split-on-first: 3.0.0 739 | dev: true 740 | 741 | /resolve.exports@2.0.2: 742 | resolution: {integrity: sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg==} 743 | engines: {node: '>=10'} 744 | dev: true 745 | 746 | /resolve@1.22.1: 747 | resolution: {integrity: sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==} 748 | hasBin: true 749 | dependencies: 750 | is-core-module: 2.11.0 751 | path-parse: 1.0.7 752 | supports-preserve-symlinks-flag: 1.0.0 753 | dev: true 754 | 755 | /rollup-plugin-svelte@7.2.2(rollup@2.79.2)(svelte@4.2.19): 756 | resolution: {integrity: sha512-hgnIblTRewaBEVQD6N0Q43o+y6q1TmDRhBjaEzQCi50bs8TXqjc+d1zFZyE8tsfgcfNHZQzclh4RxlFUB85H8Q==} 757 | engines: {node: '>=10'} 758 | peerDependencies: 759 | rollup: '>=2.0.0' 760 | svelte: '>=3.5.0' 761 | dependencies: 762 | '@rollup/pluginutils': 4.2.1 763 | resolve.exports: 2.0.2 764 | rollup: 2.79.2 765 | svelte: 4.2.19 766 | dev: true 767 | 768 | /rollup@2.79.2: 769 | resolution: {integrity: sha512-fS6iqSPZDs3dr/y7Od6y5nha8dW1YnbgtsyotCVvoFGKbERG++CVRFv1meyGDE1SNItQA8BrnCw7ScdAhRJ3XQ==} 770 | engines: {node: '>=10.0.0'} 771 | hasBin: true 772 | optionalDependencies: 773 | fsevents: 2.3.3 774 | dev: true 775 | 776 | /rollup@4.24.0: 777 | resolution: {integrity: sha512-DOmrlGSXNk1DM0ljiQA+i+o0rSLhtii1je5wgk60j49d1jHT5YYttBv1iWOnYSTG+fZZESUOSNiAl89SIet+Cg==} 778 | engines: {node: '>=18.0.0', npm: '>=8.0.0'} 779 | hasBin: true 780 | dependencies: 781 | '@types/estree': 1.0.6 782 | optionalDependencies: 783 | '@rollup/rollup-android-arm-eabi': 4.24.0 784 | '@rollup/rollup-android-arm64': 4.24.0 785 | '@rollup/rollup-darwin-arm64': 4.24.0 786 | '@rollup/rollup-darwin-x64': 4.24.0 787 | '@rollup/rollup-linux-arm-gnueabihf': 4.24.0 788 | '@rollup/rollup-linux-arm-musleabihf': 4.24.0 789 | '@rollup/rollup-linux-arm64-gnu': 4.24.0 790 | '@rollup/rollup-linux-arm64-musl': 4.24.0 791 | '@rollup/rollup-linux-powerpc64le-gnu': 4.24.0 792 | '@rollup/rollup-linux-riscv64-gnu': 4.24.0 793 | '@rollup/rollup-linux-s390x-gnu': 4.24.0 794 | '@rollup/rollup-linux-x64-gnu': 4.24.0 795 | '@rollup/rollup-linux-x64-musl': 4.24.0 796 | '@rollup/rollup-win32-arm64-msvc': 4.24.0 797 | '@rollup/rollup-win32-ia32-msvc': 4.24.0 798 | '@rollup/rollup-win32-x64-msvc': 4.24.0 799 | fsevents: 2.3.3 800 | dev: true 801 | 802 | /source-map-js@1.0.2: 803 | resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==} 804 | engines: {node: '>=0.10.0'} 805 | dev: true 806 | 807 | /source-map-js@1.2.1: 808 | resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==} 809 | engines: {node: '>=0.10.0'} 810 | dev: true 811 | 812 | /split-on-first@3.0.0: 813 | resolution: {integrity: sha512-qxQJTx2ryR0Dw0ITYyekNQWpz6f8dGd7vffGNflQQ3Iqj9NJ6qiZ7ELpZsJ/QBhIVAiDfXdag3+Gp8RvWa62AA==} 814 | engines: {node: '>=12'} 815 | dev: true 816 | 817 | /supports-preserve-symlinks-flag@1.0.0: 818 | resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} 819 | engines: {node: '>= 0.4'} 820 | dev: true 821 | 822 | /sveld@0.20.2: 823 | resolution: {integrity: sha512-pd/RZ4TR7oaX6XphE8uhwAjKIVw1lg19aysYM5lYpD97AthlAJD8kSEgtEXHXw6xFYXsfnhrj0XxGHnbKFsnlA==} 824 | hasBin: true 825 | dependencies: 826 | '@rollup/plugin-node-resolve': 13.3.0(rollup@2.79.2) 827 | acorn: 8.12.1 828 | comment-parser: 1.4.1 829 | prettier: 2.8.8 830 | rollup: 2.79.2 831 | rollup-plugin-svelte: 7.2.2(rollup@2.79.2)(svelte@4.2.19) 832 | svelte: 4.2.19 833 | svelte-preprocess: 6.0.3(svelte@4.2.19)(typescript@5.6.3) 834 | tinyglobby: 0.2.9 835 | typescript: 5.6.3 836 | transitivePeerDependencies: 837 | - '@babel/core' 838 | - coffeescript 839 | - less 840 | - postcss 841 | - postcss-load-config 842 | - pug 843 | - sass 844 | - stylus 845 | - sugarss 846 | dev: true 847 | 848 | /svelte-hmr@0.16.0(svelte@4.2.19): 849 | resolution: {integrity: sha512-Gyc7cOS3VJzLlfj7wKS0ZnzDVdv3Pn2IuVeJPk9m2skfhcu5bq3wtIZyQGggr7/Iim5rH5cncyQft/kRLupcnA==} 850 | engines: {node: ^12.20 || ^14.13.1 || >= 16} 851 | peerDependencies: 852 | svelte: ^3.19.0 || ^4.0.0 853 | dependencies: 854 | svelte: 4.2.19 855 | dev: true 856 | 857 | /svelte-preprocess@6.0.3(svelte@4.2.19)(typescript@5.6.3): 858 | resolution: {integrity: sha512-PLG2k05qHdhmRG7zR/dyo5qKvakhm8IJ+hD2eFRQmMLHp7X3eJnjeupUtvuRpbNiF31RjVw45W+abDwHEmP5OA==} 859 | engines: {node: '>= 18.0.0'} 860 | requiresBuild: true 861 | peerDependencies: 862 | '@babel/core': ^7.10.2 863 | coffeescript: ^2.5.1 864 | less: ^3.11.3 || ^4.0.0 865 | postcss: ^7 || ^8 866 | postcss-load-config: '>=3' 867 | pug: ^3.0.0 868 | sass: ^1.26.8 869 | stylus: '>=0.55' 870 | sugarss: ^2.0.0 || ^3.0.0 || ^4.0.0 871 | svelte: ^4.0.0 || ^5.0.0-next.100 || ^5.0.0 872 | typescript: ^5.0.0 873 | peerDependenciesMeta: 874 | '@babel/core': 875 | optional: true 876 | coffeescript: 877 | optional: true 878 | less: 879 | optional: true 880 | postcss: 881 | optional: true 882 | postcss-load-config: 883 | optional: true 884 | pug: 885 | optional: true 886 | sass: 887 | optional: true 888 | stylus: 889 | optional: true 890 | sugarss: 891 | optional: true 892 | typescript: 893 | optional: true 894 | dependencies: 895 | svelte: 4.2.19 896 | typescript: 5.6.3 897 | dev: true 898 | 899 | /svelte@4.2.19: 900 | resolution: {integrity: sha512-IY1rnGr6izd10B0A8LqsBfmlT5OILVuZ7XsI0vdGPEvuonFV7NYEUK4dAkm9Zg2q0Um92kYjTpS1CAP3Nh/KWw==} 901 | engines: {node: '>=16'} 902 | dependencies: 903 | '@ampproject/remapping': 2.3.0 904 | '@jridgewell/sourcemap-codec': 1.5.0 905 | '@jridgewell/trace-mapping': 0.3.25 906 | '@types/estree': 1.0.6 907 | acorn: 8.12.1 908 | aria-query: 5.3.2 909 | axobject-query: 4.1.0 910 | code-red: 1.0.4 911 | css-tree: 2.3.1 912 | estree-walker: 3.0.3 913 | is-reference: 3.0.2 914 | locate-character: 3.0.0 915 | magic-string: 0.30.11 916 | periscopic: 3.1.0 917 | dev: true 918 | 919 | /tinyglobby@0.2.9: 920 | resolution: {integrity: sha512-8or1+BGEdk1Zkkw2ii16qSS7uVrQJPre5A9o/XkWPATkk23FZh/15BKFxPnlTy6vkljZxLqYCzzBMj30ZrSvjw==} 921 | engines: {node: '>=12.0.0'} 922 | dependencies: 923 | fdir: 6.4.0(picomatch@4.0.2) 924 | picomatch: 4.0.2 925 | dev: true 926 | 927 | /typescript@5.6.3: 928 | resolution: {integrity: sha512-hjcS1mhfuyi4WW8IWtjP7brDrG2cuDZukyrYrSauoXGNgx0S7zceP07adYkJycEr56BOUTNPzbInooiN3fn1qw==} 929 | engines: {node: '>=14.17'} 930 | hasBin: true 931 | dev: true 932 | 933 | /vite@5.4.8: 934 | resolution: {integrity: sha512-FqrItQ4DT1NC4zCUqMB4c4AZORMKIa0m8/URVCZ77OZ/QSNeJ54bU1vrFADbDsuwfIPcgknRkmqakQcgnL4GiQ==} 935 | engines: {node: ^18.0.0 || >=20.0.0} 936 | hasBin: true 937 | peerDependencies: 938 | '@types/node': ^18.0.0 || >=20.0.0 939 | less: '*' 940 | lightningcss: ^1.21.0 941 | sass: '*' 942 | sass-embedded: '*' 943 | stylus: '*' 944 | sugarss: '*' 945 | terser: ^5.4.0 946 | peerDependenciesMeta: 947 | '@types/node': 948 | optional: true 949 | less: 950 | optional: true 951 | lightningcss: 952 | optional: true 953 | sass: 954 | optional: true 955 | sass-embedded: 956 | optional: true 957 | stylus: 958 | optional: true 959 | sugarss: 960 | optional: true 961 | terser: 962 | optional: true 963 | dependencies: 964 | esbuild: 0.21.5 965 | postcss: 8.4.47 966 | rollup: 4.24.0 967 | optionalDependencies: 968 | fsevents: 2.3.3 969 | dev: true 970 | 971 | /vitefu@0.2.5(vite@5.4.8): 972 | resolution: {integrity: sha512-SgHtMLoqaeeGnd2evZ849ZbACbnwQCIwRH57t18FxcXoZop0uQu0uzlIhJBlF/eWVzuce0sHeqPcDo+evVcg8Q==} 973 | peerDependencies: 974 | vite: ^3.0.0 || ^4.0.0 || ^5.0.0 975 | peerDependenciesMeta: 976 | vite: 977 | optional: true 978 | dependencies: 979 | vite: 5.4.8 980 | dev: true 981 | 982 | file:..(sveld@0.20.2)(svelte@4.2.19): 983 | resolution: {directory: .., type: directory} 984 | id: file:.. 985 | name: vite-plugin-sveld 986 | peerDependencies: 987 | sveld: ^0.20.0 988 | svelte: ^4.2.0 989 | dependencies: 990 | query-string: 9.1.1 991 | sveld: 0.20.2 992 | svelte: 4.2.19 993 | svelte-preprocess: 6.0.3(svelte@4.2.19)(typescript@5.6.3) 994 | transitivePeerDependencies: 995 | - '@babel/core' 996 | - coffeescript 997 | - less 998 | - postcss 999 | - postcss-load-config 1000 | - pug 1001 | - sass 1002 | - stylus 1003 | - sugarss 1004 | - typescript 1005 | dev: true 1006 | -------------------------------------------------------------------------------- /playground/public/vite.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /playground/src/App.svelte: -------------------------------------------------------------------------------- 1 | 4 | 5 |
{JSON.stringify(sveld, null, "\t")}
6 | -------------------------------------------------------------------------------- /playground/src/lib/Counter.svelte: -------------------------------------------------------------------------------- 1 | 4 | 5 | 34 | 35 | 41 | 42 | 45 | -------------------------------------------------------------------------------- /playground/src/main.js: -------------------------------------------------------------------------------- 1 | 2 | import App from './App.svelte' 3 | 4 | const app = new App({ 5 | target: document.getElementById('app') 6 | }) 7 | 8 | export default app 9 | -------------------------------------------------------------------------------- /playground/src/vite-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | /// 3 | /// -------------------------------------------------------------------------------- /playground/vite.config.js: -------------------------------------------------------------------------------- 1 | import { defineConfig } from 'vite' 2 | import { svelte } from '@sveltejs/vite-plugin-svelte' 3 | import sveld from 'vite-plugin-sveld' 4 | 5 | // https://vitejs.dev/config/ 6 | export default defineConfig({ 7 | plugins: [svelte(), sveld()] 8 | }) 9 | -------------------------------------------------------------------------------- /pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | lockfileVersion: '6.0' 2 | 3 | settings: 4 | autoInstallPeers: true 5 | excludeLinksFromLockfile: false 6 | 7 | dependencies: 8 | query-string: 9 | specifier: ^9.1.1 10 | version: 9.1.1 11 | svelte-preprocess: 12 | specifier: ^6.0.3 13 | version: 6.0.3(svelte@4.2.19)(typescript@5.6.3) 14 | 15 | devDependencies: 16 | sveld: 17 | specifier: ^0.20.2 18 | version: 0.20.2 19 | svelte: 20 | specifier: ^4.2.19 21 | version: 4.2.19 22 | 23 | packages: 24 | 25 | /@ampproject/remapping@2.3.0: 26 | resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==} 27 | engines: {node: '>=6.0.0'} 28 | dependencies: 29 | '@jridgewell/gen-mapping': 0.3.5 30 | '@jridgewell/trace-mapping': 0.3.25 31 | 32 | /@jridgewell/gen-mapping@0.3.5: 33 | resolution: {integrity: sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==} 34 | engines: {node: '>=6.0.0'} 35 | dependencies: 36 | '@jridgewell/set-array': 1.2.1 37 | '@jridgewell/sourcemap-codec': 1.5.0 38 | '@jridgewell/trace-mapping': 0.3.25 39 | 40 | /@jridgewell/resolve-uri@3.1.2: 41 | resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} 42 | engines: {node: '>=6.0.0'} 43 | 44 | /@jridgewell/set-array@1.2.1: 45 | resolution: {integrity: sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==} 46 | engines: {node: '>=6.0.0'} 47 | 48 | /@jridgewell/sourcemap-codec@1.5.0: 49 | resolution: {integrity: sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==} 50 | 51 | /@jridgewell/trace-mapping@0.3.25: 52 | resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} 53 | dependencies: 54 | '@jridgewell/resolve-uri': 3.1.2 55 | '@jridgewell/sourcemap-codec': 1.5.0 56 | 57 | /@rollup/plugin-node-resolve@13.3.0(rollup@2.79.1): 58 | resolution: {integrity: sha512-Lus8rbUo1eEcnS4yTFKLZrVumLPY+YayBdWXgFSHYhTT2iJbMhoaaBL3xl5NCdeRytErGr8tZ0L71BMRmnlwSw==} 59 | engines: {node: '>= 10.0.0'} 60 | peerDependencies: 61 | rollup: ^2.42.0 62 | dependencies: 63 | '@rollup/pluginutils': 3.1.0(rollup@2.79.1) 64 | '@types/resolve': 1.17.1 65 | deepmerge: 4.2.2 66 | is-builtin-module: 3.2.0 67 | is-module: 1.0.0 68 | resolve: 1.20.0 69 | rollup: 2.79.1 70 | dev: true 71 | 72 | /@rollup/pluginutils@3.1.0(rollup@2.79.1): 73 | resolution: {integrity: sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==} 74 | engines: {node: '>= 8.0.0'} 75 | peerDependencies: 76 | rollup: ^1.20.0||^2.0.0 77 | dependencies: 78 | '@types/estree': 0.0.39 79 | estree-walker: 1.0.1 80 | picomatch: 2.3.0 81 | rollup: 2.79.1 82 | dev: true 83 | 84 | /@rollup/pluginutils@4.2.1: 85 | resolution: {integrity: sha512-iKnFXr7NkdZAIHiIWE+BX5ULi/ucVFYWD6TbAV+rZctiRTY2PL6tsIKhoIOaoskiWAkgu+VsbXgUVDNLHf+InQ==} 86 | engines: {node: '>= 8.0.0'} 87 | dependencies: 88 | estree-walker: 2.0.2 89 | picomatch: 2.3.0 90 | dev: true 91 | 92 | /@types/estree@0.0.39: 93 | resolution: {integrity: sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==} 94 | dev: true 95 | 96 | /@types/estree@1.0.6: 97 | resolution: {integrity: sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==} 98 | 99 | /@types/node@16.4.2: 100 | resolution: {integrity: sha512-vxyhOzFCm+jC/T5KugbVsYy1DbQM0h3NCFUrVbu0+pYa/nr+heeucpqxpa8j4pUmIGLPYzboY9zIdOF0niFAjQ==} 101 | dev: true 102 | 103 | /@types/resolve@1.17.1: 104 | resolution: {integrity: sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw==} 105 | dependencies: 106 | '@types/node': 16.4.2 107 | dev: true 108 | 109 | /acorn@8.12.1: 110 | resolution: {integrity: sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==} 111 | engines: {node: '>=0.4.0'} 112 | hasBin: true 113 | 114 | /aria-query@5.3.2: 115 | resolution: {integrity: sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==} 116 | engines: {node: '>= 0.4'} 117 | 118 | /axobject-query@4.1.0: 119 | resolution: {integrity: sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==} 120 | engines: {node: '>= 0.4'} 121 | 122 | /builtin-modules@3.3.0: 123 | resolution: {integrity: sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==} 124 | engines: {node: '>=6'} 125 | dev: true 126 | 127 | /code-red@1.0.4: 128 | resolution: {integrity: sha512-7qJWqItLA8/VPVlKJlFXU+NBlo/qyfs39aJcuMT/2ere32ZqvF5OSxgdM5xOfJJ7O429gg2HM47y8v9P+9wrNw==} 129 | dependencies: 130 | '@jridgewell/sourcemap-codec': 1.5.0 131 | '@types/estree': 1.0.6 132 | acorn: 8.12.1 133 | estree-walker: 3.0.3 134 | periscopic: 3.1.0 135 | 136 | /comment-parser@1.4.1: 137 | resolution: {integrity: sha512-buhp5kePrmda3vhc5B9t7pUQXAb2Tnd0qgpkIhPhkHXxJpiPJ11H0ZEU0oBpJ2QztSbzG/ZxMj/CHsYJqRHmyg==} 138 | engines: {node: '>= 12.0.0'} 139 | dev: true 140 | 141 | /css-tree@2.3.1: 142 | resolution: {integrity: sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==} 143 | engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0} 144 | dependencies: 145 | mdn-data: 2.0.30 146 | source-map-js: 1.2.1 147 | 148 | /decode-uri-component@0.4.1: 149 | resolution: {integrity: sha512-+8VxcR21HhTy8nOt6jf20w0c9CADrw1O8d+VZ/YzzCt4bJ3uBjw+D1q2osAB8RnpwwaeYBxy0HyKQxD5JBMuuQ==} 150 | engines: {node: '>=14.16'} 151 | dev: false 152 | 153 | /deepmerge@4.2.2: 154 | resolution: {integrity: sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==} 155 | engines: {node: '>=0.10.0'} 156 | dev: true 157 | 158 | /estree-walker@1.0.1: 159 | resolution: {integrity: sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==} 160 | dev: true 161 | 162 | /estree-walker@2.0.2: 163 | resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==} 164 | dev: true 165 | 166 | /estree-walker@3.0.3: 167 | resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==} 168 | dependencies: 169 | '@types/estree': 1.0.6 170 | 171 | /fdir@6.4.0(picomatch@4.0.2): 172 | resolution: {integrity: sha512-3oB133prH1o4j/L5lLW7uOCF1PlD+/It2L0eL/iAqWMB91RBbqTewABqxhj0ibBd90EEmWZq7ntIWzVaWcXTGQ==} 173 | peerDependencies: 174 | picomatch: ^3 || ^4 175 | peerDependenciesMeta: 176 | picomatch: 177 | optional: true 178 | dependencies: 179 | picomatch: 4.0.2 180 | dev: true 181 | 182 | /filter-obj@5.1.0: 183 | resolution: {integrity: sha512-qWeTREPoT7I0bifpPUXtxkZJ1XJzxWtfoWWkdVGqa+eCr3SHW/Ocp89o8vLvbUuQnadybJpjOKu4V+RwO6sGng==} 184 | engines: {node: '>=14.16'} 185 | dev: false 186 | 187 | /fsevents@2.3.2: 188 | resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==} 189 | engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} 190 | os: [darwin] 191 | requiresBuild: true 192 | dev: true 193 | optional: true 194 | 195 | /function-bind@1.1.1: 196 | resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==} 197 | dev: true 198 | 199 | /has@1.0.3: 200 | resolution: {integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==} 201 | engines: {node: '>= 0.4.0'} 202 | dependencies: 203 | function-bind: 1.1.1 204 | dev: true 205 | 206 | /is-builtin-module@3.2.0: 207 | resolution: {integrity: sha512-phDA4oSGt7vl1n5tJvTWooWWAsXLY+2xCnxNqvKhGEzujg+A43wPlPOyDg3C8XQHN+6k/JTQWJ/j0dQh/qr+Hw==} 208 | engines: {node: '>=6'} 209 | dependencies: 210 | builtin-modules: 3.3.0 211 | dev: true 212 | 213 | /is-core-module@2.5.0: 214 | resolution: {integrity: sha512-TXCMSDsEHMEEZ6eCA8rwRDbLu55MRGmrctljsBX/2v1d9/GzqHOxW5c5oPSgrUt2vBFXebu9rGqckXGPWOlYpg==} 215 | dependencies: 216 | has: 1.0.3 217 | dev: true 218 | 219 | /is-module@1.0.0: 220 | resolution: {integrity: sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==} 221 | dev: true 222 | 223 | /is-reference@3.0.2: 224 | resolution: {integrity: sha512-v3rht/LgVcsdZa3O2Nqs+NMowLOxeOm7Ay9+/ARQ2F+qEoANRcqrjAZKGN0v8ymUetZGgkp26LTnGT7H0Qo9Pg==} 225 | dependencies: 226 | '@types/estree': 1.0.6 227 | 228 | /locate-character@3.0.0: 229 | resolution: {integrity: sha512-SW13ws7BjaeJ6p7Q6CO2nchbYEc3X3J6WrmTTDto7yMPqVSZTUyY5Tjbid+Ab8gLnATtygYtiDIJGQRRn2ZOiA==} 230 | 231 | /magic-string@0.30.11: 232 | resolution: {integrity: sha512-+Wri9p0QHMy+545hKww7YAu5NyzF8iomPL/RQazugQ9+Ez4Ic3mERMd8ZTX5rfK944j+560ZJi8iAwgak1Ac7A==} 233 | dependencies: 234 | '@jridgewell/sourcemap-codec': 1.5.0 235 | 236 | /mdn-data@2.0.30: 237 | resolution: {integrity: sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==} 238 | 239 | /path-parse@1.0.7: 240 | resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} 241 | dev: true 242 | 243 | /periscopic@3.1.0: 244 | resolution: {integrity: sha512-vKiQ8RRtkl9P+r/+oefh25C3fhybptkHKCZSPlcXiJux2tJF55GnEj3BVn4A5gKfq9NWWXXrxkHBwVPUfH0opw==} 245 | dependencies: 246 | '@types/estree': 1.0.6 247 | estree-walker: 3.0.3 248 | is-reference: 3.0.2 249 | 250 | /picomatch@2.3.0: 251 | resolution: {integrity: sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==} 252 | engines: {node: '>=8.6'} 253 | dev: true 254 | 255 | /picomatch@4.0.2: 256 | resolution: {integrity: sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==} 257 | engines: {node: '>=12'} 258 | dev: true 259 | 260 | /prettier@2.8.8: 261 | resolution: {integrity: sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==} 262 | engines: {node: '>=10.13.0'} 263 | hasBin: true 264 | dev: true 265 | 266 | /query-string@9.1.1: 267 | resolution: {integrity: sha512-MWkCOVIcJP9QSKU52Ngow6bsAWAPlPK2MludXvcrS2bGZSl+T1qX9MZvRIkqUIkGLJquMJHWfsT6eRqUpp4aWg==} 268 | engines: {node: '>=18'} 269 | dependencies: 270 | decode-uri-component: 0.4.1 271 | filter-obj: 5.1.0 272 | split-on-first: 3.0.0 273 | dev: false 274 | 275 | /resolve.exports@2.0.2: 276 | resolution: {integrity: sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg==} 277 | engines: {node: '>=10'} 278 | dev: true 279 | 280 | /resolve@1.20.0: 281 | resolution: {integrity: sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==} 282 | dependencies: 283 | is-core-module: 2.5.0 284 | path-parse: 1.0.7 285 | dev: true 286 | 287 | /rollup-plugin-svelte@7.2.2(rollup@2.79.1)(svelte@4.2.19): 288 | resolution: {integrity: sha512-hgnIblTRewaBEVQD6N0Q43o+y6q1TmDRhBjaEzQCi50bs8TXqjc+d1zFZyE8tsfgcfNHZQzclh4RxlFUB85H8Q==} 289 | engines: {node: '>=10'} 290 | peerDependencies: 291 | rollup: '>=2.0.0' 292 | svelte: '>=3.5.0' 293 | dependencies: 294 | '@rollup/pluginutils': 4.2.1 295 | resolve.exports: 2.0.2 296 | rollup: 2.79.1 297 | svelte: 4.2.19 298 | dev: true 299 | 300 | /rollup@2.79.1: 301 | resolution: {integrity: sha512-uKxbd0IhMZOhjAiD5oAFp7BqvkA4Dv47qpOCtaNvng4HBwdbWtdOh8f5nZNuk2rp51PMGk3bzfWu5oayNEuYnw==} 302 | engines: {node: '>=10.0.0'} 303 | hasBin: true 304 | optionalDependencies: 305 | fsevents: 2.3.2 306 | dev: true 307 | 308 | /source-map-js@1.2.1: 309 | resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==} 310 | engines: {node: '>=0.10.0'} 311 | 312 | /split-on-first@3.0.0: 313 | resolution: {integrity: sha512-qxQJTx2ryR0Dw0ITYyekNQWpz6f8dGd7vffGNflQQ3Iqj9NJ6qiZ7ELpZsJ/QBhIVAiDfXdag3+Gp8RvWa62AA==} 314 | engines: {node: '>=12'} 315 | dev: false 316 | 317 | /sveld@0.20.2: 318 | resolution: {integrity: sha512-pd/RZ4TR7oaX6XphE8uhwAjKIVw1lg19aysYM5lYpD97AthlAJD8kSEgtEXHXw6xFYXsfnhrj0XxGHnbKFsnlA==} 319 | hasBin: true 320 | dependencies: 321 | '@rollup/plugin-node-resolve': 13.3.0(rollup@2.79.1) 322 | acorn: 8.12.1 323 | comment-parser: 1.4.1 324 | prettier: 2.8.8 325 | rollup: 2.79.1 326 | rollup-plugin-svelte: 7.2.2(rollup@2.79.1)(svelte@4.2.19) 327 | svelte: 4.2.19 328 | svelte-preprocess: 6.0.3(svelte@4.2.19)(typescript@5.6.3) 329 | tinyglobby: 0.2.9 330 | typescript: 5.6.3 331 | transitivePeerDependencies: 332 | - '@babel/core' 333 | - coffeescript 334 | - less 335 | - postcss 336 | - postcss-load-config 337 | - pug 338 | - sass 339 | - stylus 340 | - sugarss 341 | dev: true 342 | 343 | /svelte-preprocess@6.0.3(svelte@4.2.19)(typescript@5.6.3): 344 | resolution: {integrity: sha512-PLG2k05qHdhmRG7zR/dyo5qKvakhm8IJ+hD2eFRQmMLHp7X3eJnjeupUtvuRpbNiF31RjVw45W+abDwHEmP5OA==} 345 | engines: {node: '>= 18.0.0'} 346 | requiresBuild: true 347 | peerDependencies: 348 | '@babel/core': ^7.10.2 349 | coffeescript: ^2.5.1 350 | less: ^3.11.3 || ^4.0.0 351 | postcss: ^7 || ^8 352 | postcss-load-config: '>=3' 353 | pug: ^3.0.0 354 | sass: ^1.26.8 355 | stylus: '>=0.55' 356 | sugarss: ^2.0.0 || ^3.0.0 || ^4.0.0 357 | svelte: ^4.0.0 || ^5.0.0-next.100 || ^5.0.0 358 | typescript: ^5.0.0 359 | peerDependenciesMeta: 360 | '@babel/core': 361 | optional: true 362 | coffeescript: 363 | optional: true 364 | less: 365 | optional: true 366 | postcss: 367 | optional: true 368 | postcss-load-config: 369 | optional: true 370 | pug: 371 | optional: true 372 | sass: 373 | optional: true 374 | stylus: 375 | optional: true 376 | sugarss: 377 | optional: true 378 | typescript: 379 | optional: true 380 | dependencies: 381 | svelte: 4.2.19 382 | typescript: 5.6.3 383 | 384 | /svelte@4.2.19: 385 | resolution: {integrity: sha512-IY1rnGr6izd10B0A8LqsBfmlT5OILVuZ7XsI0vdGPEvuonFV7NYEUK4dAkm9Zg2q0Um92kYjTpS1CAP3Nh/KWw==} 386 | engines: {node: '>=16'} 387 | dependencies: 388 | '@ampproject/remapping': 2.3.0 389 | '@jridgewell/sourcemap-codec': 1.5.0 390 | '@jridgewell/trace-mapping': 0.3.25 391 | '@types/estree': 1.0.6 392 | acorn: 8.12.1 393 | aria-query: 5.3.2 394 | axobject-query: 4.1.0 395 | code-red: 1.0.4 396 | css-tree: 2.3.1 397 | estree-walker: 3.0.3 398 | is-reference: 3.0.2 399 | locate-character: 3.0.0 400 | magic-string: 0.30.11 401 | periscopic: 3.1.0 402 | 403 | /tinyglobby@0.2.9: 404 | resolution: {integrity: sha512-8or1+BGEdk1Zkkw2ii16qSS7uVrQJPre5A9o/XkWPATkk23FZh/15BKFxPnlTy6vkljZxLqYCzzBMj30ZrSvjw==} 405 | engines: {node: '>=12.0.0'} 406 | dependencies: 407 | fdir: 6.4.0(picomatch@4.0.2) 408 | picomatch: 4.0.2 409 | dev: true 410 | 411 | /typescript@5.6.3: 412 | resolution: {integrity: sha512-hjcS1mhfuyi4WW8IWtjP7brDrG2cuDZukyrYrSauoXGNgx0S7zceP07adYkJycEr56BOUTNPzbInooiN3fn1qw==} 413 | engines: {node: '>=14.17'} 414 | hasBin: true 415 | -------------------------------------------------------------------------------- /types.d.ts: -------------------------------------------------------------------------------- 1 | declare module "vite-plugin-sveld" { 2 | export default function sveld(): { 3 | name: string; 4 | transform: ( 5 | src: string, 6 | id: string 7 | ) => Promise<{ 8 | code: string; 9 | map: any; 10 | }>; 11 | }; 12 | } 13 | 14 | declare module "*.svelte?raw&sveld" { 15 | interface SveldProp { 16 | name: string; 17 | kind: string; 18 | type?: string; 19 | isFunction: boolean; 20 | isFunctionDeclaration: boolean; 21 | isRequired: boolean; 22 | constant: boolean; 23 | reactive: boolean; 24 | } 25 | 26 | interface SveldSlot { 27 | name: string; 28 | default: boolean; 29 | fallback: string; 30 | slot_props: string; 31 | description?: string 32 | } 33 | 34 | interface SveldEvent { 35 | type: string; 36 | name: string; 37 | element: string; 38 | description?: string 39 | } 40 | 41 | interface SveldRestProps { 42 | type: string; 43 | name: string; 44 | } 45 | 46 | interface SveldTypedefs { 47 | type: string; 48 | name: string; 49 | ts: string; 50 | } 51 | 52 | interface SveldModuleExport { 53 | name: string 54 | kind: string 55 | type?: string 56 | value: string 57 | isFunction: boolean 58 | isFunctionDeclaration: boolean 59 | isRequired: boolean 60 | constant: boolean 61 | reactive: boolean 62 | } 63 | 64 | interface SveldJson { 65 | props: SveldProp[]; 66 | slots: SveldSlot[]; 67 | events: SveldEvent[]; 68 | typedefs: SveldTypedefs[]; 69 | rest_props: SveldRestProps[]; 70 | moduleExports: SveldModuleExport[] 71 | componentComment?: string 72 | extends?: { 73 | interface: string 74 | import: string 75 | } 76 | } 77 | 78 | 79 | 80 | const json: SveldJson; 81 | 82 | export default json; 83 | } 84 | --------------------------------------------------------------------------------