Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

"error TS1127: Invalid character" from text in comments, error message fails to point at location #433

Closed
tv42 opened this issue Nov 17, 2021 · 0 comments · Fixed by #441

Comments

@tv42
Copy link

tv42 commented Nov 17, 2021

Describe the bug

There's probably two things here: a Typescript bug, and svelte-preprocess hiding information about it.

src/routes/index.svelte.injected.ts:6:19 - error TS1127: Invalid character.

6 const $$vars$$ = [\s];


[svelte-preprocess] Encountered type error
Error: [svelte-preprocess] Encountered type error
    at throwError (/home/tv/src/eagain.net/2021/typescript-parser-bug/node_modules/svelte-preprocess/dist/modules/errors.js:5:11)
    at throwTypescriptError (/home/tv/src/eagain.net/2021/typescript-parser-bug/node_modules/svelte-preprocess/dist/modules/errors.js:9:28)
    at transpileTs (/home/tv/src/eagain.net/2021/typescript-parser-bug/node_modules/svelte-preprocess/dist/transformers/typescript.js:177:47)
    at mixedImportsTranspiler (/home/tv/src/eagain.net/2021/typescript-parser-bug/node_modules/svelte-preprocess/dist/transformers/typescript.js:232:60)
    at transformer (/home/tv/src/eagain.net/2021/typescript-parser-bug/node_modules/svelte-preprocess/dist/transformers/typescript.js:297:11)
    at transform (/home/tv/src/eagain.net/2021/typescript-parser-bug/node_modules/svelte-preprocess/dist/autoProcess.js:37:12)
    at async /home/tv/src/eagain.net/2021/typescript-parser-bug/node_modules/svelte-preprocess/dist/autoProcess.js:118:29
    at async script (/home/tv/src/eagain.net/2021/typescript-parser-bug/node_modules/svelte-preprocess/dist/autoProcess.js:148:33)
    at async process_single_tag (file:///home/tv/src/eagain.net/2021/typescript-parser-bug/node_modules/svelte/compiler.mjs:31571:27)
    at async Promise.all (index 0)

So, the error is in an "injected" file. The location in that file does not help me locate the problem in the actual source file. In this simplified example, error is on line 6, but the original source file is three lines long:

<script lang="ts">
// /^\$\s*/
</script>

This was quite frustrating to pinpoint, as the original file was much larger, and commenting out code didn't help.

To Reproduce

This should trigger with just about any *.svelte file using TS with that explosive comment, but just for completeness, here's all the files for a reproducer:

==> .gitignore <==
/node_modules/
/.svelte-kit/

==> package-lock.json <==
{
	"name": "typescript-parser-bug",
	"version": "0.0.1",
	"lockfileVersion": 2,
	"requires": true,
	"packages": {
		"": {
			"name": "typescript-parser-bug",
			"version": "0.0.1",
			"devDependencies": {
				"@sveltejs/kit": "next",
				"svelte": "^3.34.0",
				"svelte-check": "^2.2.6",
				"svelte-preprocess": "^4.9.4",
				"tslib": "^2.3.1",
				"typescript": "^4.4.3"
			}
		},
		"node_modules/@nodelib/fs.scandir": {
			"version": "2.1.5",
			"resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
			"integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==",
			"dev": true,
			"dependencies": {
				"@nodelib/fs.stat": "2.0.5",
				"run-parallel": "^1.1.9"
			},
			"engines": {
				"node": ">= 8"
			}
		},
		"node_modules/@nodelib/fs.stat": {
			"version": "2.0.5",
			"resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz",
			"integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==",
			"dev": true,
			"engines": {
				"node": ">= 8"
			}
		},
		"node_modules/@nodelib/fs.walk": {
			"version": "1.2.8",
			"resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz",
			"integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==",
			"dev": true,
			"dependencies": {
				"@nodelib/fs.scandir": "2.1.5",
				"fastq": "^1.6.0"
			},
			"engines": {
				"node": ">= 8"
			}
		},
		"node_modules/@rollup/pluginutils": {
			"version": "4.1.1",
			"resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-4.1.1.tgz",
			"integrity": "sha512-clDjivHqWGXi7u+0d2r2sBi4Ie6VLEAzWMIkvJLnDmxoOhBYOTfzGbOQBA32THHm11/LiJbd01tJUpJsbshSWQ==",
			"dev": true,
			"dependencies": {
				"estree-walker": "^2.0.1",
				"picomatch": "^2.2.2"
			},
			"engines": {
				"node": ">= 8.0.0"
			}
		},
		"node_modules/@sveltejs/kit": {
			"version": "1.0.0-next.196",
			"resolved": "https://registry.npmjs.org/@sveltejs/kit/-/kit-1.0.0-next.196.tgz",
			"integrity": "sha512-z7sA/2/3Il5biibjPXCYXJC11TyFhgCvMaJvvbtMnu2l3EmOmJBMS+r2djGptzfFsugSVNwGQFn8+ldWQWq3jA==",
			"dev": true,
			"dependencies": {
				"@sveltejs/vite-plugin-svelte": "^1.0.0-next.30",
				"cheap-watch": "^1.0.4",
				"sade": "^1.7.4",
				"vite": "^2.6.12"
			},
			"bin": {
				"svelte-kit": "svelte-kit.js"
			},
			"engines": {
				"node": ">=14.13"
			},
			"peerDependencies": {
				"svelte": "^3.44.0"
			}
		},
		"node_modules/@sveltejs/vite-plugin-svelte": {
			"version": "1.0.0-next.30",
			"resolved": "https://registry.npmjs.org/@sveltejs/vite-plugin-svelte/-/vite-plugin-svelte-1.0.0-next.30.tgz",
			"integrity": "sha512-YQqdMxjL1VgSFk4/+IY3yLwuRRapPafPiZTiaGEq1psbJYSNYUWx9F1zMm32GMsnogg3zn99mGJOqe3ld3HZSg==",
			"dev": true,
			"dependencies": {
				"@rollup/pluginutils": "^4.1.1",
				"debug": "^4.3.2",
				"kleur": "^4.1.4",
				"magic-string": "^0.25.7",
				"require-relative": "^0.8.7",
				"svelte-hmr": "^0.14.7"
			},
			"engines": {
				"node": "^14.13.1 || >= 16"
			},
			"peerDependencies": {
				"diff-match-patch": "^1.0.5",
				"svelte": "^3.44.0",
				"vite": "^2.6.0"
			},
			"peerDependenciesMeta": {
				"diff-match-patch": {
					"optional": true
				}
			}
		},
		"node_modules/@types/node": {
			"version": "16.11.6",
			"resolved": "https://registry.npmjs.org/@types/node/-/node-16.11.6.tgz",
			"integrity": "sha512-ua7PgUoeQFjmWPcoo9khiPum3Pd60k4/2ZGXt18sm2Slk0W0xZTqt5Y0Ny1NyBiN1EVQ/+FaF9NcY4Qe6rwk5w==",
			"dev": true
		},
		"node_modules/@types/pug": {
			"version": "2.0.5",
			"resolved": "https://registry.npmjs.org/@types/pug/-/pug-2.0.5.tgz",
			"integrity": "sha512-LOnASQoeNZMkzexRuyqcBBDZ6rS+rQxUMkmj5A0PkhhiSZivLIuz6Hxyr1mkGoEZEkk66faROmpMi4fFkrKsBA==",
			"dev": true
		},
		"node_modules/@types/sass": {
			"version": "1.16.1",
			"resolved": "https://registry.npmjs.org/@types/sass/-/sass-1.16.1.tgz",
			"integrity": "sha512-iZUcRrGuz/Tbg3loODpW7vrQJkUtpY2fFSf4ELqqkApcS2TkZ1msk7ie8iZPB86lDOP8QOTTmuvWjc5S0R9OjQ==",
			"dev": true,
			"dependencies": {
				"@types/node": "*"
			}
		},
		"node_modules/ansi-styles": {
			"version": "4.3.0",
			"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
			"integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
			"dev": true,
			"dependencies": {
				"color-convert": "^2.0.1"
			},
			"engines": {
				"node": ">=8"
			},
			"funding": {
				"url": "https://github.com/chalk/ansi-styles?sponsor=1"
			}
		},
		"node_modules/anymatch": {
			"version": "3.1.2",
			"resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz",
			"integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==",
			"dev": true,
			"dependencies": {
				"normalize-path": "^3.0.0",
				"picomatch": "^2.0.4"
			},
			"engines": {
				"node": ">= 8"
			}
		},
		"node_modules/balanced-match": {
			"version": "1.0.2",
			"resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
			"integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==",
			"dev": true
		},
		"node_modules/binary-extensions": {
			"version": "2.2.0",
			"resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz",
			"integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==",
			"dev": true,
			"engines": {
				"node": ">=8"
			}
		},
		"node_modules/brace-expansion": {
			"version": "1.1.11",
			"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
			"integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
			"dev": true,
			"dependencies": {
				"balanced-match": "^1.0.0",
				"concat-map": "0.0.1"
			}
		},
		"node_modules/braces": {
			"version": "3.0.2",
			"resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
			"integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
			"dev": true,
			"dependencies": {
				"fill-range": "^7.0.1"
			},
			"engines": {
				"node": ">=8"
			}
		},
		"node_modules/buffer-crc32": {
			"version": "0.2.13",
			"resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz",
			"integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=",
			"dev": true,
			"engines": {
				"node": "*"
			}
		},
		"node_modules/callsites": {
			"version": "3.1.0",
			"resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
			"integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
			"dev": true,
			"engines": {
				"node": ">=6"
			}
		},
		"node_modules/chalk": {
			"version": "4.1.2",
			"resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
			"integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
			"dev": true,
			"dependencies": {
				"ansi-styles": "^4.1.0",
				"supports-color": "^7.1.0"
			},
			"engines": {
				"node": ">=10"
			},
			"funding": {
				"url": "https://github.com/chalk/chalk?sponsor=1"
			}
		},
		"node_modules/cheap-watch": {
			"version": "1.0.4",
			"resolved": "https://registry.npmjs.org/cheap-watch/-/cheap-watch-1.0.4.tgz",
			"integrity": "sha512-QR/9FrtRL5fjfUJBhAKCdi0lSRQ3rVRRum3GF9wDKp2TJbEIMGhUEr2yU8lORzm9Isdjx7/k9S0DFDx+z5VGtw==",
			"dev": true,
			"engines": {
				"node": ">=8"
			}
		},
		"node_modules/chokidar": {
			"version": "3.5.2",
			"resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.2.tgz",
			"integrity": "sha512-ekGhOnNVPgT77r4K/U3GDhu+FQ2S8TnK/s2KbIGXi0SZWuwkZ2QNyfWdZW+TVfn84DpEP7rLeCt2UI6bJ8GwbQ==",
			"dev": true,
			"dependencies": {
				"anymatch": "~3.1.2",
				"braces": "~3.0.2",
				"glob-parent": "~5.1.2",
				"is-binary-path": "~2.1.0",
				"is-glob": "~4.0.1",
				"normalize-path": "~3.0.0",
				"readdirp": "~3.6.0"
			},
			"engines": {
				"node": ">= 8.10.0"
			},
			"optionalDependencies": {
				"fsevents": "~2.3.2"
			}
		},
		"node_modules/color-convert": {
			"version": "2.0.1",
			"resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
			"integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
			"dev": true,
			"dependencies": {
				"color-name": "~1.1.4"
			},
			"engines": {
				"node": ">=7.0.0"
			}
		},
		"node_modules/color-name": {
			"version": "1.1.4",
			"resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
			"integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
			"dev": true
		},
		"node_modules/concat-map": {
			"version": "0.0.1",
			"resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
			"integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
			"dev": true
		},
		"node_modules/debug": {
			"version": "4.3.2",
			"resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz",
			"integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==",
			"dev": true,
			"dependencies": {
				"ms": "2.1.2"
			},
			"engines": {
				"node": ">=6.0"
			},
			"peerDependenciesMeta": {
				"supports-color": {
					"optional": true
				}
			}
		},
		"node_modules/detect-indent": {
			"version": "6.1.0",
			"resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-6.1.0.tgz",
			"integrity": "sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==",
			"dev": true,
			"engines": {
				"node": ">=8"
			}
		},
		"node_modules/es6-promise": {
			"version": "3.3.1",
			"resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-3.3.1.tgz",
			"integrity": "sha1-oIzd6EzNvzTQJ6FFG8kdS80ophM=",
			"dev": true
		},
		"node_modules/esbuild": {
			"version": "0.13.10",
			"resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.13.10.tgz",
			"integrity": "sha512-0NfCsnAh5XatHIx6Cu93wpR2v6opPoOMxONYhaAoZKzGYqAE+INcDeX2wqMdcndvPQdWCuuCmvlnsh0zmbHcSQ==",
			"dev": true,
			"hasInstallScript": true,
			"bin": {
				"esbuild": "bin/esbuild"
			},
			"optionalDependencies": {
				"esbuild-android-arm64": "0.13.10",
				"esbuild-darwin-64": "0.13.10",
				"esbuild-darwin-arm64": "0.13.10",
				"esbuild-freebsd-64": "0.13.10",
				"esbuild-freebsd-arm64": "0.13.10",
				"esbuild-linux-32": "0.13.10",
				"esbuild-linux-64": "0.13.10",
				"esbuild-linux-arm": "0.13.10",
				"esbuild-linux-arm64": "0.13.10",
				"esbuild-linux-mips64le": "0.13.10",
				"esbuild-linux-ppc64le": "0.13.10",
				"esbuild-netbsd-64": "0.13.10",
				"esbuild-openbsd-64": "0.13.10",
				"esbuild-sunos-64": "0.13.10",
				"esbuild-windows-32": "0.13.10",
				"esbuild-windows-64": "0.13.10",
				"esbuild-windows-arm64": "0.13.10"
			}
		},
		"node_modules/esbuild-android-arm64": {
			"version": "0.13.10",
			"resolved": "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.13.10.tgz",
			"integrity": "sha512-1sCdVAq64yMp2Uhlu+97/enFxpmrj31QHtThz7K+/QGjbHa7JZdBdBsZCzWJuntKHZ+EU178tHYkvjaI9z5sGg==",
			"cpu": [
				"arm64"
			],
			"dev": true,
			"optional": true,
			"os": [
				"android"
			]
		},
		"node_modules/esbuild-darwin-64": {
			"version": "0.13.10",
			"resolved": "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.13.10.tgz",
			"integrity": "sha512-XlL+BYZ2h9cz3opHfFgSHGA+iy/mljBFIRU9q++f9SiBXEZTb4gTW/IENAD1l9oKH0FdO9rUpyAfV+lM4uAxrg==",
			"cpu": [
				"x64"
			],
			"dev": true,
			"optional": true,
			"os": [
				"darwin"
			]
		},
		"node_modules/esbuild-darwin-arm64": {
			"version": "0.13.10",
			"resolved": "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.13.10.tgz",
			"integrity": "sha512-RZMMqMTyActMrXKkW71IQO8B0tyQm0Bm+ZJQWNaHJchL5LlqazJi7rriwSocP+sKLszHhsyTEBBh6qPdw5g5yQ==",
			"cpu": [
				"arm64"
			],
			"dev": true,
			"optional": true,
			"os": [
				"darwin"
			]
		},
		"node_modules/esbuild-freebsd-64": {
			"version": "0.13.10",
			"resolved": "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.13.10.tgz",
			"integrity": "sha512-pf4BEN9reF3jvZEZdxljVgOv5JS4kuYFCI78xk+2HWustbLvTP0b9XXfWI/OD0ZLWbyLYZYIA+VbVe4tdAklig==",
			"cpu": [
				"x64"
			],
			"dev": true,
			"optional": true,
			"os": [
				"freebsd"
			]
		},
		"node_modules/esbuild-freebsd-arm64": {
			"version": "0.13.10",
			"resolved": "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.13.10.tgz",
			"integrity": "sha512-j9PUcuNWmlxr4/ry4dK/s6zKh42Jhh/N5qnAAj7tx3gMbkIHW0JBoVSbbgp97p88X9xgKbXx4lG2sJDhDWmsYQ==",
			"cpu": [
				"arm64"
			],
			"dev": true,
			"optional": true,
			"os": [
				"freebsd"
			]
		},
		"node_modules/esbuild-linux-32": {
			"version": "0.13.10",
			"resolved": "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.13.10.tgz",
			"integrity": "sha512-imtdHG5ru0xUUXuc2ofdtyw0fWlHYXV7JjF7oZHgmn0b+B4o4Nr6ZON3xxoo1IP8wIekW+7b9exIf/MYq0QV7w==",
			"cpu": [
				"ia32"
			],
			"dev": true,
			"optional": true,
			"os": [
				"linux"
			]
		},
		"node_modules/esbuild-linux-64": {
			"version": "0.13.10",
			"resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.13.10.tgz",
			"integrity": "sha512-O7fzQIH2e7GC98dvoTH0rad5BVLm9yU3cRWfEmryCEIFTwbNEWCEWOfsePuoGOHRtSwoVY1hPc21CJE4/9rWxQ==",
			"cpu": [
				"x64"
			],
			"dev": true,
			"optional": true,
			"os": [
				"linux"
			]
		},
		"node_modules/esbuild-linux-arm": {
			"version": "0.13.10",
			"resolved": "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.13.10.tgz",
			"integrity": "sha512-R2Jij4A0K8BcmBehvQeUteQEcf24Y2YZ6mizlNFuJOBPxe3vZNmkZ4mCE7Pf1tbcqA65qZx8J3WSHeGJl9EsJA==",
			"cpu": [
				"arm"
			],
			"dev": true,
			"optional": true,
			"os": [
				"linux"
			]
		},
		"node_modules/esbuild-linux-arm64": {
			"version": "0.13.10",
			"resolved": "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.13.10.tgz",
			"integrity": "sha512-bkGxN67S2n0PF4zhh87/92kBTsH2xXLuH6T5omReKhpXdJZF5SVDSk5XU/nngARzE+e6QK6isK060Dr5uobzNw==",
			"cpu": [
				"arm64"
			],
			"dev": true,
			"optional": true,
			"os": [
				"linux"
			]
		},
		"node_modules/esbuild-linux-mips64le": {
			"version": "0.13.10",
			"resolved": "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.13.10.tgz",
			"integrity": "sha512-UDNO5snJYOLWrA2uOUxM/PVbzzh2TR7Zf2i8zCCuFlYgvAb/81XO+Tasp3YAElDpp4VGqqcpBXLtofa9nrnJGA==",
			"cpu": [
				"mips64el"
			],
			"dev": true,
			"optional": true,
			"os": [
				"linux"
			]
		},
		"node_modules/esbuild-linux-ppc64le": {
			"version": "0.13.10",
			"resolved": "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.13.10.tgz",
			"integrity": "sha512-xu6J9rMWu1TcEGuEmoc8gsTrJCEPsf+QtxK4IiUZNde9r4Q4nlRVah4JVZP3hJapZgZJcxsse0XiKXh1UFdOeA==",
			"cpu": [
				"ppc64"
			],
			"dev": true,
			"optional": true,
			"os": [
				"linux"
			]
		},
		"node_modules/esbuild-netbsd-64": {
			"version": "0.13.10",
			"resolved": "https://registry.npmjs.org/esbuild-netbsd-64/-/esbuild-netbsd-64-0.13.10.tgz",
			"integrity": "sha512-d+Gr0ScMC2J83Bfx/ZvJHK0UAEMncctwgjRth9d4zppYGLk/xMfFKxv5z1ib8yZpQThafq8aPm8AqmFIJrEesw==",
			"cpu": [
				"x64"
			],
			"dev": true,
			"optional": true,
			"os": [
				"netbsd"
			]
		},
		"node_modules/esbuild-openbsd-64": {
			"version": "0.13.10",
			"resolved": "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.13.10.tgz",
			"integrity": "sha512-OuCYc+bNKumBvxflga+nFzZvxsgmWQW+z4rMGIjM5XIW0nNbGgRc5p/0PSDv0rTdxAmwCpV69fezal0xjrDaaA==",
			"cpu": [
				"x64"
			],
			"dev": true,
			"optional": true,
			"os": [
				"openbsd"
			]
		},
		"node_modules/esbuild-sunos-64": {
			"version": "0.13.10",
			"resolved": "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.13.10.tgz",
			"integrity": "sha512-gUkgivZK11bD56wDoLsnYrsOHD/zHzzLSdqKcIl3wRMulfHpRBpoX8gL0dbWr+8N9c+1HDdbNdvxSRmZ4RCVwg==",
			"cpu": [
				"x64"
			],
			"dev": true,
			"optional": true,
			"os": [
				"sunos"
			]
		},
		"node_modules/esbuild-windows-32": {
			"version": "0.13.10",
			"resolved": "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.13.10.tgz",
			"integrity": "sha512-C1xJ54E56dGWRaYcTnRy7amVZ9n1/D/D2/qVw7e5EtS7p+Fv/yZxxgqyb1hMGKXgtFYX4jMpU5eWBF/AsYrn+A==",
			"cpu": [
				"ia32"
			],
			"dev": true,
			"optional": true,
			"os": [
				"win32"
			]
		},
		"node_modules/esbuild-windows-64": {
			"version": "0.13.10",
			"resolved": "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.13.10.tgz",
			"integrity": "sha512-6+EXEXopEs3SvPFAHcps2Krp/FvqXXsOQV33cInmyilb0ZBEQew4MIoZtMIyB3YXoV6//dl3i6YbPrFZaWEinQ==",
			"cpu": [
				"x64"
			],
			"dev": true,
			"optional": true,
			"os": [
				"win32"
			]
		},
		"node_modules/esbuild-windows-arm64": {
			"version": "0.13.10",
			"resolved": "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.13.10.tgz",
			"integrity": "sha512-xTqM/XKhORo6u9S5I0dNJWEdWoemFjogLUTVLkQMVyUV3ZuMChahVA+bCqKHdyX55pCFxD/8v2fm3/sfFMWN+g==",
			"cpu": [
				"arm64"
			],
			"dev": true,
			"optional": true,
			"os": [
				"win32"
			]
		},
		"node_modules/estree-walker": {
			"version": "2.0.2",
			"resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz",
			"integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==",
			"dev": true
		},
		"node_modules/fast-glob": {
			"version": "3.2.7",
			"resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.7.tgz",
			"integrity": "sha512-rYGMRwip6lUMvYD3BTScMwT1HtAs2d71SMv66Vrxs0IekGZEjhM0pcMfjQPnknBt2zeCwQMEupiN02ZP4DiT1Q==",
			"dev": true,
			"dependencies": {
				"@nodelib/fs.stat": "^2.0.2",
				"@nodelib/fs.walk": "^1.2.3",
				"glob-parent": "^5.1.2",
				"merge2": "^1.3.0",
				"micromatch": "^4.0.4"
			},
			"engines": {
				"node": ">=8"
			}
		},
		"node_modules/fastq": {
			"version": "1.13.0",
			"resolved": "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz",
			"integrity": "sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==",
			"dev": true,
			"dependencies": {
				"reusify": "^1.0.4"
			}
		},
		"node_modules/fill-range": {
			"version": "7.0.1",
			"resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
			"integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
			"dev": true,
			"dependencies": {
				"to-regex-range": "^5.0.1"
			},
			"engines": {
				"node": ">=8"
			}
		},
		"node_modules/fs.realpath": {
			"version": "1.0.0",
			"resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
			"integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
			"dev": true
		},
		"node_modules/fsevents": {
			"version": "2.3.2",
			"resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz",
			"integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==",
			"dev": true,
			"hasInstallScript": true,
			"optional": true,
			"os": [
				"darwin"
			],
			"engines": {
				"node": "^8.16.0 || ^10.6.0 || >=11.0.0"
			}
		},
		"node_modules/function-bind": {
			"version": "1.1.1",
			"resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
			"integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==",
			"dev": true
		},
		"node_modules/glob": {
			"version": "7.2.0",
			"resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz",
			"integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==",
			"dev": true,
			"dependencies": {
				"fs.realpath": "^1.0.0",
				"inflight": "^1.0.4",
				"inherits": "2",
				"minimatch": "^3.0.4",
				"once": "^1.3.0",
				"path-is-absolute": "^1.0.0"
			},
			"engines": {
				"node": "*"
			},
			"funding": {
				"url": "https://github.com/sponsors/isaacs"
			}
		},
		"node_modules/glob-parent": {
			"version": "5.1.2",
			"resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
			"integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
			"dev": true,
			"dependencies": {
				"is-glob": "^4.0.1"
			},
			"engines": {
				"node": ">= 6"
			}
		},
		"node_modules/graceful-fs": {
			"version": "4.2.8",
			"resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.8.tgz",
			"integrity": "sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg==",
			"dev": true
		},
		"node_modules/has": {
			"version": "1.0.3",
			"resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
			"integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
			"dev": true,
			"dependencies": {
				"function-bind": "^1.1.1"
			},
			"engines": {
				"node": ">= 0.4.0"
			}
		},
		"node_modules/has-flag": {
			"version": "4.0.0",
			"resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
			"integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
			"dev": true,
			"engines": {
				"node": ">=8"
			}
		},
		"node_modules/import-fresh": {
			"version": "3.3.0",
			"resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz",
			"integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==",
			"dev": true,
			"dependencies": {
				"parent-module": "^1.0.0",
				"resolve-from": "^4.0.0"
			},
			"engines": {
				"node": ">=6"
			},
			"funding": {
				"url": "https://github.com/sponsors/sindresorhus"
			}
		},
		"node_modules/inflight": {
			"version": "1.0.6",
			"resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
			"integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
			"dev": true,
			"dependencies": {
				"once": "^1.3.0",
				"wrappy": "1"
			}
		},
		"node_modules/inherits": {
			"version": "2.0.4",
			"resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
			"integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
			"dev": true
		},
		"node_modules/is-binary-path": {
			"version": "2.1.0",
			"resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz",
			"integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==",
			"dev": true,
			"dependencies": {
				"binary-extensions": "^2.0.0"
			},
			"engines": {
				"node": ">=8"
			}
		},
		"node_modules/is-core-module": {
			"version": "2.8.0",
			"resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.0.tgz",
			"integrity": "sha512-vd15qHsaqrRL7dtH6QNuy0ndJmRDrS9HAM1CAiSifNUFv4x1a0CCVsj18hJ1mShxIG6T2i1sO78MkP56r0nYRw==",
			"dev": true,
			"dependencies": {
				"has": "^1.0.3"
			},
			"funding": {
				"url": "https://github.com/sponsors/ljharb"
			}
		},
		"node_modules/is-extglob": {
			"version": "2.1.1",
			"resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
			"integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=",
			"dev": true,
			"engines": {
				"node": ">=0.10.0"
			}
		},
		"node_modules/is-glob": {
			"version": "4.0.3",
			"resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
			"integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==",
			"dev": true,
			"dependencies": {
				"is-extglob": "^2.1.1"
			},
			"engines": {
				"node": ">=0.10.0"
			}
		},
		"node_modules/is-number": {
			"version": "7.0.0",
			"resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
			"integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
			"dev": true,
			"engines": {
				"node": ">=0.12.0"
			}
		},
		"node_modules/kleur": {
			"version": "4.1.4",
			"resolved": "https://registry.npmjs.org/kleur/-/kleur-4.1.4.tgz",
			"integrity": "sha512-8QADVssbrFjivHWQU7KkMgptGTl6WAcSdlbBPY4uNF+mWr6DGcKrvY2w4FQJoXch7+fKMjj0dRrL75vk3k23OA==",
			"dev": true,
			"engines": {
				"node": ">=6"
			}
		},
		"node_modules/magic-string": {
			"version": "0.25.7",
			"resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.7.tgz",
			"integrity": "sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA==",
			"dev": true,
			"dependencies": {
				"sourcemap-codec": "^1.4.4"
			}
		},
		"node_modules/merge2": {
			"version": "1.4.1",
			"resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz",
			"integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==",
			"dev": true,
			"engines": {
				"node": ">= 8"
			}
		},
		"node_modules/micromatch": {
			"version": "4.0.4",
			"resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz",
			"integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==",
			"dev": true,
			"dependencies": {
				"braces": "^3.0.1",
				"picomatch": "^2.2.3"
			},
			"engines": {
				"node": ">=8.6"
			}
		},
		"node_modules/min-indent": {
			"version": "1.0.1",
			"resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz",
			"integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==",
			"dev": true,
			"engines": {
				"node": ">=4"
			}
		},
		"node_modules/minimatch": {
			"version": "3.0.4",
			"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
			"integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
			"dev": true,
			"dependencies": {
				"brace-expansion": "^1.1.7"
			},
			"engines": {
				"node": "*"
			}
		},
		"node_modules/minimist": {
			"version": "1.2.5",
			"resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz",
			"integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==",
			"dev": true
		},
		"node_modules/mkdirp": {
			"version": "0.5.5",
			"resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz",
			"integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==",
			"dev": true,
			"dependencies": {
				"minimist": "^1.2.5"
			},
			"bin": {
				"mkdirp": "bin/cmd.js"
			}
		},
		"node_modules/mri": {
			"version": "1.2.0",
			"resolved": "https://registry.npmjs.org/mri/-/mri-1.2.0.tgz",
			"integrity": "sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==",
			"dev": true,
			"engines": {
				"node": ">=4"
			}
		},
		"node_modules/ms": {
			"version": "2.1.2",
			"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
			"integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
			"dev": true
		},
		"node_modules/nanoid": {
			"version": "3.1.30",
			"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.30.tgz",
			"integrity": "sha512-zJpuPDwOv8D2zq2WRoMe1HsfZthVewpel9CAvTfc/2mBD1uUT/agc5f7GHGWXlYkFvi1mVxe4IjvP2HNrop7nQ==",
			"dev": true,
			"bin": {
				"nanoid": "bin/nanoid.cjs"
			},
			"engines": {
				"node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
			}
		},
		"node_modules/normalize-path": {
			"version": "3.0.0",
			"resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
			"integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
			"dev": true,
			"engines": {
				"node": ">=0.10.0"
			}
		},
		"node_modules/once": {
			"version": "1.4.0",
			"resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
			"integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
			"dev": true,
			"dependencies": {
				"wrappy": "1"
			}
		},
		"node_modules/parent-module": {
			"version": "1.0.1",
			"resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
			"integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
			"dev": true,
			"dependencies": {
				"callsites": "^3.0.0"
			},
			"engines": {
				"node": ">=6"
			}
		},
		"node_modules/path-is-absolute": {
			"version": "1.0.1",
			"resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
			"integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
			"dev": true,
			"engines": {
				"node": ">=0.10.0"
			}
		},
		"node_modules/path-parse": {
			"version": "1.0.7",
			"resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
			"integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==",
			"dev": true
		},
		"node_modules/picocolors": {
			"version": "1.0.0",
			"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
			"integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==",
			"dev": true
		},
		"node_modules/picomatch": {
			"version": "2.3.0",
			"resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz",
			"integrity": "sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==",
			"dev": true,
			"engines": {
				"node": ">=8.6"
			},
			"funding": {
				"url": "https://github.com/sponsors/jonschlinkert"
			}
		},
		"node_modules/postcss": {
			"version": "8.3.11",
			"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.3.11.tgz",
			"integrity": "sha512-hCmlUAIlUiav8Xdqw3Io4LcpA1DOt7h3LSTAC4G6JGHFFaWzI6qvFt9oilvl8BmkbBRX1IhM90ZAmpk68zccQA==",
			"dev": true,
			"dependencies": {
				"nanoid": "^3.1.30",
				"picocolors": "^1.0.0",
				"source-map-js": "^0.6.2"
			},
			"engines": {
				"node": "^10 || ^12 || >=14"
			},
			"funding": {
				"type": "opencollective",
				"url": "https://opencollective.com/postcss/"
			}
		},
		"node_modules/queue-microtask": {
			"version": "1.2.3",
			"resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz",
			"integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==",
			"dev": true,
			"funding": [
				{
					"type": "github",
					"url": "https://github.com/sponsors/feross"
				},
				{
					"type": "patreon",
					"url": "https://www.patreon.com/feross"
				},
				{
					"type": "consulting",
					"url": "https://feross.org/support"
				}
			]
		},
		"node_modules/readdirp": {
			"version": "3.6.0",
			"resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz",
			"integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==",
			"dev": true,
			"dependencies": {
				"picomatch": "^2.2.1"
			},
			"engines": {
				"node": ">=8.10.0"
			}
		},
		"node_modules/require-relative": {
			"version": "0.8.7",
			"resolved": "https://registry.npmjs.org/require-relative/-/require-relative-0.8.7.tgz",
			"integrity": "sha1-eZlTn8ngR6N5KPoZb44VY9q9Nt4=",
			"dev": true
		},
		"node_modules/resolve": {
			"version": "1.20.0",
			"resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz",
			"integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==",
			"dev": true,
			"dependencies": {
				"is-core-module": "^2.2.0",
				"path-parse": "^1.0.6"
			},
			"funding": {
				"url": "https://github.com/sponsors/ljharb"
			}
		},
		"node_modules/resolve-from": {
			"version": "4.0.0",
			"resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
			"integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
			"dev": true,
			"engines": {
				"node": ">=4"
			}
		},
		"node_modules/reusify": {
			"version": "1.0.4",
			"resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz",
			"integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==",
			"dev": true,
			"engines": {
				"iojs": ">=1.0.0",
				"node": ">=0.10.0"
			}
		},
		"node_modules/rimraf": {
			"version": "2.7.1",
			"resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz",
			"integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==",
			"dev": true,
			"dependencies": {
				"glob": "^7.1.3"
			},
			"bin": {
				"rimraf": "bin.js"
			}
		},
		"node_modules/rollup": {
			"version": "2.58.3",
			"resolved": "https://registry.npmjs.org/rollup/-/rollup-2.58.3.tgz",
			"integrity": "sha512-ei27MSw1KhRur4p87Q0/Va2NAYqMXOX++FNEumMBcdreIRLURKy+cE2wcDJKBn0nfmhP2ZGrJkP1XPO+G8FJQw==",
			"dev": true,
			"bin": {
				"rollup": "dist/bin/rollup"
			},
			"engines": {
				"node": ">=10.0.0"
			},
			"optionalDependencies": {
				"fsevents": "~2.3.2"
			}
		},
		"node_modules/run-parallel": {
			"version": "1.2.0",
			"resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz",
			"integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==",
			"dev": true,
			"funding": [
				{
					"type": "github",
					"url": "https://github.com/sponsors/feross"
				},
				{
					"type": "patreon",
					"url": "https://www.patreon.com/feross"
				},
				{
					"type": "consulting",
					"url": "https://feross.org/support"
				}
			],
			"dependencies": {
				"queue-microtask": "^1.2.2"
			}
		},
		"node_modules/sade": {
			"version": "1.7.4",
			"resolved": "https://registry.npmjs.org/sade/-/sade-1.7.4.tgz",
			"integrity": "sha512-y5yauMD93rX840MwUJr7C1ysLFBgMspsdTo4UVrDg3fXDvtwOyIqykhVAAm6fk/3au77773itJStObgK+LKaiA==",
			"dev": true,
			"dependencies": {
				"mri": "^1.1.0"
			},
			"engines": {
				"node": ">= 6"
			}
		},
		"node_modules/sander": {
			"version": "0.5.1",
			"resolved": "https://registry.npmjs.org/sander/-/sander-0.5.1.tgz",
			"integrity": "sha1-dB4kXiMfB8r7b98PEzrfohalAq0=",
			"dev": true,
			"dependencies": {
				"es6-promise": "^3.1.2",
				"graceful-fs": "^4.1.3",
				"mkdirp": "^0.5.1",
				"rimraf": "^2.5.2"
			}
		},
		"node_modules/sorcery": {
			"version": "0.10.0",
			"resolved": "https://registry.npmjs.org/sorcery/-/sorcery-0.10.0.tgz",
			"integrity": "sha1-iukK19fLBfxZ8asMY3hF1cFaUrc=",
			"dev": true,
			"dependencies": {
				"buffer-crc32": "^0.2.5",
				"minimist": "^1.2.0",
				"sander": "^0.5.0",
				"sourcemap-codec": "^1.3.0"
			},
			"bin": {
				"sorcery": "bin/index.js"
			}
		},
		"node_modules/source-map": {
			"version": "0.7.3",
			"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz",
			"integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==",
			"dev": true,
			"engines": {
				"node": ">= 8"
			}
		},
		"node_modules/source-map-js": {
			"version": "0.6.2",
			"resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-0.6.2.tgz",
			"integrity": "sha512-/3GptzWzu0+0MBQFrDKzw/DvvMTUORvgY6k6jd/VS6iCR4RDTKWH6v6WPwQoUO8667uQEf9Oe38DxAYWY5F/Ug==",
			"dev": true,
			"engines": {
				"node": ">=0.10.0"
			}
		},
		"node_modules/sourcemap-codec": {
			"version": "1.4.8",
			"resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz",
			"integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==",
			"dev": true
		},
		"node_modules/strip-indent": {
			"version": "3.0.0",
			"resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz",
			"integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==",
			"dev": true,
			"dependencies": {
				"min-indent": "^1.0.0"
			},
			"engines": {
				"node": ">=8"
			}
		},
		"node_modules/supports-color": {
			"version": "7.2.0",
			"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
			"integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
			"dev": true,
			"dependencies": {
				"has-flag": "^4.0.0"
			},
			"engines": {
				"node": ">=8"
			}
		},
		"node_modules/svelte": {
			"version": "3.44.1",
			"resolved": "https://registry.npmjs.org/svelte/-/svelte-3.44.1.tgz",
			"integrity": "sha512-4DrCEJoBvdR689efHNSxIQn2pnFwB7E7j2yLEJtHE/P8hxwZWIphCtJ8are7bjl/iVMlcEf5uh5pJ68IwR09vQ==",
			"dev": true,
			"engines": {
				"node": ">= 8"
			}
		},
		"node_modules/svelte-check": {
			"version": "2.2.9",
			"resolved": "https://registry.npmjs.org/svelte-check/-/svelte-check-2.2.9.tgz",
			"integrity": "sha512-au77iP0v2f8F0gWu5Nk3dPkASk4H6DyLQEDQrQR6a7BWJaTnGEZKFhe5EsD8f9tHLyA4awPBi+D56hVuRsbgNA==",
			"dev": true,
			"dependencies": {
				"chalk": "^4.0.0",
				"chokidar": "^3.4.1",
				"fast-glob": "^3.2.7",
				"import-fresh": "^3.2.1",
				"minimist": "^1.2.5",
				"sade": "^1.7.4",
				"source-map": "^0.7.3",
				"svelte-preprocess": "^4.0.0",
				"typescript": "*"
			},
			"bin": {
				"svelte-check": "bin/svelte-check"
			},
			"peerDependencies": {
				"svelte": "^3.24.0"
			}
		},
		"node_modules/svelte-hmr": {
			"version": "0.14.7",
			"resolved": "https://registry.npmjs.org/svelte-hmr/-/svelte-hmr-0.14.7.tgz",
			"integrity": "sha512-pDrzgcWSoMaK6AJkBWkmgIsecW0GChxYZSZieIYfCP0v2oPyx2CYU/zm7TBIcjLVUPP714WxmViE9Thht4etog==",
			"dev": true,
			"peerDependencies": {
				"svelte": ">=3.19.0"
			}
		},
		"node_modules/svelte-preprocess": {
			"version": "4.9.8",
			"resolved": "https://registry.npmjs.org/svelte-preprocess/-/svelte-preprocess-4.9.8.tgz",
			"integrity": "sha512-EQS/oRZzMtYdAprppZxY3HcysKh11w54MgA63ybtL+TAZ4hVqYOnhw41JVJjWN9dhPnNjjLzvbZ2tMhTsla1Og==",
			"dev": true,
			"hasInstallScript": true,
			"dependencies": {
				"@types/pug": "^2.0.4",
				"@types/sass": "^1.16.0",
				"detect-indent": "^6.0.0",
				"magic-string": "^0.25.7",
				"sorcery": "^0.10.0",
				"strip-indent": "^3.0.0"
			},
			"engines": {
				"node": ">= 9.11.2"
			},
			"peerDependencies": {
				"@babel/core": "^7.10.2",
				"coffeescript": "^2.5.1",
				"less": "^3.11.3",
				"postcss": "^7 || ^8",
				"postcss-load-config": "^2.1.0 || ^3.0.0",
				"pug": "^3.0.0",
				"sass": "^1.26.8",
				"stylus": "^0.54.7",
				"sugarss": "^2.0.0",
				"svelte": "^3.23.0",
				"typescript": "^3.9.5 || ^4.0.0"
			},
			"peerDependenciesMeta": {
				"@babel/core": {
					"optional": true
				},
				"coffeescript": {
					"optional": true
				},
				"less": {
					"optional": true
				},
				"node-sass": {
					"optional": true
				},
				"postcss": {
					"optional": true
				},
				"postcss-load-config": {
					"optional": true
				},
				"pug": {
					"optional": true
				},
				"sass": {
					"optional": true
				},
				"stylus": {
					"optional": true
				},
				"sugarss": {
					"optional": true
				},
				"typescript": {
					"optional": true
				}
			}
		},
		"node_modules/to-regex-range": {
			"version": "5.0.1",
			"resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
			"integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
			"dev": true,
			"dependencies": {
				"is-number": "^7.0.0"
			},
			"engines": {
				"node": ">=8.0"
			}
		},
		"node_modules/tslib": {
			"version": "2.3.1",
			"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz",
			"integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==",
			"dev": true
		},
		"node_modules/typescript": {
			"version": "4.4.4",
			"resolved": "https://registry.npmjs.org/typescript/-/typescript-4.4.4.tgz",
			"integrity": "sha512-DqGhF5IKoBl8WNf8C1gu8q0xZSInh9j1kJJMqT3a94w1JzVaBU4EXOSMrz9yDqMT0xt3selp83fuFMQ0uzv6qA==",
			"dev": true,
			"bin": {
				"tsc": "bin/tsc",
				"tsserver": "bin/tsserver"
			},
			"engines": {
				"node": ">=4.2.0"
			}
		},
		"node_modules/vite": {
			"version": "2.6.13",
			"resolved": "https://registry.npmjs.org/vite/-/vite-2.6.13.tgz",
			"integrity": "sha512-+tGZ1OxozRirTudl4M3N3UTNJOlxdVo/qBl2IlDEy/ZpTFcskp+k5ncNjayR3bRYTCbqSOFz2JWGN1UmuDMScA==",
			"dev": true,
			"dependencies": {
				"esbuild": "^0.13.2",
				"postcss": "^8.3.8",
				"resolve": "^1.20.0",
				"rollup": "^2.57.0"
			},
			"bin": {
				"vite": "bin/vite.js"
			},
			"engines": {
				"node": ">=12.2.0"
			},
			"optionalDependencies": {
				"fsevents": "~2.3.2"
			},
			"peerDependencies": {
				"less": "*",
				"sass": "*",
				"stylus": "*"
			},
			"peerDependenciesMeta": {
				"less": {
					"optional": true
				},
				"sass": {
					"optional": true
				},
				"stylus": {
					"optional": true
				}
			}
		},
		"node_modules/wrappy": {
			"version": "1.0.2",
			"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
			"integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
			"dev": true
		}
	},
	"dependencies": {
		"@nodelib/fs.scandir": {
			"version": "2.1.5",
			"resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
			"integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==",
			"dev": true,
			"requires": {
				"@nodelib/fs.stat": "2.0.5",
				"run-parallel": "^1.1.9"
			}
		},
		"@nodelib/fs.stat": {
			"version": "2.0.5",
			"resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz",
			"integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==",
			"dev": true
		},
		"@nodelib/fs.walk": {
			"version": "1.2.8",
			"resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz",
			"integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==",
			"dev": true,
			"requires": {
				"@nodelib/fs.scandir": "2.1.5",
				"fastq": "^1.6.0"
			}
		},
		"@rollup/pluginutils": {
			"version": "4.1.1",
			"resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-4.1.1.tgz",
			"integrity": "sha512-clDjivHqWGXi7u+0d2r2sBi4Ie6VLEAzWMIkvJLnDmxoOhBYOTfzGbOQBA32THHm11/LiJbd01tJUpJsbshSWQ==",
			"dev": true,
			"requires": {
				"estree-walker": "^2.0.1",
				"picomatch": "^2.2.2"
			}
		},
		"@sveltejs/kit": {
			"version": "1.0.0-next.196",
			"resolved": "https://registry.npmjs.org/@sveltejs/kit/-/kit-1.0.0-next.196.tgz",
			"integrity": "sha512-z7sA/2/3Il5biibjPXCYXJC11TyFhgCvMaJvvbtMnu2l3EmOmJBMS+r2djGptzfFsugSVNwGQFn8+ldWQWq3jA==",
			"dev": true,
			"requires": {
				"@sveltejs/vite-plugin-svelte": "^1.0.0-next.30",
				"cheap-watch": "^1.0.4",
				"sade": "^1.7.4",
				"vite": "^2.6.12"
			}
		},
		"@sveltejs/vite-plugin-svelte": {
			"version": "1.0.0-next.30",
			"resolved": "https://registry.npmjs.org/@sveltejs/vite-plugin-svelte/-/vite-plugin-svelte-1.0.0-next.30.tgz",
			"integrity": "sha512-YQqdMxjL1VgSFk4/+IY3yLwuRRapPafPiZTiaGEq1psbJYSNYUWx9F1zMm32GMsnogg3zn99mGJOqe3ld3HZSg==",
			"dev": true,
			"requires": {
				"@rollup/pluginutils": "^4.1.1",
				"debug": "^4.3.2",
				"kleur": "^4.1.4",
				"magic-string": "^0.25.7",
				"require-relative": "^0.8.7",
				"svelte-hmr": "^0.14.7"
			}
		},
		"@types/node": {
			"version": "16.11.6",
			"resolved": "https://registry.npmjs.org/@types/node/-/node-16.11.6.tgz",
			"integrity": "sha512-ua7PgUoeQFjmWPcoo9khiPum3Pd60k4/2ZGXt18sm2Slk0W0xZTqt5Y0Ny1NyBiN1EVQ/+FaF9NcY4Qe6rwk5w==",
			"dev": true
		},
		"@types/pug": {
			"version": "2.0.5",
			"resolved": "https://registry.npmjs.org/@types/pug/-/pug-2.0.5.tgz",
			"integrity": "sha512-LOnASQoeNZMkzexRuyqcBBDZ6rS+rQxUMkmj5A0PkhhiSZivLIuz6Hxyr1mkGoEZEkk66faROmpMi4fFkrKsBA==",
			"dev": true
		},
		"@types/sass": {
			"version": "1.16.1",
			"resolved": "https://registry.npmjs.org/@types/sass/-/sass-1.16.1.tgz",
			"integrity": "sha512-iZUcRrGuz/Tbg3loODpW7vrQJkUtpY2fFSf4ELqqkApcS2TkZ1msk7ie8iZPB86lDOP8QOTTmuvWjc5S0R9OjQ==",
			"dev": true,
			"requires": {
				"@types/node": "*"
			}
		},
		"ansi-styles": {
			"version": "4.3.0",
			"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
			"integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
			"dev": true,
			"requires": {
				"color-convert": "^2.0.1"
			}
		},
		"anymatch": {
			"version": "3.1.2",
			"resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz",
			"integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==",
			"dev": true,
			"requires": {
				"normalize-path": "^3.0.0",
				"picomatch": "^2.0.4"
			}
		},
		"balanced-match": {
			"version": "1.0.2",
			"resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
			"integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==",
			"dev": true
		},
		"binary-extensions": {
			"version": "2.2.0",
			"resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz",
			"integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==",
			"dev": true
		},
		"brace-expansion": {
			"version": "1.1.11",
			"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
			"integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
			"dev": true,
			"requires": {
				"balanced-match": "^1.0.0",
				"concat-map": "0.0.1"
			}
		},
		"braces": {
			"version": "3.0.2",
			"resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
			"integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
			"dev": true,
			"requires": {
				"fill-range": "^7.0.1"
			}
		},
		"buffer-crc32": {
			"version": "0.2.13",
			"resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz",
			"integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=",
			"dev": true
		},
		"callsites": {
			"version": "3.1.0",
			"resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
			"integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
			"dev": true
		},
		"chalk": {
			"version": "4.1.2",
			"resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
			"integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
			"dev": true,
			"requires": {
				"ansi-styles": "^4.1.0",
				"supports-color": "^7.1.0"
			}
		},
		"cheap-watch": {
			"version": "1.0.4",
			"resolved": "https://registry.npmjs.org/cheap-watch/-/cheap-watch-1.0.4.tgz",
			"integrity": "sha512-QR/9FrtRL5fjfUJBhAKCdi0lSRQ3rVRRum3GF9wDKp2TJbEIMGhUEr2yU8lORzm9Isdjx7/k9S0DFDx+z5VGtw==",
			"dev": true
		},
		"chokidar": {
			"version": "3.5.2",
			"resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.2.tgz",
			"integrity": "sha512-ekGhOnNVPgT77r4K/U3GDhu+FQ2S8TnK/s2KbIGXi0SZWuwkZ2QNyfWdZW+TVfn84DpEP7rLeCt2UI6bJ8GwbQ==",
			"dev": true,
			"requires": {
				"anymatch": "~3.1.2",
				"braces": "~3.0.2",
				"fsevents": "~2.3.2",
				"glob-parent": "~5.1.2",
				"is-binary-path": "~2.1.0",
				"is-glob": "~4.0.1",
				"normalize-path": "~3.0.0",
				"readdirp": "~3.6.0"
			}
		},
		"color-convert": {
			"version": "2.0.1",
			"resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
			"integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
			"dev": true,
			"requires": {
				"color-name": "~1.1.4"
			}
		},
		"color-name": {
			"version": "1.1.4",
			"resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
			"integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
			"dev": true
		},
		"concat-map": {
			"version": "0.0.1",
			"resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
			"integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
			"dev": true
		},
		"debug": {
			"version": "4.3.2",
			"resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz",
			"integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==",
			"dev": true,
			"requires": {
				"ms": "2.1.2"
			}
		},
		"detect-indent": {
			"version": "6.1.0",
			"resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-6.1.0.tgz",
			"integrity": "sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==",
			"dev": true
		},
		"es6-promise": {
			"version": "3.3.1",
			"resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-3.3.1.tgz",
			"integrity": "sha1-oIzd6EzNvzTQJ6FFG8kdS80ophM=",
			"dev": true
		},
		"esbuild": {
			"version": "0.13.10",
			"resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.13.10.tgz",
			"integrity": "sha512-0NfCsnAh5XatHIx6Cu93wpR2v6opPoOMxONYhaAoZKzGYqAE+INcDeX2wqMdcndvPQdWCuuCmvlnsh0zmbHcSQ==",
			"dev": true,
			"requires": {
				"esbuild-android-arm64": "0.13.10",
				"esbuild-darwin-64": "0.13.10",
				"esbuild-darwin-arm64": "0.13.10",
				"esbuild-freebsd-64": "0.13.10",
				"esbuild-freebsd-arm64": "0.13.10",
				"esbuild-linux-32": "0.13.10",
				"esbuild-linux-64": "0.13.10",
				"esbuild-linux-arm": "0.13.10",
				"esbuild-linux-arm64": "0.13.10",
				"esbuild-linux-mips64le": "0.13.10",
				"esbuild-linux-ppc64le": "0.13.10",
				"esbuild-netbsd-64": "0.13.10",
				"esbuild-openbsd-64": "0.13.10",
				"esbuild-sunos-64": "0.13.10",
				"esbuild-windows-32": "0.13.10",
				"esbuild-windows-64": "0.13.10",
				"esbuild-windows-arm64": "0.13.10"
			}
		},
		"esbuild-android-arm64": {
			"version": "0.13.10",
			"resolved": "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.13.10.tgz",
			"integrity": "sha512-1sCdVAq64yMp2Uhlu+97/enFxpmrj31QHtThz7K+/QGjbHa7JZdBdBsZCzWJuntKHZ+EU178tHYkvjaI9z5sGg==",
			"dev": true,
			"optional": true
		},
		"esbuild-darwin-64": {
			"version": "0.13.10",
			"resolved": "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.13.10.tgz",
			"integrity": "sha512-XlL+BYZ2h9cz3opHfFgSHGA+iy/mljBFIRU9q++f9SiBXEZTb4gTW/IENAD1l9oKH0FdO9rUpyAfV+lM4uAxrg==",
			"dev": true,
			"optional": true
		},
		"esbuild-darwin-arm64": {
			"version": "0.13.10",
			"resolved": "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.13.10.tgz",
			"integrity": "sha512-RZMMqMTyActMrXKkW71IQO8B0tyQm0Bm+ZJQWNaHJchL5LlqazJi7rriwSocP+sKLszHhsyTEBBh6qPdw5g5yQ==",
			"dev": true,
			"optional": true
		},
		"esbuild-freebsd-64": {
			"version": "0.13.10",
			"resolved": "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.13.10.tgz",
			"integrity": "sha512-pf4BEN9reF3jvZEZdxljVgOv5JS4kuYFCI78xk+2HWustbLvTP0b9XXfWI/OD0ZLWbyLYZYIA+VbVe4tdAklig==",
			"dev": true,
			"optional": true
		},
		"esbuild-freebsd-arm64": {
			"version": "0.13.10",
			"resolved": "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.13.10.tgz",
			"integrity": "sha512-j9PUcuNWmlxr4/ry4dK/s6zKh42Jhh/N5qnAAj7tx3gMbkIHW0JBoVSbbgp97p88X9xgKbXx4lG2sJDhDWmsYQ==",
			"dev": true,
			"optional": true
		},
		"esbuild-linux-32": {
			"version": "0.13.10",
			"resolved": "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.13.10.tgz",
			"integrity": "sha512-imtdHG5ru0xUUXuc2ofdtyw0fWlHYXV7JjF7oZHgmn0b+B4o4Nr6ZON3xxoo1IP8wIekW+7b9exIf/MYq0QV7w==",
			"dev": true,
			"optional": true
		},
		"esbuild-linux-64": {
			"version": "0.13.10",
			"resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.13.10.tgz",
			"integrity": "sha512-O7fzQIH2e7GC98dvoTH0rad5BVLm9yU3cRWfEmryCEIFTwbNEWCEWOfsePuoGOHRtSwoVY1hPc21CJE4/9rWxQ==",
			"dev": true,
			"optional": true
		},
		"esbuild-linux-arm": {
			"version": "0.13.10",
			"resolved": "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.13.10.tgz",
			"integrity": "sha512-R2Jij4A0K8BcmBehvQeUteQEcf24Y2YZ6mizlNFuJOBPxe3vZNmkZ4mCE7Pf1tbcqA65qZx8J3WSHeGJl9EsJA==",
			"dev": true,
			"optional": true
		},
		"esbuild-linux-arm64": {
			"version": "0.13.10",
			"resolved": "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.13.10.tgz",
			"integrity": "sha512-bkGxN67S2n0PF4zhh87/92kBTsH2xXLuH6T5omReKhpXdJZF5SVDSk5XU/nngARzE+e6QK6isK060Dr5uobzNw==",
			"dev": true,
			"optional": true
		},
		"esbuild-linux-mips64le": {
			"version": "0.13.10",
			"resolved": "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.13.10.tgz",
			"integrity": "sha512-UDNO5snJYOLWrA2uOUxM/PVbzzh2TR7Zf2i8zCCuFlYgvAb/81XO+Tasp3YAElDpp4VGqqcpBXLtofa9nrnJGA==",
			"dev": true,
			"optional": true
		},
		"esbuild-linux-ppc64le": {
			"version": "0.13.10",
			"resolved": "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.13.10.tgz",
			"integrity": "sha512-xu6J9rMWu1TcEGuEmoc8gsTrJCEPsf+QtxK4IiUZNde9r4Q4nlRVah4JVZP3hJapZgZJcxsse0XiKXh1UFdOeA==",
			"dev": true,
			"optional": true
		},
		"esbuild-netbsd-64": {
			"version": "0.13.10",
			"resolved": "https://registry.npmjs.org/esbuild-netbsd-64/-/esbuild-netbsd-64-0.13.10.tgz",
			"integrity": "sha512-d+Gr0ScMC2J83Bfx/ZvJHK0UAEMncctwgjRth9d4zppYGLk/xMfFKxv5z1ib8yZpQThafq8aPm8AqmFIJrEesw==",
			"dev": true,
			"optional": true
		},
		"esbuild-openbsd-64": {
			"version": "0.13.10",
			"resolved": "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.13.10.tgz",
			"integrity": "sha512-OuCYc+bNKumBvxflga+nFzZvxsgmWQW+z4rMGIjM5XIW0nNbGgRc5p/0PSDv0rTdxAmwCpV69fezal0xjrDaaA==",
			"dev": true,
			"optional": true
		},
		"esbuild-sunos-64": {
			"version": "0.13.10",
			"resolved": "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.13.10.tgz",
			"integrity": "sha512-gUkgivZK11bD56wDoLsnYrsOHD/zHzzLSdqKcIl3wRMulfHpRBpoX8gL0dbWr+8N9c+1HDdbNdvxSRmZ4RCVwg==",
			"dev": true,
			"optional": true
		},
		"esbuild-windows-32": {
			"version": "0.13.10",
			"resolved": "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.13.10.tgz",
			"integrity": "sha512-C1xJ54E56dGWRaYcTnRy7amVZ9n1/D/D2/qVw7e5EtS7p+Fv/yZxxgqyb1hMGKXgtFYX4jMpU5eWBF/AsYrn+A==",
			"dev": true,
			"optional": true
		},
		"esbuild-windows-64": {
			"version": "0.13.10",
			"resolved": "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.13.10.tgz",
			"integrity": "sha512-6+EXEXopEs3SvPFAHcps2Krp/FvqXXsOQV33cInmyilb0ZBEQew4MIoZtMIyB3YXoV6//dl3i6YbPrFZaWEinQ==",
			"dev": true,
			"optional": true
		},
		"esbuild-windows-arm64": {
			"version": "0.13.10",
			"resolved": "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.13.10.tgz",
			"integrity": "sha512-xTqM/XKhORo6u9S5I0dNJWEdWoemFjogLUTVLkQMVyUV3ZuMChahVA+bCqKHdyX55pCFxD/8v2fm3/sfFMWN+g==",
			"dev": true,
			"optional": true
		},
		"estree-walker": {
			"version": "2.0.2",
			"resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz",
			"integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==",
			"dev": true
		},
		"fast-glob": {
			"version": "3.2.7",
			"resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.7.tgz",
			"integrity": "sha512-rYGMRwip6lUMvYD3BTScMwT1HtAs2d71SMv66Vrxs0IekGZEjhM0pcMfjQPnknBt2zeCwQMEupiN02ZP4DiT1Q==",
			"dev": true,
			"requires": {
				"@nodelib/fs.stat": "^2.0.2",
				"@nodelib/fs.walk": "^1.2.3",
				"glob-parent": "^5.1.2",
				"merge2": "^1.3.0",
				"micromatch": "^4.0.4"
			}
		},
		"fastq": {
			"version": "1.13.0",
			"resolved": "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz",
			"integrity": "sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==",
			"dev": true,
			"requires": {
				"reusify": "^1.0.4"
			}
		},
		"fill-range": {
			"version": "7.0.1",
			"resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
			"integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
			"dev": true,
			"requires": {
				"to-regex-range": "^5.0.1"
			}
		},
		"fs.realpath": {
			"version": "1.0.0",
			"resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
			"integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
			"dev": true
		},
		"fsevents": {
			"version": "2.3.2",
			"resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz",
			"integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==",
			"dev": true,
			"optional": true
		},
		"function-bind": {
			"version": "1.1.1",
			"resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
			"integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==",
			"dev": true
		},
		"glob": {
			"version": "7.2.0",
			"resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz",
			"integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==",
			"dev": true,
			"requires": {
				"fs.realpath": "^1.0.0",
				"inflight": "^1.0.4",
				"inherits": "2",
				"minimatch": "^3.0.4",
				"once": "^1.3.0",
				"path-is-absolute": "^1.0.0"
			}
		},
		"glob-parent": {
			"version": "5.1.2",
			"resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
			"integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
			"dev": true,
			"requires": {
				"is-glob": "^4.0.1"
			}
		},
		"graceful-fs": {
			"version": "4.2.8",
			"resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.8.tgz",
			"integrity": "sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg==",
			"dev": true
		},
		"has": {
			"version": "1.0.3",
			"resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
			"integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
			"dev": true,
			"requires": {
				"function-bind": "^1.1.1"
			}
		},
		"has-flag": {
			"version": "4.0.0",
			"resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
			"integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
			"dev": true
		},
		"import-fresh": {
			"version": "3.3.0",
			"resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz",
			"integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==",
			"dev": true,
			"requires": {
				"parent-module": "^1.0.0",
				"resolve-from": "^4.0.0"
			}
		},
		"inflight": {
			"version": "1.0.6",
			"resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
			"integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
			"dev": true,
			"requires": {
				"once": "^1.3.0",
				"wrappy": "1"
			}
		},
		"inherits": {
			"version": "2.0.4",
			"resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
			"integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
			"dev": true
		},
		"is-binary-path": {
			"version": "2.1.0",
			"resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz",
			"integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==",
			"dev": true,
			"requires": {
				"binary-extensions": "^2.0.0"
			}
		},
		"is-core-module": {
			"version": "2.8.0",
			"resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.0.tgz",
			"integrity": "sha512-vd15qHsaqrRL7dtH6QNuy0ndJmRDrS9HAM1CAiSifNUFv4x1a0CCVsj18hJ1mShxIG6T2i1sO78MkP56r0nYRw==",
			"dev": true,
			"requires": {
				"has": "^1.0.3"
			}
		},
		"is-extglob": {
			"version": "2.1.1",
			"resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
			"integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=",
			"dev": true
		},
		"is-glob": {
			"version": "4.0.3",
			"resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
			"integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==",
			"dev": true,
			"requires": {
				"is-extglob": "^2.1.1"
			}
		},
		"is-number": {
			"version": "7.0.0",
			"resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
			"integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
			"dev": true
		},
		"kleur": {
			"version": "4.1.4",
			"resolved": "https://registry.npmjs.org/kleur/-/kleur-4.1.4.tgz",
			"integrity": "sha512-8QADVssbrFjivHWQU7KkMgptGTl6WAcSdlbBPY4uNF+mWr6DGcKrvY2w4FQJoXch7+fKMjj0dRrL75vk3k23OA==",
			"dev": true
		},
		"magic-string": {
			"version": "0.25.7",
			"resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.7.tgz",
			"integrity": "sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA==",
			"dev": true,
			"requires": {
				"sourcemap-codec": "^1.4.4"
			}
		},
		"merge2": {
			"version": "1.4.1",
			"resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz",
			"integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==",
			"dev": true
		},
		"micromatch": {
			"version": "4.0.4",
			"resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz",
			"integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==",
			"dev": true,
			"requires": {
				"braces": "^3.0.1",
				"picomatch": "^2.2.3"
			}
		},
		"min-indent": {
			"version": "1.0.1",
			"resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz",
			"integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==",
			"dev": true
		},
		"minimatch": {
			"version": "3.0.4",
			"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
			"integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
			"dev": true,
			"requires": {
				"brace-expansion": "^1.1.7"
			}
		},
		"minimist": {
			"version": "1.2.5",
			"resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz",
			"integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==",
			"dev": true
		},
		"mkdirp": {
			"version": "0.5.5",
			"resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz",
			"integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==",
			"dev": true,
			"requires": {
				"minimist": "^1.2.5"
			}
		},
		"mri": {
			"version": "1.2.0",
			"resolved": "https://registry.npmjs.org/mri/-/mri-1.2.0.tgz",
			"integrity": "sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==",
			"dev": true
		},
		"ms": {
			"version": "2.1.2",
			"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
			"integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
			"dev": true
		},
		"nanoid": {
			"version": "3.1.30",
			"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.30.tgz",
			"integrity": "sha512-zJpuPDwOv8D2zq2WRoMe1HsfZthVewpel9CAvTfc/2mBD1uUT/agc5f7GHGWXlYkFvi1mVxe4IjvP2HNrop7nQ==",
			"dev": true
		},
		"normalize-path": {
			"version": "3.0.0",
			"resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
			"integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
			"dev": true
		},
		"once": {
			"version": "1.4.0",
			"resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
			"integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
			"dev": true,
			"requires": {
				"wrappy": "1"
			}
		},
		"parent-module": {
			"version": "1.0.1",
			"resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
			"integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
			"dev": true,
			"requires": {
				"callsites": "^3.0.0"
			}
		},
		"path-is-absolute": {
			"version": "1.0.1",
			"resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
			"integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
			"dev": true
		},
		"path-parse": {
			"version": "1.0.7",
			"resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
			"integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==",
			"dev": true
		},
		"picocolors": {
			"version": "1.0.0",
			"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
			"integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==",
			"dev": true
		},
		"picomatch": {
			"version": "2.3.0",
			"resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz",
			"integrity": "sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==",
			"dev": true
		},
		"postcss": {
			"version": "8.3.11",
			"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.3.11.tgz",
			"integrity": "sha512-hCmlUAIlUiav8Xdqw3Io4LcpA1DOt7h3LSTAC4G6JGHFFaWzI6qvFt9oilvl8BmkbBRX1IhM90ZAmpk68zccQA==",
			"dev": true,
			"requires": {
				"nanoid": "^3.1.30",
				"picocolors": "^1.0.0",
				"source-map-js": "^0.6.2"
			}
		},
		"queue-microtask": {
			"version": "1.2.3",
			"resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz",
			"integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==",
			"dev": true
		},
		"readdirp": {
			"version": "3.6.0",
			"resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz",
			"integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==",
			"dev": true,
			"requires": {
				"picomatch": "^2.2.1"
			}
		},
		"require-relative": {
			"version": "0.8.7",
			"resolved": "https://registry.npmjs.org/require-relative/-/require-relative-0.8.7.tgz",
			"integrity": "sha1-eZlTn8ngR6N5KPoZb44VY9q9Nt4=",
			"dev": true
		},
		"resolve": {
			"version": "1.20.0",
			"resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz",
			"integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==",
			"dev": true,
			"requires": {
				"is-core-module": "^2.2.0",
				"path-parse": "^1.0.6"
			}
		},
		"resolve-from": {
			"version": "4.0.0",
			"resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
			"integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
			"dev": true
		},
		"reusify": {
			"version": "1.0.4",
			"resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz",
			"integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==",
			"dev": true
		},
		"rimraf": {
			"version": "2.7.1",
			"resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz",
			"integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==",
			"dev": true,
			"requires": {
				"glob": "^7.1.3"
			}
		},
		"rollup": {
			"version": "2.58.3",
			"resolved": "https://registry.npmjs.org/rollup/-/rollup-2.58.3.tgz",
			"integrity": "sha512-ei27MSw1KhRur4p87Q0/Va2NAYqMXOX++FNEumMBcdreIRLURKy+cE2wcDJKBn0nfmhP2ZGrJkP1XPO+G8FJQw==",
			"dev": true,
			"requires": {
				"fsevents": "~2.3.2"
			}
		},
		"run-parallel": {
			"version": "1.2.0",
			"resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz",
			"integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==",
			"dev": true,
			"requires": {
				"queue-microtask": "^1.2.2"
			}
		},
		"sade": {
			"version": "1.7.4",
			"resolved": "https://registry.npmjs.org/sade/-/sade-1.7.4.tgz",
			"integrity": "sha512-y5yauMD93rX840MwUJr7C1ysLFBgMspsdTo4UVrDg3fXDvtwOyIqykhVAAm6fk/3au77773itJStObgK+LKaiA==",
			"dev": true,
			"requires": {
				"mri": "^1.1.0"
			}
		},
		"sander": {
			"version": "0.5.1",
			"resolved": "https://registry.npmjs.org/sander/-/sander-0.5.1.tgz",
			"integrity": "sha1-dB4kXiMfB8r7b98PEzrfohalAq0=",
			"dev": true,
			"requires": {
				"es6-promise": "^3.1.2",
				"graceful-fs": "^4.1.3",
				"mkdirp": "^0.5.1",
				"rimraf": "^2.5.2"
			}
		},
		"sorcery": {
			"version": "0.10.0",
			"resolved": "https://registry.npmjs.org/sorcery/-/sorcery-0.10.0.tgz",
			"integrity": "sha1-iukK19fLBfxZ8asMY3hF1cFaUrc=",
			"dev": true,
			"requires": {
				"buffer-crc32": "^0.2.5",
				"minimist": "^1.2.0",
				"sander": "^0.5.0",
				"sourcemap-codec": "^1.3.0"
			}
		},
		"source-map": {
			"version": "0.7.3",
			"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz",
			"integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==",
			"dev": true
		},
		"source-map-js": {
			"version": "0.6.2",
			"resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-0.6.2.tgz",
			"integrity": "sha512-/3GptzWzu0+0MBQFrDKzw/DvvMTUORvgY6k6jd/VS6iCR4RDTKWH6v6WPwQoUO8667uQEf9Oe38DxAYWY5F/Ug==",
			"dev": true
		},
		"sourcemap-codec": {
			"version": "1.4.8",
			"resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz",
			"integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==",
			"dev": true
		},
		"strip-indent": {
			"version": "3.0.0",
			"resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz",
			"integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==",
			"dev": true,
			"requires": {
				"min-indent": "^1.0.0"
			}
		},
		"supports-color": {
			"version": "7.2.0",
			"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
			"integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
			"dev": true,
			"requires": {
				"has-flag": "^4.0.0"
			}
		},
		"svelte": {
			"version": "3.44.1",
			"resolved": "https://registry.npmjs.org/svelte/-/svelte-3.44.1.tgz",
			"integrity": "sha512-4DrCEJoBvdR689efHNSxIQn2pnFwB7E7j2yLEJtHE/P8hxwZWIphCtJ8are7bjl/iVMlcEf5uh5pJ68IwR09vQ==",
			"dev": true
		},
		"svelte-check": {
			"version": "2.2.9",
			"resolved": "https://registry.npmjs.org/svelte-check/-/svelte-check-2.2.9.tgz",
			"integrity": "sha512-au77iP0v2f8F0gWu5Nk3dPkASk4H6DyLQEDQrQR6a7BWJaTnGEZKFhe5EsD8f9tHLyA4awPBi+D56hVuRsbgNA==",
			"dev": true,
			"requires": {
				"chalk": "^4.0.0",
				"chokidar": "^3.4.1",
				"fast-glob": "^3.2.7",
				"import-fresh": "^3.2.1",
				"minimist": "^1.2.5",
				"sade": "^1.7.4",
				"source-map": "^0.7.3",
				"svelte-preprocess": "^4.0.0",
				"typescript": "*"
			}
		},
		"svelte-hmr": {
			"version": "0.14.7",
			"resolved": "https://registry.npmjs.org/svelte-hmr/-/svelte-hmr-0.14.7.tgz",
			"integrity": "sha512-pDrzgcWSoMaK6AJkBWkmgIsecW0GChxYZSZieIYfCP0v2oPyx2CYU/zm7TBIcjLVUPP714WxmViE9Thht4etog==",
			"dev": true,
			"requires": {}
		},
		"svelte-preprocess": {
			"version": "4.9.8",
			"resolved": "https://registry.npmjs.org/svelte-preprocess/-/svelte-preprocess-4.9.8.tgz",
			"integrity": "sha512-EQS/oRZzMtYdAprppZxY3HcysKh11w54MgA63ybtL+TAZ4hVqYOnhw41JVJjWN9dhPnNjjLzvbZ2tMhTsla1Og==",
			"dev": true,
			"requires": {
				"@types/pug": "^2.0.4",
				"@types/sass": "^1.16.0",
				"detect-indent": "^6.0.0",
				"magic-string": "^0.25.7",
				"sorcery": "^0.10.0",
				"strip-indent": "^3.0.0"
			}
		},
		"to-regex-range": {
			"version": "5.0.1",
			"resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
			"integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
			"dev": true,
			"requires": {
				"is-number": "^7.0.0"
			}
		},
		"tslib": {
			"version": "2.3.1",
			"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz",
			"integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==",
			"dev": true
		},
		"typescript": {
			"version": "4.4.4",
			"resolved": "https://registry.npmjs.org/typescript/-/typescript-4.4.4.tgz",
			"integrity": "sha512-DqGhF5IKoBl8WNf8C1gu8q0xZSInh9j1kJJMqT3a94w1JzVaBU4EXOSMrz9yDqMT0xt3selp83fuFMQ0uzv6qA==",
			"dev": true
		},
		"vite": {
			"version": "2.6.13",
			"resolved": "https://registry.npmjs.org/vite/-/vite-2.6.13.tgz",
			"integrity": "sha512-+tGZ1OxozRirTudl4M3N3UTNJOlxdVo/qBl2IlDEy/ZpTFcskp+k5ncNjayR3bRYTCbqSOFz2JWGN1UmuDMScA==",
			"dev": true,
			"requires": {
				"esbuild": "^0.13.2",
				"fsevents": "~2.3.2",
				"postcss": "^8.3.8",
				"resolve": "^1.20.0",
				"rollup": "^2.57.0"
			}
		},
		"wrappy": {
			"version": "1.0.2",
			"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
			"integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
			"dev": true
		}
	}
}

==> package.json <==
{
	"name": "typescript-parser-bug",
	"version": "0.0.1",
	"private": true,
	"type": "module",
	"scripts": {
		"dev": "svelte-kit dev",
		"build": "svelte-kit build",
		"preview": "svelte-kit preview",
		"check": "svelte-check --tsconfig ./tsconfig.json"
	},
	"devDependencies": {
		"@sveltejs/kit": "next",
		"svelte": "^3.34.0",
		"svelte-check": "^2.2.6",
		"svelte-preprocess": "^4.9.4",
		"tslib": "^2.3.1",
		"typescript": "^4.4.3"
	}
}

==> src/app.html <==
<!DOCTYPE html>
<html lang="en">
	<head>
		<meta charset="utf-8" />
		<link rel="icon" href="/favicon.png" />
		<meta name="viewport" content="width=device-width, initial-scale=1" />
		<link rel="preconnect" href="https://fonts.googleapis.com" />
		<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
		<link
			href="https://fonts.googleapis.com/css2?family=Montserrat:wght@100;200;400&display=swap"
			rel="stylesheet"
		/>

		%svelte.head%
	</head>

	<body>
		<div id="svelte">%svelte.body%</div>
	</body>
</html>

==> src/global.d.ts <==
/// <reference types="@sveltejs/kit" />

==> src/routes/index.svelte <==
<script lang="ts">
// /^\$\s*/
</script>

==> svelte.config.js <==
import preprocess from 'svelte-preprocess';

/** @type {import('@sveltejs/kit').Config} */
const config = {
	// Consult https://github.com/sveltejs/svelte-preprocess
	// for more information about preprocessors
	preprocess: preprocess(),

	kit: {
		// hydrate the <div id="svelte"> element in src/app.html
		target: '#svelte'
	}
};

export default config;

==> tsconfig.json <==
{
	"compilerOptions": {
		"moduleResolution": "node",
		"module": "es2020",
		"lib": ["es2020", "DOM"],
		"target": "es2020",
		/**
			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.
			*/
		"importsNotUsedAsValues": "error",
		"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,
		"forceConsistentCasingInFileNames": true,
		"baseUrl": ".",
		"allowJs": true,
		"checkJs": true,
		"paths": {
			"$lib": ["src/lib"],
			"$lib/*": ["src/lib/*"]
		}
	},
	"include": ["src/**/*.d.ts", "src/**/*.js", "src/**/*.ts", "src/**/*.svelte"]
}
dummdidumm added a commit to dummdidumm/svelte-preprocess that referenced this issue Dec 10, 2021
Don't match in the case of $° or $§ or $\, these are not store variables

Fixes sveltejs#433
@dummdidumm dummdidumm mentioned this issue Dec 10, 2021
4 tasks
dummdidumm added a commit that referenced this issue Dec 16, 2021
Don't match in the case of $° or $§ or $\, these are not store variables

Fixes #433
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant