From 67a6b25f4390f730f27ec6bacef1019dbb8e24ac Mon Sep 17 00:00:00 2001 From: pantor Date: Thu, 29 Aug 2024 11:36:07 +0200 Subject: [PATCH] remove outdated web gui --- doc/web-gui/README.md | 19 - doc/web-gui/make_wasm.sh | 10 - doc/web-gui/package-lock.json | 5921 --------------------------------- doc/web-gui/package.json | 26 - doc/web-gui/src/gui.js | 105 - doc/web-gui/src/index.html | 111 - doc/web-gui/src/ruckig.js | 16 - doc/web-gui/src/ruckig.wasm | Bin 163325 -> 0 bytes pyproject.toml | 2 +- 9 files changed, 1 insertion(+), 6209 deletions(-) delete mode 100644 doc/web-gui/README.md delete mode 100644 doc/web-gui/make_wasm.sh delete mode 100644 doc/web-gui/package-lock.json delete mode 100644 doc/web-gui/package.json delete mode 100644 doc/web-gui/src/gui.js delete mode 100644 doc/web-gui/src/index.html delete mode 100644 doc/web-gui/src/ruckig.js delete mode 100755 doc/web-gui/src/ruckig.wasm diff --git a/doc/web-gui/README.md b/doc/web-gui/README.md deleted file mode 100644 index 582ea2ea..00000000 --- a/doc/web-gui/README.md +++ /dev/null @@ -1,19 +0,0 @@ -# Web Visualization - -## Build Ruckig WASM Module - -To build the Ruckig Wasm Module, call -``` -zsh doc/web-gui/make_wasm.sh -``` -from the project root. - - -## Local Development - -To develop the web-based GUI locally, run -``` -npm install -npm run start -``` -and open the specified link in the browser. diff --git a/doc/web-gui/make_wasm.sh b/doc/web-gui/make_wasm.sh deleted file mode 100644 index 1f2e3ebd..00000000 --- a/doc/web-gui/make_wasm.sh +++ /dev/null @@ -1,10 +0,0 @@ -emcc src/ruckig/wasm.cpp src/ruckig/brake.cpp \ - src/ruckig/position_first_step1.cpp src/ruckig/position_first_step2.cpp \ - src/ruckig/position_second_step1.cpp src/ruckig/position_second_step2.cpp \ - src/ruckig/position_third_step1.cpp src/ruckig/position_third_step2.cpp \ - src/ruckig/velocity_second_step1.cpp src/ruckig/velocity_second_step2.cpp \ - src/ruckig/velocity_third_step1.cpp src/ruckig/velocity_third_step2.cpp \ - -Iinclude -Ithird_party \ - -std=c++17 -lembind -Os \ - -s MODULARIZE -s EXPORT_ES6 -s EXPORT_NAME='RuckigModule' -s ENVIRONMENT='web' -s EXPORTED_RUNTIME_METHODS=ccall,cwrap \ - -o doc/web-gui/src/ruckig.js \ No newline at end of file diff --git a/doc/web-gui/package-lock.json b/doc/web-gui/package-lock.json deleted file mode 100644 index 1a1ae0d2..00000000 --- a/doc/web-gui/package-lock.json +++ /dev/null @@ -1,5921 +0,0 @@ -{ - "name": "gui.ruckig.com", - "lockfileVersion": 3, - "requires": true, - "packages": { - "": { - "name": "gui.ruckig.com", - "dependencies": { - "alpinejs": "^3.12.3", - "bulma": "^0.9.3", - "plotly.js": "^2.24.3", - "sass": "^1.38.0" - }, - "devDependencies": { - "@parcel/transformer-sass": "^2.8.3", - "assert": "^2.0.0", - "buffer": "^6.0.3", - "constants-browserify": "^1.0.0", - "os-browserify": "^0.3.0", - "parcel": "^2.8.3", - "path-browserify": "^1.0.1", - "process": "^0.11.10", - "stream-browserify": "^3.0.0", - "util": "^0.12.5" - } - }, - "node_modules/@babel/code-frame": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.5.tgz", - "integrity": "sha512-Xmwn266vad+6DAqEB2A6V/CcZVp62BbwVmcOJc2RPuwih1kw02TjQvWVWlcKGbBPd+8/0V5DEkOcizRGYsspYQ==", - "dev": true, - "dependencies": { - "@babel/highlight": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-validator-identifier": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.5.tgz", - "integrity": "sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/highlight": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.5.tgz", - "integrity": "sha512-BSKlD1hgnedS5XRnGOljZawtag7H1yPfQp0tdNJCHoH6AZ+Pcm9VvkrK59/Yy593Ypg0zMxH2BxD1VPYUQ7UIw==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.22.5", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/highlight/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/highlight/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/highlight/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/@babel/highlight/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "dev": true - }, - "node_modules/@babel/highlight/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/highlight/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@choojs/findup": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/@choojs/findup/-/findup-0.2.1.tgz", - "integrity": "sha512-YstAqNb0MCN8PjdLCDfRsBcGVRN41f3vgLvaI0IrIcBp4AqILRSS0DeWNGkicC+f/zRIPJLc+9RURVSepwvfBw==", - "dependencies": { - "commander": "^2.15.1" - }, - "bin": { - "findup": "bin/findup.js" - } - }, - "node_modules/@choojs/findup/node_modules/commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" - }, - "node_modules/@lezer/common": { - "version": "0.15.12", - "resolved": "https://registry.npmjs.org/@lezer/common/-/common-0.15.12.tgz", - "integrity": "sha512-edfwCxNLnzq5pBA/yaIhwJ3U3Kz8VAUOTRg0hhxaizaI1N+qxV7EXDv/kLCkLeq2RzSFvxexlaj5Mzfn2kY0Ig==", - "dev": true - }, - "node_modules/@lezer/lr": { - "version": "0.15.8", - "resolved": "https://registry.npmjs.org/@lezer/lr/-/lr-0.15.8.tgz", - "integrity": "sha512-bM6oE6VQZ6hIFxDNKk8bKPa14hqFrV07J/vHGOeiAbJReIaQXmkVb6xQu4MR+JBTLa5arGRyAAjJe1qaQt3Uvg==", - "dev": true, - "dependencies": { - "@lezer/common": "^0.15.0" - } - }, - "node_modules/@lmdb/lmdb-darwin-arm64": { - "version": "2.7.11", - "resolved": "https://registry.npmjs.org/@lmdb/lmdb-darwin-arm64/-/lmdb-darwin-arm64-2.7.11.tgz", - "integrity": "sha512-r6+vYq2vKzE+vgj/rNVRMwAevq0+ZR9IeMFIqcSga+wMtMdXQ27KqQ7uS99/yXASg29bos7yHP3yk4x6Iio0lw==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ] - }, - "node_modules/@lmdb/lmdb-darwin-x64": { - "version": "2.7.11", - "resolved": "https://registry.npmjs.org/@lmdb/lmdb-darwin-x64/-/lmdb-darwin-x64-2.7.11.tgz", - "integrity": "sha512-jhj1aB4K8ycRL1HOQT5OtzlqOq70jxUQEWRN9Gqh3TIDN30dxXtiHi6EWF516tzw6v2+3QqhDMJh8O6DtTGG8Q==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ] - }, - "node_modules/@lmdb/lmdb-linux-arm": { - "version": "2.7.11", - "resolved": "https://registry.npmjs.org/@lmdb/lmdb-linux-arm/-/lmdb-linux-arm-2.7.11.tgz", - "integrity": "sha512-dHfLFVSrw/v5X5lkwp0Vl7+NFpEeEYKfMG2DpdFJnnG1RgHQZngZxCaBagFoaJGykRpd2DYF1AeuXBFrAUAXfw==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@lmdb/lmdb-linux-arm64": { - "version": "2.7.11", - "resolved": "https://registry.npmjs.org/@lmdb/lmdb-linux-arm64/-/lmdb-linux-arm64-2.7.11.tgz", - "integrity": "sha512-7xGEfPPbmVJWcY2Nzqo11B9Nfxs+BAsiiaY/OcT4aaTDdykKeCjvKMQJA3KXCtZ1AtiC9ljyGLi+BfUwdulY5A==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@lmdb/lmdb-linux-x64": { - "version": "2.7.11", - "resolved": "https://registry.npmjs.org/@lmdb/lmdb-linux-x64/-/lmdb-linux-x64-2.7.11.tgz", - "integrity": "sha512-vUKI3JrREMQsXX8q0Eq5zX2FlYCKWMmLiCyyJNfZK0Uyf14RBg9VtB3ObQ41b4swYh2EWaltasWVe93Y8+KDng==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@lmdb/lmdb-win32-x64": { - "version": "2.7.11", - "resolved": "https://registry.npmjs.org/@lmdb/lmdb-win32-x64/-/lmdb-win32-x64-2.7.11.tgz", - "integrity": "sha512-BJwkHlSUgtB+Ei52Ai32M1AOMerSlzyIGA/KC4dAGL+GGwVMdwG8HGCOA2TxP3KjhbgDPMYkv7bt/NmOmRIFng==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/@mapbox/geojson-rewind": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/@mapbox/geojson-rewind/-/geojson-rewind-0.5.2.tgz", - "integrity": "sha512-tJaT+RbYGJYStt7wI3cq4Nl4SXxG8W7JDG5DMJu97V25RnbNg3QtQtf+KD+VLjNpWKYsRvXDNmNrBgEETr1ifA==", - "dependencies": { - "get-stream": "^6.0.1", - "minimist": "^1.2.6" - }, - "bin": { - "geojson-rewind": "geojson-rewind" - } - }, - "node_modules/@mapbox/geojson-types": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@mapbox/geojson-types/-/geojson-types-1.0.2.tgz", - "integrity": "sha512-e9EBqHHv3EORHrSfbR9DqecPNn+AmuAoQxV6aL8Xu30bJMJR1o8PZLZzpk1Wq7/NfCbuhmakHTPYRhoqLsXRnw==" - }, - "node_modules/@mapbox/jsonlint-lines-primitives": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/@mapbox/jsonlint-lines-primitives/-/jsonlint-lines-primitives-2.0.2.tgz", - "integrity": "sha512-rY0o9A5ECsTQRVhv7tL/OyDpGAoUB4tTvLiW1DSzQGq4bvTPhNw1VpSNjDJc5GFZ2XuyOtSWSVN05qOtcD71qQ==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/@mapbox/mapbox-gl-supported": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@mapbox/mapbox-gl-supported/-/mapbox-gl-supported-1.5.0.tgz", - "integrity": "sha512-/PT1P6DNf7vjEEiPkVIRJkvibbqWtqnyGaBz3nfRdcxclNSnSdaLU5tfAgcD7I8Yt5i+L19s406YLl1koLnLbg==", - "peerDependencies": { - "mapbox-gl": ">=0.32.1 <2.0.0" - } - }, - "node_modules/@mapbox/point-geometry": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@mapbox/point-geometry/-/point-geometry-0.1.0.tgz", - "integrity": "sha512-6j56HdLTwWGO0fJPlrZtdU/B13q8Uwmo18Ck2GnGgN9PCFyKTZ3UbXeEdRFh18i9XQ92eH2VdtpJHpBD3aripQ==" - }, - "node_modules/@mapbox/tiny-sdf": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/@mapbox/tiny-sdf/-/tiny-sdf-1.2.5.tgz", - "integrity": "sha512-cD8A/zJlm6fdJOk6DqPUV8mcpyJkRz2x2R+/fYcWDYG3oWbG7/L7Yl/WqQ1VZCjnL9OTIMAn6c+BC5Eru4sQEw==" - }, - "node_modules/@mapbox/unitbezier": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/@mapbox/unitbezier/-/unitbezier-0.0.0.tgz", - "integrity": "sha512-HPnRdYO0WjFjRTSwO3frz1wKaU649OBFPX3Zo/2WZvuRi6zMiRGui8SnPQiQABgqCf8YikDe5t3HViTVw1WUzA==" - }, - "node_modules/@mapbox/vector-tile": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/@mapbox/vector-tile/-/vector-tile-1.3.1.tgz", - "integrity": "sha512-MCEddb8u44/xfQ3oD+Srl/tNcQoqTw3goGk2oLsrFxOTc3dUp+kAnby3PvAeeBYSMSjSPD1nd1AJA6W49WnoUw==", - "dependencies": { - "@mapbox/point-geometry": "~0.1.0" - } - }, - "node_modules/@mapbox/whoots-js": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@mapbox/whoots-js/-/whoots-js-3.1.0.tgz", - "integrity": "sha512-Es6WcD0nO5l+2BOQS4uLfNPYQaNDfbot3X1XUoloz+x0mPDS3eeORZJl06HXjwBG1fOGwCRnzK88LMdxKRrd6Q==", - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@mischnic/json-sourcemap": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@mischnic/json-sourcemap/-/json-sourcemap-0.1.0.tgz", - "integrity": "sha512-dQb3QnfNqmQNYA4nFSN/uLaByIic58gOXq4Y4XqLOWmOrw73KmJPt/HLyG0wvn1bnR6mBKs/Uwvkh+Hns1T0XA==", - "dev": true, - "dependencies": { - "@lezer/common": "^0.15.7", - "@lezer/lr": "^0.15.4", - "json5": "^2.2.1" - }, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/@msgpackr-extract/msgpackr-extract-darwin-arm64": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@msgpackr-extract/msgpackr-extract-darwin-arm64/-/msgpackr-extract-darwin-arm64-3.0.2.tgz", - "integrity": "sha512-9bfjwDxIDWmmOKusUcqdS4Rw+SETlp9Dy39Xui9BEGEk19dDwH0jhipwFzEff/pFg95NKymc6TOTbRKcWeRqyQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ] - }, - "node_modules/@msgpackr-extract/msgpackr-extract-darwin-x64": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@msgpackr-extract/msgpackr-extract-darwin-x64/-/msgpackr-extract-darwin-x64-3.0.2.tgz", - "integrity": "sha512-lwriRAHm1Yg4iDf23Oxm9n/t5Zpw1lVnxYU3HnJPTi2lJRkKTrps1KVgvL6m7WvmhYVt/FIsssWay+k45QHeuw==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ] - }, - "node_modules/@msgpackr-extract/msgpackr-extract-linux-arm": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@msgpackr-extract/msgpackr-extract-linux-arm/-/msgpackr-extract-linux-arm-3.0.2.tgz", - "integrity": "sha512-MOI9Dlfrpi2Cuc7i5dXdxPbFIgbDBGgKR5F2yWEa6FVEtSWncfVNKW5AKjImAQ6CZlBK9tympdsZJ2xThBiWWA==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@msgpackr-extract/msgpackr-extract-linux-arm64": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@msgpackr-extract/msgpackr-extract-linux-arm64/-/msgpackr-extract-linux-arm64-3.0.2.tgz", - "integrity": "sha512-FU20Bo66/f7He9Fp9sP2zaJ1Q8L9uLPZQDub/WlUip78JlPeMbVL8546HbZfcW9LNciEXc8d+tThSJjSC+tmsg==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@msgpackr-extract/msgpackr-extract-linux-x64": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@msgpackr-extract/msgpackr-extract-linux-x64/-/msgpackr-extract-linux-x64-3.0.2.tgz", - "integrity": "sha512-gsWNDCklNy7Ajk0vBBf9jEx04RUxuDQfBse918Ww+Qb9HCPoGzS+XJTLe96iN3BVK7grnLiYghP/M4L8VsaHeA==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@msgpackr-extract/msgpackr-extract-win32-x64": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@msgpackr-extract/msgpackr-extract-win32-x64/-/msgpackr-extract-win32-x64-3.0.2.tgz", - "integrity": "sha512-O+6Gs8UeDbyFpbSh2CPEz/UOrrdWPTBYNblZK5CxxLisYt4kGX3Sc+czffFonyjiGSq3jWLwJS/CCJc7tBr4sQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/@parcel/bundler-default": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/@parcel/bundler-default/-/bundler-default-2.9.3.tgz", - "integrity": "sha512-JjJK8dq39/UO/MWI/4SCbB1t/qgpQRFnFDetAAAezQ8oN++b24u1fkMDa/xqQGjbuPmGeTds5zxGgYs7id7PYg==", - "dev": true, - "dependencies": { - "@parcel/diagnostic": "2.9.3", - "@parcel/graph": "2.9.3", - "@parcel/hash": "2.9.3", - "@parcel/plugin": "2.9.3", - "@parcel/utils": "2.9.3", - "nullthrows": "^1.1.1" - }, - "engines": { - "node": ">= 12.0.0", - "parcel": "^2.9.3" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/cache": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/@parcel/cache/-/cache-2.9.3.tgz", - "integrity": "sha512-Bj/H2uAJJSXtysG7E/x4EgTrE2hXmm7td/bc97K8M9N7+vQjxf7xb0ebgqe84ePVMkj4MVQSMEJkEucXVx4b0Q==", - "dev": true, - "dependencies": { - "@parcel/fs": "2.9.3", - "@parcel/logger": "2.9.3", - "@parcel/utils": "2.9.3", - "lmdb": "2.7.11" - }, - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - }, - "peerDependencies": { - "@parcel/core": "^2.9.3" - } - }, - "node_modules/@parcel/codeframe": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/@parcel/codeframe/-/codeframe-2.9.3.tgz", - "integrity": "sha512-z7yTyD6h3dvduaFoHpNqur74/2yDWL++33rjQjIjCaXREBN6dKHoMGMizzo/i4vbiI1p9dDox2FIDEHCMQxqdA==", - "dev": true, - "dependencies": { - "chalk": "^4.1.0" - }, - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/compressor-raw": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/@parcel/compressor-raw/-/compressor-raw-2.9.3.tgz", - "integrity": "sha512-jz3t4/ICMsHEqgiTmv5i1DJva2k5QRpZlBELVxfY+QElJTVe8edKJ0TiKcBxh2hx7sm4aUigGmp7JiqqHRRYmA==", - "dev": true, - "dependencies": { - "@parcel/plugin": "2.9.3" - }, - "engines": { - "node": ">= 12.0.0", - "parcel": "^2.9.3" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/config-default": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/@parcel/config-default/-/config-default-2.9.3.tgz", - "integrity": "sha512-tqN5tF7QnVABDZAu76co5E6N8mA9n8bxiWdK4xYyINYFIEHgX172oRTqXTnhEMjlMrdmASxvnGlbaPBaVnrCTw==", - "dev": true, - "dependencies": { - "@parcel/bundler-default": "2.9.3", - "@parcel/compressor-raw": "2.9.3", - "@parcel/namer-default": "2.9.3", - "@parcel/optimizer-css": "2.9.3", - "@parcel/optimizer-htmlnano": "2.9.3", - "@parcel/optimizer-image": "2.9.3", - "@parcel/optimizer-svgo": "2.9.3", - "@parcel/optimizer-swc": "2.9.3", - "@parcel/packager-css": "2.9.3", - "@parcel/packager-html": "2.9.3", - "@parcel/packager-js": "2.9.3", - "@parcel/packager-raw": "2.9.3", - "@parcel/packager-svg": "2.9.3", - "@parcel/reporter-dev-server": "2.9.3", - "@parcel/resolver-default": "2.9.3", - "@parcel/runtime-browser-hmr": "2.9.3", - "@parcel/runtime-js": "2.9.3", - "@parcel/runtime-react-refresh": "2.9.3", - "@parcel/runtime-service-worker": "2.9.3", - "@parcel/transformer-babel": "2.9.3", - "@parcel/transformer-css": "2.9.3", - "@parcel/transformer-html": "2.9.3", - "@parcel/transformer-image": "2.9.3", - "@parcel/transformer-js": "2.9.3", - "@parcel/transformer-json": "2.9.3", - "@parcel/transformer-postcss": "2.9.3", - "@parcel/transformer-posthtml": "2.9.3", - "@parcel/transformer-raw": "2.9.3", - "@parcel/transformer-react-refresh-wrap": "2.9.3", - "@parcel/transformer-svg": "2.9.3" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - }, - "peerDependencies": { - "@parcel/core": "^2.9.3" - } - }, - "node_modules/@parcel/core": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/@parcel/core/-/core-2.9.3.tgz", - "integrity": "sha512-4KlM1Zr/jpsqWuMXr2zmGsaOUs1zMMFh9vfCNKRZkptf+uk8I3sugHbNdo+F5B+4e2yMuOEb1zgAmvJLeuH6ww==", - "dev": true, - "dependencies": { - "@mischnic/json-sourcemap": "^0.1.0", - "@parcel/cache": "2.9.3", - "@parcel/diagnostic": "2.9.3", - "@parcel/events": "2.9.3", - "@parcel/fs": "2.9.3", - "@parcel/graph": "2.9.3", - "@parcel/hash": "2.9.3", - "@parcel/logger": "2.9.3", - "@parcel/package-manager": "2.9.3", - "@parcel/plugin": "2.9.3", - "@parcel/profiler": "2.9.3", - "@parcel/source-map": "^2.1.1", - "@parcel/types": "2.9.3", - "@parcel/utils": "2.9.3", - "@parcel/workers": "2.9.3", - "abortcontroller-polyfill": "^1.1.9", - "base-x": "^3.0.8", - "browserslist": "^4.6.6", - "clone": "^2.1.1", - "dotenv": "^7.0.0", - "dotenv-expand": "^5.1.0", - "json5": "^2.2.0", - "msgpackr": "^1.5.4", - "nullthrows": "^1.1.1", - "semver": "^7.5.2" - }, - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/diagnostic": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/@parcel/diagnostic/-/diagnostic-2.9.3.tgz", - "integrity": "sha512-6jxBdyB3D7gP4iE66ghUGntWt2v64E6EbD4AetZk+hNJpgudOOPsKTovcMi/i7I4V0qD7WXSF4tvkZUoac0jwA==", - "dev": true, - "dependencies": { - "@mischnic/json-sourcemap": "^0.1.0", - "nullthrows": "^1.1.1" - }, - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/events": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/@parcel/events/-/events-2.9.3.tgz", - "integrity": "sha512-K0Scx+Bx9f9p1vuShMzNwIgiaZUkxEnexaKYHYemJrM7pMAqxIuIqhnvwurRCsZOVLUJPDDNJ626cWTc5vIq+A==", - "dev": true, - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/fs": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/@parcel/fs/-/fs-2.9.3.tgz", - "integrity": "sha512-/PrRKgCRw22G7rNPSpgN3Q+i2nIkZWuvIOAdMG4KWXC4XLp8C9jarNaWd5QEQ75amjhQSl3oUzABzkdCtkKrgg==", - "dev": true, - "dependencies": { - "@parcel/fs-search": "2.9.3", - "@parcel/types": "2.9.3", - "@parcel/utils": "2.9.3", - "@parcel/watcher": "^2.0.7", - "@parcel/workers": "2.9.3" - }, - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - }, - "peerDependencies": { - "@parcel/core": "^2.9.3" - } - }, - "node_modules/@parcel/fs-search": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/@parcel/fs-search/-/fs-search-2.9.3.tgz", - "integrity": "sha512-nsNz3bsOpwS+jphcd+XjZL3F3PDq9lik0O8HPm5f6LYkqKWT+u/kgQzA8OkAHCR3q96LGiHxUywHPEBc27vI4Q==", - "dev": true, - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/graph": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/@parcel/graph/-/graph-2.9.3.tgz", - "integrity": "sha512-3LmRJmF8+OprAr6zJT3X2s8WAhLKkrhi6RsFlMWHifGU5ED1PFcJWFbOwJvSjcAhMQJP0fErcFIK1Ludv3Vm3g==", - "dev": true, - "dependencies": { - "nullthrows": "^1.1.1" - }, - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/hash": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/@parcel/hash/-/hash-2.9.3.tgz", - "integrity": "sha512-qlH5B85XLzVAeijgKPjm1gQu35LoRYX/8igsjnN8vOlbc3O8BYAUIutU58fbHbtE8MJPbxQQUw7tkTjeoujcQQ==", - "dev": true, - "dependencies": { - "xxhash-wasm": "^0.4.2" - }, - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/logger": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/@parcel/logger/-/logger-2.9.3.tgz", - "integrity": "sha512-5FNBszcV6ilGFcijEOvoNVG6IUJGsnMiaEnGQs7Fvc1dktTjEddnoQbIYhcSZL63wEmzBZOgkT5yDMajJ/41jw==", - "dev": true, - "dependencies": { - "@parcel/diagnostic": "2.9.3", - "@parcel/events": "2.9.3" - }, - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/markdown-ansi": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/@parcel/markdown-ansi/-/markdown-ansi-2.9.3.tgz", - "integrity": "sha512-/Q4X8F2aN8UNjAJrQ5NfK2OmZf6shry9DqetUSEndQ0fHonk78WKt6LT0zSKEBEW/bB/bXk6mNMsCup6L8ibjQ==", - "dev": true, - "dependencies": { - "chalk": "^4.1.0" - }, - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/namer-default": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/@parcel/namer-default/-/namer-default-2.9.3.tgz", - "integrity": "sha512-1ynFEcap48/Ngzwwn318eLYpLUwijuuZoXQPCsEQ21OOIOtfhFQJaPwXTsw6kRitshKq76P2aafE0BioGSqxcA==", - "dev": true, - "dependencies": { - "@parcel/diagnostic": "2.9.3", - "@parcel/plugin": "2.9.3", - "nullthrows": "^1.1.1" - }, - "engines": { - "node": ">= 12.0.0", - "parcel": "^2.9.3" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/node-resolver-core": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@parcel/node-resolver-core/-/node-resolver-core-3.0.3.tgz", - "integrity": "sha512-AjxNcZVHHJoNT/A99PKIdFtwvoze8PAiC3yz8E/dRggrDIOboUEodeQYV5Aq++aK76uz/iOP0tST2T8A5rhb1A==", - "dev": true, - "dependencies": { - "@mischnic/json-sourcemap": "^0.1.0", - "@parcel/diagnostic": "2.9.3", - "@parcel/fs": "2.9.3", - "@parcel/utils": "2.9.3", - "nullthrows": "^1.1.1", - "semver": "^7.5.2" - }, - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/optimizer-css": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/@parcel/optimizer-css/-/optimizer-css-2.9.3.tgz", - "integrity": "sha512-RK1QwcSdWDNUsFvuLy0hgnYKtPQebzCb0vPPzqs6LhL+vqUu9utOyRycGaQffHCkHVQP6zGlN+KFssd7YtFGhA==", - "dev": true, - "dependencies": { - "@parcel/diagnostic": "2.9.3", - "@parcel/plugin": "2.9.3", - "@parcel/source-map": "^2.1.1", - "@parcel/utils": "2.9.3", - "browserslist": "^4.6.6", - "lightningcss": "^1.16.1", - "nullthrows": "^1.1.1" - }, - "engines": { - "node": ">= 12.0.0", - "parcel": "^2.9.3" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/optimizer-htmlnano": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/@parcel/optimizer-htmlnano/-/optimizer-htmlnano-2.9.3.tgz", - "integrity": "sha512-9g/KBck3c6DokmJfvJ5zpHFBiCSolaGrcsTGx8C3YPdCTVTI9P1TDCwUxvAr4LjpcIRSa82wlLCI+nF6sSgxKA==", - "dev": true, - "dependencies": { - "@parcel/plugin": "2.9.3", - "htmlnano": "^2.0.0", - "nullthrows": "^1.1.1", - "posthtml": "^0.16.5", - "svgo": "^2.4.0" - }, - "engines": { - "node": ">= 12.0.0", - "parcel": "^2.9.3" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/optimizer-htmlnano/node_modules/css-select": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", - "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", - "dev": true, - "dependencies": { - "boolbase": "^1.0.0", - "css-what": "^6.0.1", - "domhandler": "^4.3.1", - "domutils": "^2.8.0", - "nth-check": "^2.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/fb55" - } - }, - "node_modules/@parcel/optimizer-htmlnano/node_modules/css-tree": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.1.3.tgz", - "integrity": "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==", - "dev": true, - "dependencies": { - "mdn-data": "2.0.14", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/@parcel/optimizer-htmlnano/node_modules/csso": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/csso/-/csso-4.2.0.tgz", - "integrity": "sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==", - "dev": true, - "dependencies": { - "css-tree": "^1.1.2" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/@parcel/optimizer-htmlnano/node_modules/mdn-data": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz", - "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==", - "dev": true - }, - "node_modules/@parcel/optimizer-htmlnano/node_modules/svgo": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/svgo/-/svgo-2.8.0.tgz", - "integrity": "sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg==", - "dev": true, - "dependencies": { - "@trysound/sax": "0.2.0", - "commander": "^7.2.0", - "css-select": "^4.1.3", - "css-tree": "^1.1.3", - "csso": "^4.2.0", - "picocolors": "^1.0.0", - "stable": "^0.1.8" - }, - "bin": { - "svgo": "bin/svgo" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/@parcel/optimizer-image": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/@parcel/optimizer-image/-/optimizer-image-2.9.3.tgz", - "integrity": "sha512-530YzthE7kmecnNhPbkAK+26yQNt69pfJrgE0Ev0BZaM1Wu2+33nki7o8qvkTkikhPrurEJLGIXt1qKmbKvCbA==", - "dev": true, - "dependencies": { - "@parcel/diagnostic": "2.9.3", - "@parcel/plugin": "2.9.3", - "@parcel/utils": "2.9.3", - "@parcel/workers": "2.9.3" - }, - "engines": { - "node": ">= 12.0.0", - "parcel": "^2.9.3" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - }, - "peerDependencies": { - "@parcel/core": "^2.9.3" - } - }, - "node_modules/@parcel/optimizer-svgo": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/@parcel/optimizer-svgo/-/optimizer-svgo-2.9.3.tgz", - "integrity": "sha512-ytQS0wY5JJhWU4mL0wfhYDUuHcfuw+Gy2+JcnTm1t1AZXHlOTbU6EzRWNqBShsgXjvdrQQXizAe3B6GFFlFJVQ==", - "dev": true, - "dependencies": { - "@parcel/diagnostic": "2.9.3", - "@parcel/plugin": "2.9.3", - "@parcel/utils": "2.9.3", - "svgo": "^2.4.0" - }, - "engines": { - "node": ">= 12.0.0", - "parcel": "^2.9.3" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/optimizer-svgo/node_modules/css-select": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", - "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", - "dev": true, - "dependencies": { - "boolbase": "^1.0.0", - "css-what": "^6.0.1", - "domhandler": "^4.3.1", - "domutils": "^2.8.0", - "nth-check": "^2.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/fb55" - } - }, - "node_modules/@parcel/optimizer-svgo/node_modules/css-tree": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.1.3.tgz", - "integrity": "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==", - "dev": true, - "dependencies": { - "mdn-data": "2.0.14", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/@parcel/optimizer-svgo/node_modules/csso": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/csso/-/csso-4.2.0.tgz", - "integrity": "sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==", - "dev": true, - "dependencies": { - "css-tree": "^1.1.2" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/@parcel/optimizer-svgo/node_modules/mdn-data": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz", - "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==", - "dev": true - }, - "node_modules/@parcel/optimizer-svgo/node_modules/svgo": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/svgo/-/svgo-2.8.0.tgz", - "integrity": "sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg==", - "dev": true, - "dependencies": { - "@trysound/sax": "0.2.0", - "commander": "^7.2.0", - "css-select": "^4.1.3", - "css-tree": "^1.1.3", - "csso": "^4.2.0", - "picocolors": "^1.0.0", - "stable": "^0.1.8" - }, - "bin": { - "svgo": "bin/svgo" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/@parcel/optimizer-swc": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/@parcel/optimizer-swc/-/optimizer-swc-2.9.3.tgz", - "integrity": "sha512-GQINNeqtdpL1ombq/Cpwi6IBk02wKJ/JJbYbyfHtk8lxlq13soenpwOlzJ5T9D2fdG+FUhai9NxpN5Ss4lNoAg==", - "dev": true, - "dependencies": { - "@parcel/diagnostic": "2.9.3", - "@parcel/plugin": "2.9.3", - "@parcel/source-map": "^2.1.1", - "@parcel/utils": "2.9.3", - "@swc/core": "^1.3.36", - "nullthrows": "^1.1.1" - }, - "engines": { - "node": ">= 12.0.0", - "parcel": "^2.9.3" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/package-manager": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/@parcel/package-manager/-/package-manager-2.9.3.tgz", - "integrity": "sha512-NH6omcNTEupDmW4Lm1e4NUYBjdqkURxgZ4CNESESInHJe6tblVhNB8Rpr1ar7zDar7cly9ILr8P6N3Ei7bTEjg==", - "dev": true, - "dependencies": { - "@parcel/diagnostic": "2.9.3", - "@parcel/fs": "2.9.3", - "@parcel/logger": "2.9.3", - "@parcel/node-resolver-core": "3.0.3", - "@parcel/types": "2.9.3", - "@parcel/utils": "2.9.3", - "@parcel/workers": "2.9.3", - "semver": "^7.5.2" - }, - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - }, - "peerDependencies": { - "@parcel/core": "^2.9.3" - } - }, - "node_modules/@parcel/packager-css": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/@parcel/packager-css/-/packager-css-2.9.3.tgz", - "integrity": "sha512-mePiWiYZOULY6e1RdAIJyRoYqXqGci0srOaVZYaP7mnrzvJgA63kaZFFsDiEWghunQpMUuUjM2x/vQVHzxmhKQ==", - "dev": true, - "dependencies": { - "@parcel/diagnostic": "2.9.3", - "@parcel/plugin": "2.9.3", - "@parcel/source-map": "^2.1.1", - "@parcel/utils": "2.9.3", - "nullthrows": "^1.1.1" - }, - "engines": { - "node": ">= 12.0.0", - "parcel": "^2.9.3" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/packager-html": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/@parcel/packager-html/-/packager-html-2.9.3.tgz", - "integrity": "sha512-0Ex+O0EaZf9APNERRNGgGto02hFJ6f5RQEvRWBK55WAV1rXeU+kpjC0c0qZvnUaUtXfpWMsEBkevJCwDkUMeMg==", - "dev": true, - "dependencies": { - "@parcel/plugin": "2.9.3", - "@parcel/types": "2.9.3", - "@parcel/utils": "2.9.3", - "nullthrows": "^1.1.1", - "posthtml": "^0.16.5" - }, - "engines": { - "node": ">= 12.0.0", - "parcel": "^2.9.3" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/packager-js": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/@parcel/packager-js/-/packager-js-2.9.3.tgz", - "integrity": "sha512-V5xwkoE3zQ3R+WqAWhA1KGQ791FvJeW6KonOlMI1q76Djjgox68hhObqcLu66AmYNhR2R/wUpkP18hP2z8dSFw==", - "dev": true, - "dependencies": { - "@parcel/diagnostic": "2.9.3", - "@parcel/hash": "2.9.3", - "@parcel/plugin": "2.9.3", - "@parcel/source-map": "^2.1.1", - "@parcel/utils": "2.9.3", - "globals": "^13.2.0", - "nullthrows": "^1.1.1" - }, - "engines": { - "node": ">= 12.0.0", - "parcel": "^2.9.3" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/packager-raw": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/@parcel/packager-raw/-/packager-raw-2.9.3.tgz", - "integrity": "sha512-oPQTNoYanQ2DdJyL61uPYK2py83rKOT8YVh2QWAx0zsSli6Kiy64U3+xOCYWgDVCrHw9+9NpQMuAdSiFg4cq8g==", - "dev": true, - "dependencies": { - "@parcel/plugin": "2.9.3" - }, - "engines": { - "node": ">= 12.0.0", - "parcel": "^2.9.3" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/packager-svg": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/@parcel/packager-svg/-/packager-svg-2.9.3.tgz", - "integrity": "sha512-p/Ya6UO9DAkaCUFxfFGyeHZDp9YPAlpdnh1OChuwqSFOXFjjeXuoK4KLT+ZRalVBo2Jo8xF70oKMZw4MVvaL7Q==", - "dev": true, - "dependencies": { - "@parcel/plugin": "2.9.3", - "@parcel/types": "2.9.3", - "@parcel/utils": "2.9.3", - "posthtml": "^0.16.4" - }, - "engines": { - "node": ">= 12.0.0", - "parcel": "^2.9.3" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/plugin": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/@parcel/plugin/-/plugin-2.9.3.tgz", - "integrity": "sha512-qN85Gqr2GMuxX1dT1mnuO9hOcvlEv1lrYrCxn7CJN2nUhbwcfG+LEvcrCzCOJ6XtIHm+ZBV9h9p7FfoPLvpw+g==", - "dev": true, - "dependencies": { - "@parcel/types": "2.9.3" - }, - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/profiler": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/@parcel/profiler/-/profiler-2.9.3.tgz", - "integrity": "sha512-pyHc9lw8VZDfgZoeZWZU9J0CVEv1Zw9O5+e0DJPDPHuXJYr72ZAOhbljtU3owWKAeW+++Q2AZWkbUGEOjI/e6g==", - "dev": true, - "dependencies": { - "@parcel/diagnostic": "2.9.3", - "@parcel/events": "2.9.3", - "chrome-trace-event": "^1.0.2" - }, - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/reporter-cli": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/@parcel/reporter-cli/-/reporter-cli-2.9.3.tgz", - "integrity": "sha512-pZiEvQpuXFuQBafMHxkDmwH8CnnK9sWHwa3bSbsnt385aUahtE8dpY0LKt+K1zfB6degKoczN6aWVj9WycQuZQ==", - "dev": true, - "dependencies": { - "@parcel/plugin": "2.9.3", - "@parcel/types": "2.9.3", - "@parcel/utils": "2.9.3", - "chalk": "^4.1.0", - "term-size": "^2.2.1" - }, - "engines": { - "node": ">= 12.0.0", - "parcel": "^2.9.3" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/reporter-dev-server": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/@parcel/reporter-dev-server/-/reporter-dev-server-2.9.3.tgz", - "integrity": "sha512-s6eboxdLEtRSvG52xi9IiNbcPKC0XMVmvTckieue2EqGDbDcaHQoHmmwkk0rNq0/Z/UxelGcQXoIYC/0xq3ykQ==", - "dev": true, - "dependencies": { - "@parcel/plugin": "2.9.3", - "@parcel/utils": "2.9.3" - }, - "engines": { - "node": ">= 12.0.0", - "parcel": "^2.9.3" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/reporter-tracer": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/@parcel/reporter-tracer/-/reporter-tracer-2.9.3.tgz", - "integrity": "sha512-9cXpKWk0m6d6d+4+TlAdOe8XIPaFEIKGWMWG+5SFAQE08u3olet4PSvd49F4+ZZo5ftRE7YI3j6xNbXvJT8KGw==", - "dev": true, - "dependencies": { - "@parcel/plugin": "2.9.3", - "@parcel/utils": "2.9.3", - "chrome-trace-event": "^1.0.3", - "nullthrows": "^1.1.1" - }, - "engines": { - "node": ">= 12.0.0", - "parcel": "^2.9.3" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/resolver-default": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/@parcel/resolver-default/-/resolver-default-2.9.3.tgz", - "integrity": "sha512-8ESJk1COKvDzkmOnppNXoDamNMlYVIvrKc2RuFPmp8nKVj47R6NwMgvwxEaatyPzvkmyTpq5RvG9I3HFc+r4Cw==", - "dev": true, - "dependencies": { - "@parcel/node-resolver-core": "3.0.3", - "@parcel/plugin": "2.9.3" - }, - "engines": { - "node": ">= 12.0.0", - "parcel": "^2.9.3" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/runtime-browser-hmr": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/@parcel/runtime-browser-hmr/-/runtime-browser-hmr-2.9.3.tgz", - "integrity": "sha512-EgiDIDrVAWpz7bOzWXqVinQkaFjLwT34wsonpXAbuI7f7r00d52vNAQC9AMu+pTijA3gyKoJ+Q4NWPMZf7ACDA==", - "dev": true, - "dependencies": { - "@parcel/plugin": "2.9.3", - "@parcel/utils": "2.9.3" - }, - "engines": { - "node": ">= 12.0.0", - "parcel": "^2.9.3" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/runtime-js": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/@parcel/runtime-js/-/runtime-js-2.9.3.tgz", - "integrity": "sha512-EvIy+qXcKnB5qxHhe96zmJpSAViNVXHfQI5RSdZ2a7CPwORwhTI+zPNT9sb7xb/WwFw/WuTTgzT40b41DceU6Q==", - "dev": true, - "dependencies": { - "@parcel/diagnostic": "2.9.3", - "@parcel/plugin": "2.9.3", - "@parcel/utils": "2.9.3", - "nullthrows": "^1.1.1" - }, - "engines": { - "node": ">= 12.0.0", - "parcel": "^2.9.3" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/runtime-react-refresh": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/@parcel/runtime-react-refresh/-/runtime-react-refresh-2.9.3.tgz", - "integrity": "sha512-XBgryZQIyCmi6JwEfMUCmINB3l1TpTp9a2iFxmYNpzHlqj4Ve0saKaqWOVRLvC945ZovWIBzcSW2IYqWKGtbAA==", - "dev": true, - "dependencies": { - "@parcel/plugin": "2.9.3", - "@parcel/utils": "2.9.3", - "react-error-overlay": "6.0.9", - "react-refresh": "^0.9.0" - }, - "engines": { - "node": ">= 12.0.0", - "parcel": "^2.9.3" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/runtime-service-worker": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/@parcel/runtime-service-worker/-/runtime-service-worker-2.9.3.tgz", - "integrity": "sha512-qLJLqv1mMdWL7gyh8aKBFFAuEiJkhUUgLKpdn6eSfH/R7kTtb76WnOwqUrhvEI9bZFUM/8Pa1bzJnPpqSOM+Sw==", - "dev": true, - "dependencies": { - "@parcel/plugin": "2.9.3", - "@parcel/utils": "2.9.3", - "nullthrows": "^1.1.1" - }, - "engines": { - "node": ">= 12.0.0", - "parcel": "^2.9.3" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/source-map": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/@parcel/source-map/-/source-map-2.1.1.tgz", - "integrity": "sha512-Ejx1P/mj+kMjQb8/y5XxDUn4reGdr+WyKYloBljpppUy8gs42T+BNoEOuRYqDVdgPc6NxduzIDoJS9pOFfV5Ew==", - "dev": true, - "dependencies": { - "detect-libc": "^1.0.3" - }, - "engines": { - "node": "^12.18.3 || >=14" - } - }, - "node_modules/@parcel/transformer-babel": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/@parcel/transformer-babel/-/transformer-babel-2.9.3.tgz", - "integrity": "sha512-pURtEsnsp3h6tOBDuzh9wRvVtw4PgIlqwAArIWdrG7iwqOUYv9D8ME4+ePWEu7MQWAp58hv9pTJtqWv4T+Sq8A==", - "dev": true, - "dependencies": { - "@parcel/diagnostic": "2.9.3", - "@parcel/plugin": "2.9.3", - "@parcel/source-map": "^2.1.1", - "@parcel/utils": "2.9.3", - "browserslist": "^4.6.6", - "json5": "^2.2.0", - "nullthrows": "^1.1.1", - "semver": "^7.5.2" - }, - "engines": { - "node": ">= 12.0.0", - "parcel": "^2.9.3" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/transformer-css": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/@parcel/transformer-css/-/transformer-css-2.9.3.tgz", - "integrity": "sha512-duWMdbEBBPjg3fQdXF16iWIdThetDZvCs2TpUD7xOlXH6kR0V5BJy8ONFT15u1RCqIV9hSNGaS3v3I9YRNY5zQ==", - "dev": true, - "dependencies": { - "@parcel/diagnostic": "2.9.3", - "@parcel/plugin": "2.9.3", - "@parcel/source-map": "^2.1.1", - "@parcel/utils": "2.9.3", - "browserslist": "^4.6.6", - "lightningcss": "^1.16.1", - "nullthrows": "^1.1.1" - }, - "engines": { - "node": ">= 12.0.0", - "parcel": "^2.9.3" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/transformer-html": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/@parcel/transformer-html/-/transformer-html-2.9.3.tgz", - "integrity": "sha512-0NU4omcHzFXA1seqftAXA2KNZaMByoKaNdXnLgBgtCGDiYvOcL+6xGHgY6pw9LvOh5um10KI5TxSIMILoI7VtA==", - "dev": true, - "dependencies": { - "@parcel/diagnostic": "2.9.3", - "@parcel/hash": "2.9.3", - "@parcel/plugin": "2.9.3", - "nullthrows": "^1.1.1", - "posthtml": "^0.16.5", - "posthtml-parser": "^0.10.1", - "posthtml-render": "^3.0.0", - "semver": "^7.5.2", - "srcset": "4" - }, - "engines": { - "node": ">= 12.0.0", - "parcel": "^2.9.3" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/transformer-image": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/@parcel/transformer-image/-/transformer-image-2.9.3.tgz", - "integrity": "sha512-7CEe35RaPadQzLIuxzTtIxnItvOoy46hcbXtOdDt6lmVa4omuOygZYRIya2lsGIP4JHvAaALMb5nt99a1uTwJg==", - "dev": true, - "dependencies": { - "@parcel/plugin": "2.9.3", - "@parcel/utils": "2.9.3", - "@parcel/workers": "2.9.3", - "nullthrows": "^1.1.1" - }, - "engines": { - "node": ">= 12.0.0", - "parcel": "^2.9.3" - }, - "peerDependencies": { - "@parcel/core": "^2.9.3" - } - }, - "node_modules/@parcel/transformer-js": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/@parcel/transformer-js/-/transformer-js-2.9.3.tgz", - "integrity": "sha512-Z2MVVg5FYcPOfxlUwxqb5l9yjTMEqE3KI3zq2MBRUme6AV07KxLmCDF23b6glzZlHWQUE8MXzYCTAkOPCcPz+Q==", - "dev": true, - "dependencies": { - "@parcel/diagnostic": "2.9.3", - "@parcel/plugin": "2.9.3", - "@parcel/source-map": "^2.1.1", - "@parcel/utils": "2.9.3", - "@parcel/workers": "2.9.3", - "@swc/helpers": "^0.5.0", - "browserslist": "^4.6.6", - "nullthrows": "^1.1.1", - "regenerator-runtime": "^0.13.7", - "semver": "^7.5.2" - }, - "engines": { - "node": ">= 12.0.0", - "parcel": "^2.9.3" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - }, - "peerDependencies": { - "@parcel/core": "^2.9.3" - } - }, - "node_modules/@parcel/transformer-json": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/@parcel/transformer-json/-/transformer-json-2.9.3.tgz", - "integrity": "sha512-yNL27dbOLhkkrjaQjiQ7Im9VOxmkfuuSNSmS0rA3gEjVcm07SLKRzWkAaPnyx44Lb6bzyOTWwVrb9aMmxgADpA==", - "dev": true, - "dependencies": { - "@parcel/plugin": "2.9.3", - "json5": "^2.2.0" - }, - "engines": { - "node": ">= 12.0.0", - "parcel": "^2.9.3" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/transformer-postcss": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/@parcel/transformer-postcss/-/transformer-postcss-2.9.3.tgz", - "integrity": "sha512-HoDvPqKzhpmvMmHqQhDnt8F1vH61m6plpGiYaYnYv2Om4HHi5ZIq9bO+9QLBnTKfaZ7ndYSefTKOxTYElg7wyw==", - "dev": true, - "dependencies": { - "@parcel/diagnostic": "2.9.3", - "@parcel/hash": "2.9.3", - "@parcel/plugin": "2.9.3", - "@parcel/utils": "2.9.3", - "clone": "^2.1.1", - "nullthrows": "^1.1.1", - "postcss-value-parser": "^4.2.0", - "semver": "^7.5.2" - }, - "engines": { - "node": ">= 12.0.0", - "parcel": "^2.9.3" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/transformer-posthtml": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/@parcel/transformer-posthtml/-/transformer-posthtml-2.9.3.tgz", - "integrity": "sha512-2fQGgrzRmaqbWf3y2/T6xhqrNjzqMMKksqJzvc8TMfK6f2kg3Ddjv158eaSW2JdkV39aY7tvAOn5f1uzo74BMA==", - "dev": true, - "dependencies": { - "@parcel/plugin": "2.9.3", - "@parcel/utils": "2.9.3", - "nullthrows": "^1.1.1", - "posthtml": "^0.16.5", - "posthtml-parser": "^0.10.1", - "posthtml-render": "^3.0.0", - "semver": "^7.5.2" - }, - "engines": { - "node": ">= 12.0.0", - "parcel": "^2.9.3" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/transformer-raw": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/@parcel/transformer-raw/-/transformer-raw-2.9.3.tgz", - "integrity": "sha512-oqdPzMC9QzWRbY9J6TZEqltknjno+dY24QWqf8ondmdF2+W+/2mRDu59hhCzQrqUHgTq4FewowRZmSfpzHxwaQ==", - "dev": true, - "dependencies": { - "@parcel/plugin": "2.9.3" - }, - "engines": { - "node": ">= 12.0.0", - "parcel": "^2.9.3" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/transformer-react-refresh-wrap": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/@parcel/transformer-react-refresh-wrap/-/transformer-react-refresh-wrap-2.9.3.tgz", - "integrity": "sha512-cb9NyU6oJlDblFIlzqIE8AkvRQVGl2IwJNKwD4PdE7Y6sq2okGEPG4hOw3k/Y9JVjM4/2pUORqvjSRhWwd9oVQ==", - "dev": true, - "dependencies": { - "@parcel/plugin": "2.9.3", - "@parcel/utils": "2.9.3", - "react-refresh": "^0.9.0" - }, - "engines": { - "node": ">= 12.0.0", - "parcel": "^2.9.3" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/transformer-sass": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/@parcel/transformer-sass/-/transformer-sass-2.9.3.tgz", - "integrity": "sha512-i9abj9bKg3xCHghJyTM3rUVxIEn9n1Rl+DFdpyNAD8VZ52COfOshFDQOWNuhU1hEnJOFYCjnfcO0HRTsg3dWmg==", - "dev": true, - "dependencies": { - "@parcel/plugin": "2.9.3", - "@parcel/source-map": "^2.1.1", - "sass": "^1.38.0" - }, - "engines": { - "node": ">= 12.0.0", - "parcel": "^2.9.3" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/transformer-svg": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/@parcel/transformer-svg/-/transformer-svg-2.9.3.tgz", - "integrity": "sha512-ypmE+dzB09IMCdEAkOsSxq1dEIm2A3h67nAFz4qbfHbwNgXBUuy/jB3ZMwXN/cO0f7SBh/Ap8Jhq6vmGqB5tWw==", - "dev": true, - "dependencies": { - "@parcel/diagnostic": "2.9.3", - "@parcel/hash": "2.9.3", - "@parcel/plugin": "2.9.3", - "nullthrows": "^1.1.1", - "posthtml": "^0.16.5", - "posthtml-parser": "^0.10.1", - "posthtml-render": "^3.0.0", - "semver": "^7.5.2" - }, - "engines": { - "node": ">= 12.0.0", - "parcel": "^2.9.3" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/types": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/@parcel/types/-/types-2.9.3.tgz", - "integrity": "sha512-NSNY8sYtRhvF1SqhnIGgGvJocyWt1K8Tnw5cVepm0g38ywtX6mwkBvMkmeehXkII4mSUn+frD9wGsydTunezvA==", - "dev": true, - "dependencies": { - "@parcel/cache": "2.9.3", - "@parcel/diagnostic": "2.9.3", - "@parcel/fs": "2.9.3", - "@parcel/package-manager": "2.9.3", - "@parcel/source-map": "^2.1.1", - "@parcel/workers": "2.9.3", - "utility-types": "^3.10.0" - } - }, - "node_modules/@parcel/utils": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/@parcel/utils/-/utils-2.9.3.tgz", - "integrity": "sha512-cesanjtj/oLehW8Waq9JFPmAImhoiHX03ihc3JTWkrvJYSbD7wYKCDgPAM3JiRAqvh1LZ6P699uITrYWNoRLUg==", - "dev": true, - "dependencies": { - "@parcel/codeframe": "2.9.3", - "@parcel/diagnostic": "2.9.3", - "@parcel/hash": "2.9.3", - "@parcel/logger": "2.9.3", - "@parcel/markdown-ansi": "2.9.3", - "@parcel/source-map": "^2.1.1", - "chalk": "^4.1.0", - "nullthrows": "^1.1.1" - }, - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@parcel/watcher/-/watcher-2.2.0.tgz", - "integrity": "sha512-71S4TF+IMyAn24PK4KSkdKtqJDR3zRzb0HE3yXpacItqTM7XfF2f5q9NEGLEVl0dAaBAGfNwDCjH120y25F6Tg==", - "dev": true, - "hasInstallScript": true, - "dependencies": { - "detect-libc": "^1.0.3", - "is-glob": "^4.0.3", - "micromatch": "^4.0.5", - "node-addon-api": "^7.0.0" - }, - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - }, - "optionalDependencies": { - "@parcel/watcher-android-arm64": "2.2.0", - "@parcel/watcher-darwin-arm64": "2.2.0", - "@parcel/watcher-darwin-x64": "2.2.0", - "@parcel/watcher-linux-arm-glibc": "2.2.0", - "@parcel/watcher-linux-arm64-glibc": "2.2.0", - "@parcel/watcher-linux-arm64-musl": "2.2.0", - "@parcel/watcher-linux-x64-glibc": "2.2.0", - "@parcel/watcher-linux-x64-musl": "2.2.0", - "@parcel/watcher-win32-arm64": "2.2.0", - "@parcel/watcher-win32-x64": "2.2.0" - } - }, - "node_modules/@parcel/watcher-android-arm64": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@parcel/watcher-android-arm64/-/watcher-android-arm64-2.2.0.tgz", - "integrity": "sha512-nU2wh00CTQT9rr1TIKTjdQ9lAGYpmz6XuKw0nAwAN+S2A5YiD55BK1u+E5WMCT8YOIDe/n6gaj4o/Bi9294SSQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-darwin-arm64": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-arm64/-/watcher-darwin-arm64-2.2.0.tgz", - "integrity": "sha512-cJl0UZDcodciy3TDMomoK/Huxpjlkkim3SyMgWzjovHGOZKNce9guLz2dzuFwfObBFCjfznbFMIvAZ5syXotYw==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-darwin-x64": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-x64/-/watcher-darwin-x64-2.2.0.tgz", - "integrity": "sha512-QI77zxaGrCV1StKcoRYfsUfmUmvPMPfQrubkBBy5XujV2fwaLgZivQOTQMBgp5K2+E19u1ufpspKXAPqSzpbyg==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-linux-arm-glibc": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-glibc/-/watcher-linux-arm-glibc-2.2.0.tgz", - "integrity": "sha512-I2GPBcAXazPzabCmfsa3HRRW+MGlqxYd8g8RIueJU+a4o5nyNZDz0CR1cu0INT0QSQXEZV7w6UE8Hz9CF8u3Pg==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-linux-arm64-glibc": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-glibc/-/watcher-linux-arm64-glibc-2.2.0.tgz", - "integrity": "sha512-St5mlfp+2lS9AmgixUqfwJa/DwVmTCJxC1HcOubUTz6YFOKIlkHCeUa1Bxi4E/tR/HSez8+heXHL8HQkJ4Bd8g==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-linux-arm64-musl": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-musl/-/watcher-linux-arm64-musl-2.2.0.tgz", - "integrity": "sha512-jS+qfhhoOBVWwMLP65MaG8xdInMK30pPW8wqTCg2AAuVJh5xepMbzkhHJ4zURqHiyY3EiIRuYu4ONJKCxt8iqA==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-linux-x64-glibc": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-glibc/-/watcher-linux-x64-glibc-2.2.0.tgz", - "integrity": "sha512-xJvJ7R2wJdi47WZBFS691RDOWvP1j/IAs3EXaWVhDI8FFITbWrWaln7KoNcR0Y3T+ZwimFY/cfb0PNht1q895g==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-linux-x64-musl": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-musl/-/watcher-linux-x64-musl-2.2.0.tgz", - "integrity": "sha512-D+NMpgr23a+RI5mu8ZPKWy7AqjBOkURFDgP5iIXXEf/K3hm0jJ3ogzi0Ed2237B/CdYREimCgXyeiAlE/FtwyA==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-win32-arm64": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-arm64/-/watcher-win32-arm64-2.2.0.tgz", - "integrity": "sha512-z225cPn3aygJsyVUOWwfyW+fY0Tvk7N3XCOl66qUPFxpbuXeZuiuuJemmtm8vxyqa3Ur7peU/qJxrpC64aeI7Q==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-win32-x64": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-x64/-/watcher-win32-x64-2.2.0.tgz", - "integrity": "sha512-JqGW0RJ61BkKx+yYzIURt9s53P7xMVbv0uxYPzAXLBINGaFmkIKSuUPyBVfy8TMbvp93lvF4SPBNDzVRJfvgOw==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/workers": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/@parcel/workers/-/workers-2.9.3.tgz", - "integrity": "sha512-zRrDuZJzTevrrwElYosFztgldhqW6G9q5zOeQXfVQFkkEJCNfg36ixeiofKRU8uu2x+j+T6216mhMNB6HiuY+w==", - "dev": true, - "dependencies": { - "@parcel/diagnostic": "2.9.3", - "@parcel/logger": "2.9.3", - "@parcel/profiler": "2.9.3", - "@parcel/types": "2.9.3", - "@parcel/utils": "2.9.3", - "nullthrows": "^1.1.1" - }, - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - }, - "peerDependencies": { - "@parcel/core": "^2.9.3" - } - }, - "node_modules/@plotly/d3": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/@plotly/d3/-/d3-3.8.1.tgz", - "integrity": "sha512-x49ThEu1FRA00kTso4Jdfyf2byaCPLBGmLjAYQz5OzaPyLUhHesX3/Nfv2OHEhynhdy2UB39DLXq6thYe2L2kg==" - }, - "node_modules/@plotly/d3-sankey": { - "version": "0.7.2", - "resolved": "https://registry.npmjs.org/@plotly/d3-sankey/-/d3-sankey-0.7.2.tgz", - "integrity": "sha512-2jdVos1N3mMp3QW0k2q1ph7Gd6j5PY1YihBrwpkFnKqO+cqtZq3AdEYUeSGXMeLsBDQYiqTVcihYfk8vr5tqhw==", - "dependencies": { - "d3-array": "1", - "d3-collection": "1", - "d3-shape": "^1.2.0" - } - }, - "node_modules/@plotly/d3-sankey-circular": { - "version": "0.33.1", - "resolved": "https://registry.npmjs.org/@plotly/d3-sankey-circular/-/d3-sankey-circular-0.33.1.tgz", - "integrity": "sha512-FgBV1HEvCr3DV7RHhDsPXyryknucxtfnLwPtCKKxdolKyTFYoLX/ibEfX39iFYIL7DYbVeRtP43dbFcrHNE+KQ==", - "dependencies": { - "d3-array": "^1.2.1", - "d3-collection": "^1.0.4", - "d3-shape": "^1.2.0", - "elementary-circuits-directed-graph": "^1.0.4" - } - }, - "node_modules/@plotly/point-cluster": { - "version": "3.1.9", - "resolved": "https://registry.npmjs.org/@plotly/point-cluster/-/point-cluster-3.1.9.tgz", - "integrity": "sha512-MwaI6g9scKf68Orpr1pHZ597pYx9uP8UEFXLPbsCmuw3a84obwz6pnMXGc90VhgDNeNiLEdlmuK7CPo+5PIxXw==", - "dependencies": { - "array-bounds": "^1.0.1", - "binary-search-bounds": "^2.0.4", - "clamp": "^1.0.1", - "defined": "^1.0.0", - "dtype": "^2.0.0", - "flatten-vertex-data": "^1.0.2", - "is-obj": "^1.0.1", - "math-log2": "^1.0.1", - "parse-rect": "^1.2.0", - "pick-by-alias": "^1.2.0" - } - }, - "node_modules/@swc/core": { - "version": "1.3.69", - "resolved": "https://registry.npmjs.org/@swc/core/-/core-1.3.69.tgz", - "integrity": "sha512-Khc/DE9D5+2tYTHgAIp5DZARbs8kldWg3b0Jp6l8FQLjelcLFmlQWSwKhVZrgv4oIbgZydIp8jInsvTalMHqnQ==", - "dev": true, - "hasInstallScript": true, - "engines": { - "node": ">=10" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/swc" - }, - "optionalDependencies": { - "@swc/core-darwin-arm64": "1.3.69", - "@swc/core-darwin-x64": "1.3.69", - "@swc/core-linux-arm-gnueabihf": "1.3.69", - "@swc/core-linux-arm64-gnu": "1.3.69", - "@swc/core-linux-arm64-musl": "1.3.69", - "@swc/core-linux-x64-gnu": "1.3.69", - "@swc/core-linux-x64-musl": "1.3.69", - "@swc/core-win32-arm64-msvc": "1.3.69", - "@swc/core-win32-ia32-msvc": "1.3.69", - "@swc/core-win32-x64-msvc": "1.3.69" - }, - "peerDependencies": { - "@swc/helpers": "^0.5.0" - }, - "peerDependenciesMeta": { - "@swc/helpers": { - "optional": true - } - } - }, - "node_modules/@swc/core-darwin-arm64": { - "version": "1.3.69", - "resolved": "https://registry.npmjs.org/@swc/core-darwin-arm64/-/core-darwin-arm64-1.3.69.tgz", - "integrity": "sha512-IjZTf12zIPWkV3D7toaLDoJPSkLhQ4fDH8G6/yCJUI27cBFOI3L8LXqptYmISoN5yYdrcnNpdqdapD09JPuNJg==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/core-darwin-x64": { - "version": "1.3.69", - "resolved": "https://registry.npmjs.org/@swc/core-darwin-x64/-/core-darwin-x64-1.3.69.tgz", - "integrity": "sha512-/wBO0Rn5oS5dJI/L9kJRkPAdksVwl5H9nleW/NM3A40N98VV8T7h/i1nO051mxIjq0R6qXVGOWFbBoLrPYucJg==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/core-linux-arm-gnueabihf": { - "version": "1.3.69", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.3.69.tgz", - "integrity": "sha512-NShCjMv6Xn8ckMKBRqmprXvUF14+jXY0TcNKXwjYErzoIUFOnG72M36HxT4QEeAtKZ4Eg4CZFE4zlJ27fDp1gg==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/core-linux-arm64-gnu": { - "version": "1.3.69", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.3.69.tgz", - "integrity": "sha512-VRPOJj4idopSHIj1bOVXX0SgaB18R8yZNunb7eXS5ZcjVxAcdvqyIz3RdQX1zaJFCGzcdPLzBRP32DZWWGE8Ng==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/core-linux-arm64-musl": { - "version": "1.3.69", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.3.69.tgz", - "integrity": "sha512-QxeSiZqo5x1X8vq8oUWLibq+IZJcxl9vy0sLUmzdjF2b/Z+qxKP3gutxnb2tzJaHqPVBbEZaILERIGy1qWdumQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/core-linux-x64-gnu": { - "version": "1.3.69", - "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.3.69.tgz", - "integrity": "sha512-b+DUlVxYox3BwD3PyTwhLvqtu6TYZtW+S6O0FnttH11o4skHN0XyJ/cUZSI0X2biSmfDsizRDUt1PWPFM+F7SA==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/core-linux-x64-musl": { - "version": "1.3.69", - "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.3.69.tgz", - "integrity": "sha512-QXjsI+f8n9XPZHUvmGgkABpzN4M9kdSbhqBOZmv3o0AsDGNCA4uVowQqgZoPFAqlJTpwHeDmrv5sQ13HN+LOGw==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/core-win32-arm64-msvc": { - "version": "1.3.69", - "resolved": "https://registry.npmjs.org/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.3.69.tgz", - "integrity": "sha512-wn7A8Ws1fyviuCUB2Vg6IotiZeuqiO1Mz3d+YDae2EYyNpj1kNHvjBip8GHkfGzZG+jVrvG6NHsDo0KO/pGb8A==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/core-win32-ia32-msvc": { - "version": "1.3.69", - "resolved": "https://registry.npmjs.org/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.3.69.tgz", - "integrity": "sha512-LsFBXtXqxEcVaaOGEZ9X3qdMzobVoJqKv8DnksuDsWcBk+9WCeTz2u/iB+7yZ2HGuPXkCqTRqhFo6FX9aC00kQ==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/core-win32-x64-msvc": { - "version": "1.3.69", - "resolved": "https://registry.npmjs.org/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.3.69.tgz", - "integrity": "sha512-ieBscU0gUgKjaseFI07tAaGqHvKyweNknPeSYEZOasVZUczhD6fK2GRnVREhv2RB2qdKC/VGFBsgRDMgzq1VLw==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/helpers": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.1.tgz", - "integrity": "sha512-sJ902EfIzn1Fa+qYmjdQqh8tPsoxyBz+8yBKC2HKUxyezKJFwPGOn7pv4WY6QuQW//ySQi5lJjA/ZT9sNWWNTg==", - "dev": true, - "dependencies": { - "tslib": "^2.4.0" - } - }, - "node_modules/@trysound/sax": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz", - "integrity": "sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==", - "dev": true, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/@turf/area": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/area/-/area-6.5.0.tgz", - "integrity": "sha512-xCZdiuojokLbQ+29qR6qoMD89hv+JAgWjLrwSEWL+3JV8IXKeNFl6XkEJz9HGkVpnXvQKJoRz4/liT+8ZZ5Jyg==", - "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/meta": "^6.5.0" - }, - "funding": { - "url": "https://opencollective.com/turf" - } - }, - "node_modules/@turf/bbox": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/bbox/-/bbox-6.5.0.tgz", - "integrity": "sha512-RBbLaao5hXTYyyg577iuMtDB8ehxMlUqHEJiMs8jT1GHkFhr6sYre3lmLsPeYEi/ZKj5TP5tt7fkzNdJ4GIVyw==", - "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/meta": "^6.5.0" - }, - "funding": { - "url": "https://opencollective.com/turf" - } - }, - "node_modules/@turf/centroid": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/centroid/-/centroid-6.5.0.tgz", - "integrity": "sha512-MwE1oq5E3isewPprEClbfU5pXljIK/GUOMbn22UM3IFPDJX0KeoyLNwghszkdmFp/qMGL/M13MMWvU+GNLXP/A==", - "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/meta": "^6.5.0" - }, - "funding": { - "url": "https://opencollective.com/turf" - } - }, - "node_modules/@turf/helpers": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/helpers/-/helpers-6.5.0.tgz", - "integrity": "sha512-VbI1dV5bLFzohYYdgqwikdMVpe7pJ9X3E+dlr425wa2/sMJqYDhTO++ec38/pcPvPE6oD9WEEeU3Xu3gza+VPw==", - "funding": { - "url": "https://opencollective.com/turf" - } - }, - "node_modules/@turf/meta": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/meta/-/meta-6.5.0.tgz", - "integrity": "sha512-RrArvtsV0vdsCBegoBtOalgdSOfkBrTJ07VkpiCnq/491W67hnMWmDu7e6Ztw0C3WldRYTXkg3SumfdzZxLBHA==", - "dependencies": { - "@turf/helpers": "^6.5.0" - }, - "funding": { - "url": "https://opencollective.com/turf" - } - }, - "node_modules/@vue/reactivity": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.1.5.tgz", - "integrity": "sha512-1tdfLmNjWG6t/CsPldh+foumYFo3cpyCHgBYQ34ylaMsJ+SNHQ1kApMIa8jN+i593zQuaw3AdWH0nJTARzCFhg==", - "dependencies": { - "@vue/shared": "3.1.5" - } - }, - "node_modules/@vue/shared": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.1.5.tgz", - "integrity": "sha512-oJ4F3TnvpXaQwZJNF3ZK+kLPHKarDmJjJ6jyzVNDKH9md1dptjC7lWR//jrGuLdek/U6iltWxqAnYOu8gCiOvA==" - }, - "node_modules/abortcontroller-polyfill": { - "version": "1.7.5", - "resolved": "https://registry.npmjs.org/abortcontroller-polyfill/-/abortcontroller-polyfill-1.7.5.tgz", - "integrity": "sha512-JMJ5soJWP18htbbxJjG7bG6yuI6pRhgJ0scHHTfkUjf6wjP912xZWvM+A4sJK3gqd9E8fcPbDnOefbA9Th/FIQ==", - "dev": true - }, - "node_modules/abs-svg-path": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/abs-svg-path/-/abs-svg-path-0.1.1.tgz", - "integrity": "sha512-d8XPSGjfyzlXC3Xx891DJRyZfqk5JU0BJrDQcsWomFIV1/BIzPW5HDH5iDdWpqWaav0YVIEzT1RHTwWr0FFshA==" - }, - "node_modules/acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/almost-equal": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/almost-equal/-/almost-equal-1.1.0.tgz", - "integrity": "sha512-0V/PkoculFl5+0Lp47JoxUcO0xSxhIBvm+BxHdD/OgXNmdRpRHCFnKVuUoWyS9EzQP+otSGv0m9Lb4yVkQBn2A==" - }, - "node_modules/alpinejs": { - "version": "3.12.3", - "resolved": "https://registry.npmjs.org/alpinejs/-/alpinejs-3.12.3.tgz", - "integrity": "sha512-fLz2dfYQ3xCk7Ip8LiIpV2W+9brUyex2TAE7Z0BCvZdUDklJE+n+a8gCgLWzfZ0GzZNZu7HUP8Z0z6Xbm6fsSA==", - "dependencies": { - "@vue/reactivity": "~3.1.1" - } - }, - "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.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", - "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true - }, - "node_modules/array-bounds": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/array-bounds/-/array-bounds-1.0.1.tgz", - "integrity": "sha512-8wdW3ZGk6UjMPJx/glyEt0sLzzwAE1bhToPsO1W2pbpR2gULyxe3BjSiuJFheP50T/GgODVPz2fuMUmIywt8cQ==" - }, - "node_modules/array-find-index": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", - "integrity": "sha512-M1HQyIXcBGtVywBt8WVdim+lrNaK7VHp99Qt5pSNziXznKHViIBbXWtfRTpEFpF/c4FdfxNAsCCwPp5phBYJtw==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/array-normalize": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/array-normalize/-/array-normalize-1.1.4.tgz", - "integrity": "sha512-fCp0wKFLjvSPmCn4F5Tiw4M3lpMZoHlCjfcs7nNzuj3vqQQ1/a8cgB9DXcpDSn18c+coLnaW7rqfcYCvKbyJXg==", - "dependencies": { - "array-bounds": "^1.0.0" - } - }, - "node_modules/array-range": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/array-range/-/array-range-1.0.1.tgz", - "integrity": "sha512-shdaI1zT3CVNL2hnx9c0JMc0ZogGaxDs5e85akgHWKYa0yVbIyp06Ind3dVkTj/uuFrzaHBOyqFzo+VV6aXgtA==" - }, - "node_modules/array-rearrange": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/array-rearrange/-/array-rearrange-2.2.2.tgz", - "integrity": "sha512-UfobP5N12Qm4Qu4fwLDIi2v6+wZsSf6snYSxAMeKhrh37YGnNWZPRmVEKc/2wfms53TLQnzfpG8wCx2Y/6NG1w==" - }, - "node_modules/assert": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/assert/-/assert-2.0.0.tgz", - "integrity": "sha512-se5Cd+js9dXJnu6Ag2JFc00t+HmHOen+8Q+L7O9zI0PqQXr20uk2J0XQqMxZEeo5U50o8Nvmmx7dZrl+Ufr35A==", - "dev": true, - "dependencies": { - "es6-object-assign": "^1.1.0", - "is-nan": "^1.2.1", - "object-is": "^1.0.1", - "util": "^0.12.0" - } - }, - "node_modules/available-typed-arrays": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", - "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/base-x": { - "version": "3.0.9", - "resolved": "https://registry.npmjs.org/base-x/-/base-x-3.0.9.tgz", - "integrity": "sha512-H7JU6iBHTal1gp56aKoaa//YUxEaAOUiydvrV/pILqIHXTtqxSkATOnDA2u+jZ/61sD+L/412+7kzXRtWukhpQ==", - "dev": true, - "dependencies": { - "safe-buffer": "^5.0.1" - } - }, - "node_modules/base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - "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/binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", - "engines": { - "node": ">=8" - } - }, - "node_modules/binary-search-bounds": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/binary-search-bounds/-/binary-search-bounds-2.0.5.tgz", - "integrity": "sha512-H0ea4Fd3lS1+sTEB2TgcLoK21lLhwEJzlQv3IN47pJS976Gx4zoWe0ak3q+uYh60ppQxg9F16Ri4tS1sfD4+jA==" - }, - "node_modules/bit-twiddle": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bit-twiddle/-/bit-twiddle-1.0.2.tgz", - "integrity": "sha512-B9UhK0DKFZhoTFcfvAzhqsjStvGJp9vYWf3+6SNTtdSQnvIgfkHbgHrg/e4+TH71N2GDu8tpmCVoyfrL1d7ntA==" - }, - "node_modules/bitmap-sdf": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/bitmap-sdf/-/bitmap-sdf-1.0.4.tgz", - "integrity": "sha512-1G3U4n5JE6RAiALMxu0p1XmeZkTeCwGKykzsLTCqVzfSDaN6S7fKnkIkfejogz+iwqBWc0UYAIKnKHNN7pSfDg==" - }, - "node_modules/bl": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/bl/-/bl-2.2.1.tgz", - "integrity": "sha512-6Pesp1w0DEX1N550i/uGV/TqucVL4AM/pgThFSN/Qq9si1/DF9aIHs1BxD8V/QU0HoeHO6cQRTAuYnLPKq1e4g==", - "dependencies": { - "readable-stream": "^2.3.5", - "safe-buffer": "^5.1.1" - } - }, - "node_modules/boolbase": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", - "dev": true - }, - "node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dependencies": { - "fill-range": "^7.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/browserslist": { - "version": "4.21.9", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.9.tgz", - "integrity": "sha512-M0MFoZzbUrRU4KNfCrDLnvyE7gub+peetoTid3TBIqtunaDJyXlwhakT+/VkvSXcfIzFfK/nkCs4nmyTmxdNSg==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "dependencies": { - "caniuse-lite": "^1.0.30001503", - "electron-to-chromium": "^1.4.431", - "node-releases": "^2.0.12", - "update-browserslist-db": "^1.0.11" - }, - "bin": { - "browserslist": "cli.js" - }, - "engines": { - "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" - } - }, - "node_modules/buffer": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", - "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", - "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": { - "base64-js": "^1.3.1", - "ieee754": "^1.2.1" - } - }, - "node_modules/buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==" - }, - "node_modules/bulma": { - "version": "0.9.4", - "resolved": "https://registry.npmjs.org/bulma/-/bulma-0.9.4.tgz", - "integrity": "sha512-86FlT5+1GrsgKbPLRRY7cGDg8fsJiP/jzTqXXVqiUZZ2aZT8uemEOHlU1CDU+TxklPEZ11HZNNWclRBBecP4CQ==" - }, - "node_modules/call-bind": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", - "dev": true, - "dependencies": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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/caniuse-lite": { - "version": "1.0.30001516", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001516.tgz", - "integrity": "sha512-Wmec9pCBY8CWbmI4HsjBeQLqDTqV91nFVR83DnZpYyRnPI1wePDsTg0bGLPC5VU/3OIZV1fmxEea1b+tFKe86g==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/caniuse-lite" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ] - }, - "node_modules/canvas-fit": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/canvas-fit/-/canvas-fit-1.5.0.tgz", - "integrity": "sha512-onIcjRpz69/Hx5bB5HGbYKUF2uC6QT6Gp+pfpGm3A7mPfcluSLV5v4Zu+oflDUwLdUw0rLIBhUbi0v8hM4FJQQ==", - "dependencies": { - "element-size": "^1.1.1" - } - }, - "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/chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ], - "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/chrome-trace-event": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", - "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", - "dev": true, - "engines": { - "node": ">=6.0" - } - }, - "node_modules/clamp": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/clamp/-/clamp-1.0.1.tgz", - "integrity": "sha512-kgMuFyE78OC6Dyu3Dy7vcx4uy97EIbVxJB/B0eJ3bUNAkwdNcxYzgKltnyADiYwsR7SEqkkUPsEUT//OVS6XMA==" - }, - "node_modules/clone": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", - "integrity": "sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==", - "dev": true, - "engines": { - "node": ">=0.8" - } - }, - "node_modules/color-alpha": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/color-alpha/-/color-alpha-1.0.4.tgz", - "integrity": "sha512-lr8/t5NPozTSqli+duAN+x+no/2WaKTeWvxhHGN+aXT6AJ8vPlzLa7UriyjWak0pSC2jHol9JgjBYnnHsGha9A==", - "dependencies": { - "color-parse": "^1.3.8" - } - }, - "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-id": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/color-id/-/color-id-1.1.0.tgz", - "integrity": "sha512-2iRtAn6dC/6/G7bBIo0uupVrIne1NsQJvJxZOBCzQOfk7jRq97feaDZ3RdzuHakRXXnHGNwglto3pqtRx1sX0g==", - "dependencies": { - "clamp": "^1.0.1" - } - }, - "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==" - }, - "node_modules/color-normalize": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/color-normalize/-/color-normalize-1.5.0.tgz", - "integrity": "sha512-rUT/HDXMr6RFffrR53oX3HGWkDOP9goSAQGBkUaAYKjOE2JxozccdGyufageWDlInRAjm/jYPrf/Y38oa+7obw==", - "dependencies": { - "clamp": "^1.0.1", - "color-rgba": "^2.1.1", - "dtype": "^2.0.0" - } - }, - "node_modules/color-parse": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/color-parse/-/color-parse-1.3.8.tgz", - "integrity": "sha512-1Y79qFv0n1xair3lNMTNeoFvmc3nirMVBij24zbs1f13+7fPpQClMg5b4AuKXLt3szj7BRlHMCXHplkce6XlmA==", - "dependencies": { - "color-name": "^1.0.0", - "defined": "^1.0.0", - "is-plain-obj": "^1.1.0" - } - }, - "node_modules/color-rgba": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/color-rgba/-/color-rgba-2.1.1.tgz", - "integrity": "sha512-VaX97wsqrMwLSOR6H7rU1Doa2zyVdmShabKrPEIFywLlHoibgD3QW9Dw6fSqM4+H/LfjprDNAUUW31qEQcGzNw==", - "dependencies": { - "clamp": "^1.0.1", - "color-parse": "^1.3.8", - "color-space": "^1.14.6" - } - }, - "node_modules/color-space": { - "version": "1.16.0", - "resolved": "https://registry.npmjs.org/color-space/-/color-space-1.16.0.tgz", - "integrity": "sha512-A6WMiFzunQ8KEPFmj02OnnoUnqhmSaHaZ/0LVFcPTdlvm8+3aMJ5x1HRHy3bDHPkovkf4sS0f4wsVvwk71fKkg==", - "dependencies": { - "hsluv": "^0.0.3", - "mumath": "^3.3.4" - } - }, - "node_modules/commander": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", - "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", - "dev": true, - "engines": { - "node": ">= 10" - } - }, - "node_modules/concat-stream": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", - "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", - "engines": [ - "node >= 0.8" - ], - "dependencies": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^2.2.2", - "typedarray": "^0.0.6" - } - }, - "node_modules/constants-browserify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", - "integrity": "sha512-xFxOwqIzR/e1k1gLiWEophSCMqXcwVHIH7akf7b/vxcUeGunlj3hvZaaqxwHsTgn+IndtkQJgSztIDWeumWJDQ==", - "dev": true - }, - "node_modules/core-util-is": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", - "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==" - }, - "node_modules/cosmiconfig": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.2.0.tgz", - "integrity": "sha512-3rTMnFJA1tCOPwRxtgF4wd7Ab2qvDbL8jX+3smjIbS4HlZBagTlpERbdN7iAbWlrfxE3M8c27kTwTawQ7st+OQ==", - "dev": true, - "dependencies": { - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", - "parse-json": "^5.0.0", - "path-type": "^4.0.0" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/d-fischer" - } - }, - "node_modules/country-regex": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/country-regex/-/country-regex-1.1.0.tgz", - "integrity": "sha512-iSPlClZP8vX7MC3/u6s3lrDuoQyhQukh5LyABJ3hvfzbQ3Yyayd4fp04zjLnfi267B/B2FkumcWWgrbban7sSA==" - }, - "node_modules/css-font": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/css-font/-/css-font-1.2.0.tgz", - "integrity": "sha512-V4U4Wps4dPDACJ4WpgofJ2RT5Yqwe1lEH6wlOOaIxMi0gTjdIijsc5FmxQlZ7ZZyKQkkutqqvULOp07l9c7ssA==", - "dependencies": { - "css-font-size-keywords": "^1.0.0", - "css-font-stretch-keywords": "^1.0.1", - "css-font-style-keywords": "^1.0.1", - "css-font-weight-keywords": "^1.0.0", - "css-global-keywords": "^1.0.1", - "css-system-font-keywords": "^1.0.0", - "pick-by-alias": "^1.2.0", - "string-split-by": "^1.0.0", - "unquote": "^1.1.0" - } - }, - "node_modules/css-font-size-keywords": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/css-font-size-keywords/-/css-font-size-keywords-1.0.0.tgz", - "integrity": "sha512-Q+svMDbMlelgCfH/RVDKtTDaf5021O486ZThQPIpahnIjUkMUslC+WuOQSWTgGSrNCH08Y7tYNEmmy0hkfMI8Q==" - }, - "node_modules/css-font-stretch-keywords": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/css-font-stretch-keywords/-/css-font-stretch-keywords-1.0.1.tgz", - "integrity": "sha512-KmugPO2BNqoyp9zmBIUGwt58UQSfyk1X5DbOlkb2pckDXFSAfjsD5wenb88fNrD6fvS+vu90a/tsPpb9vb0SLg==" - }, - "node_modules/css-font-style-keywords": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/css-font-style-keywords/-/css-font-style-keywords-1.0.1.tgz", - "integrity": "sha512-0Fn0aTpcDktnR1RzaBYorIxQily85M2KXRpzmxQPgh8pxUN9Fcn00I8u9I3grNr1QXVgCl9T5Imx0ZwKU973Vg==" - }, - "node_modules/css-font-weight-keywords": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/css-font-weight-keywords/-/css-font-weight-keywords-1.0.0.tgz", - "integrity": "sha512-5So8/NH+oDD+EzsnF4iaG4ZFHQ3vaViePkL1ZbZ5iC/KrsCY+WHq/lvOgrtmuOQ9pBBZ1ADGpaf+A4lj1Z9eYA==" - }, - "node_modules/css-global-keywords": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/css-global-keywords/-/css-global-keywords-1.0.1.tgz", - "integrity": "sha512-X1xgQhkZ9n94WDwntqst5D/FKkmiU0GlJSFZSV3kLvyJ1WC5VeyoXDOuleUD+SIuH9C7W05is++0Woh0CGfKjQ==" - }, - "node_modules/css-select": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz", - "integrity": "sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==", - "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "boolbase": "^1.0.0", - "css-what": "^6.1.0", - "domhandler": "^5.0.2", - "domutils": "^3.0.1", - "nth-check": "^2.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/fb55" - } - }, - "node_modules/css-select/node_modules/dom-serializer": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", - "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", - "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "domelementtype": "^2.3.0", - "domhandler": "^5.0.2", - "entities": "^4.2.0" - }, - "funding": { - "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" - } - }, - "node_modules/css-select/node_modules/domhandler": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", - "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", - "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "domelementtype": "^2.3.0" - }, - "engines": { - "node": ">= 4" - }, - "funding": { - "url": "https://github.com/fb55/domhandler?sponsor=1" - } - }, - "node_modules/css-select/node_modules/domutils": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.1.0.tgz", - "integrity": "sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==", - "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "dom-serializer": "^2.0.0", - "domelementtype": "^2.3.0", - "domhandler": "^5.0.3" - }, - "funding": { - "url": "https://github.com/fb55/domutils?sponsor=1" - } - }, - "node_modules/css-select/node_modules/entities": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", - "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", - "dev": true, - "optional": true, - "peer": true, - "engines": { - "node": ">=0.12" - }, - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, - "node_modules/css-system-font-keywords": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/css-system-font-keywords/-/css-system-font-keywords-1.0.0.tgz", - "integrity": "sha512-1umTtVd/fXS25ftfjB71eASCrYhilmEsvDEI6wG/QplnmlfmVM5HkZ/ZX46DT5K3eblFPgLUHt5BRCb0YXkSFA==" - }, - "node_modules/css-tree": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-2.3.1.tgz", - "integrity": "sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==", - "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "mdn-data": "2.0.30", - "source-map-js": "^1.0.1" - }, - "engines": { - "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0" - } - }, - "node_modules/css-what": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", - "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", - "dev": true, - "engines": { - "node": ">= 6" - }, - "funding": { - "url": "https://github.com/sponsors/fb55" - } - }, - "node_modules/csscolorparser": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/csscolorparser/-/csscolorparser-1.0.3.tgz", - "integrity": "sha512-umPSgYwZkdFoUrH5hIq5kf0wPSXiro51nPw0j2K/c83KflkPSTBGMz6NJvMB+07VlL0y7VPo6QJcDjcgKTTm3w==" - }, - "node_modules/csso": { - "version": "5.0.5", - "resolved": "https://registry.npmjs.org/csso/-/csso-5.0.5.tgz", - "integrity": "sha512-0LrrStPOdJj+SPCCrGhzryycLjwcgUSHBtxNA8aIDxf0GLsRh1cKYhB00Gd1lDOS4yGH69+SNn13+TWbVHETFQ==", - "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "css-tree": "~2.2.0" - }, - "engines": { - "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0", - "npm": ">=7.0.0" - } - }, - "node_modules/csso/node_modules/css-tree": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-2.2.1.tgz", - "integrity": "sha512-OA0mILzGc1kCOCSJerOeqDxDQ4HOh+G8NbOJFOTgOCzpw7fCBubk0fEyxp8AgOL/jvLgYA/uV0cMbe43ElF1JA==", - "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "mdn-data": "2.0.28", - "source-map-js": "^1.0.1" - }, - "engines": { - "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0", - "npm": ">=7.0.0" - } - }, - "node_modules/csso/node_modules/mdn-data": { - "version": "2.0.28", - "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.28.tgz", - "integrity": "sha512-aylIc7Z9y4yzHYAJNuESG3hfhC+0Ibp/MAMiaOZgNv4pmEdFyfZhhhny4MNiAfWdBQ1RQ2mfDWmM1x8SvGyp8g==", - "dev": true, - "optional": true, - "peer": true - }, - "node_modules/d": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz", - "integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==", - "dependencies": { - "es5-ext": "^0.10.50", - "type": "^1.0.1" - } - }, - "node_modules/d3-array": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/d3-array/-/d3-array-1.2.4.tgz", - "integrity": "sha512-KHW6M86R+FUPYGb3R5XiYjXPq7VzwxZ22buHhAEVG5ztoEcZZMLov530mmccaqA1GghZArjQV46fuc8kUqhhHw==" - }, - "node_modules/d3-collection": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/d3-collection/-/d3-collection-1.0.7.tgz", - "integrity": "sha512-ii0/r5f4sjKNTfh84Di+DpztYwqKhEyUlKoPrzUFfeSkWxjW49xU2QzO9qrPrNkpdI0XJkfzvmTu8V2Zylln6A==" - }, - "node_modules/d3-color": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/d3-color/-/d3-color-3.1.0.tgz", - "integrity": "sha512-zg/chbXyeBtMQ1LbD/WSoW2DpC3I0mpmPdW+ynRTj/x2DAWYrIY7qeZIHidozwV24m4iavr15lNwIwLxRmOxhA==", - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-dispatch": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/d3-dispatch/-/d3-dispatch-1.0.6.tgz", - "integrity": "sha512-fVjoElzjhCEy+Hbn8KygnmMS7Or0a9sI2UzGwoB7cCtvI1XpVN9GpoYlnb3xt2YV66oXYb1fLJ8GMvP4hdU1RA==" - }, - "node_modules/d3-force": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/d3-force/-/d3-force-1.2.1.tgz", - "integrity": "sha512-HHvehyaiUlVo5CxBJ0yF/xny4xoaxFxDnBXNvNcfW9adORGZfyNF1dj6DGLKyk4Yh3brP/1h3rnDzdIAwL08zg==", - "dependencies": { - "d3-collection": "1", - "d3-dispatch": "1", - "d3-quadtree": "1", - "d3-timer": "1" - } - }, - "node_modules/d3-format": { - "version": "1.4.5", - "resolved": "https://registry.npmjs.org/d3-format/-/d3-format-1.4.5.tgz", - "integrity": "sha512-J0piedu6Z8iB6TbIGfZgDzfXxUFN3qQRMofy2oPdXzQibYGqPB/9iMcxr/TGalU+2RsyDO+U4f33id8tbnSRMQ==" - }, - "node_modules/d3-geo": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/d3-geo/-/d3-geo-1.12.1.tgz", - "integrity": "sha512-XG4d1c/UJSEX9NfU02KwBL6BYPj8YKHxgBEw5om2ZnTRSbIcego6dhHwcxuSR3clxh0EpE38os1DVPOmnYtTPg==", - "dependencies": { - "d3-array": "1" - } - }, - "node_modules/d3-geo-projection": { - "version": "2.9.0", - "resolved": "https://registry.npmjs.org/d3-geo-projection/-/d3-geo-projection-2.9.0.tgz", - "integrity": "sha512-ZULvK/zBn87of5rWAfFMc9mJOipeSo57O+BBitsKIXmU4rTVAnX1kSsJkE0R+TxY8pGNoM1nbyRRE7GYHhdOEQ==", - "dependencies": { - "commander": "2", - "d3-array": "1", - "d3-geo": "^1.12.0", - "resolve": "^1.1.10" - }, - "bin": { - "geo2svg": "bin/geo2svg", - "geograticule": "bin/geograticule", - "geoproject": "bin/geoproject", - "geoquantize": "bin/geoquantize", - "geostitch": "bin/geostitch" - } - }, - "node_modules/d3-geo-projection/node_modules/commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" - }, - "node_modules/d3-hierarchy": { - "version": "1.1.9", - "resolved": "https://registry.npmjs.org/d3-hierarchy/-/d3-hierarchy-1.1.9.tgz", - "integrity": "sha512-j8tPxlqh1srJHAtxfvOUwKNYJkQuBFdM1+JAUfq6xqH5eAqf93L7oG1NVqDa4CpFZNvnNKtCYEUC8KY9yEn9lQ==" - }, - "node_modules/d3-interpolate": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-interpolate/-/d3-interpolate-3.0.1.tgz", - "integrity": "sha512-3bYs1rOD33uo8aqJfKP3JWPAibgw8Zm2+L9vBKEHJ2Rg+viTR7o5Mmv5mZcieN+FRYaAOWX5SJATX6k1PWz72g==", - "dependencies": { - "d3-color": "1 - 3" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-path": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/d3-path/-/d3-path-1.0.9.tgz", - "integrity": "sha512-VLaYcn81dtHVTjEHd8B+pbe9yHWpXKZUC87PzoFmsFrJqgFwDe/qxfp5MlfsfM1V5E/iVt0MmEbWQ7FVIXh/bg==" - }, - "node_modules/d3-quadtree": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/d3-quadtree/-/d3-quadtree-1.0.7.tgz", - "integrity": "sha512-RKPAeXnkC59IDGD0Wu5mANy0Q2V28L+fNe65pOCXVdVuTJS3WPKaJlFHer32Rbh9gIo9qMuJXio8ra4+YmIymA==" - }, - "node_modules/d3-shape": { - "version": "1.3.7", - "resolved": "https://registry.npmjs.org/d3-shape/-/d3-shape-1.3.7.tgz", - "integrity": "sha512-EUkvKjqPFUAZyOlhY5gzCxCeI0Aep04LwIRpsZ/mLFelJiUfnK56jo5JMDSE7yyP2kLSb6LtF+S5chMk7uqPqw==", - "dependencies": { - "d3-path": "1" - } - }, - "node_modules/d3-time": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/d3-time/-/d3-time-1.1.0.tgz", - "integrity": "sha512-Xh0isrZ5rPYYdqhAVk8VLnMEidhz5aP7htAADH6MfzgmmicPkTo8LhkLxci61/lCB7n7UmE3bN0leRt+qvkLxA==" - }, - "node_modules/d3-time-format": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/d3-time-format/-/d3-time-format-2.3.0.tgz", - "integrity": "sha512-guv6b2H37s2Uq/GefleCDtbe0XZAuy7Wa49VGkPVPMfLL9qObgBST3lEHJBMUp8S7NdLQAGIvr2KXk8Hc98iKQ==", - "dependencies": { - "d3-time": "1" - } - }, - "node_modules/d3-timer": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/d3-timer/-/d3-timer-1.0.10.tgz", - "integrity": "sha512-B1JDm0XDaQC+uvo4DT79H0XmBskgS3l6Ve+1SBCfxgmtIb1AVrPIoqd+nPSv+loMX8szQ0sVUhGngL7D5QPiXw==" - }, - "node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/deep-is": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", - "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==" - }, - "node_modules/define-properties": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.0.tgz", - "integrity": "sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==", - "dev": true, - "dependencies": { - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/defined": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.1.tgz", - "integrity": "sha512-hsBd2qSVCRE+5PmNdHt1uzyrFu5d3RwmFDKzyNZMFq/EwDNJF7Ee5+D5oEKF0hU6LhtoUF1macFvOe4AskQC1Q==", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/detect-kerning": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/detect-kerning/-/detect-kerning-2.1.2.tgz", - "integrity": "sha512-I3JIbrnKPAntNLl1I6TpSQQdQ4AutYzv/sKMFKbepawV/hlH0GmYKhUoOEMd4xqaUHT+Bm0f4127lh5qs1m1tw==" - }, - "node_modules/detect-libc": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", - "integrity": "sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==", - "dev": true, - "bin": { - "detect-libc": "bin/detect-libc.js" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/dom-serializer": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", - "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", - "dev": true, - "dependencies": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.0", - "entities": "^2.0.0" - }, - "funding": { - "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" - } - }, - "node_modules/dom-serializer/node_modules/entities": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", - "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", - "dev": true, - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, - "node_modules/domelementtype": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", - "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/fb55" - } - ] - }, - "node_modules/domhandler": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", - "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", - "dev": true, - "dependencies": { - "domelementtype": "^2.2.0" - }, - "engines": { - "node": ">= 4" - }, - "funding": { - "url": "https://github.com/fb55/domhandler?sponsor=1" - } - }, - "node_modules/domutils": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", - "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", - "dev": true, - "dependencies": { - "dom-serializer": "^1.0.1", - "domelementtype": "^2.2.0", - "domhandler": "^4.2.0" - }, - "funding": { - "url": "https://github.com/fb55/domutils?sponsor=1" - } - }, - "node_modules/dotenv": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-7.0.0.tgz", - "integrity": "sha512-M3NhsLbV1i6HuGzBUH8vXrtxOk+tWmzWKDMbAVSUp3Zsjm7ywFeuwrUXhmhQyRK1q5B5GGy7hcXPbj3bnfZg2g==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/dotenv-expand": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/dotenv-expand/-/dotenv-expand-5.1.0.tgz", - "integrity": "sha512-YXQl1DSa4/PQyRfgrv6aoNjhasp/p4qs9FjJ4q4cQk+8m4r6k4ZSiEyytKG8f8W9gi8WsQtIObNmKd+tMzNTmA==", - "dev": true - }, - "node_modules/draw-svg-path": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/draw-svg-path/-/draw-svg-path-1.0.0.tgz", - "integrity": "sha512-P8j3IHxcgRMcY6sDzr0QvJDLzBnJJqpTG33UZ2Pvp8rw0apCHhJCWqYprqrXjrgHnJ6tuhP1iTJSAodPDHxwkg==", - "dependencies": { - "abs-svg-path": "~0.1.1", - "normalize-svg-path": "~0.1.0" - } - }, - "node_modules/dtype": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/dtype/-/dtype-2.0.0.tgz", - "integrity": "sha512-s2YVcLKdFGS0hpFqJaTwscsyt0E8nNFdmo73Ocd81xNPj4URI4rj6D60A+vFMIw7BXWlb4yRkEwfBqcZzPGiZg==", - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/dup": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/dup/-/dup-1.0.0.tgz", - "integrity": "sha512-Bz5jxMMC0wgp23Zm15ip1x8IhYRqJvF3nFC0UInJUDkN1z4uNPk9jTnfCUJXbOGiQ1JbXLQsiV41Fb+HXcj5BA==" - }, - "node_modules/duplexify": { - "version": "3.7.1", - "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", - "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==", - "dependencies": { - "end-of-stream": "^1.0.0", - "inherits": "^2.0.1", - "readable-stream": "^2.0.0", - "stream-shift": "^1.0.0" - } - }, - "node_modules/earcut": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/earcut/-/earcut-2.2.4.tgz", - "integrity": "sha512-/pjZsA1b4RPHbeWZQn66SWS8nZZWLQQ23oE3Eam7aroEFGEvwKAsJfZ9ytiEMycfzXWpca4FA9QIOehf7PocBQ==" - }, - "node_modules/electron-to-chromium": { - "version": "1.4.463", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.463.tgz", - "integrity": "sha512-fT3hvdUWLjDbaTGzyOjng/CQhQJSQP8ThO3XZAoaxHvHo2kUXiRQVMj9M235l8uDFiNPsPa6KHT1p3RaR6ugRw==", - "dev": true - }, - "node_modules/element-size": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/element-size/-/element-size-1.1.1.tgz", - "integrity": "sha512-eaN+GMOq/Q+BIWy0ybsgpcYImjGIdNLyjLFJU4XsLHXYQao5jCNb36GyN6C2qwmDDYSfIBmKpPpr4VnBdLCsPQ==" - }, - "node_modules/elementary-circuits-directed-graph": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/elementary-circuits-directed-graph/-/elementary-circuits-directed-graph-1.3.1.tgz", - "integrity": "sha512-ZEiB5qkn2adYmpXGnJKkxT8uJHlW/mxmBpmeqawEHzPxh9HkLD4/1mFYX5l0On+f6rcPIt8/EWlRU2Vo3fX6dQ==", - "dependencies": { - "strongly-connected-components": "^1.0.1" - } - }, - "node_modules/end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "dependencies": { - "once": "^1.4.0" - } - }, - "node_modules/entities": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/entities/-/entities-3.0.1.tgz", - "integrity": "sha512-WiyBqoomrwMdFG1e0kqvASYfnlb0lp8M5o5Fw2OFq1hNZxxcNk8Ik0Xm7LxzBhuidnZB/UtBqVCgUz3kBOP51Q==", - "dev": true, - "engines": { - "node": ">=0.12" - }, - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, - "node_modules/error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", - "dev": true, - "dependencies": { - "is-arrayish": "^0.2.1" - } - }, - "node_modules/es5-ext": { - "version": "0.10.62", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.62.tgz", - "integrity": "sha512-BHLqn0klhEpnOKSrzn/Xsz2UIW8j+cGmo9JLzr8BiUapV8hPL9+FliFqjwr9ngW7jWdnxv6eO+/LqyhJVqgrjA==", - "hasInstallScript": true, - "dependencies": { - "es6-iterator": "^2.0.3", - "es6-symbol": "^3.1.3", - "next-tick": "^1.1.0" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/es6-iterator": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", - "integrity": "sha512-zw4SRzoUkd+cl+ZoE15A9o1oQd920Bb0iOJMQkQhl3jNc03YqVjAhG7scf9C5KWRU/R13Orf588uCC6525o02g==", - "dependencies": { - "d": "1", - "es5-ext": "^0.10.35", - "es6-symbol": "^3.1.1" - } - }, - "node_modules/es6-object-assign": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/es6-object-assign/-/es6-object-assign-1.1.0.tgz", - "integrity": "sha512-MEl9uirslVwqQU369iHNWZXsI8yaZYGg/D65aOgZkeyFJwHYSxilf7rQzXKI7DdDuBPrBXbfk3sl9hJhmd5AUw==", - "dev": true - }, - "node_modules/es6-symbol": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.3.tgz", - "integrity": "sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==", - "dependencies": { - "d": "^1.0.1", - "ext": "^1.1.2" - } - }, - "node_modules/es6-weak-map": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.3.tgz", - "integrity": "sha512-p5um32HOTO1kP+w7PRnB+5lQ43Z6muuMuIMffvDN8ZB4GcnjLBV6zGStpbASIMk4DCAvEaamhe2zhyCb/QXXsA==", - "dependencies": { - "d": "1", - "es5-ext": "^0.10.46", - "es6-iterator": "^2.0.3", - "es6-symbol": "^3.1.1" - } - }, - "node_modules/escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/escodegen": { - "version": "1.14.3", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.14.3.tgz", - "integrity": "sha512-qFcX0XJkdg+PB3xjZZG/wKSuT1PnQWx57+TVSjIMmILd2yC/6ByYElPwJnslDsuWuSAp4AwJGumarAAmJch5Kw==", - "dependencies": { - "esprima": "^4.0.1", - "estraverse": "^4.2.0", - "esutils": "^2.0.2", - "optionator": "^0.8.1" - }, - "bin": { - "escodegen": "bin/escodegen.js", - "esgenerate": "bin/esgenerate.js" - }, - "engines": { - "node": ">=4.0" - }, - "optionalDependencies": { - "source-map": "~0.6.1" - } - }, - "node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "engines": { - "node": ">=4.0" - } - }, - "node_modules/esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/events": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", - "engines": { - "node": ">=0.8.x" - } - }, - "node_modules/ext": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/ext/-/ext-1.7.0.tgz", - "integrity": "sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw==", - "dependencies": { - "type": "^2.7.2" - } - }, - "node_modules/ext/node_modules/type": { - "version": "2.7.2", - "resolved": "https://registry.npmjs.org/type/-/type-2.7.2.tgz", - "integrity": "sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw==" - }, - "node_modules/falafel": { - "version": "2.2.5", - "resolved": "https://registry.npmjs.org/falafel/-/falafel-2.2.5.tgz", - "integrity": "sha512-HuC1qF9iTnHDnML9YZAdCDQwT0yKl/U55K4XSUXqGAA2GLoafFgWRqdAbhWJxXaYD4pyoVxAJ8wH670jMpI9DQ==", - "dependencies": { - "acorn": "^7.1.1", - "isarray": "^2.0.1" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/fast-isnumeric": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/fast-isnumeric/-/fast-isnumeric-1.1.4.tgz", - "integrity": "sha512-1mM8qOr2LYz8zGaUdmiqRDiuue00Dxjgcb1NQR7TnhLVh6sQyngP9xvLo7Sl7LZpP/sk5eb+bcyWXw530NTBZw==", - "dependencies": { - "is-string-blank": "^1.0.1" - } - }, - "node_modules/fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==" - }, - "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==", - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/flatten-vertex-data": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/flatten-vertex-data/-/flatten-vertex-data-1.0.2.tgz", - "integrity": "sha512-BvCBFK2NZqerFTdMDgqfHBwxYWnxeCkwONsw6PvBMcUXqo8U/KDWwmXhqx1x2kLIg7DqIsJfOaJFOmlua3Lxuw==", - "dependencies": { - "dtype": "^2.0.0" - } - }, - "node_modules/font-atlas": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/font-atlas/-/font-atlas-2.1.0.tgz", - "integrity": "sha512-kP3AmvX+HJpW4w3d+PiPR2X6E1yvsBXt2yhuCw+yReO9F1WYhvZwx3c95DGZGwg9xYzDGrgJYa885xmVA+28Cg==", - "dependencies": { - "css-font": "^1.0.0" - } - }, - "node_modules/font-measure": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/font-measure/-/font-measure-1.2.2.tgz", - "integrity": "sha512-mRLEpdrWzKe9hbfaF3Qpr06TAjquuBVP5cHy4b3hyeNdjc9i0PO6HniGsX5vjL5OWv7+Bd++NiooNpT/s8BvIA==", - "dependencies": { - "css-font": "^1.2.0" - } - }, - "node_modules/for-each": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", - "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", - "dev": true, - "dependencies": { - "is-callable": "^1.1.3" - } - }, - "node_modules/from2": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", - "integrity": "sha512-OMcX/4IC/uqEPVgGeyfN22LJk6AZrMkRZHxcHBMBvHScDGgwTm2GT2Wkgtocyd3JfZffjj2kYUDXXII0Fk9W0g==", - "dependencies": { - "inherits": "^2.0.1", - "readable-stream": "^2.0.0" - } - }, - "node_modules/fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "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==" - }, - "node_modules/geojson-vt": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/geojson-vt/-/geojson-vt-3.2.1.tgz", - "integrity": "sha512-EvGQQi/zPrDA6zr6BnJD/YhwAkBP8nnJ9emh3EnHQKVMfg/MRVtPbMYdgVy/IaEmn4UfagD2a6fafPDL5hbtwg==" - }, - "node_modules/get-canvas-context": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/get-canvas-context/-/get-canvas-context-1.0.2.tgz", - "integrity": "sha512-LnpfLf/TNzr9zVOGiIY6aKCz8EKuXmlYNV7CM2pUjBa/B+c2I15tS7KLySep75+FuerJdmArvJLcsAXWEy2H0A==" - }, - "node_modules/get-intrinsic": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.1.tgz", - "integrity": "sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==", - "dev": true, - "dependencies": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/get-port": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/get-port/-/get-port-4.2.0.tgz", - "integrity": "sha512-/b3jarXkH8KJoOMQc3uVGHASwGLPq3gSFJ7tgJm2diza+bydJPTGOibin2steecKeOylE8oY2JERlVWkAJO6yw==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/get-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/gl-mat4": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/gl-mat4/-/gl-mat4-1.2.0.tgz", - "integrity": "sha512-sT5C0pwB1/e9G9AvAoLsoaJtbMGjfd/jfxo8jMCKqYYEnjZuFvqV5rehqar0538EmssjdDeiEWnKyBSTw7quoA==" - }, - "node_modules/gl-matrix": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/gl-matrix/-/gl-matrix-3.4.3.tgz", - "integrity": "sha512-wcCp8vu8FT22BnvKVPjXa/ICBWRq/zjFfdofZy1WSpQZpphblv12/bOQLBC1rMM7SGOFS9ltVmKOHil5+Ml7gA==" - }, - "node_modules/gl-text": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/gl-text/-/gl-text-1.3.1.tgz", - "integrity": "sha512-/f5gcEMiZd+UTBJLTl3D+CkCB/0UFGTx3nflH8ZmyWcLkZhsZ1+Xx5YYkw2rgWAzgPeE35xCqBuHSoMKQVsR+w==", - "dependencies": { - "bit-twiddle": "^1.0.2", - "color-normalize": "^1.5.0", - "css-font": "^1.2.0", - "detect-kerning": "^2.1.2", - "es6-weak-map": "^2.0.3", - "flatten-vertex-data": "^1.0.2", - "font-atlas": "^2.1.0", - "font-measure": "^1.2.2", - "gl-util": "^3.1.2", - "is-plain-obj": "^1.1.0", - "object-assign": "^4.1.1", - "parse-rect": "^1.2.0", - "parse-unit": "^1.0.1", - "pick-by-alias": "^1.2.0", - "regl": "^2.0.0", - "to-px": "^1.0.1", - "typedarray-pool": "^1.1.0" - } - }, - "node_modules/gl-util": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/gl-util/-/gl-util-3.1.3.tgz", - "integrity": "sha512-dvRTggw5MSkJnCbh74jZzSoTOGnVYK+Bt+Ckqm39CVcl6+zSsxqWk4lr5NKhkqXHL6qvZAU9h17ZF8mIskY9mA==", - "dependencies": { - "is-browser": "^2.0.1", - "is-firefox": "^1.0.3", - "is-plain-obj": "^1.1.0", - "number-is-integer": "^1.0.1", - "object-assign": "^4.1.0", - "pick-by-alias": "^1.2.0", - "weak-map": "^1.0.5" - } - }, - "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==", - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/globals": { - "version": "13.20.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", - "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", - "dev": true, - "dependencies": { - "type-fest": "^0.20.2" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/glsl-inject-defines": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/glsl-inject-defines/-/glsl-inject-defines-1.0.3.tgz", - "integrity": "sha512-W49jIhuDtF6w+7wCMcClk27a2hq8znvHtlGnrYkSWEr8tHe9eA2dcnohlcAmxLYBSpSSdzOkRdyPTrx9fw49+A==", - "dependencies": { - "glsl-token-inject-block": "^1.0.0", - "glsl-token-string": "^1.0.1", - "glsl-tokenizer": "^2.0.2" - } - }, - "node_modules/glsl-resolve": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/glsl-resolve/-/glsl-resolve-0.0.1.tgz", - "integrity": "sha512-xxFNsfnhZTK9NBhzJjSBGX6IOqYpvBHxxmo+4vapiljyGNCY0Bekzn0firQkQrazK59c1hYxMDxYS8MDlhw4gA==", - "dependencies": { - "resolve": "^0.6.1", - "xtend": "^2.1.2" - } - }, - "node_modules/glsl-resolve/node_modules/resolve": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-0.6.3.tgz", - "integrity": "sha512-UHBY3viPlJKf85YijDUcikKX6tmF4SokIDp518ZDVT92JNDcG5uKIthaT/owt3Sar0lwtOafsQuwrg22/v2Dwg==" - }, - "node_modules/glsl-resolve/node_modules/xtend": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-2.2.0.tgz", - "integrity": "sha512-SLt5uylT+4aoXxXuwtQp5ZnMMzhDb1Xkg4pEqc00WUJCQifPfV9Ub1VrNhp9kXkrjZD2I2Hl8WnjP37jzZLPZw==", - "engines": { - "node": ">=0.4" - } - }, - "node_modules/glsl-token-assignments": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/glsl-token-assignments/-/glsl-token-assignments-2.0.2.tgz", - "integrity": "sha512-OwXrxixCyHzzA0U2g4btSNAyB2Dx8XrztY5aVUCjRSh4/D0WoJn8Qdps7Xub3sz6zE73W3szLrmWtQ7QMpeHEQ==" - }, - "node_modules/glsl-token-defines": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/glsl-token-defines/-/glsl-token-defines-1.0.0.tgz", - "integrity": "sha512-Vb5QMVeLjmOwvvOJuPNg3vnRlffscq2/qvIuTpMzuO/7s5kT+63iL6Dfo2FYLWbzuiycWpbC0/KV0biqFwHxaQ==", - "dependencies": { - "glsl-tokenizer": "^2.0.0" - } - }, - "node_modules/glsl-token-depth": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/glsl-token-depth/-/glsl-token-depth-1.1.2.tgz", - "integrity": "sha512-eQnIBLc7vFf8axF9aoi/xW37LSWd2hCQr/3sZui8aBJnksq9C7zMeUYHVJWMhFzXrBU7fgIqni4EhXVW4/krpg==" - }, - "node_modules/glsl-token-descope": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/glsl-token-descope/-/glsl-token-descope-1.0.2.tgz", - "integrity": "sha512-kS2PTWkvi/YOeicVjXGgX5j7+8N7e56srNDEHDTVZ1dcESmbmpmgrnpjPcjxJjMxh56mSXYoFdZqb90gXkGjQw==", - "dependencies": { - "glsl-token-assignments": "^2.0.0", - "glsl-token-depth": "^1.1.0", - "glsl-token-properties": "^1.0.0", - "glsl-token-scope": "^1.1.0" - } - }, - "node_modules/glsl-token-inject-block": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/glsl-token-inject-block/-/glsl-token-inject-block-1.1.0.tgz", - "integrity": "sha512-q/m+ukdUBuHCOtLhSr0uFb/qYQr4/oKrPSdIK2C4TD+qLaJvqM9wfXIF/OOBjuSA3pUoYHurVRNao6LTVVUPWA==" - }, - "node_modules/glsl-token-properties": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/glsl-token-properties/-/glsl-token-properties-1.0.1.tgz", - "integrity": "sha512-dSeW1cOIzbuUoYH0y+nxzwK9S9O3wsjttkq5ij9ZGw0OS41BirKJzzH48VLm8qLg+au6b0sINxGC0IrGwtQUcA==" - }, - "node_modules/glsl-token-scope": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/glsl-token-scope/-/glsl-token-scope-1.1.2.tgz", - "integrity": "sha512-YKyOMk1B/tz9BwYUdfDoHvMIYTGtVv2vbDSLh94PT4+f87z21FVdou1KNKgF+nECBTo0fJ20dpm0B1vZB1Q03A==" - }, - "node_modules/glsl-token-string": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/glsl-token-string/-/glsl-token-string-1.0.1.tgz", - "integrity": "sha512-1mtQ47Uxd47wrovl+T6RshKGkRRCYWhnELmkEcUAPALWGTFe2XZpH3r45XAwL2B6v+l0KNsCnoaZCSnhzKEksg==" - }, - "node_modules/glsl-token-whitespace-trim": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/glsl-token-whitespace-trim/-/glsl-token-whitespace-trim-1.0.0.tgz", - "integrity": "sha512-ZJtsPut/aDaUdLUNtmBYhaCmhIjpKNg7IgZSfX5wFReMc2vnj8zok+gB/3Quqs0TsBSX/fGnqUUYZDqyuc2xLQ==" - }, - "node_modules/glsl-tokenizer": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/glsl-tokenizer/-/glsl-tokenizer-2.1.5.tgz", - "integrity": "sha512-XSZEJ/i4dmz3Pmbnpsy3cKh7cotvFlBiZnDOwnj/05EwNp2XrhQ4XKJxT7/pDt4kp4YcpRSKz8eTV7S+mwV6MA==", - "dependencies": { - "through2": "^0.6.3" - } - }, - "node_modules/glsl-tokenizer/node_modules/isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==" - }, - "node_modules/glsl-tokenizer/node_modules/readable-stream": { - "version": "1.0.34", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", - "integrity": "sha512-ok1qVCJuRkNmvebYikljxJA/UEsKwLl2nI1OmaqAu4/UE+h0wKCHok4XkL/gvi39OacXvw59RJUOFUkDib2rHg==", - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "0.0.1", - "string_decoder": "~0.10.x" - } - }, - "node_modules/glsl-tokenizer/node_modules/string_decoder": { - "version": "0.10.31", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==" - }, - "node_modules/glsl-tokenizer/node_modules/through2": { - "version": "0.6.5", - "resolved": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz", - "integrity": "sha512-RkK/CCESdTKQZHdmKICijdKKsCRVHs5KsLZ6pACAmF/1GPUQhonHSXWNERctxEp7RmvjdNbZTL5z9V7nSCXKcg==", - "dependencies": { - "readable-stream": ">=1.0.33-1 <1.1.0-0", - "xtend": ">=4.0.0 <4.1.0-0" - } - }, - "node_modules/glslify": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/glslify/-/glslify-7.1.1.tgz", - "integrity": "sha512-bud98CJ6kGZcP9Yxcsi7Iz647wuDz3oN+IZsjCRi5X1PI7t/xPKeL0mOwXJjo+CRZMqvq0CkSJiywCcY7kVYog==", - "dependencies": { - "bl": "^2.2.1", - "concat-stream": "^1.5.2", - "duplexify": "^3.4.5", - "falafel": "^2.1.0", - "from2": "^2.3.0", - "glsl-resolve": "0.0.1", - "glsl-token-whitespace-trim": "^1.0.0", - "glslify-bundle": "^5.0.0", - "glslify-deps": "^1.2.5", - "minimist": "^1.2.5", - "resolve": "^1.1.5", - "stack-trace": "0.0.9", - "static-eval": "^2.0.5", - "through2": "^2.0.1", - "xtend": "^4.0.0" - }, - "bin": { - "glslify": "bin.js" - } - }, - "node_modules/glslify-bundle": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/glslify-bundle/-/glslify-bundle-5.1.1.tgz", - "integrity": "sha512-plaAOQPv62M1r3OsWf2UbjN0hUYAB7Aph5bfH58VxJZJhloRNbxOL9tl/7H71K7OLJoSJ2ZqWOKk3ttQ6wy24A==", - "dependencies": { - "glsl-inject-defines": "^1.0.1", - "glsl-token-defines": "^1.0.0", - "glsl-token-depth": "^1.1.1", - "glsl-token-descope": "^1.0.2", - "glsl-token-scope": "^1.1.1", - "glsl-token-string": "^1.0.1", - "glsl-token-whitespace-trim": "^1.0.0", - "glsl-tokenizer": "^2.0.2", - "murmurhash-js": "^1.0.0", - "shallow-copy": "0.0.1" - } - }, - "node_modules/glslify-deps": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/glslify-deps/-/glslify-deps-1.3.2.tgz", - "integrity": "sha512-7S7IkHWygJRjcawveXQjRXLO2FTjijPDYC7QfZyAQanY+yGLCFHYnPtsGT9bdyHiwPTw/5a1m1M9hamT2aBpag==", - "dependencies": { - "@choojs/findup": "^0.2.0", - "events": "^3.2.0", - "glsl-resolve": "0.0.1", - "glsl-tokenizer": "^2.0.0", - "graceful-fs": "^4.1.2", - "inherits": "^2.0.1", - "map-limit": "0.0.1", - "resolve": "^1.0.0" - } - }, - "node_modules/gopd": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", - "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", - "dev": true, - "dependencies": { - "get-intrinsic": "^1.1.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/graceful-fs": { - "version": "4.2.11", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", - "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" - }, - "node_modules/grid-index": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/grid-index/-/grid-index-1.1.0.tgz", - "integrity": "sha512-HZRwumpOGUrHyxO5bqKZL0B0GlUpwtCAzZ42sgxUPniu33R1LSFH5yrIcBCHjkctCAh3mtWKcKd9J4vDDdeVHA==" - }, - "node_modules/has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "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/has-hover": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-hover/-/has-hover-1.0.1.tgz", - "integrity": "sha512-0G6w7LnlcpyDzpeGUTuT0CEw05+QlMuGVk1IHNAlHrGJITGodjZu3x8BNDUMfKJSZXNB2ZAclqc1bvrd+uUpfg==", - "dependencies": { - "is-browser": "^2.0.1" - } - }, - "node_modules/has-passive-events": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-passive-events/-/has-passive-events-1.0.0.tgz", - "integrity": "sha512-2vSj6IeIsgvsRMyeQ0JaCX5Q3lX4zMn5HpoVc7MEhQ6pv8Iq9rsXjsp+E5ZwaT7T0xhMT0KmU8gtt1EFVdbJiw==", - "dependencies": { - "is-browser": "^2.0.1" - } - }, - "node_modules/has-property-descriptors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", - "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", - "dev": true, - "dependencies": { - "get-intrinsic": "^1.1.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-proto": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", - "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-tostringtag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", - "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", - "dev": true, - "dependencies": { - "has-symbols": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/hsluv": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/hsluv/-/hsluv-0.0.3.tgz", - "integrity": "sha512-08iL2VyCRbkQKBySkSh6m8zMUa3sADAxGVWs3Z1aPcUkTJeK0ETG4Fc27tEmQBGUAXZjIsXOZqBvacuVNSC/fQ==" - }, - "node_modules/htmlnano": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/htmlnano/-/htmlnano-2.0.4.tgz", - "integrity": "sha512-WGCkyGFwjKW1GeCBsPYacMvaMnZtFJ0zIRnC2NCddkA+IOEhTqskXrS7lep+3yYZw/nQ3dW1UAX4yA/GJyR8BA==", - "dev": true, - "dependencies": { - "cosmiconfig": "^8.0.0", - "posthtml": "^0.16.5", - "timsort": "^0.3.0" - }, - "peerDependencies": { - "cssnano": "^6.0.0", - "postcss": "^8.3.11", - "purgecss": "^5.0.0", - "relateurl": "^0.2.7", - "srcset": "4.0.0", - "svgo": "^3.0.2", - "terser": "^5.10.0", - "uncss": "^0.17.3" - }, - "peerDependenciesMeta": { - "cssnano": { - "optional": true - }, - "postcss": { - "optional": true - }, - "purgecss": { - "optional": true - }, - "relateurl": { - "optional": true - }, - "srcset": { - "optional": true - }, - "svgo": { - "optional": true - }, - "terser": { - "optional": true - }, - "uncss": { - "optional": true - } - } - }, - "node_modules/htmlparser2": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-7.2.0.tgz", - "integrity": "sha512-H7MImA4MS6cw7nbyURtLPO1Tms7C5H602LRETv95z1MxO/7CP7rDVROehUYeYBUYEON94NXXDEPmZuq+hX4sog==", - "dev": true, - "funding": [ - "https://github.com/fb55/htmlparser2?sponsor=1", - { - "type": "github", - "url": "https://github.com/sponsors/fb55" - } - ], - "dependencies": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.2", - "domutils": "^2.8.0", - "entities": "^3.0.1" - } - }, - "node_modules/iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "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/immutable": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.1.tgz", - "integrity": "sha512-lj9cnmB/kVS0QHsJnYKD1uo3o39nrbKxszjnqS9Fr6NB7bZzW45U6WSGBPKXDL/CvDKqDNPA4r3DoDQ8GTxo2A==" - }, - "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/inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" - }, - "node_modules/is-arguments": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", - "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", - "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==", - "dependencies": { - "binary-extensions": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-browser": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-browser/-/is-browser-2.1.0.tgz", - "integrity": "sha512-F5rTJxDQ2sW81fcfOR1GnCXT6sVJC104fCyfj+mjpwNEwaPYSn5fte5jiHmBg3DHsIoL/l8Kvw5VN5SsTRcRFQ==" - }, - "node_modules/is-callable": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", - "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-core-module": { - "version": "2.12.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.12.1.tgz", - "integrity": "sha512-Q4ZuBAe2FUsKtyQJoQHlvP8OvBERxO3jEmy1I7hcRXcJBGGHFh/aJBswbXuS9sgrDH2QUO8ilkwNPHvHMd8clg==", - "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": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-finite": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.1.0.tgz", - "integrity": "sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==", - "engines": { - "node": ">=0.10.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-firefox": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-firefox/-/is-firefox-1.0.3.tgz", - "integrity": "sha512-6Q9ITjvWIm0Xdqv+5U12wgOKEM2KoBw4Y926m0OFkvlCxnbG94HKAsVz8w3fWcfAS5YA2fJORXX1dLrkprCCxA==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-generator-function": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz", - "integrity": "sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==", - "dev": true, - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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==", - "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-iexplorer": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-iexplorer/-/is-iexplorer-1.0.0.tgz", - "integrity": "sha512-YeLzceuwg3K6O0MLM3UyUUjKAlyULetwryFp1mHy1I5PfArK0AEqlfa+MR4gkJjcbuJXoDJCvXbyqZVf5CR2Sg==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-json": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-json/-/is-json-2.0.1.tgz", - "integrity": "sha512-6BEnpVn1rcf3ngfmViLM6vjUjGErbdrL4rwlv+u1NO1XO8kqT4YGL8+19Q+Z/bas8tY90BTWMk2+fW1g6hQjbA==", - "dev": true - }, - "node_modules/is-mobile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-mobile/-/is-mobile-4.0.0.tgz", - "integrity": "sha512-mlcHZA84t1qLSuWkt2v0I2l61PYdyQDt4aG1mLIXF5FDMm4+haBCxCPYSr/uwqQNRk1MiTizn0ypEuRAOLRAew==" - }, - "node_modules/is-nan": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/is-nan/-/is-nan-1.3.2.tgz", - "integrity": "sha512-E+zBKpQ2t6MEo1VsonYmluk9NxGrbzpeeLC2xIViuO2EjU2xsXsBPwTr3Ykv9l08UYEVEdWeRZNouaZqF6RN0w==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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==", - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/is-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", - "integrity": "sha512-l4RyHgRqGN4Y3+9JHVrNqO+tN0rV5My76uW5/nuO4K1b6vw5G8d/cmFjP9tRfEsdhZNt0IFdZuK/c2Vr4Nb+Qg==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-plain-obj": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", - "integrity": "sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-string-blank": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-string-blank/-/is-string-blank-1.0.1.tgz", - "integrity": "sha512-9H+ZBCVs3L9OYqv8nuUAzpcT9OTgMD1yAWrG7ihlnibdkbtB850heAmYWxHuXc4CHy4lKeK69tN+ny1K7gBIrw==" - }, - "node_modules/is-svg-path": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-svg-path/-/is-svg-path-1.0.2.tgz", - "integrity": "sha512-Lj4vePmqpPR1ZnRctHv8ltSh1OrSxHkhUkd7wi+VQdcdP15/KvQFyk7LhNuM7ZW0EVbJz8kZLVmL9quLrfq4Kg==" - }, - "node_modules/is-typed-array": { - "version": "1.1.12", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.12.tgz", - "integrity": "sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg==", - "dev": true, - "dependencies": { - "which-typed-array": "^1.1.11" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/isarray": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", - "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==" - }, - "node_modules/js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - }, - "node_modules/js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", - "dev": true, - "dependencies": { - "argparse": "^2.0.1" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/json-parse-even-better-errors": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", - "dev": true - }, - "node_modules/json5": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", - "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", - "dev": true, - "bin": { - "json5": "lib/cli.js" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/kdbush": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/kdbush/-/kdbush-3.0.0.tgz", - "integrity": "sha512-hRkd6/XW4HTsA9vjVpY9tuXJYLSlelnkTmVFu4M9/7MIYQtFcHpbugAU7UbOfjOiVSVYl2fqgBuJ32JUmRo5Ew==" - }, - "node_modules/levn": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", - "integrity": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==", - "dependencies": { - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/lightningcss": { - "version": "1.21.5", - "resolved": "https://registry.npmjs.org/lightningcss/-/lightningcss-1.21.5.tgz", - "integrity": "sha512-/pEUPeih2EwIx9n4T82aOG6CInN83tl/mWlw6B5gWLf36UplQi1L+5p3FUHsdt4fXVfOkkh9KIaM3owoq7ss8A==", - "dev": true, - "dependencies": { - "detect-libc": "^1.0.3" - }, - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - }, - "optionalDependencies": { - "lightningcss-darwin-arm64": "1.21.5", - "lightningcss-darwin-x64": "1.21.5", - "lightningcss-linux-arm-gnueabihf": "1.21.5", - "lightningcss-linux-arm64-gnu": "1.21.5", - "lightningcss-linux-arm64-musl": "1.21.5", - "lightningcss-linux-x64-gnu": "1.21.5", - "lightningcss-linux-x64-musl": "1.21.5", - "lightningcss-win32-x64-msvc": "1.21.5" - } - }, - "node_modules/lightningcss-darwin-arm64": { - "version": "1.21.5", - "resolved": "https://registry.npmjs.org/lightningcss-darwin-arm64/-/lightningcss-darwin-arm64-1.21.5.tgz", - "integrity": "sha512-z05hyLX85WY0UfhkFUOrWEFqD69lpVAmgl3aDzMKlIZJGygbhbegqb4PV8qfUrKKNBauut/qVNPKZglhTaDDxA==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/lightningcss-darwin-x64": { - "version": "1.21.5", - "resolved": "https://registry.npmjs.org/lightningcss-darwin-x64/-/lightningcss-darwin-x64-1.21.5.tgz", - "integrity": "sha512-MSJhmej/U9MrdPxDk7+FWhO8+UqVoZUHG4VvKT5RQ4RJtqtANTiWiI97LvoVNMtdMnHaKs1Pkji6wHUFxjJsHQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/lightningcss-linux-arm-gnueabihf": { - "version": "1.21.5", - "resolved": "https://registry.npmjs.org/lightningcss-linux-arm-gnueabihf/-/lightningcss-linux-arm-gnueabihf-1.21.5.tgz", - "integrity": "sha512-xN6+5/JsMrbZHL1lPl+MiNJ3Xza12ueBKPepiyDCFQzlhFRTj7D0LG+cfNTzPBTO8KcYQynLpl1iBB8LGp3Xtw==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/lightningcss-linux-arm64-gnu": { - "version": "1.21.5", - "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-gnu/-/lightningcss-linux-arm64-gnu-1.21.5.tgz", - "integrity": "sha512-KfzFNhC4XTbmG3ma/xcTs/IhCwieW89XALIusKmnV0N618ZDXEB0XjWOYQRCXeK9mfqPdbTBpurEHV/XZtkniQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/lightningcss-linux-arm64-musl": { - "version": "1.21.5", - "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-musl/-/lightningcss-linux-arm64-musl-1.21.5.tgz", - "integrity": "sha512-bc0GytQO5Mn9QM6szaZ+31fQHNdidgpM1sSCwzPItz8hg3wOvKl8039rU0veMJV3ZgC9z0ypNRceLrSHeRHmXw==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/lightningcss-linux-x64-gnu": { - "version": "1.21.5", - "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-gnu/-/lightningcss-linux-x64-gnu-1.21.5.tgz", - "integrity": "sha512-JwMbgypPQgc2kW2av3OwzZ8cbrEuIiDiXPJdXRE6aVxu67yHauJawQLqJKTGUhiAhy6iLDG8Wg0a3/ziL+m+Kw==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/lightningcss-linux-x64-musl": { - "version": "1.21.5", - "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-musl/-/lightningcss-linux-x64-musl-1.21.5.tgz", - "integrity": "sha512-Ib8b6IQ/OR/VrPU6YBgy4T3QnuHY7DUa95O+nz+cwrTkMSN6fuHcTcIaz4t8TJ6HI5pl3uxUOZjmtls2pyQWow==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/lightningcss-win32-x64-msvc": { - "version": "1.21.5", - "resolved": "https://registry.npmjs.org/lightningcss-win32-x64-msvc/-/lightningcss-win32-x64-msvc-1.21.5.tgz", - "integrity": "sha512-A8cSi8lUpBeVmoF+DqqW7cd0FemDbCuKr490IXdjyeI+KL8adpSKUs8tcqO0OXPh1EoDqK7JNkD/dELmd4Iz5g==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/lines-and-columns": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", - "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", - "dev": true - }, - "node_modules/lmdb": { - "version": "2.7.11", - "resolved": "https://registry.npmjs.org/lmdb/-/lmdb-2.7.11.tgz", - "integrity": "sha512-x9bD4hVp7PFLUoELL8RglbNXhAMt5CYhkmss+CEau9KlNoilsTzNi9QDsPZb3KMpOGZXG6jmXhW3bBxE2XVztw==", - "dev": true, - "hasInstallScript": true, - "dependencies": { - "msgpackr": "1.8.5", - "node-addon-api": "^4.3.0", - "node-gyp-build-optional-packages": "5.0.6", - "ordered-binary": "^1.4.0", - "weak-lru-cache": "^1.2.2" - }, - "bin": { - "download-lmdb-prebuilds": "bin/download-prebuilds.js" - }, - "optionalDependencies": { - "@lmdb/lmdb-darwin-arm64": "2.7.11", - "@lmdb/lmdb-darwin-x64": "2.7.11", - "@lmdb/lmdb-linux-arm": "2.7.11", - "@lmdb/lmdb-linux-arm64": "2.7.11", - "@lmdb/lmdb-linux-x64": "2.7.11", - "@lmdb/lmdb-win32-x64": "2.7.11" - } - }, - "node_modules/lmdb/node_modules/msgpackr": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/msgpackr/-/msgpackr-1.8.5.tgz", - "integrity": "sha512-mpPs3qqTug6ahbblkThoUY2DQdNXcm4IapwOS3Vm/87vmpzLVelvp9h3It1y9l1VPpiFLV11vfOXnmeEwiIXwg==", - "dev": true, - "optionalDependencies": { - "msgpackr-extract": "^3.0.1" - } - }, - "node_modules/lmdb/node_modules/node-addon-api": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-4.3.0.tgz", - "integrity": "sha512-73sE9+3UaLYYFmDsFZnqCInzPyh3MqIwZO9cw58yIqAZhONrrabrYyYe3TuIqtIiOuTXVhsGau8hcrhhwSsDIQ==", - "dev": true - }, - "node_modules/lodash.merge": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==" - }, - "node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/map-limit": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/map-limit/-/map-limit-0.0.1.tgz", - "integrity": "sha512-pJpcfLPnIF/Sk3taPW21G/RQsEEirGaFpCW3oXRwH9dnFHPHNGjNyvh++rdmC2fNqEaTw2MhYJraoJWAHx8kEg==", - "dependencies": { - "once": "~1.3.0" - } - }, - "node_modules/map-limit/node_modules/once": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/once/-/once-1.3.3.tgz", - "integrity": "sha512-6vaNInhu+CHxtONf3zw3vq4SP2DOQhjBvIa3rNcG0+P7eKWlYH6Peu7rHizSloRU2EwMz6GraLieis9Ac9+p1w==", - "dependencies": { - "wrappy": "1" - } - }, - "node_modules/mapbox-gl": { - "version": "1.10.1", - "resolved": "https://registry.npmjs.org/mapbox-gl/-/mapbox-gl-1.10.1.tgz", - "integrity": "sha512-0aHt+lFUpYfvh0kMIqXqNXqoYMuhuAsMlw87TbhWrw78Tx2zfuPI0Lx31/YPUgJ+Ire0tzQ4JnuBL7acDNXmMg==", - "dependencies": { - "@mapbox/geojson-rewind": "^0.5.0", - "@mapbox/geojson-types": "^1.0.2", - "@mapbox/jsonlint-lines-primitives": "^2.0.2", - "@mapbox/mapbox-gl-supported": "^1.5.0", - "@mapbox/point-geometry": "^0.1.0", - "@mapbox/tiny-sdf": "^1.1.1", - "@mapbox/unitbezier": "^0.0.0", - "@mapbox/vector-tile": "^1.3.1", - "@mapbox/whoots-js": "^3.1.0", - "csscolorparser": "~1.0.3", - "earcut": "^2.2.2", - "geojson-vt": "^3.2.1", - "gl-matrix": "^3.2.1", - "grid-index": "^1.1.0", - "minimist": "^1.2.5", - "murmurhash-js": "^1.0.0", - "pbf": "^3.2.1", - "potpack": "^1.0.1", - "quickselect": "^2.0.0", - "rw": "^1.3.3", - "supercluster": "^7.0.0", - "tinyqueue": "^2.0.3", - "vt-pbf": "^3.1.1" - }, - "engines": { - "node": ">=6.4.0" - } - }, - "node_modules/math-log2": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/math-log2/-/math-log2-1.0.1.tgz", - "integrity": "sha512-9W0yGtkaMAkf74XGYVy4Dqw3YUMnTNB2eeiw9aQbUl4A3KmuCEHTt2DgAB07ENzOYAjsYSAYufkAq0Zd+jU7zA==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/mdn-data": { - "version": "2.0.30", - "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.30.tgz", - "integrity": "sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==", - "dev": true, - "optional": true, - "peer": true - }, - "node_modules/micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", - "dev": true, - "dependencies": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/minimist": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", - "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/mouse-change": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/mouse-change/-/mouse-change-1.4.0.tgz", - "integrity": "sha512-vpN0s+zLL2ykyyUDh+fayu9Xkor5v/zRD9jhSqjRS1cJTGS0+oakVZzNm5n19JvvEj0you+MXlYTpNxUDQUjkQ==", - "dependencies": { - "mouse-event": "^1.0.0" - } - }, - "node_modules/mouse-event": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/mouse-event/-/mouse-event-1.0.5.tgz", - "integrity": "sha512-ItUxtL2IkeSKSp9cyaX2JLUuKk2uMoxBg4bbOWVd29+CskYJR9BGsUqtXenNzKbnDshvupjUewDIYVrOB6NmGw==" - }, - "node_modules/mouse-event-offset": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/mouse-event-offset/-/mouse-event-offset-3.0.2.tgz", - "integrity": "sha512-s9sqOs5B1Ykox3Xo8b3Ss2IQju4UwlW6LSR+Q5FXWpprJ5fzMLefIIItr3PH8RwzfGy6gxs/4GAmiNuZScE25w==" - }, - "node_modules/mouse-wheel": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/mouse-wheel/-/mouse-wheel-1.2.0.tgz", - "integrity": "sha512-+OfYBiUOCTWcTECES49neZwL5AoGkXE+lFjIvzwNCnYRlso+EnfvovcBxGoyQ0yQt806eSPjS675K0EwWknXmw==", - "dependencies": { - "right-now": "^1.0.0", - "signum": "^1.0.0", - "to-px": "^1.0.1" - } - }, - "node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" - }, - "node_modules/msgpackr": { - "version": "1.9.5", - "resolved": "https://registry.npmjs.org/msgpackr/-/msgpackr-1.9.5.tgz", - "integrity": "sha512-/IJ3cFSN6Ci3eG2wLhbFEL6GT63yEaoN/R5My2QkV6zro+OJaVRLPlwvxY7EtHYSmDlQpk8stvOQTL2qJFkDRg==", - "dev": true, - "optionalDependencies": { - "msgpackr-extract": "^3.0.2" - } - }, - "node_modules/msgpackr-extract": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/msgpackr-extract/-/msgpackr-extract-3.0.2.tgz", - "integrity": "sha512-SdzXp4kD/Qf8agZ9+iTu6eql0m3kWm1A2y1hkpTeVNENutaB0BwHlSvAIaMxwntmRUAUjon2V4L8Z/njd0Ct8A==", - "dev": true, - "hasInstallScript": true, - "optional": true, - "dependencies": { - "node-gyp-build-optional-packages": "5.0.7" - }, - "bin": { - "download-msgpackr-prebuilds": "bin/download-prebuilds.js" - }, - "optionalDependencies": { - "@msgpackr-extract/msgpackr-extract-darwin-arm64": "3.0.2", - "@msgpackr-extract/msgpackr-extract-darwin-x64": "3.0.2", - "@msgpackr-extract/msgpackr-extract-linux-arm": "3.0.2", - "@msgpackr-extract/msgpackr-extract-linux-arm64": "3.0.2", - "@msgpackr-extract/msgpackr-extract-linux-x64": "3.0.2", - "@msgpackr-extract/msgpackr-extract-win32-x64": "3.0.2" - } - }, - "node_modules/msgpackr-extract/node_modules/node-gyp-build-optional-packages": { - "version": "5.0.7", - "resolved": "https://registry.npmjs.org/node-gyp-build-optional-packages/-/node-gyp-build-optional-packages-5.0.7.tgz", - "integrity": "sha512-YlCCc6Wffkx0kHkmam79GKvDQ6x+QZkMjFGrIMxgFNILFvGSbCp2fCBC55pGTT9gVaz8Na5CLmxt/urtzRv36w==", - "dev": true, - "optional": true, - "bin": { - "node-gyp-build-optional-packages": "bin.js", - "node-gyp-build-optional-packages-optional": "optional.js", - "node-gyp-build-optional-packages-test": "build-test.js" - } - }, - "node_modules/mumath": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/mumath/-/mumath-3.3.4.tgz", - "integrity": "sha512-VAFIOG6rsxoc7q/IaY3jdjmrsuX9f15KlRLYTHmixASBZkZEKC1IFqE2BC5CdhXmK6WLM1Re33z//AGmeRI6FA==", - "deprecated": "Redundant dependency in your project.", - "dependencies": { - "almost-equal": "^1.1.0" - } - }, - "node_modules/murmurhash-js": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/murmurhash-js/-/murmurhash-js-1.0.0.tgz", - "integrity": "sha512-TvmkNhkv8yct0SVBSy+o8wYzXjE4Zz3PCesbfs8HiCXXdcTuocApFv11UWlNFWKYsP2okqrhb7JNlSm9InBhIw==" - }, - "node_modules/native-promise-only": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/native-promise-only/-/native-promise-only-0.8.1.tgz", - "integrity": "sha512-zkVhZUA3y8mbz652WrL5x0fB0ehrBkulWT3TomAQ9iDtyXZvzKeEA6GPxAItBYeNYl5yngKRX612qHOhvMkDeg==" - }, - "node_modules/needle": { - "version": "2.9.1", - "resolved": "https://registry.npmjs.org/needle/-/needle-2.9.1.tgz", - "integrity": "sha512-6R9fqJ5Zcmf+uYaFgdIHmLwNldn5HbK8L5ybn7Uz+ylX/rnOsSp1AHcvQSrCaFN+qNM1wpymHqD7mVasEOlHGQ==", - "dependencies": { - "debug": "^3.2.6", - "iconv-lite": "^0.4.4", - "sax": "^1.2.4" - }, - "bin": { - "needle": "bin/needle" - }, - "engines": { - "node": ">= 4.4.x" - } - }, - "node_modules/next-tick": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz", - "integrity": "sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==" - }, - "node_modules/node-addon-api": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.0.0.tgz", - "integrity": "sha512-vgbBJTS4m5/KkE16t5Ly0WW9hz46swAstv0hYYwMtbG7AznRhNyfLRe8HZAiWIpcHzoO7HxhLuBQj9rJ/Ho0ZA==", - "dev": true - }, - "node_modules/node-gyp-build-optional-packages": { - "version": "5.0.6", - "resolved": "https://registry.npmjs.org/node-gyp-build-optional-packages/-/node-gyp-build-optional-packages-5.0.6.tgz", - "integrity": "sha512-2ZJErHG4du9G3/8IWl/l9Bp5BBFy63rno5GVmjQijvTuUZKsl6g8RB4KH/x3NLcV5ZBb4GsXmAuTYr6dRml3Gw==", - "dev": true, - "bin": { - "node-gyp-build-optional-packages": "bin.js", - "node-gyp-build-optional-packages-optional": "optional.js", - "node-gyp-build-optional-packages-test": "build-test.js" - } - }, - "node_modules/node-releases": { - "version": "2.0.13", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.13.tgz", - "integrity": "sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==", - "dev": true - }, - "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==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/normalize-svg-path": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/normalize-svg-path/-/normalize-svg-path-0.1.0.tgz", - "integrity": "sha512-1/kmYej2iedi5+ROxkRESL/pI02pkg0OBnaR4hJkSIX6+ORzepwbuUXfrdZaPjysTsJInj0Rj5NuX027+dMBvA==" - }, - "node_modules/nth-check": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", - "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", - "dev": true, - "dependencies": { - "boolbase": "^1.0.0" - }, - "funding": { - "url": "https://github.com/fb55/nth-check?sponsor=1" - } - }, - "node_modules/nullthrows": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/nullthrows/-/nullthrows-1.1.1.tgz", - "integrity": "sha512-2vPPEi+Z7WqML2jZYddDIfy5Dqb0r2fze2zTxNNknZaFpVHU3mFB3R+DWeJWGVx0ecvttSGlJTI+WG+8Z4cDWw==", - "dev": true - }, - "node_modules/number-is-integer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/number-is-integer/-/number-is-integer-1.0.1.tgz", - "integrity": "sha512-Dq3iuiFBkrbmuQjGFFF3zckXNCQoSD37/SdSbgcBailUx6knDvDwb5CympBgcoWHy36sfS12u74MHYkXyHq6bg==", - "dependencies": { - "is-finite": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-is": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz", - "integrity": "sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "dependencies": { - "wrappy": "1" - } - }, - "node_modules/optionator": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", - "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", - "dependencies": { - "deep-is": "~0.1.3", - "fast-levenshtein": "~2.0.6", - "levn": "~0.3.0", - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2", - "word-wrap": "~1.2.3" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/ordered-binary": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/ordered-binary/-/ordered-binary-1.4.1.tgz", - "integrity": "sha512-9LtiGlPy982CsgxZvJGNNp2/NnrgEr6EAyN3iIEP3/8vd3YLgAZQHbQ75ZrkfBRGrNg37Dk3U6tuVb+B4Xfslg==", - "dev": true - }, - "node_modules/os-browserify": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", - "integrity": "sha512-gjcpUc3clBf9+210TRaDWbf+rZZZEshZ+DlXMRCeAjp0xhTrnQsKHypIy1J3d5hKdUzj69t708EHtU8P6bUn0A==", - "dev": true - }, - "node_modules/parcel": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/parcel/-/parcel-2.9.3.tgz", - "integrity": "sha512-2GTVocFkwblV/TIg9AmT7TI2fO4xdWkyN8aFUEVtiVNWt96GTR3FgQyHFValfCbcj1k9Xf962Ws2hYXYUr9k1Q==", - "dev": true, - "dependencies": { - "@parcel/config-default": "2.9.3", - "@parcel/core": "2.9.3", - "@parcel/diagnostic": "2.9.3", - "@parcel/events": "2.9.3", - "@parcel/fs": "2.9.3", - "@parcel/logger": "2.9.3", - "@parcel/package-manager": "2.9.3", - "@parcel/reporter-cli": "2.9.3", - "@parcel/reporter-dev-server": "2.9.3", - "@parcel/reporter-tracer": "2.9.3", - "@parcel/utils": "2.9.3", - "chalk": "^4.1.0", - "commander": "^7.0.0", - "get-port": "^4.2.0" - }, - "bin": { - "parcel": "lib/bin.js" - }, - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "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/parenthesis": { - "version": "3.1.8", - "resolved": "https://registry.npmjs.org/parenthesis/-/parenthesis-3.1.8.tgz", - "integrity": "sha512-KF/U8tk54BgQewkJPvB4s/US3VQY68BRDpH638+7O/n58TpnwiwnOtGIOsT2/i+M78s61BBpeC83STB88d8sqw==" - }, - "node_modules/parse-json": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", - "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/parse-rect": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/parse-rect/-/parse-rect-1.2.0.tgz", - "integrity": "sha512-4QZ6KYbnE6RTwg9E0HpLchUM9EZt6DnDxajFZZDSV4p/12ZJEvPO702DZpGvRYEPo00yKDys7jASi+/w7aO8LA==", - "dependencies": { - "pick-by-alias": "^1.2.0" - } - }, - "node_modules/parse-svg-path": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/parse-svg-path/-/parse-svg-path-0.1.2.tgz", - "integrity": "sha512-JyPSBnkTJ0AI8GGJLfMXvKq42cj5c006fnLz6fXy6zfoVjJizi8BNTpu8on8ziI1cKy9d9DGNuY17Ce7wuejpQ==" - }, - "node_modules/parse-unit": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parse-unit/-/parse-unit-1.0.1.tgz", - "integrity": "sha512-hrqldJHokR3Qj88EIlV/kAyAi/G5R2+R56TBANxNMy0uPlYcttx0jnMW6Yx5KsKPSbC3KddM/7qQm3+0wEXKxg==" - }, - "node_modules/path-browserify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", - "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==", - "dev": true - }, - "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==" - }, - "node_modules/path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/pbf": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/pbf/-/pbf-3.2.1.tgz", - "integrity": "sha512-ClrV7pNOn7rtmoQVF4TS1vyU0WhYRnP92fzbfF75jAIwpnzdJXf8iTd4CMEqO4yUenH6NDqLiwjqlh6QgZzgLQ==", - "dependencies": { - "ieee754": "^1.1.12", - "resolve-protobuf-schema": "^2.1.0" - }, - "bin": { - "pbf": "bin/pbf" - } - }, - "node_modules/performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==" - }, - "node_modules/pick-by-alias": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/pick-by-alias/-/pick-by-alias-1.2.0.tgz", - "integrity": "sha512-ESj2+eBxhGrcA1azgHs7lARG5+5iLakc/6nlfbpjcLl00HuuUOIuORhYXN4D1HfvMSKuVtFQjAlnwi1JHEeDIw==" - }, - "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.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "engines": { - "node": ">=8.6" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/plotly.js": { - "version": "2.24.3", - "resolved": "https://registry.npmjs.org/plotly.js/-/plotly.js-2.24.3.tgz", - "integrity": "sha512-XPlBqWXx+BHU49gQ0tVIAhTqzP7cmnOfYTXIMxju8wTJElKEaiF9qqPG88WDiIAToup2n40zhXjsyJe/JaRu2g==", - "dependencies": { - "@plotly/d3": "3.8.1", - "@plotly/d3-sankey": "0.7.2", - "@plotly/d3-sankey-circular": "0.33.1", - "@turf/area": "^6.4.0", - "@turf/bbox": "^6.4.0", - "@turf/centroid": "^6.0.2", - "canvas-fit": "^1.5.0", - "color-alpha": "1.0.4", - "color-normalize": "1.5.0", - "color-parse": "1.3.8", - "color-rgba": "2.1.1", - "country-regex": "^1.1.0", - "d3-force": "^1.2.1", - "d3-format": "^1.4.5", - "d3-geo": "^1.12.1", - "d3-geo-projection": "^2.9.0", - "d3-hierarchy": "^1.1.9", - "d3-interpolate": "^3.0.1", - "d3-time": "^1.1.0", - "d3-time-format": "^2.2.3", - "fast-isnumeric": "^1.1.4", - "gl-mat4": "^1.2.0", - "gl-text": "^1.3.1", - "glslify": "^7.1.1", - "has-hover": "^1.0.1", - "has-passive-events": "^1.0.0", - "is-mobile": "^4.0.0", - "mapbox-gl": "1.10.1", - "mouse-change": "^1.4.0", - "mouse-event-offset": "^3.0.2", - "mouse-wheel": "^1.2.0", - "native-promise-only": "^0.8.1", - "parse-svg-path": "^0.1.2", - "point-in-polygon": "^1.1.0", - "polybooljs": "^1.2.0", - "probe-image-size": "^7.2.3", - "regl": "npm:@plotly/regl@^2.1.2", - "regl-error2d": "^2.0.12", - "regl-line2d": "^3.1.2", - "regl-scatter2d": "^3.2.9", - "regl-splom": "^1.0.14", - "strongly-connected-components": "^1.0.1", - "superscript-text": "^1.0.0", - "svg-path-sdf": "^1.1.3", - "tinycolor2": "^1.4.2", - "to-px": "1.0.1", - "topojson-client": "^3.1.0", - "webgl-context": "^2.2.0", - "world-calendars": "^1.0.3" - } - }, - "node_modules/point-in-polygon": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/point-in-polygon/-/point-in-polygon-1.1.0.tgz", - "integrity": "sha512-3ojrFwjnnw8Q9242TzgXuTD+eKiutbzyslcq1ydfu82Db2y+Ogbmyrkpv0Hgj31qwT3lbS9+QAAO/pIQM35XRw==" - }, - "node_modules/polybooljs": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/polybooljs/-/polybooljs-1.2.0.tgz", - "integrity": "sha512-mKjR5nolISvF+q2BtC1fi/llpxBPTQ3wLWN8+ldzdw2Hocpc8C72ZqnamCM4Z6z+68GVVjkeM01WJegQmZ8MEQ==" - }, - "node_modules/postcss-value-parser": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", - "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", - "dev": true - }, - "node_modules/posthtml": { - "version": "0.16.6", - "resolved": "https://registry.npmjs.org/posthtml/-/posthtml-0.16.6.tgz", - "integrity": "sha512-JcEmHlyLK/o0uGAlj65vgg+7LIms0xKXe60lcDOTU7oVX/3LuEuLwrQpW3VJ7de5TaFKiW4kWkaIpJL42FEgxQ==", - "dev": true, - "dependencies": { - "posthtml-parser": "^0.11.0", - "posthtml-render": "^3.0.0" - }, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/posthtml-parser": { - "version": "0.10.2", - "resolved": "https://registry.npmjs.org/posthtml-parser/-/posthtml-parser-0.10.2.tgz", - "integrity": "sha512-PId6zZ/2lyJi9LiKfe+i2xv57oEjJgWbsHGGANwos5AvdQp98i6AtamAl8gzSVFGfQ43Glb5D614cvZf012VKg==", - "dev": true, - "dependencies": { - "htmlparser2": "^7.1.1" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/posthtml-render": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/posthtml-render/-/posthtml-render-3.0.0.tgz", - "integrity": "sha512-z+16RoxK3fUPgwaIgH9NGnK1HKY9XIDpydky5eQGgAFVXTCSezalv9U2jQuNV+Z9qV1fDWNzldcw4eK0SSbqKA==", - "dev": true, - "dependencies": { - "is-json": "^2.0.1" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/posthtml/node_modules/posthtml-parser": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/posthtml-parser/-/posthtml-parser-0.11.0.tgz", - "integrity": "sha512-QecJtfLekJbWVo/dMAA+OSwY79wpRmbqS5TeXvXSX+f0c6pW4/SE6inzZ2qkU7oAMCPqIDkZDvd/bQsSFUnKyw==", - "dev": true, - "dependencies": { - "htmlparser2": "^7.1.1" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/potpack": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/potpack/-/potpack-1.0.2.tgz", - "integrity": "sha512-choctRBIV9EMT9WGAZHn3V7t0Z2pMQyl0EZE6pFc/6ml3ssw7Dlf/oAOvFwjm1HVsqfQN8GfeFyJ+d8tRzqueQ==" - }, - "node_modules/prelude-ls": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", - "integrity": "sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==", - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/probe-image-size": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/probe-image-size/-/probe-image-size-7.2.3.tgz", - "integrity": "sha512-HubhG4Rb2UH8YtV4ba0Vp5bQ7L78RTONYu/ujmCu5nBI8wGv24s4E9xSKBi0N1MowRpxk76pFCpJtW0KPzOK0w==", - "dependencies": { - "lodash.merge": "^4.6.2", - "needle": "^2.5.2", - "stream-parser": "~0.3.1" - } - }, - "node_modules/process": { - "version": "0.11.10", - "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", - "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==", - "dev": true, - "engines": { - "node": ">= 0.6.0" - } - }, - "node_modules/process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" - }, - "node_modules/protocol-buffers-schema": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/protocol-buffers-schema/-/protocol-buffers-schema-3.6.0.tgz", - "integrity": "sha512-TdDRD+/QNdrCGCE7v8340QyuXd4kIWIgapsE2+n/SaGiSSbomYl4TjHlvIoCWRpE7wFt02EpB35VVA2ImcBVqw==" - }, - "node_modules/quickselect": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/quickselect/-/quickselect-2.0.0.tgz", - "integrity": "sha512-RKJ22hX8mHe3Y6wH/N3wCM6BWtjaxIyyUIkpHOvfFnxdI4yD4tBXEBKSbriGujF6jnSVkJrffuo6vxACiSSxIw==" - }, - "node_modules/raf": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/raf/-/raf-3.4.1.tgz", - "integrity": "sha512-Sq4CW4QhwOHE8ucn6J34MqtZCeWFP2aQSmrlroYgqAV1PjStIhJXxYuTgUIfkEk7zTLjmIjLmU5q+fbD1NnOJA==", - "dependencies": { - "performance-now": "^2.1.0" - } - }, - "node_modules/react-error-overlay": { - "version": "6.0.9", - "resolved": "https://registry.npmjs.org/react-error-overlay/-/react-error-overlay-6.0.9.tgz", - "integrity": "sha512-nQTTcUu+ATDbrSD1BZHr5kgSD4oF8OFjxun8uAaL8RwPBacGBNPf/yAuVVdx17N8XNzRDMrZ9XcKZHCjPW+9ew==", - "dev": true - }, - "node_modules/react-refresh": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.9.0.tgz", - "integrity": "sha512-Gvzk7OZpiqKSkxsQvO/mbTN1poglhmAV7gR/DdIrRrSMXraRQQlfikRJOr3Nb9GTMPC5kof948Zy6jJZIFtDvQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/readable-stream": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", - "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "node_modules/readable-stream/node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" - }, - "node_modules/readable-stream/node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - }, - "node_modules/readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dependencies": { - "picomatch": "^2.2.1" - }, - "engines": { - "node": ">=8.10.0" - } - }, - "node_modules/regenerator-runtime": { - "version": "0.13.11", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", - "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==", - "dev": true - }, - "node_modules/regl": { - "name": "@plotly/regl", - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@plotly/regl/-/regl-2.1.2.tgz", - "integrity": "sha512-Mdk+vUACbQvjd0m/1JJjOOafmkp/EpmHjISsopEz5Av44CBq7rPC05HHNbYGKVyNUF2zmEoBS/TT0pd0SPFFyw==" - }, - "node_modules/regl-error2d": { - "version": "2.0.12", - "resolved": "https://registry.npmjs.org/regl-error2d/-/regl-error2d-2.0.12.tgz", - "integrity": "sha512-r7BUprZoPO9AbyqM5qlJesrSRkl+hZnVKWKsVp7YhOl/3RIpi4UDGASGJY0puQ96u5fBYw/OlqV24IGcgJ0McA==", - "dependencies": { - "array-bounds": "^1.0.1", - "color-normalize": "^1.5.0", - "flatten-vertex-data": "^1.0.2", - "object-assign": "^4.1.1", - "pick-by-alias": "^1.2.0", - "to-float32": "^1.1.0", - "update-diff": "^1.1.0" - } - }, - "node_modules/regl-line2d": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/regl-line2d/-/regl-line2d-3.1.2.tgz", - "integrity": "sha512-nmT7WWS/WxmXAQMkgaMKWXaVmwJ65KCrjbqHGOUjjqQi6shfT96YbBOvelXwO9hG7/hjvbzjtQ2UO0L3e7YaXQ==", - "dependencies": { - "array-bounds": "^1.0.1", - "array-find-index": "^1.0.2", - "array-normalize": "^1.1.4", - "color-normalize": "^1.5.0", - "earcut": "^2.1.5", - "es6-weak-map": "^2.0.3", - "flatten-vertex-data": "^1.0.2", - "glslify": "^7.0.0", - "object-assign": "^4.1.1", - "parse-rect": "^1.2.0", - "pick-by-alias": "^1.2.0", - "to-float32": "^1.1.0" - } - }, - "node_modules/regl-scatter2d": { - "version": "3.2.9", - "resolved": "https://registry.npmjs.org/regl-scatter2d/-/regl-scatter2d-3.2.9.tgz", - "integrity": "sha512-PNrXs+xaCClKpiB2b3HZ2j3qXQXhC5kcTh/Nfgx9rLO0EpEhab0BSQDqAsbdbpdf+pSHSJvbgitB7ulbGeQ+Fg==", - "dependencies": { - "@plotly/point-cluster": "^3.1.9", - "array-range": "^1.0.1", - "array-rearrange": "^2.2.2", - "clamp": "^1.0.1", - "color-id": "^1.1.0", - "color-normalize": "^1.5.0", - "color-rgba": "^2.1.1", - "flatten-vertex-data": "^1.0.2", - "glslify": "^7.0.0", - "is-iexplorer": "^1.0.0", - "object-assign": "^4.1.1", - "parse-rect": "^1.2.0", - "pick-by-alias": "^1.2.0", - "to-float32": "^1.1.0", - "update-diff": "^1.1.0" - } - }, - "node_modules/regl-splom": { - "version": "1.0.14", - "resolved": "https://registry.npmjs.org/regl-splom/-/regl-splom-1.0.14.tgz", - "integrity": "sha512-OiLqjmPRYbd7kDlHC6/zDf6L8lxgDC65BhC8JirhP4ykrK4x22ZyS+BnY8EUinXKDeMgmpRwCvUmk7BK4Nweuw==", - "dependencies": { - "array-bounds": "^1.0.1", - "array-range": "^1.0.1", - "color-alpha": "^1.0.4", - "flatten-vertex-data": "^1.0.2", - "parse-rect": "^1.2.0", - "pick-by-alias": "^1.2.0", - "raf": "^3.4.1", - "regl-scatter2d": "^3.2.3" - } - }, - "node_modules/resolve": { - "version": "1.22.2", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.2.tgz", - "integrity": "sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==", - "dependencies": { - "is-core-module": "^2.11.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "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/resolve-protobuf-schema": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/resolve-protobuf-schema/-/resolve-protobuf-schema-2.1.0.tgz", - "integrity": "sha512-kI5ffTiZWmJaS/huM8wZfEMer1eRd7oJQhDuxeCLe3t7N7mX3z94CN0xPxBQxFYQTSNz9T0i+v6inKqSdK8xrQ==", - "dependencies": { - "protocol-buffers-schema": "^3.3.1" - } - }, - "node_modules/right-now": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/right-now/-/right-now-1.0.0.tgz", - "integrity": "sha512-DA8+YS+sMIVpbsuKgy+Z67L9Lxb1p05mNxRpDPNksPDEFir4vmBlUtuN9jkTGn9YMMdlBuK7XQgFiz6ws+yhSg==" - }, - "node_modules/rw": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/rw/-/rw-1.3.3.tgz", - "integrity": "sha512-PdhdWy89SiZogBLaw42zdeqtRJ//zFd2PgQavcICDUgJT5oW10QCRKbJ6bg4r0/UY2M6BWd5tkxuGFRvCkgfHQ==" - }, - "node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "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/safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" - }, - "node_modules/sass": { - "version": "1.63.6", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.63.6.tgz", - "integrity": "sha512-MJuxGMHzaOW7ipp+1KdELtqKbfAWbH7OLIdoSMnVe3EXPMTmxTmlaZDCTsgIpPCs3w99lLo9/zDKkOrJuT5byw==", - "dependencies": { - "chokidar": ">=3.0.0 <4.0.0", - "immutable": "^4.0.0", - "source-map-js": ">=0.6.2 <2.0.0" - }, - "bin": { - "sass": "sass.js" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" - }, - "node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/shallow-copy": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/shallow-copy/-/shallow-copy-0.0.1.tgz", - "integrity": "sha512-b6i4ZpVuUxB9h5gfCxPiusKYkqTMOjEbBs4wMaFbkfia4yFv92UKZ6Df8WXcKbn08JNL/abvg3FnMAOfakDvUw==" - }, - "node_modules/signum": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/signum/-/signum-1.0.0.tgz", - "integrity": "sha512-yodFGwcyt59XRh7w5W3jPcIQb3Bwi21suEfT7MAWnBX3iCdklJpgDgvGT9o04UonglZN5SNMfJFkHIR/jO8GHw==" - }, - "node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "devOptional": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/source-map-js": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", - "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/srcset": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/srcset/-/srcset-4.0.0.tgz", - "integrity": "sha512-wvLeHgcVHKO8Sc/H/5lkGreJQVeYMm9rlmt8PuR1xE31rIuXhuzznUUqAt8MqLhB3MqJdFzlNAfpcWnxiFUcPw==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/stable": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz", - "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==", - "deprecated": "Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility", - "dev": true - }, - "node_modules/stack-trace": { - "version": "0.0.9", - "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.9.tgz", - "integrity": "sha512-vjUc6sfgtgY0dxCdnc40mK6Oftjo9+2K8H/NG81TMhgL392FtiPA9tn9RLyTxXmTLPJPjF3VyzFp6bsWFLisMQ==", - "engines": { - "node": "*" - } - }, - "node_modules/static-eval": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/static-eval/-/static-eval-2.1.0.tgz", - "integrity": "sha512-agtxZ/kWSsCkI5E4QifRwsaPs0P0JmZV6dkLz6ILYfFYQGn+5plctanRN+IC8dJRiFkyXHrwEE3W9Wmx67uDbw==", - "dependencies": { - "escodegen": "^1.11.1" - } - }, - "node_modules/stream-browserify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-3.0.0.tgz", - "integrity": "sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA==", - "dev": true, - "dependencies": { - "inherits": "~2.0.4", - "readable-stream": "^3.5.0" - } - }, - "node_modules/stream-browserify/node_modules/readable-stream": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", - "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", - "dev": true, - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/stream-parser": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/stream-parser/-/stream-parser-0.3.1.tgz", - "integrity": "sha512-bJ/HgKq41nlKvlhccD5kaCr/P+Hu0wPNKPJOH7en+YrJu/9EgqUF+88w5Jb6KNcjOFMhfX4B2asfeAtIGuHObQ==", - "dependencies": { - "debug": "2" - } - }, - "node_modules/stream-parser/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/stream-parser/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - }, - "node_modules/stream-shift": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", - "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==" - }, - "node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, - "node_modules/string_decoder/node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - }, - "node_modules/string-split-by": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/string-split-by/-/string-split-by-1.0.0.tgz", - "integrity": "sha512-KaJKY+hfpzNyet/emP81PJA9hTVSfxNLS9SFTWxdCnnW1/zOOwiV248+EfoX7IQFcBaOp4G5YE6xTJMF+pLg6A==", - "dependencies": { - "parenthesis": "^3.1.5" - } - }, - "node_modules/strongly-connected-components": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/strongly-connected-components/-/strongly-connected-components-1.0.1.tgz", - "integrity": "sha512-i0TFx4wPcO0FwX+4RkLJi1MxmcTv90jNZgxMu9XRnMXMeFUY1VJlIoXpZunPUvUUqbCT1pg5PEkFqqpcaElNaA==" - }, - "node_modules/supercluster": { - "version": "7.1.5", - "resolved": "https://registry.npmjs.org/supercluster/-/supercluster-7.1.5.tgz", - "integrity": "sha512-EulshI3pGUM66o6ZdH3ReiFcvHpM3vAigyK+vcxdjpJyEbIIrtbmBdY23mGgnI24uXiGFvrGq9Gkum/8U7vJWg==", - "dependencies": { - "kdbush": "^3.0.0" - } - }, - "node_modules/superscript-text": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/superscript-text/-/superscript-text-1.0.0.tgz", - "integrity": "sha512-gwu8l5MtRZ6koO0icVTlmN5pm7Dhh1+Xpe9O4x6ObMAsW+3jPbW14d1DsBq1F4wiI+WOFjXF35pslgec/G8yCQ==" - }, - "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/supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/svg-arc-to-cubic-bezier": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/svg-arc-to-cubic-bezier/-/svg-arc-to-cubic-bezier-3.2.0.tgz", - "integrity": "sha512-djbJ/vZKZO+gPoSDThGNpKDO+o+bAeA4XQKovvkNCqnIS2t+S4qnLAGQhyyrulhCFRl1WWzAp0wUDV8PpTVU3g==" - }, - "node_modules/svg-path-bounds": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/svg-path-bounds/-/svg-path-bounds-1.0.2.tgz", - "integrity": "sha512-H4/uAgLWrppIC0kHsb2/dWUYSmb4GE5UqH06uqWBcg6LBjX2fu0A8+JrO2/FJPZiSsNOKZAhyFFgsLTdYUvSqQ==", - "dependencies": { - "abs-svg-path": "^0.1.1", - "is-svg-path": "^1.0.1", - "normalize-svg-path": "^1.0.0", - "parse-svg-path": "^0.1.2" - } - }, - "node_modules/svg-path-bounds/node_modules/normalize-svg-path": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/normalize-svg-path/-/normalize-svg-path-1.1.0.tgz", - "integrity": "sha512-r9KHKG2UUeB5LoTouwDzBy2VxXlHsiM6fyLQvnJa0S5hrhzqElH/CH7TUGhT1fVvIYBIKf3OpY4YJ4CK+iaqHg==", - "dependencies": { - "svg-arc-to-cubic-bezier": "^3.0.0" - } - }, - "node_modules/svg-path-sdf": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/svg-path-sdf/-/svg-path-sdf-1.1.3.tgz", - "integrity": "sha512-vJJjVq/R5lSr2KLfVXVAStktfcfa1pNFjFOgyJnzZFXlO/fDZ5DmM8FpnSKKzLPfEYTVeXuVBTHF296TpxuJVg==", - "dependencies": { - "bitmap-sdf": "^1.0.0", - "draw-svg-path": "^1.0.0", - "is-svg-path": "^1.0.1", - "parse-svg-path": "^0.1.2", - "svg-path-bounds": "^1.0.1" - } - }, - "node_modules/svgo": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/svgo/-/svgo-3.0.2.tgz", - "integrity": "sha512-Z706C1U2pb1+JGP48fbazf3KxHrWOsLme6Rv7imFBn5EnuanDW1GPaA/P1/dvObE670JDePC3mnj0k0B7P0jjQ==", - "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "@trysound/sax": "0.2.0", - "commander": "^7.2.0", - "css-select": "^5.1.0", - "css-tree": "^2.2.1", - "csso": "^5.0.5", - "picocolors": "^1.0.0" - }, - "bin": { - "svgo": "bin/svgo" - }, - "engines": { - "node": ">=14.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/svgo" - } - }, - "node_modules/term-size": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/term-size/-/term-size-2.2.1.tgz", - "integrity": "sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg==", - "dev": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/through2": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", - "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", - "dependencies": { - "readable-stream": "~2.3.6", - "xtend": "~4.0.1" - } - }, - "node_modules/timsort": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/timsort/-/timsort-0.3.0.tgz", - "integrity": "sha512-qsdtZH+vMoCARQtyod4imc2nIJwg9Cc7lPRrw9CzF8ZKR0khdr8+2nX80PBhET3tcyTtJDxAffGh2rXH4tyU8A==", - "dev": true - }, - "node_modules/tinycolor2": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/tinycolor2/-/tinycolor2-1.6.0.tgz", - "integrity": "sha512-XPaBkWQJdsf3pLKJV9p4qN/S+fm2Oj8AIPo1BTUhg5oxkvm9+SVEGFdhyOz7tTdUTfvxMiAs4sp6/eZO2Ew+pw==" - }, - "node_modules/tinyqueue": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/tinyqueue/-/tinyqueue-2.0.3.tgz", - "integrity": "sha512-ppJZNDuKGgxzkHihX8v9v9G5f+18gzaTfrukGrq6ueg0lmH4nqVnA2IPG0AEH3jKEk2GRJCUhDoqpoiw3PHLBA==" - }, - "node_modules/to-float32": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/to-float32/-/to-float32-1.1.0.tgz", - "integrity": "sha512-keDnAusn/vc+R3iEiSDw8TOF7gPiTLdK1ArvWtYbJQiVfmRg6i/CAvbKq3uIS0vWroAC7ZecN3DjQKw3aSklUg==" - }, - "node_modules/to-px": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/to-px/-/to-px-1.0.1.tgz", - "integrity": "sha512-2y3LjBeIZYL19e5gczp14/uRWFDtDUErJPVN3VU9a7SJO+RjGRtYR47aMN2bZgGlxvW4ZcEz2ddUPVHXcMfuXw==", - "dependencies": { - "parse-unit": "^1.0.1" - } - }, - "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==", - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/topojson-client": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/topojson-client/-/topojson-client-3.1.0.tgz", - "integrity": "sha512-605uxS6bcYxGXw9qi62XyrV6Q3xwbndjachmNxu8HWTtVPxZfEJN9fd/SZS1Q54Sn2y0TMyMxFj/cJINqGHrKw==", - "dependencies": { - "commander": "2" - }, - "bin": { - "topo2geo": "bin/topo2geo", - "topomerge": "bin/topomerge", - "topoquantize": "bin/topoquantize" - } - }, - "node_modules/topojson-client/node_modules/commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" - }, - "node_modules/tslib": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.0.tgz", - "integrity": "sha512-7At1WUettjcSRHXCyYtTselblcHl9PJFFVKiCAy/bY97+BPZXSQ2wbq0P9s8tK2G7dFQfNnlJnPAiArVBVBsfA==", - "dev": true - }, - "node_modules/type": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz", - "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==" - }, - "node_modules/type-check": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", - "integrity": "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==", - "dependencies": { - "prelude-ls": "~1.1.2" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/typedarray": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==" - }, - "node_modules/typedarray-pool": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/typedarray-pool/-/typedarray-pool-1.2.0.tgz", - "integrity": "sha512-YTSQbzX43yvtpfRtIDAYygoYtgT+Rpjuxy9iOpczrjpXLgGoyG7aS5USJXV2d3nn8uHTeb9rXDvzS27zUg5KYQ==", - "dependencies": { - "bit-twiddle": "^1.0.0", - "dup": "^1.0.0" - } - }, - "node_modules/unquote": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/unquote/-/unquote-1.1.1.tgz", - "integrity": "sha512-vRCqFv6UhXpWxZPyGDh/F3ZpNv8/qo7w6iufLpQg9aKnQ71qM4B5KiI7Mia9COcjEhrO9LueHpMYjYzsWH3OIg==" - }, - "node_modules/update-browserslist-db": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz", - "integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "dependencies": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" - }, - "bin": { - "update-browserslist-db": "cli.js" - }, - "peerDependencies": { - "browserslist": ">= 4.21.0" - } - }, - "node_modules/update-diff": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/update-diff/-/update-diff-1.1.0.tgz", - "integrity": "sha512-rCiBPiHxZwT4+sBhEbChzpO5hYHjm91kScWgdHf4Qeafs6Ba7MBl+d9GlGv72bcTZQO0sLmtQS1pHSWoCLtN/A==" - }, - "node_modules/util": { - "version": "0.12.5", - "resolved": "https://registry.npmjs.org/util/-/util-0.12.5.tgz", - "integrity": "sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==", - "dev": true, - "dependencies": { - "inherits": "^2.0.3", - "is-arguments": "^1.0.4", - "is-generator-function": "^1.0.7", - "is-typed-array": "^1.1.3", - "which-typed-array": "^1.1.2" - } - }, - "node_modules/util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" - }, - "node_modules/utility-types": { - "version": "3.10.0", - "resolved": "https://registry.npmjs.org/utility-types/-/utility-types-3.10.0.tgz", - "integrity": "sha512-O11mqxmi7wMKCo6HKFt5AhO4BwY3VV68YU07tgxfz8zJTIxr4BpsezN49Ffwy9j3ZpwwJp4fkRwjRzq3uWE6Rg==", - "dev": true, - "engines": { - "node": ">= 4" - } - }, - "node_modules/vt-pbf": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/vt-pbf/-/vt-pbf-3.1.3.tgz", - "integrity": "sha512-2LzDFzt0mZKZ9IpVF2r69G9bXaP2Q2sArJCmcCgvfTdCCZzSyz4aCLoQyUilu37Ll56tCblIZrXFIjNUpGIlmA==", - "dependencies": { - "@mapbox/point-geometry": "0.1.0", - "@mapbox/vector-tile": "^1.3.1", - "pbf": "^3.2.1" - } - }, - "node_modules/weak-lru-cache": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/weak-lru-cache/-/weak-lru-cache-1.2.2.tgz", - "integrity": "sha512-DEAoo25RfSYMuTGc9vPJzZcZullwIqRDSI9LOy+fkCJPi6hykCnfKaXTuPBDuXAUcqHXyOgFtHNp/kB2FjYHbw==", - "dev": true - }, - "node_modules/weak-map": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/weak-map/-/weak-map-1.0.8.tgz", - "integrity": "sha512-lNR9aAefbGPpHO7AEnY0hCFjz1eTkWCXYvkTRrTHs9qv8zJp+SkVYpzfLIFXQQiG3tVvbNFQgVg2bQS8YGgxyw==" - }, - "node_modules/webgl-context": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/webgl-context/-/webgl-context-2.2.0.tgz", - "integrity": "sha512-q/fGIivtqTT7PEoF07axFIlHNk/XCPaYpq64btnepopSWvKNFkoORlQYgqDigBIuGA1ExnFd/GnSUnBNEPQY7Q==", - "dependencies": { - "get-canvas-context": "^1.0.1" - } - }, - "node_modules/which-typed-array": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.11.tgz", - "integrity": "sha512-qe9UWWpkeG5yzZ0tNYxDmd7vo58HDBc39mZ0xWWpolAGADdFOzkfamWLDxkOWcvHQKVmdTyQdLD4NOfjLWTKew==", - "dev": true, - "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/word-wrap": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", - "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/world-calendars": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/world-calendars/-/world-calendars-1.0.3.tgz", - "integrity": "sha512-sAjLZkBnsbHkHWVhrsCU5Sa/EVuf9QqgvrN8zyJ2L/F9FR9Oc6CvVK0674+PGAtmmmYQMH98tCUSO4QLQv3/TQ==", - "dependencies": { - "object-assign": "^4.1.0" - } - }, - "node_modules/wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" - }, - "node_modules/xtend": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", - "engines": { - "node": ">=0.4" - } - }, - "node_modules/xxhash-wasm": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/xxhash-wasm/-/xxhash-wasm-0.4.2.tgz", - "integrity": "sha512-/eyHVRJQCirEkSZ1agRSCwriMhwlyUcFkXD5TPVSLP+IPzjsqMVzZwdoczLp1SoQU0R3dxz1RpIK+4YNQbCVOA==", - "dev": true - }, - "node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - } - } -} diff --git a/doc/web-gui/package.json b/doc/web-gui/package.json deleted file mode 100644 index 1be92fc9..00000000 --- a/doc/web-gui/package.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "name": "gui.ruckig.com", - "source": "src/index.html", - "dependencies": { - "alpinejs": "^3.12.3", - "bulma": "^0.9.3", - "plotly.js": "^2.24.3", - "sass": "^1.38.0" - }, - "devDependencies": { - "@parcel/transformer-sass": "^2.8.3", - "assert": "^2.0.0", - "buffer": "^6.0.3", - "constants-browserify": "^1.0.0", - "os-browserify": "^0.3.0", - "parcel": "^2.8.3", - "path-browserify": "^1.0.1", - "process": "^0.11.10", - "stream-browserify": "^3.0.0", - "util": "^0.12.5" - }, - "scripts": { - "start": "parcel", - "build": "parcel build" - } -} diff --git a/doc/web-gui/src/gui.js b/doc/web-gui/src/gui.js deleted file mode 100644 index 25846f03..00000000 --- a/doc/web-gui/src/gui.js +++ /dev/null @@ -1,105 +0,0 @@ -import RuckigModule from './ruckig.js'; -import Alpine from 'alpinejs'; - -var Plotly = require('plotly.js/lib/core'); - - -RuckigModule().then(lib => { - function toWASM(vec) { - const q = new lib.Vector(); - q.resize(vec.length, 0.0); - for (let i = 0; i < vec.length; i += 1) q.set(i, vec[i]); - return q; - } - - Alpine.data('dropdown', () => ({ - current_position: 0.0, - current_velocity: 0.0, - current_acceleration: 0.0, - target_position: 1.0, - target_velocity: 0.0, - target_acceleration: 0.0, - max_velocity: 1.0, - max_acceleration: 1.0, - max_jerk: 2.0, - hasError: false, - errorMessage: '', - - updatePlot() { - const input = new lib.InputParameter(1); - input.current_position = toWASM([this.current_position]); - input.current_velocity = toWASM([this.current_velocity]); - input.current_acceleration = toWASM([this.current_acceleration]); - input.target_position = toWASM([this.target_position]); - input.target_velocity = toWASM([this.target_velocity]); - input.target_acceleration = toWASM([this.target_acceleration]); - input.max_velocity = toWASM([this.max_velocity]); - input.max_acceleration = toWASM([this.max_acceleration]); - input.max_jerk = toWASM([this.max_jerk]); - - const trajectory = new lib.Trajectory(1); - - const ruckig = new lib.Ruckig(1); - const result = ruckig.calculate(input, trajectory); - - this.hasError = (result.value !== 0); - if (result.value !== 0) { - if (result.value === -100) { - this.errorMessage = 'Invalid input parameters.'; - } else if (result.value === -101) { - this.errorMessage = 'The trajectory duration exceeds its numerical limits.'; - } else { - this.errorMessage = 'Unknown error.'; - } - return; - } - - const duration = trajectory.get_duration(); - - let ts = [], ps = [], vs = [], as = [], js = []; - for (let t = 0; t < duration; t += duration / 100) { - const state = trajectory.at_time(t); - - ts.push(t); - ps.push(state.position.get(0)); - vs.push(state.velocity.get(0)); - as.push(state.acceleration.get(0)); - js.push(state.jerk.get(0)); - } - const data = [ - {x: ts, y: ps, name: 'Position'}, - {x: ts, y: vs, name: 'Velocity'}, - {x: ts, y: as, name: 'Acceleration'}, - {x: ts, y: js, name: 'Jerk'}, - ]; - const layout = { - title: 'Trajectory', - autosize: true, - dragmode: 'pan', - margin: { - l: 50, r: 10, - b: 70, t: 50, - pad: 10 - }, - hovermode: "x", - shapes: [{ - type: 'line', - xref: 'x', yref: 'paper', - x0: duration, y0: -10, - x1: duration, y1: 10, - line: { - color: 'black', - width: 0.5, - } - }] - }; - const config = { - modeBarButtonsToRemove: ['zoom'], - scrollZoom: true, - } - Plotly.newPlot('plot', data, layout, config); - } - })); - - Alpine.start(); -}); diff --git a/doc/web-gui/src/index.html b/doc/web-gui/src/index.html deleted file mode 100644 index d4be35b4..00000000 --- a/doc/web-gui/src/index.html +++ /dev/null @@ -1,111 +0,0 @@ - - - - - - Ruckig Visualization - - -
-

Ruckig

-

Web Visualization

- -
-
-
-
Current State
- -
- -
- -
-
-
- -
- -
-
-
- -
- -
-
-
-
-
-
-
Target State
- -
- -
- -
-
-
- -
- -
-
-
- -
- -
-
-
-
-
-
-
Limits
- -
- -
- -
-
-
- -
- -
-
-
- -
- -
-
-
-
-
- - - -
-
- - - - diff --git a/doc/web-gui/src/ruckig.js b/doc/web-gui/src/ruckig.js deleted file mode 100644 index 4ef6c68e..00000000 --- a/doc/web-gui/src/ruckig.js +++ /dev/null @@ -1,16 +0,0 @@ - -var RuckigModule = (() => { - var _scriptDir = import.meta.url; - - return ( -function(moduleArg = {}) { - -var Module=moduleArg;var readyPromiseResolve,readyPromiseReject;Module["ready"]=new Promise(((resolve,reject)=>{readyPromiseResolve=resolve;readyPromiseReject=reject}));var moduleOverrides=Object.assign({},Module);var arguments_=[];var thisProgram="./this.program";var quit_=(status,toThrow)=>{throw toThrow};var ENVIRONMENT_IS_WEB=true;var ENVIRONMENT_IS_WORKER=false;var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary,setWindowTitle;if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}else if(typeof document!="undefined"&&document.currentScript){scriptDirectory=document.currentScript.src}if(_scriptDir){scriptDirectory=_scriptDir}if(scriptDirectory.indexOf("blob:")!==0){scriptDirectory=scriptDirectory.substr(0,scriptDirectory.replace(/[?#].*/,"").lastIndexOf("/")+1)}else{scriptDirectory=""}{read_=url=>{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText};if(ENVIRONMENT_IS_WORKER){readBinary=url=>{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}}readAsync=(url,onload,onerror)=>{var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=()=>{if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}onerror()};xhr.onerror=onerror;xhr.send(null)}}setWindowTitle=title=>document.title=title}else{}var out=Module["print"]||console.log.bind(console);var err=Module["printErr"]||console.error.bind(console);Object.assign(Module,moduleOverrides);moduleOverrides=null;if(Module["arguments"])arguments_=Module["arguments"];if(Module["thisProgram"])thisProgram=Module["thisProgram"];if(Module["quit"])quit_=Module["quit"];var wasmBinary;if(Module["wasmBinary"])wasmBinary=Module["wasmBinary"];var noExitRuntime=Module["noExitRuntime"]||true;if(typeof WebAssembly!="object"){abort("no native wasm support detected")}var wasmMemory;var ABORT=false;var EXITSTATUS;var HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateMemoryViews(){var b=wasmMemory.buffer;Module["HEAP8"]=HEAP8=new Int8Array(b);Module["HEAP16"]=HEAP16=new Int16Array(b);Module["HEAP32"]=HEAP32=new Int32Array(b);Module["HEAPU8"]=HEAPU8=new Uint8Array(b);Module["HEAPU16"]=HEAPU16=new Uint16Array(b);Module["HEAPU32"]=HEAPU32=new Uint32Array(b);Module["HEAPF32"]=HEAPF32=new Float32Array(b);Module["HEAPF64"]=HEAPF64=new Float64Array(b)}var wasmTable;var __ATPRERUN__=[];var __ATINIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function initRuntime(){runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnInit(cb){__ATINIT__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}}function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}what="Aborted("+what+")";err(what);ABORT=true;EXITSTATUS=1;what+=". Build with -sASSERTIONS for more info.";var e=new WebAssembly.RuntimeError(what);readyPromiseReject(e);throw e}var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return filename.startsWith(dataURIPrefix)}var wasmBinaryFile;if(Module["locateFile"]){wasmBinaryFile="ruckig.wasm";if(!isDataURI(wasmBinaryFile)){wasmBinaryFile=locateFile(wasmBinaryFile)}}else{wasmBinaryFile=new URL("ruckig.wasm",import.meta.url).href}function getBinarySync(file){if(file==wasmBinaryFile&&wasmBinary){return new Uint8Array(wasmBinary)}if(readBinary){return readBinary(file)}throw"both async and sync fetching of the wasm failed"}function getBinaryPromise(binaryFile){if(!wasmBinary&&(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)){if(typeof fetch=="function"){return fetch(binaryFile,{credentials:"same-origin"}).then((response=>{if(!response["ok"]){throw"failed to load wasm binary file at '"+binaryFile+"'"}return response["arrayBuffer"]()})).catch((()=>getBinarySync(binaryFile)))}}return Promise.resolve().then((()=>getBinarySync(binaryFile)))}function instantiateArrayBuffer(binaryFile,imports,receiver){return getBinaryPromise(binaryFile).then((binary=>WebAssembly.instantiate(binary,imports))).then((instance=>instance)).then(receiver,(reason=>{err("failed to asynchronously prepare wasm: "+reason);abort(reason)}))}function instantiateAsync(binary,binaryFile,imports,callback){if(!binary&&typeof WebAssembly.instantiateStreaming=="function"&&!isDataURI(binaryFile)&&typeof fetch=="function"){return fetch(binaryFile,{credentials:"same-origin"}).then((response=>{var result=WebAssembly.instantiateStreaming(response,imports);return result.then(callback,(function(reason){err("wasm streaming compile failed: "+reason);err("falling back to ArrayBuffer instantiation");return instantiateArrayBuffer(binaryFile,imports,callback)}))}))}return instantiateArrayBuffer(binaryFile,imports,callback)}function createWasm(){var info={"a":wasmImports};function receiveInstance(instance,module){var exports=instance.exports;Module["asm"]=exports;wasmMemory=Module["asm"]["y"];updateMemoryViews();wasmTable=Module["asm"]["A"];addOnInit(Module["asm"]["z"]);removeRunDependency("wasm-instantiate");return exports}addRunDependency("wasm-instantiate");function receiveInstantiationResult(result){receiveInstance(result["instance"])}if(Module["instantiateWasm"]){try{return Module["instantiateWasm"](info,receiveInstance)}catch(e){err("Module.instantiateWasm callback failed with error: "+e);readyPromiseReject(e)}}instantiateAsync(wasmBinary,wasmBinaryFile,info,receiveInstantiationResult).catch(readyPromiseReject);return{}}var callRuntimeCallbacks=callbacks=>{while(callbacks.length>0){callbacks.shift()(Module)}};function ExceptionInfo(excPtr){this.excPtr=excPtr;this.ptr=excPtr-24;this.set_type=function(type){HEAPU32[this.ptr+4>>2]=type};this.get_type=function(){return HEAPU32[this.ptr+4>>2]};this.set_destructor=function(destructor){HEAPU32[this.ptr+8>>2]=destructor};this.get_destructor=function(){return HEAPU32[this.ptr+8>>2]};this.set_caught=function(caught){caught=caught?1:0;HEAP8[this.ptr+12>>0]=caught};this.get_caught=function(){return HEAP8[this.ptr+12>>0]!=0};this.set_rethrown=function(rethrown){rethrown=rethrown?1:0;HEAP8[this.ptr+13>>0]=rethrown};this.get_rethrown=function(){return HEAP8[this.ptr+13>>0]!=0};this.init=function(type,destructor){this.set_adjusted_ptr(0);this.set_type(type);this.set_destructor(destructor)};this.set_adjusted_ptr=function(adjustedPtr){HEAPU32[this.ptr+16>>2]=adjustedPtr};this.get_adjusted_ptr=function(){return HEAPU32[this.ptr+16>>2]};this.get_exception_ptr=function(){var isPointer=___cxa_is_pointer_type(this.get_type());if(isPointer){return HEAPU32[this.excPtr>>2]}var adjusted=this.get_adjusted_ptr();if(adjusted!==0)return adjusted;return this.excPtr}}var exceptionLast=0;var uncaughtExceptionCount=0;function ___cxa_throw(ptr,type,destructor){var info=new ExceptionInfo(ptr);info.init(type,destructor);exceptionLast=ptr;uncaughtExceptionCount++;throw exceptionLast}function __embind_register_bigint(primitiveType,name,size,minRange,maxRange){}function getShiftFromSize(size){switch(size){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError(`Unknown type size: ${size}`)}}function embind_init_charCodes(){var codes=new Array(256);for(var i=0;i<256;++i){codes[i]=String.fromCharCode(i)}embind_charCodes=codes}var embind_charCodes=undefined;function readLatin1String(ptr){var ret="";var c=ptr;while(HEAPU8[c]){ret+=embind_charCodes[HEAPU8[c++]]}return ret}var awaitingDependencies={};var registeredTypes={};var typeDependencies={};var BindingError=undefined;function throwBindingError(message){throw new BindingError(message)}var InternalError=undefined;function throwInternalError(message){throw new InternalError(message)}function whenDependentTypesAreResolved(myTypes,dependentTypes,getTypeConverters){myTypes.forEach((function(type){typeDependencies[type]=dependentTypes}));function onComplete(typeConverters){var myTypeConverters=getTypeConverters(typeConverters);if(myTypeConverters.length!==myTypes.length){throwInternalError("Mismatched type converter count")}for(var i=0;i{if(registeredTypes.hasOwnProperty(dt)){typeConverters[i]=registeredTypes[dt]}else{unregisteredTypes.push(dt);if(!awaitingDependencies.hasOwnProperty(dt)){awaitingDependencies[dt]=[]}awaitingDependencies[dt].push((()=>{typeConverters[i]=registeredTypes[dt];++registered;if(registered===unregisteredTypes.length){onComplete(typeConverters)}}))}}));if(0===unregisteredTypes.length){onComplete(typeConverters)}}function sharedRegisterType(rawType,registeredInstance,options={}){var name=registeredInstance.name;if(!rawType){throwBindingError(`type "${name}" must have a positive integer typeid pointer`)}if(registeredTypes.hasOwnProperty(rawType)){if(options.ignoreDuplicateRegistrations){return}else{throwBindingError(`Cannot register type '${name}' twice`)}}registeredTypes[rawType]=registeredInstance;delete typeDependencies[rawType];if(awaitingDependencies.hasOwnProperty(rawType)){var callbacks=awaitingDependencies[rawType];delete awaitingDependencies[rawType];callbacks.forEach((cb=>cb()))}}function registerType(rawType,registeredInstance,options={}){if(!("argPackAdvance"in registeredInstance)){throw new TypeError("registerType registeredInstance requires argPackAdvance")}return sharedRegisterType(rawType,registeredInstance,options)}function __embind_register_bool(rawType,name,size,trueValue,falseValue){var shift=getShiftFromSize(size);name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":function(wt){return!!wt},"toWireType":function(destructors,o){return o?trueValue:falseValue},"argPackAdvance":8,"readValueFromPointer":function(pointer){var heap;if(size===1){heap=HEAP8}else if(size===2){heap=HEAP16}else if(size===4){heap=HEAP32}else{throw new TypeError("Unknown boolean type size: "+name)}return this["fromWireType"](heap[pointer>>shift])},destructorFunction:null})}function ClassHandle_isAliasOf(other){if(!(this instanceof ClassHandle)){return false}if(!(other instanceof ClassHandle)){return false}var leftClass=this.$$.ptrType.registeredClass;var left=this.$$.ptr;var rightClass=other.$$.ptrType.registeredClass;var right=other.$$.ptr;while(leftClass.baseClass){left=leftClass.upcast(left);leftClass=leftClass.baseClass}while(rightClass.baseClass){right=rightClass.upcast(right);rightClass=rightClass.baseClass}return leftClass===rightClass&&left===right}function shallowCopyInternalPointer(o){return{count:o.count,deleteScheduled:o.deleteScheduled,preservePointerOnDelete:o.preservePointerOnDelete,ptr:o.ptr,ptrType:o.ptrType,smartPtr:o.smartPtr,smartPtrType:o.smartPtrType}}function throwInstanceAlreadyDeleted(obj){function getInstanceTypeName(handle){return handle.$$.ptrType.registeredClass.name}throwBindingError(getInstanceTypeName(obj)+" instance already deleted")}var finalizationRegistry=false;function detachFinalizer(handle){}function runDestructor($$){if($$.smartPtr){$$.smartPtrType.rawDestructor($$.smartPtr)}else{$$.ptrType.registeredClass.rawDestructor($$.ptr)}}function releaseClassHandle($$){$$.count.value-=1;var toDelete=0===$$.count.value;if(toDelete){runDestructor($$)}}function downcastPointer(ptr,ptrClass,desiredClass){if(ptrClass===desiredClass){return ptr}if(undefined===desiredClass.baseClass){return null}var rv=downcastPointer(ptr,ptrClass,desiredClass.baseClass);if(rv===null){return null}return desiredClass.downcast(rv)}var registeredPointers={};function getInheritedInstanceCount(){return Object.keys(registeredInstances).length}function getLiveInheritedInstances(){var rv=[];for(var k in registeredInstances){if(registeredInstances.hasOwnProperty(k)){rv.push(registeredInstances[k])}}return rv}var deletionQueue=[];function flushPendingDeletes(){while(deletionQueue.length){var obj=deletionQueue.pop();obj.$$.deleteScheduled=false;obj["delete"]()}}var delayFunction=undefined;function setDelayFunction(fn){delayFunction=fn;if(deletionQueue.length&&delayFunction){delayFunction(flushPendingDeletes)}}function init_embind(){Module["getInheritedInstanceCount"]=getInheritedInstanceCount;Module["getLiveInheritedInstances"]=getLiveInheritedInstances;Module["flushPendingDeletes"]=flushPendingDeletes;Module["setDelayFunction"]=setDelayFunction}var registeredInstances={};function getBasestPointer(class_,ptr){if(ptr===undefined){throwBindingError("ptr should not be undefined")}while(class_.baseClass){ptr=class_.upcast(ptr);class_=class_.baseClass}return ptr}function getInheritedInstance(class_,ptr){ptr=getBasestPointer(class_,ptr);return registeredInstances[ptr]}function makeClassHandle(prototype,record){if(!record.ptrType||!record.ptr){throwInternalError("makeClassHandle requires ptr and ptrType")}var hasSmartPtrType=!!record.smartPtrType;var hasSmartPtr=!!record.smartPtr;if(hasSmartPtrType!==hasSmartPtr){throwInternalError("Both smartPtrType and smartPtr must be specified")}record.count={value:1};return attachFinalizer(Object.create(prototype,{$$:{value:record}}))}function RegisteredPointer_fromWireType(ptr){var rawPointer=this.getPointee(ptr);if(!rawPointer){this.destructor(ptr);return null}var registeredInstance=getInheritedInstance(this.registeredClass,rawPointer);if(undefined!==registeredInstance){if(0===registeredInstance.$$.count.value){registeredInstance.$$.ptr=rawPointer;registeredInstance.$$.smartPtr=ptr;return registeredInstance["clone"]()}else{var rv=registeredInstance["clone"]();this.destructor(ptr);return rv}}function makeDefaultHandle(){if(this.isSmartPointer){return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:rawPointer,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this,ptr:ptr})}}var actualType=this.registeredClass.getActualType(rawPointer);var registeredPointerRecord=registeredPointers[actualType];if(!registeredPointerRecord){return makeDefaultHandle.call(this)}var toType;if(this.isConst){toType=registeredPointerRecord.constPointerType}else{toType=registeredPointerRecord.pointerType}var dp=downcastPointer(rawPointer,this.registeredClass,toType.registeredClass);if(dp===null){return makeDefaultHandle.call(this)}if(this.isSmartPointer){return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp})}}var attachFinalizer=function(handle){if("undefined"===typeof FinalizationRegistry){attachFinalizer=handle=>handle;return handle}finalizationRegistry=new FinalizationRegistry((info=>{releaseClassHandle(info.$$)}));attachFinalizer=handle=>{var $$=handle.$$;var hasSmartPtr=!!$$.smartPtr;if(hasSmartPtr){var info={$$:$$};finalizationRegistry.register(handle,info,handle)}return handle};detachFinalizer=handle=>finalizationRegistry.unregister(handle);return attachFinalizer(handle)};function ClassHandle_clone(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.preservePointerOnDelete){this.$$.count.value+=1;return this}else{var clone=attachFinalizer(Object.create(Object.getPrototypeOf(this),{$$:{value:shallowCopyInternalPointer(this.$$)}}));clone.$$.count.value+=1;clone.$$.deleteScheduled=false;return clone}}function ClassHandle_delete(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}detachFinalizer(this);releaseClassHandle(this.$$);if(!this.$$.preservePointerOnDelete){this.$$.smartPtr=undefined;this.$$.ptr=undefined}}function ClassHandle_isDeleted(){return!this.$$.ptr}function ClassHandle_deleteLater(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}deletionQueue.push(this);if(deletionQueue.length===1&&delayFunction){delayFunction(flushPendingDeletes)}this.$$.deleteScheduled=true;return this}function init_ClassHandle(){ClassHandle.prototype["isAliasOf"]=ClassHandle_isAliasOf;ClassHandle.prototype["clone"]=ClassHandle_clone;ClassHandle.prototype["delete"]=ClassHandle_delete;ClassHandle.prototype["isDeleted"]=ClassHandle_isDeleted;ClassHandle.prototype["deleteLater"]=ClassHandle_deleteLater}function ClassHandle(){}var char_0=48;var char_9=57;function makeLegalFunctionName(name){if(undefined===name){return"_unknown"}name=name.replace(/[^a-zA-Z0-9_]/g,"$");var f=name.charCodeAt(0);if(f>=char_0&&f<=char_9){return`_${name}`}return name}function createNamedFunction(name,body){name=makeLegalFunctionName(name);return{[name]:function(){return body.apply(this,arguments)}}[name]}function ensureOverloadTable(proto,methodName,humanName){if(undefined===proto[methodName].overloadTable){var prevFunc=proto[methodName];proto[methodName]=function(){if(!proto[methodName].overloadTable.hasOwnProperty(arguments.length)){throwBindingError(`Function '${humanName}' called with an invalid number of arguments (${arguments.length}) - expects one of (${proto[methodName].overloadTable})!`)}return proto[methodName].overloadTable[arguments.length].apply(this,arguments)};proto[methodName].overloadTable=[];proto[methodName].overloadTable[prevFunc.argCount]=prevFunc}}function exposePublicSymbol(name,value,numArguments){if(Module.hasOwnProperty(name)){if(undefined===numArguments||undefined!==Module[name].overloadTable&&undefined!==Module[name].overloadTable[numArguments]){throwBindingError(`Cannot register public name '${name}' twice`)}ensureOverloadTable(Module,name,name);if(Module.hasOwnProperty(numArguments)){throwBindingError(`Cannot register multiple overloads of a function with the same number of arguments (${numArguments})!`)}Module[name].overloadTable[numArguments]=value}else{Module[name]=value;if(undefined!==numArguments){Module[name].numArguments=numArguments}}}function RegisteredClass(name,constructor,instancePrototype,rawDestructor,baseClass,getActualType,upcast,downcast){this.name=name;this.constructor=constructor;this.instancePrototype=instancePrototype;this.rawDestructor=rawDestructor;this.baseClass=baseClass;this.getActualType=getActualType;this.upcast=upcast;this.downcast=downcast;this.pureVirtualFunctions=[]}function upcastPointer(ptr,ptrClass,desiredClass){while(ptrClass!==desiredClass){if(!ptrClass.upcast){throwBindingError(`Expected null or instance of ${desiredClass.name}, got an instance of ${ptrClass.name}`)}ptr=ptrClass.upcast(ptr);ptrClass=ptrClass.baseClass}return ptr}function constNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError(`null is not a valid ${this.name}`)}return 0}if(!handle.$$){throwBindingError(`Cannot pass "${embindRepr(handle)}" as a ${this.name}`)}if(!handle.$$.ptr){throwBindingError(`Cannot pass deleted object as a pointer of type ${this.name}`)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function genericPointerToWireType(destructors,handle){var ptr;if(handle===null){if(this.isReference){throwBindingError(`null is not a valid ${this.name}`)}if(this.isSmartPointer){ptr=this.rawConstructor();if(destructors!==null){destructors.push(this.rawDestructor,ptr)}return ptr}else{return 0}}if(!handle.$$){throwBindingError(`Cannot pass "${embindRepr(handle)}" as a ${this.name}`)}if(!handle.$$.ptr){throwBindingError(`Cannot pass deleted object as a pointer of type ${this.name}`)}if(!this.isConst&&handle.$$.ptrType.isConst){throwBindingError(`Cannot convert argument of type ${handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name} to parameter type ${this.name}`)}var handleClass=handle.$$.ptrType.registeredClass;ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);if(this.isSmartPointer){if(undefined===handle.$$.smartPtr){throwBindingError("Passing raw pointer to smart pointer is illegal")}switch(this.sharingPolicy){case 0:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{throwBindingError(`Cannot convert argument of type ${handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name} to parameter type ${this.name}`)}break;case 1:ptr=handle.$$.smartPtr;break;case 2:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{var clonedHandle=handle["clone"]();ptr=this.rawShare(ptr,Emval.toHandle((function(){clonedHandle["delete"]()})));if(destructors!==null){destructors.push(this.rawDestructor,ptr)}}break;default:throwBindingError("Unsupporting sharing policy")}}return ptr}function nonConstNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError(`null is not a valid ${this.name}`)}return 0}if(!handle.$$){throwBindingError(`Cannot pass "${embindRepr(handle)}" as a ${this.name}`)}if(!handle.$$.ptr){throwBindingError(`Cannot pass deleted object as a pointer of type ${this.name}`)}if(handle.$$.ptrType.isConst){throwBindingError(`Cannot convert argument of type ${handle.$$.ptrType.name} to parameter type ${this.name}`)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function simpleReadValueFromPointer(pointer){return this["fromWireType"](HEAP32[pointer>>2])}function RegisteredPointer_getPointee(ptr){if(this.rawGetPointee){ptr=this.rawGetPointee(ptr)}return ptr}function RegisteredPointer_destructor(ptr){if(this.rawDestructor){this.rawDestructor(ptr)}}function RegisteredPointer_deleteObject(handle){if(handle!==null){handle["delete"]()}}function init_RegisteredPointer(){RegisteredPointer.prototype.getPointee=RegisteredPointer_getPointee;RegisteredPointer.prototype.destructor=RegisteredPointer_destructor;RegisteredPointer.prototype["argPackAdvance"]=8;RegisteredPointer.prototype["readValueFromPointer"]=simpleReadValueFromPointer;RegisteredPointer.prototype["deleteObject"]=RegisteredPointer_deleteObject;RegisteredPointer.prototype["fromWireType"]=RegisteredPointer_fromWireType}function RegisteredPointer(name,registeredClass,isReference,isConst,isSmartPointer,pointeeType,sharingPolicy,rawGetPointee,rawConstructor,rawShare,rawDestructor){this.name=name;this.registeredClass=registeredClass;this.isReference=isReference;this.isConst=isConst;this.isSmartPointer=isSmartPointer;this.pointeeType=pointeeType;this.sharingPolicy=sharingPolicy;this.rawGetPointee=rawGetPointee;this.rawConstructor=rawConstructor;this.rawShare=rawShare;this.rawDestructor=rawDestructor;if(!isSmartPointer&®isteredClass.baseClass===undefined){if(isConst){this["toWireType"]=constNoSmartPtrRawPointerToWireType;this.destructorFunction=null}else{this["toWireType"]=nonConstNoSmartPtrRawPointerToWireType;this.destructorFunction=null}}else{this["toWireType"]=genericPointerToWireType}}function replacePublicSymbol(name,value,numArguments){if(!Module.hasOwnProperty(name)){throwInternalError("Replacing nonexistant public symbol")}if(undefined!==Module[name].overloadTable&&undefined!==numArguments){Module[name].overloadTable[numArguments]=value}else{Module[name]=value;Module[name].argCount=numArguments}}var dynCallLegacy=(sig,ptr,args)=>{var f=Module["dynCall_"+sig];return args&&args.length?f.apply(null,[ptr].concat(args)):f.call(null,ptr)};var getWasmTableEntry=funcPtr=>wasmTable.get(funcPtr);var dynCall=(sig,ptr,args)=>{if(sig.includes("j")){return dynCallLegacy(sig,ptr,args)}var rtn=getWasmTableEntry(ptr).apply(null,args);return rtn};var getDynCaller=(sig,ptr)=>{var argCache=[];return function(){argCache.length=0;Object.assign(argCache,arguments);return dynCall(sig,ptr,argCache)}};function embind__requireFunction(signature,rawFunction){signature=readLatin1String(signature);function makeDynCaller(){if(signature.includes("j")){return getDynCaller(signature,rawFunction)}return getWasmTableEntry(rawFunction)}var fp=makeDynCaller();if(typeof fp!="function"){throwBindingError(`unknown function pointer with signature ${signature}: ${rawFunction}`)}return fp}function extendError(baseErrorType,errorName){var errorClass=createNamedFunction(errorName,(function(message){this.name=errorName;this.message=message;var stack=new Error(message).stack;if(stack!==undefined){this.stack=this.toString()+"\n"+stack.replace(/^Error(:[^\n]*)?\n/,"")}}));errorClass.prototype=Object.create(baseErrorType.prototype);errorClass.prototype.constructor=errorClass;errorClass.prototype.toString=function(){if(this.message===undefined){return this.name}else{return`${this.name}: ${this.message}`}};return errorClass}var UnboundTypeError=undefined;function getTypeName(type){var ptr=___getTypeName(type);var rv=readLatin1String(ptr);_free(ptr);return rv}function throwUnboundTypeError(message,types){var unboundTypes=[];var seen={};function visit(type){if(seen[type]){return}if(registeredTypes[type]){return}if(typeDependencies[type]){typeDependencies[type].forEach(visit);return}unboundTypes.push(type);seen[type]=true}types.forEach(visit);throw new UnboundTypeError(`${message}: `+unboundTypes.map(getTypeName).join([", "]))}function __embind_register_class(rawType,rawPointerType,rawConstPointerType,baseClassRawType,getActualTypeSignature,getActualType,upcastSignature,upcast,downcastSignature,downcast,name,destructorSignature,rawDestructor){name=readLatin1String(name);getActualType=embind__requireFunction(getActualTypeSignature,getActualType);if(upcast){upcast=embind__requireFunction(upcastSignature,upcast)}if(downcast){downcast=embind__requireFunction(downcastSignature,downcast)}rawDestructor=embind__requireFunction(destructorSignature,rawDestructor);var legalFunctionName=makeLegalFunctionName(name);exposePublicSymbol(legalFunctionName,(function(){throwUnboundTypeError(`Cannot construct ${name} due to unbound types`,[baseClassRawType])}));whenDependentTypesAreResolved([rawType,rawPointerType,rawConstPointerType],baseClassRawType?[baseClassRawType]:[],(function(base){base=base[0];var baseClass;var basePrototype;if(baseClassRawType){baseClass=base.registeredClass;basePrototype=baseClass.instancePrototype}else{basePrototype=ClassHandle.prototype}var constructor=createNamedFunction(legalFunctionName,(function(){if(Object.getPrototypeOf(this)!==instancePrototype){throw new BindingError("Use 'new' to construct "+name)}if(undefined===registeredClass.constructor_body){throw new BindingError(name+" has no accessible constructor")}var body=registeredClass.constructor_body[arguments.length];if(undefined===body){throw new BindingError(`Tried to invoke ctor of ${name} with invalid number of parameters (${arguments.length}) - expected (${Object.keys(registeredClass.constructor_body).toString()}) parameters instead!`)}return body.apply(this,arguments)}));var instancePrototype=Object.create(basePrototype,{constructor:{value:constructor}});constructor.prototype=instancePrototype;var registeredClass=new RegisteredClass(name,constructor,instancePrototype,rawDestructor,baseClass,getActualType,upcast,downcast);if(registeredClass.baseClass){if(registeredClass.baseClass.__derivedClasses===undefined){registeredClass.baseClass.__derivedClasses=[]}registeredClass.baseClass.__derivedClasses.push(registeredClass)}var referenceConverter=new RegisteredPointer(name,registeredClass,true,false,false);var pointerConverter=new RegisteredPointer(name+"*",registeredClass,false,false,false);var constPointerConverter=new RegisteredPointer(name+" const*",registeredClass,false,true,false);registeredPointers[rawType]={pointerType:pointerConverter,constPointerType:constPointerConverter};replacePublicSymbol(legalFunctionName,constructor);return[referenceConverter,pointerConverter,constPointerConverter]}))}function heap32VectorToArray(count,firstElement){var array=[];for(var i=0;i>2])}return array}function runDestructors(destructors){while(destructors.length){var ptr=destructors.pop();var del=destructors.pop();del(ptr)}}function newFunc(constructor,argumentList){if(!(constructor instanceof Function)){throw new TypeError(`new_ called with constructor type ${typeof constructor} which is not a function`)}var dummy=createNamedFunction(constructor.name||"unknownFunctionName",(function(){}));dummy.prototype=constructor.prototype;var obj=new dummy;var r=constructor.apply(obj,argumentList);return r instanceof Object?r:obj}function craftInvokerFunction(humanName,argTypes,classType,cppInvokerFunc,cppTargetFunc,isAsync){var argCount=argTypes.length;if(argCount<2){throwBindingError("argTypes array size mismatch! Must at least get return value and 'this' types!")}var isClassMethodFunc=argTypes[1]!==null&&classType!==null;var needsDestructorStack=false;for(var i=1;i0?", ":"")+argsListWired}invokerFnBody+=(returns||isAsync?"var rv = ":"")+"invoker(fn"+(argsListWired.length>0?", ":"")+argsListWired+");\n";if(needsDestructorStack){invokerFnBody+="runDestructors(destructors);\n"}else{for(var i=isClassMethodFunc?1:2;i{throwUnboundTypeError(`Cannot construct ${classType.name} due to unbound types`,rawArgTypes)};whenDependentTypesAreResolved([],rawArgTypes,(function(argTypes){argTypes.splice(1,0,null);classType.registeredClass.constructor_body[argCount-1]=craftInvokerFunction(humanName,argTypes,null,invoker,rawConstructor);return[]}));return[]}))}function __embind_register_class_function(rawClassType,methodName,argCount,rawArgTypesAddr,invokerSignature,rawInvoker,context,isPureVirtual,isAsync){var rawArgTypes=heap32VectorToArray(argCount,rawArgTypesAddr);methodName=readLatin1String(methodName);rawInvoker=embind__requireFunction(invokerSignature,rawInvoker);whenDependentTypesAreResolved([],[rawClassType],(function(classType){classType=classType[0];var humanName=`${classType.name}.${methodName}`;if(methodName.startsWith("@@")){methodName=Symbol[methodName.substring(2)]}if(isPureVirtual){classType.registeredClass.pureVirtualFunctions.push(methodName)}function unboundTypesHandler(){throwUnboundTypeError(`Cannot call ${humanName} due to unbound types`,rawArgTypes)}var proto=classType.registeredClass.instancePrototype;var method=proto[methodName];if(undefined===method||undefined===method.overloadTable&&method.className!==classType.name&&method.argCount===argCount-2){unboundTypesHandler.argCount=argCount-2;unboundTypesHandler.className=classType.name;proto[methodName]=unboundTypesHandler}else{ensureOverloadTable(proto,methodName,humanName);proto[methodName].overloadTable[argCount-2]=unboundTypesHandler}whenDependentTypesAreResolved([],rawArgTypes,(function(argTypes){var memberFunction=craftInvokerFunction(humanName,argTypes,classType,rawInvoker,context,isAsync);if(undefined===proto[methodName].overloadTable){memberFunction.argCount=argCount-2;proto[methodName]=memberFunction}else{proto[methodName].overloadTable[argCount-2]=memberFunction}return[]}));return[]}))}function validateThis(this_,classType,humanName){if(!(this_ instanceof Object)){throwBindingError(`${humanName} with invalid "this": ${this_}`)}if(!(this_ instanceof classType.registeredClass.constructor)){throwBindingError(`${humanName} incompatible with "this" of type ${this_.constructor.name}`)}if(!this_.$$.ptr){throwBindingError(`cannot call emscripten binding method ${humanName} on deleted object`)}return upcastPointer(this_.$$.ptr,this_.$$.ptrType.registeredClass,classType.registeredClass)}function __embind_register_class_property(classType,fieldName,getterReturnType,getterSignature,getter,getterContext,setterArgumentType,setterSignature,setter,setterContext){fieldName=readLatin1String(fieldName);getter=embind__requireFunction(getterSignature,getter);whenDependentTypesAreResolved([],[classType],(function(classType){classType=classType[0];var humanName=`${classType.name}.${fieldName}`;var desc={get(){throwUnboundTypeError(`Cannot access ${humanName} due to unbound types`,[getterReturnType,setterArgumentType])},enumerable:true,configurable:true};if(setter){desc.set=()=>{throwUnboundTypeError(`Cannot access ${humanName} due to unbound types`,[getterReturnType,setterArgumentType])}}else{desc.set=v=>{throwBindingError(humanName+" is a read-only property")}}Object.defineProperty(classType.registeredClass.instancePrototype,fieldName,desc);whenDependentTypesAreResolved([],setter?[getterReturnType,setterArgumentType]:[getterReturnType],(function(types){var getterReturnType=types[0];var desc={get(){var ptr=validateThis(this,classType,humanName+" getter");return getterReturnType["fromWireType"](getter(getterContext,ptr))},enumerable:true};if(setter){setter=embind__requireFunction(setterSignature,setter);var setterArgumentType=types[1];desc.set=function(v){var ptr=validateThis(this,classType,humanName+" setter");var destructors=[];setter(setterContext,ptr,setterArgumentType["toWireType"](destructors,v));runDestructors(destructors)}}Object.defineProperty(classType.registeredClass.instancePrototype,fieldName,desc);return[]}));return[]}))}function handleAllocatorInit(){Object.assign(HandleAllocator.prototype,{get(id){return this.allocated[id]},has(id){return this.allocated[id]!==undefined},allocate(handle){var id=this.freelist.pop()||this.allocated.length;this.allocated[id]=handle;return id},free(id){this.allocated[id]=undefined;this.freelist.push(id)}})}function HandleAllocator(){this.allocated=[undefined];this.freelist=[]}var emval_handles=new HandleAllocator;function __emval_decref(handle){if(handle>=emval_handles.reserved&&0===--emval_handles.get(handle).refcount){emval_handles.free(handle)}}function count_emval_handles(){var count=0;for(var i=emval_handles.reserved;i{if(!handle){throwBindingError("Cannot use deleted val. handle = "+handle)}return emval_handles.get(handle).value},toHandle:value=>{switch(value){case undefined:return 1;case null:return 2;case true:return 3;case false:return 4;default:{return emval_handles.allocate({refcount:1,value:value})}}}};function __embind_register_emval(rawType,name){name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":function(handle){var rv=Emval.toValue(handle);__emval_decref(handle);return rv},"toWireType":function(destructors,value){return Emval.toHandle(value)},"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:null})}function enumReadValueFromPointer(name,shift,signed){switch(shift){case 0:return function(pointer){var heap=signed?HEAP8:HEAPU8;return this["fromWireType"](heap[pointer])};case 1:return function(pointer){var heap=signed?HEAP16:HEAPU16;return this["fromWireType"](heap[pointer>>1])};case 2:return function(pointer){var heap=signed?HEAP32:HEAPU32;return this["fromWireType"](heap[pointer>>2])};default:throw new TypeError("Unknown integer type: "+name)}}function __embind_register_enum(rawType,name,size,isSigned){var shift=getShiftFromSize(size);name=readLatin1String(name);function ctor(){}ctor.values={};registerType(rawType,{name:name,constructor:ctor,"fromWireType":function(c){return this.constructor.values[c]},"toWireType":function(destructors,c){return c.value},"argPackAdvance":8,"readValueFromPointer":enumReadValueFromPointer(name,shift,isSigned),destructorFunction:null});exposePublicSymbol(name,ctor)}function requireRegisteredType(rawType,humanName){var impl=registeredTypes[rawType];if(undefined===impl){throwBindingError(humanName+" has unknown type "+getTypeName(rawType))}return impl}function __embind_register_enum_value(rawEnumType,name,enumValue){var enumType=requireRegisteredType(rawEnumType,"enum");name=readLatin1String(name);var Enum=enumType.constructor;var Value=Object.create(enumType.constructor.prototype,{value:{value:enumValue},constructor:{value:createNamedFunction(`${enumType.name}_${name}`,(function(){}))}});Enum.values[enumValue]=Value;Enum[name]=Value}function embindRepr(v){if(v===null){return"null"}var t=typeof v;if(t==="object"||t==="array"||t==="function"){return v.toString()}else{return""+v}}function floatReadValueFromPointer(name,shift){switch(shift){case 2:return function(pointer){return this["fromWireType"](HEAPF32[pointer>>2])};case 3:return function(pointer){return this["fromWireType"](HEAPF64[pointer>>3])};default:throw new TypeError("Unknown float type: "+name)}}function __embind_register_float(rawType,name,size){var shift=getShiftFromSize(size);name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":function(value){return value},"toWireType":function(destructors,value){return value},"argPackAdvance":8,"readValueFromPointer":floatReadValueFromPointer(name,shift),destructorFunction:null})}function integerReadValueFromPointer(name,shift,signed){switch(shift){case 0:return signed?function readS8FromPointer(pointer){return HEAP8[pointer]}:function readU8FromPointer(pointer){return HEAPU8[pointer]};case 1:return signed?function readS16FromPointer(pointer){return HEAP16[pointer>>1]}:function readU16FromPointer(pointer){return HEAPU16[pointer>>1]};case 2:return signed?function readS32FromPointer(pointer){return HEAP32[pointer>>2]}:function readU32FromPointer(pointer){return HEAPU32[pointer>>2]};default:throw new TypeError("Unknown integer type: "+name)}}function __embind_register_integer(primitiveType,name,size,minRange,maxRange){name=readLatin1String(name);if(maxRange===-1){maxRange=4294967295}var shift=getShiftFromSize(size);var fromWireType=value=>value;if(minRange===0){var bitshift=32-8*size;fromWireType=value=>value<>>bitshift}var isUnsignedType=name.includes("unsigned");var checkAssertions=(value,toTypeName)=>{};var toWireType;if(isUnsignedType){toWireType=function(destructors,value){checkAssertions(value,this.name);return value>>>0}}else{toWireType=function(destructors,value){checkAssertions(value,this.name);return value}}registerType(primitiveType,{name:name,"fromWireType":fromWireType,"toWireType":toWireType,"argPackAdvance":8,"readValueFromPointer":integerReadValueFromPointer(name,shift,minRange!==0),destructorFunction:null})}function __embind_register_memory_view(rawType,dataTypeIndex,name){var typeMapping=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];var TA=typeMapping[dataTypeIndex];function decodeMemoryView(handle){handle=handle>>2;var heap=HEAPU32;var size=heap[handle];var data=heap[handle+1];return new TA(heap.buffer,data,size)}name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":decodeMemoryView,"argPackAdvance":8,"readValueFromPointer":decodeMemoryView},{ignoreDuplicateRegistrations:true})}var stringToUTF8Array=(str,heap,outIdx,maxBytesToWrite)=>{if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;heap[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;heap[outIdx++]=192|u>>6;heap[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;heap[outIdx++]=224|u>>12;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}else{if(outIdx+3>=endIdx)break;heap[outIdx++]=240|u>>18;heap[outIdx++]=128|u>>12&63;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}}heap[outIdx]=0;return outIdx-startIdx};var stringToUTF8=(str,outPtr,maxBytesToWrite)=>stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite);var lengthBytesUTF8=str=>{var len=0;for(var i=0;i=55296&&c<=57343){len+=4;++i}else{len+=3}}return len};var UTF8Decoder=typeof TextDecoder!="undefined"?new TextDecoder("utf8"):undefined;var UTF8ArrayToString=(heapOrArray,idx,maxBytesToRead)=>{var endIdx=idx+maxBytesToRead;var endPtr=idx;while(heapOrArray[endPtr]&&!(endPtr>=endIdx))++endPtr;if(endPtr-idx>16&&heapOrArray.buffer&&UTF8Decoder){return UTF8Decoder.decode(heapOrArray.subarray(idx,endPtr))}var str="";while(idx>10,56320|ch&1023)}}return str};var UTF8ToString=(ptr,maxBytesToRead)=>ptr?UTF8ArrayToString(HEAPU8,ptr,maxBytesToRead):"";function __embind_register_std_string(rawType,name){name=readLatin1String(name);var stdStringIsUTF8=name==="std::string";registerType(rawType,{name:name,"fromWireType":function(value){var length=HEAPU32[value>>2];var payload=value+4;var str;if(stdStringIsUTF8){var decodeStartPtr=payload;for(var i=0;i<=length;++i){var currentBytePtr=payload+i;if(i==length||HEAPU8[currentBytePtr]==0){var maxRead=currentBytePtr-decodeStartPtr;var stringSegment=UTF8ToString(decodeStartPtr,maxRead);if(str===undefined){str=stringSegment}else{str+=String.fromCharCode(0);str+=stringSegment}decodeStartPtr=currentBytePtr+1}}}else{var a=new Array(length);for(var i=0;i>2]=length;if(stdStringIsUTF8&&valueIsOfTypeString){stringToUTF8(value,ptr,length+1)}else{if(valueIsOfTypeString){for(var i=0;i255){_free(ptr);throwBindingError("String has UTF-16 code units that do not fit in 8 bits")}HEAPU8[ptr+i]=charCode}}else{for(var i=0;i{var endPtr=ptr;var idx=endPtr>>1;var maxIdx=idx+maxBytesToRead/2;while(!(idx>=maxIdx)&&HEAPU16[idx])++idx;endPtr=idx<<1;if(endPtr-ptr>32&&UTF16Decoder)return UTF16Decoder.decode(HEAPU8.subarray(ptr,endPtr));var str="";for(var i=0;!(i>=maxBytesToRead/2);++i){var codeUnit=HEAP16[ptr+i*2>>1];if(codeUnit==0)break;str+=String.fromCharCode(codeUnit)}return str};var stringToUTF16=(str,outPtr,maxBytesToWrite)=>{if(maxBytesToWrite===undefined){maxBytesToWrite=2147483647}if(maxBytesToWrite<2)return 0;maxBytesToWrite-=2;var startPtr=outPtr;var numCharsToWrite=maxBytesToWrite>1]=codeUnit;outPtr+=2}HEAP16[outPtr>>1]=0;return outPtr-startPtr};var lengthBytesUTF16=str=>str.length*2;var UTF32ToString=(ptr,maxBytesToRead)=>{var i=0;var str="";while(!(i>=maxBytesToRead/4)){var utf32=HEAP32[ptr+i*4>>2];if(utf32==0)break;++i;if(utf32>=65536){var ch=utf32-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}else{str+=String.fromCharCode(utf32)}}return str};var stringToUTF32=(str,outPtr,maxBytesToWrite)=>{if(maxBytesToWrite===undefined){maxBytesToWrite=2147483647}if(maxBytesToWrite<4)return 0;var startPtr=outPtr;var endPtr=startPtr+maxBytesToWrite-4;for(var i=0;i=55296&&codeUnit<=57343){var trailSurrogate=str.charCodeAt(++i);codeUnit=65536+((codeUnit&1023)<<10)|trailSurrogate&1023}HEAP32[outPtr>>2]=codeUnit;outPtr+=4;if(outPtr+4>endPtr)break}HEAP32[outPtr>>2]=0;return outPtr-startPtr};var lengthBytesUTF32=str=>{var len=0;for(var i=0;i=55296&&codeUnit<=57343)++i;len+=4}return len};var __embind_register_std_wstring=function(rawType,charSize,name){name=readLatin1String(name);var decodeString,encodeString,getHeap,lengthBytesUTF,shift;if(charSize===2){decodeString=UTF16ToString;encodeString=stringToUTF16;lengthBytesUTF=lengthBytesUTF16;getHeap=()=>HEAPU16;shift=1}else if(charSize===4){decodeString=UTF32ToString;encodeString=stringToUTF32;lengthBytesUTF=lengthBytesUTF32;getHeap=()=>HEAPU32;shift=2}registerType(rawType,{name:name,"fromWireType":function(value){var length=HEAPU32[value>>2];var HEAP=getHeap();var str;var decodeStartPtr=value+4;for(var i=0;i<=length;++i){var currentBytePtr=value+4+i*charSize;if(i==length||HEAP[currentBytePtr>>shift]==0){var maxReadBytes=currentBytePtr-decodeStartPtr;var stringSegment=decodeString(decodeStartPtr,maxReadBytes);if(str===undefined){str=stringSegment}else{str+=String.fromCharCode(0);str+=stringSegment}decodeStartPtr=currentBytePtr+charSize}}_free(value);return str},"toWireType":function(destructors,value){if(!(typeof value=="string")){throwBindingError(`Cannot pass non-string to C++ string type ${name}`)}var length=lengthBytesUTF(value);var ptr=_malloc(4+length+charSize);HEAPU32[ptr>>2]=length>>shift;encodeString(value,ptr+4,length+charSize);if(destructors!==null){destructors.push(_free,ptr)}return ptr},"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:function(ptr){_free(ptr)}})};function __embind_register_void(rawType,name){name=readLatin1String(name);registerType(rawType,{isVoid:true,name:name,"argPackAdvance":0,"fromWireType":function(){return undefined},"toWireType":function(destructors,o){return undefined}})}var nowIsMonotonic=true;var __emscripten_get_now_is_monotonic=()=>nowIsMonotonic;function __emval_incref(handle){if(handle>4){emval_handles.get(handle).refcount+=1}}function __emval_take_value(type,arg){type=requireRegisteredType(type,"_emval_take_value");var v=type["readValueFromPointer"](arg);return Emval.toHandle(v)}var _abort=()=>{abort("")};var _emscripten_get_now;_emscripten_get_now=()=>performance.now();var _emscripten_memcpy_big=(dest,src,num)=>HEAPU8.copyWithin(dest,src,src+num);var abortOnCannotGrowMemory=requestedSize=>{abort("OOM")};var _emscripten_resize_heap=requestedSize=>{var oldSize=HEAPU8.length;requestedSize>>>=0;abortOnCannotGrowMemory(requestedSize)};function getCFunc(ident){var func=Module["_"+ident];return func}var writeArrayToMemory=(array,buffer)=>{HEAP8.set(array,buffer)};var stringToUTF8OnStack=str=>{var size=lengthBytesUTF8(str)+1;var ret=stackAlloc(size);stringToUTF8(str,ret,size);return ret};var ccall=function(ident,returnType,argTypes,args,opts){var toC={"string":str=>{var ret=0;if(str!==null&&str!==undefined&&str!==0){ret=stringToUTF8OnStack(str)}return ret},"array":arr=>{var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}};function convertReturnValue(ret){if(returnType==="string"){return UTF8ToString(ret)}if(returnType==="boolean")return Boolean(ret);return ret}var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;itype==="number"||type==="boolean"));var numericRet=returnType!=="string";if(numericRet&&numericArgs&&!opts){return getCFunc(ident)}return function(){return ccall(ident,returnType,argTypes,arguments,opts)}};embind_init_charCodes();BindingError=Module["BindingError"]=class BindingError extends Error{constructor(message){super(message);this.name="BindingError"}};InternalError=Module["InternalError"]=class InternalError extends Error{constructor(message){super(message);this.name="InternalError"}};init_ClassHandle();init_embind();init_RegisteredPointer();UnboundTypeError=Module["UnboundTypeError"]=extendError(Error,"UnboundTypeError");handleAllocatorInit();init_emval();var wasmImports={e:___cxa_throw,q:__embind_register_bigint,w:__embind_register_bool,h:__embind_register_class,g:__embind_register_class_constructor,c:__embind_register_class_function,a:__embind_register_class_property,v:__embind_register_emval,i:__embind_register_enum,d:__embind_register_enum_value,m:__embind_register_float,f:__embind_register_integer,b:__embind_register_memory_view,l:__embind_register_std_string,k:__embind_register_std_wstring,x:__embind_register_void,s:__emscripten_get_now_is_monotonic,n:__emval_decref,o:__emval_incref,p:__emval_take_value,j:_abort,r:_emscripten_get_now,u:_emscripten_memcpy_big,t:_emscripten_resize_heap};var asm=createWasm();var ___wasm_call_ctors=function(){return(___wasm_call_ctors=Module["asm"]["z"]).apply(null,arguments)};var ___getTypeName=function(){return(___getTypeName=Module["asm"]["B"]).apply(null,arguments)};var __embind_initialize_bindings=Module["__embind_initialize_bindings"]=function(){return(__embind_initialize_bindings=Module["__embind_initialize_bindings"]=Module["asm"]["C"]).apply(null,arguments)};var ___errno_location=function(){return(___errno_location=Module["asm"]["__errno_location"]).apply(null,arguments)};var _malloc=function(){return(_malloc=Module["asm"]["D"]).apply(null,arguments)};var _free=function(){return(_free=Module["asm"]["E"]).apply(null,arguments)};var stackSave=function(){return(stackSave=Module["asm"]["F"]).apply(null,arguments)};var stackRestore=function(){return(stackRestore=Module["asm"]["G"]).apply(null,arguments)};var stackAlloc=function(){return(stackAlloc=Module["asm"]["H"]).apply(null,arguments)};var ___cxa_is_pointer_type=function(){return(___cxa_is_pointer_type=Module["asm"]["I"]).apply(null,arguments)};Module["ccall"]=ccall;Module["cwrap"]=cwrap;var calledRun;dependenciesFulfilled=function runCaller(){if(!calledRun)run();if(!calledRun)dependenciesFulfilled=runCaller};function run(){if(runDependencies>0){return}preRun();if(runDependencies>0){return}function doRun(){if(calledRun)return;calledRun=true;Module["calledRun"]=true;if(ABORT)return;initRuntime();readyPromiseResolve(Module);if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout((function(){setTimeout((function(){Module["setStatus"]("")}),1);doRun()}),1)}else{doRun()}}if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}run(); - - - return moduleArg.ready -} - -); -})(); -export default RuckigModule; \ No newline at end of file diff --git a/doc/web-gui/src/ruckig.wasm b/doc/web-gui/src/ruckig.wasm deleted file mode 100755 index 3f7f2744be04aa43442f84d319fd04648148894d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 163325 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