diff --git a/.gitignore b/.gitignore index 93f8667..25d07db 100644 --- a/.gitignore +++ b/.gitignore @@ -5,7 +5,7 @@ public prof tsconfig.tsbuildinfo .obsidian +.quartz-cache private/ .replit replit.nix -result diff --git a/content/index.md b/content/index.md deleted file mode 100644 index 737fd7d..0000000 --- a/content/index.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: Example Title -draft: false -tags: - - example-tag -date: 2025-01-10 ---- -Hello World! - -[heres the todo](https://quartz.jzhao.xyz/authoring-content) diff --git a/flake.lock b/flake.lock deleted file mode 100644 index 180f275..0000000 --- a/flake.lock +++ /dev/null @@ -1,61 +0,0 @@ -{ - "nodes": { - "flake-utils": { - "inputs": { - "systems": "systems" - }, - "locked": { - "lastModified": 1731533236, - "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, - "nixpkgs": { - "locked": { - "lastModified": 1737469691, - "narHash": "sha256-nmKOgAU48S41dTPIXAq0AHZSehWUn6ZPrUKijHAMmIk=", - "owner": "nixos", - "repo": "nixpkgs", - "rev": "9e4d5190a9482a1fb9d18adf0bdb83c6e506eaab", - "type": "github" - }, - "original": { - "owner": "nixos", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "root": { - "inputs": { - "flake-utils": "flake-utils", - "nixpkgs": "nixpkgs" - } - }, - "systems": { - "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default", - "type": "github" - } - } - }, - "root": "root", - "version": 7 -} diff --git a/flake.nix b/flake.nix deleted file mode 100644 index 6c03087..0000000 --- a/flake.nix +++ /dev/null @@ -1,37 +0,0 @@ -{ - description = ""; - - inputs.nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; - inputs.flake-utils.url = "github:numtide/flake-utils"; - - outputs = { - self, - nixpkgs, - flake-utils, - }: ( - flake-utils.lib.eachDefaultSystem - (system: let - pkgs = nixpkgs.legacyPackages.${system}; - quartz = self.packages."${system}".quartz; - inherit self; - in { - packages.default = pkgs.stdenv.mkDerivation { - name = "quartz-site"; - src = ./.; - buildPhase = '' - ln -s ${quartz}/lib/node_modules/@jackyzha0/quartz/node_modules node_modules - ${quartz}/bin/quartz build - ''; - installPhase = '' - cp -r public $out - ''; - }; - packages.quartz = pkgs.buildNpmPackage { - name = "quartz"; - src = ./.; - npmDepsHash = "sha256-hawMRXs2VvIeZ7hP8NZDBU8yqg/f2cTzmGEvn+VzjE4="; - dontNpmBuild = true; - }; - }) - ); -} diff --git a/package-lock.json b/package-lock.json index 30d740c..7ccfef6 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,8 +9,8 @@ "version": "4.4.0", "license": "MIT", "dependencies": { - "@clack/prompts": "^0.9.1", - "@floating-ui/dom": "^1.6.13", + "@clack/prompts": "^0.9.0", + "@floating-ui/dom": "^1.6.12", "@myriaddreamin/rehype-typst": "^0.5.4", "@napi-rs/simple-git": "0.1.19", "@tweenjs/tween.js": "^25.0.0", @@ -29,14 +29,14 @@ "hast-util-to-string": "^3.0.1", "is-absolute-url": "^4.0.1", "js-yaml": "^4.1.0", - "lightningcss": "^1.29.1", - "mdast-util-find-and-replace": "^3.0.2", + "lightningcss": "^1.28.2", + "mdast-util-find-and-replace": "^3.0.1", "mdast-util-to-hast": "^13.2.0", "mdast-util-to-string": "^4.0.0", "micromorph": "^0.4.5", "pixi.js": "^8.6.6", "preact": "^10.25.4", - "preact-render-to-string": "^6.5.13", + "preact-render-to-string": "^6.5.12", "pretty-bytes": "^6.1.1", "pretty-time": "^1.1.0", "reading-time": "^1.5.0", @@ -57,10 +57,10 @@ "remark-smartypants": "^3.0.2", "rfdc": "^1.4.1", "rimraf": "^6.0.1", - "satori": "^0.12.1", + "satori": "^0.12.0", "serve-handler": "^6.1.6", "sharp": "^0.33.5", - "shiki": "^1.26.2", + "shiki": "^1.24.4", "source-map-support": "^0.5.21", "to-vfile": "^8.0.0", "toml": "^3.0.0", @@ -79,7 +79,7 @@ "@types/d3": "^7.4.3", "@types/hast": "^3.0.4", "@types/js-yaml": "^4.0.9", - "@types/node": "^22.10.6", + "@types/node": "^22.10.2", "@types/pretty-time": "^1.1.5", "@types/source-map-support": "^0.5.10", "@types/ws": "^8.5.13", @@ -87,7 +87,7 @@ "esbuild": "^0.24.2", "prettier": "^3.4.2", "tsx": "^4.19.2", - "typescript": "^5.7.3" + "typescript": "^5.7.2" }, "engines": { "node": "20 || >=22", @@ -187,20 +187,20 @@ } }, "node_modules/@clack/core": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/@clack/core/-/core-0.4.1.tgz", - "integrity": "sha512-Pxhij4UXg8KSr7rPek6Zowm+5M22rbd2g1nfojHJkxp5YkFqiZ2+YLEM/XGVIzvGOcM0nqjIFxrpDwWRZYWYjA==", + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/@clack/core/-/core-0.4.0.tgz", + "integrity": "sha512-YJCYBsyJfNDaTbvDUVSJ3SgSuPrcujarRgkJ5NLjexDZKvaOiVVJvAQYx8lIgG0qRT8ff0fPgqyBCVivanIZ+A==", "dependencies": { "picocolors": "^1.0.0", "sisteransi": "^1.0.5" } }, "node_modules/@clack/prompts": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/@clack/prompts/-/prompts-0.9.1.tgz", - "integrity": "sha512-JIpyaboYZeWYlyP0H+OoPPxd6nqueG/CmN6ixBiNFsIDHREevjIf0n0Ohh5gr5C8pEDknzgvz+pIJ8dMhzWIeg==", + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/@clack/prompts/-/prompts-0.9.0.tgz", + "integrity": "sha512-nGsytiExgUr4FL0pR/LeqxA28nz3E0cW7eLTSh3Iod9TGrbBt8Y7BHbV3mmkNC4G0evdYyQ3ZsbiBkk7ektArA==", "dependencies": { - "@clack/core": "0.4.1", + "@clack/core": "0.4.0", "picocolors": "^1.0.0", "sisteransi": "^1.0.5" } @@ -600,18 +600,18 @@ } }, "node_modules/@floating-ui/dom": { - "version": "1.6.13", - "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.6.13.tgz", - "integrity": "sha512-umqzocjDgNRGTuO7Q8CU32dkHkECqI8ZdMZ5Swb6QAM0t5rnlrN3lGo1hdpscRd3WS8T6DKYK4ephgIH9iRh3w==", + "version": "1.6.12", + "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.6.12.tgz", + "integrity": "sha512-NP83c0HjokcGVEMeoStg317VD9W7eDlGK7457dMBANbKA6GJZdc7rjujdgqzTaz93jkGgc5P/jeWbaCHnMNc+w==", "dependencies": { "@floating-ui/core": "^1.6.0", - "@floating-ui/utils": "^0.2.9" + "@floating-ui/utils": "^0.2.8" } }, "node_modules/@floating-ui/utils": { - "version": "0.2.9", - "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.2.9.tgz", - "integrity": "sha512-MDWhGtE+eHw5JW7lq4qhc5yRLS11ERl1c7Z6Xd0a58DozHES6EnNNwUWbMiG4J9Cgj053Bhk8zvlhFYKVhULwg==" + "version": "0.2.8", + "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.2.8.tgz", + "integrity": "sha512-kym7SodPp8/wloecOpcmSnWJsK7M0E5Wg8UcFA+uO4B9s5d0ywXOEro/8HM9x0rW+TljRzul/14UYz3TleT3ig==" }, "node_modules/@img/sharp-darwin-arm64": { "version": "0.33.5", @@ -1473,66 +1473,50 @@ } }, "node_modules/@shikijs/core": { - "version": "1.26.2", - "resolved": "https://registry.npmjs.org/@shikijs/core/-/core-1.26.2.tgz", - "integrity": "sha512-ORyu3MrY7dCC7FDLDsFSkBM9b/AT9/Y8rH+UQ07Rtek48pp0ZhQOMPTKolqszP4bBCas6FqTZQYt18BBamVl/g==", + "version": "1.24.4", + "resolved": "https://registry.npmjs.org/@shikijs/core/-/core-1.24.4.tgz", + "integrity": "sha512-jjLsld+xEEGYlxAXDyGwWsKJ1sw5Pc1pnp4ai2ORpjx2UX08YYTC0NNqQYO1PaghYaR+PvgMOGuvzw2he9sk0Q==", "dependencies": { - "@shikijs/engine-javascript": "1.26.2", - "@shikijs/engine-oniguruma": "1.26.2", - "@shikijs/types": "1.26.2", - "@shikijs/vscode-textmate": "^10.0.1", + "@shikijs/engine-javascript": "1.24.4", + "@shikijs/engine-oniguruma": "1.24.4", + "@shikijs/types": "1.24.4", + "@shikijs/vscode-textmate": "^9.3.1", "@types/hast": "^3.0.4", "hast-util-to-html": "^9.0.4" } }, "node_modules/@shikijs/engine-javascript": { - "version": "1.26.2", - "resolved": "https://registry.npmjs.org/@shikijs/engine-javascript/-/engine-javascript-1.26.2.tgz", - "integrity": "sha512-ngkIu9swLVo9Zt5QBtz5Sk08vmPcwuj01r7pPK/Zjmo2U2WyKMK4WMUMmkdQiUacdcLth0zt8u1onp4zhkFXKQ==", + "version": "1.24.4", + "resolved": "https://registry.npmjs.org/@shikijs/engine-javascript/-/engine-javascript-1.24.4.tgz", + "integrity": "sha512-TClaQOLvo9WEMJv6GoUsykQ6QdynuKszuORFWCke8qvi6PeLm7FcD9+7y45UenysxEWYpDL5KJaVXTngTE+2BA==", "dependencies": { - "@shikijs/types": "1.26.2", - "@shikijs/vscode-textmate": "^10.0.1", - "oniguruma-to-es": "^1.0.0" + "@shikijs/types": "1.24.4", + "@shikijs/vscode-textmate": "^9.3.1", + "oniguruma-to-es": "0.8.1" } }, "node_modules/@shikijs/engine-oniguruma": { - "version": "1.26.2", - "resolved": "https://registry.npmjs.org/@shikijs/engine-oniguruma/-/engine-oniguruma-1.26.2.tgz", - "integrity": "sha512-mlN7Qrs+w60nKrd7at7XkXSwz6728Pe34taDmHrG6LRHjzCqQ+ysg+/AT6/D2LMk0s2lsr71DjpI73430QP4/w==", + "version": "1.24.4", + "resolved": "https://registry.npmjs.org/@shikijs/engine-oniguruma/-/engine-oniguruma-1.24.4.tgz", + "integrity": "sha512-Do2ry6flp2HWdvpj2XOwwa0ljZBRy15HKZITzPcNIBOGSeprnA8gOooA/bLsSPuy8aJBa+Q/r34dMmC3KNL/zw==", "dependencies": { - "@shikijs/types": "1.26.2", - "@shikijs/vscode-textmate": "^10.0.1" - } - }, - "node_modules/@shikijs/langs": { - "version": "1.26.2", - "resolved": "https://registry.npmjs.org/@shikijs/langs/-/langs-1.26.2.tgz", - "integrity": "sha512-o5cdPycB2Kw3IgncHxWopWPiTkjAj7dG01fLkkUyj3glb5ftxL/Opecq9F54opMlrgXy7ZIqDERvFLlUzsCOuA==", - "dependencies": { - "@shikijs/types": "1.26.2" - } - }, - "node_modules/@shikijs/themes": { - "version": "1.26.2", - "resolved": "https://registry.npmjs.org/@shikijs/themes/-/themes-1.26.2.tgz", - "integrity": "sha512-y4Pn6PM5mODz/e3yF6jAUG7WLKJzqL2tJ5qMJCUkMUB1VRgtQVvoa1cHh7NScryGXyrYGJ8nPnRDhdv2rw0xpA==", - "dependencies": { - "@shikijs/types": "1.26.2" + "@shikijs/types": "1.24.4", + "@shikijs/vscode-textmate": "^9.3.1" } }, "node_modules/@shikijs/types": { - "version": "1.26.2", - "resolved": "https://registry.npmjs.org/@shikijs/types/-/types-1.26.2.tgz", - "integrity": "sha512-PO2jucx2FIdlLBPYbIUlMtWSLs5ulcRcuV93cR3T65lkK5SJP4MGBRt9kmWGXiQc0f7+FHj/0BEawditZcI/fQ==", + "version": "1.24.4", + "resolved": "https://registry.npmjs.org/@shikijs/types/-/types-1.24.4.tgz", + "integrity": "sha512-0r0XU7Eaow0PuDxuWC1bVqmWCgm3XqizIaT7SM42K03vc69LGooT0U8ccSR44xP/hGlNx4FKhtYpV+BU6aaKAA==", "dependencies": { - "@shikijs/vscode-textmate": "^10.0.1", + "@shikijs/vscode-textmate": "^9.3.1", "@types/hast": "^3.0.4" } }, "node_modules/@shikijs/vscode-textmate": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/@shikijs/vscode-textmate/-/vscode-textmate-10.0.1.tgz", - "integrity": "sha512-fTIQwLF+Qhuws31iw7Ncl1R3HUDtGwIipiJ9iU+UsDUwMhegFcQKQHd51nZjb7CArq0MvON8rbgCGQYWHUKAdg==" + "version": "9.3.1", + "resolved": "https://registry.npmjs.org/@shikijs/vscode-textmate/-/vscode-textmate-9.3.1.tgz", + "integrity": "sha512-79QfK1393x9Ho60QFyLti+QfdJzRQCVLFb97kOIV7Eo9vQU/roINgk7m24uv0a7AUvN//RDH36FLjjK48v0s9g==" }, "node_modules/@shuding/opentype.js": { "version": "1.4.0-beta.0", @@ -1914,9 +1898,9 @@ } }, "node_modules/@types/node": { - "version": "22.10.6", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.10.6.tgz", - "integrity": "sha512-qNiuwC4ZDAUNcY47xgaSuS92cjf8JbSUoaKS77bmLG1rU7MlATVSiw/IlrjtIyyskXBZ8KkNfjK/P5na7rgXbQ==", + "version": "22.10.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.10.2.tgz", + "integrity": "sha512-Xxr6BBRCAOQixvonOye19wnzyDiUtTeqldOOmj3CkeblonbccA12PFwlufvRdrpjXxqnmUaeiU5EOA+7s5diUQ==", "dev": true, "dependencies": { "undici-types": "~6.20.0" @@ -4086,9 +4070,9 @@ } }, "node_modules/lightningcss": { - "version": "1.29.1", - "resolved": "https://registry.npmjs.org/lightningcss/-/lightningcss-1.29.1.tgz", - "integrity": "sha512-FmGoeD4S05ewj+AkhTY+D+myDvXI6eL27FjHIjoyUkO/uw7WZD1fBVs0QxeYWa7E17CUHJaYX/RUGISCtcrG4Q==", + "version": "1.28.2", + "resolved": "https://registry.npmjs.org/lightningcss/-/lightningcss-1.28.2.tgz", + "integrity": "sha512-ePLRrbt3fgjXI5VFZOLbvkLD5ZRuxGKm+wJ3ujCqBtL3NanDHPo/5zicR5uEKAPiIjBYF99BM4K4okvMznjkVA==", "dependencies": { "detect-libc": "^1.0.3" }, @@ -4100,22 +4084,22 @@ "url": "https://opencollective.com/parcel" }, "optionalDependencies": { - "lightningcss-darwin-arm64": "1.29.1", - "lightningcss-darwin-x64": "1.29.1", - "lightningcss-freebsd-x64": "1.29.1", - "lightningcss-linux-arm-gnueabihf": "1.29.1", - "lightningcss-linux-arm64-gnu": "1.29.1", - "lightningcss-linux-arm64-musl": "1.29.1", - "lightningcss-linux-x64-gnu": "1.29.1", - "lightningcss-linux-x64-musl": "1.29.1", - "lightningcss-win32-arm64-msvc": "1.29.1", - "lightningcss-win32-x64-msvc": "1.29.1" + "lightningcss-darwin-arm64": "1.28.2", + "lightningcss-darwin-x64": "1.28.2", + "lightningcss-freebsd-x64": "1.28.2", + "lightningcss-linux-arm-gnueabihf": "1.28.2", + "lightningcss-linux-arm64-gnu": "1.28.2", + "lightningcss-linux-arm64-musl": "1.28.2", + "lightningcss-linux-x64-gnu": "1.28.2", + "lightningcss-linux-x64-musl": "1.28.2", + "lightningcss-win32-arm64-msvc": "1.28.2", + "lightningcss-win32-x64-msvc": "1.28.2" } }, "node_modules/lightningcss-darwin-arm64": { - "version": "1.29.1", - "resolved": "https://registry.npmjs.org/lightningcss-darwin-arm64/-/lightningcss-darwin-arm64-1.29.1.tgz", - "integrity": "sha512-HtR5XJ5A0lvCqYAoSv2QdZZyoHNttBpa5EP9aNuzBQeKGfbyH5+UipLWvVzpP4Uml5ej4BYs5I9Lco9u1fECqw==", + "version": "1.28.2", + "resolved": "https://registry.npmjs.org/lightningcss-darwin-arm64/-/lightningcss-darwin-arm64-1.28.2.tgz", + "integrity": "sha512-/8cPSqZiusHSS+WQz0W4NuaqFjquys1x+NsdN/XOHb+idGHJSoJ7SoQTVl3DZuAgtPZwFZgRfb/vd1oi8uX6+g==", "cpu": [ "arm64" ], @@ -4132,9 +4116,9 @@ } }, "node_modules/lightningcss-darwin-x64": { - "version": "1.29.1", - "resolved": "https://registry.npmjs.org/lightningcss-darwin-x64/-/lightningcss-darwin-x64-1.29.1.tgz", - "integrity": "sha512-k33G9IzKUpHy/J/3+9MCO4e+PzaFblsgBjSGlpAaFikeBFm8B/CkO3cKU9oI4g+fjS2KlkLM/Bza9K/aw8wsNA==", + "version": "1.28.2", + "resolved": "https://registry.npmjs.org/lightningcss-darwin-x64/-/lightningcss-darwin-x64-1.28.2.tgz", + "integrity": "sha512-R7sFrXlgKjvoEG8umpVt/yutjxOL0z8KWf0bfPT3cYMOW4470xu5qSHpFdIOpRWwl3FKNMUdbKtMUjYt0h2j4g==", "cpu": [ "x64" ], @@ -4151,9 +4135,9 @@ } }, "node_modules/lightningcss-freebsd-x64": { - "version": "1.29.1", - "resolved": "https://registry.npmjs.org/lightningcss-freebsd-x64/-/lightningcss-freebsd-x64-1.29.1.tgz", - "integrity": "sha512-0SUW22fv/8kln2LnIdOCmSuXnxgxVC276W5KLTwoehiO0hxkacBxjHOL5EtHD8BAXg2BvuhsJPmVMasvby3LiQ==", + "version": "1.28.2", + "resolved": "https://registry.npmjs.org/lightningcss-freebsd-x64/-/lightningcss-freebsd-x64-1.28.2.tgz", + "integrity": "sha512-l2qrCT+x7crAY+lMIxtgvV10R8VurzHAoUZJaVFSlHrN8kRLTvEg9ObojIDIexqWJQvJcVVV3vfzsEynpiuvgA==", "cpu": [ "x64" ], @@ -4170,9 +4154,9 @@ } }, "node_modules/lightningcss-linux-arm-gnueabihf": { - "version": "1.29.1", - "resolved": "https://registry.npmjs.org/lightningcss-linux-arm-gnueabihf/-/lightningcss-linux-arm-gnueabihf-1.29.1.tgz", - "integrity": "sha512-sD32pFvlR0kDlqsOZmYqH/68SqUMPNj+0pucGxToXZi4XZgZmqeX/NkxNKCPsswAXU3UeYgDSpGhu05eAufjDg==", + "version": "1.28.2", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm-gnueabihf/-/lightningcss-linux-arm-gnueabihf-1.28.2.tgz", + "integrity": "sha512-DKMzpICBEKnL53X14rF7hFDu8KKALUJtcKdFUCW5YOlGSiwRSgVoRjM97wUm/E0NMPkzrTi/rxfvt7ruNK8meg==", "cpu": [ "arm" ], @@ -4189,9 +4173,9 @@ } }, "node_modules/lightningcss-linux-arm64-gnu": { - "version": "1.29.1", - "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-gnu/-/lightningcss-linux-arm64-gnu-1.29.1.tgz", - "integrity": "sha512-0+vClRIZ6mmJl/dxGuRsE197o1HDEeeRk6nzycSy2GofC2JsY4ifCRnvUWf/CUBQmlrvMzt6SMQNMSEu22csWQ==", + "version": "1.28.2", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-gnu/-/lightningcss-linux-arm64-gnu-1.28.2.tgz", + "integrity": "sha512-nhfjYkfymWZSxdtTNMWyhFk2ImUm0X7NAgJWFwnsYPOfmtWQEapzG/DXZTfEfMjSzERNUNJoQjPAbdqgB+sjiw==", "cpu": [ "arm64" ], @@ -4208,9 +4192,9 @@ } }, "node_modules/lightningcss-linux-arm64-musl": { - "version": "1.29.1", - "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-musl/-/lightningcss-linux-arm64-musl-1.29.1.tgz", - "integrity": "sha512-UKMFrG4rL/uHNgelBsDwJcBqVpzNJbzsKkbI3Ja5fg00sgQnHw/VrzUTEc4jhZ+AN2BvQYz/tkHu4vt1kLuJyw==", + "version": "1.28.2", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-musl/-/lightningcss-linux-arm64-musl-1.28.2.tgz", + "integrity": "sha512-1SPG1ZTNnphWvAv8RVOymlZ8BDtAg69Hbo7n4QxARvkFVCJAt0cgjAw1Fox0WEhf4PwnyoOBaVH0Z5YNgzt4dA==", "cpu": [ "arm64" ], @@ -4227,9 +4211,9 @@ } }, "node_modules/lightningcss-linux-x64-gnu": { - "version": "1.29.1", - "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-gnu/-/lightningcss-linux-x64-gnu-1.29.1.tgz", - "integrity": "sha512-u1S+xdODy/eEtjADqirA774y3jLcm8RPtYztwReEXoZKdzgsHYPl0s5V52Tst+GKzqjebkULT86XMSxejzfISw==", + "version": "1.28.2", + "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-gnu/-/lightningcss-linux-x64-gnu-1.28.2.tgz", + "integrity": "sha512-ZhQy0FcO//INWUdo/iEdbefntTdpPVQ0XJwwtdbBuMQe+uxqZoytm9M+iqR9O5noWFaxK+nbS2iR/I80Q2Ofpg==", "cpu": [ "x64" ], @@ -4246,9 +4230,9 @@ } }, "node_modules/lightningcss-linux-x64-musl": { - "version": "1.29.1", - "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-musl/-/lightningcss-linux-x64-musl-1.29.1.tgz", - "integrity": "sha512-L0Tx0DtaNUTzXv0lbGCLB/c/qEADanHbu4QdcNOXLIe1i8i22rZRpbT3gpWYsCh9aSL9zFujY/WmEXIatWvXbw==", + "version": "1.28.2", + "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-musl/-/lightningcss-linux-x64-musl-1.28.2.tgz", + "integrity": "sha512-alb/j1NMrgQmSFyzTbN1/pvMPM+gdDw7YBuQ5VSgcFDypN3Ah0BzC2dTZbzwzaMdUVDszX6zH5MzjfVN1oGuww==", "cpu": [ "x64" ], @@ -4265,9 +4249,9 @@ } }, "node_modules/lightningcss-win32-arm64-msvc": { - "version": "1.29.1", - "resolved": "https://registry.npmjs.org/lightningcss-win32-arm64-msvc/-/lightningcss-win32-arm64-msvc-1.29.1.tgz", - "integrity": "sha512-QoOVnkIEFfbW4xPi+dpdft/zAKmgLgsRHfJalEPYuJDOWf7cLQzYg0DEh8/sn737FaeMJxHZRc1oBreiwZCjog==", + "version": "1.28.2", + "resolved": "https://registry.npmjs.org/lightningcss-win32-arm64-msvc/-/lightningcss-win32-arm64-msvc-1.28.2.tgz", + "integrity": "sha512-WnwcjcBeAt0jGdjlgbT9ANf30pF0C/QMb1XnLnH272DQU8QXh+kmpi24R55wmWBwaTtNAETZ+m35ohyeMiNt+g==", "cpu": [ "arm64" ], @@ -4284,9 +4268,9 @@ } }, "node_modules/lightningcss-win32-x64-msvc": { - "version": "1.29.1", - "resolved": "https://registry.npmjs.org/lightningcss-win32-x64-msvc/-/lightningcss-win32-x64-msvc-1.29.1.tgz", - "integrity": "sha512-NygcbThNBe4JElP+olyTI/doBNGJvLs3bFCRPdvuCcxZCcCZ71B858IHpdm7L1btZex0FvCmM17FK98Y9MRy1Q==", + "version": "1.28.2", + "resolved": "https://registry.npmjs.org/lightningcss-win32-x64-msvc/-/lightningcss-win32-x64-msvc-1.28.2.tgz", + "integrity": "sha512-3piBifyT3avz22o6mDKywQC/OisH2yDK+caHWkiMsF82i3m5wDBadyCjlCQ5VNgzYkxrWZgiaxHDdd5uxsi0/A==", "cpu": [ "x64" ], @@ -4359,9 +4343,9 @@ } }, "node_modules/mdast-util-find-and-replace": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/mdast-util-find-and-replace/-/mdast-util-find-and-replace-3.0.2.tgz", - "integrity": "sha512-Tmd1Vg/m3Xz43afeNxDIhWRtFZgM2VLyaf4vSTYwudTyeuTneoL3qtWMA5jeLyz/O1vDJmmV4QuScFCA2tBPwg==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/mdast-util-find-and-replace/-/mdast-util-find-and-replace-3.0.1.tgz", + "integrity": "sha512-SG21kZHGC3XRTSUhtofZkBzZTJNM5ecCi0SK2IMKmSXR8vO3peL+kb1O0z7Zl83jKtutG4k5Wv/W7V3/YHvzPA==", "dependencies": { "@types/mdast": "^4.0.0", "escape-string-regexp": "^5.0.0", @@ -5424,13 +5408,13 @@ } }, "node_modules/oniguruma-to-es": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/oniguruma-to-es/-/oniguruma-to-es-1.0.0.tgz", - "integrity": "sha512-kihvp0O4lFwf5tZMkfanwQLIZ9ORe9OeOFgZonH0BQeThgwfJiaZFeOfvvJVnJIM9TiVmx0RDD35hUJDR0++rQ==", + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/oniguruma-to-es/-/oniguruma-to-es-0.8.1.tgz", + "integrity": "sha512-dekySTEvCxCj0IgKcA2uUCO/e4ArsqpucDPcX26w9ajx+DvMWLc5eZeJaRQkd7oC/+rwif5gnT900tA34uN9Zw==", "dependencies": { "emoji-regex-xs": "^1.0.0", - "regex": "^5.1.1", - "regex-recursion": "^5.1.1" + "regex": "^5.0.2", + "regex-recursion": "^5.0.0" } }, "node_modules/package-json-from-dist": { @@ -5614,9 +5598,9 @@ } }, "node_modules/preact-render-to-string": { - "version": "6.5.13", - "resolved": "https://registry.npmjs.org/preact-render-to-string/-/preact-render-to-string-6.5.13.tgz", - "integrity": "sha512-iGPd+hKPMFKsfpR2vL4kJ6ZPcFIoWZEcBf0Dpm3zOpdVvj77aY8RlLiQji5OMrngEyaxGogeakTb54uS2FvA6w==", + "version": "6.5.12", + "resolved": "https://registry.npmjs.org/preact-render-to-string/-/preact-render-to-string-6.5.12.tgz", + "integrity": "sha512-FpU7/cRipZo4diSWQq7gZWVp+Px76CtVduJZNvQwVzynDsAIxKteMrjCCGPbM2oEasReoDffaeMCMlaur9ohIg==", "peerDependencies": { "preact": ">=10" } @@ -5719,19 +5703,18 @@ "integrity": "sha512-onYyVhBNr4CmAxFsKS7bz+uTLRakypIe4R+5A824vBSkQy/hB3fZepoVEf8OVAxzLvK+H/jm9TzpI3ETSm64Kg==" }, "node_modules/regex": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/regex/-/regex-5.1.1.tgz", - "integrity": "sha512-dN5I359AVGPnwzJm2jN1k0W9LPZ+ePvoOeVMMfqIMFz53sSwXkxaJoxr50ptnsC771lK95BnTrVSZxq0b9yCGw==", + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/regex/-/regex-5.0.2.tgz", + "integrity": "sha512-/pczGbKIQgfTMRV0XjABvc5RzLqQmwqxLHdQao2RTXPk+pmTXB2P0IaUHYdYyk412YLwUIkaeMd5T+RzVgTqnQ==", "dependencies": { "regex-utilities": "^2.3.0" } }, "node_modules/regex-recursion": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/regex-recursion/-/regex-recursion-5.1.1.tgz", - "integrity": "sha512-ae7SBCbzVNrIjgSbh7wMznPcQel1DNlDtzensnFxpiNpXt1U2ju/bHugH422r+4LAVS1FpW1YCwilmnNsjum9w==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/regex-recursion/-/regex-recursion-5.0.0.tgz", + "integrity": "sha512-UwyOqeobrCCqTXPcsSqH4gDhOjD5cI/b8kjngWgSZbxYh5yVjAwTjO5+hAuPRNiuR70+5RlWSs+U9PVcVcW9Lw==", "dependencies": { - "regex": "^5.1.1", "regex-utilities": "^2.3.0" } }, @@ -6584,9 +6567,9 @@ } }, "node_modules/satori": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/satori/-/satori-0.12.1.tgz", - "integrity": "sha512-0SbjchvDrDbeXeQgxWVtSWxww7qcFgk3DtSE2/blHOSlLsSHwIqO2fCrtVa/EudJ7Eqno8A33QNx56rUyGbLuw==", + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/satori/-/satori-0.12.0.tgz", + "integrity": "sha512-e0e+qQyeFwEszujN7SpWpRtZgww7Nh8lSO3bUn2spHZ5JpqEl3zJ3P14/JlWruxEwdgREs35ZnavrPrWaRVFDg==", "dependencies": { "@shuding/opentype.js": "1.4.0-beta.0", "css-background-parser": "^0.1.0", @@ -6747,17 +6730,15 @@ } }, "node_modules/shiki": { - "version": "1.26.2", - "resolved": "https://registry.npmjs.org/shiki/-/shiki-1.26.2.tgz", - "integrity": "sha512-iP7u2NA9A6JwRRCkIUREEX2cMhlYV5EBmbbSlfSRvPThwca8HBRbVkWuNWW+kw9+i6BSUZqqG6YeUs5dC2SjZw==", + "version": "1.24.4", + "resolved": "https://registry.npmjs.org/shiki/-/shiki-1.24.4.tgz", + "integrity": "sha512-aVGSFAOAr1v26Hh/+GBIsRVDWJ583XYV7CuNURKRWh9gpGv4OdbisZGq96B9arMYTZhTQkmRF5BrShOSTvNqhw==", "dependencies": { - "@shikijs/core": "1.26.2", - "@shikijs/engine-javascript": "1.26.2", - "@shikijs/engine-oniguruma": "1.26.2", - "@shikijs/langs": "1.26.2", - "@shikijs/themes": "1.26.2", - "@shikijs/types": "1.26.2", - "@shikijs/vscode-textmate": "^10.0.1", + "@shikijs/core": "1.24.4", + "@shikijs/engine-javascript": "1.24.4", + "@shikijs/engine-oniguruma": "1.24.4", + "@shikijs/types": "1.24.4", + "@shikijs/vscode-textmate": "^9.3.1", "@types/hast": "^3.0.4" } }, @@ -7548,9 +7529,9 @@ } }, "node_modules/typescript": { - "version": "5.7.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.7.3.tgz", - "integrity": "sha512-84MVSjMEHP+FQRPy3pX9sTVV/INIex71s9TL2Gm5FG/WG1SqXeKyZ0k7/blY/4FdOzI12CBy1vGc4og/eus0fw==", + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.7.2.tgz", + "integrity": "sha512-i5t66RHxDvVN40HfDd1PsEThGNnlMCMT3jMUuoh9/0TaqWevNontacunWyN02LA9/fIbEWlcHZcgTKb9QoaLfg==", "dev": true, "bin": { "tsc": "bin/tsc", diff --git a/package.json b/package.json index 726350b..e99b828 100644 --- a/package.json +++ b/package.json @@ -35,8 +35,8 @@ "quartz": "./quartz/bootstrap-cli.mjs" }, "dependencies": { - "@clack/prompts": "^0.9.1", - "@floating-ui/dom": "^1.6.13", + "@clack/prompts": "^0.9.0", + "@floating-ui/dom": "^1.6.12", "@myriaddreamin/rehype-typst": "^0.5.4", "@napi-rs/simple-git": "0.1.19", "@tweenjs/tween.js": "^25.0.0", @@ -55,14 +55,14 @@ "hast-util-to-string": "^3.0.1", "is-absolute-url": "^4.0.1", "js-yaml": "^4.1.0", - "lightningcss": "^1.29.1", - "mdast-util-find-and-replace": "^3.0.2", + "lightningcss": "^1.28.2", + "mdast-util-find-and-replace": "^3.0.1", "mdast-util-to-hast": "^13.2.0", "mdast-util-to-string": "^4.0.0", "micromorph": "^0.4.5", "pixi.js": "^8.6.6", "preact": "^10.25.4", - "preact-render-to-string": "^6.5.13", + "preact-render-to-string": "^6.5.12", "pretty-bytes": "^6.1.1", "pretty-time": "^1.1.0", "reading-time": "^1.5.0", @@ -83,10 +83,10 @@ "remark-smartypants": "^3.0.2", "rfdc": "^1.4.1", "rimraf": "^6.0.1", - "satori": "^0.12.1", + "satori": "^0.12.0", "serve-handler": "^6.1.6", "sharp": "^0.33.5", - "shiki": "^1.26.2", + "shiki": "^1.24.4", "source-map-support": "^0.5.21", "to-vfile": "^8.0.0", "toml": "^3.0.0", @@ -102,7 +102,7 @@ "@types/d3": "^7.4.3", "@types/hast": "^3.0.4", "@types/js-yaml": "^4.0.9", - "@types/node": "^22.10.6", + "@types/node": "^22.10.2", "@types/pretty-time": "^1.1.5", "@types/source-map-support": "^0.5.10", "@types/ws": "^8.5.13", @@ -110,6 +110,6 @@ "esbuild": "^0.24.2", "prettier": "^3.4.2", "tsx": "^4.19.2", - "typescript": "^5.7.3" + "typescript": "^5.7.2" } } diff --git a/quartz.config.ts b/quartz.config.ts index 56b4b8f..dc339d9 100644 --- a/quartz.config.ts +++ b/quartz.config.ts @@ -12,7 +12,9 @@ const config: QuartzConfig = { pageTitleSuffix: "", enableSPA: true, enablePopovers: true, - analytics: null, + analytics: { + provider: "plausible", + }, locale: "en-US", baseUrl: "quartz.jzhao.xyz", ignorePatterns: ["private", "templates", ".obsidian"], diff --git a/quartz/.quartz-cache/transpiled-build.mjs b/quartz/.quartz-cache/transpiled-build.mjs deleted file mode 100644 index 90b27ad..0000000 --- a/quartz/.quartz-cache/transpiled-build.mjs +++ /dev/null @@ -1,1961 +0,0 @@ -var __defProp=Object.defineProperty;var __name=(target,value)=>__defProp(target,"name",{value,configurable:!0});import sourceMapSupport from"source-map-support";import path12 from"path";import chalk from"chalk";import pretty from"pretty-time";var PerfTimer=class{static{__name(this,"PerfTimer")}evts;constructor(){this.evts={},this.addEvent("start")}addEvent(evtName){this.evts[evtName]=process.hrtime()}timeSince(evtName){return chalk.yellow(pretty(process.hrtime(this.evts[evtName??"start"])))}};import{rimraf}from"rimraf";import{isGitIgnored}from"globby";import chalk6 from"chalk";import esbuild from"esbuild";import remarkParse from"remark-parse";import remarkRehype from"remark-rehype";import{unified}from"unified";import{read}from"to-vfile";import{slug as slugAnchor}from"github-slugger";import rfdc from"rfdc";var clone=rfdc(),QUARTZ="quartz";function isRelativeURL(s){let validStart=/^\.{1,2}/.test(s),validEnding=!endsWith(s,"index");return validStart&&validEnding&&![".md",".html"].includes(_getFileExtension(s)??"")}__name(isRelativeURL,"isRelativeURL");function sluggify(s){return s.split("/").map(segment=>segment.replace(/\s/g,"-").replace(/&/g,"-and-").replace(/%/g,"-percent").replace(/\?/g,"").replace(/#/g,"")).join("/").replace(/\/$/,"")}__name(sluggify,"sluggify");function slugifyFilePath(fp,excludeExt){fp=stripSlashes(fp);let ext=_getFileExtension(fp),withoutFileExt=fp.replace(new RegExp(ext+"$"),"");(excludeExt||[".md",".html",void 0].includes(ext))&&(ext="");let slug=sluggify(withoutFileExt);return endsWith(slug,"_index")&&(slug=slug.replace(/_index$/,"index")),slug+ext}__name(slugifyFilePath,"slugifyFilePath");function simplifySlug(fp){let res=stripSlashes(trimSuffix(fp,"index"),!0);return res.length===0?"/":res}__name(simplifySlug,"simplifySlug");function transformInternalLink(link){let[fplike,anchor]=splitAnchor(decodeURI(link)),folderPath=isFolderPath(fplike),segments=fplike.split("/").filter(x=>x.length>0),prefix=segments.filter(isRelativeSegment).join("/"),fp=segments.filter(seg=>!isRelativeSegment(seg)&&seg!=="").join("/"),simpleSlug=simplifySlug(slugifyFilePath(fp)),joined=joinSegments(stripSlashes(prefix),stripSlashes(simpleSlug)),trail=folderPath?"/":"";return _addRelativeToStart(joined)+trail+anchor}__name(transformInternalLink,"transformInternalLink");var _rebaseHastElement=__name((el,attr,curBase,newBase)=>{if(el.properties?.[attr]){if(!isRelativeURL(String(el.properties[attr])))return;let rel=joinSegments(resolveRelative(curBase,newBase),"..",el.properties[attr]);el.properties[attr]=rel}},"_rebaseHastElement");function normalizeHastElement(rawEl,curBase,newBase){let el=clone(rawEl);return _rebaseHastElement(el,"src",curBase,newBase),_rebaseHastElement(el,"href",curBase,newBase),el.children&&(el.children=el.children.map(child=>normalizeHastElement(child,curBase,newBase))),el}__name(normalizeHastElement,"normalizeHastElement");function pathToRoot(slug){let rootPath=slug.split("/").filter(x=>x!=="").slice(0,-1).map(_=>"..").join("/");return rootPath.length===0&&(rootPath="."),rootPath}__name(pathToRoot,"pathToRoot");function resolveRelative(current,target){return joinSegments(pathToRoot(current),simplifySlug(target))}__name(resolveRelative,"resolveRelative");function splitAnchor(link){let[fp,anchor]=link.split("#",2);return fp.endsWith(".pdf")?[fp,anchor===void 0?"":`#${anchor}`]:(anchor=anchor===void 0?"":"#"+slugAnchor(anchor),[fp,anchor])}__name(splitAnchor,"splitAnchor");function slugTag(tag){return tag.split("/").map(tagSegment=>sluggify(tagSegment)).join("/")}__name(slugTag,"slugTag");function joinSegments(...args){if(args.length===0)return"";let joined=args.filter(segment=>segment!==""&&segment!=="/").map(segment=>stripSlashes(segment)).join("/");return args[0].startsWith("/")&&(joined="/"+joined),args[args.length-1].endsWith("/")&&(joined=joined+"/"),joined}__name(joinSegments,"joinSegments");function getAllSegmentPrefixes(tags){let segments=tags.split("/"),results=[];for(let i=0;i{let fileName=slug.split("/").at(-1);return targetCanonical===fileName});if(matchingFileNames.length===1){let targetSlug2=matchingFileNames[0];return resolveRelative(src,targetSlug2)+targetAnchor}}return joinSegments(pathToRoot(src),canonicalSlug)+folderTail}}__name(transformLink,"transformLink");function isFolderPath(fplike){return fplike.endsWith("/")||endsWith(fplike,"index")||endsWith(fplike,"index.md")||endsWith(fplike,"index.html")}__name(isFolderPath,"isFolderPath");function endsWith(s,suffix){return s===suffix||s.endsWith("/"+suffix)}__name(endsWith,"endsWith");function trimSuffix(s,suffix){return endsWith(s,suffix)&&(s=s.slice(0,-suffix.length)),s}__name(trimSuffix,"trimSuffix");function _getFileExtension(s){return s.match(/\.[A-Za-z0-9]+$/)?.[0]}__name(_getFileExtension,"_getFileExtension");function isRelativeSegment(s){return/^\.{0,2}$/.test(s)}__name(isRelativeSegment,"isRelativeSegment");function stripSlashes(s,onlyStripPrefix){return s.startsWith("/")&&(s=s.substring(1)),!onlyStripPrefix&&s.endsWith("/")&&(s=s.slice(0,-1)),s}__name(stripSlashes,"stripSlashes");function _addRelativeToStart(s){return s===""&&(s="."),s.startsWith(".")||(s=joinSegments(".",s)),s}__name(_addRelativeToStart,"_addRelativeToStart");import path from"path";import workerpool,{Promise as WorkerPromise}from"workerpool";import{Spinner}from"cli-spinner";var QuartzLogger=class{static{__name(this,"QuartzLogger")}verbose;spinner;constructor(verbose){this.verbose=verbose}start(text){this.verbose?console.log(text):(this.spinner=new Spinner(`%s ${text}`),this.spinner.setSpinnerString(18),this.spinner.start())}end(text){this.verbose||this.spinner.stop(!0),text&&console.log(text)}};import chalk2 from"chalk";import process2 from"process";import{isMainThread}from"workerpool";var rootFile=/.*at file:/;function trace(msg,err){let stack=err.stack??"",lines=[];lines.push(""),lines.push(` -`+chalk2.bgRed.black.bold(" ERROR ")+` - -`+chalk2.red(` ${msg}`)+(err.message.length>0?`: ${err.message}`:""));let reachedEndOfLegibleTrace=!1;for(let line of stack.split(` -`).slice(1)){if(reachedEndOfLegibleTrace)break;line.includes("node_modules")||(lines.push(` ${line}`),rootFile.test(line)&&(reachedEndOfLegibleTrace=!0))}let traceMsg=lines.join(` -`);if(isMainThread)console.error(traceMsg),process2.exit(1);else throw new Error(traceMsg)}__name(trace,"trace");function createMdProcessor(ctx){let transformers=ctx.cfg.plugins.transformers;return unified().use(remarkParse).use(transformers.flatMap(plugin=>plugin.markdownPlugins?.(ctx)??[]))}__name(createMdProcessor,"createMdProcessor");function createHtmlProcessor(ctx){let transformers=ctx.cfg.plugins.transformers;return unified().use(remarkRehype,{allowDangerousHtml:!0}).use(transformers.flatMap(plugin=>plugin.htmlPlugins?.(ctx)??[]))}__name(createHtmlProcessor,"createHtmlProcessor");function*chunks(arr,n){for(let i=0;i({contents:"",loader:"text"})),build.onLoad({filter:/\.inline\.(ts|js)$/},_=>({contents:"",loader:"text"}))}}]})}__name(transpileWorkerScript,"transpileWorkerScript");function createFileParser(ctx,fps){let{argv,cfg}=ctx;return async processor=>{let res=[];for(let fp of fps)try{let perf=new PerfTimer,file=await read(fp);file.value=file.value.toString().trim();for(let plugin of cfg.plugins.transformers.filter(p=>p.textTransform))file.value=plugin.textTransform(ctx,file.value.toString());file.data.filePath=file.path,file.data.relativePath=path.posix.relative(argv.directory,file.path),file.data.slug=slugifyFilePath(file.data.relativePath);let ast=processor.parse(file),newAst=await processor.run(ast,file);res.push([newAst,file]),argv.verbose&&console.log(`[markdown] ${fp} -> ${file.data.slug} (${perf.timeSince()})`)}catch(err){trace(` -Failed to process markdown \`${fp}\``,err)}return res}}__name(createFileParser,"createFileParser");function createMarkdownParser(ctx,mdContent){return async processor=>{let res=[];for(let[ast,file]of mdContent)try{let perf=new PerfTimer,newAst=await processor.run(ast,file);res.push([newAst,file]),ctx.argv.verbose&&console.log(`[html] ${file.data.slug} (${perf.timeSince()})`)}catch(err){trace(` -Failed to process html \`${file.data.filePath}\``,err)}return res}}__name(createMarkdownParser,"createMarkdownParser");var clamp=__name((num,min,max)=>Math.min(Math.max(Math.round(num),min),max),"clamp");async function parseMarkdown(ctx,fps){let{argv}=ctx,perf=new PerfTimer,log=new QuartzLogger(argv.verbose),CHUNK_SIZE=128,concurrency=ctx.argv.concurrency??clamp(fps.length/CHUNK_SIZE,1,4),res=[];if(log.start(`Parsing input files using ${concurrency} threads`),concurrency===1)try{let mdRes=await createFileParser(ctx,fps)(createMdProcessor(ctx));res=await createMarkdownParser(ctx,mdRes)(createHtmlProcessor(ctx))}catch(error){throw log.end(),error}else{await transpileWorkerScript();let pool=workerpool.pool("./quartz/bootstrap-worker.mjs",{minWorkers:"max",maxWorkers:concurrency,workerType:"thread"}),errorHandler=__name(err=>{console.error(`${err}`.replace(/^error:\s*/i,"")),process.exit(1)},"errorHandler"),mdPromises=[];for(let chunk of chunks(fps,CHUNK_SIZE))mdPromises.push(pool.exec("parseMarkdown",[ctx.buildId,argv,chunk]));let mdResults=await WorkerPromise.all(mdPromises).catch(errorHandler),childPromises=[];for(let[_,extraSlugs]of mdResults)ctx.allSlugs.push(...extraSlugs);for(let[mdChunk,_]of mdResults)childPromises.push(pool.exec("processHtml",[ctx.buildId,argv,mdChunk,ctx.allSlugs]));res=(await WorkerPromise.all(childPromises).catch(errorHandler)).flat(),await pool.terminate()}return log.end(`Parsed ${res.length} Markdown files in ${perf.timeSince()}`),res}__name(parseMarkdown,"parseMarkdown");function filterContent(ctx,content){let{cfg,argv}=ctx,perf=new PerfTimer,initialLength=content.length;for(let plugin of cfg.plugins.filters){let updatedContent=content.filter(item=>plugin.shouldPublish(ctx,item));if(argv.verbose){let diff=content.filter(x=>!updatedContent.includes(x));for(let file of diff)console.log(`[filter:${plugin.name}] ${file[1].data.slug}`)}content=updatedContent}return console.log(`Filtered out ${initialLength-content.length} files in ${perf.timeSince()}`),content}__name(filterContent,"filterContent");import matter from"gray-matter";import remarkFrontmatter from"remark-frontmatter";import yaml from"js-yaml";import toml from"toml";var en_US_default={propertyDefaults:{title:"Untitled",description:"No description provided"},components:{callout:{note:"Note",abstract:"Abstract",info:"Info",todo:"Todo",tip:"Tip",success:"Success",question:"Question",warning:"Warning",failure:"Failure",danger:"Danger",bug:"Bug",example:"Example",quote:"Quote"},backlinks:{title:"Backlinks",noBacklinksFound:"No backlinks found"},themeToggle:{lightMode:"Light mode",darkMode:"Dark mode"},explorer:{title:"Explorer"},footer:{createdWith:"Created with"},graph:{title:"Graph View"},recentNotes:{title:"Recent Notes",seeRemainingMore:__name(({remaining})=>`See ${remaining} more \u2192`,"seeRemainingMore")},transcludes:{transcludeOf:__name(({targetSlug})=>`Transclude of ${targetSlug}`,"transcludeOf"),linkToOriginal:"Link to original"},search:{title:"Search",searchBarPlaceholder:"Search for something"},tableOfContents:{title:"Table of Contents"},contentMeta:{readingTime:__name(({minutes})=>`${minutes} min read`,"readingTime")}},pages:{rss:{recentNotes:"Recent notes",lastFewNotes:__name(({count})=>`Last ${count} notes`,"lastFewNotes")},error:{title:"Not Found",notFound:"Either this page is private or doesn't exist.",home:"Return to Homepage"},folderContent:{folder:"Folder",itemsUnderFolder:__name(({count})=>count===1?"1 item under this folder.":`${count} items under this folder.`,"itemsUnderFolder")},tagContent:{tag:"Tag",tagIndex:"Tag Index",itemsUnderTag:__name(({count})=>count===1?"1 item with this tag.":`${count} items with this tag.`,"itemsUnderTag"),showingFirst:__name(({count})=>`Showing first ${count} tags.`,"showingFirst"),totalTags:__name(({count})=>`Found ${count} total tags.`,"totalTags")}}};var en_GB_default={propertyDefaults:{title:"Untitled",description:"No description provided"},components:{callout:{note:"Note",abstract:"Abstract",info:"Info",todo:"To-Do",tip:"Tip",success:"Success",question:"Question",warning:"Warning",failure:"Failure",danger:"Danger",bug:"Bug",example:"Example",quote:"Quote"},backlinks:{title:"Backlinks",noBacklinksFound:"No backlinks found"},themeToggle:{lightMode:"Light mode",darkMode:"Dark mode"},explorer:{title:"Explorer"},footer:{createdWith:"Created with"},graph:{title:"Graph View"},recentNotes:{title:"Recent Notes",seeRemainingMore:__name(({remaining})=>`See ${remaining} more \u2192`,"seeRemainingMore")},transcludes:{transcludeOf:__name(({targetSlug})=>`Transclude of ${targetSlug}`,"transcludeOf"),linkToOriginal:"Link to original"},search:{title:"Search",searchBarPlaceholder:"Search for something"},tableOfContents:{title:"Table of Contents"},contentMeta:{readingTime:__name(({minutes})=>`${minutes} min read`,"readingTime")}},pages:{rss:{recentNotes:"Recent notes",lastFewNotes:__name(({count})=>`Last ${count} notes`,"lastFewNotes")},error:{title:"Not Found",notFound:"Either this page is private or doesn't exist.",home:"Return to Homepage"},folderContent:{folder:"Folder",itemsUnderFolder:__name(({count})=>count===1?"1 item under this folder.":`${count} items under this folder.`,"itemsUnderFolder")},tagContent:{tag:"Tag",tagIndex:"Tag Index",itemsUnderTag:__name(({count})=>count===1?"1 item with this tag.":`${count} items with this tag.`,"itemsUnderTag"),showingFirst:__name(({count})=>`Showing first ${count} tags.`,"showingFirst"),totalTags:__name(({count})=>`Found ${count} total tags.`,"totalTags")}}};var fr_FR_default={propertyDefaults:{title:"Sans titre",description:"Aucune description fournie"},components:{callout:{note:"Note",abstract:"R\xE9sum\xE9",info:"Info",todo:"\xC0 faire",tip:"Conseil",success:"Succ\xE8s",question:"Question",warning:"Avertissement",failure:"\xC9chec",danger:"Danger",bug:"Bogue",example:"Exemple",quote:"Citation"},backlinks:{title:"Liens retour",noBacklinksFound:"Aucun lien retour trouv\xE9"},themeToggle:{lightMode:"Mode clair",darkMode:"Mode sombre"},explorer:{title:"Explorateur"},footer:{createdWith:"Cr\xE9\xE9 avec"},graph:{title:"Vue Graphique"},recentNotes:{title:"Notes R\xE9centes",seeRemainingMore:__name(({remaining})=>`Voir ${remaining} de plus \u2192`,"seeRemainingMore")},transcludes:{transcludeOf:__name(({targetSlug})=>`Transclusion de ${targetSlug}`,"transcludeOf"),linkToOriginal:"Lien vers l'original"},search:{title:"Recherche",searchBarPlaceholder:"Rechercher quelque chose"},tableOfContents:{title:"Table des Mati\xE8res"},contentMeta:{readingTime:__name(({minutes})=>`${minutes} min de lecture`,"readingTime")}},pages:{rss:{recentNotes:"Notes r\xE9centes",lastFewNotes:__name(({count})=>`Les derni\xE8res ${count} notes`,"lastFewNotes")},error:{title:"Introuvable",notFound:"Cette page est soit priv\xE9e, soit elle n'existe pas.",home:"Retour \xE0 la page d'accueil"},folderContent:{folder:"Dossier",itemsUnderFolder:__name(({count})=>count===1?"1 \xE9l\xE9ment sous ce dossier.":`${count} \xE9l\xE9ments sous ce dossier.`,"itemsUnderFolder")},tagContent:{tag:"\xC9tiquette",tagIndex:"Index des \xE9tiquettes",itemsUnderTag:__name(({count})=>count===1?"1 \xE9l\xE9ment avec cette \xE9tiquette.":`${count} \xE9l\xE9ments avec cette \xE9tiquette.`,"itemsUnderTag"),showingFirst:__name(({count})=>`Affichage des premi\xE8res ${count} \xE9tiquettes.`,"showingFirst"),totalTags:__name(({count})=>`Trouv\xE9 ${count} \xE9tiquettes au total.`,"totalTags")}}};var it_IT_default={propertyDefaults:{title:"Senza titolo",description:"Nessuna descrizione"},components:{callout:{note:"Nota",abstract:"Astratto",info:"Info",todo:"Da fare",tip:"Consiglio",success:"Completato",question:"Domanda",warning:"Attenzione",failure:"Errore",danger:"Pericolo",bug:"Bug",example:"Esempio",quote:"Citazione"},backlinks:{title:"Link entranti",noBacklinksFound:"Nessun link entrante"},themeToggle:{lightMode:"Tema chiaro",darkMode:"Tema scuro"},explorer:{title:"Esplora"},footer:{createdWith:"Creato con"},graph:{title:"Vista grafico"},recentNotes:{title:"Note recenti",seeRemainingMore:__name(({remaining})=>`Vedi ${remaining} altro \u2192`,"seeRemainingMore")},transcludes:{transcludeOf:__name(({targetSlug})=>`Transclusione di ${targetSlug}`,"transcludeOf"),linkToOriginal:"Link all'originale"},search:{title:"Cerca",searchBarPlaceholder:"Cerca qualcosa"},tableOfContents:{title:"Tabella dei contenuti"},contentMeta:{readingTime:__name(({minutes})=>`${minutes} minuti`,"readingTime")}},pages:{rss:{recentNotes:"Note recenti",lastFewNotes:__name(({count})=>`Ultime ${count} note`,"lastFewNotes")},error:{title:"Non trovato",notFound:"Questa pagina \xE8 privata o non esiste.",home:"Ritorna alla home page"},folderContent:{folder:"Cartella",itemsUnderFolder:__name(({count})=>count===1?"1 oggetto in questa cartella.":`${count} oggetti in questa cartella.`,"itemsUnderFolder")},tagContent:{tag:"Etichetta",tagIndex:"Indice etichette",itemsUnderTag:__name(({count})=>count===1?"1 oggetto con questa etichetta.":`${count} oggetti con questa etichetta.`,"itemsUnderTag"),showingFirst:__name(({count})=>`Prime ${count} etichette.`,"showingFirst"),totalTags:__name(({count})=>`Trovate ${count} etichette totali.`,"totalTags")}}};var ja_JP_default={propertyDefaults:{title:"\u7121\u984C",description:"\u8AAC\u660E\u306A\u3057"},components:{callout:{note:"\u30CE\u30FC\u30C8",abstract:"\u6284\u9332",info:"\u60C5\u5831",todo:"\u3084\u308B\u3079\u304D\u3053\u3068",tip:"\u30D2\u30F3\u30C8",success:"\u6210\u529F",question:"\u8CEA\u554F",warning:"\u8B66\u544A",failure:"\u5931\u6557",danger:"\u5371\u967A",bug:"\u30D0\u30B0",example:"\u4F8B",quote:"\u5F15\u7528"},backlinks:{title:"\u30D0\u30C3\u30AF\u30EA\u30F3\u30AF",noBacklinksFound:"\u30D0\u30C3\u30AF\u30EA\u30F3\u30AF\u306F\u3042\u308A\u307E\u305B\u3093"},themeToggle:{lightMode:"\u30E9\u30A4\u30C8\u30E2\u30FC\u30C9",darkMode:"\u30C0\u30FC\u30AF\u30E2\u30FC\u30C9"},explorer:{title:"\u30A8\u30AF\u30B9\u30D7\u30ED\u30FC\u30E9\u30FC"},footer:{createdWith:"\u4F5C\u6210"},graph:{title:"\u30B0\u30E9\u30D5\u30D3\u30E5\u30FC"},recentNotes:{title:"\u6700\u8FD1\u306E\u8A18\u4E8B",seeRemainingMore:__name(({remaining})=>`\u3055\u3089\u306B${remaining}\u4EF6 \u2192`,"seeRemainingMore")},transcludes:{transcludeOf:__name(({targetSlug})=>`${targetSlug}\u306E\u307E\u3068\u3081`,"transcludeOf"),linkToOriginal:"\u5143\u8A18\u4E8B\u3078\u306E\u30EA\u30F3\u30AF"},search:{title:"\u691C\u7D22",searchBarPlaceholder:"\u691C\u7D22\u30EF\u30FC\u30C9\u3092\u5165\u529B"},tableOfContents:{title:"\u76EE\u6B21"},contentMeta:{readingTime:__name(({minutes})=>`${minutes} min read`,"readingTime")}},pages:{rss:{recentNotes:"\u6700\u8FD1\u306E\u8A18\u4E8B",lastFewNotes:__name(({count})=>`\u6700\u65B0\u306E${count}\u4EF6`,"lastFewNotes")},error:{title:"Not Found",notFound:"\u30DA\u30FC\u30B8\u304C\u5B58\u5728\u3057\u306A\u3044\u304B\u3001\u975E\u516C\u958B\u8A2D\u5B9A\u306B\u306A\u3063\u3066\u3044\u307E\u3059\u3002",home:"\u30DB\u30FC\u30E0\u30DA\u30FC\u30B8\u306B\u623B\u308B"},folderContent:{folder:"\u30D5\u30A9\u30EB\u30C0",itemsUnderFolder:__name(({count})=>`${count}\u4EF6\u306E\u30DA\u30FC\u30B8`,"itemsUnderFolder")},tagContent:{tag:"\u30BF\u30B0",tagIndex:"\u30BF\u30B0\u4E00\u89A7",itemsUnderTag:__name(({count})=>`${count}\u4EF6\u306E\u30DA\u30FC\u30B8`,"itemsUnderTag"),showingFirst:__name(({count})=>`\u306E\u3046\u3061\u6700\u521D\u306E${count}\u4EF6\u3092\u8868\u793A\u3057\u3066\u3044\u307E\u3059`,"showingFirst"),totalTags:__name(({count})=>`\u5168${count}\u500B\u306E\u30BF\u30B0\u3092\u8868\u793A\u4E2D`,"totalTags")}}};var de_DE_default={propertyDefaults:{title:"Unbenannt",description:"Keine Beschreibung angegeben"},components:{callout:{note:"Hinweis",abstract:"Zusammenfassung",info:"Info",todo:"Zu erledigen",tip:"Tipp",success:"Erfolg",question:"Frage",warning:"Warnung",failure:"Misserfolg",danger:"Gefahr",bug:"Fehler",example:"Beispiel",quote:"Zitat"},backlinks:{title:"Backlinks",noBacklinksFound:"Keine Backlinks gefunden"},themeToggle:{lightMode:"Light Mode",darkMode:"Dark Mode"},explorer:{title:"Explorer"},footer:{createdWith:"Erstellt mit"},graph:{title:"Graphansicht"},recentNotes:{title:"Zuletzt bearbeitete Seiten",seeRemainingMore:__name(({remaining})=>`${remaining} weitere ansehen \u2192`,"seeRemainingMore")},transcludes:{transcludeOf:__name(({targetSlug})=>`Transklusion von ${targetSlug}`,"transcludeOf"),linkToOriginal:"Link zum Original"},search:{title:"Suche",searchBarPlaceholder:"Suche nach etwas"},tableOfContents:{title:"Inhaltsverzeichnis"},contentMeta:{readingTime:__name(({minutes})=>`${minutes} min read`,"readingTime")}},pages:{rss:{recentNotes:"Zuletzt bearbeitete Seiten",lastFewNotes:__name(({count})=>`Letzte ${count} Seiten`,"lastFewNotes")},error:{title:"Nicht gefunden",notFound:"Diese Seite ist entweder nicht \xF6ffentlich oder existiert nicht.",home:"Return to Homepage"},folderContent:{folder:"Ordner",itemsUnderFolder:__name(({count})=>count===1?"1 Datei in diesem Ordner.":`${count} Dateien in diesem Ordner.`,"itemsUnderFolder")},tagContent:{tag:"Tag",tagIndex:"Tag-\xDCbersicht",itemsUnderTag:__name(({count})=>count===1?"1 Datei mit diesem Tag.":`${count} Dateien mit diesem Tag.`,"itemsUnderTag"),showingFirst:__name(({count})=>`Die ersten ${count} Tags werden angezeigt.`,"showingFirst"),totalTags:__name(({count})=>`${count} Tags insgesamt.`,"totalTags")}}};var nl_NL_default={propertyDefaults:{title:"Naamloos",description:"Geen beschrijving gegeven."},components:{callout:{note:"Notitie",abstract:"Samenvatting",info:"Info",todo:"Te doen",tip:"Tip",success:"Succes",question:"Vraag",warning:"Waarschuwing",failure:"Mislukking",danger:"Gevaar",bug:"Bug",example:"Voorbeeld",quote:"Citaat"},backlinks:{title:"Backlinks",noBacklinksFound:"Geen backlinks gevonden"},themeToggle:{lightMode:"Lichte modus",darkMode:"Donkere modus"},explorer:{title:"Verkenner"},footer:{createdWith:"Gemaakt met"},graph:{title:"Grafiekweergave"},recentNotes:{title:"Recente notities",seeRemainingMore:__name(({remaining})=>`Zie ${remaining} meer \u2192`,"seeRemainingMore")},transcludes:{transcludeOf:__name(({targetSlug})=>`Invoeging van ${targetSlug}`,"transcludeOf"),linkToOriginal:"Link naar origineel"},search:{title:"Zoeken",searchBarPlaceholder:"Doorzoek de website"},tableOfContents:{title:"Inhoudsopgave"},contentMeta:{readingTime:__name(({minutes})=>minutes===1?"1 minuut leestijd":`${minutes} minuten leestijd`,"readingTime")}},pages:{rss:{recentNotes:"Recente notities",lastFewNotes:__name(({count})=>`Laatste ${count} notities`,"lastFewNotes")},error:{title:"Niet gevonden",notFound:"Deze pagina is niet zichtbaar of bestaat niet.",home:"Keer terug naar de start pagina"},folderContent:{folder:"Map",itemsUnderFolder:__name(({count})=>count===1?"1 item in deze map.":`${count} items in deze map.`,"itemsUnderFolder")},tagContent:{tag:"Label",tagIndex:"Label-index",itemsUnderTag:__name(({count})=>count===1?"1 item met dit label.":`${count} items met dit label.`,"itemsUnderTag"),showingFirst:__name(({count})=>count===1?"Eerste label tonen.":`Eerste ${count} labels tonen.`,"showingFirst"),totalTags:__name(({count})=>`${count} labels gevonden.`,"totalTags")}}};var ro_RO_default={propertyDefaults:{title:"F\u0103r\u0103 titlu",description:"Nici o descriere furnizat\u0103"},components:{callout:{note:"Not\u0103",abstract:"Rezumat",info:"Informa\u021Bie",todo:"De f\u0103cut",tip:"Sfat",success:"Succes",question:"\xCEntrebare",warning:"Avertisment",failure:"E\u0219ec",danger:"Pericol",bug:"Bug",example:"Exemplu",quote:"Citat"},backlinks:{title:"Leg\u0103turi \xEEnapoi",noBacklinksFound:"Nu s-au g\u0103sit leg\u0103turi \xEEnapoi"},themeToggle:{lightMode:"Modul luminos",darkMode:"Modul \xEEntunecat"},explorer:{title:"Explorator"},footer:{createdWith:"Creat cu"},graph:{title:"Graf"},recentNotes:{title:"Noti\u021Be recente",seeRemainingMore:__name(({remaining})=>`Vezi \xEEnc\u0103 ${remaining} \u2192`,"seeRemainingMore")},transcludes:{transcludeOf:__name(({targetSlug})=>`Extras din ${targetSlug}`,"transcludeOf"),linkToOriginal:"Leg\u0103tur\u0103 c\u0103tre original"},search:{title:"C\u0103utare",searchBarPlaceholder:"Introduce\u021Bi termenul de c\u0103utare..."},tableOfContents:{title:"Cuprins"},contentMeta:{readingTime:__name(({minutes})=>minutes==1?"lectur\u0103 de 1 minut":`lectur\u0103 de ${minutes} minute`,"readingTime")}},pages:{rss:{recentNotes:"Noti\u021Be recente",lastFewNotes:__name(({count})=>`Ultimele ${count} noti\u021Be`,"lastFewNotes")},error:{title:"Pagina nu a fost g\u0103sit\u0103",notFound:"Fie aceast\u0103 pagin\u0103 este privat\u0103, fie nu exist\u0103.",home:"Reveni\u021Bi la pagina de pornire"},folderContent:{folder:"Dosar",itemsUnderFolder:__name(({count})=>count===1?"1 articol \xEEn acest dosar.":`${count} elemente \xEEn acest dosar.`,"itemsUnderFolder")},tagContent:{tag:"Etichet\u0103",tagIndex:"Indexul etichetelor",itemsUnderTag:__name(({count})=>count===1?"1 articol cu aceast\u0103 etichet\u0103.":`${count} articole cu aceast\u0103 etichet\u0103.`,"itemsUnderTag"),showingFirst:__name(({count})=>`Se afi\u0219eaz\u0103 primele ${count} etichete.`,"showingFirst"),totalTags:__name(({count})=>`Au fost g\u0103site ${count} etichete \xEEn total.`,"totalTags")}}};var ca_ES_default={propertyDefaults:{title:"Sense t\xEDtol",description:"Sense descripci\xF3"},components:{callout:{note:"Nota",abstract:"Resum",info:"Informaci\xF3",todo:"Per fer",tip:"Consell",success:"\xC8xit",question:"Pregunta",warning:"Advert\xE8ncia",failure:"Fall",danger:"Perill",bug:"Error",example:"Exemple",quote:"Cita"},backlinks:{title:"Retroenlla\xE7",noBacklinksFound:"No s'han trobat retroenlla\xE7os"},themeToggle:{lightMode:"Mode clar",darkMode:"Mode fosc"},explorer:{title:"Explorador"},footer:{createdWith:"Creat amb"},graph:{title:"Vista Gr\xE0fica"},recentNotes:{title:"Notes Recents",seeRemainingMore:__name(({remaining})=>`Vegi ${remaining} m\xE9s \u2192`,"seeRemainingMore")},transcludes:{transcludeOf:__name(({targetSlug})=>`Transcluit de ${targetSlug}`,"transcludeOf"),linkToOriginal:"Enlla\xE7 a l'original"},search:{title:"Cercar",searchBarPlaceholder:"Cerca alguna cosa"},tableOfContents:{title:"Taula de Continguts"},contentMeta:{readingTime:__name(({minutes})=>`Es llegeix en ${minutes} min`,"readingTime")}},pages:{rss:{recentNotes:"Notes recents",lastFewNotes:__name(({count})=>`\xDAltimes ${count} notes`,"lastFewNotes")},error:{title:"No s'ha trobat.",notFound:"Aquesta p\xE0gina \xE9s privada o no existeix.",home:"Torna a la p\xE0gina principal"},folderContent:{folder:"Carpeta",itemsUnderFolder:__name(({count})=>count===1?"1 article en aquesta carpeta.":`${count} articles en esta carpeta.`,"itemsUnderFolder")},tagContent:{tag:"Etiqueta",tagIndex:"\xEDndex d'Etiquetes",itemsUnderTag:__name(({count})=>count===1?"1 article amb aquesta etiqueta.":`${count} article amb aquesta etiqueta.`,"itemsUnderTag"),showingFirst:__name(({count})=>`Mostrant les primeres ${count} etiquetes.`,"showingFirst"),totalTags:__name(({count})=>`S'han trobat ${count} etiquetes en total.`,"totalTags")}}};var es_ES_default={propertyDefaults:{title:"Sin t\xEDtulo",description:"Sin descripci\xF3n"},components:{callout:{note:"Nota",abstract:"Resumen",info:"Informaci\xF3n",todo:"Por hacer",tip:"Consejo",success:"\xC9xito",question:"Pregunta",warning:"Advertencia",failure:"Fallo",danger:"Peligro",bug:"Error",example:"Ejemplo",quote:"Cita"},backlinks:{title:"Retroenlaces",noBacklinksFound:"No se han encontrado retroenlaces"},themeToggle:{lightMode:"Modo claro",darkMode:"Modo oscuro"},explorer:{title:"Explorador"},footer:{createdWith:"Creado con"},graph:{title:"Vista Gr\xE1fica"},recentNotes:{title:"Notas Recientes",seeRemainingMore:__name(({remaining})=>`Vea ${remaining} m\xE1s \u2192`,"seeRemainingMore")},transcludes:{transcludeOf:__name(({targetSlug})=>`Transcluido de ${targetSlug}`,"transcludeOf"),linkToOriginal:"Enlace al original"},search:{title:"Buscar",searchBarPlaceholder:"Busca algo"},tableOfContents:{title:"Tabla de Contenidos"},contentMeta:{readingTime:__name(({minutes})=>`Se lee en ${minutes} min`,"readingTime")}},pages:{rss:{recentNotes:"Notas recientes",lastFewNotes:__name(({count})=>`\xDAltimas ${count} notas`,"lastFewNotes")},error:{title:"No se ha encontrado.",notFound:"Esta p\xE1gina es privada o no existe.",home:"Regresa a la p\xE1gina principal"},folderContent:{folder:"Carpeta",itemsUnderFolder:__name(({count})=>count===1?"1 art\xEDculo en esta carpeta.":`${count} art\xEDculos en esta carpeta.`,"itemsUnderFolder")},tagContent:{tag:"Etiqueta",tagIndex:"\xCDndice de Etiquetas",itemsUnderTag:__name(({count})=>count===1?"1 art\xEDculo con esta etiqueta.":`${count} art\xEDculos con esta etiqueta.`,"itemsUnderTag"),showingFirst:__name(({count})=>`Mostrando las primeras ${count} etiquetas.`,"showingFirst"),totalTags:__name(({count})=>`Se han encontrado ${count} etiquetas en total.`,"totalTags")}}};var ar_SA_default={propertyDefaults:{title:"\u063A\u064A\u0631 \u0645\u0639\u0646\u0648\u0646",description:"\u0644\u0645 \u064A\u062A\u0645 \u062A\u0642\u062F\u064A\u0645 \u0623\u064A \u0648\u0635\u0641"},components:{callout:{note:"\u0645\u0644\u0627\u062D\u0638\u0629",abstract:"\u0645\u0644\u062E\u0635",info:"\u0645\u0639\u0644\u0648\u0645\u0627\u062A",todo:"\u0644\u0644\u0642\u064A\u0627\u0645",tip:"\u0646\u0635\u064A\u062D\u0629",success:"\u0646\u062C\u0627\u062D",question:"\u0633\u0624\u0627\u0644",warning:"\u062A\u062D\u0630\u064A\u0631",failure:"\u0641\u0634\u0644",danger:"\u062E\u0637\u0631",bug:"\u062E\u0644\u0644",example:"\u0645\u062B\u0627\u0644",quote:"\u0627\u0642\u062A\u0628\u0627\u0633"},backlinks:{title:"\u0648\u0635\u0644\u0627\u062A \u0627\u0644\u0639\u0648\u062F\u0629",noBacklinksFound:"\u0644\u0627 \u064A\u0648\u062C\u062F \u0648\u0635\u0644\u0627\u062A \u0639\u0648\u062F\u0629"},themeToggle:{lightMode:"\u0627\u0644\u0648\u0636\u0639 \u0627\u0644\u0646\u0647\u0627\u0631\u064A",darkMode:"\u0627\u0644\u0648\u0636\u0639 \u0627\u0644\u0644\u064A\u0644\u064A"},explorer:{title:"\u0627\u0644\u0645\u0633\u062A\u0639\u0631\u0636"},footer:{createdWith:"\u0623\u064F\u0646\u0634\u0626 \u0628\u0627\u0633\u062A\u062E\u062F\u0627\u0645"},graph:{title:"\u0627\u0644\u062A\u0645\u062B\u064A\u0644 \u0627\u0644\u062A\u0641\u0627\u0639\u0644\u064A"},recentNotes:{title:"\u0622\u062E\u0631 \u0627\u0644\u0645\u0644\u0627\u062D\u0638\u0627\u062A",seeRemainingMore:__name(({remaining})=>`\u062A\u0635\u0641\u062D ${remaining} \u0623\u0643\u062B\u0631 \u2192`,"seeRemainingMore")},transcludes:{transcludeOf:__name(({targetSlug})=>`\u0645\u0642\u062A\u0628\u0633 \u0645\u0646 ${targetSlug}`,"transcludeOf"),linkToOriginal:"\u0648\u0635\u0644\u0629 \u0644\u0644\u0645\u0644\u0627\u062D\u0638\u0629 \u0627\u0644\u0631\u0626\u064A\u0633\u0629"},search:{title:"\u0628\u062D\u062B",searchBarPlaceholder:"\u0627\u0628\u062D\u062B \u0639\u0646 \u0634\u064A\u0621 \u0645\u0627"},tableOfContents:{title:"\u0641\u0647\u0631\u0633 \u0627\u0644\u0645\u062D\u062A\u0648\u064A\u0627\u062A"},contentMeta:{readingTime:__name(({minutes})=>minutes==1?"\u062F\u0642\u064A\u0642\u0629 \u0623\u0648 \u0623\u0642\u0644 \u0644\u0644\u0642\u0631\u0627\u0621\u0629":minutes==2?"\u062F\u0642\u064A\u0642\u062A\u0627\u0646 \u0644\u0644\u0642\u0631\u0627\u0621\u0629":`${minutes} \u062F\u0642\u0627\u0626\u0642 \u0644\u0644\u0642\u0631\u0627\u0621\u0629`,"readingTime")}},pages:{rss:{recentNotes:"\u0622\u062E\u0631 \u0627\u0644\u0645\u0644\u0627\u062D\u0638\u0627\u062A",lastFewNotes:__name(({count})=>`\u0622\u062E\u0631 ${count} \u0645\u0644\u0627\u062D\u0638\u0629`,"lastFewNotes")},error:{title:"\u063A\u064A\u0631 \u0645\u0648\u062C\u0648\u062F",notFound:"\u0625\u0645\u0627 \u0623\u0646 \u0647\u0630\u0647 \u0627\u0644\u0635\u0641\u062D\u0629 \u062E\u0627\u0635\u0629 \u0623\u0648 \u063A\u064A\u0631 \u0645\u0648\u062C\u0648\u062F\u0629.",home:"\u0627\u0644\u0639\u0648\u062F\u0647 \u0644\u0644\u0635\u0641\u062D\u0629 \u0627\u0644\u0631\u0626\u064A\u0633\u064A\u0629"},folderContent:{folder:"\u0645\u062C\u0644\u062F",itemsUnderFolder:__name(({count})=>count===1?"\u064A\u0648\u062C\u062F \u0639\u0646\u0635\u0631 \u0648\u0627\u062D\u062F \u0641\u0642\u0637 \u062A\u062D\u062A \u0647\u0630\u0627 \u0627\u0644\u0645\u062C\u0644\u062F":`\u064A\u0648\u062C\u062F ${count} \u0639\u0646\u0627\u0635\u0631 \u062A\u062D\u062A \u0647\u0630\u0627 \u0627\u0644\u0645\u062C\u0644\u062F.`,"itemsUnderFolder")},tagContent:{tag:"\u0627\u0644\u0648\u0633\u0645",tagIndex:"\u0645\u0624\u0634\u0631 \u0627\u0644\u0648\u0633\u0645",itemsUnderTag:__name(({count})=>count===1?"\u064A\u0648\u062C\u062F \u0639\u0646\u0635\u0631 \u0648\u0627\u062D\u062F \u0641\u0642\u0637 \u062A\u062D\u062A \u0647\u0630\u0627 \u0627\u0644\u0648\u0633\u0645":`\u064A\u0648\u062C\u062F ${count} \u0639\u0646\u0627\u0635\u0631 \u062A\u062D\u062A \u0647\u0630\u0627 \u0627\u0644\u0648\u0633\u0645.`,"itemsUnderTag"),showingFirst:__name(({count})=>`\u0625\u0638\u0647\u0627\u0631 \u0623\u0648\u0644 ${count} \u0623\u0648\u0633\u0645\u0629.`,"showingFirst"),totalTags:__name(({count})=>`\u064A\u0648\u062C\u062F ${count} \u0623\u0648\u0633\u0645\u0629.`,"totalTags")}}};var uk_UA_default={propertyDefaults:{title:"\u0411\u0435\u0437 \u043D\u0430\u0437\u0432\u0438",description:"\u041E\u043F\u0438\u0441 \u043D\u0435 \u043D\u0430\u0434\u0430\u043D\u043E"},components:{callout:{note:"\u041F\u0440\u0438\u043C\u0456\u0442\u043A\u0430",abstract:"\u0410\u0431\u0441\u0442\u0440\u0430\u043A\u0442",info:"\u0406\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0456\u044F",todo:"\u0417\u0430\u0432\u0434\u0430\u043D\u043D\u044F",tip:"\u041F\u043E\u0440\u0430\u0434\u0430",success:"\u0423\u0441\u043F\u0456\u0445",question:"\u041F\u0438\u0442\u0430\u043D\u043D\u044F",warning:"\u041F\u043E\u043F\u0435\u0440\u0435\u0434\u0436\u0435\u043D\u043D\u044F",failure:"\u041D\u0435\u0432\u0434\u0430\u0447\u0430",danger:"\u041D\u0435\u0431\u0435\u0437\u043F\u0435\u043A\u0430",bug:"\u0411\u0430\u0433",example:"\u041F\u0440\u0438\u043A\u043B\u0430\u0434",quote:"\u0426\u0438\u0442\u0430\u0442\u0430"},backlinks:{title:"\u0417\u0432\u043E\u0440\u043E\u0442\u043D\u0456 \u043F\u043E\u0441\u0438\u043B\u0430\u043D\u043D\u044F",noBacklinksFound:"\u0417\u0432\u043E\u0440\u043E\u0442\u043D\u0438\u0445 \u043F\u043E\u0441\u0438\u043B\u0430\u043D\u044C \u043D\u0435 \u0437\u043D\u0430\u0439\u0434\u0435\u043D\u043E"},themeToggle:{lightMode:"\u0421\u0432\u0456\u0442\u043B\u0438\u0439 \u0440\u0435\u0436\u0438\u043C",darkMode:"\u0422\u0435\u043C\u043D\u0438\u0439 \u0440\u0435\u0436\u0438\u043C"},explorer:{title:"\u041F\u0440\u043E\u0432\u0456\u0434\u043D\u0438\u043A"},footer:{createdWith:"\u0421\u0442\u0432\u043E\u0440\u0435\u043D\u043E \u0437\u0430 \u0434\u043E\u043F\u043E\u043C\u043E\u0433\u043E\u044E"},graph:{title:"\u0412\u0438\u0433\u043B\u044F\u0434 \u0433\u0440\u0430\u0444\u0430"},recentNotes:{title:"\u041E\u0441\u0442\u0430\u043D\u043D\u0456 \u043D\u043E\u0442\u0430\u0442\u043A\u0438",seeRemainingMore:__name(({remaining})=>`\u041F\u0435\u0440\u0435\u0433\u043B\u044F\u043D\u0443\u0442\u0438 \u0449\u0435 ${remaining} \u2192`,"seeRemainingMore")},transcludes:{transcludeOf:__name(({targetSlug})=>`\u0412\u0438\u0434\u043E\u0431\u0443\u0442\u043E \u0437 ${targetSlug}`,"transcludeOf"),linkToOriginal:"\u041F\u043E\u0441\u0438\u043B\u0430\u043D\u043D\u044F \u043D\u0430 \u043E\u0440\u0438\u0433\u0456\u043D\u0430\u043B"},search:{title:"\u041F\u043E\u0448\u0443\u043A",searchBarPlaceholder:"\u0428\u0443\u043A\u0430\u0442\u0438 \u0449\u043E\u0441\u044C"},tableOfContents:{title:"\u0417\u043C\u0456\u0441\u0442"},contentMeta:{readingTime:__name(({minutes})=>`${minutes} \u0445\u0432 \u0447\u0438\u0442\u0430\u043D\u043D\u044F`,"readingTime")}},pages:{rss:{recentNotes:"\u041E\u0441\u0442\u0430\u043D\u043D\u0456 \u043D\u043E\u0442\u0430\u0442\u043A\u0438",lastFewNotes:__name(({count})=>`\u041E\u0441\u0442\u0430\u043D\u043D\u0456 \u043D\u043E\u0442\u0430\u0442\u043A\u0438: ${count}`,"lastFewNotes")},error:{title:"\u041D\u0435 \u0437\u043D\u0430\u0439\u0434\u0435\u043D\u043E",notFound:"\u0426\u044F \u0441\u0442\u043E\u0440\u0456\u043D\u043A\u0430 \u0430\u0431\u043E \u043F\u0440\u0438\u0432\u0430\u0442\u043D\u0430, \u0430\u0431\u043E \u043D\u0435 \u0456\u0441\u043D\u0443\u0454.",home:"\u041F\u043E\u0432\u0435\u0440\u043D\u0443\u0442\u0438\u0441\u044F \u043D\u0430 \u0433\u043E\u043B\u043E\u0432\u043D\u0443 \u0441\u0442\u043E\u0440\u0456\u043D\u043A\u0443"},folderContent:{folder:"\u0422\u0435\u043A\u0430",itemsUnderFolder:__name(({count})=>count===1?"\u0423 \u0446\u0456\u0439 \u0442\u0435\u0446\u0456 1 \u0435\u043B\u0435\u043C\u0435\u043D\u0442.":`\u0415\u043B\u0435\u043C\u0435\u043D\u0442\u0456\u0432 \u0443 \u0446\u0456\u0439 \u0442\u0435\u0446\u0456: ${count}.`,"itemsUnderFolder")},tagContent:{tag:"\u041C\u0456\u0442\u043A\u0430",tagIndex:"\u0406\u043D\u0434\u0435\u043A\u0441 \u043C\u0456\u0442\u043A\u0438",itemsUnderTag:__name(({count})=>count===1?"1 \u0435\u043B\u0435\u043C\u0435\u043D\u0442 \u0437 \u0446\u0456\u0454\u044E \u043C\u0456\u0442\u043A\u043E\u044E.":`\u0415\u043B\u0435\u043C\u0435\u043D\u0442\u0456\u0432 \u0437 \u0446\u0456\u0454\u044E \u043C\u0456\u0442\u043A\u043E\u044E: ${count}.`,"itemsUnderTag"),showingFirst:__name(({count})=>`\u041F\u043E\u043A\u0430\u0437 \u043F\u0435\u0440\u0448\u0438\u0445 ${count} \u043C\u0456\u0442\u043E\u043A.`,"showingFirst"),totalTags:__name(({count})=>`\u0412\u0441\u044C\u043E\u0433\u043E \u0437\u043D\u0430\u0439\u0434\u0435\u043D\u043E \u043C\u0456\u0442\u043E\u043A: ${count}.`,"totalTags")}}};var ru_RU_default={propertyDefaults:{title:"\u0411\u0435\u0437 \u043D\u0430\u0437\u0432\u0430\u043D\u0438\u044F",description:"\u041E\u043F\u0438\u0441\u0430\u043D\u0438\u0435 \u043E\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u0435\u0442"},components:{callout:{note:"\u0417\u0430\u043C\u0435\u0442\u043A\u0430",abstract:"\u0420\u0435\u0437\u044E\u043C\u0435",info:"\u0418\u043D\u0444\u043E",todo:"\u0421\u0434\u0435\u043B\u0430\u0442\u044C",tip:"\u041F\u043E\u0434\u0441\u043A\u0430\u0437\u043A\u0430",success:"\u0423\u0441\u043F\u0435\u0445",question:"\u0412\u043E\u043F\u0440\u043E\u0441",warning:"\u041F\u0440\u0435\u0434\u0443\u043F\u0440\u0435\u0436\u0434\u0435\u043D\u0438\u0435",failure:"\u041D\u0435\u0443\u0434\u0430\u0447\u0430",danger:"\u041E\u043F\u0430\u0441\u043D\u043E\u0441\u0442\u044C",bug:"\u0411\u0430\u0433",example:"\u041F\u0440\u0438\u043C\u0435\u0440",quote:"\u0426\u0438\u0442\u0430\u0442\u0430"},backlinks:{title:"\u041E\u0431\u0440\u0430\u0442\u043D\u044B\u0435 \u0441\u0441\u044B\u043B\u043A\u0438",noBacklinksFound:"\u041E\u0431\u0440\u0430\u0442\u043D\u044B\u0435 \u0441\u0441\u044B\u043B\u043A\u0438 \u043E\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u044E\u0442"},themeToggle:{lightMode:"\u0421\u0432\u0435\u0442\u043B\u044B\u0439 \u0440\u0435\u0436\u0438\u043C",darkMode:"\u0422\u0451\u043C\u043D\u044B\u0439 \u0440\u0435\u0436\u0438\u043C"},explorer:{title:"\u041F\u0440\u043E\u0432\u043E\u0434\u043D\u0438\u043A"},footer:{createdWith:"\u0421\u043E\u0437\u0434\u0430\u043D\u043E \u0441 \u043F\u043E\u043C\u043E\u0449\u044C\u044E"},graph:{title:"\u0412\u0438\u0434 \u0433\u0440\u0430\u0444\u0430"},recentNotes:{title:"\u041D\u0435\u0434\u0430\u0432\u043D\u0438\u0435 \u0437\u0430\u043C\u0435\u0442\u043A\u0438",seeRemainingMore:__name(({remaining})=>`\u041F\u043E\u0441\u043C\u043E\u0442\u0440\u0435\u0442\u044C \u043E\u0441\u0442\u0430\u0432\u0448${getForm(remaining,"\u0443\u044E\u0441\u044F","\u0438\u0435\u0441\u044F","\u0438\u0435\u0441\u044F")} ${remaining} \u2192`,"seeRemainingMore")},transcludes:{transcludeOf:__name(({targetSlug})=>`\u041F\u0435\u0440\u0435\u0445\u043E\u0434 \u0438\u0437 ${targetSlug}`,"transcludeOf"),linkToOriginal:"\u0421\u0441\u044B\u043B\u043A\u0430 \u043D\u0430 \u043E\u0440\u0438\u0433\u0438\u043D\u0430\u043B"},search:{title:"\u041F\u043E\u0438\u0441\u043A",searchBarPlaceholder:"\u041D\u0430\u0439\u0442\u0438 \u0447\u0442\u043E-\u043D\u0438\u0431\u0443\u0434\u044C"},tableOfContents:{title:"\u041E\u0433\u043B\u0430\u0432\u043B\u0435\u043D\u0438\u0435"},contentMeta:{readingTime:__name(({minutes})=>`\u0432\u0440\u0435\u043C\u044F \u0447\u0442\u0435\u043D\u0438\u044F ~${minutes} \u043C\u0438\u043D.`,"readingTime")}},pages:{rss:{recentNotes:"\u041D\u0435\u0434\u0430\u0432\u043D\u0438\u0435 \u0437\u0430\u043C\u0435\u0442\u043A\u0438",lastFewNotes:__name(({count})=>`\u041F\u043E\u0441\u043B\u0435\u0434\u043D${getForm(count,"\u044F\u044F","\u0438\u0435","\u0438\u0435")} ${count} \u0437\u0430\u043C\u0435\u0442${getForm(count,"\u043A\u0430","\u043A\u0438","\u043E\u043A")}`,"lastFewNotes")},error:{title:"\u0421\u0442\u0440\u0430\u043D\u0438\u0446\u0430 \u043D\u0435 \u043D\u0430\u0439\u0434\u0435\u043D\u0430",notFound:"\u042D\u0442\u0430 \u0441\u0442\u0440\u0430\u043D\u0438\u0446\u0430 \u043F\u0440\u0438\u0432\u0430\u0442\u043D\u0430\u044F \u0438\u043B\u0438 \u043D\u0435 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442",home:"\u0412\u0435\u0440\u043D\u0443\u0442\u044C\u0441\u044F \u043D\u0430 \u0433\u043B\u0430\u0432\u043D\u0443\u044E \u0441\u0442\u0440\u0430\u043D\u0438\u0446\u0443"},folderContent:{folder:"\u041F\u0430\u043F\u043A\u0430",itemsUnderFolder:__name(({count})=>`\u0432 \u044D\u0442\u043E\u0439 \u043F\u0430\u043F\u043A\u0435 ${count} \u044D\u043B\u0435\u043C\u0435\u043D\u0442${getForm(count,"","\u0430","\u043E\u0432")}`,"itemsUnderFolder")},tagContent:{tag:"\u0422\u0435\u0433",tagIndex:"\u0418\u043D\u0434\u0435\u043A\u0441 \u0442\u0435\u0433\u043E\u0432",itemsUnderTag:__name(({count})=>`\u0441 \u044D\u0442\u0438\u043C \u0442\u0435\u0433\u043E\u043C ${count} \u044D\u043B\u0435\u043C\u0435\u043D\u0442${getForm(count,"","\u0430","\u043E\u0432")}`,"itemsUnderTag"),showingFirst:__name(({count})=>`\u041F\u043E\u043A\u0430\u0437\u044B\u0432\u0430${getForm(count,"\u0435\u0442\u0441\u044F","\u044E\u0442\u0441\u044F","\u044E\u0442\u0441\u044F")} ${count} \u0442\u0435\u0433${getForm(count,"","\u0430","\u043E\u0432")}`,"showingFirst"),totalTags:__name(({count})=>`\u0412\u0441\u0435\u0433\u043E ${count} \u0442\u0435\u0433${getForm(count,"","\u0430","\u043E\u0432")}`,"totalTags")}}};function getForm(number,form1,form2,form5){let remainder100=number%100,remainder10=remainder100%10;return remainder100>=10&&remainder100<=20?form5:remainder10>1&&remainder10<5?form2:remainder10==1?form1:form5}__name(getForm,"getForm");var ko_KR_default={propertyDefaults:{title:"\uC81C\uBAA9 \uC5C6\uC74C",description:"\uC124\uBA85 \uC5C6\uC74C"},components:{callout:{note:"\uB178\uD2B8",abstract:"\uAC1C\uC694",info:"\uC815\uBCF4",todo:"\uD560\uC77C",tip:"\uD301",success:"\uC131\uACF5",question:"\uC9C8\uBB38",warning:"\uC8FC\uC758",failure:"\uC2E4\uD328",danger:"\uC704\uD5D8",bug:"\uBC84\uADF8",example:"\uC608\uC2DC",quote:"\uC778\uC6A9"},backlinks:{title:"\uBC31\uB9C1\uD06C",noBacklinksFound:"\uBC31\uB9C1\uD06C\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4."},themeToggle:{lightMode:"\uB77C\uC774\uD2B8 \uBAA8\uB4DC",darkMode:"\uB2E4\uD06C \uBAA8\uB4DC"},explorer:{title:"\uD0D0\uC0C9\uAE30"},footer:{createdWith:"Created with"},graph:{title:"\uADF8\uB798\uD504 \uBDF0"},recentNotes:{title:"\uCD5C\uADFC \uAC8C\uC2DC\uAE00",seeRemainingMore:__name(({remaining})=>`${remaining}\uAC74 \uB354\uBCF4\uAE30 \u2192`,"seeRemainingMore")},transcludes:{transcludeOf:__name(({targetSlug})=>`${targetSlug}\uC758 \uD3EC\uD568`,"transcludeOf"),linkToOriginal:"\uC6D0\uBCF8 \uB9C1\uD06C"},search:{title:"\uAC80\uC0C9",searchBarPlaceholder:"\uAC80\uC0C9\uC5B4\uB97C \uC785\uB825\uD558\uC138\uC694"},tableOfContents:{title:"\uBAA9\uCC28"},contentMeta:{readingTime:__name(({minutes})=>`${minutes} min read`,"readingTime")}},pages:{rss:{recentNotes:"\uCD5C\uADFC \uAC8C\uC2DC\uAE00",lastFewNotes:__name(({count})=>`\uCD5C\uADFC ${count} \uAC74`,"lastFewNotes")},error:{title:"Not Found",notFound:"\uD398\uC774\uC9C0\uAC00 \uC874\uC7AC\uD558\uC9C0 \uC54A\uAC70\uB098 \uBE44\uACF5\uAC1C \uC124\uC815\uC774 \uB418\uC5B4 \uC788\uC2B5\uB2C8\uB2E4.",home:"\uD648\uD398\uC774\uC9C0\uB85C \uB3CC\uC544\uAC00\uAE30"},folderContent:{folder:"\uD3F4\uB354",itemsUnderFolder:__name(({count})=>`${count}\uAC74\uC758 \uD56D\uBAA9`,"itemsUnderFolder")},tagContent:{tag:"\uD0DC\uADF8",tagIndex:"\uD0DC\uADF8 \uBAA9\uB85D",itemsUnderTag:__name(({count})=>`${count}\uAC74\uC758 \uD56D\uBAA9`,"itemsUnderTag"),showingFirst:__name(({count})=>`\uCC98\uC74C ${count}\uAC1C\uC758 \uD0DC\uADF8`,"showingFirst"),totalTags:__name(({count})=>`\uCD1D ${count}\uAC1C\uC758 \uD0DC\uADF8\uB97C \uCC3E\uC558\uC2B5\uB2C8\uB2E4.`,"totalTags")}}};var zh_CN_default={propertyDefaults:{title:"\u65E0\u9898",description:"\u65E0\u63CF\u8FF0"},components:{callout:{note:"\u7B14\u8BB0",abstract:"\u6458\u8981",info:"\u63D0\u793A",todo:"\u5F85\u529E",tip:"\u63D0\u793A",success:"\u6210\u529F",question:"\u95EE\u9898",warning:"\u8B66\u544A",failure:"\u5931\u8D25",danger:"\u5371\u9669",bug:"\u9519\u8BEF",example:"\u793A\u4F8B",quote:"\u5F15\u7528"},backlinks:{title:"\u53CD\u5411\u94FE\u63A5",noBacklinksFound:"\u65E0\u6CD5\u627E\u5230\u53CD\u5411\u94FE\u63A5"},themeToggle:{lightMode:"\u4EAE\u8272\u6A21\u5F0F",darkMode:"\u6697\u8272\u6A21\u5F0F"},explorer:{title:"\u63A2\u7D22"},footer:{createdWith:"Created with"},graph:{title:"\u5173\u7CFB\u56FE\u8C31"},recentNotes:{title:"\u6700\u8FD1\u7684\u7B14\u8BB0",seeRemainingMore:__name(({remaining})=>`\u67E5\u770B\u66F4\u591A${remaining}\u7BC7\u7B14\u8BB0 \u2192`,"seeRemainingMore")},transcludes:{transcludeOf:__name(({targetSlug})=>`\u5305\u542B${targetSlug}`,"transcludeOf"),linkToOriginal:"\u6307\u5411\u539F\u59CB\u7B14\u8BB0\u7684\u94FE\u63A5"},search:{title:"\u641C\u7D22",searchBarPlaceholder:"\u641C\u7D22\u4E9B\u4EC0\u4E48"},tableOfContents:{title:"\u76EE\u5F55"},contentMeta:{readingTime:__name(({minutes})=>`${minutes}\u5206\u949F\u9605\u8BFB`,"readingTime")}},pages:{rss:{recentNotes:"\u6700\u8FD1\u7684\u7B14\u8BB0",lastFewNotes:__name(({count})=>`\u6700\u8FD1\u7684${count}\u6761\u7B14\u8BB0`,"lastFewNotes")},error:{title:"\u65E0\u6CD5\u627E\u5230",notFound:"\u79C1\u6709\u7B14\u8BB0\u6216\u7B14\u8BB0\u4E0D\u5B58\u5728\u3002",home:"\u8FD4\u56DE\u9996\u9875"},folderContent:{folder:"\u6587\u4EF6\u5939",itemsUnderFolder:__name(({count})=>`\u6B64\u6587\u4EF6\u5939\u4E0B\u6709${count}\u6761\u7B14\u8BB0\u3002`,"itemsUnderFolder")},tagContent:{tag:"\u6807\u7B7E",tagIndex:"\u6807\u7B7E\u7D22\u5F15",itemsUnderTag:__name(({count})=>`\u6B64\u6807\u7B7E\u4E0B\u6709${count}\u6761\u7B14\u8BB0\u3002`,"itemsUnderTag"),showingFirst:__name(({count})=>`\u663E\u793A\u524D${count}\u4E2A\u6807\u7B7E\u3002`,"showingFirst"),totalTags:__name(({count})=>`\u603B\u5171\u6709${count}\u4E2A\u6807\u7B7E\u3002`,"totalTags")}}};var zh_TW_default={propertyDefaults:{title:"\u7121\u984C",description:"\u7121\u63CF\u8FF0"},components:{callout:{note:"\u7B46\u8A18",abstract:"\u6458\u8981",info:"\u63D0\u793A",todo:"\u5F85\u8FA6",tip:"\u63D0\u793A",success:"\u6210\u529F",question:"\u554F\u984C",warning:"\u8B66\u544A",failure:"\u5931\u6557",danger:"\u5371\u96AA",bug:"\u932F\u8AA4",example:"\u7BC4\u4F8B",quote:"\u5F15\u7528"},backlinks:{title:"\u53CD\u5411\u9023\u7D50",noBacklinksFound:"\u7121\u6CD5\u627E\u5230\u53CD\u5411\u9023\u7D50"},themeToggle:{lightMode:"\u4EAE\u8272\u6A21\u5F0F",darkMode:"\u6697\u8272\u6A21\u5F0F"},explorer:{title:"\u63A2\u7D22"},footer:{createdWith:"Created with"},graph:{title:"\u95DC\u4FC2\u5716\u8B5C"},recentNotes:{title:"\u6700\u8FD1\u7684\u7B46\u8A18",seeRemainingMore:__name(({remaining})=>`\u67E5\u770B\u66F4\u591A ${remaining} \u7BC7\u7B46\u8A18 \u2192`,"seeRemainingMore")},transcludes:{transcludeOf:__name(({targetSlug})=>`\u5305\u542B ${targetSlug}`,"transcludeOf"),linkToOriginal:"\u6307\u5411\u539F\u59CB\u7B46\u8A18\u7684\u9023\u7D50"},search:{title:"\u641C\u5C0B",searchBarPlaceholder:"\u641C\u5C0B\u4E9B\u4EC0\u9EBC"},tableOfContents:{title:"\u76EE\u9304"},contentMeta:{readingTime:__name(({minutes})=>`\u95B1\u8B80\u6642\u9593\u7D04 ${minutes} \u5206\u9418`,"readingTime")}},pages:{rss:{recentNotes:"\u6700\u8FD1\u7684\u7B46\u8A18",lastFewNotes:__name(({count})=>`\u6700\u8FD1\u7684 ${count} \u689D\u7B46\u8A18`,"lastFewNotes")},error:{title:"\u7121\u6CD5\u627E\u5230",notFound:"\u79C1\u4EBA\u7B46\u8A18\u6216\u7B46\u8A18\u4E0D\u5B58\u5728\u3002",home:"\u8FD4\u56DE\u9996\u9801"},folderContent:{folder:"\u8CC7\u6599\u593E",itemsUnderFolder:__name(({count})=>`\u6B64\u8CC7\u6599\u593E\u4E0B\u6709 ${count} \u689D\u7B46\u8A18\u3002`,"itemsUnderFolder")},tagContent:{tag:"\u6A19\u7C64",tagIndex:"\u6A19\u7C64\u7D22\u5F15",itemsUnderTag:__name(({count})=>`\u6B64\u6A19\u7C64\u4E0B\u6709 ${count} \u689D\u7B46\u8A18\u3002`,"itemsUnderTag"),showingFirst:__name(({count})=>`\u986F\u793A\u524D ${count} \u500B\u6A19\u7C64\u3002`,"showingFirst"),totalTags:__name(({count})=>`\u7E3D\u5171\u6709 ${count} \u500B\u6A19\u7C64\u3002`,"totalTags")}}};var vi_VN_default={propertyDefaults:{title:"Kh\xF4ng c\xF3 ti\xEAu \u0111\u1EC1",description:"Kh\xF4ng c\xF3 m\xF4 t\u1EA3 \u0111\u01B0\u1EE3c cung c\u1EA5p"},components:{callout:{note:"Ghi Ch\xFA",abstract:"T\xF3m T\u1EAFt",info:"Th\xF4ng tin",todo:"C\u1EA7n L\xE0m",tip:"G\u1EE3i \xDD",success:"Th\xE0nh C\xF4ng",question:"Nghi V\u1EA5n",warning:"C\u1EA3nh B\xE1o",failure:"Th\u1EA5t B\u1EA1i",danger:"Nguy Hi\u1EC3m",bug:"L\u1ED7i",example:"V\xED D\u1EE5",quote:"Tr\xEDch D\u1EABn"},backlinks:{title:"Li\xEAn K\u1EBFt Ng\u01B0\u1EE3c",noBacklinksFound:"Kh\xF4ng c\xF3 li\xEAn k\u1EBFt ng\u01B0\u1EE3c \u0111\u01B0\u1EE3c t\xECm th\u1EA5y"},themeToggle:{lightMode:"S\xE1ng",darkMode:"T\u1ED1i"},explorer:{title:"Trong b\xE0i n\xE0y"},footer:{createdWith:"\u0110\u01B0\u1EE3c t\u1EA1o b\u1EDFi"},graph:{title:"Bi\u1EC3u \u0110\u1ED3"},recentNotes:{title:"B\xE0i vi\u1EBFt g\u1EA7n \u0111\xE2y",seeRemainingMore:__name(({remaining})=>`Xem ${remaining} th\xEAm \u2192`,"seeRemainingMore")},transcludes:{transcludeOf:__name(({targetSlug})=>`Bao g\u1ED3m ${targetSlug}`,"transcludeOf"),linkToOriginal:"Li\xEAn K\u1EBFt G\u1ED1c"},search:{title:"T\xECm Ki\u1EBFm",searchBarPlaceholder:"T\xECm ki\u1EBFm th\xF4ng tin"},tableOfContents:{title:"B\u1EA3ng N\u1ED9i Dung"},contentMeta:{readingTime:__name(({minutes})=>`\u0111\u1ECDc ${minutes} ph\xFAt`,"readingTime")}},pages:{rss:{recentNotes:"Nh\u1EEFng b\xE0i g\u1EA7n \u0111\xE2y",lastFewNotes:__name(({count})=>`${count} B\xE0i g\u1EA7n \u0111\xE2y`,"lastFewNotes")},error:{title:"Kh\xF4ng T\xECm Th\u1EA5y",notFound:"Trang n\xE0y \u0111\u01B0\u1EE3c b\u1EA3o m\u1EADt ho\u1EB7c kh\xF4ng t\u1ED3n t\u1EA1i.",home:"Tr\u1EDF v\u1EC1 trang ch\u1EE7"},folderContent:{folder:"Th\u01B0 M\u1EE5c",itemsUnderFolder:__name(({count})=>count===1?"1 m\u1EE5c trong th\u01B0 m\u1EE5c n\xE0y.":`${count} m\u1EE5c trong th\u01B0 m\u1EE5c n\xE0y.`,"itemsUnderFolder")},tagContent:{tag:"Th\u1EBB",tagIndex:"Th\u1EBB M\u1EE5c L\u1EE5c",itemsUnderTag:__name(({count})=>count===1?"1 m\u1EE5c g\u1EAFn th\u1EBB n\xE0y.":`${count} m\u1EE5c g\u1EAFn th\u1EBB n\xE0y.`,"itemsUnderTag"),showingFirst:__name(({count})=>`Hi\u1EC3n th\u1ECB tr\u01B0\u1EDBc ${count} th\u1EBB.`,"showingFirst"),totalTags:__name(({count})=>`T\xECm th\u1EA5y ${count} th\u1EBB t\u1ED5ng c\u1ED9ng.`,"totalTags")}}};var pt_BR_default={propertyDefaults:{title:"Sem t\xEDtulo",description:"Sem descri\xE7\xE3o"},components:{callout:{note:"Nota",abstract:"Abstrato",info:"Info",todo:"Pend\xEAncia",tip:"Dica",success:"Sucesso",question:"Pergunta",warning:"Aviso",failure:"Falha",danger:"Perigo",bug:"Bug",example:"Exemplo",quote:"Cita\xE7\xE3o"},backlinks:{title:"Backlinks",noBacklinksFound:"Sem backlinks encontrados"},themeToggle:{lightMode:"Tema claro",darkMode:"Tema escuro"},explorer:{title:"Explorador"},footer:{createdWith:"Criado com"},graph:{title:"Vis\xE3o de gr\xE1fico"},recentNotes:{title:"Notas recentes",seeRemainingMore:__name(({remaining})=>`Veja mais ${remaining} \u2192`,"seeRemainingMore")},transcludes:{transcludeOf:__name(({targetSlug})=>`Transcrever de ${targetSlug}`,"transcludeOf"),linkToOriginal:"Link ao original"},search:{title:"Pesquisar",searchBarPlaceholder:"Pesquisar por algo"},tableOfContents:{title:"Sum\xE1rio"},contentMeta:{readingTime:__name(({minutes})=>`Leitura de ${minutes} min`,"readingTime")}},pages:{rss:{recentNotes:"Notas recentes",lastFewNotes:__name(({count})=>`\xDAltimas ${count} notas`,"lastFewNotes")},error:{title:"N\xE3o encontrado",notFound:"Esta p\xE1gina \xE9 privada ou n\xE3o existe.",home:"Retornar a p\xE1gina inicial"},folderContent:{folder:"Arquivo",itemsUnderFolder:__name(({count})=>count===1?"1 item neste arquivo.":`${count} items neste arquivo.`,"itemsUnderFolder")},tagContent:{tag:"Tag",tagIndex:"Sum\xE1rio de Tags",itemsUnderTag:__name(({count})=>count===1?"1 item com esta tag.":`${count} items com esta tag.`,"itemsUnderTag"),showingFirst:__name(({count})=>`Mostrando as ${count} primeiras tags.`,"showingFirst"),totalTags:__name(({count})=>`Encontradas ${count} tags.`,"totalTags")}}};var hu_HU_default={propertyDefaults:{title:"N\xE9vtelen",description:"Nincs le\xEDr\xE1s"},components:{callout:{note:"Jegyzet",abstract:"Abstract",info:"Inform\xE1ci\xF3",todo:"Tennival\xF3",tip:"Tipp",success:"Siker",question:"K\xE9rd\xE9s",warning:"Figyelmeztet\xE9s",failure:"Hiba",danger:"Vesz\xE9ly",bug:"Bug",example:"P\xE9lda",quote:"Id\xE9zet"},backlinks:{title:"Visszautal\xE1sok",noBacklinksFound:"Nincs visszautal\xE1s"},themeToggle:{lightMode:"Vil\xE1gos m\xF3d",darkMode:"S\xF6t\xE9t m\xF3d"},explorer:{title:"F\xE1jlb\xF6ng\xE9sz\u0151"},footer:{createdWith:"K\xE9sz\xEDtve ezzel:"},graph:{title:"Grafikonn\xE9zet"},recentNotes:{title:"Legut\xF3bbi jegyzetek",seeRemainingMore:__name(({remaining})=>`${remaining} tov\xE1bbi megtekint\xE9se \u2192`,"seeRemainingMore")},transcludes:{transcludeOf:__name(({targetSlug})=>`${targetSlug} \xE1thivatkoz\xE1sa`,"transcludeOf"),linkToOriginal:"Hivatkoz\xE1s az eredetire"},search:{title:"Keres\xE9s",searchBarPlaceholder:"Keress valamire"},tableOfContents:{title:"Tartalomjegyz\xE9k"},contentMeta:{readingTime:__name(({minutes})=>`${minutes} perces olvas\xE1s`,"readingTime")}},pages:{rss:{recentNotes:"Legut\xF3bbi jegyzetek",lastFewNotes:__name(({count})=>`Legut\xF3bbi ${count} jegyzet`,"lastFewNotes")},error:{title:"Nem tal\xE1lhat\xF3",notFound:"Ez a lap vagy priv\xE1t vagy nem l\xE9tezik.",home:"Vissza a kezd\u0151lapra"},folderContent:{folder:"Mappa",itemsUnderFolder:__name(({count})=>`Ebben a mapp\xE1ban ${count} elem tal\xE1lhat\xF3.`,"itemsUnderFolder")},tagContent:{tag:"C\xEDmke",tagIndex:"C\xEDmke index",itemsUnderTag:__name(({count})=>`${count} elem tal\xE1lhat\xF3 ezzel a c\xEDmk\xE9vel.`,"itemsUnderTag"),showingFirst:__name(({count})=>`Els\u0151 ${count} c\xEDmke megjelen\xEDtve.`,"showingFirst"),totalTags:__name(({count})=>`\xD6sszesen ${count} c\xEDmke tal\xE1lhat\xF3.`,"totalTags")}}};var fa_IR_default={propertyDefaults:{title:"\u0628\u062F\u0648\u0646 \u0639\u0646\u0648\u0627\u0646",description:"\u062A\u0648\u0636\u06CC\u062D \u062E\u0627\u0635\u06CC \u0627\u0636\u0627\u0641\u0647 \u0646\u0634\u062F\u0647 \u0627\u0633\u062A"},components:{callout:{note:"\u06CC\u0627\u062F\u062F\u0627\u0634\u062A",abstract:"\u0686\u06A9\u06CC\u062F\u0647",info:"\u0627\u0637\u0644\u0627\u0639\u0627\u062A",todo:"\u0627\u0642\u062F\u0627\u0645",tip:"\u0646\u06A9\u062A\u0647",success:"\u062A\u06CC\u06A9",question:"\u0633\u0624\u0627\u0644",warning:"\u0647\u0634\u062F\u0627\u0631",failure:"\u0634\u06A9\u0633\u062A",danger:"\u062E\u0637\u0631",bug:"\u0628\u0627\u06AF",example:"\u0645\u062B\u0627\u0644",quote:"\u0646\u0642\u0644 \u0642\u0648\u0644"},backlinks:{title:"\u0628\u06A9\u200C\u0644\u06CC\u0646\u06A9\u200C\u0647\u0627",noBacklinksFound:"\u0628\u062F\u0648\u0646 \u0628\u06A9\u200C\u0644\u06CC\u0646\u06A9"},themeToggle:{lightMode:"\u062D\u0627\u0644\u062A \u0631\u0648\u0634\u0646",darkMode:"\u062D\u0627\u0644\u062A \u062A\u0627\u0631\u06CC\u06A9"},explorer:{title:"\u0645\u0637\u0627\u0644\u0628"},footer:{createdWith:"\u0633\u0627\u062E\u062A\u0647 \u0634\u062F\u0647 \u0628\u0627"},graph:{title:"\u0646\u0645\u0627\u06CC \u06AF\u0631\u0627\u0641"},recentNotes:{title:"\u06CC\u0627\u062F\u062F\u0627\u0634\u062A\u200C\u0647\u0627\u06CC \u0627\u062E\u06CC\u0631",seeRemainingMore:__name(({remaining})=>`${remaining} \u06CC\u0627\u062F\u062F\u0627\u0634\u062A \u062F\u06CC\u06AF\u0631 \u2192`,"seeRemainingMore")},transcludes:{transcludeOf:__name(({targetSlug})=>`\u0627\u0632 ${targetSlug}`,"transcludeOf"),linkToOriginal:"\u067E\u06CC\u0648\u0646\u062F \u0628\u0647 \u0627\u0635\u0644\u06CC"},search:{title:"\u062C\u0633\u062A\u062C\u0648",searchBarPlaceholder:"\u0645\u0637\u0644\u0628\u06CC \u0631\u0627 \u062C\u0633\u062A\u062C\u0648 \u06A9\u0646\u06CC\u062F"},tableOfContents:{title:"\u0641\u0647\u0631\u0633\u062A"},contentMeta:{readingTime:__name(({minutes})=>`\u0632\u0645\u0627\u0646 \u062A\u0642\u0631\u06CC\u0628\u06CC \u0645\u0637\u0627\u0644\u0639\u0647: ${minutes} \u062F\u0642\u06CC\u0642\u0647`,"readingTime")}},pages:{rss:{recentNotes:"\u06CC\u0627\u062F\u062F\u0627\u0634\u062A\u200C\u0647\u0627\u06CC \u0627\u062E\u06CC\u0631",lastFewNotes:__name(({count})=>`${count} \u06CC\u0627\u062F\u062F\u0627\u0634\u062A \u0627\u062E\u06CC\u0631`,"lastFewNotes")},error:{title:"\u06CC\u0627\u0641\u062A \u0646\u0634\u062F",notFound:"\u0627\u06CC\u0646 \u0635\u0641\u062D\u0647 \u06CC\u0627 \u062E\u0635\u0648\u0635\u06CC \u0627\u0633\u062A \u06CC\u0627 \u0648\u062C\u0648\u062F \u0646\u062F\u0627\u0631\u062F",home:"\u0628\u0627\u0632\u06AF\u0634\u062A \u0628\u0647 \u0635\u0641\u062D\u0647 \u0627\u0635\u0644\u06CC"},folderContent:{folder:"\u067E\u0648\u0634\u0647",itemsUnderFolder:__name(({count})=>count===1?".\u06CC\u06A9 \u0645\u0637\u0644\u0628 \u062F\u0631 \u0627\u06CC\u0646 \u067E\u0648\u0634\u0647 \u0627\u0633\u062A":`${count} \u0645\u0637\u0644\u0628 \u062F\u0631 \u0627\u06CC\u0646 \u067E\u0648\u0634\u0647 \u0627\u0633\u062A.`,"itemsUnderFolder")},tagContent:{tag:"\u0628\u0631\u0686\u0633\u0628",tagIndex:"\u0641\u0647\u0631\u0633\u062A \u0628\u0631\u0686\u0633\u0628\u200C\u0647\u0627",itemsUnderTag:__name(({count})=>count===1?"\u06CC\u06A9 \u0645\u0637\u0644\u0628 \u0628\u0627 \u0627\u06CC\u0646 \u0628\u0631\u0686\u0633\u0628":`${count} \u0645\u0637\u0644\u0628 \u0628\u0627 \u0627\u06CC\u0646 \u0628\u0631\u0686\u0633\u0628.`,"itemsUnderTag"),showingFirst:__name(({count})=>`\u062F\u0631 \u062D\u0627\u0644 \u0646\u0645\u0627\u06CC\u0634 ${count} \u0628\u0631\u0686\u0633\u0628.`,"showingFirst"),totalTags:__name(({count})=>`${count} \u0628\u0631\u0686\u0633\u0628 \u06CC\u0627\u0641\u062A \u0634\u062F.`,"totalTags")}}};var pl_PL_default={propertyDefaults:{title:"Bez nazwy",description:"Brak opisu"},components:{callout:{note:"Notatka",abstract:"Streszczenie",info:"informacja",todo:"Do zrobienia",tip:"Wskaz\xF3wka",success:"Zrobione",question:"Pytanie",warning:"Ostrze\u017Cenie",failure:"Usterka",danger:"Niebiezpiecze\u0144stwo",bug:"B\u0142\u0105d w kodzie",example:"Przyk\u0142ad",quote:"Cytat"},backlinks:{title:"Odno\u015Bniki zwrotne",noBacklinksFound:"Brak po\u0142\u0105cze\u0144 zwrotnych"},themeToggle:{lightMode:"Trzyb jasny",darkMode:"Tryb ciemny"},explorer:{title:"Przegl\u0105daj"},footer:{createdWith:"Stworzone z u\u017Cyciem"},graph:{title:"Graf"},recentNotes:{title:"Najnowsze notatki",seeRemainingMore:__name(({remaining})=>`Zobacz ${remaining} nastepnych \u2192`,"seeRemainingMore")},transcludes:{transcludeOf:__name(({targetSlug})=>`Osadzone ${targetSlug}`,"transcludeOf"),linkToOriginal:"\u0141\u0105cze do orygina\u0142u"},search:{title:"Szukaj",searchBarPlaceholder:"Search for something"},tableOfContents:{title:"Spis tre\u015Bci"},contentMeta:{readingTime:__name(({minutes})=>`${minutes} min. czytania `,"readingTime")}},pages:{rss:{recentNotes:"Najnowsze notatki",lastFewNotes:__name(({count})=>`Ostatnie ${count} notatek`,"lastFewNotes")},error:{title:"Nie znaleziono",notFound:"Ta strona jest prywatna lub nie istnieje.",home:"Powr\xF3t do strony g\u0142\xF3wnej"},folderContent:{folder:"Folder",itemsUnderFolder:__name(({count})=>count===1?"W tym folderze jest 1 element.":`Element\xF3w w folderze: ${count}.`,"itemsUnderFolder")},tagContent:{tag:"Znacznik",tagIndex:"Spis znacznik\xF3w",itemsUnderTag:__name(({count})=>count===1?"Oznaczony 1 element.":`Element\xF3w z tym znacznikiem: ${count}.`,"itemsUnderTag"),showingFirst:__name(({count})=>`Pokazuje ${count} pierwszych znacznik\xF3w.`,"showingFirst"),totalTags:__name(({count})=>`Znalezionych wszystkich znacznik\xF3w: ${count}.`,"totalTags")}}};var cs_CZ_default={propertyDefaults:{title:"Bez n\xE1zvu",description:"Nebyl uveden \u017E\xE1dn\xFD popis"},components:{callout:{note:"Pozn\xE1mka",abstract:"Abstract",info:"Info",todo:"Todo",tip:"Tip",success:"\xDAsp\u011Bch",question:"Ot\xE1zka",warning:"Upozorn\u011Bn\xED",failure:"Chyba",danger:"Nebezpe\u010D\xED",bug:"Bug",example:"P\u0159\xEDklad",quote:"Citace"},backlinks:{title:"P\u0159\xEDchoz\xED odkazy",noBacklinksFound:"Nenalezeny \u017E\xE1dn\xE9 p\u0159\xEDchoz\xED odkazy"},themeToggle:{lightMode:"Sv\u011Btl\xFD re\u017Eim",darkMode:"Tmav\xFD re\u017Eim"},explorer:{title:"Proch\xE1zet"},footer:{createdWith:"Vytvo\u0159eno pomoc\xED"},graph:{title:"Graf"},recentNotes:{title:"Nejnov\u011Bj\u0161\xED pozn\xE1mky",seeRemainingMore:__name(({remaining})=>`Zobraz ${remaining} dal\u0161\xEDch \u2192`,"seeRemainingMore")},transcludes:{transcludeOf:__name(({targetSlug})=>`Zobrazen\xED ${targetSlug}`,"transcludeOf"),linkToOriginal:"Odkaz na p\u016Fvodn\xED dokument"},search:{title:"Hledat",searchBarPlaceholder:"Hledejte n\u011Bco"},tableOfContents:{title:"Obsah"},contentMeta:{readingTime:__name(({minutes})=>`${minutes} min \u010Dten\xED`,"readingTime")}},pages:{rss:{recentNotes:"Nejnov\u011Bj\u0161\xED pozn\xE1mky",lastFewNotes:__name(({count})=>`Posledn\xEDch ${count} pozn\xE1mek`,"lastFewNotes")},error:{title:"Nenalezeno",notFound:"Tato str\xE1nka je bu\u010F soukrom\xE1, nebo neexistuje.",home:"N\xE1vrat na domovskou str\xE1nku"},folderContent:{folder:"Slo\u017Eka",itemsUnderFolder:__name(({count})=>count===1?"1 polo\u017Eka v t\xE9to slo\u017Ece.":`${count} polo\u017Eek v t\xE9to slo\u017Ece.`,"itemsUnderFolder")},tagContent:{tag:"Tag",tagIndex:"Rejst\u0159\xEDk tag\u016F",itemsUnderTag:__name(({count})=>count===1?"1 polo\u017Eka s t\xEDmto tagem.":`${count} polo\u017Eek s t\xEDmto tagem.`,"itemsUnderTag"),showingFirst:__name(({count})=>`Zobrazuj\xED se prvn\xED ${count} tagy.`,"showingFirst"),totalTags:__name(({count})=>`Nalezeno celkem ${count} tag\u016F.`,"totalTags")}}};var tr_TR_default={propertyDefaults:{title:"\u0130simsiz",description:"Herhangi bir a\xE7\u0131klama eklenmedi"},components:{callout:{note:"Not",abstract:"\xD6zet",info:"Bilgi",todo:"Yap\u0131lacaklar",tip:"\u0130pucu",success:"Ba\u015Far\u0131l\u0131",question:"Soru",warning:"Uyar\u0131",failure:"Ba\u015Far\u0131s\u0131z",danger:"Tehlike",bug:"Hata",example:"\xD6rnek",quote:"Al\u0131nt\u0131"},backlinks:{title:"Backlinkler",noBacklinksFound:"Backlink bulunamad\u0131"},themeToggle:{lightMode:"A\xE7\u0131k mod",darkMode:"Koyu mod"},explorer:{title:"Gezgin"},footer:{createdWith:"\u015Eununla olu\u015Fturuldu"},graph:{title:"Grafik G\xF6r\xFCn\xFCm\xFC"},recentNotes:{title:"Son Notlar",seeRemainingMore:__name(({remaining})=>`${remaining} tane daha g\xF6r \u2192`,"seeRemainingMore")},transcludes:{transcludeOf:__name(({targetSlug})=>`${targetSlug} sayfas\u0131ndan al\u0131nt\u0131`,"transcludeOf"),linkToOriginal:"Orijinal ba\u011Flant\u0131"},search:{title:"Arama",searchBarPlaceholder:"Bir \u015Fey aray\u0131n"},tableOfContents:{title:"\u0130\xE7indekiler"},contentMeta:{readingTime:__name(({minutes})=>`${minutes} dakika okuma s\xFCresi`,"readingTime")}},pages:{rss:{recentNotes:"Son notlar",lastFewNotes:__name(({count})=>`Son ${count} not`,"lastFewNotes")},error:{title:"Bulunamad\u0131",notFound:"Bu sayfa ya \xF6zel ya da mevcut de\u011Fil.",home:"Anasayfaya geri d\xF6n"},folderContent:{folder:"Klas\xF6r",itemsUnderFolder:__name(({count})=>count===1?"Bu klas\xF6r alt\u0131nda 1 \xF6\u011Fe.":`Bu klas\xF6r alt\u0131ndaki ${count} \xF6\u011Fe.`,"itemsUnderFolder")},tagContent:{tag:"Etiket",tagIndex:"Etiket S\u0131ras\u0131",itemsUnderTag:__name(({count})=>count===1?"Bu etikete sahip 1 \xF6\u011Fe.":`Bu etiket alt\u0131ndaki ${count} \xF6\u011Fe.`,"itemsUnderTag"),showingFirst:__name(({count})=>`\u0130lk ${count} etiket g\xF6steriliyor.`,"showingFirst"),totalTags:__name(({count})=>`Toplam ${count} adet etiket bulundu.`,"totalTags")}}};var th_TH_default={propertyDefaults:{title:"\u0E44\u0E21\u0E48\u0E21\u0E35\u0E0A\u0E37\u0E48\u0E2D",description:"\u0E44\u0E21\u0E48\u0E44\u0E14\u0E49\u0E23\u0E30\u0E1A\u0E38\u0E04\u0E33\u0E2D\u0E18\u0E34\u0E1A\u0E32\u0E22\u0E22\u0E48\u0E2D"},components:{callout:{note:"\u0E2B\u0E21\u0E32\u0E22\u0E40\u0E2B\u0E15\u0E38",abstract:"\u0E1A\u0E17\u0E04\u0E31\u0E14\u0E22\u0E48\u0E2D",info:"\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25",todo:"\u0E15\u0E49\u0E2D\u0E07\u0E17\u0E33\u0E40\u0E1E\u0E34\u0E48\u0E21\u0E40\u0E15\u0E34\u0E21",tip:"\u0E04\u0E33\u0E41\u0E19\u0E30\u0E19\u0E33",success:"\u0E40\u0E23\u0E35\u0E22\u0E1A\u0E23\u0E49\u0E2D\u0E22",question:"\u0E04\u0E33\u0E16\u0E32\u0E21",warning:"\u0E04\u0E33\u0E40\u0E15\u0E37\u0E2D\u0E19",failure:"\u0E02\u0E49\u0E2D\u0E1C\u0E34\u0E14\u0E1E\u0E25\u0E32\u0E14",danger:"\u0E2D\u0E31\u0E19\u0E15\u0E23\u0E32\u0E22",bug:"\u0E1A\u0E31\u0E4A\u0E01",example:"\u0E15\u0E31\u0E27\u0E2D\u0E22\u0E48\u0E32\u0E07",quote:"\u0E04\u0E33\u0E1E\u0E39\u0E01\u0E22\u0E01\u0E21\u0E32"},backlinks:{title:"\u0E2B\u0E19\u0E49\u0E32\u0E17\u0E35\u0E48\u0E01\u0E25\u0E48\u0E32\u0E27\u0E16\u0E36\u0E07",noBacklinksFound:"\u0E44\u0E21\u0E48\u0E21\u0E35\u0E2B\u0E19\u0E49\u0E32\u0E17\u0E35\u0E48\u0E42\u0E22\u0E07\u0E21\u0E32\u0E2B\u0E19\u0E49\u0E32\u0E19\u0E35\u0E49"},themeToggle:{lightMode:"\u0E42\u0E2B\u0E21\u0E14\u0E2A\u0E27\u0E48\u0E32\u0E07",darkMode:"\u0E42\u0E2B\u0E21\u0E14\u0E21\u0E37\u0E14"},explorer:{title:"\u0E23\u0E32\u0E22\u0E01\u0E32\u0E23\u0E2B\u0E19\u0E49\u0E32"},footer:{createdWith:"\u0E2A\u0E23\u0E49\u0E32\u0E07\u0E14\u0E49\u0E27\u0E22"},graph:{title:"\u0E21\u0E38\u0E21\u0E21\u0E2D\u0E07\u0E01\u0E23\u0E32\u0E1F"},recentNotes:{title:"\u0E1A\u0E31\u0E19\u0E17\u0E36\u0E01\u0E25\u0E48\u0E32\u0E2A\u0E38\u0E14",seeRemainingMore:__name(({remaining})=>`\u0E14\u0E39\u0E40\u0E1E\u0E34\u0E48\u0E21\u0E2D\u0E35\u0E01 ${remaining} \u0E23\u0E32\u0E22\u0E01\u0E32\u0E23 \u2192`,"seeRemainingMore")},transcludes:{transcludeOf:__name(({targetSlug})=>`\u0E23\u0E27\u0E21\u0E02\u0E49\u0E32\u0E21\u0E40\u0E19\u0E37\u0E49\u0E2D\u0E2B\u0E32\u0E08\u0E32\u0E01 ${targetSlug}`,"transcludeOf"),linkToOriginal:"\u0E14\u0E39\u0E2B\u0E19\u0E49\u0E32\u0E15\u0E49\u0E19\u0E17\u0E32\u0E07"},search:{title:"\u0E04\u0E49\u0E19\u0E2B\u0E32",searchBarPlaceholder:"\u0E04\u0E49\u0E19\u0E2B\u0E32\u0E1A\u0E32\u0E07\u0E2D\u0E22\u0E48\u0E32\u0E07"},tableOfContents:{title:"\u0E2A\u0E32\u0E23\u0E1A\u0E31\u0E0D"},contentMeta:{readingTime:__name(({minutes})=>`\u0E2D\u0E48\u0E32\u0E19\u0E23\u0E32\u0E27 ${minutes} \u0E19\u0E32\u0E17\u0E35`,"readingTime")}},pages:{rss:{recentNotes:"\u0E1A\u0E31\u0E19\u0E17\u0E36\u0E01\u0E25\u0E48\u0E32\u0E2A\u0E38\u0E14",lastFewNotes:__name(({count})=>`${count} \u0E1A\u0E31\u0E19\u0E17\u0E36\u0E01\u0E25\u0E48\u0E32\u0E2A\u0E38\u0E14`,"lastFewNotes")},error:{title:"\u0E44\u0E21\u0E48\u0E21\u0E35\u0E2B\u0E19\u0E49\u0E32\u0E19\u0E35\u0E49",notFound:"\u0E2B\u0E19\u0E49\u0E32\u0E19\u0E35\u0E49\u0E2D\u0E32\u0E08\u0E15\u0E31\u0E49\u0E07\u0E04\u0E48\u0E32\u0E40\u0E1B\u0E47\u0E19\u0E2A\u0E48\u0E27\u0E19\u0E15\u0E31\u0E27\u0E2B\u0E23\u0E37\u0E2D\u0E22\u0E31\u0E07\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E2A\u0E23\u0E49\u0E32\u0E07",home:"\u0E01\u0E25\u0E31\u0E1A\u0E2B\u0E19\u0E49\u0E32\u0E2B\u0E25\u0E31\u0E01"},folderContent:{folder:"\u0E42\u0E1F\u0E25\u0E40\u0E14\u0E2D\u0E23\u0E4C",itemsUnderFolder:__name(({count})=>`\u0E21\u0E35 ${count} \u0E23\u0E32\u0E22\u0E01\u0E32\u0E23\u0E43\u0E19\u0E42\u0E1F\u0E25\u0E40\u0E14\u0E2D\u0E23\u0E4C\u0E19\u0E35\u0E49`,"itemsUnderFolder")},tagContent:{tag:"\u0E41\u0E17\u0E47\u0E01",tagIndex:"\u0E41\u0E17\u0E47\u0E01\u0E17\u0E31\u0E49\u0E07\u0E2B\u0E21\u0E14",itemsUnderTag:__name(({count})=>`\u0E21\u0E35 ${count} \u0E23\u0E32\u0E22\u0E01\u0E32\u0E23\u0E43\u0E19\u0E41\u0E17\u0E47\u0E01\u0E19\u0E35\u0E49`,"itemsUnderTag"),showingFirst:__name(({count})=>`\u0E41\u0E2A\u0E14\u0E07 ${count} \u0E41\u0E17\u0E47\u0E01\u0E41\u0E23\u0E01`,"showingFirst"),totalTags:__name(({count})=>`\u0E21\u0E35\u0E17\u0E31\u0E49\u0E07\u0E2B\u0E21\u0E14 ${count} \u0E41\u0E17\u0E47\u0E01`,"totalTags")}}};var lt_LT_default={propertyDefaults:{title:"Be Pavadinimo",description:"Apra\u0161ymas Nepateiktas"},components:{callout:{note:"Pastaba",abstract:"Santrauka",info:"Informacija",todo:"Darb\u0173 s\u0105ra\u0161as",tip:"Patarimas",success:"S\u0117kmingas",question:"Klausimas",warning:"\u012Esp\u0117jimas",failure:"Nes\u0117kmingas",danger:"Pavojus",bug:"Klaida",example:"Pavyzdys",quote:"Citata"},backlinks:{title:"Atgalin\u0117s Nuorodos",noBacklinksFound:"Atgalini\u0173 Nuorod\u0173 Nerasta"},themeToggle:{lightMode:"\u0160viesus Re\u017Eimas",darkMode:"Tamsus Re\u017Eimas"},explorer:{title:"Nar\u0161ykl\u0117"},footer:{createdWith:"Sukurta Su"},graph:{title:"Grafiko Vaizdas"},recentNotes:{title:"Naujausi U\u017Era\u0161ai",seeRemainingMore:__name(({remaining})=>`Per\u017Ei\u016Br\u0117ti dar ${remaining} \u2192`,"seeRemainingMore")},transcludes:{transcludeOf:__name(({targetSlug})=>`\u012Eterpimas i\u0161 ${targetSlug}`,"transcludeOf"),linkToOriginal:"Nuoroda \u012F original\u0105"},search:{title:"Paie\u0161ka",searchBarPlaceholder:"Ie\u0161koti"},tableOfContents:{title:"Turinys"},contentMeta:{readingTime:__name(({minutes})=>`${minutes} min skaitymo`,"readingTime")}},pages:{rss:{recentNotes:"Naujausi u\u017Era\u0161ai",lastFewNotes:__name(({count})=>count===1?"Paskutinis 1 u\u017Era\u0161as":count<10?`Paskutiniai ${count} u\u017Era\u0161ai`:`Paskutiniai ${count} u\u017Era\u0161\u0173`,"lastFewNotes")},error:{title:"Nerasta",notFound:"Arba \u0161is puslapis yra pasiekiamas tik tam tikriems vartotojams, arba tokio puslapio n\u0117ra.",home:"Gr\u012F\u017Eti \u012F pagrindin\u012F puslap\u012F"},folderContent:{folder:"Aplankas",itemsUnderFolder:__name(({count})=>count===1?"1 elementas \u0161iame aplanke.":count<10?`${count} elementai \u0161iame aplanke.`:`${count} element\u0173 \u0161iame aplanke.`,"itemsUnderFolder")},tagContent:{tag:"\u017Dyma",tagIndex:"\u017Dym\u0173 indeksas",itemsUnderTag:__name(({count})=>count===1?"1 elementas su \u0161ia \u017Eyma.":count<10?`${count} elementai su \u0161ia \u017Eyma.`:`${count} element\u0173 su \u0161ia \u017Eyma.`,"itemsUnderTag"),showingFirst:__name(({count})=>count<10?`Rodomos pirmosios ${count} \u017Eymos.`:`Rodomos pirmosios ${count} \u017Eym\u0173.`,"showingFirst"),totalTags:__name(({count})=>count===1?"Rasta i\u0161 viso 1 \u017Eyma.":count<10?`Rasta i\u0161 viso ${count} \u017Eymos.`:`Rasta i\u0161 viso ${count} \u017Eym\u0173.`,"totalTags")}}};var TRANSLATIONS={"en-US":en_US_default,"en-GB":en_GB_default,"fr-FR":fr_FR_default,"it-IT":it_IT_default,"ja-JP":ja_JP_default,"de-DE":de_DE_default,"nl-NL":nl_NL_default,"nl-BE":nl_NL_default,"ro-RO":ro_RO_default,"ro-MD":ro_RO_default,"ca-ES":ca_ES_default,"es-ES":es_ES_default,"ar-SA":ar_SA_default,"ar-AE":ar_SA_default,"ar-QA":ar_SA_default,"ar-BH":ar_SA_default,"ar-KW":ar_SA_default,"ar-OM":ar_SA_default,"ar-YE":ar_SA_default,"ar-IR":ar_SA_default,"ar-SY":ar_SA_default,"ar-IQ":ar_SA_default,"ar-JO":ar_SA_default,"ar-PL":ar_SA_default,"ar-LB":ar_SA_default,"ar-EG":ar_SA_default,"ar-SD":ar_SA_default,"ar-LY":ar_SA_default,"ar-MA":ar_SA_default,"ar-TN":ar_SA_default,"ar-DZ":ar_SA_default,"ar-MR":ar_SA_default,"uk-UA":uk_UA_default,"ru-RU":ru_RU_default,"ko-KR":ko_KR_default,"zh-CN":zh_CN_default,"zh-TW":zh_TW_default,"vi-VN":vi_VN_default,"pt-BR":pt_BR_default,"hu-HU":hu_HU_default,"fa-IR":fa_IR_default,"pl-PL":pl_PL_default,"cs-CZ":cs_CZ_default,"tr-TR":tr_TR_default,"th-TH":th_TH_default,"lt-LT":lt_LT_default},defaultTranslation="en-US",i18n=__name(locale=>TRANSLATIONS[locale??defaultTranslation],"i18n");var defaultOptions={delimiters:"---",language:"yaml"};function coalesceAliases(data,aliases){for(let alias of aliases)if(data[alias]!==void 0&&data[alias]!==null)return data[alias]}__name(coalesceAliases,"coalesceAliases");function coerceToArray(input){if(input!=null)return Array.isArray(input)||(input=input.toString().split(",").map(tag=>tag.trim())),input.filter(tag=>typeof tag=="string"||typeof tag=="number").map(tag=>tag.toString())}__name(coerceToArray,"coerceToArray");var FrontMatter=__name(userOpts=>{let opts={...defaultOptions,...userOpts};return{name:"FrontMatter",markdownPlugins({cfg}){return[[remarkFrontmatter,["yaml","toml"]],()=>(_,file)=>{let{data}=matter(Buffer.from(file.value),{...opts,engines:{yaml:__name(s=>yaml.load(s,{schema:yaml.JSON_SCHEMA}),"yaml"),toml:__name(s=>toml.parse(s),"toml")}});data.title!=null&&data.title.toString()!==""?data.title=data.title.toString():data.title=file.stem??i18n(cfg.configuration.locale).propertyDefaults.title;let tags=coerceToArray(coalesceAliases(data,["tags","tag"]));tags&&(data.tags=[...new Set(tags.map(tag=>slugTag(tag)))]);let aliases=coerceToArray(coalesceAliases(data,["aliases","alias"]));aliases&&(data.aliases=aliases);let cssclasses=coerceToArray(coalesceAliases(data,["cssclasses","cssclass"]));cssclasses&&(data.cssclasses=cssclasses);let socialImage=coalesceAliases(data,["socialImage","image","cover"]),created=coalesceAliases(data,["created","date"]);created&&(data.created=created);let modified=coalesceAliases(data,["modified","lastmod","updated","last-modified"]);modified&&(data.modified=modified);let published=coalesceAliases(data,["published","publishDate","date"]);published&&(data.published=published),socialImage&&(data.socialImage=socialImage),file.data.frontmatter=data}]}}},"FrontMatter");import remarkGfm from"remark-gfm";import smartypants from"remark-smartypants";import rehypeSlug from"rehype-slug";import rehypeAutolinkHeadings from"rehype-autolink-headings";var defaultOptions2={enableSmartyPants:!0,linkHeadings:!0},GitHubFlavoredMarkdown=__name(userOpts=>{let opts={...defaultOptions2,...userOpts};return{name:"GitHubFlavoredMarkdown",markdownPlugins(){return opts.enableSmartyPants?[remarkGfm,smartypants]:[remarkGfm]},htmlPlugins(){return opts.linkHeadings?[rehypeSlug,[rehypeAutolinkHeadings,{behavior:"append",properties:{role:"anchor",ariaHidden:!0,tabIndex:-1,"data-no-popover":!0},content:{type:"element",tagName:"svg",properties:{width:18,height:18,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},children:[{type:"element",tagName:"path",properties:{d:"M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"},children:[]},{type:"element",tagName:"path",properties:{d:"M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"},children:[]}]}}]]:[]}}},"GitHubFlavoredMarkdown");import rehypeCitation from"rehype-citation";import{visit}from"unist-util-visit";import fs from"fs";import path2 from"path";import{Repository}from"@napi-rs/simple-git";import chalk3 from"chalk";var defaultOptions3={priority:["frontmatter","git","filesystem"]};function coerceDate(fp,d){let dt=new Date(d),invalidDate=isNaN(dt.getTime())||dt.getTime()===0;return invalidDate&&d!==void 0&&console.log(chalk3.yellow(` -Warning: found invalid date "${d}" in \`${fp}\`. Supported formats: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date#date_time_string_format`)),invalidDate?new Date:dt}__name(coerceDate,"coerceDate");var CreatedModifiedDate=__name(userOpts=>{let opts={...defaultOptions3,...userOpts};return{name:"CreatedModifiedDate",markdownPlugins(){return[()=>{let repo;return async(_tree,file)=>{let created,modified,published,fp=file.data.filePath,fullFp=path2.isAbsolute(fp)?fp:path2.posix.join(file.cwd,fp);for(let source of opts.priority)if(source==="filesystem"){let st=await fs.promises.stat(fullFp);created||=st.birthtimeMs,modified||=st.mtimeMs}else if(source==="frontmatter"&&file.data.frontmatter)created||=file.data.frontmatter.created,modified||=file.data.frontmatter.modified,published||=file.data.frontmatter.published;else if(source==="git"){repo||(repo=Repository.discover(file.cwd));try{modified||=await repo.getFileLatestModifiedDateAsync(file.data.filePath)}catch{console.log(chalk3.yellow(` -Warning: ${file.data.filePath} isn't yet tracked by git, last modification date is not available for this file`))}}file.data.dates={created:coerceDate(fp,created),modified:coerceDate(fp,modified),published:coerceDate(fp,published)}}}]}}},"CreatedModifiedDate");import remarkMath from"remark-math";import rehypeKatex from"rehype-katex";import rehypeMathjax from"rehype-mathjax/svg";import rehypeTypst from"@myriaddreamin/rehype-typst";var Latex=__name(opts=>{let engine=opts?.renderEngine??"katex",macros=opts?.customMacros??{};return{name:"Latex",markdownPlugins(){return[remarkMath]},htmlPlugins(){switch(engine){case"katex":return[[rehypeKatex,{output:"html",macros,...opts?.katexOptions??{}}]];case"typst":return[[rehypeTypst,opts?.typstOptions??{}]];case"mathjax":return[[rehypeMathjax,{macros,...opts?.mathJaxOptions??{}}]];default:return[[rehypeMathjax,{macros,...opts?.mathJaxOptions??{}}]]}},externalResources(){switch(engine){case"katex":return{css:[{content:"https://cdn.jsdelivr.net/npm/katex@0.16.11/dist/katex.min.css"}],js:[{src:"https://cdn.jsdelivr.net/npm/katex@0.16.11/dist/contrib/copy-tex.min.js",loadTime:"afterDOMReady",contentType:"external"}]};default:return{css:[],js:[]}}}}},"Latex");import{toString}from"hast-util-to-string";var escapeHTML=__name(unsafe=>unsafe.replaceAll("&","&").replaceAll("<","<").replaceAll(">",">").replaceAll('"',""").replaceAll("'","'"),"escapeHTML"),unescapeHTML=__name(html=>html.replaceAll("&","&").replaceAll("<","<").replaceAll(">",">").replaceAll(""",'"').replaceAll("'","'"),"unescapeHTML");var defaultOptions4={descriptionLength:150,replaceExternalLinks:!0},urlRegex=new RegExp(/(https?:\/\/)?(?([\da-z\.-]+)\.([a-z\.]{2,6})(:\d+)?)(?[\/\w\.-]*)(\?[\/\w\.=&;-]*)?/,"g"),Description=__name(userOpts=>{let opts={...defaultOptions4,...userOpts};return{name:"Description",htmlPlugins(){return[()=>async(tree,file)=>{let frontMatterDescription=file.data.frontmatter?.description,text=escapeHTML(toString(tree));opts.replaceExternalLinks&&(frontMatterDescription=frontMatterDescription?.replace(urlRegex,"$$"),text=text.replace(urlRegex,"$$"));let sentences=(frontMatterDescription??text).replace(/\s+/g," ").split(/\.\s/),finalDesc=[],len=opts.descriptionLength,sentenceIdx=0,currentDescriptionLength=0;if(sentences[0]!==void 0&&sentences[0].length>=len){let firstSentence=sentences[0].split(" ");for(;currentDescriptionLength{let opts={...defaultOptions5,...userOpts};return{name:"LinkProcessing",htmlPlugins(ctx){return[()=>(tree,file)=>{let curSlug=simplifySlug(file.data.slug),outgoing=new Set,transformOptions={strategy:opts.markdownLinkResolution,allSlugs:ctx.allSlugs};visit2(tree,"element",(node,_index,_parent)=>{if(node.tagName==="a"&&node.properties&&typeof node.properties.href=="string"){let dest=node.properties.href,classes=node.properties.className??[],isExternal=isAbsoluteUrl(dest);classes.push(isExternal?"external":"internal"),isExternal&&opts.externalLinkIcon&&node.children.push({type:"element",tagName:"svg",properties:{"aria-hidden":"true",class:"external-icon",style:"max-width:0.8em;max-height:0.8em",viewBox:"0 0 512 512"},children:[{type:"element",tagName:"path",properties:{d:"M320 0H288V64h32 82.7L201.4 265.4 178.7 288 224 333.3l22.6-22.6L448 109.3V192v32h64V192 32 0H480 320zM32 32H0V64 480v32H32 456h32V480 352 320H424v32 96H64V96h96 32V32H160 32z"},children:[]}]}),node.children.length===1&&node.children[0].type==="text"&&node.children[0].value!==dest&&classes.push("alias"),node.properties.className=classes,isExternal&&opts.openLinksInNewTab&&(node.properties.target="_blank");let isInternal=!(isAbsoluteUrl(dest)||dest.startsWith("#"));if(isInternal){dest=node.properties.href=transformLink(file.data.slug,dest,transformOptions);let canonicalDest=new URL(dest,"https://base.com/"+stripSlashes(curSlug,!0)).pathname,[destCanonical,_destAnchor]=splitAnchor(canonicalDest);destCanonical.endsWith("/")&&(destCanonical+="index");let full=decodeURIComponent(stripSlashes(destCanonical,!0)),simple=simplifySlug(full);outgoing.add(simple),node.properties["data-slug"]=full}opts.prettyLinks&&isInternal&&node.children.length===1&&node.children[0].type==="text"&&!node.children[0].value.startsWith("#")&&(node.children[0].value=path3.basename(node.children[0].value))}if(["img","video","audio","iframe"].includes(node.tagName)&&node.properties&&typeof node.properties.src=="string"&&(opts.lazyLoad&&(node.properties.loading="lazy"),!isAbsoluteUrl(node.properties.src))){let dest=node.properties.src;dest=node.properties.src=transformLink(file.data.slug,dest,transformOptions),node.properties.src=dest}}),file.data.links=[...outgoing]}]}}},"CrawlLinks");import{findAndReplace as mdastFindReplace}from"mdast-util-find-and-replace";import rehypeRaw from"rehype-raw";import{SKIP,visit as visit3}from"unist-util-visit";import path4 from"path";var callout_inline_default=`function c(){let t=this.parentElement;t.classList.toggle("is-collapsed");let l=t.classList.contains("is-collapsed")?this.scrollHeight:t.scrollHeight;t.style.maxHeight=l+"px";let o=t,e=t.parentElement;for(;e;){if(!e.classList.contains("callout"))return;let n=e.classList.contains("is-collapsed")?e.scrollHeight:e.scrollHeight+o.scrollHeight;e.style.maxHeight=n+"px",o=e,e=e.parentElement}}function i(){let t=document.getElementsByClassName("callout is-collapsible");for(let s of t){let l=s.firstElementChild;if(l){l.addEventListener("click",c),window.addCleanup(()=>l.removeEventListener("click",c));let e=s.classList.contains("is-collapsed")?l.scrollHeight:s.scrollHeight;s.style.maxHeight=e+"px"}}}document.addEventListener("nav",i);window.addEventListener("resize",i); -`;var checkbox_inline_default='var m=Object.create;var f=Object.defineProperty;var x=Object.getOwnPropertyDescriptor;var S=Object.getOwnPropertyNames;var y=Object.getPrototypeOf,b=Object.prototype.hasOwnProperty;var R=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports);var j=(t,e,n,A)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of S(e))!b.call(t,i)&&i!==n&&f(t,i,{get:()=>e[i],enumerable:!(A=x(e,i))||A.enumerable});return t};var v=(t,e,n)=>(n=t!=null?m(y(t)):{},j(e||!t||!t.__esModule?f(n,"default",{value:t,enumerable:!0}):n,t));var p=R((_,g)=>{"use strict";g.exports=w;function B(t){return t instanceof Buffer?Buffer.from(t):new t.constructor(t.buffer.slice(),t.byteOffset,t.length)}function w(t){if(t=t||{},t.circles)return L(t);let e=new Map;if(e.set(Date,F=>new Date(F)),e.set(Map,(F,l)=>new Map(A(Array.from(F),l))),e.set(Set,(F,l)=>new Set(A(Array.from(F),l))),t.constructorHandlers)for(let F of t.constructorHandlers)e.set(F[0],F[1]);let n=null;return t.proto?C:i;function A(F,l){let u=Object.keys(F),D=new Array(u.length);for(let E=0;Enew Date(u)),A.set(Map,(u,D)=>new Map(C(Array.from(u),D))),A.set(Set,(u,D)=>new Set(C(Array.from(u),D))),t.constructorHandlers)for(let u of t.constructorHandlers)A.set(u[0],u[1]);let i=null;return t.proto?l:F;function C(u,D){let E=Object.keys(u),r=new Array(E.length);for(let s=0;s`${d(window)}-checkbox-${t}`;document.addEventListener("nav",()=>{document.querySelectorAll("input.checkbox-toggle").forEach((e,n)=>{let A=O(n),i=C=>{let F=C.target?.checked?"true":"false";localStorage.setItem(A,F)};e.addEventListener("change",i),window.addCleanup(()=>e.removeEventListener("change",i)),localStorage.getItem(A)==="true"&&(e.checked=!0)})});\n';import{toHast}from"mdast-util-to-hast";import{toHtml}from"hast-util-to-html";function capitalize(s){return s.substring(0,1).toUpperCase()+s.substring(1)}__name(capitalize,"capitalize");function classNames(displayClass,...classes){return displayClass&&classes.push(displayClass),classes.join(" ")}__name(classNames,"classNames");var defaultOptions6={comments:!0,highlight:!0,wikilinks:!0,callouts:!0,mermaid:!0,parseTags:!0,parseArrows:!0,parseBlockReferences:!0,enableInHtmlEmbed:!1,enableYouTubeEmbed:!0,enableVideoEmbed:!0,enableCheckbox:!1},calloutMapping={note:"note",abstract:"abstract",summary:"abstract",tldr:"abstract",info:"info",todo:"todo",tip:"tip",hint:"tip",important:"tip",success:"success",check:"success",done:"success",question:"question",help:"question",faq:"question",warning:"warning",attention:"warning",caution:"warning",failure:"failure",missing:"failure",fail:"failure",danger:"danger",error:"danger",bug:"bug",example:"example",quote:"quote",cite:"quote"},arrowMapping={"->":"→","-->":"⇒","=>":"⇒","==>":"⇒","<-":"←","<--":"⇐","<=":"⇐","<==":"⇐"};function canonicalizeCallout(calloutName){let normalizedCallout=calloutName.toLowerCase();return calloutMapping[normalizedCallout]??calloutName}__name(canonicalizeCallout,"canonicalizeCallout");var externalLinkRegex=/^https?:\/\//i,arrowRegex=new RegExp(/(-{1,2}>|={1,2}>|<-{1,2}|<={1,2})/g),wikilinkRegex=new RegExp(/!?\[\[([^\[\]\|\#\\]+)?(#+[^\[\]\|\#\\]+)?(\\?\|[^\[\]\#]+)?\]\]/g),tableRegex=new RegExp(/^\|([^\n])+\|\n(\|)( ?:?-{3,}:? ?\|)+\n(\|([^\n])+\|\n?)+/gm),tableWikilinkRegex=new RegExp(/(!?\[\[[^\]]*?\]\]|\[\^[^\]]*?\])/g),highlightRegex=new RegExp(/==([^=]+)==/g),commentRegex=new RegExp(/%%[\s\S]*?%%/g),calloutRegex=new RegExp(/^\[\!([\w-]+)\|?(.+?)?\]([+-]?)/),calloutLineRegex=new RegExp(/^> *\[\!\w+\|?.*?\][+-]?.*$/gm),tagRegex=new RegExp(/(?<=^| )#((?:[-_\p{L}\p{Emoji}\p{M}\d])+(?:\/[-_\p{L}\p{Emoji}\p{M}\d]+)*)/gu),blockReferenceRegex=new RegExp(/\^([-_A-Za-z0-9]+)$/g),ytLinkRegex=/^.*(youtu.be\/|v\/|u\/\w\/|embed\/|watch\?v=|\&v=)([^#\&\?]*).*/,ytPlaylistLinkRegex=/[?&]list=([^#?&]*)/,videoExtensionRegex=new RegExp(/\.(mp4|webm|ogg|avi|mov|flv|wmv|mkv|mpg|mpeg|3gp|m4v)$/),wikilinkImageEmbedRegex=new RegExp(/^(?(?!^\d*x?\d*$).*?)?(\|?\s*?(?\d+)(x(?\d+))?)?$/),ObsidianFlavoredMarkdown=__name(userOpts=>{let opts={...defaultOptions6,...userOpts},mdastToHtml=__name(ast=>{let hast=toHast(ast,{allowDangerousHtml:!0});return toHtml(hast,{allowDangerousHtml:!0})},"mdastToHtml");return{name:"ObsidianFlavoredMarkdown",textTransform(_ctx,src){return opts.comments&&(src instanceof Buffer&&(src=src.toString()),src=src.replace(commentRegex,"")),opts.callouts&&(src instanceof Buffer&&(src=src.toString()),src=src.replace(calloutLineRegex,value=>value+` -> `)),opts.wikilinks&&(src instanceof Buffer&&(src=src.toString()),src=src.replace(tableRegex,value=>value.replace(tableWikilinkRegex,(_value,raw)=>{let escaped=raw??"";return escaped=escaped.replace("#","\\#"),escaped=escaped.replace(/((^|[^\\])(\\\\)*)\|/g,"$1\\|"),escaped})),src=src.replace(wikilinkRegex,(value,...capture)=>{let[rawFp,rawHeader,rawAlias]=capture,[fp,anchor]=splitAnchor(`${rawFp??""}${rawHeader??""}`),blockRef=rawHeader?.match(/^#?\^/)?"^":"",displayAnchor=anchor?`#${blockRef}${anchor.trim().replace(/^#+/,"")}`:"",displayAlias=rawAlias??rawHeader?.replace("#","|")??"",embedDisplay=value.startsWith("!")?"!":"";return rawFp?.match(externalLinkRegex)?`${embedDisplay}[${displayAlias.replace(/^\|/,"")}](${rawFp})`:`${embedDisplay}[[${fp}${displayAnchor}${displayAlias}]]`})),src},markdownPlugins(_ctx){let plugins=[];return plugins.push(()=>(tree,file)=>{let replacements=[],base=pathToRoot(file.data.slug);opts.wikilinks&&replacements.push([wikilinkRegex,(value,...capture)=>{let[rawFp,rawHeader,rawAlias]=capture,fp=rawFp?.trim()??"",anchor=rawHeader?.trim()??"",alias=rawAlias?.slice(1).trim();if(value.startsWith("!")){let ext=path4.extname(fp).toLowerCase(),url2=slugifyFilePath(fp);if([".png",".jpg",".jpeg",".gif",".bmp",".svg",".webp"].includes(ext)){let match=wikilinkImageEmbedRegex.exec(alias??""),alt=match?.groups?.alt??"",width=match?.groups?.width??"auto",height=match?.groups?.height??"auto";return{type:"image",url:url2,data:{hProperties:{width,height,alt}}}}else{if([".mp4",".webm",".ogv",".mov",".mkv"].includes(ext))return{type:"html",value:``};if([".mp3",".webm",".wav",".m4a",".ogg",".3gp",".flac"].includes(ext))return{type:"html",value:``};if([".pdf"].includes(ext))return{type:"html",value:``};{let block=anchor;return{type:"html",data:{hProperties:{transclude:!0}},value:`
Transclude of ${url2}${block}
`}}}}return{type:"link",url:fp+anchor,children:[{type:"text",value:alias??fp}]}}]),opts.highlight&&replacements.push([highlightRegex,(_value,...capture)=>{let[inner]=capture;return{type:"html",value:`${inner}`}}]),opts.parseArrows&&replacements.push([arrowRegex,(value,..._capture)=>{let maybeArrow=arrowMapping[value];return maybeArrow===void 0?SKIP:{type:"html",value:`${maybeArrow}`}}]),opts.parseTags&&replacements.push([tagRegex,(_value,tag)=>{if(/^[\/\d]+$/.test(tag))return!1;if(tag=slugTag(tag),file.data.frontmatter){let noteTags=file.data.frontmatter.tags??[];file.data.frontmatter.tags=[...new Set([...noteTags,tag])]}return{type:"link",url:base+`/tags/${tag}`,data:{hProperties:{className:["tag-link"]}},children:[{type:"text",value:tag}]}}]),opts.enableInHtmlEmbed&&visit3(tree,"html",node=>{for(let[regex,replace]of replacements)typeof replace=="string"?node.value=node.value.replace(regex,replace):node.value=node.value.replace(regex,(substring,...args)=>{let replaceValue=replace(substring,...args);return typeof replaceValue=="string"?replaceValue:Array.isArray(replaceValue)?replaceValue.map(mdastToHtml).join(""):typeof replaceValue=="object"&&replaceValue!==null?mdastToHtml(replaceValue):substring})}),mdastFindReplace(tree,replacements)}),opts.enableVideoEmbed&&plugins.push(()=>(tree,_file)=>{visit3(tree,"image",(node,index,parent)=>{if(parent&&index!=null&&videoExtensionRegex.test(node.url)){let newNode={type:"html",value:``};return parent.children.splice(index,1,newNode),SKIP}})}),opts.callouts&&plugins.push(()=>(tree,_file)=>{visit3(tree,"blockquote",node=>{if(node.children.length===0)return;let[firstChild,...calloutContent]=node.children;if(firstChild.type!=="paragraph"||firstChild.children[0]?.type!=="text")return;let text=firstChild.children[0].value,restOfTitle=firstChild.children.slice(1),[firstLine,...remainingLines]=text.split(` -`),remainingText=remainingLines.join(` -`),match=firstLine.match(calloutRegex);if(match&&match.input){let[calloutDirective,typeString,calloutMetaData,collapseChar]=match,calloutType=canonicalizeCallout(typeString.toLowerCase()),collapse=collapseChar==="+"||collapseChar==="-",defaultState=collapseChar==="-"?"collapsed":"expanded",titleContent=match.input.slice(calloutDirective.length).trim(),titleNode={type:"paragraph",children:[{type:"text",value:titleContent===""&&restOfTitle.length===0?capitalize(typeString).replace(/-/g," "):titleContent+" "},...restOfTitle]},blockquoteContent=[{type:"html",value:`
-
-
${mdastToHtml(titleNode)}
- ${collapse?'
':""} -
`}];remainingText.length>0&&blockquoteContent.push({type:"paragraph",children:[{type:"text",value:remainingText}]}),node.children.splice(0,1,...blockquoteContent);let classNames2=["callout",calloutType];if(collapse&&classNames2.push("is-collapsible"),defaultState==="collapsed"&&classNames2.push("is-collapsed"),node.data={hProperties:{...node.data?.hProperties??{},className:classNames2.join(" "),"data-callout":calloutType,"data-callout-fold":collapse,"data-callout-metadata":calloutMetaData}},calloutContent.length>0){let contentData={data:{hProperties:{className:"callout-content"},hName:"div"},type:"blockquote",children:[...calloutContent]};node.children=[node.children[0],contentData]}}})}),opts.mermaid&&plugins.push(()=>(tree,file)=>{visit3(tree,"code",node=>{node.lang==="mermaid"&&(file.data.hasMermaidDiagram=!0,node.data={hProperties:{className:["mermaid"],"data-clipboard":JSON.stringify(node.value)}})})}),plugins},htmlPlugins(){let plugins=[rehypeRaw];return opts.parseBlockReferences&&plugins.push(()=>{let inlineTagTypes=new Set(["p","li"]),blockTagTypes=new Set(["blockquote"]);return(tree,file)=>{file.data.blocks={},visit3(tree,"element",(node,index,parent)=>{if(blockTagTypes.has(node.tagName)){let nextChild=parent?.children.at(index+2);if(nextChild&&nextChild.tagName==="p"){let text=nextChild.children.at(0);if(text&&text.value&&text.type==="text"){let matches=text.value.match(blockReferenceRegex);if(matches&&matches.length>=1){parent.children.splice(index+2,1);let block=matches[0].slice(1);Object.keys(file.data.blocks).includes(block)||(node.properties={...node.properties,id:block},file.data.blocks[block]=node)}}}}else if(inlineTagTypes.has(node.tagName)){let last=node.children.at(-1);if(last&&last.value&&typeof last.value=="string"){let matches=last.value.match(blockReferenceRegex);if(matches&&matches.length>=1){last.value=last.value.slice(0,-matches[0].length);let block=matches[0].slice(1);if(last.value===""){let idx=(index??1)-1;for(;idx>=0;){let element=parent?.children.at(idx);if(!element)break;if(element.type!=="element")idx-=1;else{Object.keys(file.data.blocks).includes(block)||(element.properties={...element.properties,id:block},file.data.blocks[block]=element);return}}}else Object.keys(file.data.blocks).includes(block)||(node.properties={...node.properties,id:block},file.data.blocks[block]=node)}}}}),file.data.htmlAst=tree}}),opts.enableYouTubeEmbed&&plugins.push(()=>tree=>{visit3(tree,"element",node=>{if(node.tagName==="img"&&typeof node.properties.src=="string"){let match=node.properties.src.match(ytLinkRegex),videoId=match&&match[2].length==11?match[2]:null,playlistId=node.properties.src.match(ytPlaylistLinkRegex)?.[1];videoId?(node.tagName="iframe",node.properties={class:"external-embed youtube",allow:"fullscreen",frameborder:0,width:"600px",src:playlistId?`https://www.youtube.com/embed/${videoId}?list=${playlistId}`:`https://www.youtube.com/embed/${videoId}`}):playlistId&&(node.tagName="iframe",node.properties={class:"external-embed youtube",allow:"fullscreen",frameborder:0,width:"600px",src:`https://www.youtube.com/embed/videoseries?list=${playlistId}`})}})}),opts.enableCheckbox&&plugins.push(()=>(tree,_file)=>{visit3(tree,"element",node=>{if(node.tagName==="input"&&node.properties.type==="checkbox"){let isChecked=node.properties?.checked??!1;node.properties={type:"checkbox",disabled:!1,checked:isChecked,class:"checkbox-toggle"}}})}),opts.mermaid&&plugins.push(()=>(tree,_file)=>{visit3(tree,"element",(node,_idx,parent)=>{node.tagName==="code"&&(node.properties?.className??[])?.includes("mermaid")&&(parent.children=[{type:"element",tagName:"button",properties:{className:["expand-button"],"aria-label":"Expand mermaid diagram","aria-hidden":"true","data-view-component":!0},children:[{type:"element",tagName:"svg",properties:{width:16,height:16,viewBox:"0 0 16 16",fill:"currentColor"},children:[{type:"element",tagName:"path",properties:{fillRule:"evenodd",d:"M3.72 3.72a.75.75 0 011.06 1.06L2.56 7h10.88l-2.22-2.22a.75.75 0 011.06-1.06l3.5 3.5a.75.75 0 010 1.06l-3.5 3.5a.75.75 0 11-1.06-1.06l2.22-2.22H2.56l2.22 2.22a.75.75 0 11-1.06 1.06l-3.5-3.5a.75.75 0 010-1.06l3.5-3.5z"},children:[]}]}]},node,{type:"element",tagName:"div",properties:{id:"mermaid-container"},children:[{type:"element",tagName:"div",properties:{id:"mermaid-space"},children:[{type:"element",tagName:"div",properties:{className:["mermaid-header"]},children:[{type:"element",tagName:"button",properties:{className:["close-button"],"aria-label":"close button"},children:[{type:"element",tagName:"svg",properties:{"aria-hidden":"true",xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},children:[{type:"element",tagName:"line",properties:{x1:18,y1:6,x2:6,y2:18},children:[]},{type:"element",tagName:"line",properties:{x1:6,y1:6,x2:18,y2:18},children:[]}]}]}]},{type:"element",tagName:"div",properties:{className:["mermaid-content"]},children:[]}]}]}])})}),plugins},externalResources(){let js=[],css=[];return opts.enableCheckbox&&js.push({script:checkbox_inline_default,loadTime:"afterDOMReady",contentType:"inline"}),opts.callouts&&js.push({script:callout_inline_default,loadTime:"afterDOMReady",contentType:"inline"}),{js,css}}}},"ObsidianFlavoredMarkdown");var relrefRegex=new RegExp(/\[([^\]]+)\]\(\{\{< relref "([^"]+)" >\}\}\)/,"g"),predefinedHeadingIdRegex=new RegExp(/(.*) {#(?:.*)}/,"g"),hugoShortcodeRegex=new RegExp(/{{(.*)}}/,"g"),figureTagRegex=new RegExp(/< ?figure src="(.*)" ?>/,"g"),inlineLatexRegex=new RegExp(/\\\\\((.+?)\\\\\)/,"g"),blockLatexRegex=new RegExp(/(?:\\begin{equation}|\\\\\(|\\\\\[)([\s\S]*?)(?:\\\\\]|\\\\\)|\\end{equation})/,"g"),quartzLatexRegex=new RegExp(/\$\$[\s\S]*?\$\$|\$.*?\$/,"g");import rehypePrettyCode from"rehype-pretty-code";var defaultOptions7={theme:{light:"github-light",dark:"github-dark"},keepBackground:!1},SyntaxHighlighting=__name(userOpts=>{let opts={...defaultOptions7,...userOpts};return{name:"SyntaxHighlighting",htmlPlugins(){return[[rehypePrettyCode,opts]]}}},"SyntaxHighlighting");import{visit as visit4}from"unist-util-visit";import{toString as toString2}from"mdast-util-to-string";import Slugger from"github-slugger";var defaultOptions8={maxDepth:3,minEntries:1,showByDefault:!0,collapseByDefault:!1},slugAnchor2=new Slugger,TableOfContents=__name(userOpts=>{let opts={...defaultOptions8,...userOpts};return{name:"TableOfContents",markdownPlugins(){return[()=>async(tree,file)=>{if(file.data.frontmatter?.enableToc??opts.showByDefault){slugAnchor2.reset();let toc=[],highestDepth=opts.maxDepth;visit4(tree,"heading",node=>{if(node.depth<=opts.maxDepth){let text=toString2(node);highestDepth=Math.min(highestDepth,node.depth),toc.push({depth:node.depth,text,slug:slugAnchor2.slug(text)})}}),toc.length>0&&toc.length>opts.minEntries&&(file.data.toc=toc.map(entry=>({...entry,depth:entry.depth-highestDepth})),file.data.collapseToc=opts.collapseByDefault)}}]}}},"TableOfContents");import remarkBreaks from"remark-breaks";import{visit as visit5}from"unist-util-visit";import{findAndReplace as mdastFindReplace2}from"mdast-util-find-and-replace";var orRegex=new RegExp(/{{or:(.*?)}}/,"g"),TODORegex=new RegExp(/{{.*?\bTODO\b.*?}}/,"g"),DONERegex=new RegExp(/{{.*?\bDONE\b.*?}}/,"g"),videoRegex=new RegExp(/{{.*?\[\[video\]\].*?\:(.*?)}}/,"g"),youtubeRegex=new RegExp(/{{.*?\[\[video\]\].*?(https?:\/\/(?:www\.)?youtu(?:be\.com\/watch\?v=|\.be\/)([\w\-\_]*)(&(amp;)?[\w\?=]*)?)}}/,"g"),audioRegex=new RegExp(/{{.*?\[\[audio\]\].*?\:(.*?)}}/,"g"),pdfRegex=new RegExp(/{{.*?\[\[pdf\]\].*?\:(.*?)}}/,"g"),blockquoteRegex=new RegExp(/(\[\[>\]\])\s*(.*)/,"g"),roamHighlightRegex=new RegExp(/\^\^(.+)\^\^/,"g"),roamItalicRegex=new RegExp(/__(.+)__/,"g"),tableRegex2=new RegExp(/- {{.*?\btable\b.*?}}/,"g"),attributeRegex=new RegExp(/\b\w+(?:\s+\w+)*::/,"g");var RemoveDrafts=__name(()=>({name:"RemoveDrafts",shouldPublish(_ctx,[_tree,vfile]){return!(vfile.data?.frontmatter?.draft===!0||vfile.data?.frontmatter?.draft==="true")}}),"RemoveDrafts");import path7 from"path";import{visit as visit7}from"unist-util-visit";import{jsx}from"preact/jsx-runtime";var Header=__name(({children})=>children.length>0?jsx("header",{children}):null,"Header");Header.css=` -header { - display: flex; - flex-direction: row; - align-items: center; - margin: 2rem 0; - gap: 1.5rem; -} - -header h1 { - margin: 0; - flex: auto; -} -`;var Header_default=__name(()=>Header,"default");var clipboard_inline_default=`var r='',l='';document.addEventListener("nav",()=>{let a=document.getElementsByTagName("pre");for(let t=0;t{e.blur(),e.innerHTML=l,setTimeout(()=>{e.innerHTML=r,e.style.borderColor=""},2e3)},d=>console.error(d))};var c=o;let i=(n.dataset.clipboard?JSON.parse(n.dataset.clipboard):n.innerText).replace(/\\n\\n/g,\` -\`),e=document.createElement("button");e.className="clipboard-button",e.type="button",e.innerHTML=r,e.ariaLabel="Copy source",e.addEventListener("click",o),window.addCleanup(()=>e.removeEventListener("click",o)),a[t].prepend(e)}}}); -`;var clipboard_default=`.clipboard-button { - position: absolute; - display: flex; - float: right; - right: 0; - padding: 0.4rem; - margin: 0.3rem; - color: var(--gray); - border-color: var(--dark); - background-color: var(--light); - border: 1px solid; - border-radius: 5px; - opacity: 0; - transition: 0.2s; -} -.clipboard-button > svg { - fill: var(--light); - filter: contrast(0.3); -} -.clipboard-button:hover { - cursor: pointer; - border-color: var(--secondary); -} -.clipboard-button:focus { - outline: 0; -} - -pre:hover > .clipboard-button { - opacity: 1; - transition: 0.2s; -} -/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL2hvbWUvYWxhbmQvZ2l0L3F1YXJ0ei9xdWFydHovY29tcG9uZW50cy9zdHlsZXMiLCJzb3VyY2VzIjpbImNsaXBib2FyZC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFOzs7QUFLRjtFQUNFO0VBQ0EiLCJzb3VyY2VzQ29udGVudCI6WyIuY2xpcGJvYXJkLWJ1dHRvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxvYXQ6IHJpZ2h0O1xuICByaWdodDogMDtcbiAgcGFkZGluZzogMC40cmVtO1xuICBtYXJnaW46IDAuM3JlbTtcbiAgY29sb3I6IHZhcigtLWdyYXkpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWRhcmspO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1saWdodCk7XG4gIGJvcmRlcjogMXB4IHNvbGlkO1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IDAuMnM7XG5cbiAgJiA+IHN2ZyB7XG4gICAgZmlsbDogdmFyKC0tbGlnaHQpO1xuICAgIGZpbHRlcjogY29udHJhc3QoMC4zKTtcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLXNlY29uZGFyeSk7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuICB9XG59XG5cbnByZSB7XG4gICY6aG92ZXIgPiAuY2xpcGJvYXJkLWJ1dHRvbiB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2l0aW9uOiAwLjJzO1xuICB9XG59XG4iXX0= */`;import{jsx as jsx2}from"preact/jsx-runtime";var Body=__name(({children})=>jsx2("div",{id:"quartz-body",children}),"Body");Body.afterDOMLoaded=clipboard_inline_default;Body.css=clipboard_default;var Body_default=__name(()=>Body,"default");import{render}from"preact-render-to-string";import{randomUUID}from"crypto";import{jsx as jsx3}from"preact/jsx-runtime";function JSResourceToScriptElement(resource,preserve){let scriptType=resource.moduleType??"application/javascript",spaPreserve=preserve??resource.spaPreserve;if(resource.contentType==="external")return jsx3("script",{src:resource.src,type:scriptType,"spa-preserve":spaPreserve},resource.src);{let content=resource.script;return jsx3("script",{type:scriptType,"spa-preserve":spaPreserve,dangerouslySetInnerHTML:{__html:content}},randomUUID())}}__name(JSResourceToScriptElement,"JSResourceToScriptElement");function CSSResourceToStyleElement(resource,preserve){let spaPreserve=preserve??resource.spaPreserve;return resource.inline??!1?jsx3("style",{children:resource.content}):jsx3("link",{href:resource.content,rel:"stylesheet",type:"text/css","spa-preserve":spaPreserve},resource.content)}__name(CSSResourceToStyleElement,"CSSResourceToStyleElement");import{visit as visit6}from"unist-util-visit";var mermaid_inline_default='function L(c){for(;c.firstChild;)c.removeChild(c.firstChild)}var h=class{constructor(e,t){this.container=e;this.content=t;this.setupEventListeners(),this.setupNavigationControls()}isDragging=!1;startPan={x:0,y:0};currentPan={x:0,y:0};scale=1;MIN_SCALE=.5;MAX_SCALE=3;ZOOM_SENSITIVITY=.001;setupEventListeners(){this.container.addEventListener("mousedown",this.onMouseDown.bind(this)),document.addEventListener("mousemove",this.onMouseMove.bind(this)),document.addEventListener("mouseup",this.onMouseUp.bind(this)),this.container.addEventListener("wheel",this.onWheel.bind(this),{passive:!1}),window.addEventListener("resize",this.resetTransform.bind(this))}setupNavigationControls(){let e=document.createElement("div");e.className="mermaid-controls";let t=this.createButton("+",()=>this.zoom(.1)),n=this.createButton("-",()=>this.zoom(-.1)),s=this.createButton("Reset",()=>this.resetTransform());e.appendChild(n),e.appendChild(s),e.appendChild(t),this.container.appendChild(e)}createButton(e,t){let n=document.createElement("button");return n.textContent=e,n.className="mermaid-control-button",n.addEventListener("click",t),window.addCleanup(()=>n.removeEventListener("click",t)),n}onMouseDown(e){e.button===0&&(this.isDragging=!0,this.startPan={x:e.clientX-this.currentPan.x,y:e.clientY-this.currentPan.y},this.container.style.cursor="grabbing")}onMouseMove(e){this.isDragging&&(e.preventDefault(),this.currentPan={x:e.clientX-this.startPan.x,y:e.clientY-this.startPan.y},this.updateTransform())}onMouseUp(){this.isDragging=!1,this.container.style.cursor="grab"}onWheel(e){e.preventDefault();let t=-e.deltaY*this.ZOOM_SENSITIVITY,n=Math.min(Math.max(this.scale+t,this.MIN_SCALE),this.MAX_SCALE),s=this.content.getBoundingClientRect(),r=e.clientX-s.left,i=e.clientY-s.top,o=n-this.scale;this.currentPan.x-=r*o,this.currentPan.y-=i*o,this.scale=n,this.updateTransform()}zoom(e){let t=Math.min(Math.max(this.scale+e,this.MIN_SCALE),this.MAX_SCALE),n=this.content.getBoundingClientRect(),s=n.width/2,r=n.height/2,i=t-this.scale;this.currentPan.x-=s*i,this.currentPan.y-=r*i,this.scale=t,this.updateTransform()}updateTransform(){this.content.style.transform=`translate(${this.currentPan.x}px, ${this.currentPan.y}px) scale(${this.scale})`}resetTransform(){this.scale=1,this.currentPan={x:0,y:0},this.updateTransform()}},T=["--secondary","--tertiary","--gray","--light","--lightgray","--highlight","--dark","--darkgray","--codeFont"],M;document.addEventListener("nav",async()=>{let e=document.querySelector(".center").querySelectorAll("code.mermaid");if(e.length===0)return;let t=T.reduce((r,i)=>(r[i]=getComputedStyle(document.documentElement).getPropertyValue(i),r),{});M||=await import("https://cdnjs.cloudflare.com/ajax/libs/mermaid/11.4.0/mermaid.esm.min.mjs");let n=M.default,s=document.documentElement.getAttribute("saved-theme")==="dark";n.initialize({startOnLoad:!1,securityLevel:"loose",theme:s?"dark":"base",themeVariables:{fontFamily:t["--codeFont"],primaryColor:t["--light"],primaryTextColor:t["--darkgray"],primaryBorderColor:t["--tertiary"],lineColor:t["--darkgray"],secondaryColor:t["--secondary"],tertiaryColor:t["--tertiary"],clusterBkg:t["--light"],edgeLabelBackground:t["--highlight"]}}),await n.run({nodes:e});for(let r=0;r{g.removeEventListener("click",m),l.removeEventListener("click",E),document.removeEventListener("keydown",f)})}});\n';var mermaid_inline_default2=`.expand-button { - position: absolute; - display: flex; - float: right; - padding: 0.4rem; - margin: 0.3rem; - right: 0; - color: var(--gray); - border-color: var(--dark); - background-color: var(--light); - border: 1px solid; - border-radius: 5px; - opacity: 0; - transition: 0.2s; -} -.expand-button > svg { - fill: var(--light); - filter: contrast(0.3); -} -.expand-button:hover { - cursor: pointer; - border-color: var(--secondary); -} -.expand-button:focus { - outline: 0; -} - -pre:hover > .expand-button { - opacity: 1; - transition: 0.2s; -} - -#mermaid-container { - position: fixed; - contain: layout; - z-index: 999; - left: 0; - top: 0; - width: 100vw; - height: 100vh; - overflow: hidden; - display: none; - backdrop-filter: blur(4px); - background: rgba(0, 0, 0, 0.5); -} -#mermaid-container.active { - display: inline-block; -} -#mermaid-container > #mermaid-space { - display: grid; - width: 90%; - height: 90vh; - margin: 5vh auto; - background: var(--light); - box-shadow: 0 14px 50px rgba(27, 33, 48, 0.12), 0 10px 30px rgba(27, 33, 48, 0.16); - overflow: hidden; - position: relative; -} -#mermaid-container > #mermaid-space > .mermaid-header { - display: flex; - justify-content: flex-end; - padding: 1rem; - border-bottom: 1px solid var(--lightgray); - background: var(--light); - z-index: 2; - max-height: fit-content; -} -#mermaid-container > #mermaid-space > .mermaid-header > .close-button { - display: flex; - align-items: center; - justify-content: center; - width: 32px; - height: 32px; - padding: 0; - background: transparent; - border: none; - border-radius: 4px; - color: var(--darkgray); - cursor: pointer; - transition: all 0.2s ease; -} -#mermaid-container > #mermaid-space > .mermaid-header > .close-button:hover { - background: var(--lightgray); - color: var(--dark); -} -#mermaid-container > #mermaid-space > .mermaid-content { - padding: 2rem; - position: relative; - transform-origin: 0 0; - transition: transform 0.1s ease; - overflow: visible; - min-height: 200px; - min-width: 200px; -} -#mermaid-container > #mermaid-space > .mermaid-content pre { - margin: 0; - border: none; -} -#mermaid-container > #mermaid-space > .mermaid-content svg { - max-width: none; - height: auto; -} -#mermaid-container > #mermaid-space > .mermaid-controls { - position: absolute; - bottom: 20px; - right: 20px; - display: flex; - gap: 8px; - padding: 8px; - background: var(--light); - border: 1px solid var(--lightgray); - border-radius: 6px; - box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); - z-index: 2; -} -#mermaid-container > #mermaid-space > .mermaid-controls .mermaid-control-button { - display: flex; - align-items: center; - justify-content: center; - width: 32px; - height: 32px; - padding: 0; - border: 1px solid var(--lightgray); - background: var(--light); - color: var(--dark); - border-radius: 4px; - cursor: pointer; - font-size: 16px; - font-family: var(--bodyFont); - transition: all 0.2s ease; -} -#mermaid-container > #mermaid-space > .mermaid-controls .mermaid-control-button:hover { - background: var(--lightgray); -} -#mermaid-container > #mermaid-space > .mermaid-controls .mermaid-control-button:active { - transform: translateY(1px); -} -#mermaid-container > #mermaid-space > .mermaid-controls .mermaid-control-button:nth-child(2) { - width: auto; - padding: 0 12px; - font-size: 14px; -} -/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL2hvbWUvYWxhbmQvZ2l0L3F1YXJ0ei9xdWFydHovY29tcG9uZW50cy9zdHlsZXMiLCJzb3VyY2VzIjpbIm1lcm1haWQuaW5saW5lLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7OztBQUtGO0VBQ0U7RUFDQTs7O0FBSUo7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsWUFDRTtFQUVGO0VBQ0E7O0FBRUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNFO0VBQ0E7O0FBS047RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUlKO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDRTs7QUFHRjtFQUNFOztBQUlGO0VBQ0U7RUFDQTtFQUNBIiwic291cmNlc0NvbnRlbnQiOlsiLmV4cGFuZC1idXR0b24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsb2F0OiByaWdodDtcbiAgcGFkZGluZzogMC40cmVtO1xuICBtYXJnaW46IDAuM3JlbTtcbiAgcmlnaHQ6IDA7IC8vIE5PVEU6IHJpZ2h0IHdpbGwgYmUgc2V0IGluIG1lcm1haWQuaW5saW5lLnRzXG4gIGNvbG9yOiB2YXIoLS1ncmF5KTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1kYXJrKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGlnaHQpO1xuICBib3JkZXI6IDFweCBzb2xpZDtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiAwLjJzO1xuXG4gICYgPiBzdmcge1xuICAgIGZpbGw6IHZhcigtLWxpZ2h0KTtcbiAgICBmaWx0ZXI6IGNvbnRyYXN0KDAuMyk7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1zZWNvbmRhcnkpO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogMDtcbiAgfVxufVxuXG5wcmUge1xuICAmOmhvdmVyID4gLmV4cGFuZC1idXR0b24ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNpdGlvbjogMC4ycztcbiAgfVxufVxuXG4jbWVybWFpZC1jb250YWluZXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGNvbnRhaW46IGxheW91dDtcbiAgei1pbmRleDogOTk5O1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDB2dztcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZGlzcGxheTogbm9uZTtcbiAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDRweCk7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC41KTtcblxuICAmLmFjdGl2ZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG5cbiAgJiA+ICNtZXJtYWlkLXNwYWNlIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIHdpZHRoOiA5MCU7XG4gICAgaGVpZ2h0OiA5MHZoO1xuICAgIG1hcmdpbjogNXZoIGF1dG87XG4gICAgYmFja2dyb3VuZDogdmFyKC0tbGlnaHQpO1xuICAgIGJveC1zaGFkb3c6XG4gICAgICAwIDE0cHggNTBweCByZ2JhKDI3LCAzMywgNDgsIDAuMTIpLFxuICAgICAgMCAxMHB4IDMwcHggcmdiYSgyNywgMzMsIDQ4LCAwLjE2KTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICYgPiAubWVybWFpZC1oZWFkZXIge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWxpZ2h0Z3JheSk7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1saWdodCk7XG4gICAgICB6LWluZGV4OiAyO1xuICAgICAgbWF4LWhlaWdodDogZml0LWNvbnRlbnQ7XG5cbiAgICAgICYgPiAuY2xvc2UtYnV0dG9uIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIHdpZHRoOiAzMnB4O1xuICAgICAgICBoZWlnaHQ6IDMycHg7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgICAgY29sb3I6IHZhcigtLWRhcmtncmF5KTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWxpZ2h0Z3JheSk7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWRhcmspO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJiA+IC5tZXJtYWlkLWNvbnRlbnQge1xuICAgICAgcGFkZGluZzogMnJlbTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjFzIGVhc2U7XG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgIG1pbi1oZWlnaHQ6IDIwMHB4O1xuICAgICAgbWluLXdpZHRoOiAyMDBweDtcblxuICAgICAgcHJlIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIHN2ZyB7XG4gICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgICYgPiAubWVybWFpZC1jb250cm9scyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDIwcHg7XG4gICAgICByaWdodDogMjBweDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBnYXA6IDhweDtcbiAgICAgIHBhZGRpbmc6IDhweDtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWxpZ2h0KTtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWxpZ2h0Z3JheSk7XG4gICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICBib3gtc2hhZG93OiAwIDJweCA0cHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgICAgei1pbmRleDogMjtcblxuICAgICAgLm1lcm1haWQtY29udHJvbC1idXR0b24ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgd2lkdGg6IDMycHg7XG4gICAgICAgIGhlaWdodDogMzJweDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tbGlnaHRncmF5KTtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tbGlnaHQpO1xuICAgICAgICBjb2xvcjogdmFyKC0tZGFyayk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1ib2R5Rm9udCk7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tbGlnaHRncmF5KTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMXB4KTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFN0eWxlIHRoZSByZXNldCBidXR0b24gZGlmZmVyZW50bHlcbiAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgIHBhZGRpbmc6IDAgMTJweDtcbiAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiJdfQ== */`;import{jsx as jsx4,jsxs}from"preact/jsx-runtime";var headerRegex=new RegExp(/h[1-6]/);function pageResources(baseDir,fileData,staticResources){let contentIndexScript=`const fetchData = fetch("${joinSegments(baseDir,"static/contentIndex.json")}").then(data => data.json())`,resources={css:[{content:joinSegments(baseDir,"index.css")},...staticResources.css],js:[{src:joinSegments(baseDir,"prescript.js"),loadTime:"beforeDOMReady",contentType:"external"},{loadTime:"beforeDOMReady",contentType:"inline",spaPreserve:!0,script:contentIndexScript},...staticResources.js]};return fileData.hasMermaidDiagram&&(resources.js.push({script:mermaid_inline_default,loadTime:"afterDOMReady",moduleType:"module",contentType:"inline"}),resources.css.push({content:mermaid_inline_default2,inline:!0})),resources.js.push({src:joinSegments(baseDir,"postscript.js"),loadTime:"afterDOMReady",moduleType:"module",contentType:"external"}),resources}__name(pageResources,"pageResources");function renderPage(cfg,slug,componentData,components,pageResources2){let root=clone(componentData.tree);visit6(root,"element",(node,_index,_parent)=>{if(node.tagName==="blockquote"&&(node.properties?.className??[]).includes("transclude")){let inner=node.children[0],transcludeTarget=inner.properties["data-slug"],page=componentData.allFiles.find(f=>f.slug===transcludeTarget);if(!page)return;let blockRef=node.properties.dataBlock;if(blockRef?.startsWith("#^")){blockRef=blockRef.slice(2);let blockNode=page.blocks?.[blockRef];blockNode&&(blockNode.tagName==="li"&&(blockNode={type:"element",tagName:"ul",properties:{},children:[blockNode]}),node.children=[normalizeHastElement(blockNode,slug,transcludeTarget),{type:"element",tagName:"a",properties:{href:inner.properties?.href,class:["internal","transclude-src"]},children:[{type:"text",value:i18n(cfg.locale).components.transcludes.linkToOriginal}]}])}else if(blockRef?.startsWith("#")&&page.htmlAst){blockRef=blockRef.slice(1);let startIdx,startDepth,endIdx;for(let[i,el]of page.htmlAst.children.entries()){if(!(el.type==="element"&&el.tagName.match(headerRegex)))continue;let depth=Number(el.tagName.substring(1));if(startIdx===void 0||startDepth===void 0)el.properties?.id===blockRef&&(startIdx=i,startDepth=depth);else if(depth<=startDepth){endIdx=i;break}}if(startIdx===void 0)return;node.children=[...page.htmlAst.children.slice(startIdx,endIdx).map(child=>normalizeHastElement(child,slug,transcludeTarget)),{type:"element",tagName:"a",properties:{href:inner.properties?.href,class:["internal","transclude-src"]},children:[{type:"text",value:i18n(cfg.locale).components.transcludes.linkToOriginal}]}]}else page.htmlAst&&(node.children=[{type:"element",tagName:"h1",properties:{},children:[{type:"text",value:page.frontmatter?.title??i18n(cfg.locale).components.transcludes.transcludeOf({targetSlug:page.slug})}]},...page.htmlAst.children.map(child=>normalizeHastElement(child,slug,transcludeTarget)),{type:"element",tagName:"a",properties:{href:inner.properties?.href,class:["internal","transclude-src"]},children:[{type:"text",value:i18n(cfg.locale).components.transcludes.linkToOriginal}]}])}}),componentData.tree=root;let{head:Head,header,beforeBody,pageBody:Content2,afterBody,left,right,footer:Footer}=components,Header2=Header_default(),Body2=Body_default(),LeftComponent=jsx4("div",{class:"left sidebar",children:left.map(BodyComponent=>jsx4(BodyComponent,{...componentData}))}),RightComponent=jsx4("div",{class:"right sidebar",children:right.map(BodyComponent=>jsx4(BodyComponent,{...componentData}))}),lang=componentData.fileData.frontmatter?.lang??cfg.locale?.split("-")[0]??"en",doc=jsxs("html",{lang,children:[jsx4(Head,{...componentData}),jsx4("body",{"data-slug":slug,children:jsx4("div",{id:"quartz-root",class:"page",children:jsxs(Body2,{...componentData,children:[LeftComponent,jsxs("div",{class:"center",children:[jsxs("div",{class:"page-header",children:[jsx4(Header2,{...componentData,children:header.map(HeaderComponent=>jsx4(HeaderComponent,{...componentData}))}),jsx4("div",{class:"popover-hint",children:beforeBody.map(BodyComponent=>jsx4(BodyComponent,{...componentData}))})]}),jsx4(Content2,{...componentData}),jsx4("hr",{}),jsx4("div",{class:"page-footer",children:afterBody.map(BodyComponent=>jsx4(BodyComponent,{...componentData}))})]}),RightComponent,jsx4(Footer,{...componentData})]})})}),pageResources2.js.filter(resource=>resource.loadTime==="afterDOMReady").map(res=>JSResourceToScriptElement(res))]});return` -`+render(doc)}__name(renderPage,"renderPage");import{toJsxRuntime}from"hast-util-to-jsx-runtime";import{Fragment,jsx as jsx5,jsxs as jsxs2}from"preact/jsx-runtime";import{jsx as jsx6}from"preact/jsx-runtime";var customComponents={table:__name(props=>jsx6("div",{class:"table-container",children:jsx6("table",{...props})}),"table")};function htmlToJsx(fp,tree){try{return toJsxRuntime(tree,{Fragment,jsx:jsx5,jsxs:jsxs2,elementAttributeNameCase:"html",components:customComponents})}catch(e){trace(`Failed to parse Markdown in \`${fp}\` into JSX`,e)}}__name(htmlToJsx,"htmlToJsx");import{jsx as jsx7}from"preact/jsx-runtime";var Content=__name(({fileData,tree})=>{let content=htmlToJsx(fileData.filePath,tree),classString=["popover-hint",...fileData.frontmatter?.cssclasses??[]].join(" ");return jsx7("article",{class:classString,children:content})},"Content"),Content_default=__name(()=>Content,"default");var listPage_default=`/** - * Layout breakpoints - * $mobile: screen width below this value will use mobile styles - * $desktop: screen width above this value will use desktop styles - * Screen width between $mobile and $desktop width will use the tablet layout. - * assuming mobile < desktop - */ -ul.section-ul { - list-style: none; - margin-top: 2em; - padding-left: 0; -} - -li.section-li { - margin-bottom: 1em; -} -li.section-li > .section { - display: grid; - grid-template-columns: fit-content(8em) 3fr 1fr; -} -@media all and ((max-width: 800px)) { - li.section-li > .section > .tags { - display: none; - } -} -li.section-li > .section > .desc > h3 > a { - background-color: transparent; -} -li.section-li > .section .meta { - margin: 0 1em 0 0; - opacity: 0.6; -} - -.popover .section { - grid-template-columns: fit-content(8em) 1fr !important; -} -.popover .section > .tags { - display: none; -} -/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL2hvbWUvYWxhbmQvZ2l0L3F1YXJ0ei9xdWFydHovY29tcG9uZW50cy9zdHlsZXMiLCJzb3VyY2VzIjpbIi4uLy4uL3N0eWxlcy92YXJpYWJsZXMuc2NzcyIsImxpc3RQYWdlLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUNFQTtFQUNFO0VBQ0E7RUFDQTs7O0FBR0Y7RUFDRTs7QUFFQTtFQUNFO0VBQ0E7O0FBRUE7RUFDRTtJQUNFOzs7QUFJSjtFQUNFOztBQUdGO0VBQ0U7RUFDQTs7O0FBTU47RUFDRTs7QUFFQTtFQUNFIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBMYXlvdXQgYnJlYWtwb2ludHNcbiAqICRtb2JpbGU6IHNjcmVlbiB3aWR0aCBiZWxvdyB0aGlzIHZhbHVlIHdpbGwgdXNlIG1vYmlsZSBzdHlsZXNcbiAqICRkZXNrdG9wOiBzY3JlZW4gd2lkdGggYWJvdmUgdGhpcyB2YWx1ZSB3aWxsIHVzZSBkZXNrdG9wIHN0eWxlc1xuICogU2NyZWVuIHdpZHRoIGJldHdlZW4gJG1vYmlsZSBhbmQgJGRlc2t0b3Agd2lkdGggd2lsbCB1c2UgdGhlIHRhYmxldCBsYXlvdXQuXG4gKiBhc3N1bWluZyBtb2JpbGUgPCBkZXNrdG9wXG4gKi9cbiRicmVha3BvaW50czogKFxuICBtb2JpbGU6IDgwMHB4LFxuICBkZXNrdG9wOiAxMjAwcHgsXG4pO1xuXG4kbW9iaWxlOiBcIihtYXgtd2lkdGg6ICN7bWFwLWdldCgkYnJlYWtwb2ludHMsIG1vYmlsZSl9KVwiO1xuJHRhYmxldDogXCIobWluLXdpZHRoOiAje21hcC1nZXQoJGJyZWFrcG9pbnRzLCBtb2JpbGUpfSkgYW5kIChtYXgtd2lkdGg6ICN7bWFwLWdldCgkYnJlYWtwb2ludHMsIGRlc2t0b3ApfSlcIjtcbiRkZXNrdG9wOiBcIihtaW4td2lkdGg6ICN7bWFwLWdldCgkYnJlYWtwb2ludHMsIGRlc2t0b3ApfSlcIjtcblxuJHBhZ2VXaWR0aDogI3ttYXAtZ2V0KCRicmVha3BvaW50cywgbW9iaWxlKX07XG4kc2lkZVBhbmVsV2lkdGg6IDMyMHB4OyAvLzM4MHB4O1xuJHRvcFNwYWNpbmc6IDZyZW07XG4kYm9sZFdlaWdodDogNzAwO1xuJHNlbWlCb2xkV2VpZ2h0OiA2MDA7XG4kbm9ybWFsV2VpZ2h0OiA0MDA7XG5cbiRtb2JpbGVHcmlkOiAoXG4gIHRlbXBsYXRlUm93czogXCJhdXRvIGF1dG8gYXV0byBhdXRvIGF1dG9cIixcbiAgdGVtcGxhdGVDb2x1bW5zOiBcImF1dG9cIixcbiAgcm93R2FwOiBcIjVweFwiLFxuICBjb2x1bW5HYXA6IFwiNXB4XCIsXG4gIHRlbXBsYXRlQXJlYXM6XG4gICAgJ1wiZ3JpZC1zaWRlYmFyLWxlZnRcIlxcXG4gICAgICBcImdyaWQtaGVhZGVyXCJcXFxuICAgICAgXCJncmlkLWNlbnRlclwiXFxcbiAgICAgIFwiZ3JpZC1zaWRlYmFyLXJpZ2h0XCJcXFxuICAgICAgXCJncmlkLWZvb3RlclwiJyxcbik7XG4kdGFibGV0R3JpZDogKFxuICB0ZW1wbGF0ZVJvd3M6IFwiYXV0byBhdXRvIGF1dG8gYXV0b1wiLFxuICB0ZW1wbGF0ZUNvbHVtbnM6IFwiI3skc2lkZVBhbmVsV2lkdGh9IGF1dG9cIixcbiAgcm93R2FwOiBcIjVweFwiLFxuICBjb2x1bW5HYXA6IFwiNXB4XCIsXG4gIHRlbXBsYXRlQXJlYXM6XG4gICAgJ1wiZ3JpZC1zaWRlYmFyLWxlZnQgZ3JpZC1oZWFkZXJcIlxcXG4gICAgICBcImdyaWQtc2lkZWJhci1sZWZ0IGdyaWQtY2VudGVyXCJcXFxuICAgICAgXCJncmlkLXNpZGViYXItbGVmdCBncmlkLXNpZGViYXItcmlnaHRcIlxcXG4gICAgICBcImdyaWQtc2lkZWJhci1sZWZ0IGdyaWQtZm9vdGVyXCInLFxuKTtcbiRkZXNrdG9wR3JpZDogKFxuICB0ZW1wbGF0ZVJvd3M6IFwiYXV0byBhdXRvIGF1dG9cIixcbiAgdGVtcGxhdGVDb2x1bW5zOiBcIiN7JHNpZGVQYW5lbFdpZHRofSBhdXRvICN7JHNpZGVQYW5lbFdpZHRofVwiLFxuICByb3dHYXA6IFwiNXB4XCIsXG4gIGNvbHVtbkdhcDogXCI1cHhcIixcbiAgdGVtcGxhdGVBcmVhczpcbiAgICAnXCJncmlkLXNpZGViYXItbGVmdCBncmlkLWhlYWRlciBncmlkLXNpZGViYXItcmlnaHRcIlxcXG4gICAgICBcImdyaWQtc2lkZWJhci1sZWZ0IGdyaWQtY2VudGVyIGdyaWQtc2lkZWJhci1yaWdodFwiXFxcbiAgICAgIFwiZ3JpZC1zaWRlYmFyLWxlZnQgZ3JpZC1mb290ZXIgZ3JpZC1zaWRlYmFyLXJpZ2h0XCInLFxuKTtcbiIsIkB1c2UgXCIuLi8uLi9zdHlsZXMvdmFyaWFibGVzLnNjc3NcIiBhcyAqO1xuXG51bC5zZWN0aW9uLXVsIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luLXRvcDogMmVtO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbmxpLnNlY3Rpb24tbGkge1xuICBtYXJnaW4tYm90dG9tOiAxZW07XG5cbiAgJiA+IC5zZWN0aW9uIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogZml0LWNvbnRlbnQoOGVtKSAzZnIgMWZyO1xuXG4gICAgQG1lZGlhIGFsbCBhbmQgKCRtb2JpbGUpIHtcbiAgICAgICYgPiAudGFncyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJiA+IC5kZXNjID4gaDMgPiBhIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgICYgLm1ldGEge1xuICAgICAgbWFyZ2luOiAwIDFlbSAwIDA7XG4gICAgICBvcGFjaXR5OiAwLjY7XG4gICAgfVxuICB9XG59XG5cbi8vIG1vZGlmaWNhdGlvbnMgaW4gcG9wb3ZlciBjb250ZXh0XG4ucG9wb3ZlciAuc2VjdGlvbiB7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogZml0LWNvbnRlbnQoOGVtKSAxZnIgIWltcG9ydGFudDtcblxuICAmID4gLnRhZ3Mge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbiJdfQ== */`;import{jsx as jsx8}from"preact/jsx-runtime";function getDate(cfg,data){if(!cfg.defaultDateType)throw new Error("Field 'defaultDateType' was not set in the configuration object of quartz.config.ts. See https://quartz.jzhao.xyz/configuration#general-configuration for more details.");return data.dates?.[cfg.defaultDateType]}__name(getDate,"getDate");function formatDate(d,locale="en-US"){return d.toLocaleDateString(locale,{year:"numeric",month:"short",day:"2-digit"})}__name(formatDate,"formatDate");function Date2({date,locale}){return jsx8("time",{datetime:date.toISOString(),children:formatDate(date,locale)})}__name(Date2,"Date");import{jsx as jsx9,jsxs as jsxs3}from"preact/jsx-runtime";function byDateAndAlphabetical(cfg){return(f1,f2)=>{if(f1.dates&&f2.dates)return getDate(cfg,f2).getTime()-getDate(cfg,f1).getTime();if(f1.dates&&!f2.dates)return-1;if(!f1.dates&&f2.dates)return 1;let f1Title=f1.frontmatter?.title.toLowerCase()??"",f2Title=f2.frontmatter?.title.toLowerCase()??"";return f1Title.localeCompare(f2Title)}}__name(byDateAndAlphabetical,"byDateAndAlphabetical");var PageList=__name(({cfg,fileData,allFiles,limit,sort})=>{let sorter=sort??byDateAndAlphabetical(cfg),list=allFiles.sort(sorter);return limit&&(list=list.slice(0,limit)),jsx9("ul",{class:"section-ul",children:list.map(page=>{let title=page.frontmatter?.title,tags=page.frontmatter?.tags??[];return jsx9("li",{class:"section-li",children:jsxs3("div",{class:"section",children:[jsx9("p",{class:"meta",children:page.dates&&jsx9(Date2,{date:getDate(cfg,page),locale:cfg.locale})}),jsx9("div",{class:"desc",children:jsx9("h3",{children:jsx9("a",{href:resolveRelative(fileData.slug,page.slug),class:"internal",children:title})})}),jsx9("ul",{class:"tags",children:tags.map(tag=>jsx9("li",{children:jsx9("a",{class:"internal tag-link",href:resolveRelative(fileData.slug,`tags/${tag}`),children:tag})}))})]})})})})},"PageList");PageList.css=` -.section h3 { - margin: 0; -} - -.section > .tags { - margin: 0; -} -`;import{Fragment as Fragment2,jsx as jsx10,jsxs as jsxs4}from"preact/jsx-runtime";var defaultOptions9={numPages:10},TagContent_default=__name(opts=>{let options2={...defaultOptions9,...opts},TagContent=__name(props=>{let{tree,fileData,allFiles,cfg}=props,slug=fileData.slug;if(!(slug?.startsWith("tags/")||slug==="tags"))throw new Error(`Component "TagContent" tried to render a non-tag page: ${slug}`);let tag=simplifySlug(slug.slice(5)),allPagesWithTag=__name(tag2=>allFiles.filter(file=>(file.frontmatter?.tags??[]).flatMap(getAllSegmentPrefixes).includes(tag2)),"allPagesWithTag"),content=tree.children.length===0?fileData.description:htmlToJsx(fileData.filePath,tree),classes=(fileData.frontmatter?.cssclasses??[]).join(" ");if(tag==="/"){let tags=[...new Set(allFiles.flatMap(data=>data.frontmatter?.tags??[]).flatMap(getAllSegmentPrefixes))].sort((a,b)=>a.localeCompare(b)),tagItemMap=new Map;for(let tag2 of tags)tagItemMap.set(tag2,allPagesWithTag(tag2));return jsxs4("div",{class:"popover-hint",children:[jsx10("article",{class:classes,children:jsx10("p",{children:content})}),jsx10("p",{children:i18n(cfg.locale).pages.tagContent.totalTags({count:tags.length})}),jsx10("div",{children:tags.map(tag2=>{let pages=tagItemMap.get(tag2),listProps={...props,allFiles:pages},contentPage=allFiles.filter(file=>file.slug===`tags/${tag2}`).at(0),root=contentPage?.htmlAst,content2=!root||root?.children.length===0?contentPage?.description:htmlToJsx(contentPage.filePath,root);return jsxs4("div",{children:[jsx10("h2",{children:jsx10("a",{class:"internal tag-link",href:`../tags/${tag2}`,children:tag2})}),content2&&jsx10("p",{children:content2}),jsxs4("div",{class:"page-listing",children:[jsxs4("p",{children:[i18n(cfg.locale).pages.tagContent.itemsUnderTag({count:pages.length}),pages.length>options2.numPages&&jsxs4(Fragment2,{children:[" ",jsx10("span",{children:i18n(cfg.locale).pages.tagContent.showingFirst({count:options2.numPages})})]})]}),jsx10(PageList,{limit:options2.numPages,...listProps,sort:options2?.sort})]})]})})})]})}else{let pages=allPagesWithTag(tag),listProps={...props,allFiles:pages};return jsxs4("div",{class:classes,children:[jsx10("article",{class:"popover-hint",children:content}),jsxs4("div",{class:"page-listing",children:[jsx10("p",{children:i18n(cfg.locale).pages.tagContent.itemsUnderTag({count:pages.length})}),jsx10("div",{children:jsx10(PageList,{...listProps,sort:options2?.sort})})]})]})}},"TagContent");return TagContent.css=listPage_default+PageList.css,TagContent},"default");import path5 from"path";import{jsx as jsx11,jsxs as jsxs5}from"preact/jsx-runtime";var defaultOptions10={showFolderCount:!0,showSubfolders:!0},FolderContent_default=__name(opts=>{let options2={...defaultOptions10,...opts},FolderContent=__name(props=>{let{tree,fileData,allFiles,cfg}=props,folderSlug=stripSlashes(simplifySlug(fileData.slug)),folderParts=folderSlug.split(path5.posix.sep),allPagesInFolder=[],allPagesInSubfolders=new Map;allFiles.forEach(file=>{let fileSlug=stripSlashes(simplifySlug(file.slug)),prefixed=fileSlug.startsWith(folderSlug)&&fileSlug!==folderSlug,fileParts=fileSlug.split(path5.posix.sep),isDirectChild=fileParts.length===folderParts.length+1;if(prefixed){if(isDirectChild)allPagesInFolder.push(file);else if(options2.showSubfolders){let subfolderSlug=joinSegments(...fileParts.slice(0,folderParts.length+1)),pagesInFolder=allPagesInSubfolders.get(subfolderSlug)||[];allPagesInSubfolders.set(subfolderSlug,[...pagesInFolder,file])}}}),allPagesInSubfolders.forEach((files,subfolderSlug)=>{if(!allPagesInFolder.some(file=>subfolderSlug===stripSlashes(simplifySlug(file.slug)))){let subfolderDates=files.sort(byDateAndAlphabetical(cfg))[0].dates,subfolderTitle=subfolderSlug.split(path5.posix.sep).at(-1);allPagesInFolder.push({slug:subfolderSlug,dates:subfolderDates,frontmatter:{title:subfolderTitle,tags:["folder"]}})}});let classes=(fileData.frontmatter?.cssclasses??[]).join(" "),listProps={...props,sort:options2.sort,allFiles:allPagesInFolder},content=tree.children.length===0?fileData.description:htmlToJsx(fileData.filePath,tree);return jsxs5("div",{class:"popover-hint",children:[jsx11("article",{class:classes,children:content}),jsxs5("div",{class:"page-listing",children:[options2.showFolderCount&&jsx11("p",{children:i18n(cfg.locale).pages.folderContent.itemsUnderFolder({count:allPagesInFolder.length})}),jsx11("div",{children:jsx11(PageList,{...listProps})})]})]})},"FolderContent");return FolderContent.css=listPage_default+PageList.css,FolderContent},"default");import{jsx as jsx12,jsxs as jsxs6}from"preact/jsx-runtime";var NotFound=__name(({cfg})=>{let baseDir=new URL(`https://${cfg.baseUrl??"example.com"}`).pathname;return jsxs6("article",{class:"popover-hint",children:[jsx12("h1",{children:"404"}),jsx12("p",{children:i18n(cfg.locale).pages.error.notFound}),jsx12("a",{href:baseDir,children:i18n(cfg.locale).pages.error.home})]})},"NotFound"),__default=__name(()=>NotFound,"default");import{jsx as jsx13}from"preact/jsx-runtime";var ArticleTitle=__name(({fileData,displayClass})=>{let title=fileData.frontmatter?.title;return title?jsx13("h1",{class:classNames(displayClass,"article-title"),children:title}):null},"ArticleTitle");ArticleTitle.css=` -.article-title { - margin: 2rem 0 0 0; -} -`;var ArticleTitle_default=__name(()=>ArticleTitle,"default");var darkmode_inline_default=`var d=window.matchMedia("(prefers-color-scheme: light)").matches?"light":"dark",s=localStorage.getItem("theme")??d;document.documentElement.setAttribute("saved-theme",s);var a=t=>{let n=new CustomEvent("themechange",{detail:{theme:t}});document.dispatchEvent(n)};document.addEventListener("nav",()=>{let t=o=>{let e=document.documentElement.getAttribute("saved-theme")==="dark"?"light":"dark";document.documentElement.setAttribute("saved-theme",e),localStorage.setItem("theme",e),a(e)},n=o=>{let e=o.matches?"dark":"light";document.documentElement.setAttribute("saved-theme",e),localStorage.setItem("theme",e),a(e)},m=document.querySelector("#darkmode");m&&(m.addEventListener("click",t),window.addCleanup(()=>m.removeEventListener("click",t)));let c=window.matchMedia("(prefers-color-scheme: dark)");c.addEventListener("change",n),window.addCleanup(()=>c.removeEventListener("change",n))}); -`;var darkmode_default=`.darkmode { - cursor: pointer; - padding: 0; - position: relative; - background: none; - border: none; - width: 20px; - height: 20px; - margin: 0 10px; - text-align: inherit; -} -.darkmode svg { - position: absolute; - width: 20px; - height: 20px; - top: calc(50% - 10px); - fill: var(--darkgray); - transition: opacity 0.1s ease; -} - -:root[saved-theme=dark] { - color-scheme: dark; -} - -:root[saved-theme=light] { - color-scheme: light; -} - -:root[saved-theme=dark] .darkmode > #dayIcon { - display: none; -} -:root[saved-theme=dark] .darkmode > #nightIcon { - display: inline; -} - -:root .darkmode > #dayIcon { - display: inline; -} -:root .darkmode > #nightIcon { - display: none; -} -/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL2hvbWUvYWxhbmQvZ2l0L3F1YXJ0ei9xdWFydHovY29tcG9uZW50cy9zdHlsZXMiLCJzb3VyY2VzIjpbImRhcmttb2RlLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUlKO0VBQ0U7OztBQUdGO0VBQ0U7OztBQUlBO0VBQ0U7O0FBRUY7RUFDRTs7O0FBS0Y7RUFDRTs7QUFFRjtFQUNFIiwic291cmNlc0NvbnRlbnQiOlsiLmRhcmttb2RlIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMjBweDtcbiAgbWFyZ2luOiAwIDEwcHg7XG4gIHRleHQtYWxpZ246IGluaGVyaXQ7XG5cbiAgJiBzdmcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMjBweDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgdG9wOiBjYWxjKDUwJSAtIDEwcHgpO1xuICAgIGZpbGw6IHZhcigtLWRhcmtncmF5KTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMXMgZWFzZTtcbiAgfVxufVxuXG46cm9vdFtzYXZlZC10aGVtZT1cImRhcmtcIl0ge1xuICBjb2xvci1zY2hlbWU6IGRhcms7XG59XG5cbjpyb290W3NhdmVkLXRoZW1lPVwibGlnaHRcIl0ge1xuICBjb2xvci1zY2hlbWU6IGxpZ2h0O1xufVxuXG46cm9vdFtzYXZlZC10aGVtZT1cImRhcmtcIl0gLmRhcmttb2RlIHtcbiAgJiA+ICNkYXlJY29uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gICYgPiAjbmlnaHRJY29uIHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gIH1cbn1cblxuOnJvb3QgLmRhcmttb2RlIHtcbiAgJiA+ICNkYXlJY29uIHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gIH1cbiAgJiA+ICNuaWdodEljb24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbiJdfQ== */`;import{jsx as jsx14,jsxs as jsxs7}from"preact/jsx-runtime";var Darkmode=__name(({displayClass,cfg})=>jsxs7("button",{class:classNames(displayClass,"darkmode"),id:"darkmode",children:[jsxs7("svg",{xmlns:"http://www.w3.org/2000/svg",xmlnsXlink:"http://www.w3.org/1999/xlink",version:"1.1",id:"dayIcon",x:"0px",y:"0px",viewBox:"0 0 35 35",style:"enable-background:new 0 0 35 35",xmlSpace:"preserve","aria-label":i18n(cfg.locale).components.themeToggle.darkMode,children:[jsx14("title",{children:i18n(cfg.locale).components.themeToggle.darkMode}),jsx14("path",{d:"M6,17.5C6,16.672,5.328,16,4.5,16h-3C0.672,16,0,16.672,0,17.5 S0.672,19,1.5,19h3C5.328,19,6,18.328,6,17.5z M7.5,26c-0.414,0-0.789,0.168-1.061,0.439l-2,2C4.168,28.711,4,29.086,4,29.5 C4,30.328,4.671,31,5.5,31c0.414,0,0.789-0.168,1.06-0.44l2-2C8.832,28.289,9,27.914,9,27.5C9,26.672,8.329,26,7.5,26z M17.5,6 C18.329,6,19,5.328,19,4.5v-3C19,0.672,18.329,0,17.5,0S16,0.672,16,1.5v3C16,5.328,16.671,6,17.5,6z M27.5,9 c0.414,0,0.789-0.168,1.06-0.439l2-2C30.832,6.289,31,5.914,31,5.5C31,4.672,30.329,4,29.5,4c-0.414,0-0.789,0.168-1.061,0.44 l-2,2C26.168,6.711,26,7.086,26,7.5C26,8.328,26.671,9,27.5,9z M6.439,8.561C6.711,8.832,7.086,9,7.5,9C8.328,9,9,8.328,9,7.5 c0-0.414-0.168-0.789-0.439-1.061l-2-2C6.289,4.168,5.914,4,5.5,4C4.672,4,4,4.672,4,5.5c0,0.414,0.168,0.789,0.439,1.06 L6.439,8.561z M33.5,16h-3c-0.828,0-1.5,0.672-1.5,1.5s0.672,1.5,1.5,1.5h3c0.828,0,1.5-0.672,1.5-1.5S34.328,16,33.5,16z M28.561,26.439C28.289,26.168,27.914,26,27.5,26c-0.828,0-1.5,0.672-1.5,1.5c0,0.414,0.168,0.789,0.439,1.06l2,2 C28.711,30.832,29.086,31,29.5,31c0.828,0,1.5-0.672,1.5-1.5c0-0.414-0.168-0.789-0.439-1.061L28.561,26.439z M17.5,29 c-0.829,0-1.5,0.672-1.5,1.5v3c0,0.828,0.671,1.5,1.5,1.5s1.5-0.672,1.5-1.5v-3C19,29.672,18.329,29,17.5,29z M17.5,7 C11.71,7,7,11.71,7,17.5S11.71,28,17.5,28S28,23.29,28,17.5S23.29,7,17.5,7z M17.5,25c-4.136,0-7.5-3.364-7.5-7.5 c0-4.136,3.364-7.5,7.5-7.5c4.136,0,7.5,3.364,7.5,7.5C25,21.636,21.636,25,17.5,25z"})]}),jsxs7("svg",{xmlns:"http://www.w3.org/2000/svg",xmlnsXlink:"http://www.w3.org/1999/xlink",version:"1.1",id:"nightIcon",x:"0px",y:"0px",viewBox:"0 0 100 100",style:"enable-background:new 0 0 100 100",xmlSpace:"preserve","aria-label":i18n(cfg.locale).components.themeToggle.lightMode,children:[jsx14("title",{children:i18n(cfg.locale).components.themeToggle.lightMode}),jsx14("path",{d:"M96.76,66.458c-0.853-0.852-2.15-1.064-3.23-0.534c-6.063,2.991-12.858,4.571-19.655,4.571 C62.022,70.495,50.88,65.88,42.5,57.5C29.043,44.043,25.658,23.536,34.076,6.47c0.532-1.08,0.318-2.379-0.534-3.23 c-0.851-0.852-2.15-1.064-3.23-0.534c-4.918,2.427-9.375,5.619-13.246,9.491c-9.447,9.447-14.65,22.008-14.65,35.369 c0,13.36,5.203,25.921,14.65,35.368s22.008,14.65,35.368,14.65c13.361,0,25.921-5.203,35.369-14.65 c3.872-3.871,7.064-8.328,9.491-13.246C97.826,68.608,97.611,67.309,96.76,66.458z"})]})]}),"Darkmode");Darkmode.beforeDOMLoaded=darkmode_inline_default;Darkmode.css=darkmode_default;var Darkmode_default=__name(()=>Darkmode,"default");var DEFAULT_SANS_SERIF='-apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif',DEFAULT_MONO="ui-monospace, SFMono-Regular, SF Mono, Menlo, monospace";function googleFontHref(theme){let{code,header,body}=theme.typography;return`https://fonts.googleapis.com/css2?family=${code}&family=${header}:wght@400;700&family=${body}:ital,wght@0,400;0,600;1,400;1,600&display=swap`}__name(googleFontHref,"googleFontHref");function joinStyles(theme,...stylesheet){return` -${stylesheet.join(` - -`)} - -:root { - --light: ${theme.colors.lightMode.light}; - --lightgray: ${theme.colors.lightMode.lightgray}; - --gray: ${theme.colors.lightMode.gray}; - --darkgray: ${theme.colors.lightMode.darkgray}; - --dark: ${theme.colors.lightMode.dark}; - --secondary: ${theme.colors.lightMode.secondary}; - --tertiary: ${theme.colors.lightMode.tertiary}; - --highlight: ${theme.colors.lightMode.highlight}; - --textHighlight: ${theme.colors.lightMode.textHighlight}; - - --headerFont: "${theme.typography.header}", ${DEFAULT_SANS_SERIF}; - --bodyFont: "${theme.typography.body}", ${DEFAULT_SANS_SERIF}; - --codeFont: "${theme.typography.code}", ${DEFAULT_MONO}; -} - -:root[saved-theme="dark"] { - --light: ${theme.colors.darkMode.light}; - --lightgray: ${theme.colors.darkMode.lightgray}; - --gray: ${theme.colors.darkMode.gray}; - --darkgray: ${theme.colors.darkMode.darkgray}; - --dark: ${theme.colors.darkMode.dark}; - --secondary: ${theme.colors.darkMode.secondary}; - --tertiary: ${theme.colors.darkMode.tertiary}; - --highlight: ${theme.colors.darkMode.highlight}; - --textHighlight: ${theme.colors.darkMode.textHighlight}; -} -`}__name(joinStyles,"joinStyles");import satori from"satori";import fs2 from"fs";import sharp from"sharp";import{jsx as jsx15,jsxs as jsxs8}from"preact/jsx-runtime";async function getSatoriFont(headerFontName,bodyFontName){let headerFont=await fetchTtf(headerFontName,700),bodyFont=await fetchTtf(bodyFontName,400);return[{name:headerFontName,data:headerFont,weight:700,style:"normal"},{name:bodyFontName,data:bodyFont,weight:400,style:"normal"}]}__name(getSatoriFont,"getSatoriFont");async function fetchTtf(fontName,weight){try{let css=await(await fetch(`https://fonts.googleapis.com/css2?family=${fontName}:wght@${weight}`)).text(),match=/url\((https:\/\/fonts.gstatic.com\/s\/.*?.ttf)\)/g.exec(css);if(!match)throw new Error("Could not fetch font");return await(await fetch(match[1])).arrayBuffer()}catch(error){throw new Error(`Error fetching font: ${error}`)}}__name(fetchTtf,"fetchTtf");var defaultImage=__name((cfg,{colorScheme},title,description,fonts,_fileData)=>{let useSmallerFont=title.length>22,iconPath=`https://${cfg.baseUrl}/static/icon.png`;return jsxs8("div",{style:{display:"flex",flexDirection:"column",justifyContent:"center",alignItems:"center",height:"100%",width:"100%",backgroundColor:cfg.theme.colors[colorScheme].light,gap:"2rem",paddingTop:"1.5rem",paddingBottom:"1.5rem",paddingLeft:"5rem",paddingRight:"5rem"},children:[jsxs8("div",{style:{display:"flex",alignItems:"center",justifyContent:"flex-start",width:"100%",flexDirection:"row",gap:"2.5rem"},children:[jsx15("img",{src:iconPath,width:135,height:135}),jsx15("p",{style:{color:cfg.theme.colors[colorScheme].dark,fontSize:useSmallerFont?70:82,fontFamily:fonts[0].name},children:title})]}),jsx15("p",{style:{color:cfg.theme.colors[colorScheme].dark,fontSize:44,lineClamp:3,fontFamily:fonts[1].name},children:description})]})},"defaultImage");import{Fragment as Fragment3,jsx as jsx16,jsxs as jsxs9}from"preact/jsx-runtime";async function generateSocialImage({cfg,description,fileName,fontsPromise,title,fileData},userOpts,imageDir){let fonts=await fontsPromise,{width,height}=userOpts,imageComponent=userOpts.imageStructure(cfg,userOpts,title,description,fonts,fileData),svg=await satori(imageComponent,{width,height,fonts}),compressed=await sharp(Buffer.from(svg)).webp({quality:40}).toBuffer(),filePath=joinSegments(imageDir,`${fileName}.${extension}`);fs2.writeFileSync(filePath,compressed)}__name(generateSocialImage,"generateSocialImage");var extension="webp",defaultOptions11={colorScheme:"lightMode",width:1200,height:630,imageStructure:defaultImage,excludeRoot:!1},Head_default=__name(()=>{let fontsPromise,fullOptions;return __name(({cfg,fileData,externalResources,ctx})=>{fullOptions||(typeof cfg.generateSocialImages!="boolean"?fullOptions={...defaultOptions11,...cfg.generateSocialImages}:fullOptions=defaultOptions11),!fontsPromise&&cfg.generateSocialImages&&(fontsPromise=getSatoriFont(cfg.theme.typography.header,cfg.theme.typography.body));let fileName=fileData.filePath?.replaceAll("/","-"),fdDescription=fileData.description?.trim()??i18n(cfg.locale).propertyDefaults.description,titleSuffix=cfg.pageTitleSuffix??"",title=(fileData.frontmatter?.title??i18n(cfg.locale).propertyDefaults.title)+titleSuffix,description="";fdDescription&&(description=unescapeHTML(fdDescription)),fileData.frontmatter?.socialDescription?description=fileData.frontmatter?.socialDescription:fileData.frontmatter?.description&&(description=fileData.frontmatter?.description);let fileDir=joinSegments(ctx.argv.output,"static","social-images");cfg.generateSocialImages&&(fs2.existsSync(fileDir)||fs2.mkdirSync(fileDir,{recursive:!0}),fileName&&generateSocialImage({title,description,fileName,fileDir,fileExt:extension,fontsPromise,cfg,fileData},fullOptions,fileDir));let{css,js}=externalResources,url=new URL(`https://${cfg.baseUrl??"example.com"}`),path13=url.pathname,baseDir=fileData.slug==="404"?path13:pathToRoot(fileData.slug),iconPath=joinSegments(baseDir,"static/icon.png"),ogImageDefaultPath=`https://${cfg.baseUrl}/static/og-image.png`,ogImageGeneratedPath=`https://${cfg.baseUrl}/${fileDir.replace(`${ctx.argv.output}/`,"")}/${fileName}.${extension}`,ogImagePath=fileName===void 0||!cfg.generateSocialImages?ogImageDefaultPath:ogImageGeneratedPath,frontmatterImgUrl=fileData.frontmatter?.socialImage;fileData.slug==="index"&&(ogImagePath=ogImageDefaultPath),frontmatterImgUrl&&(ogImagePath=`https://${cfg.baseUrl}/static/${frontmatterImgUrl}`);let socialUrl=fileData.slug==="404"?url.toString():joinSegments(url.toString(),fileData.slug);return jsxs9("head",{children:[jsx16("title",{children:title}),jsx16("meta",{charSet:"utf-8"}),cfg.theme.cdnCaching&&cfg.theme.fontOrigin==="googleFonts"&&jsxs9(Fragment3,{children:[jsx16("link",{rel:"preconnect",href:"https://fonts.googleapis.com"}),jsx16("link",{rel:"preconnect",href:"https://fonts.gstatic.com"}),jsx16("link",{rel:"stylesheet",href:googleFontHref(cfg.theme)})]}),jsx16("link",{rel:"preconnect",href:"https://cdnjs.cloudflare.com",crossOrigin:"anonymous"}),jsx16("meta",{name:"viewport",content:"width=device-width, initial-scale=1.0"}),jsx16("meta",{name:"og:site_name",content:cfg.pageTitle}),jsx16("meta",{property:"og:title",content:title}),jsx16("meta",{property:"og:type",content:"website"}),jsx16("meta",{name:"twitter:card",content:"summary_large_image"}),jsx16("meta",{name:"twitter:title",content:title}),jsx16("meta",{name:"twitter:description",content:description}),jsx16("meta",{property:"og:description",content:description}),jsx16("meta",{property:"og:image:type",content:`image/${extension}`}),jsx16("meta",{property:"og:image:alt",content:description}),!frontmatterImgUrl&&jsxs9(Fragment3,{children:[jsx16("meta",{property:"og:image:width",content:fullOptions.width.toString()}),jsx16("meta",{property:"og:image:height",content:fullOptions.height.toString()})]}),jsx16("meta",{property:"og:image:url",content:ogImagePath}),cfg.baseUrl&&jsxs9(Fragment3,{children:[jsx16("meta",{name:"twitter:image",content:ogImagePath}),jsx16("meta",{property:"og:image",content:ogImagePath}),jsx16("meta",{property:"twitter:domain",content:cfg.baseUrl}),jsx16("meta",{property:"og:url",content:socialUrl}),jsx16("meta",{property:"twitter:url",content:socialUrl})]}),jsx16("link",{rel:"icon",href:iconPath}),jsx16("meta",{name:"description",content:description}),jsx16("meta",{name:"generator",content:"Quartz"}),css.map(resource=>CSSResourceToStyleElement(resource,!0)),js.filter(resource=>resource.loadTime==="beforeDOMReady").map(res=>JSResourceToScriptElement(res,!0))]})},"Head")},"default");import{jsx as jsx17}from"preact/jsx-runtime";var PageTitle=__name(({fileData,cfg,displayClass})=>{let title=cfg?.pageTitle??i18n(cfg.locale).propertyDefaults.title,baseDir=pathToRoot(fileData.slug);return jsx17("h2",{class:classNames(displayClass,"page-title"),children:jsx17("a",{href:baseDir,children:title})})},"PageTitle");PageTitle.css=` -.page-title { - font-size: 1.75rem; - margin: 0; -} -`;var PageTitle_default=__name(()=>PageTitle,"default");import readingTime from"reading-time";var contentMeta_default=`.content-meta { - margin-top: 0; - color: var(--gray); -} -.content-meta[show-comma=true] > *:not(:last-child) { - margin-right: 8px; -} -.content-meta[show-comma=true] > *:not(:last-child)::after { - content: ","; -} -/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL2hvbWUvYWxhbmQvZ2l0L3F1YXJ0ei9xdWFydHovY29tcG9uZW50cy9zdHlsZXMiLCJzb3VyY2VzIjpbImNvbnRlbnRNZXRhLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRTtFQUNBOztBQUdFO0VBQ0U7O0FBRUE7RUFDRSIsInNvdXJjZXNDb250ZW50IjpbIi5jb250ZW50LW1ldGEge1xuICBtYXJnaW4tdG9wOiAwO1xuICBjb2xvcjogdmFyKC0tZ3JheSk7XG5cbiAgJltzaG93LWNvbW1hPVwidHJ1ZVwiXSB7XG4gICAgPiAqOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIsXCI7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iXX0= */`;import{jsx as jsx18}from"preact/jsx-runtime";var defaultOptions12={showReadingTime:!0,showComma:!0},ContentMeta_default=__name(opts=>{let options2={...defaultOptions12,...opts};function ContentMetadata({cfg,fileData,displayClass}){let text=fileData.text;if(text){let segments=[];if(fileData.dates&&segments.push(jsx18(Date2,{date:getDate(cfg,fileData),locale:cfg.locale})),options2.showReadingTime){let{minutes,words:_words}=readingTime(text),displayedTime=i18n(cfg.locale).components.contentMeta.readingTime({minutes:Math.ceil(minutes)});segments.push(jsx18("span",{children:displayedTime}))}return jsx18("p",{"show-comma":options2.showComma,class:classNames(displayClass,"content-meta"),children:segments})}else return null}return __name(ContentMetadata,"ContentMetadata"),ContentMetadata.css=contentMeta_default,ContentMetadata},"default");import{jsx as jsx19}from"preact/jsx-runtime";function Spacer({displayClass}){return jsx19("div",{class:classNames(displayClass,"spacer")})}__name(Spacer,"Spacer");var Spacer_default=__name(()=>Spacer,"default");var legacyToc_default=`details#toc summary { - cursor: pointer; -} -details#toc summary::marker { - color: var(--dark); -} -details#toc summary > * { - padding-left: 0.25rem; - display: inline-block; - margin: 0; -} -details#toc ul { - list-style: none; - margin: 0.5rem 1.25rem; - padding: 0; -} -details#toc .depth-1 { - padding-left: calc(1rem * 1); -} -details#toc .depth-2 { - padding-left: calc(1rem * 2); -} -details#toc .depth-3 { - padding-left: calc(1rem * 3); -} -details#toc .depth-4 { - padding-left: calc(1rem * 4); -} -details#toc .depth-5 { - padding-left: calc(1rem * 5); -} -details#toc .depth-6 { - padding-left: calc(1rem * 6); -} -/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL2hvbWUvYWxhbmQvZ2l0L3F1YXJ0ei9xdWFydHovY29tcG9uZW50cy9zdHlsZXMiLCJzb3VyY2VzIjpbImxlZ2FjeVRvYy5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNFO0VBQ0U7O0FBRUE7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTs7QUFJSjtFQUNFO0VBQ0E7RUFDQTs7QUFJQTtFQUNFOztBQURGO0VBQ0U7O0FBREY7RUFDRTs7QUFERjtFQUNFOztBQURGO0VBQ0U7O0FBREY7RUFDRSIsInNvdXJjZXNDb250ZW50IjpbImRldGFpbHMjdG9jIHtcbiAgJiBzdW1tYXJ5IHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAmOjptYXJrZXIge1xuICAgICAgY29sb3I6IHZhcigtLWRhcmspO1xuICAgIH1cblxuICAgICYgPiAqIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMC4yNXJlbTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG4gIH1cblxuICAmIHVsIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogMC41cmVtIDEuMjVyZW07XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggNiB7XG4gICAgJiAuZGVwdGgtI3skaX0ge1xuICAgICAgcGFkZGluZy1sZWZ0OiBjYWxjKDFyZW0gKiAjeyRpfSk7XG4gICAgfVxuICB9XG59XG4iXX0= */`;var toc_default=`/** - * Layout breakpoints - * $mobile: screen width below this value will use mobile styles - * $desktop: screen width above this value will use desktop styles - * Screen width between $mobile and $desktop width will use the tablet layout. - * assuming mobile < desktop - */ -.toc { - display: flex; - flex-direction: column; -} -.toc.desktop-only { - max-height: 40%; -} - -@media all and not ((max-width: 800px)) { - .toc { - display: flex; - } -} -button#toc { - background-color: transparent; - border: none; - text-align: left; - cursor: pointer; - padding: 0; - color: var(--dark); - display: flex; - align-items: center; -} -button#toc h3 { - font-size: 1rem; - display: inline-block; - margin: 0; -} -button#toc .fold { - margin-left: 0.5rem; - transition: transform 0.3s ease; - opacity: 0.8; -} -button#toc.collapsed .fold { - transform: rotateZ(-90deg); -} - -#toc-content { - list-style: none; - overflow: hidden; - overflow-y: auto; - max-height: 100%; - transition: max-height 0.35s ease, visibility 0s linear 0s; - position: relative; - visibility: visible; -} -#toc-content.collapsed { - max-height: 0; - transition: max-height 0.35s ease, visibility 0s linear 0.35s; - visibility: hidden; -} -#toc-content.collapsed > .overflow::after { - opacity: 0; -} -#toc-content ul { - list-style: none; - margin: 0.5rem 0; - padding: 0; -} -#toc-content ul > li > a { - color: var(--dark); - opacity: 0.35; - transition: 0.5s ease opacity, 0.3s ease color; -} -#toc-content ul > li > a.in-view { - opacity: 0.75; -} -#toc-content > ul.overflow { - max-height: none; - width: 100%; -} -#toc-content .depth-0 { - padding-left: calc(1rem * 0); -} -#toc-content .depth-1 { - padding-left: calc(1rem * 1); -} -#toc-content .depth-2 { - padding-left: calc(1rem * 2); -} -#toc-content .depth-3 { - padding-left: calc(1rem * 3); -} -#toc-content .depth-4 { - padding-left: calc(1rem * 4); -} -#toc-content .depth-5 { - padding-left: calc(1rem * 5); -} -#toc-content .depth-6 { - padding-left: calc(1rem * 6); -} -/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL2hvbWUvYWxhbmQvZ2l0L3F1YXJ0ei9xdWFydHovY29tcG9uZW50cy9zdHlsZXMiLCJzb3VyY2VzIjpbIi4uLy4uL3N0eWxlcy92YXJpYWJsZXMuc2NzcyIsInRvYy5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FDRUE7RUFDRTtFQUNBOztBQUVBO0VBQ0U7OztBQUlKO0VBQ0U7SUFDRTs7O0FBSUo7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0VBQ0U7OztBQUlKO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxZQUNFO0VBRUY7RUFDQTs7QUFFQTtFQUNFO0VBQ0EsWUFDRTtFQUVGOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBQ0E7RUFDRTtFQUNBO0VBQ0EsWUFDRTs7QUFFRjtFQUNFOztBQUlOO0VBQ0U7RUFDQTs7QUFJQTtFQUNFOztBQURGO0VBQ0U7O0FBREY7RUFDRTs7QUFERjtFQUNFOztBQURGO0VBQ0U7O0FBREY7RUFDRTs7QUFERjtFQUNFIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBMYXlvdXQgYnJlYWtwb2ludHNcbiAqICRtb2JpbGU6IHNjcmVlbiB3aWR0aCBiZWxvdyB0aGlzIHZhbHVlIHdpbGwgdXNlIG1vYmlsZSBzdHlsZXNcbiAqICRkZXNrdG9wOiBzY3JlZW4gd2lkdGggYWJvdmUgdGhpcyB2YWx1ZSB3aWxsIHVzZSBkZXNrdG9wIHN0eWxlc1xuICogU2NyZWVuIHdpZHRoIGJldHdlZW4gJG1vYmlsZSBhbmQgJGRlc2t0b3Agd2lkdGggd2lsbCB1c2UgdGhlIHRhYmxldCBsYXlvdXQuXG4gKiBhc3N1bWluZyBtb2JpbGUgPCBkZXNrdG9wXG4gKi9cbiRicmVha3BvaW50czogKFxuICBtb2JpbGU6IDgwMHB4LFxuICBkZXNrdG9wOiAxMjAwcHgsXG4pO1xuXG4kbW9iaWxlOiBcIihtYXgtd2lkdGg6ICN7bWFwLWdldCgkYnJlYWtwb2ludHMsIG1vYmlsZSl9KVwiO1xuJHRhYmxldDogXCIobWluLXdpZHRoOiAje21hcC1nZXQoJGJyZWFrcG9pbnRzLCBtb2JpbGUpfSkgYW5kIChtYXgtd2lkdGg6ICN7bWFwLWdldCgkYnJlYWtwb2ludHMsIGRlc2t0b3ApfSlcIjtcbiRkZXNrdG9wOiBcIihtaW4td2lkdGg6ICN7bWFwLWdldCgkYnJlYWtwb2ludHMsIGRlc2t0b3ApfSlcIjtcblxuJHBhZ2VXaWR0aDogI3ttYXAtZ2V0KCRicmVha3BvaW50cywgbW9iaWxlKX07XG4kc2lkZVBhbmVsV2lkdGg6IDMyMHB4OyAvLzM4MHB4O1xuJHRvcFNwYWNpbmc6IDZyZW07XG4kYm9sZFdlaWdodDogNzAwO1xuJHNlbWlCb2xkV2VpZ2h0OiA2MDA7XG4kbm9ybWFsV2VpZ2h0OiA0MDA7XG5cbiRtb2JpbGVHcmlkOiAoXG4gIHRlbXBsYXRlUm93czogXCJhdXRvIGF1dG8gYXV0byBhdXRvIGF1dG9cIixcbiAgdGVtcGxhdGVDb2x1bW5zOiBcImF1dG9cIixcbiAgcm93R2FwOiBcIjVweFwiLFxuICBjb2x1bW5HYXA6IFwiNXB4XCIsXG4gIHRlbXBsYXRlQXJlYXM6XG4gICAgJ1wiZ3JpZC1zaWRlYmFyLWxlZnRcIlxcXG4gICAgICBcImdyaWQtaGVhZGVyXCJcXFxuICAgICAgXCJncmlkLWNlbnRlclwiXFxcbiAgICAgIFwiZ3JpZC1zaWRlYmFyLXJpZ2h0XCJcXFxuICAgICAgXCJncmlkLWZvb3RlclwiJyxcbik7XG4kdGFibGV0R3JpZDogKFxuICB0ZW1wbGF0ZVJvd3M6IFwiYXV0byBhdXRvIGF1dG8gYXV0b1wiLFxuICB0ZW1wbGF0ZUNvbHVtbnM6IFwiI3skc2lkZVBhbmVsV2lkdGh9IGF1dG9cIixcbiAgcm93R2FwOiBcIjVweFwiLFxuICBjb2x1bW5HYXA6IFwiNXB4XCIsXG4gIHRlbXBsYXRlQXJlYXM6XG4gICAgJ1wiZ3JpZC1zaWRlYmFyLWxlZnQgZ3JpZC1oZWFkZXJcIlxcXG4gICAgICBcImdyaWQtc2lkZWJhci1sZWZ0IGdyaWQtY2VudGVyXCJcXFxuICAgICAgXCJncmlkLXNpZGViYXItbGVmdCBncmlkLXNpZGViYXItcmlnaHRcIlxcXG4gICAgICBcImdyaWQtc2lkZWJhci1sZWZ0IGdyaWQtZm9vdGVyXCInLFxuKTtcbiRkZXNrdG9wR3JpZDogKFxuICB0ZW1wbGF0ZVJvd3M6IFwiYXV0byBhdXRvIGF1dG9cIixcbiAgdGVtcGxhdGVDb2x1bW5zOiBcIiN7JHNpZGVQYW5lbFdpZHRofSBhdXRvICN7JHNpZGVQYW5lbFdpZHRofVwiLFxuICByb3dHYXA6IFwiNXB4XCIsXG4gIGNvbHVtbkdhcDogXCI1cHhcIixcbiAgdGVtcGxhdGVBcmVhczpcbiAgICAnXCJncmlkLXNpZGViYXItbGVmdCBncmlkLWhlYWRlciBncmlkLXNpZGViYXItcmlnaHRcIlxcXG4gICAgICBcImdyaWQtc2lkZWJhci1sZWZ0IGdyaWQtY2VudGVyIGdyaWQtc2lkZWJhci1yaWdodFwiXFxcbiAgICAgIFwiZ3JpZC1zaWRlYmFyLWxlZnQgZ3JpZC1mb290ZXIgZ3JpZC1zaWRlYmFyLXJpZ2h0XCInLFxuKTtcbiIsIkB1c2UgXCIuLi8uLi9zdHlsZXMvdmFyaWFibGVzLnNjc3NcIiBhcyAqO1xuXG4udG9jIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAmLmRlc2t0b3Atb25seSB7XG4gICAgbWF4LWhlaWdodDogNDAlO1xuICB9XG59XG5cbkBtZWRpYSBhbGwgYW5kIG5vdCAoJG1vYmlsZSkge1xuICAudG9jIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG59XG5cbmJ1dHRvbiN0b2Mge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBub25lO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBhZGRpbmc6IDA7XG4gIGNvbG9yOiB2YXIoLS1kYXJrKTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAmIGgzIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gICYgLmZvbGQge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZTtcbiAgICBvcGFjaXR5OiAwLjg7XG4gIH1cblxuICAmLmNvbGxhcHNlZCAuZm9sZCB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGVaKC05MGRlZyk7XG4gIH1cbn1cblxuI3RvYy1jb250ZW50IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgbWF4LWhlaWdodDogMTAwJTtcbiAgdHJhbnNpdGlvbjpcbiAgICBtYXgtaGVpZ2h0IDAuMzVzIGVhc2UsXG4gICAgdmlzaWJpbGl0eSAwcyBsaW5lYXIgMHM7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcblxuICAmLmNvbGxhcHNlZCB7XG4gICAgbWF4LWhlaWdodDogMDtcbiAgICB0cmFuc2l0aW9uOlxuICAgICAgbWF4LWhlaWdodCAwLjM1cyBlYXNlLFxuICAgICAgdmlzaWJpbGl0eSAwcyBsaW5lYXIgMC4zNXM7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiAgJi5jb2xsYXBzZWQgPiAub3ZlcmZsb3c6OmFmdGVyIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgJiB1bCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW46IDAuNXJlbSAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgJiA+IGxpID4gYSB7XG4gICAgICBjb2xvcjogdmFyKC0tZGFyayk7XG4gICAgICBvcGFjaXR5OiAwLjM1O1xuICAgICAgdHJhbnNpdGlvbjpcbiAgICAgICAgMC41cyBlYXNlIG9wYWNpdHksXG4gICAgICAgIDAuM3MgZWFzZSBjb2xvcjtcbiAgICAgICYuaW4tdmlldyB7XG4gICAgICAgIG9wYWNpdHk6IDAuNzU7XG4gICAgICB9XG4gICAgfVxuICB9XG4gID4gdWwub3ZlcmZsb3cge1xuICAgIG1heC1oZWlnaHQ6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICBAZm9yICRpIGZyb20gMCB0aHJvdWdoIDYge1xuICAgICYgLmRlcHRoLSN7JGl9IHtcbiAgICAgIHBhZGRpbmctbGVmdDogY2FsYygxcmVtICogI3skaX0pO1xuICAgIH1cbiAgfVxufVxuIl19 */`;var toc_inline_default='var o=new IntersectionObserver(e=>{for(let t of e){let s=t.target.id,n=document.querySelector(`a[data-for="${s}"]`),i=t.rootBounds?.height;i&&n&&(t.boundingClientRect.ye.removeEventListener("click",c))}}window.addEventListener("resize",d);document.addEventListener("nav",()=>{d(),o.disconnect(),document.querySelectorAll("h1[id], h2[id], h3[id], h4[id], h5[id], h6[id]").forEach(t=>o.observe(t))});\n';import{jsx as jsx20,jsxs as jsxs10}from"preact/jsx-runtime";var defaultOptions13={layout:"modern"},TableOfContents2=__name(({fileData,displayClass,cfg})=>fileData.toc?jsxs10("div",{class:classNames(displayClass,"toc"),children:[jsxs10("button",{type:"button",id:"toc",class:fileData.collapseToc?"collapsed":"","aria-controls":"toc-content","aria-expanded":!fileData.collapseToc,children:[jsx20("h3",{children:i18n(cfg.locale).components.tableOfContents.title}),jsx20("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"fold",children:jsx20("polyline",{points:"6 9 12 15 18 9"})})]}),jsx20("div",{id:"toc-content",class:fileData.collapseToc?"collapsed":"",children:jsx20("ul",{class:"overflow",children:fileData.toc.map(tocEntry=>jsx20("li",{class:`depth-${tocEntry.depth}`,children:jsx20("a",{href:`#${tocEntry.slug}`,"data-for":tocEntry.slug,children:tocEntry.text})},tocEntry.slug))})})]}):null,"TableOfContents");TableOfContents2.css=toc_default;TableOfContents2.afterDOMLoaded=toc_inline_default;var LegacyTableOfContents=__name(({fileData,cfg})=>fileData.toc?jsxs10("details",{id:"toc",open:!fileData.collapseToc,children:[jsx20("summary",{children:jsx20("h3",{children:i18n(cfg.locale).components.tableOfContents.title})}),jsx20("ul",{children:fileData.toc.map(tocEntry=>jsx20("li",{class:`depth-${tocEntry.depth}`,children:jsx20("a",{href:`#${tocEntry.slug}`,"data-for":tocEntry.slug,children:tocEntry.text})},tocEntry.slug))})]}):null,"LegacyTableOfContents");LegacyTableOfContents.css=legacyToc_default;var TableOfContents_default=__name(opts=>(opts?.layout??defaultOptions13.layout)==="modern"?TableOfContents2:LegacyTableOfContents,"default");var explorer_default=`/** - * Layout breakpoints - * $mobile: screen width below this value will use mobile styles - * $desktop: screen width above this value will use desktop styles - * Screen width between $mobile and $desktop width will use the tablet layout. - * assuming mobile < desktop - */ -.explorer { - display: flex; - flex-direction: column; - overflow-y: hidden; - /*&:after { - pointer-events: none; - content: ""; - width: 100%; - height: 50px; - position: absolute; - left: 0; - bottom: 0; - opacity: 1; - transition: opacity 0.3s ease; - background: linear-gradient(transparent 0px, var(--light)); - }*/ -} -@media all and not ((max-width: 800px)) { - .explorer.desktop-only { - display: flex; - } -} - -button#explorer { - background-color: transparent; - border: none; - text-align: left; - cursor: pointer; - padding: 0; - color: var(--dark); - display: flex; - align-items: center; -} -button#explorer h2 { - font-size: 1rem; - display: inline-block; - margin: 0; -} -button#explorer .fold { - margin-left: 0.5rem; - transition: transform 0.3s ease; - opacity: 0.8; -} -button#explorer.collapsed .fold { - transform: rotateZ(-90deg); -} - -.folder-outer { - display: grid; - grid-template-rows: 0fr; - transition: grid-template-rows 0.3s ease-in-out; -} - -.folder-outer.open { - grid-template-rows: 1fr; -} - -.folder-outer > ul { - overflow: hidden; -} - -#explorer-content { - list-style: none; - overflow: hidden; - overflow-y: auto; - max-height: 100%; - transition: max-height 0.35s ease, visibility 0s linear 0s; - margin-top: 0.5rem; - visibility: visible; -} -#explorer-content.collapsed { - max-height: 0; - transition: max-height 0.35s ease, visibility 0s linear 0.35s; - visibility: hidden; -} -#explorer-content ul { - list-style: none; - margin: 0.08rem 0; - padding: 0; - transition: max-height 0.35s ease, transform 0.35s ease, opacity 0.2s ease; -} -#explorer-content ul li > a { - color: var(--dark); - opacity: 0.75; - pointer-events: all; -} -#explorer-content > #explorer-ul { - max-height: none; -} - -svg { - pointer-events: all; -} -svg > polyline { - pointer-events: none; -} - -.folder-container { - flex-direction: row; - display: flex; - align-items: center; - user-select: none; -} -.folder-container div > a { - color: var(--secondary); - font-family: var(--headerFont); - font-size: 0.95rem; - font-weight: 600; - line-height: 1.5rem; - display: inline-block; -} -.folder-container div > a:hover { - color: var(--tertiary); -} -.folder-container div > button { - color: var(--dark); - background-color: transparent; - border: none; - text-align: left; - cursor: pointer; - padding-left: 0; - padding-right: 0; - display: flex; - align-items: center; - font-family: var(--headerFont); -} -.folder-container div > button span { - font-size: 0.95rem; - display: inline-block; - color: var(--secondary); - font-weight: 600; - margin: 0; - line-height: 1.5rem; - pointer-events: none; -} - -.folder-icon { - margin-right: 5px; - color: var(--secondary); - cursor: pointer; - transition: transform 0.3s ease; - backface-visibility: visible; -} - -li:has(> .folder-outer:not(.open)) > .folder-container > svg { - transform: rotate(-90deg); -} - -.folder-icon:hover { - color: var(--tertiary); -} - -.no-background::after { - background: none !important; -} - -#explorer-end { - height: 4px; - margin: 0; -} -/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL2hvbWUvYWxhbmQvZ2l0L3F1YXJ0ei9xdWFydHovY29tcG9uZW50cy9zdHlsZXMiLCJzb3VyY2VzIjpbIi4uLy4uL3N0eWxlcy92YXJpYWJsZXMuc2NzcyIsImV4cGxvcmVyLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUNFQTtFQUNFO0VBQ0E7RUFDQTtBQU1BO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTs7QUFKRTtFQURGO0lBRUk7Ozs7QUFpQk47RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0VBQ0U7OztBQUlKO0VBQ0U7RUFDQTtFQUNBOzs7QUFHRjtFQUNFOzs7QUFHRjtFQUNFOzs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsWUFDRTtFQUVGO0VBQ0E7O0FBRUE7RUFDRTtFQUNBLFlBQ0U7RUFFRjs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBLFlBQ0U7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0o7RUFDRTs7O0FBSUo7RUFDRTs7QUFFQTtFQUNFOzs7QUFJSjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsYUR0R2E7RUN1R2I7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDRTtFQUNBO0VBQ0E7RUFDQSxhRC9IVztFQ2dJWDtFQUNBO0VBQ0E7OztBQUtOO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0Y7RUFDRTs7O0FBR0Y7RUFDRTs7O0FBR0Y7RUFDRTs7O0FBR0Y7RUFFRTtFQUVBIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBMYXlvdXQgYnJlYWtwb2ludHNcbiAqICRtb2JpbGU6IHNjcmVlbiB3aWR0aCBiZWxvdyB0aGlzIHZhbHVlIHdpbGwgdXNlIG1vYmlsZSBzdHlsZXNcbiAqICRkZXNrdG9wOiBzY3JlZW4gd2lkdGggYWJvdmUgdGhpcyB2YWx1ZSB3aWxsIHVzZSBkZXNrdG9wIHN0eWxlc1xuICogU2NyZWVuIHdpZHRoIGJldHdlZW4gJG1vYmlsZSBhbmQgJGRlc2t0b3Agd2lkdGggd2lsbCB1c2UgdGhlIHRhYmxldCBsYXlvdXQuXG4gKiBhc3N1bWluZyBtb2JpbGUgPCBkZXNrdG9wXG4gKi9cbiRicmVha3BvaW50czogKFxuICBtb2JpbGU6IDgwMHB4LFxuICBkZXNrdG9wOiAxMjAwcHgsXG4pO1xuXG4kbW9iaWxlOiBcIihtYXgtd2lkdGg6ICN7bWFwLWdldCgkYnJlYWtwb2ludHMsIG1vYmlsZSl9KVwiO1xuJHRhYmxldDogXCIobWluLXdpZHRoOiAje21hcC1nZXQoJGJyZWFrcG9pbnRzLCBtb2JpbGUpfSkgYW5kIChtYXgtd2lkdGg6ICN7bWFwLWdldCgkYnJlYWtwb2ludHMsIGRlc2t0b3ApfSlcIjtcbiRkZXNrdG9wOiBcIihtaW4td2lkdGg6ICN7bWFwLWdldCgkYnJlYWtwb2ludHMsIGRlc2t0b3ApfSlcIjtcblxuJHBhZ2VXaWR0aDogI3ttYXAtZ2V0KCRicmVha3BvaW50cywgbW9iaWxlKX07XG4kc2lkZVBhbmVsV2lkdGg6IDMyMHB4OyAvLzM4MHB4O1xuJHRvcFNwYWNpbmc6IDZyZW07XG4kYm9sZFdlaWdodDogNzAwO1xuJHNlbWlCb2xkV2VpZ2h0OiA2MDA7XG4kbm9ybWFsV2VpZ2h0OiA0MDA7XG5cbiRtb2JpbGVHcmlkOiAoXG4gIHRlbXBsYXRlUm93czogXCJhdXRvIGF1dG8gYXV0byBhdXRvIGF1dG9cIixcbiAgdGVtcGxhdGVDb2x1bW5zOiBcImF1dG9cIixcbiAgcm93R2FwOiBcIjVweFwiLFxuICBjb2x1bW5HYXA6IFwiNXB4XCIsXG4gIHRlbXBsYXRlQXJlYXM6XG4gICAgJ1wiZ3JpZC1zaWRlYmFyLWxlZnRcIlxcXG4gICAgICBcImdyaWQtaGVhZGVyXCJcXFxuICAgICAgXCJncmlkLWNlbnRlclwiXFxcbiAgICAgIFwiZ3JpZC1zaWRlYmFyLXJpZ2h0XCJcXFxuICAgICAgXCJncmlkLWZvb3RlclwiJyxcbik7XG4kdGFibGV0R3JpZDogKFxuICB0ZW1wbGF0ZVJvd3M6IFwiYXV0byBhdXRvIGF1dG8gYXV0b1wiLFxuICB0ZW1wbGF0ZUNvbHVtbnM6IFwiI3skc2lkZVBhbmVsV2lkdGh9IGF1dG9cIixcbiAgcm93R2FwOiBcIjVweFwiLFxuICBjb2x1bW5HYXA6IFwiNXB4XCIsXG4gIHRlbXBsYXRlQXJlYXM6XG4gICAgJ1wiZ3JpZC1zaWRlYmFyLWxlZnQgZ3JpZC1oZWFkZXJcIlxcXG4gICAgICBcImdyaWQtc2lkZWJhci1sZWZ0IGdyaWQtY2VudGVyXCJcXFxuICAgICAgXCJncmlkLXNpZGViYXItbGVmdCBncmlkLXNpZGViYXItcmlnaHRcIlxcXG4gICAgICBcImdyaWQtc2lkZWJhci1sZWZ0IGdyaWQtZm9vdGVyXCInLFxuKTtcbiRkZXNrdG9wR3JpZDogKFxuICB0ZW1wbGF0ZVJvd3M6IFwiYXV0byBhdXRvIGF1dG9cIixcbiAgdGVtcGxhdGVDb2x1bW5zOiBcIiN7JHNpZGVQYW5lbFdpZHRofSBhdXRvICN7JHNpZGVQYW5lbFdpZHRofVwiLFxuICByb3dHYXA6IFwiNXB4XCIsXG4gIGNvbHVtbkdhcDogXCI1cHhcIixcbiAgdGVtcGxhdGVBcmVhczpcbiAgICAnXCJncmlkLXNpZGViYXItbGVmdCBncmlkLWhlYWRlciBncmlkLXNpZGViYXItcmlnaHRcIlxcXG4gICAgICBcImdyaWQtc2lkZWJhci1sZWZ0IGdyaWQtY2VudGVyIGdyaWQtc2lkZWJhci1yaWdodFwiXFxcbiAgICAgIFwiZ3JpZC1zaWRlYmFyLWxlZnQgZ3JpZC1mb290ZXIgZ3JpZC1zaWRlYmFyLXJpZ2h0XCInLFxuKTtcbiIsIkB1c2UgXCIuLi8uLi9zdHlsZXMvdmFyaWFibGVzLnNjc3NcIiBhcyAqO1xuXG4uZXhwbG9yZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBvdmVyZmxvdy15OiBoaWRkZW47XG4gICYuZGVza3RvcC1vbmx5IHtcbiAgICBAbWVkaWEgYWxsIGFuZCBub3QgKCRtb2JpbGUpIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuICB9XG4gIC8qJjphZnRlciB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgY29udGVudDogXCJcIjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2U7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRyYW5zcGFyZW50IDBweCwgdmFyKC0tbGlnaHQpKTtcbiAgfSovXG59XG5cbmJ1dHRvbiNleHBsb3JlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IG5vbmU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcGFkZGluZzogMDtcbiAgY29sb3I6IHZhcigtLWRhcmspO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICYgaDIge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgJiAuZm9sZCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlO1xuICAgIG9wYWNpdHk6IDAuODtcbiAgfVxuXG4gICYuY29sbGFwc2VkIC5mb2xkIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZVooLTkwZGVnKTtcbiAgfVxufVxuXG4uZm9sZGVyLW91dGVyIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiAwZnI7XG4gIHRyYW5zaXRpb246IGdyaWQtdGVtcGxhdGUtcm93cyAwLjNzIGVhc2UtaW4tb3V0O1xufVxuXG4uZm9sZGVyLW91dGVyLm9wZW4ge1xuICBncmlkLXRlbXBsYXRlLXJvd3M6IDFmcjtcbn1cblxuLmZvbGRlci1vdXRlciA+IHVsIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuI2V4cGxvcmVyLWNvbnRlbnQge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICB0cmFuc2l0aW9uOlxuICAgIG1heC1oZWlnaHQgMC4zNXMgZWFzZSxcbiAgICB2aXNpYmlsaXR5IDBzIGxpbmVhciAwcztcbiAgbWFyZ2luLXRvcDogMC41cmVtO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuXG4gICYuY29sbGFwc2VkIHtcbiAgICBtYXgtaGVpZ2h0OiAwO1xuICAgIHRyYW5zaXRpb246XG4gICAgICBtYXgtaGVpZ2h0IDAuMzVzIGVhc2UsXG4gICAgICB2aXNpYmlsaXR5IDBzIGxpbmVhciAwLjM1cztcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICAmIHVsIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogMC4wOHJlbSAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgdHJhbnNpdGlvbjpcbiAgICAgIG1heC1oZWlnaHQgMC4zNXMgZWFzZSxcbiAgICAgIHRyYW5zZm9ybSAwLjM1cyBlYXNlLFxuICAgICAgb3BhY2l0eSAwLjJzIGVhc2U7XG4gICAgJiBsaSA+IGEge1xuICAgICAgY29sb3I6IHZhcigtLWRhcmspO1xuICAgICAgb3BhY2l0eTogMC43NTtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XG4gICAgfVxuICB9XG4gID4gI2V4cGxvcmVyLXVsIHtcbiAgICBtYXgtaGVpZ2h0OiBub25lO1xuICB9XG59XG5cbnN2ZyB7XG4gIHBvaW50ZXItZXZlbnRzOiBhbGw7XG5cbiAgJiA+IHBvbHlsaW5lIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxufVxuXG4uZm9sZGVyLWNvbnRhaW5lciB7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuXG4gICYgZGl2ID4gYSB7XG4gICAgY29sb3I6IHZhcigtLXNlY29uZGFyeSk7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWhlYWRlckZvbnQpO1xuICAgIGZvbnQtc2l6ZTogMC45NXJlbTtcbiAgICBmb250LXdlaWdodDogJHNlbWlCb2xkV2VpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjVyZW07XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG5cbiAgJiBkaXYgPiBhOmhvdmVyIHtcbiAgICBjb2xvcjogdmFyKC0tdGVydGlhcnkpO1xuICB9XG5cbiAgJiBkaXYgPiBidXR0b24ge1xuICAgIGNvbG9yOiB2YXIoLS1kYXJrKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1oZWFkZXJGb250KTtcblxuICAgICYgc3BhbiB7XG4gICAgICBmb250LXNpemU6IDAuOTVyZW07XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkc2VtaUJvbGRXZWlnaHQ7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBsaW5lLWhlaWdodDogMS41cmVtO1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi5mb2xkZXItaWNvbiB7XG4gIG1hcmdpbi1yaWdodDogNXB4O1xuICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5KTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuXG5saTpoYXMoPiAuZm9sZGVyLW91dGVyOm5vdCgub3BlbikpID4gLmZvbGRlci1jb250YWluZXIgPiBzdmcge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xufVxuXG4uZm9sZGVyLWljb246aG92ZXIge1xuICBjb2xvcjogdmFyKC0tdGVydGlhcnkpO1xufVxuXG4ubm8tYmFja2dyb3VuZDo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbiNleHBsb3Jlci1lbmQge1xuICAvLyBuZWVkcyBoZWlnaHQgc28gSW50ZXJzZWN0aW9uT2JzZXJ2ZXIgZ2V0cyB0cmlnZ2VyZWRcbiAgaGVpZ2h0OiA0cHg7XG4gIC8vIHJlbW92ZSBkZWZhdWx0IG1hcmdpbiBmcm9tIGxpXG4gIG1hcmdpbjogMDtcbn1cbiJdfQ== */`;var explorer_inline_default='var s,p=new IntersectionObserver(e=>{let t=document.getElementById("explorer-ul");if(t)for(let o of e)o.isIntersecting?t.classList.add("no-background"):t.classList.remove("no-background")});function m(){this.classList.toggle("collapsed"),this.setAttribute("aria-expanded",this.getAttribute("aria-expanded")==="true"?"false":"true");let e=this.nextElementSibling;e&&e.classList.toggle("collapsed")}function i(e){e.stopPropagation();let t=e.target;if(!t)return;let o=t.nodeName==="svg",l=o?t.parentElement?.nextSibling:t.parentElement?.parentElement?.nextElementSibling,a=o?t.nextElementSibling:t.parentElement;if(!(l&&a))return;l.classList.toggle("open");let d=l.classList.contains("open");f(l,!d);let n=a.dataset.folderpath;u(s,n);let r=JSON.stringify(s);localStorage.setItem("fileTree",r)}function g(){let e=document.getElementById("explorer");if(!e)return;if(e.dataset.behavior==="collapse")for(let n of document.getElementsByClassName("folder-button"))n.addEventListener("click",i),window.addCleanup(()=>n.removeEventListener("click",i));e.addEventListener("click",m),window.addCleanup(()=>e.removeEventListener("click",m));for(let n of document.getElementsByClassName("folder-icon"))n.addEventListener("click",i),window.addCleanup(()=>n.removeEventListener("click",i));let t=localStorage.getItem("fileTree"),o=e?.dataset.savestate==="true",l=t&&o?JSON.parse(t):[],a=new Map(l.map(n=>[n.path,n.collapsed])),d=e.dataset.tree?JSON.parse(e.dataset.tree):[];s=[];for(let{path:n,collapsed:r}of d)s.push({path:n,collapsed:a.get(n)??r});s.map(n=>{let c=document.querySelector(`[data-folderpath=\'${n.path}\']`)?.parentElement?.nextElementSibling;c&&f(c,n.collapsed)})}window.addEventListener("resize",g);document.addEventListener("nav",()=>{g(),p.disconnect();let e=document.getElementById("explorer-end");e&&p.observe(e)});function f(e,t){return t?e.classList.remove("open"):e.classList.add("open")}function u(e,t){let o=e.find(l=>l.path===t);o&&(o.collapsed=!o.collapsed)}\n';import{Fragment as Fragment4,jsx as jsx21,jsxs as jsxs11}from"preact/jsx-runtime";function getPathSegment(fp,idx){if(fp)return fp.split("/").at(idx)}__name(getPathSegment,"getPathSegment");var FileNode=class _FileNode{static{__name(this,"FileNode")}children;name;displayName;file;depth;constructor(slugSegment,displayName,file,depth){this.children=[],this.name=slugSegment,this.displayName=displayName??file?.frontmatter?.title??slugSegment,this.file=file?clone(file):null,this.depth=depth??0}insert(fileData){if(fileData.path.length===0)return;let nextSegment=fileData.path[0];if(fileData.path.length===1){if(nextSegment===""){let title=fileData.file.frontmatter?.title;title&&title!=="index"&&(this.displayName=title)}else this.children.push(new _FileNode(nextSegment,void 0,fileData.file,this.depth+1));return}fileData.path=fileData.path.splice(1);let child=this.children.find(c=>c.name===nextSegment);if(child){child.insert(fileData);return}let newChild=new _FileNode(nextSegment,getPathSegment(fileData.file.relativePath,this.depth),void 0,this.depth+1);newChild.insert(fileData),this.children.push(newChild)}add(file){this.insert({file,path:simplifySlug(file.slug).split("/")})}filter(filterFn){this.children=this.children.filter(filterFn),this.children.forEach(child=>child.filter(filterFn))}map(mapFn){mapFn(this),this.children.forEach(child=>child.map(mapFn))}getFolderPaths(collapsed){let folderPaths=[],traverse=__name((node,currentPath)=>{if(!node.file){let folderPath=joinSegments(currentPath,node.name);folderPath!==""&&folderPaths.push({path:folderPath,collapsed}),node.children.forEach(child=>traverse(child,folderPath))}},"traverse");return traverse(this,""),folderPaths}sort(sortFn){this.children=this.children.sort(sortFn),this.children.forEach(e=>e.sort(sortFn))}};function ExplorerNode({node,opts,fullPath,fileData}){let folderBehavior=opts.folderClickBehavior,isDefaultOpen=opts.folderDefaultState==="open",folderPath=node.name!==""?joinSegments(fullPath??"",node.name):"",href=resolveRelative(fileData.slug,folderPath)+"/";return jsx21(Fragment4,{children:node.file?jsx21("li",{children:jsx21("a",{href:resolveRelative(fileData.slug,node.file.slug),"data-for":node.file.slug,children:node.displayName})},node.file.slug):jsxs11("li",{children:[node.name!==""&&jsxs11("div",{class:"folder-container",children:[jsx21("svg",{xmlns:"http://www.w3.org/2000/svg",width:"12",height:"12",viewBox:"5 8 14 8",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"folder-icon",children:jsx21("polyline",{points:"6 9 12 15 18 9"})}),jsx21("div",{"data-folderpath":folderPath,children:folderBehavior==="link"?jsx21("a",{href,"data-for":node.name,class:"folder-title",children:node.displayName}):jsx21("button",{class:"folder-button",children:jsx21("span",{class:"folder-title",children:node.displayName})})},node.name)]}),jsx21("div",{class:`folder-outer ${node.depth===0||isDefaultOpen?"open":""}`,children:jsx21("ul",{style:{paddingLeft:node.name!==""?"1.4rem":"0"},class:"content","data-folderul":folderPath,children:node.children.map((childNode,i)=>jsx21(ExplorerNode,{node:childNode,opts,fullPath:folderPath,fileData},i))})})]})})}__name(ExplorerNode,"ExplorerNode");import{jsx as jsx22,jsxs as jsxs12}from"preact/jsx-runtime";var defaultOptions14={folderClickBehavior:"collapse",folderDefaultState:"collapsed",useSavedState:!0,mapFn:__name(node=>node,"mapFn"),sortFn:__name((a,b)=>!a.file&&!b.file||a.file&&b.file?a.displayName.localeCompare(b.displayName,void 0,{numeric:!0,sensitivity:"base"}):a.file&&!b.file?1:-1,"sortFn"),filterFn:__name(node=>node.name!=="tags","filterFn"),order:["filter","map","sort"]},Explorer_default=__name(userOpts=>{let opts={...defaultOptions14,...userOpts},fileTree,jsonTree,lastBuildId="";function constructFileTree(allFiles){if(fileTree=new FileNode(""),allFiles.forEach(file=>fileTree.add(file)),opts.order)for(let i=0;i(ctx.buildId!==lastBuildId&&(lastBuildId=ctx.buildId,constructFileTree(allFiles)),jsxs12("div",{class:classNames(displayClass,"explorer"),children:[jsxs12("button",{type:"button",id:"explorer","data-behavior":opts.folderClickBehavior,"data-collapsed":opts.folderDefaultState,"data-savestate":opts.useSavedState,"data-tree":jsonTree,"aria-controls":"explorer-content","aria-expanded":opts.folderDefaultState==="open",children:[jsx22("h2",{children:opts.title??i18n(cfg.locale).components.explorer.title}),jsx22("svg",{xmlns:"http://www.w3.org/2000/svg",width:"14",height:"14",viewBox:"5 8 14 8",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"fold",children:jsx22("polyline",{points:"6 9 12 15 18 9"})})]}),jsx22("div",{id:"explorer-content",children:jsxs12("ul",{class:"overflow",id:"explorer-ul",children:[jsx22(ExplorerNode,{node:fileTree,opts,fileData}),jsx22("li",{id:"explorer-end"})]})})]})),"Explorer");return Explorer.css=explorer_default,Explorer.afterDOMLoaded=explorer_inline_default,Explorer},"default");import{jsx as jsx23}from"preact/jsx-runtime";var TagList=__name(({fileData,displayClass})=>{let tags=fileData.frontmatter?.tags,baseDir=pathToRoot(fileData.slug);return tags&&tags.length>0?jsx23("ul",{class:classNames(displayClass,"tags"),children:tags.map(tag=>{let linkDest=baseDir+`/tags/${slugTag(tag)}`;return jsx23("li",{children:jsx23("a",{href:linkDest,class:"internal tag-link",children:tag})})})}):null},"TagList");TagList.css=` -.tags { - list-style: none; - display: flex; - padding-left: 0; - gap: 0.4rem; - margin: 1rem 0; - flex-wrap: wrap; -} - -.section-li > .section > .tags { - justify-content: flex-end; -} - -.tags > li { - display: inline-block; - white-space: nowrap; - margin: 0; - overflow-wrap: normal; -} - -a.internal.tag-link { - border-radius: 8px; - background-color: var(--highlight); - padding: 0.2rem 0.4rem; - margin: 0 0.1rem; -} -`;var TagList_default=__name(()=>TagList,"default");var graph_inline_default='var F1=Object.create;var Ju=Object.defineProperty;var R1=Object.getOwnPropertyDescriptor;var k1=Object.getOwnPropertyNames;var G1=Object.getPrototypeOf,I1=Object.prototype.hasOwnProperty;var p=(r,t)=>()=>(r&&(t=r(r=0)),t);var Ao=(r,t)=>()=>(t||r((t={exports:{}}).exports,t),t.exports),sd=(r,t)=>{for(var e in t)Ju(r,e,{get:t[e],enumerable:!0})},U1=(r,t,e,i)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of k1(t))!I1.call(r,s)&&s!==e&&Ju(r,s,{get:()=>t[s],enumerable:!(i=R1(t,s))||i.enumerable});return r};var ds=(r,t,e)=>(e=r!=null?F1(G1(r)):{},U1(t||!r||!r.__esModule?Ju(e,"default",{value:r,enumerable:!0}):e,r));var b,Al,ea,H,D=p(()=>{"use strict";b=(r=>(r.Application="application",r.WebGLPipes="webgl-pipes",r.WebGLPipesAdaptor="webgl-pipes-adaptor",r.WebGLSystem="webgl-system",r.WebGPUPipes="webgpu-pipes",r.WebGPUPipesAdaptor="webgpu-pipes-adaptor",r.WebGPUSystem="webgpu-system",r.CanvasSystem="canvas-system",r.CanvasPipesAdaptor="canvas-pipes-adaptor",r.CanvasPipes="canvas-pipes",r.Asset="asset",r.LoadParser="load-parser",r.ResolveParser="resolve-parser",r.CacheParser="cache-parser",r.DetectionParser="detection-parser",r.MaskEffect="mask-effect",r.BlendMode="blend-mode",r.TextureSource="texture-source",r.Environment="environment",r.ShapeBuilder="shape-builder",r.Batcher="batcher",r))(b||{}),Al=r=>{if(typeof r=="function"||typeof r=="object"&&r.extension){if(!r.extension)throw new Error("Extension class must have an extension object");r={...typeof r.extension!="object"?{type:r.extension}:r.extension,ref:r}}if(typeof r=="object")r={...r};else throw new Error("Invalid extension type");return typeof r.type=="string"&&(r.type=[r.type]),r},ea=(r,t)=>Al(r).priority??t,H={_addHandlers:{},_removeHandlers:{},_queue:{},remove(...r){return r.map(Al).forEach(t=>{t.type.forEach(e=>this._removeHandlers[e]?.(t))}),this},add(...r){return r.map(Al).forEach(t=>{t.type.forEach(e=>{let i=this._addHandlers,s=this._queue;i[e]?i[e]?.(t):(s[e]=s[e]||[],s[e]?.push(t))})}),this},handle(r,t,e){let i=this._addHandlers,s=this._removeHandlers;if(i[r]||s[r])throw new Error(`Extension type ${r} already has a handler`);i[r]=t,s[r]=e;let n=this._queue;return n[r]&&(n[r]?.forEach(o=>t(o)),delete n[r]),this},handleByMap(r,t){return this.handle(r,e=>{e.name&&(t[e.name]=e.ref)},e=>{e.name&&delete t[e.name]})},handleByNamedList(r,t,e=-1){return this.handle(r,i=>{t.findIndex(n=>n.name===i.name)>=0||(t.push({name:i.name,value:i.ref}),t.sort((n,o)=>ea(o.value,e)-ea(n.value,e)))},i=>{let s=t.findIndex(n=>n.name===i.name);s!==-1&&t.splice(s,1)})},handleByList(r,t,e=-1){return this.handle(r,i=>{t.includes(i.ref)||(t.push(i.ref),t.sort((s,n)=>ea(n,e)-ea(s,e)))},i=>{let s=t.indexOf(i.ref);s!==-1&&t.splice(s,1)})}}});var xm=Ao((vG,Dl)=>{"use strict";var nC=Object.prototype.hasOwnProperty,Zt="~";function Rs(){}Object.create&&(Rs.prototype=Object.create(null),new Rs().__proto__||(Zt=!1));function oC(r,t,e){this.fn=r,this.context=t,this.once=e||!1}function gm(r,t,e,i,s){if(typeof e!="function")throw new TypeError("The listener must be a function");var n=new oC(e,i||r,s),o=Zt?Zt+t:t;return r._events[o]?r._events[o].fn?r._events[o]=[r._events[o],n]:r._events[o].push(n):(r._events[o]=n,r._eventsCount++),r}function ra(r,t){--r._eventsCount===0?r._events=new Rs:delete r._events[t]}function Vt(){this._events=new Rs,this._eventsCount=0}Vt.prototype.eventNames=function(){var t=[],e,i;if(this._eventsCount===0)return t;for(i in e=this._events)nC.call(e,i)&&t.push(Zt?i.slice(1):i);return Object.getOwnPropertySymbols?t.concat(Object.getOwnPropertySymbols(e)):t};Vt.prototype.listeners=function(t){var e=Zt?Zt+t:t,i=this._events[e];if(!i)return[];if(i.fn)return[i.fn];for(var s=0,n=i.length,o=new Array(n);s{_m=ds(xm(),1),ht=_m.default});var aC,er,Gt,ge,Cm,ym,Pl,uC,ia,Am,Dm,bm,vm,Tm,ks,lC,cC,hC,fC,Fl,Sm,dC,Bl,Ml,wm,Rl,Ae,Em,Pm,Bm=p(()=>{aC={grad:.9,turn:360,rad:360/(2*Math.PI)},er=function(r){return typeof r=="string"?r.length>0:typeof r=="number"},Gt=function(r,t,e){return t===void 0&&(t=0),e===void 0&&(e=Math.pow(10,t)),Math.round(e*r)/e+0},ge=function(r,t,e){return t===void 0&&(t=0),e===void 0&&(e=1),r>e?e:r>t?r:t},Cm=function(r){return(r=isFinite(r)?r%360:0)>0?r:r+360},ym=function(r){return{r:ge(r.r,0,255),g:ge(r.g,0,255),b:ge(r.b,0,255),a:ge(r.a)}},Pl=function(r){return{r:Gt(r.r),g:Gt(r.g),b:Gt(r.b),a:Gt(r.a,3)}},uC=/^#([0-9a-f]{3,8})$/i,ia=function(r){var t=r.toString(16);return t.length<2?"0"+t:t},Am=function(r){var t=r.r,e=r.g,i=r.b,s=r.a,n=Math.max(t,e,i),o=n-Math.min(t,e,i),a=o?n===t?(e-i)/o:n===e?2+(i-t)/o:4+(t-e)/o:0;return{h:60*(a<0?a+6:a),s:n?o/n*100:0,v:n/255*100,a:s}},Dm=function(r){var t=r.h,e=r.s,i=r.v,s=r.a;t=t/360*6,e/=100,i/=100;var n=Math.floor(t),o=i*(1-e),a=i*(1-(t-n)*e),u=i*(1-(1-t+n)*e),l=n%6;return{r:255*[i,a,o,o,u,i][l],g:255*[u,i,i,a,o,o][l],b:255*[o,o,u,i,i,a][l],a:s}},bm=function(r){return{h:Cm(r.h),s:ge(r.s,0,100),l:ge(r.l,0,100),a:ge(r.a)}},vm=function(r){return{h:Gt(r.h),s:Gt(r.s),l:Gt(r.l),a:Gt(r.a,3)}},Tm=function(r){return Dm((e=(t=r).s,{h:t.h,s:(e*=((i=t.l)<50?i:100-i)/100)>0?2*e/(i+e)*100:0,v:i+e,a:t.a}));var t,e,i},ks=function(r){return{h:(t=Am(r)).h,s:(s=(200-(e=t.s))*(i=t.v)/100)>0&&s<200?e*i/100/(s<=100?s:200-s)*100:0,l:s/2,a:t.a};var t,e,i,s},lC=/^hsla?\\(\\s*([+-]?\\d*\\.?\\d+)(deg|rad|grad|turn)?\\s*,\\s*([+-]?\\d*\\.?\\d+)%\\s*,\\s*([+-]?\\d*\\.?\\d+)%\\s*(?:,\\s*([+-]?\\d*\\.?\\d+)(%)?\\s*)?\\)$/i,cC=/^hsla?\\(\\s*([+-]?\\d*\\.?\\d+)(deg|rad|grad|turn)?\\s+([+-]?\\d*\\.?\\d+)%\\s+([+-]?\\d*\\.?\\d+)%\\s*(?:\\/\\s*([+-]?\\d*\\.?\\d+)(%)?\\s*)?\\)$/i,hC=/^rgba?\\(\\s*([+-]?\\d*\\.?\\d+)(%)?\\s*,\\s*([+-]?\\d*\\.?\\d+)(%)?\\s*,\\s*([+-]?\\d*\\.?\\d+)(%)?\\s*(?:,\\s*([+-]?\\d*\\.?\\d+)(%)?\\s*)?\\)$/i,fC=/^rgba?\\(\\s*([+-]?\\d*\\.?\\d+)(%)?\\s+([+-]?\\d*\\.?\\d+)(%)?\\s+([+-]?\\d*\\.?\\d+)(%)?\\s*(?:\\/\\s*([+-]?\\d*\\.?\\d+)(%)?\\s*)?\\)$/i,Fl={string:[[function(r){var t=uC.exec(r);return t?(r=t[1]).length<=4?{r:parseInt(r[0]+r[0],16),g:parseInt(r[1]+r[1],16),b:parseInt(r[2]+r[2],16),a:r.length===4?Gt(parseInt(r[3]+r[3],16)/255,2):1}:r.length===6||r.length===8?{r:parseInt(r.substr(0,2),16),g:parseInt(r.substr(2,2),16),b:parseInt(r.substr(4,2),16),a:r.length===8?Gt(parseInt(r.substr(6,2),16)/255,2):1}:null:null},"hex"],[function(r){var t=hC.exec(r)||fC.exec(r);return t?t[2]!==t[4]||t[4]!==t[6]?null:ym({r:Number(t[1])/(t[2]?100/255:1),g:Number(t[3])/(t[4]?100/255:1),b:Number(t[5])/(t[6]?100/255:1),a:t[7]===void 0?1:Number(t[7])/(t[8]?100:1)}):null},"rgb"],[function(r){var t=lC.exec(r)||cC.exec(r);if(!t)return null;var e,i,s=bm({h:(e=t[1],i=t[2],i===void 0&&(i="deg"),Number(e)*(aC[i]||1)),s:Number(t[3]),l:Number(t[4]),a:t[5]===void 0?1:Number(t[5])/(t[6]?100:1)});return Tm(s)},"hsl"]],object:[[function(r){var t=r.r,e=r.g,i=r.b,s=r.a,n=s===void 0?1:s;return er(t)&&er(e)&&er(i)?ym({r:Number(t),g:Number(e),b:Number(i),a:Number(n)}):null},"rgb"],[function(r){var t=r.h,e=r.s,i=r.l,s=r.a,n=s===void 0?1:s;if(!er(t)||!er(e)||!er(i))return null;var o=bm({h:Number(t),s:Number(e),l:Number(i),a:Number(n)});return Tm(o)},"hsl"],[function(r){var t=r.h,e=r.s,i=r.v,s=r.a,n=s===void 0?1:s;if(!er(t)||!er(e)||!er(i))return null;var o=function(a){return{h:Cm(a.h),s:ge(a.s,0,100),v:ge(a.v,0,100),a:ge(a.a)}}({h:Number(t),s:Number(e),v:Number(i),a:Number(n)});return Dm(o)},"hsv"]]},Sm=function(r,t){for(var e=0;e=.5},r.prototype.toHex=function(){return t=Pl(this.rgba),e=t.r,i=t.g,s=t.b,o=(n=t.a)<1?ia(Gt(255*n)):"","#"+ia(e)+ia(i)+ia(s)+o;var t,e,i,s,n,o},r.prototype.toRgb=function(){return Pl(this.rgba)},r.prototype.toRgbString=function(){return t=Pl(this.rgba),e=t.r,i=t.g,s=t.b,(n=t.a)<1?"rgba("+e+", "+i+", "+s+", "+n+")":"rgb("+e+", "+i+", "+s+")";var t,e,i,s,n},r.prototype.toHsl=function(){return vm(ks(this.rgba))},r.prototype.toHslString=function(){return t=vm(ks(this.rgba)),e=t.h,i=t.s,s=t.l,(n=t.a)<1?"hsla("+e+", "+i+"%, "+s+"%, "+n+")":"hsl("+e+", "+i+"%, "+s+"%)";var t,e,i,s,n},r.prototype.toHsv=function(){return t=Am(this.rgba),{h:Gt(t.h),s:Gt(t.s),v:Gt(t.v),a:Gt(t.a,3)};var t},r.prototype.invert=function(){return Ae({r:255-(t=this.rgba).r,g:255-t.g,b:255-t.b,a:t.a});var t},r.prototype.saturate=function(t){return t===void 0&&(t=.1),Ae(Bl(this.rgba,t))},r.prototype.desaturate=function(t){return t===void 0&&(t=.1),Ae(Bl(this.rgba,-t))},r.prototype.grayscale=function(){return Ae(Bl(this.rgba,-1))},r.prototype.lighten=function(t){return t===void 0&&(t=.1),Ae(wm(this.rgba,t))},r.prototype.darken=function(t){return t===void 0&&(t=.1),Ae(wm(this.rgba,-t))},r.prototype.rotate=function(t){return t===void 0&&(t=15),this.hue(this.hue()+t)},r.prototype.alpha=function(t){return typeof t=="number"?Ae({r:(e=this.rgba).r,g:e.g,b:e.b,a:t}):Gt(this.rgba.a,3);var e},r.prototype.hue=function(t){var e=ks(this.rgba);return typeof t=="number"?Ae({h:t,s:e.s,l:e.l,a:e.a}):Gt(e.h)},r.prototype.isEqual=function(t){return this.toHex()===Ae(t).toHex()},r}(),Ae=function(r){return r instanceof Rl?r:new Rl(r)},Em=[],Pm=function(r){r.forEach(function(t){Em.indexOf(t)<0&&(t(Rl,Fl),Em.push(t))})}});function Mm(r,t){var e={white:"#ffffff",bisque:"#ffe4c4",blue:"#0000ff",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",antiquewhite:"#faebd7",aqua:"#00ffff",azure:"#f0ffff",whitesmoke:"#f5f5f5",papayawhip:"#ffefd5",plum:"#dda0dd",blanchedalmond:"#ffebcd",black:"#000000",gold:"#ffd700",goldenrod:"#daa520",gainsboro:"#dcdcdc",cornsilk:"#fff8dc",cornflowerblue:"#6495ed",burlywood:"#deb887",aquamarine:"#7fffd4",beige:"#f5f5dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkkhaki:"#bdb76b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",peachpuff:"#ffdab9",darkmagenta:"#8b008b",darkred:"#8b0000",darkorchid:"#9932cc",darkorange:"#ff8c00",darkslateblue:"#483d8b",gray:"#808080",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",deeppink:"#ff1493",deepskyblue:"#00bfff",wheat:"#f5deb3",firebrick:"#b22222",floralwhite:"#fffaf0",ghostwhite:"#f8f8ff",darkviolet:"#9400d3",magenta:"#ff00ff",green:"#008000",dodgerblue:"#1e90ff",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",blueviolet:"#8a2be2",forestgreen:"#228b22",lawngreen:"#7cfc00",indianred:"#cd5c5c",indigo:"#4b0082",fuchsia:"#ff00ff",brown:"#a52a2a",maroon:"#800000",mediumblue:"#0000cd",lightcoral:"#f08080",darkturquoise:"#00ced1",lightcyan:"#e0ffff",ivory:"#fffff0",lightyellow:"#ffffe0",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",linen:"#faf0e6",mediumaquamarine:"#66cdaa",lemonchiffon:"#fffacd",lime:"#00ff00",khaki:"#f0e68c",mediumseagreen:"#3cb371",limegreen:"#32cd32",mediumspringgreen:"#00fa9a",lightskyblue:"#87cefa",lightblue:"#add8e6",midnightblue:"#191970",lightpink:"#ffb6c1",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",mintcream:"#f5fffa",lightslategray:"#778899",lightslategrey:"#778899",navajowhite:"#ffdead",navy:"#000080",mediumvioletred:"#c71585",powderblue:"#b0e0e6",palegoldenrod:"#eee8aa",oldlace:"#fdf5e6",paleturquoise:"#afeeee",mediumturquoise:"#48d1cc",mediumorchid:"#ba55d3",rebeccapurple:"#663399",lightsteelblue:"#b0c4de",mediumslateblue:"#7b68ee",thistle:"#d8bfd8",tan:"#d2b48c",orchid:"#da70d6",mediumpurple:"#9370db",purple:"#800080",pink:"#ffc0cb",skyblue:"#87ceeb",springgreen:"#00ff7f",palegreen:"#98fb98",red:"#ff0000",yellow:"#ffff00",slateblue:"#6a5acd",lavenderblush:"#fff0f5",peru:"#cd853f",palevioletred:"#db7093",violet:"#ee82ee",teal:"#008080",slategray:"#708090",slategrey:"#708090",aliceblue:"#f0f8ff",darkseagreen:"#8fbc8f",darkolivegreen:"#556b2f",greenyellow:"#adff2f",seagreen:"#2e8b57",seashell:"#fff5ee",tomato:"#ff6347",silver:"#c0c0c0",sienna:"#a0522d",lavender:"#e6e6fa",lightgreen:"#90ee90",orange:"#ffa500",orangered:"#ff4500",steelblue:"#4682b4",royalblue:"#4169e1",turquoise:"#40e0d0",yellowgreen:"#9acd32",salmon:"#fa8072",saddlebrown:"#8b4513",sandybrown:"#f4a460",rosybrown:"#bc8f8f",darksalmon:"#e9967a",lightgoldenrodyellow:"#fafad2",snow:"#fffafa",lightgrey:"#d3d3d3",lightgray:"#d3d3d3",dimgray:"#696969",dimgrey:"#696969",olivedrab:"#6b8e23",olive:"#808000"},i={};for(var s in e)i[e[s]]=s;var n={};r.prototype.toName=function(o){if(!(this.rgba.a||this.rgba.r||this.rgba.g||this.rgba.b))return"transparent";var a,u,l=i[this.toHex()];if(l)return l;if(o?.closest){var c=this.toRgb(),h=1/0,d="black";if(!n.length)for(var f in e)n[f]=new r(e[f]).toRgb();for(var m in e){var g=(a=c,u=n[m],Math.pow(a.r-u.r,2)+Math.pow(a.g-u.g,2)+Math.pow(a.b-u.b,2));g{});var _i,Z,$t=p(()=>{Bm();Fm();Pm([Mm]);_i=class Gs{constructor(t=16777215){this._value=null,this._components=new Float32Array(4),this._components.fill(1),this._int=16777215,this.value=t}get red(){return this._components[0]}get green(){return this._components[1]}get blue(){return this._components[2]}get alpha(){return this._components[3]}setValue(t){return this.value=t,this}set value(t){if(t instanceof Gs)this._value=this._cloneSource(t._value),this._int=t._int,this._components.set(t._components);else{if(t===null)throw new Error("Cannot set Color#value to null");(this._value===null||!this._isSourceEqual(this._value,t))&&(this._value=this._cloneSource(t),this._normalize(this._value))}}get value(){return this._value}_cloneSource(t){return typeof t=="string"||typeof t=="number"||t instanceof Number||t===null?t:Array.isArray(t)||ArrayBuffer.isView(t)?t.slice(0):typeof t=="object"&&t!==null?{...t}:t}_isSourceEqual(t,e){let i=typeof t;if(i!==typeof e)return!1;if(i==="number"||i==="string"||t instanceof Number)return t===e;if(Array.isArray(t)&&Array.isArray(e)||ArrayBuffer.isView(t)&&ArrayBuffer.isView(e))return t.length!==e.length?!1:t.every((n,o)=>n===e[o]);if(t!==null&&e!==null){let n=Object.keys(t),o=Object.keys(e);return n.length!==o.length?!1:n.every(a=>t[a]===e[a])}return t===e}toRgba(){let[t,e,i,s]=this._components;return{r:t,g:e,b:i,a:s}}toRgb(){let[t,e,i]=this._components;return{r:t,g:e,b:i}}toRgbaString(){let[t,e,i]=this.toUint8RgbArray();return`rgba(${t},${e},${i},${this.alpha})`}toUint8RgbArray(t){let[e,i,s]=this._components;return this._arrayRgb||(this._arrayRgb=[]),t||(t=this._arrayRgb),t[0]=Math.round(e*255),t[1]=Math.round(i*255),t[2]=Math.round(s*255),t}toArray(t){this._arrayRgba||(this._arrayRgba=[]),t||(t=this._arrayRgba);let[e,i,s,n]=this._components;return t[0]=e,t[1]=i,t[2]=s,t[3]=n,t}toRgbArray(t){this._arrayRgb||(this._arrayRgb=[]),t||(t=this._arrayRgb);let[e,i,s]=this._components;return t[0]=e,t[1]=i,t[2]=s,t}toNumber(){return this._int}toBgrNumber(){let[t,e,i]=this.toUint8RgbArray();return(i<<16)+(e<<8)+t}toLittleEndianNumber(){let t=this._int;return(t>>16)+(t&65280)+((t&255)<<16)}multiply(t){let[e,i,s,n]=Gs._temp.setValue(t)._components;return this._components[0]*=e,this._components[1]*=i,this._components[2]*=s,this._components[3]*=n,this._refreshInt(),this._value=null,this}premultiply(t,e=!0){return e&&(this._components[0]*=t,this._components[1]*=t,this._components[2]*=t),this._components[3]=t,this._refreshInt(),this._value=null,this}toPremultiplied(t,e=!0){if(t===1)return(255<<24)+this._int;if(t===0)return e?0:this._int;let i=this._int>>16&255,s=this._int>>8&255,n=this._int&255;return e&&(i=i*t+.5|0,s=s*t+.5|0,n=n*t+.5|0),(t*255<<24)+(i<<16)+(s<<8)+n}toHex(){let t=this._int.toString(16);return`#${"000000".substring(0,6-t.length)+t}`}toHexa(){let e=Math.round(this._components[3]*255).toString(16);return this.toHex()+"00".substring(0,2-e.length)+e}setAlpha(t){return this._components[3]=this._clamp(t),this}_normalize(t){let e,i,s,n;if((typeof t=="number"||t instanceof Number)&&t>=0&&t<=16777215){let o=t;e=(o>>16&255)/255,i=(o>>8&255)/255,s=(o&255)/255,n=1}else if((Array.isArray(t)||t instanceof Float32Array)&&t.length>=3&&t.length<=4)t=this._clamp(t),[e,i,s,n=1]=t;else if((t instanceof Uint8Array||t instanceof Uint8ClampedArray)&&t.length>=3&&t.length<=4)t=this._clamp(t,0,255),[e,i,s,n=255]=t,e/=255,i/=255,s/=255,n/=255;else if(typeof t=="string"||typeof t=="object"){if(typeof t=="string"){let a=Gs.HEX_PATTERN.exec(t);a&&(t=`#${a[2]}`)}let o=Ae(t);o.isValid()&&({r:e,g:i,b:s,a:n}=o.rgba,e/=255,i/=255,s/=255)}if(e!==void 0)this._components[0]=e,this._components[1]=i,this._components[2]=s,this._components[3]=n,this._refreshInt();else throw new Error(`Unable to convert color ${t}`)}_refreshInt(){this._clamp(this._components);let[t,e,i]=this._components;this._int=(t*255<<16)+(e*255<<8)+(i*255|0)}_clamp(t,e=0,i=1){return typeof t=="number"?Math.min(Math.max(t,e),i):(t.forEach((s,n)=>{t[n]=Math.min(Math.max(s,e),i)}),t)}static isColorLike(t){return typeof t=="number"||typeof t=="string"||t instanceof Number||t instanceof Gs||Array.isArray(t)||t instanceof Uint8Array||t instanceof Uint8ClampedArray||t instanceof Float32Array||t.r!==void 0&&t.g!==void 0&&t.b!==void 0||t.r!==void 0&&t.g!==void 0&&t.b!==void 0&&t.a!==void 0||t.h!==void 0&&t.s!==void 0&&t.l!==void 0||t.h!==void 0&&t.s!==void 0&&t.l!==void 0&&t.a!==void 0||t.h!==void 0&&t.s!==void 0&&t.v!==void 0||t.h!==void 0&&t.s!==void 0&&t.v!==void 0&&t.a!==void 0}};_i.shared=new _i;_i._temp=new _i;_i.HEX_PATTERN=/^(#|0x)?(([a-f0-9]{3}){1,2}([a-f0-9]{2})?)$/i;Z=_i});var Rm,km=p(()=>{"use strict";Rm={cullArea:null,cullable:!1,cullableChildren:!0}});var Gm,Im,Um,kl=p(()=>{"use strict";Gm=Math.PI*2,Im=180/Math.PI,Um=Math.PI/180});var et,Gl,xe=p(()=>{"use strict";et=class r{constructor(t=0,e=0){this.x=0,this.y=0,this.x=t,this.y=e}clone(){return new r(this.x,this.y)}copyFrom(t){return this.set(t.x,t.y),this}copyTo(t){return t.set(this.x,this.y),t}equals(t){return t.x===this.x&&t.y===this.y}set(t=0,e=t){return this.x=t,this.y=e,this}toString(){return`[pixi.js/math:Point x=${this.x} y=${this.y}]`}static get shared(){return Gl.x=0,Gl.y=0,Gl}},Gl=new et});var G,pC,mC,ot=p(()=>{kl();xe();G=class r{constructor(t=1,e=0,i=0,s=1,n=0,o=0){this.array=null,this.a=t,this.b=e,this.c=i,this.d=s,this.tx=n,this.ty=o}fromArray(t){this.a=t[0],this.b=t[1],this.c=t[3],this.d=t[4],this.tx=t[2],this.ty=t[5]}set(t,e,i,s,n,o){return this.a=t,this.b=e,this.c=i,this.d=s,this.tx=n,this.ty=o,this}toArray(t,e){this.array||(this.array=new Float32Array(9));let i=e||this.array;return t?(i[0]=this.a,i[1]=this.b,i[2]=0,i[3]=this.c,i[4]=this.d,i[5]=0,i[6]=this.tx,i[7]=this.ty,i[8]=1):(i[0]=this.a,i[1]=this.c,i[2]=this.tx,i[3]=this.b,i[4]=this.d,i[5]=this.ty,i[6]=0,i[7]=0,i[8]=1),i}apply(t,e){e=e||new et;let i=t.x,s=t.y;return e.x=this.a*i+this.c*s+this.tx,e.y=this.b*i+this.d*s+this.ty,e}applyInverse(t,e){e=e||new et;let i=this.a,s=this.b,n=this.c,o=this.d,a=this.tx,u=this.ty,l=1/(i*o+n*-s),c=t.x,h=t.y;return e.x=o*l*c+-n*l*h+(u*n-a*o)*l,e.y=i*l*h+-s*l*c+(-u*i+a*s)*l,e}translate(t,e){return this.tx+=t,this.ty+=e,this}scale(t,e){return this.a*=t,this.d*=e,this.c*=t,this.b*=e,this.tx*=t,this.ty*=e,this}rotate(t){let e=Math.cos(t),i=Math.sin(t),s=this.a,n=this.c,o=this.tx;return this.a=s*e-this.b*i,this.b=s*i+this.b*e,this.c=n*e-this.d*i,this.d=n*i+this.d*e,this.tx=o*e-this.ty*i,this.ty=o*i+this.ty*e,this}append(t){let e=this.a,i=this.b,s=this.c,n=this.d;return this.a=t.a*e+t.b*s,this.b=t.a*i+t.b*n,this.c=t.c*e+t.d*s,this.d=t.c*i+t.d*n,this.tx=t.tx*e+t.ty*s+this.tx,this.ty=t.tx*i+t.ty*n+this.ty,this}appendFrom(t,e){let i=t.a,s=t.b,n=t.c,o=t.d,a=t.tx,u=t.ty,l=e.a,c=e.b,h=e.c,d=e.d;return this.a=i*l+s*h,this.b=i*c+s*d,this.c=n*l+o*h,this.d=n*c+o*d,this.tx=a*l+u*h+e.tx,this.ty=a*c+u*d+e.ty,this}setTransform(t,e,i,s,n,o,a,u,l){return this.a=Math.cos(a+l)*n,this.b=Math.sin(a+l)*n,this.c=-Math.sin(a-u)*o,this.d=Math.cos(a-u)*o,this.tx=t-(i*this.a+s*this.c),this.ty=e-(i*this.b+s*this.d),this}prepend(t){let e=this.tx;if(t.a!==1||t.b!==0||t.c!==0||t.d!==1){let i=this.a,s=this.c;this.a=i*t.a+this.b*t.c,this.b=i*t.b+this.b*t.d,this.c=s*t.a+this.d*t.c,this.d=s*t.b+this.d*t.d}return this.tx=e*t.a+this.ty*t.c+t.tx,this.ty=e*t.b+this.ty*t.d+t.ty,this}decompose(t){let e=this.a,i=this.b,s=this.c,n=this.d,o=t.pivot,a=-Math.atan2(-s,n),u=Math.atan2(i,e),l=Math.abs(a+u);return l<1e-5||Math.abs(Gm-l)<1e-5?(t.rotation=u,t.skew.x=t.skew.y=0):(t.rotation=0,t.skew.x=a,t.skew.y=u),t.scale.x=Math.sqrt(e*e+i*i),t.scale.y=Math.sqrt(s*s+n*n),t.position.x=this.tx+(o.x*e+o.y*s),t.position.y=this.ty+(o.x*i+o.y*n),t}invert(){let t=this.a,e=this.b,i=this.c,s=this.d,n=this.tx,o=t*s-e*i;return this.a=s/o,this.b=-e/o,this.c=-i/o,this.d=t/o,this.tx=(i*this.ty-s*n)/o,this.ty=-(t*this.ty-e*n)/o,this}isIdentity(){return this.a===1&&this.b===0&&this.c===0&&this.d===1&&this.tx===0&&this.ty===0}identity(){return this.a=1,this.b=0,this.c=0,this.d=1,this.tx=0,this.ty=0,this}clone(){let t=new r;return t.a=this.a,t.b=this.b,t.c=this.c,t.d=this.d,t.tx=this.tx,t.ty=this.ty,t}copyTo(t){return t.a=this.a,t.b=this.b,t.c=this.c,t.d=this.d,t.tx=this.tx,t.ty=this.ty,t}copyFrom(t){return this.a=t.a,this.b=t.b,this.c=t.c,this.d=t.d,this.tx=t.tx,this.ty=t.ty,this}equals(t){return t.a===this.a&&t.b===this.b&&t.c===this.c&&t.d===this.d&&t.tx===this.tx&&t.ty===this.ty}toString(){return`[pixi.js:Matrix a=${this.a} b=${this.b} c=${this.c} d=${this.d} tx=${this.tx} ty=${this.ty}]`}static get IDENTITY(){return mC.identity()}static get shared(){return pC.identity()}},pC=new G,mC=new G});var zt,sa=p(()=>{"use strict";zt=class r{constructor(t,e,i){this._x=e||0,this._y=i||0,this._observer=t}clone(t){return new r(t??this._observer,this._x,this._y)}set(t=0,e=t){return(this._x!==t||this._y!==e)&&(this._x=t,this._y=e,this._observer._onUpdate(this)),this}copyFrom(t){return(this._x!==t.x||this._y!==t.y)&&(this._x=t.x,this._y=t.y,this._observer._onUpdate(this)),this}copyTo(t){return t.set(this._x,this._y),t}equals(t){return t.x===this._x&&t.y===this._y}toString(){return`[pixi.js/math:ObservablePoint x=0 y=0 scope=${this._observer}]`}get x(){return this._x}set x(t){this._x!==t&&(this._x=t,this._observer._onUpdate(this))}get y(){return this._y}set y(t){this._y!==t&&(this._y=t,this._observer._onUpdate(this))}}});function rt(r="default"){return Il[r]===void 0&&(Il[r]=-1),++Il[r]}var Il,jt=p(()=>{"use strict";Il={default:-1}});function X(r,t,e=3){if(Om[t])return;let i=new Error().stack;typeof i>"u"?console.warn("PixiJS Deprecation Warning: ",`${t}\nDeprecated since v${r}`):(i=i.split(`\n`).splice(e).join(`\n`),console.groupCollapsed?(console.groupCollapsed("%cPixiJS Deprecation Warning: %c%s","color:#614108;background:#fffbe6","font-weight:normal;color:#614108;background:#fffbe6",`${t}\nDeprecated since v${r}`),console.warn(i),console.groupEnd()):(console.warn("PixiJS Deprecation Warning: ",`${t}\nDeprecated since v${r}`),console.warn(i))),Om[t]=!0}var Om,Y,Lm,vt=p(()=>{"use strict";Om={},Y="8.0.0",Lm="8.3.4"});var Wr,Ul=p(()=>{"use strict";Wr=class{constructor(t,e){this._pool=[],this._count=0,this._index=0,this._classType=t,e&&this.prepopulate(e)}prepopulate(t){for(let e=0;e0?e=this._pool[--this._index]:e=new this._classType,e.init?.(t),e}return(t){t.reset?.(),this._pool[this._index++]=t}get totalSize(){return this._count}get totalFree(){return this._index}get totalUsed(){return this._count-this._index}clear(){this._pool.length=0,this._index=0}}});var Ol,K,Qt=p(()=>{Ul();Ol=class{constructor(){this._poolsByClass=new Map}prepopulate(t,e){this.getPool(t).prepopulate(e)}get(t,e){return this.getPool(t).get(e)}return(t){this.getPool(t.constructor).return(t)}getPool(t){return this._poolsByClass.has(t)||this._poolsByClass.set(t,new Wr(t)),this._poolsByClass.get(t)}stats(){let t={};return this._poolsByClass.forEach(e=>{let i=t[e._classType.name]?e._classType.name+e._classType.ID:e._classType.name;t[i]={free:e.totalFree,used:e.totalUsed,size:e.totalSize}}),t}},K=new Ol});var Nm,Hm=p(()=>{vt();Nm={get isCachedAsTexture(){return!!this.renderGroup?.isCachedAsTexture},cacheAsTexture(r){typeof r=="boolean"&&r===!1?this.disableRenderGroup():(this.enableRenderGroup(),this.renderGroup.enableCacheAsTexture(r===!0?{}:r))},updateCacheTexture(){this.renderGroup?.updateCacheTexture()},get cacheAsBitmap(){return this.isCachedAsTexture},set cacheAsBitmap(r){X("v8.6.0","cacheAsBitmap is deprecated, use cacheAsTexture instead."),this.cacheAsTexture(r)}}});function na(r,t,e){let i=r.length,s;if(t>=i||e===0)return;e=t+e>i?i-t:e;let n=i-e;for(s=t;s{"use strict"});var zm,Wm=p(()=>{Ll();vt();zm={allowChildren:!0,removeChildren(r=0,t){let e=t??this.children.length,i=e-r,s=[];if(i>0&&i<=e){for(let o=e-1;o>=r;o--){let a=this.children[o];a&&(s.push(a),a.parent=null)}na(this.children,r,e);let n=this.renderGroup||this.parentRenderGroup;n&&n.removeChildren(s);for(let o=0;o=this.children.length)throw new Error(`getChildAt: Index (${r}) does not exist.`);return this.children[r]},setChildIndex(r,t){if(t<0||t>=this.children.length)throw new Error(`The index ${t} supplied is out of bounds ${this.children.length}`);this.getChildIndex(r),this.addChildAt(r,t)},getChildIndex(r){let t=this.children.indexOf(r);if(t===-1)throw new Error("The supplied Container must be a child of the caller");return t},addChildAt(r,t){this.allowChildren||X(Y,"addChildAt: Only Containers will be allowed to add children in v8.0.0");let{children:e}=this;if(t<0||t>e.length)throw new Error(`${r}addChildAt: The index ${t} supplied is out of bounds ${e.length}`);if(r.parent){let s=r.parent.children.indexOf(r);if(r.parent===this&&s===t)return r;s!==-1&&r.parent.children.splice(s,1)}t===e.length?e.push(r):e.splice(t,0,r),r.parent=this,r.didChange=!0,r._updateFlags=15;let i=this.renderGroup||this.parentRenderGroup;return i&&i.addChild(r),this.sortableChildren&&(this.sortDirty=!0),this.emit("childAdded",r,this,t),r.emit("added",this),r},swapChildren(r,t){if(r===t)return;let e=this.getChildIndex(r),i=this.getChildIndex(t);this.children[e]=t,this.children[i]=r;let s=this.renderGroup||this.parentRenderGroup;s&&(s.structureDidChange=!0),this._didContainerChangeTick++},removeFromParent(){this.parent?.removeChild(this)},reparentChild(...r){return r.length===1?this.reparentChildAt(r[0],this.children.length):(r.forEach(t=>this.reparentChildAt(t,this.children.length)),r[0])},reparentChildAt(r,t){if(r.parent===this)return this.setChildIndex(r,t),r;let e=r.worldTransform.clone();r.removeFromParent(),this.addChildAt(r,t);let i=this.worldTransform.clone();return i.invert(),e.prepend(i),r.setFromMatrix(e),r}}});var rr,oa=p(()=>{"use strict";rr=class{constructor(){this.pipe="filter",this.priority=1}destroy(){for(let t=0;t{D();Qt();Nl=class{constructor(){this._effectClasses=[],this._tests=[],this._initialized=!1}init(){this._initialized||(this._initialized=!0,this._effectClasses.forEach(t=>{this.add({test:t.test,maskClass:t})}))}add(t){this._tests.push(t)}getMaskEffect(t){this._initialized||this.init();for(let e=0;e{oa();Vm();Xm={_maskEffect:null,_maskOptions:{inverse:!1},_filterEffect:null,effects:[],_markStructureAsChanged(){let r=this.renderGroup||this.parentRenderGroup;r&&(r.structureDidChange=!0)},addEffect(r){this.effects.indexOf(r)===-1&&(this.effects.push(r),this.effects.sort((e,i)=>e.priority-i.priority),this._markStructureAsChanged(),this._updateIsSimple())},removeEffect(r){let t=this.effects.indexOf(r);t!==-1&&(this.effects.splice(t,1),this._markStructureAsChanged(),this._updateIsSimple())},set mask(r){let t=this._maskEffect;t?.mask!==r&&(t&&(this.removeEffect(t),aa.returnMaskEffect(t),this._maskEffect=null),r!=null&&(this._maskEffect=aa.getMaskEffect(r),this.addEffect(this._maskEffect)))},setMask(r){this._maskOptions={...this._maskOptions,...r},r.mask&&(this.mask=r.mask),this._markStructureAsChanged()},get mask(){return this._maskEffect?.mask},set filters(r){!Array.isArray(r)&&r&&(r=[r]);let t=this._filterEffect||(this._filterEffect=new rr);r=r;let e=r?.length>0,i=t.filters?.length>0,s=e!==i;r=Array.isArray(r)?r.slice(0):r,t.filters=Object.freeze(r),s&&(e?this.addEffect(t):(this.removeEffect(t),t.filters=r??null))},get filters(){return this._filterEffect?.filters},set filterArea(r){this._filterEffect||(this._filterEffect=new rr),this._filterEffect.filterArea=r},get filterArea(){return this._filterEffect?.filterArea}}});var jm,Ym=p(()=>{vt();jm={label:null,get name(){return X(Y,"Container.name property has been removed, use Container.label instead"),this.label},set name(r){X(Y,"Container.name property has been removed, use Container.label instead"),this.label=r},getChildByName(r,t=!1){return this.getChildByLabel(r,t)},getChildByLabel(r,t=!1){let e=this.children;for(let i=0;i{xe();ua=[new et,new et,new et,new et],tt=class r{constructor(t=0,e=0,i=0,s=0){this.type="rectangle",this.x=Number(t),this.y=Number(e),this.width=Number(i),this.height=Number(s)}get left(){return this.x}get right(){return this.x+this.width}get top(){return this.y}get bottom(){return this.y+this.height}isEmpty(){return this.left===this.right||this.top===this.bottom}static get EMPTY(){return new r(0,0,0,0)}clone(){return new r(this.x,this.y,this.width,this.height)}copyFromBounds(t){return this.x=t.minX,this.y=t.minY,this.width=t.maxX-t.minX,this.height=t.maxY-t.minY,this}copyFrom(t){return this.x=t.x,this.y=t.y,this.width=t.width,this.height=t.height,this}copyTo(t){return t.copyFrom(this),t}contains(t,e){return this.width<=0||this.height<=0?!1:t>=this.x&&t=this.y&&e=h&&t<=d&&e>=f&&e<=m&&!(t>g&&t_&&et.right?t.right:this.right)<=P)return!1;let M=this.yt.bottom?t.bottom:this.bottom)>M}let i=this.left,s=this.right,n=this.top,o=this.bottom;if(s<=i||o<=n)return!1;let a=ua[0].set(t.left,t.top),u=ua[1].set(t.left,t.bottom),l=ua[2].set(t.right,t.top),c=ua[3].set(t.right,t.bottom);if(l.x<=a.x||u.y<=a.y)return!1;let h=Math.sign(e.a*e.d-e.b*e.c);if(h===0||(e.apply(a,a),e.apply(u,u),e.apply(l,l),e.apply(c,c),Math.max(a.x,u.x,l.x,c.x)<=i||Math.min(a.x,u.x,l.x,c.x)>=s||Math.max(a.y,u.y,l.y,c.y)<=n||Math.min(a.y,u.y,l.y,c.y)>=o))return!1;let d=h*(u.y-a.y),f=h*(a.x-u.x),m=d*i+f*n,g=d*s+f*n,x=d*i+f*o,_=d*s+f*o;if(Math.max(m,g,x,_)<=d*a.x+f*a.y||Math.min(m,g,x,_)>=d*c.x+f*c.y)return!1;let v=h*(a.y-l.y),T=h*(l.x-a.x),y=v*i+T*n,C=v*s+T*n,S=v*i+T*o,E=v*s+T*o;return!(Math.max(y,C,S,E)<=v*a.x+T*a.y||Math.min(y,C,S,E)>=v*c.x+T*c.y)}pad(t=0,e=t){return this.x-=t,this.y-=e,this.width+=t*2,this.height+=e*2,this}fit(t){let e=Math.max(this.x,t.x),i=Math.min(this.x+this.width,t.x+t.width),s=Math.max(this.y,t.y),n=Math.min(this.y+this.height,t.y+t.height);return this.x=e,this.width=Math.max(i-e,0),this.y=s,this.height=Math.max(n-s,0),this}ceil(t=1,e=.001){let i=Math.ceil((this.x+this.width-e)*t)/t,s=Math.ceil((this.y+this.height-e)*t)/t;return this.x=Math.floor((this.x+e)*t)/t,this.y=Math.floor((this.y+e)*t)/t,this.width=i-this.x,this.height=s-this.y,this}enlarge(t){let e=Math.min(this.x,t.x),i=Math.max(this.x+this.width,t.x+t.width),s=Math.min(this.y,t.y),n=Math.max(this.y+this.height,t.y+t.height);return this.x=e,this.width=i-e,this.y=s,this.height=n-s,this}getBounds(t){return t||(t=new r),t.copyFrom(this),t}toString(){return`[pixi.js/math:Rectangle x=${this.x} y=${this.y} width=${this.width} height=${this.height}]`}}});var Km,ft,ce=p(()=>{ot();Yt();Km=new G,ft=class r{constructor(t=1/0,e=1/0,i=-1/0,s=-1/0){this.minX=1/0,this.minY=1/0,this.maxX=-1/0,this.maxY=-1/0,this.matrix=Km,this.minX=t,this.minY=e,this.maxX=i,this.maxY=s}isEmpty(){return this.minX>this.maxX||this.minY>this.maxY}get rectangle(){this._rectangle||(this._rectangle=new tt);let t=this._rectangle;return this.minX>this.maxX||this.minY>this.maxY?(t.x=0,t.y=0,t.width=0,t.height=0):t.copyFromBounds(this),t}clear(){return this.minX=1/0,this.minY=1/0,this.maxX=-1/0,this.maxY=-1/0,this.matrix=Km,this}set(t,e,i,s){this.minX=t,this.minY=e,this.maxX=i,this.maxY=s}addFrame(t,e,i,s,n){n||(n=this.matrix);let o=n.a,a=n.b,u=n.c,l=n.d,c=n.tx,h=n.ty,d=this.minX,f=this.minY,m=this.maxX,g=this.maxY,x=o*t+u*e+c,_=a*t+l*e+h;xm&&(m=x),_>g&&(g=_),x=o*i+u*e+c,_=a*i+l*e+h,xm&&(m=x),_>g&&(g=_),x=o*t+u*s+c,_=a*t+l*s+h,xm&&(m=x),_>g&&(g=_),x=o*i+u*s+c,_=a*i+l*s+h,xm&&(m=x),_>g&&(g=_),this.minX=d,this.minY=f,this.maxX=m,this.maxY=g}addRect(t,e){this.addFrame(t.x,t.y,t.x+t.width,t.y+t.height,e)}addBounds(t,e){this.addFrame(t.minX,t.minY,t.maxX,t.maxY,e)}addBoundsMask(t){this.minX=this.minX>t.minX?this.minX:t.minX,this.minY=this.minY>t.minY?this.minY:t.minY,this.maxX=this.maxXthis.maxX?d:this.maxX,this.maxY=f>this.maxY?f:this.maxY,d=o*e+u*n+c,f=a*e+l*n+h,this.minX=dthis.maxX?d:this.maxX,this.maxY=f>this.maxY?f:this.maxY,d=o*s+u*n+c,f=a*s+l*n+h,this.minX=dthis.maxX?d:this.maxX,this.maxY=f>this.maxY?f:this.maxY}fit(t){return this.minXt.right&&(this.maxX=t.right),this.minYt.bottom&&(this.maxY=t.bottom),this}fitBounds(t,e,i,s){return this.minXe&&(this.maxX=e),this.minYs&&(this.maxY=s),this}pad(t,e=t){return this.minX-=t,this.maxX+=t,this.minY-=e,this.maxY+=e,this}ceil(){return this.minX=Math.floor(this.minX),this.minY=Math.floor(this.minY),this.maxX=Math.ceil(this.maxX),this.maxY=Math.ceil(this.maxY),this}clone(){return new r(this.minX,this.minY,this.maxX,this.maxY)}scale(t,e=t){return this.minX*=t,this.minY*=e,this.maxX*=t,this.maxY*=e,this}get x(){return this.minX}set x(t){let e=this.maxX-this.minX;this.minX=t,this.maxX=t+e}get y(){return this.minY}set y(t){let e=this.maxY-this.minY;this.minY=t,this.maxY=t+e}get width(){return this.maxX-this.minX}set width(t){this.maxX=this.minX+t}get height(){return this.maxY-this.minY}set height(t){this.maxY=this.minY+t}get left(){return this.minX}get right(){return this.maxX}get top(){return this.minY}get bottom(){return this.maxY}get isPositive(){return this.maxX-this.minX>0&&this.maxY-this.minY>0}get isValid(){return this.minX+this.minY!==1/0}addVertexData(t,e,i,s){let n=this.minX,o=this.minY,a=this.maxX,u=this.maxY;s||(s=this.matrix);let l=s.a,c=s.b,h=s.c,d=s.d,f=s.tx,m=s.ty;for(let g=e;ga?v:a,u=T>u?T:u}this.minX=n,this.minY=o,this.maxX=a,this.maxY=u}containsPoint(t,e){return this.minX<=t&&this.minY<=e&&this.maxX>=t&&this.maxY>=e}toString(){return`[pixi.js:Bounds minX=${this.minX} minY=${this.minY} maxX=${this.maxX} maxY=${this.maxY} width=${this.width} height=${this.height}]`}copyFrom(t){return this.minX=t.minX,this.minY=t.minY,this.maxX=t.maxX,this.maxY=t.maxY,this}}});var Dt,he,Vr=p(()=>{ot();Ul();ce();Dt=new Wr(G),he=new Wr(ft)});function yi(r,t,e){e.clear();let i,s;return r.parent?t?i=r.parent.worldTransform:(s=Dt.get().identity(),i=la(r,s)):i=G.IDENTITY,qm(r,e,i,t),s&&Dt.return(s),e.isValid||e.set(0,0,0,0),e}function qm(r,t,e,i){if(!r.visible||!r.measurable)return;let s;i?s=r.worldTransform:(r.updateLocalTransform(),s=Dt.get(),s.appendFrom(r.localTransform,e));let n=t,o=!!r.effects.length;if(o&&(t=he.get().clear()),r.boundsArea)t.addRect(r.boundsArea,s);else{r.bounds&&(t.matrix=s,t.addBounds(r.bounds));for(let a=0;a{ot();Vr()});function ca(r,t){if(r===16777215||!t)return t;if(t===16777215||!r)return r;let e=r>>16&255,i=r>>8&255,s=r&255,n=t>>16&255,o=t>>8&255,a=t&255,u=e*n/255|0,l=i*o/255|0,c=s*a/255|0;return(u<<16)+(l<<8)+c}var Hl=p(()=>{"use strict"});function bi(r,t){return r===Zm?t:t===Zm?r:ca(r,t)}var Zm,zl=p(()=>{Hl();Zm=16777215});function Us(r){return((r&255)<<16)+(r&65280)+(r>>16&255)}var Qm,Jm=p(()=>{Is();Vr();zl();Qm={getGlobalAlpha(r){if(r)return this.renderGroup?this.renderGroup.worldAlpha:this.parentRenderGroup?this.parentRenderGroup.worldAlpha*this.alpha:this.alpha;let t=this.alpha,e=this.parent;for(;e;)t*=e.alpha,e=e.parent;return t},getGlobalTransform(r,t){if(t)return r.copyFrom(this.worldTransform);this.updateLocalTransform();let e=la(this,Dt.get().identity());return r.appendFrom(this.localTransform,e),Dt.return(e),r},getGlobalTint(r){if(r)return this.renderGroup?Us(this.renderGroup.worldColor):this.parentRenderGroup?Us(bi(this.localColor,this.parentRenderGroup.worldColor)):this.tint;let t=this.localColor,e=this.parent;for(;e;)t=bi(t,e.localColor),e=e.parent;return Us(t)}}});function z(...r){Wl!==tg&&(Wl++,Wl===tg?console.warn("PixiJS Warning: too many warnings, no more warnings will be reported to the console by PixiJS."):console.warn("PixiJS Warning: ",...r))}var Wl,tg,gt=p(()=>{"use strict";Wl=0,tg=500});function vi(r,t,e){return t.clear(),e||(e=G.IDENTITY),eg(r,t,e,r,!0),t.isValid||t.set(0,0,0,0),t}function eg(r,t,e,i,s){let n;if(s)n=Dt.get(),n=e.copyTo(n);else{if(!r.visible||!r.measurable)return;r.updateLocalTransform();let u=r.localTransform;n=Dt.get(),n.appendFrom(u,e)}let o=t,a=!!r.effects.length;if(a&&(t=he.get().clear()),r.boundsArea)t.addRect(r.boundsArea,n);else{r.renderPipeId&&(t.matrix=n,t.addBounds(r.bounds));let u=r.children;for(let l=0;l{ot();Vr()});function Vl(r,t){let e=r.children;for(let i=0;i{"use strict"});var gC,ig,sg=p(()=>{ot();ce();Is();ha();rg();gC=new G,ig={_localBoundsCacheId:-1,_localBoundsCacheData:null,_setWidth(r,t){let e=Math.sign(this.scale.x)||1;t!==0?this.scale.x=r/t*e:this.scale.x=e},_setHeight(r,t){let e=Math.sign(this.scale.y)||1;t!==0?this.scale.y=r/t*e:this.scale.y=e},getLocalBounds(){this._localBoundsCacheData||(this._localBoundsCacheData={data:[],index:1,didChange:!1,localBounds:new ft});let r=this._localBoundsCacheData;return r.index=1,r.didChange=!1,r.data[0]!==this._didViewChangeTick&&(r.didChange=!0,r.data[0]=this._didViewChangeTick),Vl(this,r),r.didChange&&vi(this,r.localBounds,gC),r.localBounds},getBounds(r,t){return yi(this,r,t||new ft)}}});var ng,og=p(()=>{"use strict";ng={_onRender:null,set onRender(r){let t=this.renderGroup||this.parentRenderGroup;if(!r){this._onRender&&t?.removeOnRender(this),this._onRender=null;return}this._onRender||t?.addOnRender(this),this._onRender=r},get onRender(){return this._onRender}}});function xC(r,t){return r._zIndex-t._zIndex}var ag,ug=p(()=>{"use strict";ag={_zIndex:0,sortDirty:!1,sortableChildren:!1,get zIndex(){return this._zIndex},set zIndex(r){this._zIndex!==r&&(this._zIndex=r,this.depthOfChildModified())},depthOfChildModified(){this.parent&&(this.parent.sortableChildren=!0,this.parent.sortDirty=!0),this.parentRenderGroup&&(this.parentRenderGroup.structureDidChange=!0)},sortChildren(){this.sortDirty&&(this.sortDirty=!1,this.children.sort(xC))}}});var lg,cg=p(()=>{xe();Vr();lg={getGlobalPosition(r=new et,t=!1){return this.parent?this.parent.toGlobal(this._position,r,t):(r.x=this._position.x,r.y=this._position.y),r},toGlobal(r,t,e=!1){let i=this.getGlobalTransform(Dt.get(),e);return t=i.apply(r,t),Dt.return(i),t},toLocal(r,t,e,i){t&&(r=t.toGlobal(r,e,i));let s=this.getGlobalTransform(Dt.get(),i);return e=s.applyInverse(r,e),Dt.return(s),e}}});var Ti,Xl=p(()=>{jt();Ti=class{constructor(){this.uid=rt("instructionSet"),this.instructions=[],this.instructionSize=0,this.renderables=[],this.gcTick=0}reset(){this.instructionSize=0}add(t){this.instructions[this.instructionSize++]=t}log(){this.instructions.length=this.instructionSize,console.table(this.instructions,["type","action"])}}});function ir(r){return r+=r===0?1:0,--r,r|=r>>>1,r|=r>>>2,r|=r>>>4,r|=r>>>8,r|=r>>>16,r+1}function $l(r){return!(r&r-1)&&!!r}var Os=p(()=>{"use strict"});function hg(r){let t={};for(let e in r)r[e]!==void 0&&(t[e]=r[e]);return t}var fg=p(()=>{"use strict"});function _C(r){let t=dg[r];return t===void 0&&(dg[r]=rt("resource")),t}var dg,pg,fa,jl=p(()=>{Xt();jt();vt();dg=Object.create(null);pg=class mg extends ht{constructor(t={}){super(),this._resourceType="textureSampler",this._touched=0,this._maxAnisotropy=1,this.destroyed=!1,t={...mg.defaultOptions,...t},this.addressMode=t.addressMode,this.addressModeU=t.addressModeU??this.addressModeU,this.addressModeV=t.addressModeV??this.addressModeV,this.addressModeW=t.addressModeW??this.addressModeW,this.scaleMode=t.scaleMode,this.magFilter=t.magFilter??this.magFilter,this.minFilter=t.minFilter??this.minFilter,this.mipmapFilter=t.mipmapFilter??this.mipmapFilter,this.lodMinClamp=t.lodMinClamp,this.lodMaxClamp=t.lodMaxClamp,this.compare=t.compare,this.maxAnisotropy=t.maxAnisotropy??1}set addressMode(t){this.addressModeU=t,this.addressModeV=t,this.addressModeW=t}get addressMode(){return this.addressModeU}set wrapMode(t){X(Y,"TextureStyle.wrapMode is now TextureStyle.addressMode"),this.addressMode=t}get wrapMode(){return this.addressMode}set scaleMode(t){this.magFilter=t,this.minFilter=t,this.mipmapFilter=t}get scaleMode(){return this.magFilter}set maxAnisotropy(t){this._maxAnisotropy=Math.min(t,16),this._maxAnisotropy>1&&(this.scaleMode="linear")}get maxAnisotropy(){return this._maxAnisotropy}get _resourceId(){return this._sharedResourceId||this._generateResourceId()}update(){this.emit("change",this),this._sharedResourceId=null}_generateResourceId(){let t=`${this.addressModeU}-${this.addressModeV}-${this.addressModeW}-${this.magFilter}-${this.minFilter}-${this.mipmapFilter}-${this.lodMinClamp}-${this.lodMaxClamp}-${this.compare}-${this._maxAnisotropy}`;return this._sharedResourceId=_C(t),this._resourceId}destroy(){this.destroyed=!0,this.emit("destroy",this),this.emit("change",this),this.removeAllListeners()}};pg.defaultOptions={addressMode:"clamp-to-edge",scaleMode:"linear"};fa=pg});var gg,ut,ne=p(()=>{Xt();Os();fg();jt();jl();gg=class xg extends ht{constructor(t={}){super(),this.options=t,this.uid=rt("textureSource"),this._resourceType="textureSource",this._resourceId=rt("resource"),this.uploadMethodId="unknown",this._resolution=1,this.pixelWidth=1,this.pixelHeight=1,this.width=1,this.height=1,this.sampleCount=1,this.mipLevelCount=1,this.autoGenerateMipmaps=!1,this.format="rgba8unorm",this.dimension="2d",this.antialias=!1,this._touched=0,this._batchTick=-1,this._textureBindLocation=-1,t={...xg.defaultOptions,...t},this.label=t.label??"",this.resource=t.resource,this.autoGarbageCollect=t.autoGarbageCollect,this._resolution=t.resolution,t.width?this.pixelWidth=t.width*this._resolution:this.pixelWidth=this.resource?this.resourceWidth??1:1,t.height?this.pixelHeight=t.height*this._resolution:this.pixelHeight=this.resource?this.resourceHeight??1:1,this.width=this.pixelWidth/this._resolution,this.height=this.pixelHeight/this._resolution,this.format=t.format,this.dimension=t.dimensions,this.mipLevelCount=t.mipLevelCount,this.autoGenerateMipmaps=t.autoGenerateMipmaps,this.sampleCount=t.sampleCount,this.antialias=t.antialias,this.alphaMode=t.alphaMode,this.style=new fa(hg(t)),this.destroyed=!1,this._refreshPOT()}get source(){return this}get style(){return this._style}set style(t){this.style!==t&&(this._style?.off("change",this._onStyleChange,this),this._style=t,this._style?.on("change",this._onStyleChange,this),this._onStyleChange())}get addressMode(){return this._style.addressMode}set addressMode(t){this._style.addressMode=t}get repeatMode(){return this._style.addressMode}set repeatMode(t){this._style.addressMode=t}get magFilter(){return this._style.magFilter}set magFilter(t){this._style.magFilter=t}get minFilter(){return this._style.minFilter}set minFilter(t){this._style.minFilter=t}get mipmapFilter(){return this._style.mipmapFilter}set mipmapFilter(t){this._style.mipmapFilter=t}get lodMinClamp(){return this._style.lodMinClamp}set lodMinClamp(t){this._style.lodMinClamp=t}get lodMaxClamp(){return this._style.lodMaxClamp}set lodMaxClamp(t){this._style.lodMaxClamp=t}_onStyleChange(){this.emit("styleChange",this)}update(){if(this.resource){let t=this._resolution;if(this.resize(this.resourceWidth/t,this.resourceHeight/t))return}this.emit("update",this)}destroy(){this.destroyed=!0,this.emit("destroy",this),this.emit("change",this),this._style&&(this._style.destroy(),this._style=null),this.uploadMethodId=null,this.resource=null,this.removeAllListeners()}unload(){this._resourceId=rt("resource"),this.emit("change",this),this.emit("unload",this)}get resourceWidth(){let{resource:t}=this;return t.naturalWidth||t.videoWidth||t.displayWidth||t.width}get resourceHeight(){let{resource:t}=this;return t.naturalHeight||t.videoHeight||t.displayHeight||t.height}get resolution(){return this._resolution}set resolution(t){this._resolution!==t&&(this._resolution=t,this.width=this.pixelWidth/t,this.height=this.pixelHeight/t)}resize(t,e,i){i||(i=this._resolution),t||(t=this.width),e||(e=this.height);let s=Math.round(t*i),n=Math.round(e*i);return this.width=s/i,this.height=n/i,this._resolution=i,this.pixelWidth===s&&this.pixelHeight===n?!1:(this._refreshPOT(),this.pixelWidth=s,this.pixelHeight=n,this.emit("resize",this),this._resourceId=rt("resource"),this.emit("change",this),!0)}updateMipmaps(){this.autoGenerateMipmaps&&this.mipLevelCount>1&&this.emit("updateMipmaps",this)}set wrapMode(t){this._style.wrapMode=t}get wrapMode(){return this._style.wrapMode}set scaleMode(t){this._style.scaleMode=t}get scaleMode(){return this._style.scaleMode}_refreshPOT(){this.isPowerOfTwo=$l(this.pixelWidth)&&$l(this.pixelHeight)}static test(t){throw new Error("Unimplemented")}};gg.defaultOptions={resolution:1,format:"bgra8unorm",alphaMode:"premultiply-alpha-on-upload",dimensions:"2d",mipLevelCount:1,autoGenerateMipmaps:!1,sampleCount:1,antialias:!1,autoGarbageCollect:!1};ut=gg});function yC(){for(let r=0;r<16;r++){let t=[];Yl.push(t);for(let e=0;e<16;e++){let i=da(Xr[r]*Xr[e]+jr[r]*$r[e]),s=da($r[r]*Xr[e]+Yr[r]*$r[e]),n=da(Xr[r]*jr[e]+jr[r]*Yr[e]),o=da($r[r]*jr[e]+Yr[r]*Yr[e]);for(let a=0;a<16;a++)if(Xr[a]===i&&$r[a]===s&&jr[a]===n&&Yr[a]===o){t.push(a);break}}}for(let r=0;r<16;r++){let t=new G;t.set(Xr[r],$r[r],jr[r],Yr[r],0,0),_g.push(t)}}var Xr,$r,jr,Yr,Yl,_g,da,mt,yg=p(()=>{ot();Xr=[1,1,0,-1,-1,-1,0,1,1,1,0,-1,-1,-1,0,1],$r=[0,1,1,1,0,-1,-1,-1,0,1,1,1,0,-1,-1,-1],jr=[0,-1,-1,-1,0,1,1,1,0,1,1,1,0,-1,-1,-1],Yr=[1,1,0,-1,-1,-1,0,1,-1,-1,0,1,1,1,0,-1],Yl=[],_g=[],da=Math.sign;yC();mt={E:0,SE:1,S:2,SW:3,W:4,NW:5,N:6,NE:7,MIRROR_VERTICAL:8,MAIN_DIAGONAL:10,MIRROR_HORIZONTAL:12,REVERSE_DIAGONAL:14,uX:r=>Xr[r],uY:r=>$r[r],vX:r=>jr[r],vY:r=>Yr[r],inv:r=>r&8?r&15:-r&7,add:(r,t)=>Yl[r][t],sub:(r,t)=>Yl[r][mt.inv(t)],rotate180:r=>r^4,isVertical:r=>(r&3)===2,byDirection:(r,t)=>Math.abs(r)*2<=Math.abs(t)?t>=0?mt.S:mt.N:Math.abs(t)*2<=Math.abs(r)?r>0?mt.E:mt.W:t>0?r>0?mt.SE:mt.SW:r>0?mt.NE:mt.NW,matrixAppendRotationInv:(r,t,e=0,i=0)=>{let s=_g[mt.inv(t)];s.tx=e,s.ty=i,r.append(s)}}});var Kl,bg=p(()=>{"use strict";Kl=()=>{}});var Kr,ql=p(()=>{D();ne();Kr=class extends ut{constructor(t){let e=t.resource||new Float32Array(t.width*t.height*4),i=t.format;i||(e instanceof Float32Array?i="rgba32float":e instanceof Int32Array||e instanceof Uint32Array?i="rgba32uint":e instanceof Int16Array||e instanceof Uint16Array?i="rgba16uint":(e instanceof Int8Array,i="bgra8unorm")),super({...t,resource:e,format:i}),this.uploadMethodId="buffer"}static test(t){return t instanceof Int8Array||t instanceof Uint8Array||t instanceof Uint8ClampedArray||t instanceof Int16Array||t instanceof Uint16Array||t instanceof Int32Array||t instanceof Uint32Array||t instanceof Float32Array}};Kr.extension=b.TextureSource});var vg,Si,Zl=p(()=>{ot();vg=new G,Si=class{constructor(t,e){this.mapCoord=new G,this.uClampFrame=new Float32Array(4),this.uClampOffset=new Float32Array(2),this._textureID=-1,this._updateID=0,this.clampOffset=0,typeof e>"u"?this.clampMargin=t.width<10?0:.5:this.clampMargin=e,this.isSimple=!1,this.texture=t}get texture(){return this._texture}set texture(t){this.texture!==t&&(this._texture?.removeListener("update",this.update,this),this._texture=t,this._texture.addListener("update",this.update,this),this.update())}multiplyUvs(t,e){e===void 0&&(e=t);let i=this.mapCoord;for(let s=0;s{Xt();yg();Yt();jt();vt();bg();ql();ne();Zl();I=class extends ht{constructor({source:t,label:e,frame:i,orig:s,trim:n,defaultAnchor:o,defaultBorders:a,rotate:u,dynamic:l}={}){if(super(),this.uid=rt("texture"),this.uvs={x0:0,y0:0,x1:0,y1:0,x2:0,y2:0,x3:0,y3:0},this.frame=new tt,this.noFrame=!1,this.dynamic=!1,this.isTexture=!0,this.label=e,this.source=t?.source??new ut,this.noFrame=!i,i)this.frame.copyFrom(i);else{let{width:c,height:h}=this._source;this.frame.width=c,this.frame.height=h}this.orig=s||this.frame,this.trim=n,this.rotate=u??0,this.defaultAnchor=o,this.defaultBorders=a,this.destroyed=!1,this.dynamic=l||!1,this.updateUvs()}set source(t){this._source&&this._source.off("resize",this.update,this),this._source=t,t.on("resize",this.update,this),this.emit("update",this)}get source(){return this._source}get textureMatrix(){return this._textureMatrix||(this._textureMatrix=new Si(this)),this._textureMatrix}get width(){return this.orig.width}get height(){return this.orig.height}updateUvs(){let{uvs:t,frame:e}=this,{width:i,height:s}=this._source,n=e.x/i,o=e.y/s,a=e.width/i,u=e.height/s,l=this.rotate;if(l){let c=a/2,h=u/2,d=n+c,f=o+h;l=mt.add(l,mt.NW),t.x0=d+c*mt.uX(l),t.y0=f+h*mt.uY(l),l=mt.add(l,2),t.x1=d+c*mt.uX(l),t.y1=f+h*mt.uY(l),l=mt.add(l,2),t.x2=d+c*mt.uX(l),t.y2=f+h*mt.uY(l),l=mt.add(l,2),t.x3=d+c*mt.uX(l),t.y3=f+h*mt.uY(l)}else t.x0=n,t.y0=o,t.x1=n+a,t.y1=o,t.x2=n+a,t.y2=o+u,t.x3=n,t.y3=o+u}destroy(t=!1){this._source&&t&&(this._source.destroy(),this._source=null),this._textureMatrix=null,this.destroyed=!0,this.emit("destroy",this),this.removeAllListeners()}update(){this.noFrame&&(this.frame.width=this._source.width,this.frame.height=this._source.height),this.updateUvs(),this.emit("update",this)}get baseTexture(){return X(Y,"Texture.baseTexture is now Texture.source"),this._source}};I.EMPTY=new I({label:"EMPTY",source:new ut({label:"EMPTY"})});I.EMPTY.destroy=Kl;I.WHITE=new I({source:new Kr({resource:new Uint8Array([255,255,255,255]),width:1,height:1,alphaMode:"premultiply-alpha-on-upload",label:"WHITE"}),label:"WHITE"});I.WHITE.destroy=Kl});var bC,Ql,xt,yr=p(()=>{Os();ne();dt();bC=0,Ql=class{constructor(t){this._poolKeyHash=Object.create(null),this._texturePool={},this.textureOptions=t||{},this.enableFullScreen=!1}createTexture(t,e,i){let s=new ut({...this.textureOptions,width:t,height:e,resolution:1,antialias:i,autoGarbageCollect:!0});return new I({source:s,label:`texturePool_${bC++}`})}getOptimalTexture(t,e,i=1,s){let n=Math.ceil(t*i-1e-6),o=Math.ceil(e*i-1e-6);n=ir(n),o=ir(o);let a=(n<<17)+(o<<1)+(s?1:0);this._texturePool[a]||(this._texturePool[a]=[]);let u=this._texturePool[a].pop();return u||(u=this.createTexture(n,o,s)),u.source._resolution=i,u.source.width=n/i,u.source.height=o/i,u.source.pixelWidth=n,u.source.pixelHeight=o,u.frame.x=0,u.frame.y=0,u.frame.width=t,u.frame.height=e,u.updateUvs(),this._poolKeyHash[u.uid]=a,u}getSameSizeTexture(t,e=!1){let i=t.source;return this.getOptimalTexture(t.width,t.height,i._resolution,e)}returnTexture(t){let e=this._poolKeyHash[t.uid];this._texturePool[e].push(t)}clear(t){if(t=t!==!1,t)for(let e in this._texturePool){let i=this._texturePool[e];if(i)for(let s=0;s{ot();Xl();yr();pa=class{constructor(){this.renderPipeId="renderGroup",this.root=null,this.canBundle=!1,this.renderGroupParent=null,this.renderGroupChildren=[],this.worldTransform=new G,this.worldColorAlpha=4294967295,this.worldColor=16777215,this.worldAlpha=1,this.childrenToUpdate=Object.create(null),this.updateTick=0,this.gcTick=0,this.childrenRenderablesToUpdate={list:[],index:0},this.structureDidChange=!0,this.instructionSet=new Ti,this._onRenderContainers=[],this.textureNeedsUpdate=!0,this.isCachedAsTexture=!1,this._matrixDirty=7}init(t){this.root=t,t._onRender&&this.addOnRender(t),t.didChange=!0;let e=t.children;for(let i=0;i-1&&this.renderGroupChildren.splice(e,1),t.renderGroupParent=null}addChild(t){if(this.structureDidChange=!0,t.parentRenderGroup=this,t.updateTick=-1,t.parent===this.root?t.relativeRenderGroupDepth=1:t.relativeRenderGroupDepth=t.parent.relativeRenderGroupDepth+1,t.didChange=!0,this.onChildUpdate(t),t.renderGroup){this.addRenderGroupChild(t.renderGroup);return}t._onRender&&this.addOnRender(t);let e=t.children;for(let i=0;i0}addOnRender(t){this._onRenderContainers.push(t)}removeOnRender(t){this._onRenderContainers.splice(this._onRenderContainers.indexOf(t),1)}runOnRender(){for(let t=0;t{"use strict"});var Jl,tc,ec,wi,Ls,qr,it,De=p(()=>{Xt();$t();km();ot();kl();sa();jt();vt();Qt();Hm();Wm();$m();Ym();Jm();sg();og();ug();cg();Tg();wg();Jl=new zt(null),tc=new zt(null),ec=new zt(null,1,1),wi=1,Ls=2,qr=4,it=class r extends ht{constructor(t={}){super(),this.uid=rt("renderable"),this._updateFlags=15,this.renderGroup=null,this.parentRenderGroup=null,this.parentRenderGroupIndex=0,this.didChange=!1,this.didViewUpdate=!1,this.relativeRenderGroupDepth=0,this.children=[],this.parent=null,this.includeInBuild=!0,this.measurable=!0,this.isSimple=!0,this.updateTick=-1,this.localTransform=new G,this.relativeGroupTransform=new G,this.groupTransform=this.relativeGroupTransform,this.destroyed=!1,this._position=new zt(this,0,0),this._scale=ec,this._pivot=tc,this._skew=Jl,this._cx=1,this._sx=0,this._cy=0,this._sy=1,this._rotation=0,this.localColor=16777215,this.localAlpha=1,this.groupAlpha=1,this.groupColor=16777215,this.groupColorAlpha=4294967295,this.localBlendMode="inherit",this.groupBlendMode="normal",this.localDisplayStatus=7,this.globalDisplayStatus=7,this._didContainerChangeTick=0,this._didViewChangeTick=0,this._didLocalTransformChangeId=-1,this.effects=[],Sg(this,t,{children:!0,parent:!0,effects:!0}),t.children?.forEach(e=>this.addChild(e)),t.parent?.addChild(this)}static mixin(t){Object.defineProperties(r.prototype,Object.getOwnPropertyDescriptors(t))}set _didChangeId(t){this._didViewChangeTick=t>>12&4095,this._didContainerChangeTick=t&4095}get _didChangeId(){return this._didContainerChangeTick&4095|(this._didViewChangeTick&4095)<<12}addChild(...t){if(this.allowChildren||X(Y,"addChild: Only Containers will be allowed to add children in v8.0.0"),t.length>1){for(let s=0;s1){for(let s=0;s-1&&(this._didViewChangeTick++,this.children.splice(i,1),this.renderGroup?this.renderGroup.removeChild(e):this.parentRenderGroup&&this.parentRenderGroup.removeChild(e),e.parent=null,this.emit("childRemoved",e,this,i),e.emit("removed",this)),e}_onUpdate(t){t&&t===this._skew&&this._updateSkew(),this._didContainerChangeTick++,!this.didChange&&(this.didChange=!0,this.parentRenderGroup&&this.parentRenderGroup.onChildUpdate(this))}set isRenderGroup(t){!!this.renderGroup!==t&&(t?this.enableRenderGroup():this.disableRenderGroup())}get isRenderGroup(){return!!this.renderGroup}enableRenderGroup(){if(this.renderGroup)return;let t=this.parentRenderGroup;t?.removeChild(this),this.renderGroup=K.get(pa,this),this.groupTransform=G.IDENTITY,t?.addChild(this),this._updateIsSimple()}disableRenderGroup(){if(!this.renderGroup)return;let t=this.parentRenderGroup;t?.removeChild(this),K.return(this.renderGroup),this.renderGroup=null,this.groupTransform=this.relativeGroupTransform,t?.addChild(this),this._updateIsSimple()}_updateIsSimple(){this.isSimple=!this.renderGroup&&this.effects.length===0}get worldTransform(){return this._worldTransform||(this._worldTransform=new G),this.renderGroup?this._worldTransform.copyFrom(this.renderGroup.worldTransform):this.parentRenderGroup&&this._worldTransform.appendFrom(this.relativeGroupTransform,this.parentRenderGroup.worldTransform),this._worldTransform}get x(){return this._position.x}set x(t){this._position.x=t}get y(){return this._position.y}set y(t){this._position.y=t}get position(){return this._position}set position(t){this._position.copyFrom(t)}get rotation(){return this._rotation}set rotation(t){this._rotation!==t&&(this._rotation=t,this._onUpdate(this._skew))}get angle(){return this.rotation*Im}set angle(t){this.rotation=t*Um}get pivot(){return this._pivot===tc&&(this._pivot=new zt(this,0,0)),this._pivot}set pivot(t){this._pivot===tc&&(this._pivot=new zt(this,0,0)),typeof t=="number"?this._pivot.set(t):this._pivot.copyFrom(t)}get skew(){return this._skew===Jl&&(this._skew=new zt(this,0,0)),this._skew}set skew(t){this._skew===Jl&&(this._skew=new zt(this,0,0)),this._skew.copyFrom(t)}get scale(){return this._scale===ec&&(this._scale=new zt(this,1,1)),this._scale}set scale(t){this._scale===ec&&(this._scale=new zt(this,0,0)),typeof t=="number"?this._scale.set(t):this._scale.copyFrom(t)}get width(){return Math.abs(this.scale.x*this.getLocalBounds().width)}set width(t){let e=this.getLocalBounds().width;this._setWidth(t,e)}get height(){return Math.abs(this.scale.y*this.getLocalBounds().height)}set height(t){let e=this.getLocalBounds().height;this._setHeight(t,e)}getSize(t){t||(t={});let e=this.getLocalBounds();return t.width=Math.abs(this.scale.x*e.width),t.height=Math.abs(this.scale.y*e.height),t}setSize(t,e){let i=this.getLocalBounds();typeof t=="object"?(e=t.height??t.width,t=t.width):e??(e=t),t!==void 0&&this._setWidth(t,i.width),e!==void 0&&this._setHeight(e,i.height)}_updateSkew(){let t=this._rotation,e=this._skew;this._cx=Math.cos(t+e._y),this._sx=Math.sin(t+e._y),this._cy=-Math.sin(t-e._x),this._sy=Math.cos(t-e._x)}updateTransform(t){return this.position.set(typeof t.x=="number"?t.x:this.position.x,typeof t.y=="number"?t.y:this.position.y),this.scale.set(typeof t.scaleX=="number"?t.scaleX||1:this.scale.x,typeof t.scaleY=="number"?t.scaleY||1:this.scale.y),this.rotation=typeof t.rotation=="number"?t.rotation:this.rotation,this.skew.set(typeof t.skewX=="number"?t.skewX:this.skew.x,typeof t.skewY=="number"?t.skewY:this.skew.y),this.pivot.set(typeof t.pivotX=="number"?t.pivotX:this.pivot.x,typeof t.pivotY=="number"?t.pivotY:this.pivot.y),this}setFromMatrix(t){t.decompose(this)}updateLocalTransform(){let t=this._didContainerChangeTick;if(this._didLocalTransformChangeId===t)return;this._didLocalTransformChangeId=t;let e=this.localTransform,i=this._scale,s=this._pivot,n=this._position,o=i._x,a=i._y,u=s._x,l=s._y;e.a=this._cx*o,e.b=this._sx*o,e.c=this._cy*a,e.d=this._sy*a,e.tx=n._x-(u*e.a+l*e.c),e.ty=n._y-(u*e.b+l*e.d)}set alpha(t){t!==this.localAlpha&&(this.localAlpha=t,this._updateFlags|=wi,this._onUpdate())}get alpha(){return this.localAlpha}set tint(t){let i=Z.shared.setValue(t??16777215).toBgrNumber();i!==this.localColor&&(this.localColor=i,this._updateFlags|=wi,this._onUpdate())}get tint(){return Us(this.localColor)}set blendMode(t){this.localBlendMode!==t&&(this.parentRenderGroup&&(this.parentRenderGroup.structureDidChange=!0),this._updateFlags|=Ls,this.localBlendMode=t,this._onUpdate())}get blendMode(){return this.localBlendMode}get visible(){return!!(this.localDisplayStatus&2)}set visible(t){let e=t?2:0;(this.localDisplayStatus&2)!==e&&(this.parentRenderGroup&&(this.parentRenderGroup.structureDidChange=!0),this._updateFlags|=qr,this.localDisplayStatus^=2,this._onUpdate())}get culled(){return!(this.localDisplayStatus&4)}set culled(t){let e=t?0:4;(this.localDisplayStatus&4)!==e&&(this.parentRenderGroup&&(this.parentRenderGroup.structureDidChange=!0),this._updateFlags|=qr,this.localDisplayStatus^=4,this._onUpdate())}get renderable(){return!!(this.localDisplayStatus&1)}set renderable(t){let e=t?1:0;(this.localDisplayStatus&1)!==e&&(this._updateFlags|=qr,this.localDisplayStatus^=1,this.parentRenderGroup&&(this.parentRenderGroup.structureDidChange=!0),this._onUpdate())}get isRenderable(){return this.localDisplayStatus===7&&this.groupAlpha>0}destroy(t=!1){if(this.destroyed)return;this.destroyed=!0;let e;if(this.children.length&&(e=this.removeChildren(0,this.children.length)),this.removeFromParent(),this.parent=null,this._maskEffect=null,this._filterEffect=null,this.effects=null,this._position=null,this._scale=null,this._pivot=null,this._skew=null,this.emit("destroyed",this),this.removeAllListeners(),(typeof t=="boolean"?t:t?.children)&&e)for(let s=0;s{xe();br=class r{constructor(t){this.bubbles=!0,this.cancelBubble=!0,this.cancelable=!1,this.composed=!1,this.defaultPrevented=!1,this.eventPhase=r.prototype.NONE,this.propagationStopped=!1,this.propagationImmediatelyStopped=!1,this.layer=new et,this.page=new et,this.NONE=0,this.CAPTURING_PHASE=1,this.AT_TARGET=2,this.BUBBLING_PHASE=3,this.manager=t}get layerX(){return this.layer.x}get layerY(){return this.layer.y}get pageX(){return this.page.x}get pageY(){return this.page.y}get data(){return this}composedPath(){return this.manager&&(!this.path||this.path[this.path.length-1]!==this.target)&&(this.path=this.target?this.manager.propagationPath(this.target):[]),this.path}initEvent(t,e,i){throw new Error("initEvent() is a legacy DOM API. It is not implemented in the Federated Events API.")}initUIEvent(t,e,i,s,n){throw new Error("initUIEvent() is a legacy DOM API. It is not implemented in the Federated Events API.")}preventDefault(){this.nativeEvent instanceof Event&&this.nativeEvent.cancelable&&this.nativeEvent.preventDefault(),this.defaultPrevented=!0}stopImmediatePropagation(){this.propagationImmediatelyStopped=!0}stopPropagation(){this.propagationStopped=!0}}});function vC(r){return function(t){return t.test(r)}}function Ns(r){var t={userAgent:"",platform:"",maxTouchPoints:0};!r&&typeof navigator<"u"?t={userAgent:navigator.userAgent,platform:navigator.platform,maxTouchPoints:navigator.maxTouchPoints||0}:typeof r=="string"?t.userAgent=r:r&&r.userAgent&&(t={userAgent:r.userAgent,platform:r.platform,maxTouchPoints:r.maxTouchPoints||0});var e=t.userAgent,i=e.split("[FBAN");typeof i[1]<"u"&&(e=i[0]),i=e.split("Twitter"),typeof i[1]<"u"&&(e=i[0]);var s=vC(e),n={apple:{phone:s(rc)&&!s(sr),ipod:s(Eg),tablet:!s(rc)&&(s(Cg)||Gg(t))&&!s(sr),universal:s(Ag),device:(s(rc)||s(Eg)||s(Cg)||s(Ag)||Gg(t))&&!s(sr)},amazon:{phone:s(Ei),tablet:!s(Ei)&&s(ga),device:s(Ei)||s(ga)},android:{phone:!s(sr)&&s(Ei)||!s(sr)&&s(ic),tablet:!s(sr)&&!s(Ei)&&!s(ic)&&(s(ga)||s(Dg)),device:!s(sr)&&(s(Ei)||s(ga)||s(ic)||s(Dg))||s(/\\bokhttp\\b/i)},windows:{phone:s(sr),tablet:s(Pg),device:s(sr)||s(Pg)},other:{blackberry:s(Bg),blackberry10:s(Mg),opera:s(Fg),firefox:s(kg),chrome:s(Rg),device:s(Bg)||s(Mg)||s(Fg)||s(kg)||s(Rg)},any:!1,phone:!1,tablet:!1};return n.any=n.apple.device||n.android.device||n.windows.device||n.other.device,n.phone=n.apple.phone||n.android.phone||n.windows.phone,n.tablet=n.apple.tablet||n.android.tablet||n.windows.tablet,n}var rc,Eg,Cg,Ag,ic,Dg,Ei,ga,sr,Pg,Bg,Mg,Fg,Rg,kg,Gg,sc=p(()=>{rc=/iPhone/i,Eg=/iPod/i,Cg=/iPad/i,Ag=/\\biOS-universal(?:.+)Mac\\b/i,ic=/\\bAndroid(?:.+)Mobile\\b/i,Dg=/Android/i,Ei=/(?:SD4930UR|\\bSilk(?:.+)Mobile\\b)/i,ga=/Silk/i,sr=/Windows Phone/i,Pg=/\\bWindows(?:.+)ARM\\b/i,Bg=/BlackBerry/i,Mg=/BB10/i,Fg=/Opera Mini/i,Rg=/\\b(CriOS|Chrome)(?:.+)Mobile/i,kg=/Mobile(?:.+)Firefox\\b/i,Gg=function(r){return typeof r<"u"&&r.platform==="MacIntel"&&typeof r.maxTouchPoints=="number"&&r.maxTouchPoints>1&&typeof MSStream>"u"}});var Ig=p(()=>{sc();sc()});var TC,Ug,Og=p(()=>{Ig();TC=Ns.default??Ns,Ug=TC(globalThis.navigator)});var SC,xa,wC,EC,Lg,Ng,CC,AC,DC,Hs,Hg=p(()=>{ma();D();Og();Ll();SC=9,xa=100,wC=0,EC=0,Lg=2,Ng=1,CC=-1e3,AC=-1e3,DC=2,Hs=class{constructor(t,e=Ug){this._mobileInfo=e,this.debug=!1,this._isActive=!1,this._isMobileAccessibility=!1,this._pool=[],this._renderId=0,this._children=[],this._androidUpdateCount=0,this._androidUpdateFrequency=500,this._hookDiv=null,(e.tablet||e.phone)&&this._createTouchHook();let i=document.createElement("div");i.style.width=`${xa}px`,i.style.height=`${xa}px`,i.style.position="absolute",i.style.top=`${wC}px`,i.style.left=`${EC}px`,i.style.zIndex=Lg.toString(),this._div=i,this._renderer=t,this._onKeyDown=this._onKeyDown.bind(this),this._onMouseMove=this._onMouseMove.bind(this),globalThis.addEventListener("keydown",this._onKeyDown,!1)}get isActive(){return this._isActive}get isMobileAccessibility(){return this._isMobileAccessibility}get hookDiv(){return this._hookDiv}_createTouchHook(){let t=document.createElement("button");t.style.width=`${Ng}px`,t.style.height=`${Ng}px`,t.style.position="absolute",t.style.top=`${CC}px`,t.style.left=`${AC}px`,t.style.zIndex=DC.toString(),t.style.backgroundColor="#FF0000",t.title="select to enable accessibility for this content",t.addEventListener("focus",()=>{this._isMobileAccessibility=!0,this._activate(),this._destroyTouchHook()}),document.body.appendChild(t),this._hookDiv=t}_destroyTouchHook(){this._hookDiv&&(document.body.removeChild(this._hookDiv),this._hookDiv=null)}_activate(){this._isActive||(this._isActive=!0,globalThis.document.addEventListener("mousemove",this._onMouseMove,!0),globalThis.removeEventListener("keydown",this._onKeyDown,!1),this._renderer.runners.postrender.add(this),this._renderer.view.canvas.parentNode?.appendChild(this._div))}_deactivate(){!this._isActive||this._isMobileAccessibility||(this._isActive=!1,globalThis.document.removeEventListener("mousemove",this._onMouseMove,!0),globalThis.addEventListener("keydown",this._onKeyDown,!1),this._renderer.runners.postrender.remove(this),this._div.parentNode?.removeChild(this._div))}_updateAccessibleObjects(t){if(!t.visible||!t.accessibleChildren)return;t.accessible&&t.isInteractive()&&(t._accessibleActive||this._addChild(t),t._renderId=this._renderId);let e=t.children;if(e)for(let i=0;i title : ${t.title}
tabIndex: ${t.tabIndex}`}_capHitArea(t){t.x<0&&(t.width+=t.x,t.x=0),t.y<0&&(t.height+=t.y,t.y=0);let{width:e,height:i}=this._renderer;t.x+t.width>e&&(t.width=e-t.x),t.y+t.height>i&&(t.height=i-t.y)}_addChild(t){let e=this._pool.pop();e||(e=document.createElement("button"),e.style.width=`${xa}px`,e.style.height=`${xa}px`,e.style.backgroundColor=this.debug?"rgba(255,255,255,0.5)":"transparent",e.style.position="absolute",e.style.zIndex=Lg.toString(),e.style.borderStyle="none",navigator.userAgent.toLowerCase().includes("chrome")?e.setAttribute("aria-live","off"):e.setAttribute("aria-live","polite"),navigator.userAgent.match(/rv:.*Gecko\\//)?e.setAttribute("aria-relevant","additions"):e.setAttribute("aria-relevant","text"),e.addEventListener("click",this._onClick.bind(this)),e.addEventListener("focus",this._onFocus.bind(this)),e.addEventListener("focusout",this._onFocusOut.bind(this))),e.style.pointerEvents=t.accessiblePointerEvents,e.type=t.accessibleType,t.accessibleTitle&&t.accessibleTitle!==null?e.title=t.accessibleTitle:(!t.accessibleHint||t.accessibleHint===null)&&(e.title=`container ${t.tabIndex}`),t.accessibleHint&&t.accessibleHint!==null&&e.setAttribute("aria-label",t.accessibleHint),this.debug&&this._updateDebugHTML(e),t._accessibleActive=!0,t._accessibleDiv=e,e.container=t,this._children.push(t),this._div.appendChild(t._accessibleDiv),t._accessibleDiv.tabIndex=t.tabIndex}_dispatchEvent(t,e){let{container:i}=t.target,s=this._renderer.events.rootBoundary,n=Object.assign(new br(s),{target:i});s.rootTarget=this._renderer.lastObjectRendered,e.forEach(o=>s.dispatchEvent(n,o))}_onClick(t){this._dispatchEvent(t,["click","pointertap","tap"])}_onFocus(t){t.target.getAttribute("aria-live")||t.target.setAttribute("aria-live","assertive"),this._dispatchEvent(t,["mouseover"])}_onFocusOut(t){t.target.getAttribute("aria-live")||t.target.setAttribute("aria-live","polite"),this._dispatchEvent(t,["mouseout"])}_onKeyDown(t){t.keyCode===SC&&this._activate()}_onMouseMove(t){t.movementX===0&&t.movementY===0||this._deactivate()}destroy(){this._destroyTouchHook(),this._div=null,globalThis.document.removeEventListener("mousemove",this._onMouseMove,!0),globalThis.removeEventListener("keydown",this._onKeyDown),this._pool=null,this._children=null,this._renderer=null}};Hs.extension={type:[b.WebGLSystem,b.WebGPUSystem],name:"accessibility"}});var zg,Wg=p(()=>{"use strict";zg={accessible:!1,accessibleTitle:null,accessibleHint:null,tabIndex:0,_accessibleActive:!1,_accessibleDiv:null,accessibleType:"button",accessiblePointerEvents:"auto",accessibleChildren:!0,_renderId:-1}});var Vg=p(()=>{D();De();Hg();Wg();H.add(Hs);it.mixin(zg)});var zs,Xg=p(()=>{D();zs=class{static init(t){Object.defineProperty(this,"resizeTo",{set(e){globalThis.removeEventListener("resize",this.queueResize),this._resizeTo=e,e&&(globalThis.addEventListener("resize",this.queueResize),this.resize())},get(){return this._resizeTo}}),this.queueResize=()=>{this._resizeTo&&(this._cancelResize(),this._resizeId=requestAnimationFrame(()=>this.resize()))},this._cancelResize=()=>{this._resizeId&&(cancelAnimationFrame(this._resizeId),this._resizeId=null)},this.resize=()=>{if(!this._resizeTo)return;this._cancelResize();let e,i;if(this._resizeTo===globalThis.window)e=globalThis.innerWidth,i=globalThis.innerHeight;else{let{clientWidth:s,clientHeight:n}=this._resizeTo;e=s,i=n}this.renderer.resize(e,i),this.render()},this._resizeId=null,this._resizeTo=null,this.resizeTo=t.resizeTo||null}static destroy(){globalThis.removeEventListener("resize",this.queueResize),this._cancelResize(),this._cancelResize=null,this.queueResize=null,this.resizeTo=null,this.resize=null}};zs.extension=b.Application});var vr,_a=p(()=>{"use strict";vr=(r=>(r[r.INTERACTION=50]="INTERACTION",r[r.HIGH=25]="HIGH",r[r.NORMAL=0]="NORMAL",r[r.LOW=-25]="LOW",r[r.UTILITY=-50]="UTILITY",r))(vr||{})});var Ci,$g=p(()=>{"use strict";Ci=class{constructor(t,e=null,i=0,s=!1){this.next=null,this.previous=null,this._destroyed=!1,this._fn=t,this._context=e,this.priority=i,this._once=s}match(t,e=null){return this._fn===t&&this._context===e}emit(t){this._fn&&(this._context?this._fn.call(this._context,t):this._fn(t));let e=this.next;return this._once&&this.destroy(!0),this._destroyed&&(this.next=null),e}connect(t){this.previous=t,t.next&&(t.next.previous=this),this.next=t.next,t.next=this}destroy(t=!1){this._destroyed=!0,this._fn=null,this._context=null,this.previous&&(this.previous.next=this.next),this.next&&(this.next.previous=this.previous);let e=this.next;return this.next=t?null:e,this.previous=null,e}}});var jg,oe,Ws=p(()=>{_a();$g();jg=class fe{constructor(){this.autoStart=!1,this.deltaTime=1,this.lastTime=-1,this.speed=1,this.started=!1,this._requestId=null,this._maxElapsedMS=100,this._minElapsedMS=0,this._protected=!1,this._lastFrame=-1,this._head=new Ci(null,null,1/0),this.deltaMS=1/fe.targetFPMS,this.elapsedMS=1/fe.targetFPMS,this._tick=t=>{this._requestId=null,this.started&&(this.update(t),this.started&&this._requestId===null&&this._head.next&&(this._requestId=requestAnimationFrame(this._tick)))}}_requestIfNeeded(){this._requestId===null&&this._head.next&&(this.lastTime=performance.now(),this._lastFrame=this.lastTime,this._requestId=requestAnimationFrame(this._tick))}_cancelIfNeeded(){this._requestId!==null&&(cancelAnimationFrame(this._requestId),this._requestId=null)}_startIfPossible(){this.started?this._requestIfNeeded():this.autoStart&&this.start()}add(t,e,i=vr.NORMAL){return this._addListener(new Ci(t,e,i))}addOnce(t,e,i=vr.NORMAL){return this._addListener(new Ci(t,e,i,!0))}_addListener(t){let e=this._head.next,i=this._head;if(!e)t.connect(i);else{for(;e;){if(t.priority>e.priority){t.connect(i);break}i=e,e=e.next}t.previous||t.connect(i)}return this._startIfPossible(),this}remove(t,e){let i=this._head.next;for(;i;)i.match(t,e)?i=i.destroy():i=i.next;return this._head.next||this._cancelIfNeeded(),this}get count(){if(!this._head)return 0;let t=0,e=this._head;for(;e=e.next;)t++;return t}start(){this.started||(this.started=!0,this._requestIfNeeded())}stop(){this.started&&(this.started=!1,this._cancelIfNeeded())}destroy(){if(!this._protected){this.stop();let t=this._head.next;for(;t;)t=t.destroy(!0);this._head.destroy(),this._head=null}}update(t=performance.now()){let e;if(t>this.lastTime){if(e=this.elapsedMS=t-this.lastTime,e>this._maxElapsedMS&&(e=this._maxElapsedMS),e*=this.speed,this._minElapsedMS){let n=t-this._lastFrame|0;if(n{D();_a();Ws();Vs=class{static init(t){t=Object.assign({autoStart:!0,sharedTicker:!1},t),Object.defineProperty(this,"ticker",{set(e){this._ticker&&this._ticker.remove(this.render,this),this._ticker=e,e&&e.add(this.render,this,vr.LOW)},get(){return this._ticker}}),this.stop=()=>{this._ticker.stop()},this.start=()=>{this._ticker.start()},this._ticker=null,this.ticker=t.sharedTicker?oe.shared:new oe,t.autoStart&&this.start()}static destroy(){if(this._ticker){let t=this._ticker;this.ticker=null,t.destroy()}}};Vs.extension=b.Application});var nc=p(()=>{D();Xg();Yg();H.add(zs);H.add(Vs)});var oc,Ue,ac=p(()=>{_a();Ws();oc=class{constructor(){this.interactionFrequency=10,this._deltaTime=0,this._didMove=!1,this._tickerAdded=!1,this._pauseUpdate=!0}init(t){this.removeTickerListener(),this.events=t,this.interactionFrequency=10,this._deltaTime=0,this._didMove=!1,this._tickerAdded=!1,this._pauseUpdate=!0}get pauseUpdate(){return this._pauseUpdate}set pauseUpdate(t){this._pauseUpdate=t}addTickerListener(){this._tickerAdded||!this.domElement||(oe.system.add(this._tickerUpdate,this,vr.INTERACTION),this._tickerAdded=!0)}removeTickerListener(){this._tickerAdded&&(oe.system.remove(this._tickerUpdate,this),this._tickerAdded=!1)}pointerMoved(){this._didMove=!0}_update(){if(!this.domElement||this._pauseUpdate)return;if(this._didMove){this._didMove=!1;return}let t=this.events._rootPointerEvent;this.events.supportsTouchEvents&&t.pointerType==="touch"||globalThis.document.dispatchEvent(new PointerEvent("pointermove",{clientX:t.clientX,clientY:t.clientY,pointerType:t.pointerType,pointerId:t.pointerId}))}_tickerUpdate(t){this._deltaTime+=t.deltaTime,!(this._deltaTime{xe();ma();nr=class extends br{constructor(){super(...arguments),this.client=new et,this.movement=new et,this.offset=new et,this.global=new et,this.screen=new et}get clientX(){return this.client.x}get clientY(){return this.client.y}get x(){return this.clientX}get y(){return this.clientY}get movementX(){return this.movement.x}get movementY(){return this.movement.y}get offsetX(){return this.offset.x}get offsetY(){return this.offset.y}get globalX(){return this.global.x}get globalY(){return this.global.y}get screenX(){return this.screen.x}get screenY(){return this.screen.y}getLocalPosition(t,e,i){return t.worldTransform.applyInverse(i||this.global,e)}getModifierState(t){return"getModifierState"in this.nativeEvent&&this.nativeEvent.getModifierState(t)}initMouseEvent(t,e,i,s,n,o,a,u,l,c,h,d,f,m,g){throw new Error("Method not implemented.")}}});var Jt,uc=p(()=>{ya();Jt=class extends nr{constructor(){super(...arguments),this.width=0,this.height=0,this.isPrimary=!1}getCoalescedEvents(){return this.type==="pointermove"||this.type==="mousemove"||this.type==="touchmove"?[this]:[]}getPredictedEvents(){throw new Error("getPredictedEvents is not supported!")}}});var Oe,lc=p(()=>{ya();Oe=class extends nr{constructor(){super(...arguments),this.DOM_DELTA_PIXEL=0,this.DOM_DELTA_LINE=1,this.DOM_DELTA_PAGE=2}};Oe.DOM_DELTA_PIXEL=0;Oe.DOM_DELTA_LINE=1;Oe.DOM_DELTA_PAGE=2});var PC,BC,Xs,ba,Kg=p(()=>{Xt();xe();gt();ac();ya();uc();lc();PC=2048,BC=new et,Xs=new et,ba=class{constructor(t){this.dispatch=new ht,this.moveOnAll=!1,this.enableGlobalMoveEvents=!0,this.mappingState={trackingData:{}},this.eventPool=new Map,this._allInteractiveElements=[],this._hitElements=[],this._isPointerMoveEvent=!1,this.rootTarget=t,this.hitPruneFn=this.hitPruneFn.bind(this),this.hitTestFn=this.hitTestFn.bind(this),this.mapPointerDown=this.mapPointerDown.bind(this),this.mapPointerMove=this.mapPointerMove.bind(this),this.mapPointerOut=this.mapPointerOut.bind(this),this.mapPointerOver=this.mapPointerOver.bind(this),this.mapPointerUp=this.mapPointerUp.bind(this),this.mapPointerUpOutside=this.mapPointerUpOutside.bind(this),this.mapWheel=this.mapWheel.bind(this),this.mappingTable={},this.addEventMapping("pointerdown",this.mapPointerDown),this.addEventMapping("pointermove",this.mapPointerMove),this.addEventMapping("pointerout",this.mapPointerOut),this.addEventMapping("pointerleave",this.mapPointerOut),this.addEventMapping("pointerover",this.mapPointerOver),this.addEventMapping("pointerup",this.mapPointerUp),this.addEventMapping("pointerupoutside",this.mapPointerUpOutside),this.addEventMapping("wheel",this.mapWheel)}addEventMapping(t,e){this.mappingTable[t]||(this.mappingTable[t]=[]),this.mappingTable[t].push({fn:e,priority:0}),this.mappingTable[t].sort((i,s)=>i.priority-s.priority)}dispatchEvent(t,e){t.propagationStopped=!1,t.propagationImmediatelyStopped=!1,this.propagate(t,e),this.dispatch.emit(e||t.type,t)}mapEvent(t){if(!this.rootTarget)return;let e=this.mappingTable[t.type];if(e)for(let i=0,s=e.length;i=0;s--)if(t.currentTarget=i[s],this.notifyTarget(t,e),t.propagationStopped||t.propagationImmediatelyStopped)return}}all(t,e,i=this._allInteractiveElements){if(i.length===0)return;t.eventPhase=t.BUBBLING_PHASE;let s=Array.isArray(e)?e:[e];for(let n=i.length-1;n>=0;n--)s.forEach(o=>{t.currentTarget=i[n],this.notifyTarget(t,o)})}propagationPath(t){let e=[t];for(let i=0;i=0;h--){let d=c[h],f=this.hitTestMoveRecursive(d,this._isInteractive(e)?e:d.eventMode,i,s,n,o||n(t,i));if(f){if(f.length>0&&!f[f.length-1].parent)continue;let m=t.isInteractive();(f.length>0||m)&&(m&&this._allInteractiveElements.push(t),f.push(t)),this._hitElements.length===0&&(this._hitElements=f),a=!0}}}let u=this._isInteractive(e),l=t.isInteractive();return l&&l&&this._allInteractiveElements.push(t),o||this._hitElements.length>0?null:a?this._hitElements:u&&!n(t,i)&&s(t,i)?l?[t]:[]:null}hitTestRecursive(t,e,i,s,n){if(this._interactivePrune(t)||n(t,i))return null;if((t.eventMode==="dynamic"||e==="dynamic")&&(Ue.pauseUpdate=!1),t.interactiveChildren&&t.children){let u=t.children,l=i;for(let c=u.length-1;c>=0;c--){let h=u[c],d=this.hitTestRecursive(h,this._isInteractive(e)?e:h.eventMode,l,s,n);if(d){if(d.length>0&&!d[d.length-1].parent)continue;let f=t.isInteractive();return(d.length>0||f)&&d.push(t),d}}}let o=this._isInteractive(e),a=t.isInteractive();return o&&s(t,i)?a?[t]:[]:null}_isInteractive(t){return t==="static"||t==="dynamic"}_interactivePrune(t){return!t||!t.visible||!t.renderable||!t.measurable||t.eventMode==="none"||t.eventMode==="passive"&&!t.interactiveChildren}hitPruneFn(t,e){if(t.hitArea&&(t.worldTransform.applyInverse(e,Xs),!t.hitArea.contains(Xs.x,Xs.y)))return!0;if(t.effects&&t.effects.length)for(let i=0;i0&&n!==e.target){let u=t.type==="mousemove"?"mouseout":"pointerout",l=this.createPointerEvent(t,u,n);if(this.dispatchEvent(l,"pointerout"),i&&this.dispatchEvent(l,"mouseout"),!e.composedPath().includes(n)){let c=this.createPointerEvent(t,"pointerleave",n);for(c.eventPhase=c.AT_TARGET;c.target&&!e.composedPath().includes(c.target);)c.currentTarget=c.target,this.notifyTarget(c),i&&this.notifyTarget(c,"mouseleave"),c.target=c.target.parent;this.freeEvent(c)}this.freeEvent(l)}if(n!==e.target){let u=t.type==="mousemove"?"mouseover":"pointerover",l=this.clonePointerEvent(e,u);this.dispatchEvent(l,"pointerover"),i&&this.dispatchEvent(l,"mouseover");let c=n?.parent;for(;c&&c!==this.rootTarget.parent&&c!==e.target;)c=c.parent;if(!c||c===this.rootTarget.parent){let d=this.clonePointerEvent(e,"pointerenter");for(d.eventPhase=d.AT_TARGET;d.target&&d.target!==n&&d.target!==this.rootTarget.parent;)d.currentTarget=d.target,this.notifyTarget(d),i&&this.notifyTarget(d,"mouseenter"),d.target=d.target.parent;this.freeEvent(d)}this.freeEvent(l)}let o=[],a=this.enableGlobalMoveEvents??!0;this.moveOnAll?o.push("pointermove"):this.dispatchEvent(e,"pointermove"),a&&o.push("globalpointermove"),e.pointerType==="touch"&&(this.moveOnAll?o.splice(1,0,"touchmove"):this.dispatchEvent(e,"touchmove"),a&&o.push("globaltouchmove")),i&&(this.moveOnAll?o.splice(1,0,"mousemove"):this.dispatchEvent(e,"mousemove"),a&&o.push("globalmousemove"),this.cursor=e.target?.cursor),o.length>0&&this.all(e,o),this._allInteractiveElements.length=0,this._hitElements.length=0,s.overTargets=e.composedPath(),this.freeEvent(e)}mapPointerOver(t){if(!(t instanceof Jt)){z("EventBoundary cannot map a non-pointer event as a pointer event");return}let e=this.trackingData(t.pointerId),i=this.createPointerEvent(t),s=i.pointerType==="mouse"||i.pointerType==="pen";this.dispatchEvent(i,"pointerover"),s&&this.dispatchEvent(i,"mouseover"),i.pointerType==="mouse"&&(this.cursor=i.target?.cursor);let n=this.clonePointerEvent(i,"pointerenter");for(n.eventPhase=n.AT_TARGET;n.target&&n.target!==this.rootTarget.parent;)n.currentTarget=n.target,this.notifyTarget(n),s&&this.notifyTarget(n,"mouseenter"),n.target=n.target.parent;e.overTargets=i.composedPath(),this.freeEvent(i),this.freeEvent(n)}mapPointerOut(t){if(!(t instanceof Jt)){z("EventBoundary cannot map a non-pointer event as a pointer event");return}let e=this.trackingData(t.pointerId);if(e.overTargets){let i=t.pointerType==="mouse"||t.pointerType==="pen",s=this.findMountedTarget(e.overTargets),n=this.createPointerEvent(t,"pointerout",s);this.dispatchEvent(n),i&&this.dispatchEvent(n,"mouseout");let o=this.createPointerEvent(t,"pointerleave",s);for(o.eventPhase=o.AT_TARGET;o.target&&o.target!==this.rootTarget.parent;)o.currentTarget=o.target,this.notifyTarget(o),i&&this.notifyTarget(o,"mouseleave"),o.target=o.target.parent;e.overTargets=null,this.freeEvent(n),this.freeEvent(o)}this.cursor=null}mapPointerUp(t){if(!(t instanceof Jt)){z("EventBoundary cannot map a non-pointer event as a pointer event");return}let e=performance.now(),i=this.createPointerEvent(t);if(this.dispatchEvent(i,"pointerup"),i.pointerType==="touch")this.dispatchEvent(i,"touchend");else if(i.pointerType==="mouse"||i.pointerType==="pen"){let a=i.button===2;this.dispatchEvent(i,a?"rightup":"mouseup")}let s=this.trackingData(t.pointerId),n=this.findMountedTarget(s.pressTargetsByButton[t.button]),o=n;if(n&&!i.composedPath().includes(n)){let a=n;for(;a&&!i.composedPath().includes(a);){if(i.currentTarget=a,this.notifyTarget(i,"pointerupoutside"),i.pointerType==="touch")this.notifyTarget(i,"touchendoutside");else if(i.pointerType==="mouse"||i.pointerType==="pen"){let u=i.button===2;this.notifyTarget(i,u?"rightupoutside":"mouseupoutside")}a=a.parent}delete s.pressTargetsByButton[t.button],o=a}if(o){let a=this.clonePointerEvent(i,"click");a.target=o,a.path=null,s.clicksByButton[t.button]||(s.clicksByButton[t.button]={clickCount:0,target:a.target,timeStamp:e});let u=s.clicksByButton[t.button];if(u.target===a.target&&e-u.timeStamp<200?++u.clickCount:u.clickCount=1,u.target=a.target,u.timeStamp=e,a.detail=u.clickCount,a.pointerType==="mouse"){let l=a.button===2;this.dispatchEvent(a,l?"rightclick":"click")}else a.pointerType==="touch"&&this.dispatchEvent(a,"tap");this.dispatchEvent(a,"pointertap"),this.freeEvent(a)}this.freeEvent(i)}mapPointerUpOutside(t){if(!(t instanceof Jt)){z("EventBoundary cannot map a non-pointer event as a pointer event");return}let e=this.trackingData(t.pointerId),i=this.findMountedTarget(e.pressTargetsByButton[t.button]),s=this.createPointerEvent(t);if(i){let n=i;for(;n;)s.currentTarget=n,this.notifyTarget(s,"pointerupoutside"),s.pointerType==="touch"?this.notifyTarget(s,"touchendoutside"):(s.pointerType==="mouse"||s.pointerType==="pen")&&this.notifyTarget(s,s.button===2?"rightupoutside":"mouseupoutside"),n=n.parent;delete e.pressTargetsByButton[t.button]}this.freeEvent(s)}mapWheel(t){if(!(t instanceof Oe)){z("EventBoundary cannot map a non-wheel event as a wheel event");return}let e=this.createWheelEvent(t);this.dispatchEvent(e),this.freeEvent(e)}findMountedTarget(t){if(!t)return null;let e=t[0];for(let i=1;i{D();Kg();ac();uc();lc();MC=1,FC={touchstart:"pointerdown",touchend:"pointerup",touchendoutside:"pointerupoutside",touchmove:"pointermove",touchcancel:"pointercancel"},hc=class cc{constructor(t){this.supportsTouchEvents="ontouchstart"in globalThis,this.supportsPointerEvents=!!globalThis.PointerEvent,this.domElement=null,this.resolution=1,this.renderer=t,this.rootBoundary=new ba(null),Ue.init(this),this.autoPreventDefault=!0,this._eventsAdded=!1,this._rootPointerEvent=new Jt(null),this._rootWheelEvent=new Oe(null),this.cursorStyles={default:"inherit",pointer:"pointer"},this.features=new Proxy({...cc.defaultEventFeatures},{set:(e,i,s)=>(i==="globalMove"&&(this.rootBoundary.enableGlobalMoveEvents=s),e[i]=s,!0)}),this._onPointerDown=this._onPointerDown.bind(this),this._onPointerMove=this._onPointerMove.bind(this),this._onPointerUp=this._onPointerUp.bind(this),this._onPointerOverOut=this._onPointerOverOut.bind(this),this.onWheel=this.onWheel.bind(this)}static get defaultEventMode(){return this._defaultEventMode}init(t){let{canvas:e,resolution:i}=this.renderer;this.setTargetElement(e),this.resolution=i,cc._defaultEventMode=t.eventMode??"passive",Object.assign(this.features,t.eventFeatures??{}),this.rootBoundary.enableGlobalMoveEvents=this.features.globalMove}resolutionChange(t){this.resolution=t}destroy(){this.setTargetElement(null),this.renderer=null,this._currentCursor=null}setCursor(t){t||(t="default");let e=!0;if(globalThis.OffscreenCanvas&&this.domElement instanceof OffscreenCanvas&&(e=!1),this._currentCursor===t)return;this._currentCursor=t;let i=this.cursorStyles[t];if(i)switch(typeof i){case"string":e&&(this.domElement.style.cursor=i);break;case"function":i(t);break;case"object":e&&Object.assign(this.domElement.style,i);break}else e&&typeof t=="string"&&!Object.prototype.hasOwnProperty.call(this.cursorStyles,t)&&(this.domElement.style.cursor=t)}get pointer(){return this._rootPointerEvent}_onPointerDown(t){if(!this.features.click)return;this.rootBoundary.rootTarget=this.renderer.lastObjectRendered;let e=this._normalizeToPointerData(t);this.autoPreventDefault&&e[0].isNormalized&&(t.cancelable||!("cancelable"in t))&&t.preventDefault();for(let i=0,s=e.length;i0&&(e=t.composedPath()[0]);let i=e!==this.domElement?"outside":"",s=this._normalizeToPointerData(t);for(let n=0,o=s.length;n"u"&&(n.button=0),typeof n.buttons>"u"&&(n.buttons=1),typeof n.isPrimary>"u"&&(n.isPrimary=t.touches.length===1&&t.type==="touchstart"),typeof n.width>"u"&&(n.width=n.radiusX||1),typeof n.height>"u"&&(n.height=n.radiusY||1),typeof n.tiltX>"u"&&(n.tiltX=0),typeof n.tiltY>"u"&&(n.tiltY=0),typeof n.pointerType>"u"&&(n.pointerType="touch"),typeof n.pointerId>"u"&&(n.pointerId=n.identifier||0),typeof n.pressure>"u"&&(n.pressure=n.force||.5),typeof n.twist>"u"&&(n.twist=0),typeof n.tangentialPressure>"u"&&(n.tangentialPressure=0),typeof n.layerX>"u"&&(n.layerX=n.offsetX=n.clientX),typeof n.layerY>"u"&&(n.layerY=n.offsetY=n.clientY),n.isNormalized=!0,n.type=t.type,e.push(n)}else if(!globalThis.MouseEvent||t instanceof MouseEvent&&(!this.supportsPointerEvents||!(t instanceof globalThis.PointerEvent))){let i=t;typeof i.isPrimary>"u"&&(i.isPrimary=!0),typeof i.width>"u"&&(i.width=1),typeof i.height>"u"&&(i.height=1),typeof i.tiltX>"u"&&(i.tiltX=0),typeof i.tiltY>"u"&&(i.tiltY=0),typeof i.pointerType>"u"&&(i.pointerType="mouse"),typeof i.pointerId>"u"&&(i.pointerId=MC),typeof i.pressure>"u"&&(i.pressure=.5),typeof i.twist>"u"&&(i.twist=0),typeof i.tangentialPressure>"u"&&(i.tangentialPressure=0),i.isNormalized=!0,e.push(i)}else e.push(t);return e}normalizeWheelEvent(t){let e=this._rootWheelEvent;return this._transferMouseData(e,t),e.deltaX=t.deltaX,e.deltaY=t.deltaY,e.deltaZ=t.deltaZ,e.deltaMode=t.deltaMode,this.mapPositionToPoint(e.screen,t.clientX,t.clientY),e.global.copyFrom(e.screen),e.offset.copyFrom(e.screen),e.nativeEvent=t,e.type=t.type,e}_bootstrapEvent(t,e){return t.originalEvent=null,t.nativeEvent=e,t.pointerId=e.pointerId,t.width=e.width,t.height=e.height,t.isPrimary=e.isPrimary,t.pointerType=e.pointerType,t.pressure=e.pressure,t.tangentialPressure=e.tangentialPressure,t.tiltX=e.tiltX,t.tiltY=e.tiltY,t.twist=e.twist,this._transferMouseData(t,e),this.mapPositionToPoint(t.screen,e.clientX,e.clientY),t.global.copyFrom(t.screen),t.offset.copyFrom(t.screen),t.isTrusted=e.isTrusted,t.type==="pointerleave"&&(t.type="pointerout"),t.type.startsWith("mouse")&&(t.type=t.type.replace("mouse","pointer")),t.type.startsWith("touch")&&(t.type=FC[t.type]||t.type),t}_transferMouseData(t,e){t.isTrusted=e.isTrusted,t.srcElement=e.srcElement,t.timeStamp=performance.now(),t.type=e.type,t.altKey=e.altKey,t.button=e.button,t.buttons=e.buttons,t.client.x=e.clientX,t.client.y=e.clientY,t.ctrlKey=e.ctrlKey,t.metaKey=e.metaKey,t.movement.x=e.movementX,t.movement.y=e.movementY,t.page.x=e.pageX,t.page.y=e.pageY,t.relatedTarget=null,t.shiftKey=e.shiftKey}};hc.extension={name:"events",type:[b.WebGLSystem,b.CanvasSystem,b.WebGPUSystem],priority:-1};hc.defaultEventFeatures={move:!0,globalMove:!0,click:!0,wheel:!0};va=hc});var qg,Zg=p(()=>{fc();ma();qg={onclick:null,onmousedown:null,onmouseenter:null,onmouseleave:null,onmousemove:null,onglobalmousemove:null,onmouseout:null,onmouseover:null,onmouseup:null,onmouseupoutside:null,onpointercancel:null,onpointerdown:null,onpointerenter:null,onpointerleave:null,onpointermove:null,onglobalpointermove:null,onpointerout:null,onpointerover:null,onpointertap:null,onpointerup:null,onpointerupoutside:null,onrightclick:null,onrightdown:null,onrightup:null,onrightupoutside:null,ontap:null,ontouchcancel:null,ontouchend:null,ontouchendoutside:null,ontouchmove:null,onglobaltouchmove:null,ontouchstart:null,onwheel:null,get interactive(){return this.eventMode==="dynamic"||this.eventMode==="static"},set interactive(r){this.eventMode=r?"static":"passive"},_internalEventMode:void 0,get eventMode(){return this._internalEventMode??va.defaultEventMode},set eventMode(r){this._internalEventMode=r},isInteractive(){return this.eventMode==="static"||this.eventMode==="dynamic"},interactiveChildren:!0,hitArea:null,addEventListener(r,t,e){let i=typeof e=="boolean"&&e||typeof e=="object"&&e.capture,s=typeof e=="object"?e.signal:void 0,n=typeof e=="object"?e.once===!0:!1,o=typeof t=="function"?void 0:t;r=i?`${r}capture`:r;let a=typeof t=="function"?t:t.handleEvent,u=this;s&&s.addEventListener("abort",()=>{u.off(r,a,o)}),n?u.once(r,a,o):u.on(r,a,o)},removeEventListener(r,t,e){let i=typeof e=="boolean"&&e||typeof e=="object"&&e.capture,s=typeof t=="function"?void 0:t;r=i?`${r}capture`:r,t=typeof t=="function"?t:t.handleEvent,this.off(r,t,s)},dispatchEvent(r){if(!(r instanceof br))throw new Error("Container cannot propagate events outside of the Federated Events API");return r.defaultPrevented=!1,r.path=null,r.target=this,r.manager.dispatchEvent(r),!r.defaultPrevented}}});var Qg=p(()=>{D();De();fc();Zg();H.add(va);it.mixin(qg)});var dc,Jg=p(()=>{"use strict";dc=(r=>(r[r.Low=0]="Low",r[r.Normal=1]="Normal",r[r.High=2]="High",r))(dc||{})});var tx,ex=p(()=>{"use strict";tx={createCanvas:(r,t)=>{let e=document.createElement("canvas");return e.width=r,e.height=t,e},getCanvasRenderingContext2D:()=>CanvasRenderingContext2D,getWebGLRenderingContext:()=>WebGLRenderingContext,getNavigator:()=>navigator,getBaseUrl:()=>document.baseURI??window.location.href,getFontFaceSet:()=>document.fonts,fetch:(r,t)=>fetch(r,t),parseXML:r=>new DOMParser().parseFromString(r,"text/xml")}});var rx,Q,Pt=p(()=>{ex();rx=tx,Q={get(){return rx},set(r){rx=r}}});function Pe(r){if(typeof r!="string")throw new TypeError(`Path must be a string. Received ${JSON.stringify(r)}`)}function $s(r){return r.split("?")[0].split("#")[0]}function RC(r){return r.replace(/[.*+?^${}()|[\\]\\\\]/g,"\\\\$&")}function kC(r,t,e){return r.replace(new RegExp(RC(t),"g"),e)}function GC(r,t){let e="",i=0,s=-1,n=0,o=-1;for(let a=0;a<=r.length;++a){if(a2){let u=e.lastIndexOf("/");if(u!==e.length-1){u===-1?(e="",i=0):(e=e.slice(0,u),i=e.length-1-e.lastIndexOf("/")),s=a,n=0;continue}}else if(e.length===2||e.length===1){e="",i=0,s=a,n=0;continue}}t&&(e.length>0?e+="/..":e="..",i=2)}else e.length>0?e+=`/${r.slice(s+1,a)}`:e=r.slice(s+1,a),i=a-s-1;s=a,n=0}else o===46&&n!==-1?++n:n=-1}return e}var Zr,pc=p(()=>{Pt();Zr={toPosix(r){return kC(r,"\\\\","/")},isUrl(r){return/^https?:/.test(this.toPosix(r))},isDataUrl(r){return/^data:([a-z]+\\/[a-z0-9-+.]+(;[a-z0-9-.!#$%*+.{}|~`]+=[a-z0-9-.!#$%*+.{}()_|~`]+)*)?(;base64)?,([a-z0-9!$&\',()*+;=\\-._~:@\\/?%\\s<>]*?)$/i.test(r)},isBlobUrl(r){return r.startsWith("blob:")},hasProtocol(r){return/^[^/:]+:/.test(this.toPosix(r))},getProtocol(r){Pe(r),r=this.toPosix(r);let t=/^file:\\/\\/\\//.exec(r);if(t)return t[0];let e=/^[^/:]+:\\/{0,2}/.exec(r);return e?e[0]:""},toAbsolute(r,t,e){if(Pe(r),this.isDataUrl(r)||this.isBlobUrl(r))return r;let i=$s(this.toPosix(t??Q.get().getBaseUrl())),s=$s(this.toPosix(e??this.rootname(i)));return r=this.toPosix(r),r.startsWith("/")?Zr.join(s,r.slice(1)):this.isAbsolute(r)?r:this.join(i,r)},normalize(r){if(Pe(r),r.length===0)return".";if(this.isDataUrl(r)||this.isBlobUrl(r))return r;r=this.toPosix(r);let t="",e=r.startsWith("/");this.hasProtocol(r)&&(t=this.rootname(r),r=r.slice(t.length));let i=r.endsWith("/");return r=GC(r,!1),r.length>0&&i&&(r+="/"),e?`/${r}`:t+r},isAbsolute(r){return Pe(r),r=this.toPosix(r),this.hasProtocol(r)?!0:r.startsWith("/")},join(...r){if(r.length===0)return".";let t;for(let e=0;e0)if(t===void 0)t=i;else{let s=r[e-1]??"";this.joinExtensions.includes(this.extname(s).toLowerCase())?t+=`/../${i}`:t+=`/${i}`}}return t===void 0?".":this.normalize(t)},dirname(r){if(Pe(r),r.length===0)return".";r=this.toPosix(r);let t=r.charCodeAt(0),e=t===47,i=-1,s=!0,n=this.getProtocol(r),o=r;r=r.slice(n.length);for(let a=r.length-1;a>=1;--a)if(t=r.charCodeAt(a),t===47){if(!s){i=a;break}}else s=!1;return i===-1?e?"/":this.isUrl(o)?n+r:n:e&&i===1?"//":n+r.slice(0,i)},rootname(r){Pe(r),r=this.toPosix(r);let t="";if(r.startsWith("/")?t="/":t=this.getProtocol(r),this.isUrl(r)){let e=r.indexOf("/",t.length);e!==-1?t=r.slice(0,e):t=r,t.endsWith("/")||(t+="/")}return t},basename(r,t){Pe(r),t&&Pe(t),r=$s(this.toPosix(r));let e=0,i=-1,s=!0,n;if(t!==void 0&&t.length>0&&t.length<=r.length){if(t.length===r.length&&t===r)return"";let o=t.length-1,a=-1;for(n=r.length-1;n>=0;--n){let u=r.charCodeAt(n);if(u===47){if(!s){e=n+1;break}}else a===-1&&(s=!1,a=n+1),o>=0&&(u===t.charCodeAt(o)?--o===-1&&(i=n):(o=-1,i=a))}return e===i?i=a:i===-1&&(i=r.length),r.slice(e,i)}for(n=r.length-1;n>=0;--n)if(r.charCodeAt(n)===47){if(!s){e=n+1;break}}else i===-1&&(s=!1,i=n+1);return i===-1?"":r.slice(e,i)},extname(r){Pe(r),r=$s(this.toPosix(r));let t=-1,e=0,i=-1,s=!0,n=0;for(let o=r.length-1;o>=0;--o){let a=r.charCodeAt(o);if(a===47){if(!s){e=o+1;break}continue}i===-1&&(s=!1,i=o+1),a===46?t===-1?t=o:n!==1&&(n=1):t!==-1&&(n=-1)}return t===-1||i===-1||n===0||n===1&&t===i-1&&t===e+1?"":r.slice(t,i)},parse(r){Pe(r);let t={root:"",dir:"",base:"",ext:"",name:""};if(r.length===0)return t;r=$s(this.toPosix(r));let e=r.charCodeAt(0),i=this.isAbsolute(r),s,n="";t.root=this.rootname(r),i||this.hasProtocol(r)?s=1:s=0;let o=-1,a=0,u=-1,l=!0,c=r.length-1,h=0;for(;c>=s;--c){if(e=r.charCodeAt(c),e===47){if(!l){a=c+1;break}continue}u===-1&&(l=!1,u=c+1),e===46?o===-1?o=c:h!==1&&(h=1):o!==-1&&(h=-1)}return o===-1||u===-1||h===0||h===1&&o===u-1&&o===a+1?u!==-1&&(a===0&&i?t.base=t.name=r.slice(1,u):t.base=t.name=r.slice(a,u)):(a===0&&i?(t.name=r.slice(1,o),t.base=r.slice(1,u)):(t.name=r.slice(a,o),t.base=r.slice(a,u)),t.ext=r.slice(o,u)),t.dir=this.dirname(r),n&&(t.dir=n+t.dir),t},sep:"/",delimiter:":",joinExtensions:[".html"]}});var Tr,mc=p(()=>{"use strict";Tr=(r,t,e=!1)=>(Array.isArray(r)||(r=[r]),t?r.map(i=>typeof i=="string"||e?t(i):i):r)});function ix(r,t,e,i,s){let n=t[e];for(let o=0;o{let o=n.substring(1,n.length-1).split(",");s.push(o)}),ix(r,s,0,e,i)}else i.push(r);return i}var nx=p(()=>{"use strict"});var gc,ox=p(()=>{"use strict";gc=r=>!Array.isArray(r)});function IC(r){return r.split(".").pop().split("?").shift().split("#").shift()}var js,ax=p(()=>{gt();pc();mc();nx();ox();js=class{constructor(){this._defaultBundleIdentifierOptions={connector:"-",createBundleAssetId:(t,e)=>`${t}${this._bundleIdConnector}${e}`,extractAssetIdFromBundle:(t,e)=>e.replace(`${t}${this._bundleIdConnector}`,"")},this._bundleIdConnector=this._defaultBundleIdentifierOptions.connector,this._createBundleAssetId=this._defaultBundleIdentifierOptions.createBundleAssetId,this._extractAssetIdFromBundle=this._defaultBundleIdentifierOptions.extractAssetIdFromBundle,this._assetMap={},this._preferredOrder=[],this._parsers=[],this._resolverHash={},this._bundles={}}setBundleIdentifier(t){if(this._bundleIdConnector=t.connector??this._bundleIdConnector,this._createBundleAssetId=t.createBundleAssetId??this._createBundleAssetId,this._extractAssetIdFromBundle=t.extractAssetIdFromBundle??this._extractAssetIdFromBundle,this._extractAssetIdFromBundle("foo",this._createBundleAssetId("foo","bar"))!=="bar")throw new Error("[Resolver] GenerateBundleAssetId are not working correctly")}prefer(...t){t.forEach(e=>{this._preferredOrder.push(e),e.priority||(e.priority=Object.keys(e.params))}),this._resolverHash={}}set basePath(t){this._basePath=t}get basePath(){return this._basePath}set rootPath(t){this._rootPath=t}get rootPath(){return this._rootPath}get parsers(){return this._parsers}reset(){this.setBundleIdentifier(this._defaultBundleIdentifierOptions),this._assetMap={},this._preferredOrder=[],this._resolverHash={},this._rootPath=null,this._basePath=null,this._manifest=null,this._bundles={},this._defaultSearchParams=null}setDefaultSearchParams(t){if(typeof t=="string")this._defaultSearchParams=t;else{let e=t;this._defaultSearchParams=Object.keys(e).map(i=>`${encodeURIComponent(i)}=${encodeURIComponent(e[i])}`).join("&")}}getAlias(t){let{alias:e,src:i}=t;return Tr(e||i,n=>typeof n=="string"?n:Array.isArray(n)?n.map(o=>o?.src??o):n?.src?n.src:n,!0)}addManifest(t){this._manifest&&z("[Resolver] Manifest already exists, this will be overwritten"),this._manifest=t,t.bundles.forEach(e=>{this.addBundle(e.name,e.assets)})}addBundle(t,e){let i=[],s=e;Array.isArray(e)||(s=Object.entries(e).map(([n,o])=>typeof o=="string"||Array.isArray(o)?{alias:n,src:o}:{alias:n,...o})),s.forEach(n=>{let o=n.src,a=n.alias,u;if(typeof a=="string"){let l=this._createBundleAssetId(t,a);i.push(l),u=[a,l]}else{let l=a.map(c=>this._createBundleAssetId(t,c));i.push(...l),u=[...a,...l]}this.add({...n,alias:u,src:o})}),this._bundles[t]=i}add(t){let e=[];Array.isArray(t)?e.push(...t):e.push(t);let i;i=n=>{this.hasKey(n)&&z(`[Resolver] already has key: ${n} overwriting`)},Tr(e).forEach(n=>{let{src:o}=n,{data:a,format:u,loadParser:l}=n,c=Tr(o).map(f=>typeof f=="string"?sx(f):Array.isArray(f)?f:[f]),h=this.getAlias(n);Array.isArray(h)?h.forEach(i):i(h);let d=[];c.forEach(f=>{f.forEach(m=>{let g={};if(typeof m!="object"){g.src=m;for(let x=0;x{this._assetMap[f]=d})})}resolveBundle(t){let e=gc(t);t=Tr(t);let i={};return t.forEach(s=>{let n=this._bundles[s];if(n){let o=this.resolve(n),a={};for(let u in o){let l=o[u];a[this._extractAssetIdFromBundle(s,u)]=l}i[s]=a}}),e?i[t[0]]:i}resolveUrl(t){let e=this.resolve(t);if(typeof t!="string"){let i={};for(let s in e)i[s]=e[s].src;return i}return e.src}resolve(t){let e=gc(t);t=Tr(t);let i={};return t.forEach(s=>{if(!this._resolverHash[s])if(this._assetMap[s]){let n=this._assetMap[s],o=this._getPreferredOrder(n);o?.priority.forEach(a=>{o.params[a].forEach(u=>{let l=n.filter(c=>c[a]?c[a]===u:!1);l.length&&(n=l)})}),this._resolverHash[s]=n[0]}else this._resolverHash[s]=this._buildResolvedAsset({alias:[s],src:s},{});i[s]=this._resolverHash[s]}),e?i[t[0]]:i}hasKey(t){return!!this._assetMap[t]}hasBundle(t){return!!this._bundles[t]}_getPreferredOrder(t){for(let e=0;en.params.format.includes(i.format));if(s)return s}return this._preferredOrder[0]}_appendDefaultSearchParams(t){if(!this._defaultSearchParams)return t;let e=/\\?/.test(t)?"&":"?";return`${t}${e}${this._defaultSearchParams}`}_buildResolvedAsset(t,e){let{aliases:i,data:s,loadParser:n,format:o}=e;return(this._basePath||this._rootPath)&&(t.src=Zr.toAbsolute(t.src,this._basePath,this._rootPath)),t.alias=i??t.alias??[t.src],t.src=this._appendDefaultSearchParams(t.src),t.data={...s||{},...t.data},t.loadParser=n??t.loadParser,t.format=o??t.format??IC(t.src),t}};js.RETINA_PREFIX=/@([0-9\\.]+)x/});var xc,ux=p(()=>{"use strict";xc=(r,t)=>{let e=t.split("?")[1];return e&&(r+=`?${e}`),r}});var lx,_c,cx=p(()=>{Yt();dt();lx=class Ys{constructor(t,e){this.linkedSheets=[],this._texture=t instanceof I?t:null,this.textureSource=t.source,this.textures={},this.animations={},this.data=e;let i=parseFloat(e.meta.scale);i?(this.resolution=i,t.source.resolution=this.resolution):this.resolution=t.source._resolution,this._frames=this.data.frames,this._frameKeys=Object.keys(this._frames),this._batchIndex=0,this._callback=null}parse(){return new Promise(t=>{this._callback=t,this._batchIndex=0,this._frameKeys.length<=Ys.BATCH_SIZE?(this._processFrames(0),this._processAnimations(),this._parseComplete()):this._nextBatch()})}_processFrames(t){let e=t,i=Ys.BATCH_SIZE;for(;e-t{this._batchIndex*Ys.BATCH_SIZE{i[s]=t}),Object.keys(t.textures).forEach(s=>{i[s]=t.textures[s]}),!e){let s=Zr.dirname(r[0]);t.linkedSheets.forEach((n,o)=>{let a=hx([`${s}/${t.data.meta.related_multi_packs[o]}`],n,!0);Object.assign(i,a)})}return i}var UC,fx,dx=p(()=>{Jg();ax();ux();D();dt();pc();cx();UC=["jpg","png","jpeg","avif","webp","basis","etc2","bc7","bc6h","bc5","bc4","bc3","bc2","bc1","eac","astc"];fx={extension:b.Asset,cache:{test:r=>r instanceof _c,getCacheableAssets:(r,t)=>hx(r,t,!1)},resolver:{extension:{type:b.ResolveParser,name:"resolveSpritesheet"},test:r=>{let e=r.split("?")[0].split("."),i=e.pop(),s=e.pop();return i==="json"&&UC.includes(s)},parse:r=>{let t=r.split(".");return{resolution:parseFloat(js.RETINA_PREFIX.exec(r)?.[1]??"1"),format:t[t.length-2],src:r}}},loader:{name:"spritesheetLoader",extension:{type:b.LoadParser,priority:dc.Normal,name:"spritesheetLoader"},async testParse(r,t){return Zr.extname(t.src).toLowerCase()===".json"&&!!r.frames},async parse(r,t,e){let{texture:i,imageFilename:s}=t?.data??{},n=Zr.dirname(t.src);n&&n.lastIndexOf("/")!==n.length-1&&(n+="/");let o;if(i instanceof I)o=i;else{let l=xc(n+(s??r.meta.image),t.src);o=(await e.load([l]))[l]}let a=new _c(o.source,r);await a.parse();let u=r?.meta?.related_multi_packs;if(Array.isArray(u)){let l=[];for(let h of u){if(typeof h!="string")continue;let d=n+h;t.data?.ignoreMultiPack||(d=xc(d,t.src),l.push(e.load({src:d,data:{ignoreMultiPack:!0}})))}let c=await Promise.all(l);a.linkedSheets=c,c.forEach(h=>{h.linkedSheets=[a].concat(a.linkedSheets.filter(d=>d!==h))})}return a},async unload(r,t,e){await e.unload(r.textureSource._sourceOrigin),r.destroy(!1)}}}});var Ta=p(()=>{D();dx();H.add(fx)});function Qr(r,t,e,i){let{width:s,height:n}=e.orig,o=e.trim;if(o){let a=o.width,u=o.height;r.minX=o.x-t._x*s-i,r.maxX=r.minX+a,r.minY=o.y-t._y*n-i,r.maxY=r.minY+u}else r.minX=-t._x*s-i,r.maxX=r.minX+s,r.minY=-t._y*n-i,r.maxY=r.minY+n}var Sa=p(()=>{"use strict"});var Sr,wa=p(()=>{ce();De();Sr=class extends it{constructor(){super(...arguments),this.canBundle=!0,this.allowChildren=!1,this._roundPixels=0,this._lastUsed=-1,this._bounds=new ft(0,1,0,0),this._boundsDirty=!0}get bounds(){return this._boundsDirty?(this.updateBounds(),this._boundsDirty=!1,this._bounds):this._bounds}get roundPixels(){return!!this._roundPixels}set roundPixels(t){this._roundPixels=t?1:0}containsPoint(t){let e=this.bounds,{x:i,y:s}=t;return i>=e.minX&&i<=e.maxX&&s>=e.minY&&s<=e.maxY}onViewUpdate(){if(this._didViewChangeTick++,this._boundsDirty=!0,this.didViewUpdate)return;this.didViewUpdate=!0;let t=this.renderGroup||this.parentRenderGroup;t&&t.onChildViewUpdate(this)}destroy(t){super.destroy(t),this._bounds=null}}});var Jr,yc=p(()=>{sa();dt();Sa();vt();wa();Jr=class r extends Sr{constructor(t=I.EMPTY){t instanceof I&&(t={texture:t});let{texture:e=I.EMPTY,anchor:i,roundPixels:s,width:n,height:o,...a}=t;super({label:"Sprite",...a}),this.renderPipeId="sprite",this.batched=!0,this._visualBounds={minX:0,maxX:1,minY:0,maxY:0},this._anchor=new zt({_onUpdate:()=>{this.onViewUpdate()}}),i?this.anchor=i:e.defaultAnchor&&(this.anchor=e.defaultAnchor),this.texture=e,this.allowChildren=!1,this.roundPixels=s??!1,n!==void 0&&(this.width=n),o!==void 0&&(this.height=o)}static from(t,e=!1){return t instanceof I?new r(t):new r(I.from(t,e))}set texture(t){t||(t=I.EMPTY);let e=this._texture;e!==t&&(e&&e.dynamic&&e.off("update",this.onViewUpdate,this),t.dynamic&&t.on("update",this.onViewUpdate,this),this._texture=t,this._width&&this._setWidth(this._width,this._texture.orig.width),this._height&&this._setHeight(this._height,this._texture.orig.height),this.onViewUpdate())}get texture(){return this._texture}get visualBounds(){return Qr(this._visualBounds,this._anchor,this._texture,0),this._visualBounds}get sourceBounds(){return X("8.6.1","Sprite.sourceBounds is deprecated, use visualBounds instead."),this.visualBounds}updateBounds(){let t=this._anchor,e=this._texture,i=this._bounds,{width:s,height:n}=e.orig;i.minX=-t._x*s,i.maxX=i.minX+s,i.minY=-t._y*n,i.maxY=i.minY+n}destroy(t=!1){if(super.destroy(t),typeof t=="boolean"?t:t?.texture){let i=typeof t=="boolean"?t:t?.textureSource;this._texture.destroy(i)}this._texture=null,this._visualBounds=null,this._bounds=null,this._anchor=null}get anchor(){return this._anchor}set anchor(t){typeof t=="number"?this._anchor.set(t):this._anchor.copyFrom(t)}get width(){return Math.abs(this.scale.x)*this._texture.orig.width}set width(t){this._setWidth(t,this._texture.orig.width),this._width=t}get height(){return Math.abs(this.scale.y)*this._texture.orig.height}set height(t){this._setHeight(t,this._texture.orig.height),this._height=t}getSize(t){return t||(t={}),t.width=Math.abs(this.scale.x)*this._texture.orig.width,t.height=Math.abs(this.scale.y)*this._texture.orig.height,t}setSize(t,e){typeof t=="object"?(e=t.height??t.width,t=t.width):e??(e=t),t!==void 0&&this._setWidth(t,this._texture.orig.width),e!==void 0&&this._setHeight(e,this._texture.orig.height)}}});function Ea(r,t,e){let i=OC;r.measurable=!0,yi(r,e,i),t.addBoundsMask(i),r.measurable=!1}var OC,bc=p(()=>{ce();Is();OC=new ft});function Ca(r,t,e){let i=he.get();r.measurable=!0;let s=Dt.get().identity(),n=px(r,e,s);vi(r,i,n),r.measurable=!1,t.addBoundsMask(i),Dt.return(s),he.return(i)}function px(r,t,e){return r?(r!==t&&(px(r.parent,t,e),r.updateLocalTransform(),e.append(r.localTransform)),e):(z("Mask bounds, renderable is not inside the root container"),e)}var vc=p(()=>{ha();Vr();gt()});var Ks,mx=p(()=>{D();yc();bc();vc();Ks=class{constructor(t){this.priority=0,this.inverse=!1,this.pipe="alphaMask",t?.mask&&this.init(t.mask)}init(t){this.mask=t,this.renderMaskToTexture=!(t instanceof Jr),this.mask.renderable=this.renderMaskToTexture,this.mask.includeInBuild=!this.renderMaskToTexture,this.mask.measurable=!1}reset(){this.mask.measurable=!0,this.mask=null}addBounds(t,e){this.inverse||Ea(this.mask,t,e)}addLocalBounds(t,e){Ca(this.mask,t,e)}containsPoint(t,e){let i=this.mask;return e(i,t)}destroy(){this.reset()}static test(t){return t instanceof Jr}};Ks.extension=b.MaskEffect});var qs,gx=p(()=>{D();qs=class{constructor(t){this.priority=0,this.pipe="colorMask",t?.mask&&this.init(t.mask)}init(t){this.mask=t}destroy(){}static test(t){return typeof t=="number"}};qs.extension=b.MaskEffect});var Zs,xx=p(()=>{D();De();bc();vc();Zs=class{constructor(t){this.priority=0,this.pipe="stencilMask",t?.mask&&this.init(t.mask)}init(t){this.mask=t,this.mask.includeInBuild=!1,this.mask.measurable=!1}reset(){this.mask.measurable=!0,this.mask.includeInBuild=!0,this.mask=null}addBounds(t,e){Ea(this.mask,t,e)}addLocalBounds(t,e){Ca(this.mask,t,e)}containsPoint(t,e){let i=this.mask;return e(i,t)}destroy(){this.reset()}static test(t){return t instanceof it}};Zs.extension=b.MaskEffect});var te,Ai=p(()=>{Pt();D();ne();te=class extends ut{constructor(t){t.resource||(t.resource=Q.get().createCanvas()),t.width||(t.width=t.resource.width,t.autoDensity||(t.width/=t.resolution)),t.height||(t.height=t.resource.height,t.autoDensity||(t.height/=t.resolution)),super(t),this.uploadMethodId="image",this.autoDensity=t.autoDensity,this.resizeCanvas(),this.transparent=!!t.transparent}resizeCanvas(){this.autoDensity&&(this.resource.style.width=`${this.width}px`,this.resource.style.height=`${this.height}px`),(this.resource.width!==this.pixelWidth||this.resource.height!==this.pixelHeight)&&(this.resource.width=this.pixelWidth,this.resource.height=this.pixelHeight)}resize(t=this.width,e=this.height,i=this._resolution){let s=super.resize(t,e,i);return s&&this.resizeCanvas(),s}static test(t){return globalThis.HTMLCanvasElement&&t instanceof HTMLCanvasElement||globalThis.OffscreenCanvas&&t instanceof OffscreenCanvas}get context2D(){return this._context2D||(this._context2D=this.resource.getContext("2d"))}};te.extension=b.TextureSource});var or,Aa=p(()=>{Pt();D();gt();ne();or=class extends ut{constructor(t){if(t.resource&&globalThis.HTMLImageElement&&t.resource instanceof HTMLImageElement){let e=Q.get().createCanvas(t.resource.width,t.resource.height);e.getContext("2d").drawImage(t.resource,0,0,t.resource.width,t.resource.height),t.resource=e,z("ImageSource: Image element passed, converting to canvas. Use CanvasSource instead.")}super(t),this.uploadMethodId="image",this.autoGarbageCollect=!0}static test(t){return globalThis.HTMLImageElement&&t instanceof HTMLImageElement||typeof ImageBitmap<"u"&&t instanceof ImageBitmap||globalThis.VideoFrame&&t instanceof VideoFrame}};or.extension=b.TextureSource});async function _x(){return Tc??(Tc=(async()=>{let t=document.createElement("canvas").getContext("webgl");if(!t)return"premultiply-alpha-on-upload";let e=await new Promise(o=>{let a=document.createElement("video");a.onloadeddata=()=>o(a),a.onerror=()=>o(null),a.autoplay=!1,a.crossOrigin="anonymous",a.preload="auto",a.src="data:video/webm;base64,GkXfo59ChoEBQveBAULygQRC84EIQoKEd2VibUKHgQJChYECGFOAZwEAAAAAAAHTEU2bdLpNu4tTq4QVSalmU6yBoU27i1OrhBZUrmtTrIHGTbuMU6uEElTDZ1OsggEXTbuMU6uEHFO7a1OsggG97AEAAAAAAABZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVSalmoCrXsYMPQkBNgIRMYXZmV0GETGF2ZkSJiEBEAAAAAAAAFlSua8yuAQAAAAAAAEPXgQFzxYgAAAAAAAAAAZyBACK1nIN1bmSIgQCGhVZfVlA5g4EBI+ODhAJiWgDglLCBArqBApqBAlPAgQFVsIRVuYEBElTDZ9Vzc9JjwItjxYgAAAAAAAAAAWfInEWjh0VOQ09ERVJEh49MYXZjIGxpYnZweC12cDlnyKJFo4hEVVJBVElPTkSHlDAwOjAwOjAwLjA0MDAwMDAwMAAAH0O2dcfngQCgwqGggQAAAIJJg0IAABAAFgA4JBwYSgAAICAAEb///4r+AAB1oZ2mm+6BAaWWgkmDQgAAEAAWADgkHBhKAAAgIABIQBxTu2uRu4+zgQC3iveBAfGCAXHwgQM=",a.load()});if(!e)return"premultiply-alpha-on-upload";let i=t.createTexture();t.bindTexture(t.TEXTURE_2D,i);let s=t.createFramebuffer();t.bindFramebuffer(t.FRAMEBUFFER,s),t.framebufferTexture2D(t.FRAMEBUFFER,t.COLOR_ATTACHMENT0,t.TEXTURE_2D,i,0),t.pixelStorei(t.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!1),t.pixelStorei(t.UNPACK_COLORSPACE_CONVERSION_WEBGL,t.NONE),t.texImage2D(t.TEXTURE_2D,0,t.RGBA,t.RGBA,t.UNSIGNED_BYTE,e);let n=new Uint8Array(4);return t.readPixels(0,0,1,1,t.RGBA,t.UNSIGNED_BYTE,n),t.deleteFramebuffer(s),t.deleteTexture(i),t.getExtension("WEBGL_lose_context")?.loseContext(),n[0]<=n[3]?"premultiplied-alpha":"premultiply-alpha-on-upload"})()),Tc}var Tc,yx=p(()=>{"use strict"});var Da,vx,Tx=p(()=>{D();Ws();yx();ne();Da=class bx extends ut{constructor(t){super(t),this.isReady=!1,this.uploadMethodId="video",t={...bx.defaultOptions,...t},this._autoUpdate=!0,this._isConnectedToTicker=!1,this._updateFPS=t.updateFPS||0,this._msToNextUpdate=0,this.autoPlay=t.autoPlay!==!1,this.alphaMode=t.alphaMode??"premultiply-alpha-on-upload",this._videoFrameRequestCallback=this._videoFrameRequestCallback.bind(this),this._videoFrameRequestCallbackHandle=null,this._load=null,this._resolve=null,this._reject=null,this._onCanPlay=this._onCanPlay.bind(this),this._onCanPlayThrough=this._onCanPlayThrough.bind(this),this._onError=this._onError.bind(this),this._onPlayStart=this._onPlayStart.bind(this),this._onPlayStop=this._onPlayStop.bind(this),this._onSeeked=this._onSeeked.bind(this),t.autoLoad!==!1&&this.load()}updateFrame(){if(!this.destroyed){if(this._updateFPS){let t=oe.shared.elapsedMS*this.resource.playbackRate;this._msToNextUpdate=Math.floor(this._msToNextUpdate-t)}(!this._updateFPS||this._msToNextUpdate<=0)&&(this._msToNextUpdate=this._updateFPS?Math.floor(1e3/this._updateFPS):0),this.isValid&&this.update()}}_videoFrameRequestCallback(){this.updateFrame(),this.destroyed?this._videoFrameRequestCallbackHandle=null:this._videoFrameRequestCallbackHandle=this.resource.requestVideoFrameCallback(this._videoFrameRequestCallback)}get isValid(){return!!this.resource.videoWidth&&!!this.resource.videoHeight}async load(){if(this._load)return this._load;let t=this.resource,e=this.options;return(t.readyState===t.HAVE_ENOUGH_DATA||t.readyState===t.HAVE_FUTURE_DATA)&&t.width&&t.height&&(t.complete=!0),t.addEventListener("play",this._onPlayStart),t.addEventListener("pause",this._onPlayStop),t.addEventListener("seeked",this._onSeeked),this._isSourceReady()?this._mediaReady():(e.preload||t.addEventListener("canplay",this._onCanPlay),t.addEventListener("canplaythrough",this._onCanPlayThrough),t.addEventListener("error",this._onError,!0)),this.alphaMode=await _x(),this._load=new Promise((i,s)=>{this.isValid?i(this):(this._resolve=i,this._reject=s,e.preloadTimeoutMs!==void 0&&(this._preloadTimeout=setTimeout(()=>{this._onError(new ErrorEvent(`Preload exceeded timeout of ${e.preloadTimeoutMs}ms`))})),t.load())}),this._load}_onError(t){this.resource.removeEventListener("error",this._onError,!0),this.emit("error",t),this._reject&&(this._reject(t),this._reject=null,this._resolve=null)}_isSourcePlaying(){let t=this.resource;return!t.paused&&!t.ended}_isSourceReady(){return this.resource.readyState>2}_onPlayStart(){this.isValid||this._mediaReady(),this._configureAutoUpdate()}_onPlayStop(){this._configureAutoUpdate()}_onSeeked(){this._autoUpdate&&!this._isSourcePlaying()&&(this._msToNextUpdate=0,this.updateFrame(),this._msToNextUpdate=0)}_onCanPlay(){this.resource.removeEventListener("canplay",this._onCanPlay),this._mediaReady()}_onCanPlayThrough(){this.resource.removeEventListener("canplaythrough",this._onCanPlay),this._preloadTimeout&&(clearTimeout(this._preloadTimeout),this._preloadTimeout=void 0),this._mediaReady()}_mediaReady(){let t=this.resource;this.isValid&&(this.isReady=!0,this.resize(t.videoWidth,t.videoHeight)),this._msToNextUpdate=0,this.updateFrame(),this._msToNextUpdate=0,this._resolve&&(this._resolve(this),this._resolve=null,this._reject=null),this._isSourcePlaying()?this._onPlayStart():this.autoPlay&&this.resource.play()}destroy(){this._configureAutoUpdate();let t=this.resource;t&&(t.removeEventListener("play",this._onPlayStart),t.removeEventListener("pause",this._onPlayStop),t.removeEventListener("seeked",this._onSeeked),t.removeEventListener("canplay",this._onCanPlay),t.removeEventListener("canplaythrough",this._onCanPlayThrough),t.removeEventListener("error",this._onError,!0),t.pause(),t.src="",t.load()),super.destroy()}get autoUpdate(){return this._autoUpdate}set autoUpdate(t){t!==this._autoUpdate&&(this._autoUpdate=t,this._configureAutoUpdate())}get updateFPS(){return this._updateFPS}set updateFPS(t){t!==this._updateFPS&&(this._updateFPS=t,this._configureAutoUpdate())}_configureAutoUpdate(){this._autoUpdate&&this._isSourcePlaying()?!this._updateFPS&&this.resource.requestVideoFrameCallback?(this._isConnectedToTicker&&(oe.shared.remove(this.updateFrame,this),this._isConnectedToTicker=!1,this._msToNextUpdate=0),this._videoFrameRequestCallbackHandle===null&&(this._videoFrameRequestCallbackHandle=this.resource.requestVideoFrameCallback(this._videoFrameRequestCallback))):(this._videoFrameRequestCallbackHandle!==null&&(this.resource.cancelVideoFrameCallback(this._videoFrameRequestCallbackHandle),this._videoFrameRequestCallbackHandle=null),this._isConnectedToTicker||(oe.shared.add(this.updateFrame,this),this._isConnectedToTicker=!0,this._msToNextUpdate=0)):(this._videoFrameRequestCallbackHandle!==null&&(this.resource.cancelVideoFrameCallback(this._videoFrameRequestCallbackHandle),this._videoFrameRequestCallbackHandle=null),this._isConnectedToTicker&&(oe.shared.remove(this.updateFrame,this),this._isConnectedToTicker=!1,this._msToNextUpdate=0))}static test(t){return globalThis.HTMLVideoElement&&t instanceof HTMLVideoElement}};Da.extension=b.TextureSource;Da.defaultOptions={...ut.defaultOptions,autoLoad:!0,autoPlay:!0,updateFPS:0,crossorigin:!0,loop:!1,muted:!0,playsinline:!0,preload:!1};Da.MIME_TYPES={ogv:"video/ogg",mov:"video/quicktime",m4v:"video/mp4"};vx=Da});var Sc,Bt,Qs=p(()=>{gt();mc();Sc=class{constructor(){this._parsers=[],this._cache=new Map,this._cacheMap=new Map}reset(){this._cacheMap.clear(),this._cache.clear()}has(t){return this._cache.has(t)}get(t){let e=this._cache.get(t);return e||z(`[Assets] Asset id ${t} was not found in the Cache`),e}set(t,e){let i=Tr(t),s;for(let u=0;u{n.set(u,e)});let o=[...n.keys()],a={cacheKeys:o,keys:i};i.forEach(u=>{this._cacheMap.set(u,a)}),o.forEach(u=>{let l=s?s[u]:e;this._cache.has(u)&&this._cache.get(u)!==l&&z("[Cache] already has key:",u),this._cache.set(u,n.get(u))})}remove(t){if(!this._cacheMap.has(t)){z(`[Assets] Asset id ${t} was not found in the Cache`);return}let e=this._cacheMap.get(t);e.cacheKeys.forEach(s=>{this._cache.delete(s)}),e.keys.forEach(s=>{this._cacheMap.delete(s)})}get parsers(){return this._parsers}},Bt=new Sc});function Sx(r={}){let t=r&&r.resource,e=t?r.resource:r,i=t?r:{resource:r};for(let s=0;s{Bt.has(i)&&Bt.remove(i)}),t||Bt.set(i,n),n}function Ex(r,t=!1){return typeof r=="string"?Bt.get(r):r instanceof ut?new I({source:r}):wx(r,t)}var wc,Ec=p(()=>{Qs();D();ne();dt();wc=[];H.handleByList(b.TextureSource,wc);I.from=Ex;ut.from=Sx});var Pa=p(()=>{D();mx();gx();xx();ql();Ai();Aa();Tx();Ec();H.add(Ks,qs,Zs,vx,or,te,Kr)});var It,wr=p(()=>{"use strict";It=class{constructor(t){this.resources=Object.create(null),this._dirty=!0;let e=0;for(let i in t){let s=t[i];this.setResource(s,e++)}this._updateKey()}_updateKey(){if(!this._dirty)return;this._dirty=!1;let t=[],e=0;for(let i in this.resources)t[e++]=this.resources[i]._resourceId;this._key=t.join("|")}setResource(t,e){let i=this.resources[e];t!==i&&(i&&t.off?.("change",this.onResourceChange,this),t.on?.("change",this.onResourceChange,this),this.resources[e]=t,this._dirty=!0)}getResource(t){return this.resources[t]}_touch(t){let e=this.resources;for(let i in e)e[i]._touched=t}destroy(){let t=this.resources;for(let e in t)t[e].off?.("change",this.onResourceChange,this);this.resources=null}onResourceChange(t){if(this._dirty=!0,t.destroyed){let e=this.resources;for(let i in e)e[i]===t&&(e[i]=null)}else this._updateKey()}}});function Ma(){return(!Ba||Ba?.isContextLost())&&(Ba=Q.get().createCanvas().getContext("webgl",{})),Ba}var Ba,Cc=p(()=>{Pt()});function NC(r){let t="";for(let e=0;e0&&(t+=`\nelse `),e{"use strict";LC=["precision mediump float;","void main(void){","float test = 0.1;","%forloop%","gl_FragColor = vec4(0.0);","}"].join(`\n`)});function _e(){if(Di)return Di;let r=Ma();return Di=r.getParameter(r.MAX_TEXTURE_IMAGE_UNITS),Di=Cx(Di,r),r.getExtension("WEBGL_lose_context")?.loseContext(),Di}var Di,ti=p(()=>{Cc();Ax();Di=null});function Pi(r,t){let e=2166136261;for(let i=0;i>>=0;return Dx[e]||HC(r,t,e)}function HC(r,t,e){let i={},s=0;Ac||(Ac=_e());for(let o=0;o{wr();dt();ti();Dx={};Ac=0});var Le,Dc=p(()=>{"use strict";Le=class{constructor(t){typeof t=="number"?this.rawBinaryData=new ArrayBuffer(t):t instanceof Uint8Array?this.rawBinaryData=t.buffer:this.rawBinaryData=t,this.uint32View=new Uint32Array(this.rawBinaryData),this.float32View=new Float32Array(this.rawBinaryData),this.size=this.rawBinaryData.byteLength}get int8View(){return this._int8View||(this._int8View=new Int8Array(this.rawBinaryData)),this._int8View}get uint8View(){return this._uint8View||(this._uint8View=new Uint8Array(this.rawBinaryData)),this._uint8View}get int16View(){return this._int16View||(this._int16View=new Int16Array(this.rawBinaryData)),this._int16View}get int32View(){return this._int32View||(this._int32View=new Int32Array(this.rawBinaryData)),this._int32View}get float64View(){return this._float64Array||(this._float64Array=new Float64Array(this.rawBinaryData)),this._float64Array}get bigUint64View(){return this._bigUint64Array||(this._bigUint64Array=new BigUint64Array(this.rawBinaryData)),this._bigUint64Array}view(t){return this[`${t}View`]}destroy(){this.rawBinaryData=null,this._int8View=null,this._uint8View=null,this._int16View=null,this.uint16View=null,this._int32View=null,this.uint32View=null,this.float32View=null}static sizeOf(t){switch(t){case"int8":case"uint8":return 1;case"int16":case"uint16":return 2;case"int32":case"uint32":case"float32":return 4;default:throw new Error(`${t} isn\'t a valid view type`)}}}});function Js(r,t){let e=r.byteLength/8|0,i=new Float64Array(r,0,e);new Float64Array(t,0,e).set(i);let n=r.byteLength-e*8;if(n>0){let o=new Uint8Array(r,e*8,n);new Uint8Array(t,e*8,n).set(o)}}var Pc=p(()=>{"use strict"});var Px,pt,ei=p(()=>{"use strict";Px={normal:"normal-npm",add:"add-npm",screen:"screen-npm"},pt=(r=>(r[r.DISABLED=0]="DISABLED",r[r.RENDERING_MASK_ADD=1]="RENDERING_MASK_ADD",r[r.MASK_ACTIVE=2]="MASK_ACTIVE",r[r.INVERSE_MASK_ACTIVE=3]="INVERSE_MASK_ACTIVE",r[r.RENDERING_MASK_REMOVE=4]="RENDERING_MASK_REMOVE",r[r.NONE=5]="NONE",r))(pt||{})});function ar(r,t){return t.alphaMode==="no-premultiply-alpha"&&Px[r]||r}var tn=p(()=>{ei()});var Ra,Bx=p(()=>{"use strict";Ra=class{constructor(){this.ids=Object.create(null),this.textures=[],this.count=0}clear(){for(let t=0;t0?Rx[--Mc]:new Bc}function Fx(r){Rx[Mc++]=r}var Bc,Rx,Mc,en,kx,Gx,Ix=p(()=>{jt();Dc();Pc();tn();ti();Bx();Bc=class{constructor(){this.renderPipeId="batch",this.action="startBatch",this.start=0,this.size=0,this.textures=new Ra,this.blendMode="normal",this.topology="triangle-strip",this.canBundle=!0}destroy(){this.textures=null,this.gpuBindGroup=null,this.bindGroup=null,this.batcher=null}},Rx=[],Mc=0;en=0,kx=class ka{constructor(t={}){this.uid=rt("batcher"),this.dirty=!0,this.batchIndex=0,this.batches=[],this._elements=[],ka.defaultOptions.maxTextures=ka.defaultOptions.maxTextures??_e(),t={...ka.defaultOptions,...t};let{maxTextures:e,attributesInitialSize:i,indicesInitialSize:s}=t;this.attributeBuffer=new Le(i*4),this.indexBuffer=new Uint16Array(s),this.maxTextures=e}begin(){this.elementSize=0,this.elementStart=0,this.indexSize=0,this.attributeSize=0;for(let t=0;tthis.attributeBuffer.size&&this._resizeAttributeBuffer(this.attributeSize*4),this.indexSize>this.indexBuffer.length&&this._resizeIndexBuffer(this.indexSize);let u=this.attributeBuffer.float32View,l=this.attributeBuffer.uint32View,c=this.indexBuffer,h=this._batchIndexSize,d=this._batchIndexStart,f="startBatch",m=this.maxTextures;for(let g=this.elementStart;g=m||y)&&(this._finishBatch(i,d,h-d,s,o,a,t,f),f="renderBatch",d=h,o=T,a=x.topology,i=Mx(),s=i.textures,s.clear(),++en),x._textureId=v._textureBindLocation=s.count,s.ids[v.uid]=s.count,s.textures[s.count++]=v,x._batch=i,h+=x.indexSize,x.packAsQuad?(this.packQuadAttributes(x,u,l,x._attributeStart,x._textureId),this.packQuadIndex(c,x._indexStart,x._attributeStart/this.vertexSize)):(this.packAttributes(x,u,l,x._attributeStart,x._textureId),this.packIndex(x,c,x._indexStart,x._attributeStart/this.vertexSize))}s.count>0&&(this._finishBatch(i,d,h-d,s,o,a,t,f),d=h,++en),this.elementStart=this.elementSize,this._batchIndexStart=d,this._batchIndexSize=h}_finishBatch(t,e,i,s,n,o,a,u){t.gpuBindGroup=null,t.bindGroup=null,t.action=u,t.batcher=this,t.textures=s,t.blendMode=n,t.topology=o,t.start=e,t.size=i,++en,this.batches[this.batchIndex++]=t,a.add(t)}finish(t){this.break(t)}ensureAttributeBuffer(t){t*4<=this.attributeBuffer.size||this._resizeAttributeBuffer(t*4)}ensureIndexBuffer(t){t<=this.indexBuffer.length||this._resizeIndexBuffer(t)}_resizeAttributeBuffer(t){let e=Math.max(t,this.attributeBuffer.size*2),i=new Le(e);Js(this.attributeBuffer.rawBinaryData,i.rawBinaryData),this.attributeBuffer=i}_resizeIndexBuffer(t){let e=this.indexBuffer,i=Math.max(t,e.length*1.5);i+=i%2;let s=i>65535?new Uint32Array(i):new Uint16Array(i);if(s.BYTES_PER_ELEMENT!==e.BYTES_PER_ELEMENT)for(let n=0;n{"use strict";J=(r=>(r[r.MAP_READ=1]="MAP_READ",r[r.MAP_WRITE=2]="MAP_WRITE",r[r.COPY_SRC=4]="COPY_SRC",r[r.COPY_DST=8]="COPY_DST",r[r.INDEX=16]="INDEX",r[r.VERTEX=32]="VERTEX",r[r.UNIFORM=64]="UNIFORM",r[r.STORAGE=128]="STORAGE",r[r.INDIRECT=256]="INDIRECT",r[r.QUERY_RESOLVE=512]="QUERY_RESOLVE",r[r.STATIC=1024]="STATIC",r))(J||{})});var Tt,Er=p(()=>{Xt();jt();ur();Tt=class extends ht{constructor(t){let{data:e,size:i}=t,{usage:s,label:n,shrinkToFit:o}=t;super(),this.uid=rt("buffer"),this._resourceType="buffer",this._resourceId=rt("resource"),this._touched=0,this._updateID=1,this._dataInt32=null,this.shrinkToFit=!0,this.destroyed=!1,e instanceof Array&&(e=new Float32Array(e)),this._data=e,i??(i=e?.byteLength);let a=!!e;this.descriptor={size:i,usage:s,mappedAtCreation:a,label:n},this.shrinkToFit=o??!0}get data(){return this._data}set data(t){this.setDataWithSize(t,t.length,!0)}get dataInt32(){return this._dataInt32||(this._dataInt32=new Int32Array(this.data.buffer)),this._dataInt32}get static(){return!!(this.descriptor.usage&J.STATIC)}set static(t){t?this.descriptor.usage|=J.STATIC:this.descriptor.usage&=~J.STATIC}setDataWithSize(t,e,i){if(this._updateID++,this._updateSize=e*t.BYTES_PER_ELEMENT,this._data===t){i&&this.emit("update",this);return}let s=this._data;if(this._data=t,this._dataInt32=null,!s||s.length!==t.length){!this.shrinkToFit&&s&&t.byteLength{Er();ur()});function Ox(r,t,e){let i=r.getAttribute(t);if(!i)return e.minX=0,e.minY=0,e.maxX=0,e.maxY=0,e;let s=i.buffer.data,n=1/0,o=1/0,a=-1/0,u=-1/0,l=s.BYTES_PER_ELEMENT,c=(i.offset||0)/l,h=(i.stride||2*4)/l;for(let d=c;da&&(a=f),m>u&&(u=m),f{"use strict"});function zC(r){return(r instanceof Tt||Array.isArray(r)||r.BYTES_PER_ELEMENT)&&(r={buffer:r}),r.buffer=Fc(r.buffer,!1),r}var ye,Bi=p(()=>{Xt();ce();jt();Er();Ux();Lx();ye=class extends ht{constructor(t={}){super(),this.uid=rt("geometry"),this._layoutKey=0,this.instanceCount=1,this._bounds=new ft,this._boundsDirty=!0;let{attributes:e,indexBuffer:i,topology:s}=t;if(this.buffers=[],this.attributes={},e)for(let n in e)this.addAttribute(n,e[n]);this.instanceCount=t.instanceCount??1,i&&this.addIndex(i),this.topology=s||"triangle-list"}onBufferUpdate(){this._boundsDirty=!0,this.emit("update",this)}getAttribute(t){return this.attributes[t]}getIndex(){return this.indexBuffer}getBuffer(t){return this.getAttribute(t).buffer}getSize(){for(let t in this.attributes){let e=this.attributes[t];return e.buffer.data.length/(e.stride/4||e.size)}return 0}addAttribute(t,e){let i=zC(e);this.buffers.indexOf(i.buffer)===-1&&(this.buffers.push(i.buffer),i.buffer.on("update",this.onBufferUpdate,this),i.buffer.on("change",this.onBufferUpdate,this)),this.attributes[t]=i}addIndex(t){this.indexBuffer=Fc(t,!0),this.buffers.push(this.indexBuffer)}get bounds(){return this._boundsDirty?(this._boundsDirty=!1,Ox(this,"aPosition",this._bounds)):this._bounds}destroy(t=!1){this.emit("destroy",this),this.removeAllListeners(),t&&this.buffers.forEach(e=>e.destroy()),this.attributes=null,this.buffers=null,this.indexBuffer=null,this._bounds=null}}});var WC,VC,Ga,Nx=p(()=>{Er();ur();Bi();WC=new Float32Array(1),VC=new Uint32Array(1),Ga=class extends ye{constructor(){let e=new Tt({data:WC,label:"attribute-batch-buffer",usage:J.VERTEX|J.COPY_DST,shrinkToFit:!1}),i=new Tt({data:VC,label:"index-batch-buffer",usage:J.INDEX|J.COPY_DST,shrinkToFit:!1}),s=6*4;super({attributes:{aPosition:{buffer:e,format:"float32x2",stride:s,offset:0},aUV:{buffer:e,format:"float32x2",stride:s,offset:2*4},aColor:{buffer:e,format:"unorm8x4",stride:s,offset:4*4},aTextureIdAndRound:{buffer:e,format:"uint16x2",stride:s,offset:5*4}},indexBuffer:i})}}});function lr(r,t){let e=Hx[r];return e===void 0&&(Rc[t]===void 0&&(Rc[t]=1),Hx[r]=e=Rc[t]++),e}var Rc,Hx,rn=p(()=>{"use strict";Rc=Object.create(null),Hx=Object.create(null)});function zx(){if(!Ia){Ia="mediump";let r=Ma();r&&r.getShaderPrecisionFormat&&(Ia=r.getShaderPrecisionFormat(r.FRAGMENT_SHADER,r.HIGH_FLOAT).precision?"highp":"mediump")}return Ia}var Ia,Wx=p(()=>{Cc()});function Vx(r,t,e){return t?r:e?(r=r.replace("out vec4 finalColor;",""),`\n \n #ifdef GL_ES // This checks if it is WebGL1\n #define in varying\n #define finalColor gl_FragColor\n #define texture texture2D\n #endif\n ${r}\n `):`\n \n #ifdef GL_ES // This checks if it is WebGL1\n #define in attribute\n #define out varying\n #endif\n ${r}\n `}var Xx=p(()=>{"use strict"});function $x(r,t,e){let i=e?t.maxSupportedFragmentPrecision:t.maxSupportedVertexPrecision;if(r.substring(0,9)!=="precision"){let s=e?t.requestedFragmentPrecision:t.requestedVertexPrecision;return s==="highp"&&i!=="highp"&&(s="mediump"),`precision ${s} float;\n${r}`}else if(i!=="highp"&&r.substring(0,15)==="precision highp")return r.replace("precision highp","precision mediump");return r}var jx=p(()=>{"use strict"});function Yx(r,t){return t?`#version 300 es\n${r}`:r}var Kx=p(()=>{"use strict"});function qx(r,{name:t="pixi-program"},e=!0){t=t.replace(/\\s+/g,"-"),t+=e?"-fragment":"-vertex";let i=e?XC:$C;return i[t]?(i[t]++,t+=`-${i[t]}`):i[t]=1,r.indexOf("#define SHADER_NAME")!==-1?r:`${`#define SHADER_NAME ${t}`}\n${r}`}var XC,$C,Zx=p(()=>{"use strict";XC={},$C={}});function Qx(r,t){return t?r.replace("#version 300 es",""):r}var Jx=p(()=>{"use strict"});var kc,Gc,t_,be,ri=p(()=>{rn();Wx();Xx();jx();Kx();Zx();Jx();kc={stripVersion:Qx,ensurePrecision:$x,addProgramDefines:Vx,setProgramName:qx,insertVersion:Yx},Gc=Object.create(null),t_=class Ic{constructor(t){t={...Ic.defaultOptions,...t};let e=t.fragment.indexOf("#version 300 es")!==-1,i={stripVersion:e,ensurePrecision:{requestedFragmentPrecision:t.preferredFragmentPrecision,requestedVertexPrecision:t.preferredVertexPrecision,maxSupportedVertexPrecision:"highp",maxSupportedFragmentPrecision:zx()},setProgramName:{name:t.name},addProgramDefines:e,insertVersion:e},s=t.fragment,n=t.vertex;Object.keys(kc).forEach(o=>{let a=i[o];s=kc[o](s,a,!0),n=kc[o](n,a,!1)}),this.fragment=s,this.vertex=n,this.transformFeedbackVaryings=t.transformFeedbackVaryings,this._key=lr(`${this.vertex}:${this.fragment}`,"gl-program")}destroy(){this.fragment=null,this.vertex=null,this._attributeData=null,this._uniformData=null,this._uniformBlockData=null,this.transformFeedbackVaryings=null}static from(t){let e=`${t.vertex}:${t.fragment}`;return Gc[e]||(Gc[e]=new Ic(t)),Gc[e]}};t_.defaultOptions={preferredVertexPrecision:"highp",preferredFragmentPrecision:"mediump"};be=t_});function ae(r){return e_[r]??e_.float32}var e_,ii=p(()=>{"use strict";e_={uint8x2:{size:2,stride:2,normalised:!1},uint8x4:{size:4,stride:4,normalised:!1},sint8x2:{size:2,stride:2,normalised:!1},sint8x4:{size:4,stride:4,normalised:!1},unorm8x2:{size:2,stride:2,normalised:!0},unorm8x4:{size:4,stride:4,normalised:!0},snorm8x2:{size:2,stride:2,normalised:!0},snorm8x4:{size:4,stride:4,normalised:!0},uint16x2:{size:2,stride:4,normalised:!1},uint16x4:{size:4,stride:8,normalised:!1},sint16x2:{size:2,stride:4,normalised:!1},sint16x4:{size:4,stride:8,normalised:!1},unorm16x2:{size:2,stride:4,normalised:!0},unorm16x4:{size:4,stride:8,normalised:!0},snorm16x2:{size:2,stride:4,normalised:!0},snorm16x4:{size:4,stride:8,normalised:!0},float16x2:{size:2,stride:4,normalised:!1},float16x4:{size:4,stride:8,normalised:!1},float32:{size:1,stride:4,normalised:!1},float32x2:{size:2,stride:8,normalised:!1},float32x3:{size:3,stride:12,normalised:!1},float32x4:{size:4,stride:16,normalised:!1},uint32:{size:1,stride:4,normalised:!1},uint32x2:{size:2,stride:8,normalised:!1},uint32x3:{size:3,stride:12,normalised:!1},uint32x4:{size:4,stride:16,normalised:!1},sint32:{size:1,stride:4,normalised:!1},sint32x2:{size:2,stride:8,normalised:!1},sint32x3:{size:3,stride:12,normalised:!1},sint32x4:{size:4,stride:16,normalised:!1}}});function r_({source:r,entryPoint:t}){let e={},i=r.indexOf(`fn ${t}`);if(i!==-1){let s=r.indexOf("->",i);if(s!==-1){let n=r.substring(i,s),o=/@location\\((\\d+)\\)\\s+([a-zA-Z0-9_]+)\\s*:\\s*([a-zA-Z0-9_<>]+)(?:,|\\s|$)/g,a;for(;(a=o.exec(n))!==null;){let u=jC[a[3]]??"float32";e[a[2]]={location:parseInt(a[1],10),format:u,stride:ae(u).stride,offset:0,instance:!1,start:0}}}}return e}var jC,i_=p(()=>{ii();jC={f32:"float32","vec2":"float32x2","vec3":"float32x3","vec4":"float32x4",vec2f:"float32x2",vec3f:"float32x3",vec4f:"float32x4",i32:"sint32","vec2":"sint32x2","vec3":"sint32x3","vec4":"sint32x4",u32:"uint32","vec2":"uint32x2","vec3":"uint32x3","vec4":"uint32x4",bool:"uint32","vec2":"uint32x2","vec3":"uint32x3","vec4":"uint32x4"}});function Ua(r){let t=/(^|[^/])@(group|binding)\\(\\d+\\)[^;]+;/g,e=/@group\\((\\d+)\\)/,i=/@binding\\((\\d+)\\)/,s=/var(<[^>]+>)? (\\w+)/,n=/:\\s*(\\w+)/,o=/struct\\s+(\\w+)\\s*{([^}]+)}/g,a=/(\\w+)\\s*:\\s*([\\w\\<\\>]+)/g,u=/struct\\s+(\\w+)/,l=r.match(t)?.map(h=>({group:parseInt(h.match(e)[1],10),binding:parseInt(h.match(i)[1],10),name:h.match(s)[2],isUniform:h.match(s)[1]==="",type:h.match(n)[1]}));if(!l)return{groups:[],structs:[]};let c=r.match(o)?.map(h=>{let d=h.match(u)[1],f=h.match(a).reduce((m,g)=>{let[x,_]=g.split(":");return m[x.trim()]=_.trim(),m},{});return f?{name:d,members:f}:null}).filter(({name:h})=>l.some(d=>d.type===h))??[];return{groups:l,structs:c}}var s_=p(()=>{"use strict"});var Mi,n_=p(()=>{"use strict";Mi=(r=>(r[r.VERTEX=1]="VERTEX",r[r.FRAGMENT=2]="FRAGMENT",r[r.COMPUTE=4]="COMPUTE",r))(Mi||{})});function o_({groups:r}){let t=[];for(let e=0;e{n_()});function u_({groups:r}){let t=[];for(let e=0;e{"use strict"});function c_(r,t){let e=new Set,i=new Set,s=[...r.structs,...t.structs].filter(o=>e.has(o.name)?!1:(e.add(o.name),!0)),n=[...r.groups,...t.groups].filter(o=>{let a=`${o.name}-${o.binding}`;return i.has(a)?!1:(i.add(a),!0)});return{structs:s,groups:n}}var h_=p(()=>{"use strict"});var Uc,ve,Fi=p(()=>{rn();i_();s_();a_();l_();h_();Uc=Object.create(null),ve=class r{constructor(t){this._layoutKey=0,this._attributeLocationsKey=0;let{fragment:e,vertex:i,layout:s,gpuLayout:n,name:o}=t;if(this.name=o,this.fragment=e,this.vertex=i,e.source===i.source){let a=Ua(e.source);this.structsAndGroups=a}else{let a=Ua(i.source),u=Ua(e.source);this.structsAndGroups=c_(a,u)}this.layout=s??u_(this.structsAndGroups),this.gpuLayout=n??o_(this.structsAndGroups),this.autoAssignGlobalUniforms=this.layout[0]?.globalUniforms!==void 0,this.autoAssignLocalUniforms=this.layout[1]?.localUniforms!==void 0,this._generateProgramKey()}_generateProgramKey(){let{vertex:t,fragment:e}=this,i=t.source+e.source+t.entryPoint+e.entryPoint;this._layoutKey=lr(i,"program")}get attributeData(){return this._attributeData??(this._attributeData=r_(this.vertex)),this._attributeData}destroy(){this.gpuLayout=null,this.layout=null,this.structsAndGroups=null,this.fragment=null,this.vertex=null}static from(t){let e=`${t.vertex.source}:${t.fragment.source}:${t.fragment.entryPoint}:${t.vertex.entryPoint}`;return Uc[e]||(Uc[e]=new r(t)),Uc[e]}}});function Oc(r,t,e){if(r)for(let i in r){let s=i.toLocaleLowerCase(),n=t[s];if(n){let o=r[i];i==="header"&&(o=o.replace(/@in\\s+[^;]+;\\s*/g,"").replace(/@out\\s+[^;]+;\\s*/g,"")),e&&n.push(`//----${e}----//`),n.push(o)}else z(`${i} placement hook does not exist in shader`)}}var f_=p(()=>{gt()});function Lc(r){let t={};return(r.match(YC)?.map(i=>i.replace(/[{()}]/g,""))??[]).forEach(i=>{t[i]=[]}),t}var YC,d_=p(()=>{"use strict";YC=/\\{\\{(.*?)\\}\\}/g});function p_(r,t){let e,i=/@in\\s+([^;]+);/g;for(;(e=i.exec(r))!==null;)t.push(e[1])}function Nc(r,t,e=!1){let i=[];p_(t,i),r.forEach(a=>{a.header&&p_(a.header,i)});let s=i;e&&s.sort();let n=s.map((a,u)=>` @location(${u}) ${a},`).join(`\n`),o=t.replace(/@in\\s+[^;]+;\\s*/g,"");return o=o.replace("{{in}}",`\n${n}\n`),o}var m_=p(()=>{"use strict"});function g_(r,t){let e,i=/@out\\s+([^;]+);/g;for(;(e=i.exec(r))!==null;)t.push(e[1])}function KC(r){let e=/\\b(\\w+)\\s*:/g.exec(r);return e?e[1]:""}function qC(r){let t=/@.*?\\s+/g;return r.replace(t,"")}function x_(r,t){let e=[];g_(t,e),r.forEach(u=>{u.header&&g_(u.header,e)});let i=0,s=e.sort().map(u=>u.indexOf("builtin")>-1?u:`@location(${i++}) ${u}`).join(`,\n`),n=e.sort().map(u=>` var ${qC(u)};`).join(`\n`),o=`return VSOutput(\n ${e.sort().map(u=>` ${KC(u)}`).join(`,\n`)});`,a=t.replace(/@out\\s+[^;]+;\\s*/g,"");return a=a.replace("{{struct}}",`\n${s}\n`),a=a.replace("{{start}}",`\n${n}\n`),a=a.replace("{{return}}",`\n${o}\n`),a}var __=p(()=>{"use strict"});function Hc(r,t){let e=r;for(let i in t){let s=t[i];s.join(`\n`).length?e=e.replace(`{{${i}}}`,`//-----${i} START-----//\n${s.join(`\n`)}\n//----${i} FINISH----//`):e=e.replace(`{{${i}}}`,"")}return e}var y_=p(()=>{"use strict"});function b_({template:r,bits:t}){let e=T_(r,t);if(Cr[e])return Cr[e];let{vertex:i,fragment:s}=QC(r,t);return Cr[e]=S_(i,s,t),Cr[e]}function v_({template:r,bits:t}){let e=T_(r,t);return Cr[e]||(Cr[e]=S_(r.vertex,r.fragment,t)),Cr[e]}function QC(r,t){let e=t.map(o=>o.vertex).filter(o=>!!o),i=t.map(o=>o.fragment).filter(o=>!!o),s=Nc(e,r.vertex,!0);s=x_(e,s);let n=Nc(i,r.fragment,!0);return{vertex:s,fragment:n}}function T_(r,t){return t.map(e=>(zc.has(e)||zc.set(e,ZC++),zc.get(e))).sort((e,i)=>e-i).join("-")+r.vertex+r.fragment}function S_(r,t,e){let i=Lc(r),s=Lc(t);return e.forEach(n=>{Oc(n.vertex,i,n.name),Oc(n.fragment,s,n.name)}),{vertex:Hc(r,i),fragment:Hc(t,s)}}var Cr,zc,ZC,w_=p(()=>{f_();d_();m_();__();y_();Cr=Object.create(null),zc=new Map,ZC=0});var E_,C_,A_,D_,P_=p(()=>{"use strict";E_=`\n @in aPosition: vec2;\n @in aUV: vec2;\n\n @out @builtin(position) vPosition: vec4;\n @out vUV : vec2;\n @out vColor : vec4;\n\n {{header}}\n\n struct VSOutput {\n {{struct}}\n };\n\n @vertex\n fn main( {{in}} ) -> VSOutput {\n\n var worldTransformMatrix = globalUniforms.uWorldTransformMatrix;\n var modelMatrix = mat3x3(\n 1.0, 0.0, 0.0,\n 0.0, 1.0, 0.0,\n 0.0, 0.0, 1.0\n );\n var position = aPosition;\n var uv = aUV;\n\n {{start}}\n \n vColor = vec4(1., 1., 1., 1.);\n\n {{main}}\n\n vUV = uv;\n\n var modelViewProjectionMatrix = globalUniforms.uProjectionMatrix * worldTransformMatrix * modelMatrix;\n\n vPosition = vec4((modelViewProjectionMatrix * vec3(position, 1.0)).xy, 0.0, 1.0);\n \n vColor *= globalUniforms.uWorldColorAlpha;\n\n {{end}}\n\n {{return}}\n };\n`,C_=`\n @in vUV : vec2;\n @in vColor : vec4;\n \n {{header}}\n\n @fragment\n fn main(\n {{in}}\n ) -> @location(0) vec4 {\n \n {{start}}\n\n var outColor:vec4;\n \n {{main}}\n \n var finalColor:vec4 = outColor * vColor;\n\n {{end}}\n\n return finalColor;\n };\n`,A_=`\n in vec2 aPosition;\n in vec2 aUV;\n\n out vec4 vColor;\n out vec2 vUV;\n\n {{header}}\n\n void main(void){\n\n mat3 worldTransformMatrix = uWorldTransformMatrix;\n mat3 modelMatrix = mat3(\n 1.0, 0.0, 0.0,\n 0.0, 1.0, 0.0,\n 0.0, 0.0, 1.0\n );\n vec2 position = aPosition;\n vec2 uv = aUV;\n \n {{start}}\n \n vColor = vec4(1.);\n \n {{main}}\n \n vUV = uv;\n \n mat3 modelViewProjectionMatrix = uProjectionMatrix * worldTransformMatrix * modelMatrix;\n\n gl_Position = vec4((modelViewProjectionMatrix * vec3(position, 1.0)).xy, 0.0, 1.0);\n\n vColor *= uWorldColorAlpha;\n\n {{end}}\n }\n`,D_=`\n \n in vec4 vColor;\n in vec2 vUV;\n\n out vec4 finalColor;\n\n {{header}}\n\n void main(void) {\n \n {{start}}\n\n vec4 outColor;\n \n {{main}}\n \n finalColor = outColor * vColor;\n \n {{end}}\n }\n`});var B_,M_,F_=p(()=>{"use strict";B_={name:"global-uniforms-bit",vertex:{header:`\n struct GlobalUniforms {\n uProjectionMatrix:mat3x3,\n uWorldTransformMatrix:mat3x3,\n uWorldColorAlpha: vec4,\n uResolution: vec2,\n }\n\n @group(0) @binding(0) var globalUniforms : GlobalUniforms;\n `}},M_={name:"global-uniforms-bit",vertex:{header:`\n uniform mat3 uProjectionMatrix;\n uniform mat3 uWorldTransformMatrix;\n uniform vec4 uWorldColorAlpha;\n uniform vec2 uResolution;\n `}}});function Ne({bits:r,name:t}){let e=b_({template:{fragment:C_,vertex:E_},bits:[B_,...r]});return ve.from({name:t,vertex:{source:e.vertex,entryPoint:"main"},fragment:{source:e.fragment,entryPoint:"main"}})}function He({bits:r,name:t}){return new be({name:t,...v_({template:{vertex:A_,fragment:D_},bits:[M_,...r]})})}var Ar=p(()=>{ri();Fi();w_();P_();F_()});var Ri,ki,sn=p(()=>{"use strict";Ri={name:"color-bit",vertex:{header:`\n @in aColor: vec4;\n `,main:`\n vColor *= vec4(aColor.rgb * aColor.a, aColor.a);\n `}},ki={name:"color-bit",vertex:{header:`\n in vec4 aColor;\n `,main:`\n vColor *= vec4(aColor.rgb * aColor.a, aColor.a);\n `}}});function JC(r){let t=[];if(r===1)t.push("@group(1) @binding(0) var textureSource1: texture_2d;"),t.push("@group(1) @binding(1) var textureSampler1: sampler;");else{let e=0;for(let i=0;i;`),t.push(`@group(1) @binding(${e++}) var textureSampler${i+1}: sampler;`)}return t.join(`\n`)}function tA(r){let t=[];if(r===1)t.push("outColor = textureSampleGrad(textureSource1, textureSampler1, vUV, uvDx, uvDy);");else{t.push("switch vTextureId {");for(let e=0;e;\n @out @interpolate(flat) vTextureId : u32;\n `,main:`\n vTextureId = aTextureIdAndRound.y;\n `,end:`\n if(aTextureIdAndRound.x == 1)\n {\n vPosition = vec4(roundPixels(vPosition.xy, globalUniforms.uResolution), vPosition.zw);\n }\n `},fragment:{header:`\n @in @interpolate(flat) vTextureId: u32;\n\n ${JC(r)}\n `,main:`\n var uvDx = dpdx(vUV);\n var uvDy = dpdy(vUV);\n\n ${tA(r)}\n `}}),Wc[r]}function eA(r){let t=[];for(let e=0;e0&&t.push("else"),e{"use strict";Wc={};Vc={}});var ze,We,Dr=p(()=>{"use strict";ze={name:"round-pixels-bit",vertex:{header:`\n fn roundPixels(position: vec2, targetSize: vec2) -> vec2 \n {\n return (floor(((position * 0.5 + 0.5) * targetSize) + 0.5) / targetSize) * 2.0 - 1.0;\n }\n `}},We={name:"round-pixels-bit",vertex:{header:` \n vec2 roundPixels(vec2 position, vec2 targetSize)\n { \n return (floor(((position * 0.5 + 0.5) * targetSize) + 0.5) / targetSize) * 2.0 - 1.0;\n }\n `}}});var Xc,R_,k_=p(()=>{"use strict";Xc=["f32","i32","vec2","vec3","vec4","mat2x2","mat3x3","mat4x4","mat3x2","mat4x2","mat2x3","mat4x3","mat2x4","mat3x4","vec2","vec3","vec4"],R_=Xc.reduce((r,t)=>(r[t]=!0,r),{})});function G_(r,t){switch(r){case"f32":return 0;case"vec2":return new Float32Array(2*t);case"vec3":return new Float32Array(3*t);case"vec4":return new Float32Array(4*t);case"mat2x2":return new Float32Array([1,0,0,1]);case"mat3x3":return new Float32Array([1,0,0,0,1,0,0,0,1]);case"mat4x4":return new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1])}return null}var I_=p(()=>{"use strict"});var U_,ct,ee=p(()=>{jt();rn();k_();I_();U_=class O_{constructor(t,e){this._touched=0,this.uid=rt("uniform"),this._resourceType="uniformGroup",this._resourceId=rt("resource"),this.isUniformGroup=!0,this._dirtyId=0,this.destroyed=!1,e={...O_.defaultOptions,...e},this.uniformStructures=t;let i={};for(let s in t){let n=t[s];if(n.name=s,n.size=n.size??1,!R_[n.type])throw new Error(`Uniform type ${n.type} is not supported. Supported uniform types are: ${Xc.join(", ")}`);n.value??(n.value=G_(n.type,n.size)),i[s]=n.value}this.uniforms=i,this._dirtyId=1,this.ubo=e.ubo,this.isStatic=e.isStatic,this._signature=lr(Object.keys(i).map(s=>`${s}-${t[s].type}`).join("-"),"uniform-group")}update(){this._dirtyId++}};U_.defaultOptions={ubo:!1,isStatic:!1};ct=U_});function Ui(r){let t=L_[r];if(t)return t;let e=new Int32Array(r);for(let i=0;i{ee();L_={}});var Mt,Ve=p(()=>{"use strict";Mt=(r=>(r[r.WEBGL=1]="WEBGL",r[r.WEBGPU=2]="WEBGPU",r[r.BOTH=3]="BOTH",r))(Mt||{})});var St,Be=p(()=>{Xt();ri();wr();Fi();Ve();ee();St=class r extends ht{constructor(t){super(),this._uniformBindMap=Object.create(null),this._ownedBindGroups=[];let{gpuProgram:e,glProgram:i,groups:s,resources:n,compatibleRenderers:o,groupMap:a}=t;this.gpuProgram=e,this.glProgram=i,o===void 0&&(o=0,e&&(o|=Mt.WEBGPU),i&&(o|=Mt.WEBGL)),this.compatibleRenderers=o;let u={};if(!n&&!s&&(n={}),n&&s)throw new Error("[Shader] Cannot have both resources and groups");if(!e&&s&&!a)throw new Error("[Shader] No group map or WebGPU shader provided - consider using resources instead.");if(!e&&s&&a)for(let l in a)for(let c in a[l]){let h=a[l][c];u[h]={group:l,binding:c,name:h}}else if(e&&s&&!a){let l=e.structsAndGroups.groups;a={},l.forEach(c=>{a[c.group]=a[c.group]||{},a[c.group][c.binding]=c.name,u[c.name]=c})}else if(n){s={},a={},e&&e.structsAndGroups.groups.forEach(h=>{a[h.group]=a[h.group]||{},a[h.group][h.binding]=h.name,u[h.name]=h});let l=0;for(let c in n)u[c]||(s[99]||(s[99]=new It,this._ownedBindGroups.push(s[99])),u[c]={group:99,binding:l,name:c},a[99]=a[99]||{},a[99][l]=c,l++);for(let c in n){let h=c,d=n[c];!d.source&&!d._resourceType&&(d=new ct(d));let f=u[h];f&&(s[f.group]||(s[f.group]=new It,this._ownedBindGroups.push(s[f.group])),s[f.group].setResource(d,f.binding))}}this.groups=s,this._uniformBindMap=a,this.resources=this._buildResourceAccessor(s,u)}addResource(t,e,i){var s,n;(s=this._uniformBindMap)[e]||(s[e]={}),(n=this._uniformBindMap[e])[i]||(n[i]=t),this.groups[e]||(this.groups[e]=new It,this._ownedBindGroups.push(this.groups[e]))}_buildResourceAccessor(t,e){let i={};for(let s in e){let n=e[s];Object.defineProperty(i,n.name,{get(){return t[n.group].getResource(n.binding)},set(o){t[n.group].setResource(o,n.binding)}})}return i}destroy(t=!1){this.emit("destroy",this),t&&(this.gpuProgram?.destroy(),this.glProgram?.destroy()),this.gpuProgram=null,this.glProgram=null,this.removeAllListeners(),this._uniformBindMap=null,this._ownedBindGroups.forEach(e=>{e.destroy()}),this._ownedBindGroups=null,this.resources=null,this.groups=null}static from(t){let{gpu:e,gl:i,...s}=t,n,o;return e&&(n=ve.from(e)),i&&(o=be.from(i)),new r({gpuProgram:n,glProgram:o,...s})}}});var La,N_=p(()=>{Ar();sn();nn();Dr();Oa();Be();La=class extends St{constructor(t){let e=He({name:"batch",bits:[ki,Ii(t),We]}),i=Ne({name:"batch",bits:[Ri,Gi(t),ze]});super({glProgram:e,gpuProgram:i,resources:{batchSamplers:Ui(t)}})}}});var H_,z_,on,$c=p(()=>{D();Ix();Nx();N_();H_=null,z_=class W_ extends Gx{constructor(){super(...arguments),this.geometry=new Ga,this.shader=H_||(H_=new La(this.maxTextures)),this.name=W_.extension.name,this.vertexSize=6}packAttributes(t,e,i,s,n){let o=n<<16|t.roundPixels&65535,a=t.transform,u=a.a,l=a.b,c=a.c,h=a.d,d=a.tx,f=a.ty,{positions:m,uvs:g}=t,x=t.color,_=t.attributeOffset,v=_+t.attributeSize;for(let T=_;T{"use strict"});function jc(r,t,e,i,s){let n=t.a,o=t.b,a=t.c,u=t.d,l=t.tx,c=t.ty;e||(e=0),i||(i=2),s||(s=r.length/i-e);let h=e*i;for(let d=0;d{"use strict"});var rA,si,Yc=p(()=>{ot();Hl();rA=new G,si=class{constructor(){this.packAsQuad=!1,this.batcherName="default",this.topology="triangle-list",this.applyTransform=!0,this.roundPixels=0,this._batcher=null,this._batch=null}get uvs(){return this.geometryData.uvs}get positions(){return this.geometryData.vertices}get indices(){return this.geometryData.indices}get blendMode(){return this.applyTransform?this.renderable.groupBlendMode:"normal"}get color(){let t=this.baseColor,e=t>>16|t&65280|(t&255)<<16,i=this.renderable;return i?ca(e,i.groupColor)+(this.alpha*i.groupAlpha*255<<24):e+(this.alpha*255<<24)}get transform(){return this.renderable?.groupTransform||rA}copyTo(t){t.indexOffset=this.indexOffset,t.indexSize=this.indexSize,t.attributeOffset=this.attributeOffset,t.attributeSize=this.attributeSize,t.baseColor=this.baseColor,t.alpha=this.alpha,t.texture=this.texture,t.geometryData=this.geometryData,t.topology=this.topology}reset(){this.applyTransform=!0,this.renderable=null,this.topology="triangle-list"}}});var Oi,Y_,K_,q_=p(()=>{D();Oi={extension:{type:b.ShapeBuilder,name:"circle"},build(r,t){let e,i,s,n,o,a;if(r.type==="circle"){let y=r;e=y.x,i=y.y,o=a=y.radius,s=n=0}else if(r.type==="ellipse"){let y=r;e=y.x,i=y.y,o=y.halfWidth,a=y.halfHeight,s=n=0}else{let y=r,C=y.width/2,S=y.height/2;e=y.x+C,i=y.y+S,o=a=Math.max(0,Math.min(y.radius,Math.min(C,S))),s=C-o,n=S-a}if(!(o>=0&&a>=0&&s>=0&&n>=0))return t;let u=Math.ceil(2.3*Math.sqrt(o+a)),l=u*8+(s?4:0)+(n?4:0);if(l===0)return t;if(u===0)return t[0]=t[6]=e+s,t[1]=t[3]=i+n,t[2]=t[4]=e-s,t[5]=t[7]=i-n,t;let c=0,h=u*4+(s?2:0)+2,d=h,f=l,m=s+o,g=n,x=e+m,_=e-m,v=i+g;if(t[c++]=x,t[c++]=v,t[--h]=v,t[--h]=_,n){let y=i-g;t[d++]=_,t[d++]=y,t[--f]=y,t[--f]=x}for(let y=1;y0&&(s[n++]=u,s[n++]=l,s[n++]=u-1),u++;s[n++]=l+1,s[n++]=l,s[n++]=u-1}},Y_={...Oi,extension:{...Oi.extension,name:"ellipse"}},K_={...Oi,extension:{...Oi.extension,name:"roundedRectangle"}}});function Z_(r){let t=r.length;if(t<6)return 1;let e=0;for(let i=0,s=r[t-2],n=r[t-1];i{"use strict"});function J_(r,t,e,i,s,n,o,a){let u=r-e*s,l=t-i*s,c=r+e*n,h=t+i*n,d,f;o?(d=i,f=-e):(d=-i,f=e);let m=u+d,g=l+f,x=c+d,_=h+f;return a.push(m,g),a.push(x,_),2}function ni(r,t,e,i,s,n,o,a){let u=e-r,l=i-t,c=Math.atan2(u,l),h=Math.atan2(s-r,n-t);a&&ch&&(h+=Math.PI*2);let d=c,f=h-c,m=Math.abs(f),g=Math.sqrt(u*u+l*l),x=(15*m*Math.sqrt(g)/Math.PI>>0)+1,_=f/x;if(d+=_,a){o.push(r,t),o.push(e,i);for(let v=1,T=d;v=0&&(a.join==="round"?g+=ni(S,E,S-M*A,E-k*A,S-N*A,E-q*A,f,!1)+4:g+=2,f.push(S-N*B,E-q*B),f.push(S+N*A,E+q*A));continue}let Nt=(-M+y)*(-k+E)-(-M+S)*(-k+C),At=(-N+P)*(-q+E)-(-N+S)*(-q+U),ie=(V*At-lt*Nt)/Rt,dr=(wt*Nt-st*At)/Rt,hi=(ie-S)*(ie-S)+(dr-E)*(dr-E),Re=S+(ie-S)*A,Se=E+(dr-E)*A,ke=S-(ie-S)*B,qe=E-(dr-E)*B,F=Math.min(V*V+st*st,lt*lt+wt*wt),R=Lt?A:B,j=F+R*R*v;hi<=j?a.join==="bevel"||hi/v>T?(Lt?(f.push(Re,Se),f.push(S+M*B,E+k*B),f.push(Re,Se),f.push(S+N*B,E+q*B)):(f.push(S-M*A,E-k*A),f.push(ke,qe),f.push(S-N*A,E-q*A),f.push(ke,qe)),g+=2):a.join==="round"?Lt?(f.push(Re,Se),f.push(S+M*B,E+k*B),g+=ni(S,E,S+M*B,E+k*B,S+N*B,E+q*B,f,!0)+4,f.push(Re,Se),f.push(S+N*B,E+q*B)):(f.push(S-M*A,E-k*A),f.push(ke,qe),g+=ni(S,E,S-M*A,E-k*A,S-N*A,E-q*A,f,!1)+4,f.push(S-N*A,E-q*A),f.push(ke,qe)):(f.push(Re,Se),f.push(ke,qe)):(f.push(S-M*A,E-k*A),f.push(S+M*B,E+k*B),a.join==="round"?Lt?g+=ni(S,E,S+M*B,E+k*B,S+N*B,E+q*B,f,!0)+2:g+=ni(S,E,S-M*A,E-k*A,S-N*A,E-q*A,f,!1)+2:a.join==="miter"&&hi/v<=T&&(Lt?(f.push(ke,qe),f.push(ke,qe)):(f.push(Re,Se),f.push(Re,Se)),g+=2),f.push(S-N*A,E-q*A),f.push(S+N*B,E+q*B),g+=2)}y=r[(m-2)*2],C=r[(m-2)*2+1],S=r[(m-1)*2],E=r[(m-1)*2+1],M=-(C-E),k=y-S,w=Math.sqrt(M*M+k*k),M/=w,k/=w,M*=_,k*=_,f.push(S-M*A,E-k*A),f.push(S+M*B,E+k*B),h||(a.cap==="round"?g+=ni(S-M*(A-B)*.5,E-k*(A-B)*.5,S-M*A,E-k*A,S+M*B,E+k*B,f,!1)+2:a.cap==="square"&&(g+=J_(S,E,M,k,A,B,!1,f)));let $=1e-4*1e-4;for(let O=x;O{xe();Q_()});function ry(r,t,e,i){let s=1e-4;if(r.length===0)return;let n=r[0],o=r[1],a=r[r.length-2],u=r[r.length-1],l=t||Math.abs(n-a){});var Jc=Ao((d5,Qc)=>{"use strict";Qc.exports=za;Qc.exports.default=za;function za(r,t,e){e=e||2;var i=t&&t.length,s=i?t[0]*e:r.length,n=ny(r,0,s,e,!0),o=[];if(!n||n.next===n.prev)return o;var a,u,l,c,h,d,f;if(i&&(n=lA(r,t,n,e)),r.length>80*e){a=l=r[0],u=c=r[1];for(var m=e;ml&&(l=h),d>c&&(c=d);f=Math.max(l-a,c-u),f=f!==0?32767/f:0}return an(n,o,e,a,u,f,0),o}function ny(r,t,e,i,s){var n,o;if(s===Zc(r,t,e,i)>0)for(n=t;n=t;n-=i)o=sy(n,r[n],r[n+1],o);return o&&Wa(o,o.next)&&(ln(o),o=o.next),o}function oi(r,t){if(!r)return r;t||(t=r);var e=r,i;do if(i=!1,!e.steiner&&(Wa(e,e.next)||_t(e.prev,e,e.next)===0)){if(ln(e),e=t=e.prev,e===e.next)break;i=!0}else e=e.next;while(i||e!==t);return t}function an(r,t,e,i,s,n,o){if(r){!o&&n&&pA(r,i,s,n);for(var a=r,u,l;r.prev!==r.next;){if(u=r.prev,l=r.next,n?oA(r,i,s,n):nA(r)){t.push(u.i/e|0),t.push(r.i/e|0),t.push(l.i/e|0),ln(r),r=l.next,a=l.next;continue}if(r=l,r===a){o?o===1?(r=aA(oi(r),t,e),an(r,t,e,i,s,n,2)):o===2&&uA(r,t,e,i,s,n):an(oi(r),t,e,i,s,n,1);break}}}}function nA(r){var t=r.prev,e=r,i=r.next;if(_t(t,e,i)>=0)return!1;for(var s=t.x,n=e.x,o=i.x,a=t.y,u=e.y,l=i.y,c=sn?s>o?s:o:n>o?n:o,f=a>u?a>l?a:l:u>l?u:l,m=i.next;m!==t;){if(m.x>=c&&m.x<=d&&m.y>=h&&m.y<=f&&Li(s,a,n,u,o,l,m.x,m.y)&&_t(m.prev,m,m.next)>=0)return!1;m=m.next}return!0}function oA(r,t,e,i){var s=r.prev,n=r,o=r.next;if(_t(s,n,o)>=0)return!1;for(var a=s.x,u=n.x,l=o.x,c=s.y,h=n.y,d=o.y,f=au?a>l?a:l:u>l?u:l,x=c>h?c>d?c:d:h>d?h:d,_=Kc(f,m,t,e,i),v=Kc(g,x,t,e,i),T=r.prevZ,y=r.nextZ;T&&T.z>=_&&y&&y.z<=v;){if(T.x>=f&&T.x<=g&&T.y>=m&&T.y<=x&&T!==s&&T!==o&&Li(a,c,u,h,l,d,T.x,T.y)&&_t(T.prev,T,T.next)>=0||(T=T.prevZ,y.x>=f&&y.x<=g&&y.y>=m&&y.y<=x&&y!==s&&y!==o&&Li(a,c,u,h,l,d,y.x,y.y)&&_t(y.prev,y,y.next)>=0))return!1;y=y.nextZ}for(;T&&T.z>=_;){if(T.x>=f&&T.x<=g&&T.y>=m&&T.y<=x&&T!==s&&T!==o&&Li(a,c,u,h,l,d,T.x,T.y)&&_t(T.prev,T,T.next)>=0)return!1;T=T.prevZ}for(;y&&y.z<=v;){if(y.x>=f&&y.x<=g&&y.y>=m&&y.y<=x&&y!==s&&y!==o&&Li(a,c,u,h,l,d,y.x,y.y)&&_t(y.prev,y,y.next)>=0)return!1;y=y.nextZ}return!0}function aA(r,t,e){var i=r;do{var s=i.prev,n=i.next.next;!Wa(s,n)&&oy(s,i,i.next,n)&&un(s,n)&&un(n,s)&&(t.push(s.i/e|0),t.push(i.i/e|0),t.push(n.i/e|0),ln(i),ln(i.next),i=r=n),i=i.next}while(i!==r);return oi(i)}function uA(r,t,e,i,s,n){var o=r;do{for(var a=o.next.next;a!==o.prev;){if(o.i!==a.i&&xA(o,a)){var u=ay(o,a);o=oi(o,o.next),u=oi(u,u.next),an(o,t,e,i,s,n,0),an(u,t,e,i,s,n,0);return}a=a.next}o=o.next}while(o!==r)}function lA(r,t,e,i){var s=[],n,o,a,u,l;for(n=0,o=t.length;n=e.next.y&&e.next.y!==e.y){var a=e.x+(s-e.y)*(e.next.x-e.x)/(e.next.y-e.y);if(a<=i&&a>n&&(n=a,o=e.x=e.x&&e.x>=l&&i!==e.x&&Li(so.x||e.x===o.x&&dA(o,e)))&&(o=e,h=d)),e=e.next;while(e!==u);return o}function dA(r,t){return _t(r.prev,r,t.prev)<0&&_t(t.next,r,r.next)<0}function pA(r,t,e,i){var s=r;do s.z===0&&(s.z=Kc(s.x,s.y,t,e,i)),s.prevZ=s.prev,s.nextZ=s.next,s=s.next;while(s!==r);s.prevZ.nextZ=null,s.prevZ=null,mA(s)}function mA(r){var t,e,i,s,n,o,a,u,l=1;do{for(e=r,r=null,n=null,o=0;e;){for(o++,i=e,a=0,t=0;t0||u>0&&i;)a!==0&&(u===0||!i||e.z<=i.z)?(s=e,e=e.nextZ,a--):(s=i,i=i.nextZ,u--),n?n.nextZ=s:r=s,s.prevZ=n,n=s;e=i}n.nextZ=null,l*=2}while(o>1);return r}function Kc(r,t,e,i,s){return r=(r-e)*s|0,t=(t-i)*s|0,r=(r|r<<8)&16711935,r=(r|r<<4)&252645135,r=(r|r<<2)&858993459,r=(r|r<<1)&1431655765,t=(t|t<<8)&16711935,t=(t|t<<4)&252645135,t=(t|t<<2)&858993459,t=(t|t<<1)&1431655765,r|t<<1}function gA(r){var t=r,e=r;do(t.x=(r-o)*(n-a)&&(r-o)*(i-a)>=(e-o)*(t-a)&&(e-o)*(n-a)>=(s-o)*(i-a)}function xA(r,t){return r.next.i!==t.i&&r.prev.i!==t.i&&!_A(r,t)&&(un(r,t)&&un(t,r)&&yA(r,t)&&(_t(r.prev,r,t.prev)||_t(r,t.prev,t))||Wa(r,t)&&_t(r.prev,r,r.next)>0&&_t(t.prev,t,t.next)>0)}function _t(r,t,e){return(t.y-r.y)*(e.x-t.x)-(t.x-r.x)*(e.y-t.y)}function Wa(r,t){return r.x===t.x&&r.y===t.y}function oy(r,t,e,i){var s=Ha(_t(r,t,e)),n=Ha(_t(r,t,i)),o=Ha(_t(e,i,r)),a=Ha(_t(e,i,t));return!!(s!==n&&o!==a||s===0&&Na(r,e,t)||n===0&&Na(r,i,t)||o===0&&Na(e,r,i)||a===0&&Na(e,t,i))}function Na(r,t,e){return t.x<=Math.max(r.x,e.x)&&t.x>=Math.min(r.x,e.x)&&t.y<=Math.max(r.y,e.y)&&t.y>=Math.min(r.y,e.y)}function Ha(r){return r>0?1:r<0?-1:0}function _A(r,t){var e=r;do{if(e.i!==r.i&&e.next.i!==r.i&&e.i!==t.i&&e.next.i!==t.i&&oy(e,e.next,r,t))return!0;e=e.next}while(e!==r);return!1}function un(r,t){return _t(r.prev,r,r.next)<0?_t(r,t,r.next)>=0&&_t(r,r.prev,t)>=0:_t(r,t,r.prev)<0||_t(r,r.next,t)<0}function yA(r,t){var e=r,i=!1,s=(r.x+t.x)/2,n=(r.y+t.y)/2;do e.y>n!=e.next.y>n&&e.next.y!==e.y&&s<(e.next.x-e.x)*(n-e.y)/(e.next.y-e.y)+e.x&&(i=!i),e=e.next;while(e!==r);return i}function ay(r,t){var e=new qc(r.i,r.x,r.y),i=new qc(t.i,t.x,t.y),s=r.next,n=t.prev;return r.next=t,t.prev=r,e.next=s,s.prev=e,i.next=e,e.prev=i,n.next=i,i.prev=n,i}function sy(r,t,e,i){var s=new qc(r,t,e);return i?(s.next=i.next,s.prev=i,i.next.prev=s,i.next=s):(s.prev=s,s.next=s),s}function ln(r){r.next.prev=r.prev,r.prev.next=r.next,r.prevZ&&(r.prevZ.nextZ=r.nextZ),r.nextZ&&(r.nextZ.prevZ=r.prevZ)}function qc(r,t,e){this.i=r,this.x=t,this.y=e,this.prev=null,this.next=null,this.z=0,this.prevZ=null,this.nextZ=null,this.steiner=!1}za.deviation=function(r,t,e,i){var s=t&&t.length,n=s?t[0]*e:r.length,o=Math.abs(Zc(r,0,n,e));if(s)for(var a=0,u=t.length;a0&&(i+=r[s-1].length,e.holes.push(i))}return e}});function Va(r,t,e,i,s,n,o){let a=(0,uy.default)(r,t,2);if(!a)return;for(let l=0;l{uy=ds(Jc(),1)});var bA,ly,cy=p(()=>{D();th();bA=[],ly={extension:{type:b.ShapeBuilder,name:"polygon"},build(r,t){for(let e=0;e{D();hy={extension:{type:b.ShapeBuilder,name:"rectangle"},build(r,t){let e=r,i=e.x,s=e.y,n=e.width,o=e.height;return n>=0&&o>=0&&(t[0]=i,t[1]=s,t[2]=i+n,t[3]=s,t[4]=i+n,t[5]=s+o,t[6]=i,t[7]=s+o),t},triangulate(r,t,e,i,s,n){let o=0;i*=e,t[i+o]=r[0],t[i+o+1]=r[1],o+=e,t[i+o]=r[2],t[i+o+1]=r[3],o+=e,t[i+o]=r[6],t[i+o+1]=r[7],o+=e,t[i+o]=r[4],t[i+o+1]=r[5],o+=e;let a=i/e;s[n++]=a,s[n++]=a+1,s[n++]=a+2,s[n++]=a+1,s[n++]=a+3,s[n++]=a+2}}});var dy,py=p(()=>{D();dy={extension:{type:b.ShapeBuilder,name:"triangle"},build(r,t){return t[0]=r.x,t[1]=r.y,t[2]=r.x2,t[3]=r.y2,t[4]=r.x3,t[5]=r.y3,t},triangulate(r,t,e,i,s,n){let o=0;i*=e,t[i+o]=r[0],t[i+o+1]=r[1],o+=e,t[i+o]=r[2],t[i+o+1]=r[3],o+=e,t[i+o]=r[4],t[i+o+1]=r[5];let a=i/e;s[n++]=a,s[n++]=a+1,s[n++]=a+2}}});function gy(r,t){let{geometryData:e,batches:i}=t;i.length=0,e.indices.length=0,e.vertices.length=0,e.uvs.length=0;for(let s=0;s{let f=u.length,m=o.length/2,g=[],x=Xa[c.type],_="triangle-list";if(x.build(c,g),h&&jc(g,h),i){let C=c.closePath??!0,S=t;S.pixelLine?(ry(g,C,o,u),_="line-list"):ty(g,S,!1,C,o,u)}else if(e&&l===d){l!==0&&console.warn("[Pixi Graphics] only the last shape have be cut out");let C=[],S=g.slice();SA(e.shapePath).forEach(P=>{C.push(S.length/2),S.push(...P)}),Va(S,C,o,2,m,u,f)}else x.triangulate(g,o,2,m,u,f);let v=a.length/2,T=t.texture;if(T!==I.WHITE){let C=t.matrix;C&&(h&&C.append(h.clone().invert()),V_(o,2,m,a,v,2,o.length/2-m,C))}else X_(a,v,2,o.length/2-m);let y=K.get(si);y.indexOffset=f,y.indexSize=u.length-f,y.attributeOffset=m,y.attributeSize=o.length/2-m,y.baseColor=t.color,y.alpha=t.alpha,y.texture=T,y.geometryData=n,y.topology=_,s.push(y)})}function SA(r){if(!r)return[];let t=r.shapePrimitives,e=[];for(let i=0;i{D();Yt();$_();j_();dt();Qt();Yc();q_();ey();iy();cy();fy();py();th();Xa={};H.handleByMap(b.ShapeBuilder,Xa);H.add(hy,ly,dy,Oi,Y_,K_);vA=new tt});var eh,rh,sh,Ni,$a=p(()=>{D();Fa();$c();Xl();vt();Qt();xy();eh=class{constructor(){this.batches=[],this.geometryData={vertices:[],uvs:[],indices:[]}}},rh=class{constructor(){this.batcher=new on,this.instructions=new Ti}init(){this.instructions.reset()}get geometry(){return X(Lm,"GraphicsContextRenderData#geometry is deprecated, please use batcher.geometry instead."),this.batcher.geometry}},sh=class ih{constructor(t){this._gpuContextHash={},this._graphicsDataContextHash=Object.create(null),t.renderableGC.addManagedHash(this,"_gpuContextHash"),t.renderableGC.addManagedHash(this,"_graphicsDataContextHash")}init(t){ih.defaultOptions.bezierSmoothness=t?.bezierSmoothness??ih.defaultOptions.bezierSmoothness}getContextRenderData(t){return this._graphicsDataContextHash[t.uid]||this._initContextRenderData(t)}updateGpuContext(t){let e=this._gpuContextHash[t.uid]||this._initContext(t);if(t.dirty){e?this._cleanGraphicsContextData(t):e=this._initContext(t),gy(t,e);let i=t.batchMode;t.customShader||i==="no-batch"?e.isBatchable=!1:i==="auto"&&(e.isBatchable=e.geometryData.vertices.length<400),t.dirty=!1}return e}getGpuContext(t){return this._gpuContextHash[t.uid]||this._initContext(t)}_initContextRenderData(t){let e=K.get(rh),{batches:i,geometryData:s}=this._gpuContextHash[t.uid],n=s.vertices.length,o=s.indices.length;for(let c=0;c{K.return(i)})}destroy(){for(let t in this._gpuContextHash)this._gpuContextHash[t]&&this.onGraphicsContextDestroy(this._gpuContextHash[t].context)}};sh.extension={type:[b.WebGLSystem,b.WebGPUSystem,b.CanvasSystem],name:"graphicsContext"};sh.defaultOptions={bezierSmoothness:.5};Ni=sh});var wA,nh,oh,ah,uh,lh,ch,hh,Ct,Me=p(()=>{"use strict";wA={normal:0,add:1,multiply:2,screen:3,overlay:4,erase:5,"normal-npm":6,"add-npm":7,"screen-npm":8,min:9,max:10},nh=0,oh=1,ah=2,uh=3,lh=4,ch=5,hh=class _y{constructor(){this.data=0,this.blendMode="normal",this.polygonOffset=0,this.blend=!0,this.depthMask=!0}get blend(){return!!(this.data&1<>24&255)/255;t[e++]=(r&255)/255*i,t[e++]=(r>>8&255)/255*i,t[e++]=(r>>16&255)/255*i,t[e++]=i}var Hi=p(()=>{"use strict"});var cn,yy=p(()=>{D();Me();Qt();Hi();Yc();cn=class{constructor(t,e){this.state=Ct.for2d(),this._graphicsBatchesHash=Object.create(null),this._destroyRenderableBound=this.destroyRenderable.bind(this),this.renderer=t,this._adaptor=e,this._adaptor.init(),this.renderer.renderableGC.addManagedHash(this,"_graphicsBatchesHash")}validateRenderable(t){let e=t.context,i=!!this._graphicsBatchesHash[t.uid],s=this.renderer.graphicsContext.updateGpuContext(e);return!!(s.isBatchable||i!==s.isBatchable)}addRenderable(t,e){let i=this.renderer.graphicsContext.updateGpuContext(t.context);t.didViewUpdate&&this._rebuild(t),i.isBatchable?this._addToBatcher(t,e):(this.renderer.renderPipes.batch.break(e),e.add(t))}updateRenderable(t){let e=this._graphicsBatchesHash[t.uid];if(e)for(let i=0;i{let a=K.get(si);return o.copyTo(a),a.renderable=t,a.roundPixels=s,a});return this._graphicsBatchesHash[t.uid]===void 0&&t.on("destroyed",this._destroyRenderableBound),this._graphicsBatchesHash[t.uid]=n,n}_removeBatchForRenderable(t){this._graphicsBatchesHash[t].forEach(e=>{K.return(e)}),this._graphicsBatchesHash[t]=null}destroy(){this.renderer=null,this._adaptor.destroy(),this._adaptor=null,this.state=null;for(let t in this._graphicsBatchesHash)this._removeBatchForRenderable(t);this._graphicsBatchesHash=null}};cn.extension={type:[b.WebGLPipes,b.WebGPUPipes,b.CanvasPipes],name:"graphics"}});var fh=p(()=>{D();$a();yy();H.add(cn);H.add(Ni)});var Pr,ja=p(()=>{"use strict";Pr=class{constructor(){this.batcherName="default",this.packAsQuad=!1,this.indexOffset=0,this.attributeOffset=0,this.roundPixels=0,this._batcher=null,this._batch=null,this._uvUpdateId=-1,this._textureMatrixUpdateId=-1}get blendMode(){return this.renderable.groupBlendMode}get topology(){return this._topology||this.geometry.topology}set topology(t){this._topology=t}reset(){this.renderable=null,this.texture=null,this._batcher=null,this._batch=null,this.geometry=null,this._uvUpdateId=-1,this._textureMatrixUpdateId=-1}get uvs(){let e=this.geometry.getBuffer("aUV"),i=e.data,s=i,n=this.texture.textureMatrix;return n.isSimple||(s=this._transformedUvs,(this._textureMatrixUpdateId!==n._updateID||this._uvUpdateId!==e._updateID)&&((!s||s.length{D();ot();wr();ee();tn();Qt();Hi();ja();hn=class{constructor(t,e){this.localUniforms=new ct({uTransformMatrix:{value:new G,type:"mat3x3"},uColor:{value:new Float32Array([1,1,1,1]),type:"vec4"},uRound:{value:0,type:"f32"}}),this.localUniformsBindGroup=new It({0:this.localUniforms}),this._meshDataHash=Object.create(null),this._gpuBatchableMeshHash=Object.create(null),this._destroyRenderableBound=this.destroyRenderable.bind(this),this.renderer=t,this._adaptor=e,this._adaptor.init(),t.renderableGC.addManagedHash(this,"_gpuBatchableMeshHash"),t.renderableGC.addManagedHash(this,"_meshDataHash")}validateRenderable(t){let e=this._getMeshData(t),i=e.batched,s=t.batched;if(e.batched=s,i!==s)return!0;if(s){let n=t._geometry;if(n.indices.length!==e.indexSize||n.positions.length!==e.vertexSize)return e.indexSize=n.indices.length,e.vertexSize=n.positions.length,!0;let o=this._getBatchableMesh(t);return!o._batcher.checkAndUpdateTexture(o,t.texture)}return!1}addRenderable(t,e){let i=this.renderer.renderPipes.batch,{batched:s}=this._getMeshData(t);if(s){let n=this._getBatchableMesh(t);n.texture=t._texture,n.geometry=t._geometry,i.addToBatch(n,e)}else i.break(e),e.add(t)}updateRenderable(t){if(t.batched){let e=this._gpuBatchableMeshHash[t.uid];e.texture=t._texture,e.geometry=t._geometry,e._batcher.updateElement(e)}}destroyRenderable(t){this._meshDataHash[t.uid]=null;let e=this._gpuBatchableMeshHash[t.uid];e&&(K.return(e),this._gpuBatchableMeshHash[t.uid]=null),t.off("destroyed",this._destroyRenderableBound)}execute(t){if(!t.isRenderable)return;t.state.blendMode=ar(t.groupBlendMode,t.texture._source);let e=this.localUniforms;e.uniforms.uTransformMatrix=t.groupTransform,e.uniforms.uRound=this.renderer._roundPixels|t._roundPixels,e.update(),Xe(t.groupColorAlpha,e.uniforms.uColor,0),this._adaptor.execute(this,t)}_getMeshData(t){return this._meshDataHash[t.uid]||this._initMeshData(t)}_initMeshData(t){return this._meshDataHash[t.uid]={batched:t.batched,indexSize:t._geometry.indices?.length,vertexSize:t._geometry.positions?.length},t.on("destroyed",this._destroyRenderableBound),this._meshDataHash[t.uid]}_getBatchableMesh(t){return this._gpuBatchableMeshHash[t.uid]||this._initBatchableMesh(t)}_initBatchableMesh(t){let e=K.get(Pr);return e.renderable=t,e.texture=t._texture,e.transform=t.groupTransform,e.roundPixels=this.renderer._roundPixels|t._roundPixels,this._gpuBatchableMeshHash[t.uid]=e,e}destroy(){for(let t in this._gpuBatchableMeshHash)this._gpuBatchableMeshHash[t]&&K.return(this._gpuBatchableMeshHash[t]);this._gpuBatchableMeshHash=null,this._meshDataHash=null,this.localUniforms=null,this.localUniformsBindGroup=null,this._adaptor.destroy(),this._adaptor=null,this.renderer=null}};hn.extension={type:[b.WebGLPipes,b.WebGPUPipes,b.CanvasPipes],name:"mesh"}});var dh=p(()=>{D();by();H.add(hn)});var Ya,vy=p(()=>{"use strict";Ya=class{execute(t,e){let i=t.state,s=t.renderer,n=e.shader||t.defaultShader;n.resources.uTexture=e.texture._source,n.resources.uniforms=t.localUniforms;let o=s.gl,a=t.getBuffers(e);s.shader.bind(n),s.state.set(i),s.geometry.bind(a.geometry,n.glProgram);let l=a.geometry.indexBuffer.data.BYTES_PER_ELEMENT===2?o.UNSIGNED_SHORT:o.UNSIGNED_INT;o.drawElements(o.TRIANGLES,e.particleChildren.length*6,l,0)}}});function ph(r,t=null){let e=r*6;if(e>65535?t||(t=new Uint32Array(e)):t||(t=new Uint16Array(e)),t.length!==e)throw new Error(`Out buffer length is incorrect, got ${t.length} and expected ${e}`);for(let i=0,s=0;i{"use strict"});function wy(r){return{dynamicUpdate:Sy(r,!0),staticUpdate:Sy(r,!1)}}function Sy(r,t){let e=[];e.push(`\n \n var index = 0;\n\n for (let i = 0; i < ps.length; ++i)\n {\n const p = ps[i];\n\n `);let i=0;for(let n in r){let o=r[n];if(t!==o.dynamic)continue;e.push(`offset = index + ${i}`),e.push(o.code);let a=ae(o.format);i+=a.stride/4}e.push(`\n index += stride * 4;\n }\n `),e.unshift(`\n var stride = ${i};\n `);let s=e.join(`\n`);return new Function("ps","f32v","u32v",s)}var Ey=p(()=>{ii()});function EA(r){let t=[];for(let e in r){let i=r[e];t.push(e,i.code,i.dynamic?"d":"s")}return t.join("_")}var Ka,Cy=p(()=>{Er();ur();Bi();ii();Dc();Ty();Ey();Ka=class{constructor(t){this._size=0,this._generateParticleUpdateCache={};let e=this._size=t.size??1e3,i=t.properties,s=0,n=0;for(let c in i){let h=i[c],d=ae(h.format);h.dynamic?n+=d.stride:s+=d.stride}this._dynamicStride=n/4,this._staticStride=s/4,this.staticAttributeBuffer=new Le(e*4*s),this.dynamicAttributeBuffer=new Le(e*4*n),this.indexBuffer=ph(e);let o=new ye,a=0,u=0;this._staticBuffer=new Tt({data:new Float32Array(1),label:"static-particle-buffer",shrinkToFit:!1,usage:J.VERTEX|J.COPY_DST}),this._dynamicBuffer=new Tt({data:new Float32Array(1),label:"dynamic-particle-buffer",shrinkToFit:!1,usage:J.VERTEX|J.COPY_DST});for(let c in i){let h=i[c],d=ae(h.format);h.dynamic?(o.addAttribute(h.attributeName,{buffer:this._dynamicBuffer,stride:this._dynamicStride*4,offset:a*4,format:h.format}),a+=d.size):(o.addAttribute(h.attributeName,{buffer:this._staticBuffer,stride:this._staticStride*4,offset:u*4,format:h.format}),u+=d.size)}o.addIndex(this.indexBuffer);let l=this.getParticleUpdate(i);this._dynamicUpload=l.dynamicUpdate,this._staticUpload=l.staticUpdate,this.geometry=o}getParticleUpdate(t){let e=EA(t);return this._generateParticleUpdateCache[e]?this._generateParticleUpdateCache[e]:(this._generateParticleUpdateCache[e]=this.generateParticleUpdate(t),this._generateParticleUpdateCache[e])}generateParticleUpdate(t){return wy(t)}update(t,e){t.length>this._size&&(e=!0,this._size=Math.max(t.length,this._size*1.5|0),this.staticAttributeBuffer=new Le(this._size*this._staticStride*4*4),this.dynamicAttributeBuffer=new Le(this._size*this._dynamicStride*4*4),this.indexBuffer=ph(this._size),this.geometry.indexBuffer.setDataWithSize(this.indexBuffer,this.indexBuffer.byteLength,!0));let i=this.dynamicAttributeBuffer;if(this._dynamicUpload(t,i.float32View,i.uint32View),this._dynamicBuffer.setDataWithSize(this.dynamicAttributeBuffer.float32View,t.length*this._dynamicStride*4,!0),e){let s=this.staticAttributeBuffer;this._staticUpload(t,s.float32View,s.uint32View),this._staticBuffer.setDataWithSize(s.float32View,t.length*this._staticStride*4,!0)}}destroy(){this._staticBuffer.destroy(),this._dynamicBuffer.destroy(),this.geometry.destroy()}}});var Ay,Dy=p(()=>{Ay=`varying vec2 vUV;\nvarying vec4 vColor;\n\nuniform sampler2D uTexture;\n\nvoid main(void){\n vec4 color = texture2D(uTexture, vUV) * vColor;\n gl_FragColor = color;\n}`});var Py,By=p(()=>{Py=`attribute vec2 aVertex;\nattribute vec2 aUV;\nattribute vec4 aColor;\n\nattribute vec2 aPosition;\nattribute float aRotation;\n\nuniform mat3 uTranslationMatrix;\nuniform float uRound;\nuniform vec2 uResolution;\nuniform vec4 uColor;\n\nvarying vec2 vUV;\nvarying vec4 vColor;\n\nvec2 roundPixels(vec2 position, vec2 targetSize)\n{ \n return (floor(((position * 0.5 + 0.5) * targetSize) + 0.5) / targetSize) * 2.0 - 1.0;\n}\n\nvoid main(void){\n float cosRotation = cos(aRotation);\n float sinRotation = sin(aRotation);\n float x = aVertex.x * cosRotation - aVertex.y * sinRotation;\n float y = aVertex.x * sinRotation + aVertex.y * cosRotation;\n\n vec2 v = vec2(x, y);\n v = v + aPosition;\n\n gl_Position = vec4((uTranslationMatrix * vec3(v, 1.0)).xy, 0.0, 1.0);\n\n if(uRound == 1.0)\n {\n gl_Position.xy = roundPixels(gl_Position.xy, uResolution);\n }\n\n vUV = aUV;\n vColor = vec4(aColor.rgb * aColor.a, aColor.a) * uColor;\n}\n`});var mh,My=p(()=>{mh=`\nstruct ParticleUniforms {\n uProjectionMatrix:mat3x3,\n uColor:vec4,\n uResolution:vec2,\n uRoundPixels:f32,\n};\n\n@group(0) @binding(0) var uniforms: ParticleUniforms;\n\n@group(1) @binding(0) var uTexture: texture_2d;\n@group(1) @binding(1) var uSampler : sampler;\n\nstruct VSOutput {\n @builtin(position) position: vec4,\n @location(0) uv : vec2,\n @location(1) color : vec4,\n };\n@vertex\nfn mainVertex(\n @location(0) aVertex: vec2,\n @location(1) aPosition: vec2,\n @location(2) aUV: vec2,\n @location(3) aColor: vec4,\n @location(4) aRotation: f32,\n) -> VSOutput {\n \n let v = vec2(\n aVertex.x * cos(aRotation) - aVertex.y * sin(aRotation),\n aVertex.x * sin(aRotation) + aVertex.y * cos(aRotation)\n ) + aPosition;\n\n let position = vec4((uniforms.uProjectionMatrix * vec3(v, 1.0)).xy, 0.0, 1.0);\n\n let vColor = vec4(aColor.rgb * aColor.a, aColor.a) * uniforms.uColor;\n\n return VSOutput(\n position,\n aUV,\n vColor,\n );\n}\n\n@fragment\nfn mainFragment(\n @location(0) uv: vec2,\n @location(1) color: vec4,\n @builtin(position) position: vec4,\n) -> @location(0) vec4 {\n\n var sample = textureSample(uTexture, uSampler, uv) * color;\n \n return sample;\n}`});var qa,Fy=p(()=>{$t();ot();ri();Fi();Be();dt();jl();Dy();By();My();qa=class extends St{constructor(){let t=be.from({vertex:Py,fragment:Ay}),e=ve.from({fragment:{source:mh,entryPoint:"mainFragment"},vertex:{source:mh,entryPoint:"mainVertex"}});super({glProgram:t,gpuProgram:e,resources:{uTexture:I.WHITE.source,uSampler:new fa({}),uniforms:{uTranslationMatrix:{value:new G,type:"mat3x3"},uColor:{value:new Z(16777215),type:"vec4"},uRound:{value:1,type:"f32"},uResolution:{value:[0,0],type:"vec2"}}}})}}});var zi,gh=p(()=>{ot();ee();tn();Me();Hi();Cy();Fy();zi=class{constructor(t,e){this.state=Ct.for2d(),this._gpuBufferHash=Object.create(null),this._destroyRenderableBound=this.destroyRenderable.bind(this),this.localUniforms=new ct({uTranslationMatrix:{value:new G,type:"mat3x3"},uColor:{value:new Float32Array(4),type:"vec4"},uRound:{value:1,type:"f32"},uResolution:{value:[0,0],type:"vec2"}}),this.renderer=t,this.adaptor=e,this.defaultShader=new qa,this.state=Ct.for2d()}validateRenderable(t){return!1}addRenderable(t,e){this.renderer.renderPipes.batch.break(e),e.add(t)}getBuffers(t){return this._gpuBufferHash[t.uid]||this._initBuffer(t)}_initBuffer(t){return this._gpuBufferHash[t.uid]=new Ka({size:t.particleChildren.length,properties:t._properties}),t.on("destroyed",this._destroyRenderableBound),this._gpuBufferHash[t.uid]}updateRenderable(t){}destroyRenderable(t){this._gpuBufferHash[t.uid].destroy(),this._gpuBufferHash[t.uid]=null,t.off("destroyed",this._destroyRenderableBound)}execute(t){let e=t.particleChildren;if(e.length===0)return;let i=this.renderer,s=this.getBuffers(t);t.texture||(t.texture=e[0].texture);let n=this.state;s.update(e,t._childrenDirty),t._childrenDirty=!1,n.blendMode=ar(t.blendMode,t.texture._source);let o=this.localUniforms.uniforms,a=o.uTranslationMatrix;t.worldTransform.copyTo(a),a.prepend(i.globalUniforms.globalUniformData.projectionMatrix),o.uResolution=i.globalUniforms.globalUniformData.resolution,o.uRound=i._roundPixels|t._roundPixels,Xe(t.groupColorAlpha,o.uColor,0),this.adaptor.execute(this,t)}destroy(){this.defaultShader&&(this.defaultShader.destroy(),this.defaultShader=null)}}});var fn,Ry=p(()=>{D();vy();gh();fn=class extends zi{constructor(t){super(t,new Ya)}};fn.extension={type:[b.WebGLPipes],name:"particle"}});var Za,ky=p(()=>{"use strict";Za=class{execute(t,e){let i=t.renderer,s=e.shader||t.defaultShader;s.groups[0]=i.renderPipes.uniformBatch.getUniformBindGroup(t.localUniforms,!0),s.groups[1]=i.texture.getTextureBindGroup(e.texture);let n=t.state,o=t.getBuffers(e);i.encoder.draw({geometry:o.geometry,shader:e.shader||t.defaultShader,state:n,size:e.particleChildren.length*6})}}});var dn,Gy=p(()=>{D();ky();gh();dn=class extends zi{constructor(t){super(t,new Za)}};dn.extension={type:[b.WebGPUPipes],name:"particle"}});var xh=p(()=>{D();Ry();Gy();H.add(fn);H.add(dn)});var $e,pn=p(()=>{"use strict";$e=class{constructor(){this.batcherName="default",this.topology="triangle-list",this.attributeSize=4,this.indexSize=6,this.packAsQuad=!0,this.roundPixels=0,this._attributeStart=0,this._batcher=null,this._batch=null}get blendMode(){return this.renderable.groupBlendMode}get color(){return this.renderable.groupColorAlpha}reset(){this.renderable=null,this.texture=null,this._batcher=null,this._batch=null,this.bounds=null}}});var mn,Iy=p(()=>{D();Sa();Qt();pn();mn=class{constructor(t){this._gpuText=Object.create(null),this._destroyRenderableBound=this.destroyRenderable.bind(this),this._renderer=t,this._renderer.runners.resolutionChange.add(this),this._renderer.renderableGC.addManagedHash(this,"_gpuText")}resolutionChange(){for(let t in this._gpuText){let e=this._gpuText[t];if(!e)continue;let i=e.batchableSprite.renderable;i._autoResolution&&(i._resolution=this._renderer.resolution,i.onViewUpdate())}}validateRenderable(t){let e=this._getGpuText(t),i=t._getKey();return e.currentKey!==i}addRenderable(t,e){let s=this._getGpuText(t).batchableSprite;t._didTextUpdate&&this._updateText(t),this._renderer.renderPipes.batch.addToBatch(s,e)}updateRenderable(t){let i=this._getGpuText(t).batchableSprite;t._didTextUpdate&&this._updateText(t),i._batcher.updateElement(i)}destroyRenderable(t){t.off("destroyed",this._destroyRenderableBound),this._destroyRenderableById(t.uid)}_destroyRenderableById(t){let e=this._gpuText[t];this._renderer.canvasText.decreaseReferenceCount(e.currentKey),K.return(e.batchableSprite),this._gpuText[t]=null}_updateText(t){let e=t._getKey(),i=this._getGpuText(t),s=i.batchableSprite;i.currentKey!==e&&this._updateGpuText(t),t._didTextUpdate=!1;let n=t._style.padding;Qr(s.bounds,t._anchor,s.texture,n)}_updateGpuText(t){let e=this._getGpuText(t),i=e.batchableSprite;e.texture&&this._renderer.canvasText.decreaseReferenceCount(e.currentKey),e.texture=i.texture=this._renderer.canvasText.getManagedTexture(t),e.currentKey=t._getKey(),i.texture=e.texture}_getGpuText(t){return this._gpuText[t.uid]||this.initGpuText(t)}initGpuText(t){let e={texture:null,currentKey:"--",batchableSprite:K.get($e)};return e.batchableSprite.renderable=t,e.batchableSprite.transform=t.groupTransform,e.batchableSprite.bounds={minX:0,maxX:1,minY:0,maxY:0},e.batchableSprite.roundPixels=this._renderer._roundPixels|t._roundPixels,this._gpuText[t.uid]=e,t._resolution=t._autoResolution?this._renderer.resolution:t.resolution,this._updateText(t),t.on("destroyed",this._destroyRenderableBound),e}destroy(){for(let t in this._gpuText)this._destroyRenderableById(t);this._gpuText=null,this._renderer=null}};mn.extension={type:[b.WebGLPipes,b.WebGPUPipes,b.CanvasPipes],name:"text"}});var _h,ue,Wi=p(()=>{Pt();Os();_h=class{constructor(t){this._canvasPool=Object.create(null),this.canvasOptions=t||{},this.enableFullScreen=!1}_createCanvasAndContext(t,e){let i=Q.get().createCanvas();i.width=t,i.height=e;let s=i.getContext("2d");return{canvas:i,context:s}}getOptimalCanvasAndContext(t,e,i=1){t=Math.ceil(t*i-1e-6),e=Math.ceil(e*i-1e-6),t=ir(t),e=ir(e);let s=(t<<17)+(e<<1);this._canvasPool[s]||(this._canvasPool[s]=[]);let n=this._canvasPool[s].pop();return n||(n=this._createCanvasAndContext(t,e)),n}returnCanvasAndContext(t){let e=t.canvas,{width:i,height:s}=e,n=(i<<17)+(s<<1);t.context.clearRect(0,0,i,s),this._canvasPool[n].push(t)}clear(){this._canvasPool={}}},ue=new _h});function Uy(r,t,e){for(let i=0,s=4*e*t;i{Yt()});var Hy,Br,Qa=p(()=>{$t();Pt();ot();Aa();dt();jt();Hy=class yh{constructor(t,e,i,s){this.uid=rt("fillGradient"),this.type="linear",this.gradientStops=[],this._styleKey=null,this.x0=t,this.y0=e,this.x1=i,this.y1=s}addColorStop(t,e){return this.gradientStops.push({offset:t,color:Z.shared.setValue(e).toHexa()}),this._styleKey=null,this}buildLinearGradient(){if(this.texture)return;let t=yh.defaultTextureSize,{gradientStops:e}=this,i=Q.get().createCanvas();i.width=t,i.height=t;let s=i.getContext("2d"),n=s.createLinearGradient(0,0,yh.defaultTextureSize,1);for(let g=0;g`${s.offset}-${s.color}`).join("-"),e=this.texture.uid,i=this.transform.toArray().join("-");return`fill-gradient-${this.uid}-${t}-${e}-${i}-${this.x0}-${this.y0}-${this.x1}-${this.y1}`}};Hy.defaultTextureSize=256;Br=Hy});var zy,cr,Ja=p(()=>{ot();jt();zy={repeat:{addressModeU:"repeat",addressModeV:"repeat"},"repeat-x":{addressModeU:"repeat",addressModeV:"clamp-to-edge"},"repeat-y":{addressModeU:"clamp-to-edge",addressModeV:"repeat"},"no-repeat":{addressModeU:"clamp-to-edge",addressModeV:"clamp-to-edge"}},cr=class{constructor(t,e){this.uid=rt("fillPattern"),this.transform=new G,this._styleKey=null,this.texture=t,this.transform.scale(1/t.frame.width,1/t.frame.height),e&&(t.source.style.addressModeU=zy[e].addressModeU,t.source.style.addressModeV=zy[e].addressModeV)}setTransform(t){let e=this.texture;this.transform.copyFrom(t),this.transform.invert(),this.transform.scale(1/e.frame.width,1/e.frame.height),this._styleKey=null}get styleKey(){return this._styleKey?this._styleKey:(this._styleKey=`fill-pattern-${this.uid}-${this.texture.uid}-${this.transform.toArray().join("-")}`,this._styleKey)}}});var Vy=Ao((A8,Wy)=>{Wy.exports=AA;var bh={a:7,c:6,h:1,l:2,m:2,q:4,s:4,t:2,v:1,z:0},CA=/([astvzqmhlc])([^astvzqmhlc]*)/ig;function AA(r){var t=[];return r.replace(CA,function(e,i,s){var n=i.toLowerCase();for(s=PA(s),n=="m"&&s.length>2&&(t.push([i].concat(s.splice(0,2))),n="l",i=i=="m"?"l":"L");;){if(s.length==bh[n])return s.unshift(i),t.push(s);if(s.length0&&(s=i.pop(),s?(n=s.startX,o=s.startY):(n=0,o=0)),s=null;break;default:z(`Unknown SVG path command: ${l}`)}l!=="Z"&&l!=="z"&&s===null&&(s={startX:n,startY:o},i.push(s))}return t}var Xy,jy=p(()=>{Xy=ds(Vy(),1);gt()});var ai,vh=p(()=>{Yt();ai=class r{constructor(t=0,e=0,i=0){this.type="circle",this.x=t,this.y=e,this.radius=i}clone(){return new r(this.x,this.y,this.radius)}contains(t,e){if(this.radius<=0)return!1;let i=this.radius*this.radius,s=this.x-t,n=this.y-e;return s*=s,n*=n,s+n<=i}strokeContains(t,e,i,s=.5){if(this.radius===0)return!1;let n=this.x-t,o=this.y-e,a=this.radius,u=(1-s)*i,l=Math.sqrt(n*n+o*o);return l<=a+u&&l>a-(i-u)}getBounds(t){return t||(t=new tt),t.x=this.x-this.radius,t.y=this.y-this.radius,t.width=this.radius*2,t.height=this.radius*2,t}copyFrom(t){return this.x=t.x,this.y=t.y,this.radius=t.radius,this}copyTo(t){return t.copyFrom(this),t}toString(){return`[pixi.js/math:Circle x=${this.x} y=${this.y} radius=${this.radius}]`}}});var tu,Yy=p(()=>{Yt();tu=class r{constructor(t=0,e=0,i=0,s=0){this.type="ellipse",this.x=t,this.y=e,this.halfWidth=i,this.halfHeight=s}clone(){return new r(this.x,this.y,this.halfWidth,this.halfHeight)}contains(t,e){if(this.halfWidth<=0||this.halfHeight<=0)return!1;let i=(t-this.x)/this.halfWidth,s=(e-this.y)/this.halfHeight;return i*=i,s*=s,i+s<=1}strokeContains(t,e,i,s=.5){let{halfWidth:n,halfHeight:o}=this;if(n<=0||o<=0)return!1;let a=i*(1-s),u=i-a,l=n-u,c=o-u,h=n+a,d=o+a,f=t-this.x,m=e-this.y,g=f*f/(l*l)+m*m/(c*c),x=f*f/(h*h)+m*m/(d*d);return g>1&&x<=1}getBounds(t){return t||(t=new tt),t.x=this.x-this.halfWidth,t.y=this.y-this.halfHeight,t.width=this.halfWidth*2,t.height=this.halfHeight*2,t}copyFrom(t){return this.x=t.x,this.y=t.y,this.halfWidth=t.halfWidth,this.halfHeight=t.halfHeight,this}copyTo(t){return t.copyFrom(this),t}toString(){return`[pixi.js/math:Ellipse x=${this.x} y=${this.y} halfWidth=${this.halfWidth} halfHeight=${this.halfHeight}]`}}});function Ky(r,t,e,i,s,n){let o=r-e,a=t-i,u=s-e,l=n-i,c=o*u+a*l,h=u*u+l*l,d=-1;h!==0&&(d=c/h);let f,m;d<0?(f=e,m=i):d>1?(f=s,m=n):(f=e+d*u,m=i+d*l);let g=r-f,x=t-m;return g*g+x*x}var qy=p(()=>{"use strict"});var Vi,Zy=p(()=>{qy();Yt();Vi=class r{constructor(...t){this.type="polygon";let e=Array.isArray(t[0])?t[0]:t;if(typeof e[0]!="number"){let i=[];for(let s=0,n=e.length;se!=c>e&&t<(l-a)*((e-u)/(c-u))+a&&(i=!i)}return i}strokeContains(t,e,i,s=.5){let n=i*i,o=n*(1-s),a=n-o,{points:u}=this,l=u.length-(this.closePath?0:2);for(let c=0;cs?l:s,n=co?c:o}return t.x=i,t.width=s-i,t.y=n,t.height=o-n,t}copyFrom(t){return this.points=t.points.slice(),this.closePath=t.closePath,this}copyTo(t){return t.copyFrom(this),t}toString(){return`[pixi.js/math:PolygoncloseStroke=${this.closePath}points=${this.points.reduce((t,e)=>`${t}, ${e}`,"")}]`}get lastX(){return this.points[this.points.length-2]}get lastY(){return this.points[this.points.length-1]}get x(){return this.points[this.points.length-2]}get y(){return this.points[this.points.length-1]}}});var eu,ru,Qy=p(()=>{Yt();eu=(r,t,e,i,s,n,o)=>{let a=r-e,u=t-i,l=Math.sqrt(a*a+u*u);return l>=s-n&&l<=s+o},ru=class r{constructor(t=0,e=0,i=0,s=0,n=20){this.type="roundedRectangle",this.x=t,this.y=e,this.width=i,this.height=s,this.radius=n}getBounds(t){return t||(t=new tt),t.x=this.x,t.y=this.y,t.width=this.width,t.height=this.height,t}clone(){return new r(this.x,this.y,this.width,this.height,this.radius)}copyFrom(t){return this.x=t.x,this.y=t.y,this.width=t.width,this.height=t.height,this}copyTo(t){return t.copyFrom(this),t}contains(t,e){if(this.width<=0||this.height<=0)return!1;if(t>=this.x&&t<=this.x+this.width&&e>=this.y&&e<=this.y+this.height){let i=Math.max(0,Math.min(this.radius,Math.min(this.width,this.height)/2));if(e>=this.y+i&&e<=this.y+this.height-i||t>=this.x+i&&t<=this.x+this.width-i)return!0;let s=t-(this.x+i),n=e-(this.y+i),o=i*i;if(s*s+n*n<=o||(s=t-(this.x+this.width-i),s*s+n*n<=o)||(n=e-(this.y+this.height-i),s*s+n*n<=o)||(s=t-(this.x+i),s*s+n*n<=o))return!0}return!1}strokeContains(t,e,i,s=.5){let{x:n,y:o,width:a,height:u,radius:l}=this,c=i*(1-s),h=i-c,d=n+l,f=o+l,m=a-l*2,g=u-l*2,x=n+a,_=o+u;return(t>=n-c&&t<=n+h||t>=x-h&&t<=x+c)&&e>=f&&e<=f+g||(e>=o-c&&e<=o+h||e>=_-h&&e<=_+c)&&t>=d&&t<=d+m?!0:tx-l&&ex-l&&e>_-l&&eu(t,e,x-l,_-l,l,h,c)||t_-l&&eu(t,e,d,_-l,l,h,c)}toString(){return`[pixi.js/math:RoundedRectangle x=${this.x} y=${this.y}width=${this.width} height=${this.height} radius=${this.radius}]`}}});function su(r,t,e,i,s,n,o,a,u,l){let h=Math.min(.99,Math.max(0,l??Ni.defaultOptions.bezierSmoothness)),d=(MA-h)/1;return d*=d,FA(t,e,i,s,n,o,a,u,r,d),r}function FA(r,t,e,i,s,n,o,a,u,l){Sh(r,t,e,i,s,n,o,a,u,l,0),u.push(o,a)}function Sh(r,t,e,i,s,n,o,a,u,l,c){if(c>BA)return;let h=Math.PI,d=(r+e)/2,f=(t+i)/2,m=(e+s)/2,g=(i+n)/2,x=(s+o)/2,_=(n+a)/2,v=(d+m)/2,T=(f+g)/2,y=(m+x)/2,C=(g+_)/2,S=(v+y)/2,E=(T+C)/2;if(c>0){let P=o-r,U=a-t,M=Math.abs((e-o)*U-(i-a)*P),k=Math.abs((s-o)*U-(n-a)*P),N,q;if(M>iu&&k>iu){if((M+k)*(M+k)<=l*(P*P+U*U)){if(Xi=h&&(N=2*h-N),q>=h&&(q=2*h-q),N+qui){u.push(e,i);return}if(q>ui){u.push(s,n);return}}}}else if(M>iu){if(M*M<=l*(P*P+U*U)){if(Xi=h&&(N=2*h-N),Nui){u.push(e,i);return}}}else if(k>iu){if(k*k<=l*(P*P+U*U)){if(Xi=h&&(N=2*h-N),Nui){u.push(s,n);return}}}else if(P=S-(r+o)/2,U=E-(t+a)/2,P*P+U*U<=l){u.push(S,E);return}}Sh(r,t,d,f,v,T,S,E,u,l,c+1),Sh(S,E,y,C,x,_,o,a,u,l,c+1)}var BA,iu,MA,Th,Xi,ui,wh=p(()=>{$a();BA=8,iu=11920929e-14,MA=1,Th=.01,Xi=0,ui=0});function t0(r,t,e,i,s,n,o,a){let l=Math.min(.99,Math.max(0,a??Ni.defaultOptions.bezierSmoothness)),c=(GA-l)/1;return c*=c,UA(t,e,i,s,n,o,r,c),r}function UA(r,t,e,i,s,n,o,a){Eh(o,r,t,e,i,s,n,a,0),o.push(s,n)}function Eh(r,t,e,i,s,n,o,a,u){if(u>RA)return;let l=Math.PI,c=(t+i)/2,h=(e+s)/2,d=(i+n)/2,f=(s+o)/2,m=(c+d)/2,g=(h+f)/2,x=n-t,_=o-e,v=Math.abs((i-n)*_-(s-o)*x);if(v>kA){if(v*v<=a*(x*x+_*_)){if(Jy=l&&(T=2*l-T),T{$a();RA=8,kA=11920929e-14,GA=1,IA=.01,Jy=0});function nu(r,t,e,i,s,n,o,a){let u=Math.abs(s-n);(!o&&s>n||o&&n>s)&&(u=2*Math.PI-u),a||(a=Math.max(6,Math.floor(6*Math.pow(i,1/3)*(u/Math.PI)))),a=Math.max(a,3);let l=u/a,c=s;l*=o?-1:1;for(let h=0;h{"use strict"});function r0(r,t,e,i,s,n){let o=r[r.length-2],u=r[r.length-1]-e,l=o-t,c=s-e,h=i-t,d=Math.abs(u*h-l*c);if(d<1e-8||n===0){(r[r.length-2]!==t||r[r.length-1]!==e)&&r.push(t,e);return}let f=u*u+l*l,m=c*c+h*h,g=u*c+l*h,x=n*Math.sqrt(f)/d,_=n*Math.sqrt(m)/d,v=x*g/f,T=_*g/m,y=x*h+_*l,C=x*c+_*u,S=l*(_+v),E=u*(_+v),P=h*(x+T),U=c*(x+T),M=Math.atan2(E-C,S-y),k=Math.atan2(U-C,P-y);nu(r,y+t,C+e,n,M,k,l*c>h*u)}var i0=p(()=>{Ch()});function OA(r,t){let e=t===-1.5707963267948966?-.551915024494:1.3333333333333333*Math.tan(t/4),i=t===1.5707963267948966?.551915024494:e,s=Math.cos(r),n=Math.sin(r),o=Math.cos(r+t),a=Math.sin(r+t);return[{x:s-n*i,y:n+s*i},{x:o+a*i,y:a-o*i},{x:o,y:a}]}function n0(r,t,e,i,s,n,o,a=0,u=0,l=0){if(n===0||o===0)return;let c=Math.sin(a*gn/360),h=Math.cos(a*gn/360),d=h*(t-i)/2+c*(e-s)/2,f=-c*(t-i)/2+h*(e-s)/2;if(d===0&&f===0)return;n=Math.abs(n),o=Math.abs(o);let m=Math.pow(d,2)/Math.pow(n,2)+Math.pow(f,2)/Math.pow(o,2);m>1&&(n*=Math.sqrt(m),o*=Math.sqrt(m)),LA(t,e,i,s,n,o,u,l,c,h,d,f,Ah);let{ang1:g,ang2:x}=Ah,{centerX:_,centerY:v}=Ah,T=Math.abs(x)/(gn/4);Math.abs(1-T)<1e-7&&(T=1);let y=Math.max(Math.ceil(T),1);x/=y;let C=r[r.length-2],S=r[r.length-1],E={x:0,y:0};for(let P=0;P{wh();gn=Math.PI*2,Ah={centerX:0,centerY:0,ang1:0,ang2:0},Dh=({x:r,y:t},e,i,s,n,o,a,u)=>{r*=e,t*=i;let l=s*r-n*t,c=n*r+s*t;return u.x=l+o,u.y=c+a,u};s0=(r,t,e,i)=>{let s=r*i-t*e<0?-1:1,n=r*e+t*i;return n>1&&(n=1),n<-1&&(n=-1),s*Math.acos(n)},LA=(r,t,e,i,s,n,o,a,u,l,c,h,d)=>{let f=Math.pow(s,2),m=Math.pow(n,2),g=Math.pow(c,2),x=Math.pow(h,2),_=f*m-f*x-m*g;_<0&&(_=0),_/=f*x+m*g,_=Math.sqrt(_)*(o===a?-1:1);let v=_*s/n*h,T=_*-n/s*c,y=l*v-u*T+(r+e)/2,C=u*v+l*T+(t+i)/2,S=(c-v)/s,E=(h-T)/n,P=(-c-v)/s,U=(-h-T)/n,M=s0(1,0,S,E),k=s0(S,E,P,U);a===0&&k>0&&(k-=gn),a===1&&k<0&&(k+=gn),d.centerX=y,d.centerY=C,d.ang1=M,d.ang2=k}});function a0(r,t,e){let i=(o,a)=>{let u=a.x-o.x,l=a.y-o.y,c=Math.sqrt(u*u+l*l),h=u/c,d=l/c;return{len:c,nx:h,ny:d}},s=(o,a)=>{o===0?r.moveTo(a.x,a.y):r.lineTo(a.x,a.y)},n=t[t.length-1];for(let o=0;o0&&(f=-1,m=!0);let g=d/2,x,_=Math.abs(Math.cos(g)*u/Math.sin(g));_>Math.min(c.len/2,h.len/2)?(_=Math.min(c.len/2,h.len/2),x=Math.abs(_*Math.sin(g)/Math.cos(g))):x=u;let v=a.x+h.nx*_+-h.ny*x*f,T=a.y+h.ny*_+h.nx*x*f,y=Math.atan2(c.ny,c.nx)+Math.PI/2*f,C=Math.atan2(h.ny,h.nx)-Math.PI/2*f;o===0&&r.moveTo(v+Math.cos(y)*x,T+Math.sin(y)*x),r.arc(v,T,x,y,C,m),n=a}}function u0(r,t,e,i){let s=(a,u)=>Math.sqrt((a.x-u.x)**2+(a.y-u.y)**2),n=(a,u,l)=>({x:a.x+(u.x-a.x)*l,y:a.y+(u.y-a.y)*l}),o=t.length;for(let a=0;a{"use strict"});var NA,ou,c0=p(()=>{vh();Yy();Zy();Yt();Qy();ce();wh();e0();Ch();i0();o0();l0();NA=new tt,ou=class{constructor(t){this.shapePrimitives=[],this._currentPoly=null,this._bounds=new ft,this._graphicsPath2D=t}moveTo(t,e){return this.startPoly(t,e),this}lineTo(t,e){this._ensurePoly();let i=this._currentPoly.points,s=i[i.length-2],n=i[i.length-1];return(s!==t||n!==e)&&i.push(t,e),this}arc(t,e,i,s,n,o){this._ensurePoly(!1);let a=this._currentPoly.points;return nu(a,t,e,i,s,n,o),this}arcTo(t,e,i,s,n){this._ensurePoly();let o=this._currentPoly.points;return r0(o,t,e,i,s,n),this}arcToSvg(t,e,i,s,n,o,a){let u=this._currentPoly.points;return n0(u,this._currentPoly.lastX,this._currentPoly.lastY,o,a,t,e,i,s,n),this}bezierCurveTo(t,e,i,s,n,o,a){this._ensurePoly();let u=this._currentPoly;return su(this._currentPoly.points,u.lastX,u.lastY,t,e,i,s,n,o,a),this}quadraticCurveTo(t,e,i,s,n){this._ensurePoly();let o=this._currentPoly;return t0(this._currentPoly.points,o.lastX,o.lastY,t,e,i,s,n),this}closePath(){return this.endPoly(!0),this}addPath(t,e){this.endPoly(),e&&!e.isIdentity()&&(t=t.clone(!0),t.transform(e));for(let i=0;i=2;h-=2)c[h]===c[h-2]&&c[h-1]===c[h-3]&&c.splice(h-1,2);return this.poly(c,!0,o)}ellipse(t,e,i,s,n){return this.drawShape(new tu(t,e,i,s),n),this}roundRect(t,e,i,s,n,o){return this.drawShape(new ru(t,e,i,s,n),o),this}drawShape(t,e){return this.endPoly(),this.shapePrimitives.push({shape:t,transform:e}),this}startPoly(t,e){let i=this._currentPoly;return i&&this.endPoly(),i=new Vi,i.points.push(t,e),this._currentPoly=i,this}endPoly(t=!1){let e=this._currentPoly;return e&&e.points.length>2&&(e.closePath=t,this.shapePrimitives.push({shape:e})),this._currentPoly=null,this}_ensurePoly(t=!0){if(!this._currentPoly&&(this._currentPoly=new Vi,t)){let e=this.shapePrimitives[this.shapePrimitives.length-1];if(e){let i=e.shape.x,s=e.shape.y;if(e.transform&&!e.transform.isIdentity()){let n=e.transform,o=i;i=n.a*i+n.c*s+n.tx,s=n.b*o+n.d*s+n.ty}this._currentPoly.points.push(i,s)}else this._currentPoly.points.push(0,0)}}buildPath(){let t=this._graphicsPath2D;this.shapePrimitives.length=0,this._currentPoly=null;for(let e=0;e{xe();jt();gt();jy();c0();Mr=class r{constructor(t){this.instructions=[],this.uid=rt("graphicsPath"),this._dirty=!0,typeof t=="string"?$y(t,this):this.instructions=t?.slice()??[]}get shapePath(){return this._shapePath||(this._shapePath=new ou(this)),this._dirty&&(this._dirty=!1,this._shapePath.buildPath()),this._shapePath}addPath(t,e){return t=t.clone(),this.instructions.push({action:"addPath",data:[t,e]}),this._dirty=!0,this}arc(...t){return this.instructions.push({action:"arc",data:t}),this._dirty=!0,this}arcTo(...t){return this.instructions.push({action:"arcTo",data:t}),this._dirty=!0,this}arcToSvg(...t){return this.instructions.push({action:"arcToSvg",data:t}),this._dirty=!0,this}bezierCurveTo(...t){return this.instructions.push({action:"bezierCurveTo",data:t}),this._dirty=!0,this}bezierCurveToShort(t,e,i,s,n){let o=this.instructions[this.instructions.length-1],a=this.getLastPoint(et.shared),u=0,l=0;if(!o||o.action!=="bezierCurveTo")u=a.x,l=a.y;else{u=o.data[2],l=o.data[3];let c=a.x,h=a.y;u=c+(c-u),l=h+(h-l)}return this.instructions.push({action:"bezierCurveTo",data:[u,l,t,e,i,s,n]}),this._dirty=!0,this}closePath(){return this.instructions.push({action:"closePath",data:[]}),this._dirty=!0,this}ellipse(...t){return this.instructions.push({action:"ellipse",data:t}),this._dirty=!0,this}lineTo(...t){return this.instructions.push({action:"lineTo",data:t}),this._dirty=!0,this}moveTo(...t){return this.instructions.push({action:"moveTo",data:t}),this}quadraticCurveTo(...t){return this.instructions.push({action:"quadraticCurveTo",data:t}),this._dirty=!0,this}quadraticCurveToShort(t,e,i){let s=this.instructions[this.instructions.length-1],n=this.getLastPoint(et.shared),o=0,a=0;if(!s||s.action!=="quadraticCurveTo")o=n.x,a=n.y;else{o=s.data[0],a=s.data[1];let u=n.x,l=n.y;o=u+(u-o),a=l+(l-a)}return this.instructions.push({action:"quadraticCurveTo",data:[o,a,t,e,i]}),this._dirty=!0,this}rect(t,e,i,s,n){return this.instructions.push({action:"rect",data:[t,e,i,s,n]}),this._dirty=!0,this}circle(t,e,i,s){return this.instructions.push({action:"circle",data:[t,e,i,s]}),this._dirty=!0,this}roundRect(...t){return this.instructions.push({action:"roundRect",data:t}),this._dirty=!0,this}poly(...t){return this.instructions.push({action:"poly",data:t}),this._dirty=!0,this}regularPoly(...t){return this.instructions.push({action:"regularPoly",data:t}),this._dirty=!0,this}roundPoly(...t){return this.instructions.push({action:"roundPoly",data:t}),this._dirty=!0,this}roundShape(...t){return this.instructions.push({action:"roundShape",data:t}),this._dirty=!0,this}filletRect(...t){return this.instructions.push({action:"filletRect",data:t}),this._dirty=!0,this}chamferRect(...t){return this.instructions.push({action:"chamferRect",data:t}),this._dirty=!0,this}star(t,e,i,s,n,o,a){n||(n=s/2);let u=-1*Math.PI/2+o,l=i*2,c=Math.PI*2/l,h=[];for(let d=0;dparseInt(P,10)),t.context.poly(v,!0),e&&t.context.fill(),i&&t.context.stroke();break;case"polyline":T=r.getAttribute("points"),v=T.match(/\\d+/g).map(P=>parseInt(P,10)),t.context.poly(v,!1),i&&t.context.stroke();break;case"g":case"svg":break;default:{console.info(`[SVG parser] <${r.nodeName}> elements unsupported`);break}}for(let P=0;P{$t();Ph()});function zA(r){return Z.isColorLike(r)}function p0(r){return r instanceof cr}function m0(r){return r instanceof Br}function WA(r,t,e){let i=Z.shared.setValue(t??0);return r.color=i.toNumber(),r.alpha=i.alpha===1?e.alpha:i.alpha,r.texture=I.WHITE,{...e,...r}}function g0(r,t,e){return r.fill=t,r.color=16777215,r.texture=t.texture,r.matrix=t.transform,{...e,...r}}function x0(r,t,e){return t.buildLinearGradient(),r.fill=t,r.color=16777215,r.texture=t.texture,r.matrix=t.transform,{...e,...r}}function VA(r,t){let e={...t,...r};if(e.texture){if(e.texture!==I.WHITE){let n=e.matrix?.clone().invert()||new G;n.translate(e.texture.frame.x,e.texture.frame.y),n.scale(1/e.texture.source.width,1/e.texture.source.height),e.matrix=n}let s=e.texture.source.style;s.addressMode==="clamp-to-edge"&&(s.addressMode="repeat",s.update())}let i=Z.shared.setValue(e.color);return e.alpha*=i.alpha,e.color=i.toNumber(),e.matrix=e.matrix?e.matrix.clone():null,e}function hr(r,t){if(r==null)return null;let e={},i=r;return zA(r)?WA(e,r,t):p0(r)?g0(e,r,t):m0(r)?x0(e,r,t):i.fill&&p0(i.fill)?g0(i,i.fill,t):i.fill&&m0(i.fill)?x0(i,i.fill,t):VA(i,t)}function $i(r,t){let{width:e,alignment:i,miterLimit:s,cap:n,join:o,pixelLine:a,...u}=t,l=hr(r,u);return l?{width:e,alignment:i,miterLimit:s,cap:n,join:o,pixelLine:a,...l}:null}var Bh=p(()=>{$t();ot();dt();Qa();Ja()});var XA,_0,Mh,de,Fh=p(()=>{Xt();$t();ot();xe();dt();jt();vt();ce();Ph();d0();Bh();XA=new et,_0=new G,Mh=class je extends ht{constructor(){super(...arguments),this.uid=rt("graphicsContext"),this.dirty=!0,this.batchMode="auto",this.instructions=[],this._activePath=new Mr,this._transform=new G,this._fillStyle={...je.defaultFillStyle},this._strokeStyle={...je.defaultStrokeStyle},this._stateStack=[],this._tick=0,this._bounds=new ft,this._boundsDirty=!0}clone(){let t=new je;return t.batchMode=this.batchMode,t.instructions=this.instructions.slice(),t._activePath=this._activePath.clone(),t._transform=this._transform.clone(),t._fillStyle={...this._fillStyle},t._strokeStyle={...this._strokeStyle},t._stateStack=this._stateStack.slice(),t._bounds=this._bounds.clone(),t._boundsDirty=!0,t}get fillStyle(){return this._fillStyle}set fillStyle(t){this._fillStyle=hr(t,je.defaultFillStyle)}get strokeStyle(){return this._strokeStyle}set strokeStyle(t){this._strokeStyle=$i(t,je.defaultStrokeStyle)}setFillStyle(t){return this._fillStyle=hr(t,je.defaultFillStyle),this}setStrokeStyle(t){return this._strokeStyle=hr(t,je.defaultStrokeStyle),this}texture(t,e,i,s,n,o){return this.instructions.push({action:"texture",data:{image:t,dx:i||0,dy:s||0,dw:n||t.frame.width,dh:o||t.frame.height,transform:this._transform.clone(),alpha:this._fillStyle.alpha,style:e?Z.shared.setValue(e).toNumber():16777215}}),this.onUpdate(),this}beginPath(){return this._activePath=new Mr,this}fill(t,e){let i,s=this.instructions[this.instructions.length-1];return this._tick===0&&s&&s.action==="stroke"?i=s.data.path:i=this._activePath.clone(),i?(t!=null&&(e!==void 0&&typeof t=="number"&&(X(Y,"GraphicsContext.fill(color, alpha) is deprecated, use GraphicsContext.fill({ color, alpha }) instead"),t={color:t,alpha:e}),this._fillStyle=hr(t,je.defaultFillStyle)),this.instructions.push({action:"fill",data:{style:this.fillStyle,path:i}}),this.onUpdate(),this._initNextPathLocation(),this._tick=0,this):this}_initNextPathLocation(){let{x:t,y:e}=this._activePath.getLastPoint(et.shared);this._activePath.clear(),this._activePath.moveTo(t,e)}stroke(t){let e,i=this.instructions[this.instructions.length-1];return this._tick===0&&i&&i.action==="fill"?e=i.data.path:e=this._activePath.clone(),e?(t!=null&&(this._strokeStyle=$i(t,je.defaultStrokeStyle)),this.instructions.push({action:"stroke",data:{style:this.strokeStyle,path:e}}),this.onUpdate(),this._initNextPathLocation(),this._tick=0,this):this}cut(){for(let t=0;t<2;t++){let e=this.instructions[this.instructions.length-1-t],i=this._activePath.clone();if(e&&(e.action==="stroke"||e.action==="fill"))if(e.data.hole)e.data.hole.addPath(i);else{e.data.hole=i;break}}return this._initNextPathLocation(),this}arc(t,e,i,s,n,o){this._tick++;let a=this._transform;return this._activePath.arc(a.a*t+a.c*e+a.tx,a.b*t+a.d*e+a.ty,i,s,n,o),this}arcTo(t,e,i,s,n){this._tick++;let o=this._transform;return this._activePath.arcTo(o.a*t+o.c*e+o.tx,o.b*t+o.d*e+o.ty,o.a*i+o.c*s+o.tx,o.b*i+o.d*s+o.ty,n),this}arcToSvg(t,e,i,s,n,o,a){this._tick++;let u=this._transform;return this._activePath.arcToSvg(t,e,i,s,n,u.a*o+u.c*a+u.tx,u.b*o+u.d*a+u.ty),this}bezierCurveTo(t,e,i,s,n,o,a){this._tick++;let u=this._transform;return this._activePath.bezierCurveTo(u.a*t+u.c*e+u.tx,u.b*t+u.d*e+u.ty,u.a*i+u.c*s+u.tx,u.b*i+u.d*s+u.ty,u.a*n+u.c*o+u.tx,u.b*n+u.d*o+u.ty,a),this}closePath(){return this._tick++,this._activePath?.closePath(),this}ellipse(t,e,i,s){return this._tick++,this._activePath.ellipse(t,e,i,s,this._transform.clone()),this}circle(t,e,i){return this._tick++,this._activePath.circle(t,e,i,this._transform.clone()),this}path(t){return this._tick++,this._activePath.addPath(t,this._transform.clone()),this}lineTo(t,e){this._tick++;let i=this._transform;return this._activePath.lineTo(i.a*t+i.c*e+i.tx,i.b*t+i.d*e+i.ty),this}moveTo(t,e){this._tick++;let i=this._transform,s=this._activePath.instructions,n=i.a*t+i.c*e+i.tx,o=i.b*t+i.d*e+i.ty;return s.length===1&&s[0].action==="moveTo"?(s[0].data[0]=n,s[0].data[1]=o,this):(this._activePath.moveTo(n,o),this)}quadraticCurveTo(t,e,i,s,n){this._tick++;let o=this._transform;return this._activePath.quadraticCurveTo(o.a*t+o.c*e+o.tx,o.b*t+o.d*e+o.ty,o.a*i+o.c*s+o.tx,o.b*i+o.d*s+o.ty,n),this}rect(t,e,i,s){return this._tick++,this._activePath.rect(t,e,i,s,this._transform.clone()),this}roundRect(t,e,i,s,n){return this._tick++,this._activePath.roundRect(t,e,i,s,n,this._transform.clone()),this}poly(t,e){return this._tick++,this._activePath.poly(t,e,this._transform.clone()),this}regularPoly(t,e,i,s,n=0,o){return this._tick++,this._activePath.regularPoly(t,e,i,s,n,o),this}roundPoly(t,e,i,s,n,o){return this._tick++,this._activePath.roundPoly(t,e,i,s,n,o),this}roundShape(t,e,i,s){return this._tick++,this._activePath.roundShape(t,e,i,s),this}filletRect(t,e,i,s,n){return this._tick++,this._activePath.filletRect(t,e,i,s,n),this}chamferRect(t,e,i,s,n,o){return this._tick++,this._activePath.chamferRect(t,e,i,s,n,o),this}star(t,e,i,s,n=0,o=0){return this._tick++,this._activePath.star(t,e,i,s,n,o,this._transform.clone()),this}svg(t){return this._tick++,h0(t,this),this}restore(){let t=this._stateStack.pop();return t&&(this._transform=t.transform,this._fillStyle=t.fillStyle,this._strokeStyle=t.strokeStyle),this}save(){return this._stateStack.push({transform:this._transform.clone(),fillStyle:{...this._fillStyle},strokeStyle:{...this._strokeStyle}}),this}getTransform(){return this._transform}resetTransform(){return this._transform.identity(),this}rotate(t){return this._transform.rotate(t),this}scale(t,e=t){return this._transform.scale(t,e),this}setTransform(t,e,i,s,n,o){return t instanceof G?(this._transform.set(t.a,t.b,t.c,t.d,t.tx,t.ty),this):(this._transform.set(t,e,i,s,n,o),this)}transform(t,e,i,s,n,o){return t instanceof G?(this._transform.append(t),this):(_0.set(t,e,i,s,n,o),this._transform.append(_0),this)}translate(t,e=t){return this._transform.translate(t,e),this}clear(){return this._activePath.clear(),this.instructions.length=0,this.resetTransform(),this.onUpdate(),this}onUpdate(){this.dirty||(this.emit("update",this,16),this.dirty=!0,this._boundsDirty=!0)}get bounds(){if(!this._boundsDirty)return this._bounds;let t=this._bounds;t.clear();for(let e=0;e{$t();y0=["align","breakWords","cssOverrides","fontVariant","fontWeight","leading","letterSpacing","lineHeight","padding","textBaseline","trim","whiteSpace","wordWrap","wordWrapWidth","fontFamily","fontStyle","fontSize"]});function YA(r){let t=r;if(typeof t.dropShadow=="boolean"&&t.dropShadow){let e=le.defaultDropShadow;r.dropShadow={alpha:t.dropShadowAlpha??e.alpha,angle:t.dropShadowAngle??e.angle,blur:t.dropShadowBlur??e.blur,color:t.dropShadowColor??e.color,distance:t.dropShadowDistance??e.distance}}if(t.strokeThickness!==void 0){X(Y,"strokeThickness is now a part of stroke");let e=t.stroke,i={};if(Z.isColorLike(e))i.color=e;else if(e instanceof Br||e instanceof cr)i.fill=e;else if(Object.hasOwnProperty.call(e,"color")||Object.hasOwnProperty.call(e,"fill"))i=e;else throw new Error("Invalid stroke value.");r.stroke={...i,width:t.strokeThickness}}if(Array.isArray(t.fillGradientStops)){X(Y,"gradient fill is now a fill pattern: `new FillGradient(...)`");let e;r.fontSize==null?r.fontSize=le.defaultTextStyle.fontSize:typeof r.fontSize=="string"?e=parseInt(r.fontSize,10):e=r.fontSize;let i=new Br(0,0,0,e*1.7),s=t.fillGradientStops.map(n=>Z.shared.setValue(n).toNumber());s.forEach((n,o)=>{let a=o/(s.length-1);i.addColorStop(a,n)}),r.fill={fill:i}}}var kh,le,Yi=p(()=>{Xt();$t();vt();Qa();Ja();Fh();Bh();Rh();kh=class ji extends ht{constructor(t={}){super(),YA(t);let e={...ji.defaultTextStyle,...t};for(let i in e){let s=i;this[s]=e[i]}this.update()}get align(){return this._align}set align(t){this._align=t,this.update()}get breakWords(){return this._breakWords}set breakWords(t){this._breakWords=t,this.update()}get dropShadow(){return this._dropShadow}set dropShadow(t){t!==null&&typeof t=="object"?this._dropShadow=this._createProxy({...ji.defaultDropShadow,...t}):this._dropShadow=t?this._createProxy({...ji.defaultDropShadow}):null,this.update()}get fontFamily(){return this._fontFamily}set fontFamily(t){this._fontFamily=t,this.update()}get fontSize(){return this._fontSize}set fontSize(t){typeof t=="string"?this._fontSize=parseInt(t,10):this._fontSize=t,this.update()}get fontStyle(){return this._fontStyle}set fontStyle(t){this._fontStyle=t.toLowerCase(),this.update()}get fontVariant(){return this._fontVariant}set fontVariant(t){this._fontVariant=t,this.update()}get fontWeight(){return this._fontWeight}set fontWeight(t){this._fontWeight=t,this.update()}get leading(){return this._leading}set leading(t){this._leading=t,this.update()}get letterSpacing(){return this._letterSpacing}set letterSpacing(t){this._letterSpacing=t,this.update()}get lineHeight(){return this._lineHeight}set lineHeight(t){this._lineHeight=t,this.update()}get padding(){return this._padding}set padding(t){this._padding=t,this.update()}get trim(){return this._trim}set trim(t){this._trim=t,this.update()}get textBaseline(){return this._textBaseline}set textBaseline(t){this._textBaseline=t,this.update()}get whiteSpace(){return this._whiteSpace}set whiteSpace(t){this._whiteSpace=t,this.update()}get wordWrap(){return this._wordWrap}set wordWrap(t){this._wordWrap=t,this.update()}get wordWrapWidth(){return this._wordWrapWidth}set wordWrapWidth(t){this._wordWrapWidth=t,this.update()}get fill(){return this._originalFill}set fill(t){t!==this._originalFill&&(this._originalFill=t,this._isFillStyle(t)&&(this._originalFill=this._createProxy({...de.defaultFillStyle,...t},()=>{this._fill=hr({...this._originalFill},de.defaultFillStyle)})),this._fill=hr(t===0?"black":t,de.defaultFillStyle),this.update())}get stroke(){return this._originalStroke}set stroke(t){t!==this._originalStroke&&(this._originalStroke=t,this._isFillStyle(t)&&(this._originalStroke=this._createProxy({...de.defaultStrokeStyle,...t},()=>{this._stroke=$i({...this._originalStroke},de.defaultStrokeStyle)})),this._stroke=$i(t,de.defaultStrokeStyle),this.update())}_generateKey(){return this._styleKey=au(this),this._styleKey}update(){this._styleKey=null,this.emit("update",this)}reset(){let t=ji.defaultTextStyle;for(let e in t)this[e]=t[e]}get styleKey(){return this._styleKey||this._generateKey()}clone(){return new ji({align:this.align,breakWords:this.breakWords,dropShadow:this._dropShadow?{...this._dropShadow}:null,fill:this._fill,fontFamily:this.fontFamily,fontSize:this.fontSize,fontStyle:this.fontStyle,fontVariant:this.fontVariant,fontWeight:this.fontWeight,leading:this.leading,letterSpacing:this.letterSpacing,lineHeight:this.lineHeight,padding:this.padding,stroke:this._stroke,textBaseline:this.textBaseline,whiteSpace:this.whiteSpace,wordWrap:this.wordWrap,wordWrapWidth:this.wordWrapWidth})}destroy(t=!1){if(this.removeAllListeners(),typeof t=="boolean"?t:t?.texture){let i=typeof t=="boolean"?t:t?.textureSource;this._fill?.texture&&this._fill.texture.destroy(i),this._originalFill?.texture&&this._originalFill.texture.destroy(i),this._stroke?.texture&&this._stroke.texture.destroy(i),this._originalStroke?.texture&&this._originalStroke.texture.destroy(i)}this._fill=null,this._stroke=null,this.dropShadow=null,this._originalStroke=null,this._originalFill=null}_createProxy(t,e){return new Proxy(t,{set:(i,s,n)=>(i[s]=n,e?.(s,n),this.update(),!0)})}_isFillStyle(t){return(t??null)!==null&&!(Z.isColorLike(t)||t instanceof Br||t instanceof cr)}};kh.defaultDropShadow={alpha:1,angle:Math.PI/6,blur:0,color:"black",distance:5};kh.defaultTextStyle={align:"left",breakWords:!1,dropShadow:null,fill:"black",fontFamily:"Arial",fontSize:26,fontStyle:"normal",fontVariant:"normal",fontWeight:"normal",leading:0,letterSpacing:0,lineHeight:0,padding:0,stroke:null,textBaseline:"alphabetic",trim:!1,whiteSpace:"pre",wordWrap:!1,wordWrapWidth:100};le=kh});function uu(r,t,e,i){let s=KA;s.minX=0,s.minY=0,s.maxX=r.width/i|0,s.maxY=r.height/i|0;let n=xt.getOptimalTexture(s.width,s.height,i,!1);return n.source.uploadMethodId="image",n.source.resource=r,n.source.alphaMode="premultiply-alpha-on-upload",n.frame.width=t/i,n.frame.height=e/i,n.source.emit("update",n.source),n.updateUvs(),n}var KA,Gh=p(()=>{yr();ce();KA=new ft});function li(r){let t=typeof r.fontSize=="number"?`${r.fontSize}px`:r.fontSize,e=r.fontFamily;Array.isArray(r.fontFamily)||(e=r.fontFamily.split(","));for(let i=e.length-1;i>=0;i--){let s=e[i].trim();!/([\\"\\\'])[^\\\'\\"]+\\1/.test(s)&&!qA.includes(s)&&(s=`"${s}"`),e[i]=s}return`${r.fontStyle} ${r.fontVariant} ${r.fontWeight} ${t} ${e.join(",")}`}var qA,lu=p(()=>{"use strict";qA=["serif","sans-serif","monospace","cursive","fantasy","system-ui"]});var Ih,Fe,Te,cu=p(()=>{Pt();lu();Ih={willReadFrequently:!0},Fe=class W{static get experimentalLetterSpacingSupported(){let t=W._experimentalLetterSpacingSupported;if(t!==void 0){let e=Q.get().getCanvasRenderingContext2D().prototype;t=W._experimentalLetterSpacingSupported="letterSpacing"in e||"textLetterSpacing"in e}return t}constructor(t,e,i,s,n,o,a,u,l){this.text=t,this.style=e,this.width=i,this.height=s,this.lines=n,this.lineWidths=o,this.lineHeight=a,this.maxLineWidth=u,this.fontProperties=l}static measureText(t=" ",e,i=W._canvas,s=e.wordWrap){let n=`${t}:${e.styleKey}`;if(W._measurementCache[n])return W._measurementCache[n];let o=li(e),a=W.measureFont(o);a.fontSize===0&&(a.fontSize=e.fontSize,a.ascent=e.fontSize);let u=W.__context;u.font=o;let c=(s?W._wordWrap(t,e,i):t).split(/(?:\\r\\n|\\r|\\n)/),h=new Array(c.length),d=0;for(let v=0;v0)if(s)o-=e,l-=e;else{let c=(W.graphemeSegmenter(t).length-1)*e;o+=c,l+=c}return Math.max(o,l)}static _wordWrap(t,e,i=W._canvas){let s=i.getContext("2d",Ih),n=0,o="",a="",u=Object.create(null),{letterSpacing:l,whiteSpace:c}=e,h=W._collapseSpaces(c),d=W._collapseNewlines(c),f=!h,m=e.wordWrapWidth+l,g=W._tokenize(t);for(let x=0;xm)if(o!==""&&(a+=W._addLine(o),o="",n=0),W.canBreakWords(_,e.breakWords)){let T=W.wordWrapSplit(_);for(let y=0;ym&&(a+=W._addLine(o),f=!1,o="",n=0),o+=C,n+=P}}else{o.length>0&&(a+=W._addLine(o),o="",n=0);let T=x===g.length-1;a+=W._addLine(_,!T),f=!1,o="",n=0}else v+n>m&&(f=!1,a+=W._addLine(o),o="",n=0),(o.length>0||!W.isBreakingSpace(_)||f)&&(o+=_,n+=v)}return a+=W._addLine(o,!1),a}static _addLine(t,e=!0){return t=W._trimRight(t),t=e?`${t}\n`:t,t}static _getFromCache(t,e,i,s){let n=i[t];return typeof n!="number"&&(n=W._measureText(t,e,s)+e,i[t]=n),n}static _collapseSpaces(t){return t==="normal"||t==="pre-line"}static _collapseNewlines(t){return t==="normal"}static _trimRight(t){if(typeof t!="string")return"";for(let e=t.length-1;e>=0;e--){let i=t[e];if(!W.isBreakingSpace(i))break;t=t.slice(0,-1)}return t}static _isNewline(t){return typeof t!="string"?!1:W._newlines.includes(t.charCodeAt(0))}static isBreakingSpace(t,e){return typeof t!="string"?!1:W._breakingSpaces.includes(t.charCodeAt(0))}static _tokenize(t){let e=[],i="";if(typeof t!="string")return e;for(let s=0;s{if(typeof Intl?.Segmenter=="function"){let r=new Intl.Segmenter;return t=>[...r.segment(t)].map(e=>e.segment)}return r=>[...r]})();Fe.experimentalLetterSpacing=!1;Fe._fonts={};Fe._newlines=[10,13];Fe._breakingSpaces=[9,32,8192,8193,8194,8195,8196,8197,8198,8200,8201,8202,8287,12288];Fe._measurementCache={};Te=Fe});function Ki(r,t){if(r.texture===I.WHITE&&!r.fill)return Z.shared.setValue(r.color).setAlpha(r.alpha??1).toHexa();if(r.fill){if(r.fill instanceof cr){let e=r.fill,i=t.createPattern(e.texture.source.resource,"repeat"),s=e.transform.copyTo(G.shared);return s.scale(e.texture.frame.width,e.texture.frame.height),i.setTransform(s),i}else if(r.fill instanceof Br){let e=r.fill;if(e.type==="linear"){let i=t.createLinearGradient(e.x0,e.y0,e.x1,e.y1);return e.gradientStops.forEach(s=>{i.addColorStop(s.offset,Z.shared.setValue(s.color).toHex())}),i}}}else{let e=t.createPattern(r.texture.source.resource,"repeat"),i=r.matrix.copyTo(G.shared);return i.scale(r.texture.frame.width,r.texture.frame.height),e.setTransform(i),e}return z("FillStyle not recognised",r),"red"}var Uh=p(()=>{$t();ot();dt();gt();Qa();Ja()});var _n,v0=p(()=>{$t();D();Os();Wi();yr();Ny();vt();Yi();Gh();cu();lu();Uh();_n=class{constructor(t){this._activeTextures={},this._renderer=t}getTextureSize(t,e,i){let s=Te.measureText(t||" ",i),n=Math.ceil(Math.ceil(Math.max(1,s.width)+i.padding*2)*e),o=Math.ceil(Math.ceil(Math.max(1,s.height)+i.padding*2)*e);return n=Math.ceil(n-1e-6),o=Math.ceil(o-1e-6),n=ir(n),o=ir(o),{width:n,height:o}}getTexture(t,e,i,s){typeof t=="string"&&(X("8.0.0","CanvasTextSystem.getTexture: Use object TextOptions instead of separate arguments"),t={text:t,style:i,resolution:e}),t.style instanceof le||(t.style=new le(t.style));let{texture:n,canvasAndContext:o}=this.createTextureAndCanvas(t);return this._renderer.texture.initSource(n._source),ue.returnCanvasAndContext(o),n}createTextureAndCanvas(t){let{text:e,style:i}=t,s=t.resolution??this._renderer.resolution,n=Te.measureText(e||" ",i),o=Math.ceil(Math.ceil(Math.max(1,n.width)+i.padding*2)*s),a=Math.ceil(Math.ceil(Math.max(1,n.height)+i.padding*2)*s),u=ue.getOptimalCanvasAndContext(o,a),{canvas:l}=u;this.renderTextToCanvas(e,i,s,u);let c=uu(l,o,a,s);if(i.trim){let h=Ly(l,s);c.frame.copyFrom(h),c.updateUvs()}return{texture:c,canvasAndContext:u}}getManagedTexture(t){t._resolution=t._autoResolution?this._renderer.resolution:t.resolution;let e=t._getKey();if(this._activeTextures[e])return this._increaseReferenceCount(e),this._activeTextures[e].texture;let{texture:i,canvasAndContext:s}=this.createTextureAndCanvas(t);return this._activeTextures[e]={canvasAndContext:s,texture:i,usageCount:1},i}_increaseReferenceCount(t){this._activeTextures[t].usageCount++}decreaseReferenceCount(t){let e=this._activeTextures[t];if(e.usageCount--,e.usageCount===0){ue.returnCanvasAndContext(e.canvasAndContext),xt.returnTexture(e.texture);let i=e.texture.source;i.resource=null,i.uploadMethodId="unknown",i.alphaMode="no-premultiply-alpha",this._activeTextures[t]=null}}getReferenceCount(t){return this._activeTextures[t].usageCount}renderTextToCanvas(t,e,i,s){let{canvas:n,context:o}=s,a=li(e),u=Te.measureText(t||" ",e),l=u.lines,c=u.lineHeight,h=u.lineWidths,d=u.maxLineWidth,f=u.fontProperties,m=n.height;if(o.resetTransform(),o.scale(i,i),o.textBaseline=e.textBaseline,e._stroke?.width){let v=e._stroke;o.lineWidth=v.width,o.miterLimit=v.miterLimit,o.lineJoin=v.join,o.lineCap=v.cap}o.font=a;let g,x,_=e.dropShadow?2:1;for(let v=0;v<_;++v){let T=e.dropShadow&&v===0,y=T?Math.ceil(Math.max(1,m)+e.padding*2):0,C=y*i;if(T){o.fillStyle="black",o.strokeStyle="black";let P=e.dropShadow,U=P.color,M=P.alpha;o.shadowColor=Z.shared.setValue(U).setAlpha(M).toRgbaString();let k=P.blur*i,N=P.distance*i;o.shadowBlur=k,o.shadowOffsetX=Math.cos(P.angle)*N,o.shadowOffsetY=Math.sin(P.angle)*N+C}else o.fillStyle=e._fill?Ki(e._fill,o):null,e._stroke?.width&&(o.strokeStyle=Ki(e._stroke,o)),o.shadowColor="black";let S=(c-f.fontSize)/2;c-f.fontSize<0&&(S=0);let E=e._stroke?.width??0;for(let P=0;P{D();Iy();v0();H.add(_n);H.add(mn)});var Fr,Lh=p(()=>{vt();wa();Fh();Fr=class r extends Sr{constructor(t){t instanceof de&&(t={context:t});let{context:e,roundPixels:i,...s}=t||{};super({label:"Graphics",...s}),this.renderPipeId="graphics",e?this._context=e:this._context=this._ownedContext=new de,this._context.on("update",this.onViewUpdate,this),this.allowChildren=!1,this.roundPixels=i??!1}set context(t){t!==this._context&&(this._context.off("update",this.onViewUpdate,this),this._context=t,this._context.on("update",this.onViewUpdate,this),this.onViewUpdate())}get context(){return this._context}get bounds(){return this._context.bounds}updateBounds(){}containsPoint(t){return this._context.containsPoint(t)}destroy(t){this._ownedContext&&!t?this._ownedContext.destroy(t):(t===!0||t?.context===!0)&&this._context.destroy(t),this._ownedContext=null,this._context=null,super.destroy(t)}_callContextMethod(t,e){return this.context[t](...e),this}setFillStyle(...t){return this._callContextMethod("setFillStyle",t)}setStrokeStyle(...t){return this._callContextMethod("setStrokeStyle",t)}fill(...t){return this._callContextMethod("fill",t)}stroke(...t){return this._callContextMethod("stroke",t)}texture(...t){return this._callContextMethod("texture",t)}beginPath(){return this._callContextMethod("beginPath",[])}cut(){return this._callContextMethod("cut",[])}arc(...t){return this._callContextMethod("arc",t)}arcTo(...t){return this._callContextMethod("arcTo",t)}arcToSvg(...t){return this._callContextMethod("arcToSvg",t)}bezierCurveTo(...t){return this._callContextMethod("bezierCurveTo",t)}closePath(){return this._callContextMethod("closePath",[])}ellipse(...t){return this._callContextMethod("ellipse",t)}circle(...t){return this._callContextMethod("circle",t)}path(...t){return this._callContextMethod("path",t)}lineTo(...t){return this._callContextMethod("lineTo",t)}moveTo(...t){return this._callContextMethod("moveTo",t)}quadraticCurveTo(...t){return this._callContextMethod("quadraticCurveTo",t)}rect(...t){return this._callContextMethod("rect",t)}roundRect(...t){return this._callContextMethod("roundRect",t)}poly(...t){return this._callContextMethod("poly",t)}regularPoly(...t){return this._callContextMethod("regularPoly",t)}roundPoly(...t){return this._callContextMethod("roundPoly",t)}roundShape(...t){return this._callContextMethod("roundShape",t)}filletRect(...t){return this._callContextMethod("filletRect",t)}chamferRect(...t){return this._callContextMethod("chamferRect",t)}star(...t){return this._callContextMethod("star",t)}svg(...t){return this._callContextMethod("svg",t)}restore(...t){return this._callContextMethod("restore",t)}save(){return this._callContextMethod("save",[])}getTransform(){return this.context.getTransform()}resetTransform(){return this._callContextMethod("resetTransform",[])}rotateTransform(...t){return this._callContextMethod("rotate",t)}scaleTransform(...t){return this._callContextMethod("scale",t)}setTransform(...t){return this._callContextMethod("setTransform",t)}transform(...t){return this._callContextMethod("transform",t)}translateTransform(...t){return this._callContextMethod("translate",t)}clear(){return this._callContextMethod("clear",[])}get fillStyle(){return this._context.fillStyle}set fillStyle(t){this._context.fillStyle=t}get strokeStyle(){return this._context.strokeStyle}set strokeStyle(t){this._context.strokeStyle=t}clone(t=!1){return t?new r(this._context.clone()):(this._ownedContext=null,new r(this._context))}lineStyle(t,e,i){X(Y,"Graphics#lineStyle is no longer needed. Use Graphics#setStrokeStyle to set the stroke style.");let s={};return t&&(s.width=t),e&&(s.color=e),i&&(s.alpha=i),this.context.strokeStyle=s,this}beginFill(t,e){X(Y,"Graphics#beginFill is no longer needed. Use Graphics#fill to fill the shape with the desired style.");let i={};return t!==void 0&&(i.color=t),e!==void 0&&(i.alpha=e),this.context.fillStyle=i,this}endFill(){X(Y,"Graphics#endFill is no longer needed. Use Graphics#fill to fill the shape with the desired style."),this.context.fill();let t=this.context.strokeStyle;return(t.width!==de.defaultStrokeStyle.width||t.color!==de.defaultStrokeStyle.color||t.alpha!==de.defaultStrokeStyle.alpha)&&this.context.stroke(),this}drawCircle(...t){return X(Y,"Graphics#drawCircle has been renamed to Graphics#circle"),this._callContextMethod("circle",t)}drawEllipse(...t){return X(Y,"Graphics#drawEllipse has been renamed to Graphics#ellipse"),this._callContextMethod("ellipse",t)}drawPolygon(...t){return X(Y,"Graphics#drawPolygon has been renamed to Graphics#poly"),this._callContextMethod("poly",t)}drawRect(...t){return X(Y,"Graphics#drawRect has been renamed to Graphics#rect"),this._callContextMethod("rect",t)}drawRoundedRect(...t){return X(Y,"Graphics#drawRoundedRect has been renamed to Graphics#roundRect"),this._callContextMethod("roundRect",t)}drawStar(...t){return X(Y,"Graphics#drawStar has been renamed to Graphics#star"),this._callContextMethod("star",t)}}});var T0,S0,w0=p(()=>{"use strict";T0={name:"local-uniform-msdf-bit",vertex:{header:`\n struct LocalUniforms {\n uColor:vec4,\n uTransformMatrix:mat3x3,\n uDistance: f32,\n uRound:f32,\n }\n\n @group(2) @binding(0) var localUniforms : LocalUniforms;\n `,main:`\n vColor *= localUniforms.uColor;\n modelMatrix *= localUniforms.uTransformMatrix;\n `,end:`\n if(localUniforms.uRound == 1)\n {\n vPosition = vec4(roundPixels(vPosition.xy, globalUniforms.uResolution), vPosition.zw);\n }\n `},fragment:{header:`\n struct LocalUniforms {\n uColor:vec4,\n uTransformMatrix:mat3x3,\n uDistance: f32\n }\n\n @group(2) @binding(0) var localUniforms : LocalUniforms;\n `,main:` \n outColor = vec4(calculateMSDFAlpha(outColor, localUniforms.uColor, localUniforms.uDistance));\n `}},S0={name:"local-uniform-msdf-bit",vertex:{header:`\n uniform mat3 uTransformMatrix;\n uniform vec4 uColor;\n uniform float uRound;\n `,main:`\n vColor *= uColor;\n modelMatrix *= uTransformMatrix;\n `,end:`\n if(uRound == 1.)\n {\n gl_Position.xy = roundPixels(gl_Position.xy, uResolution);\n }\n `},fragment:{header:`\n uniform float uDistance;\n `,main:` \n outColor = vec4(calculateMSDFAlpha(outColor, vColor, uDistance));\n `}}});var E0,C0,A0=p(()=>{"use strict";E0={name:"msdf-bit",fragment:{header:`\n fn calculateMSDFAlpha(msdfColor:vec4, shapeColor:vec4, distance:f32) -> f32 {\n \n // MSDF\n var median = msdfColor.r + msdfColor.g + msdfColor.b -\n min(msdfColor.r, min(msdfColor.g, msdfColor.b)) -\n max(msdfColor.r, max(msdfColor.g, msdfColor.b));\n \n // SDF\n median = min(median, msdfColor.a);\n\n var screenPxDistance = distance * (median - 0.5);\n var alpha = clamp(screenPxDistance + 0.5, 0.0, 1.0);\n if (median < 0.01) {\n alpha = 0.0;\n } else if (median > 0.99) {\n alpha = 1.0;\n }\n\n // Gamma correction for coverage-like alpha\n var luma: f32 = dot(shapeColor.rgb, vec3(0.299, 0.587, 0.114));\n var gamma: f32 = mix(1.0, 1.0 / 2.2, luma);\n var coverage: f32 = pow(shapeColor.a * alpha, gamma);\n\n return coverage;\n \n }\n `}},C0={name:"msdf-bit",fragment:{header:`\n float calculateMSDFAlpha(vec4 msdfColor, vec4 shapeColor, float distance) {\n \n // MSDF\n float median = msdfColor.r + msdfColor.g + msdfColor.b -\n min(msdfColor.r, min(msdfColor.g, msdfColor.b)) -\n max(msdfColor.r, max(msdfColor.g, msdfColor.b));\n \n // SDF\n median = min(median, msdfColor.a);\n \n float screenPxDistance = distance * (median - 0.5);\n float alpha = clamp(screenPxDistance + 0.5, 0.0, 1.0);\n \n if (median < 0.01) {\n alpha = 0.0;\n } else if (median > 0.99) {\n alpha = 1.0;\n }\n\n // Gamma correction for coverage-like alpha\n float luma = dot(shapeColor.rgb, vec3(0.299, 0.587, 0.114));\n float gamma = mix(1.0, 1.0 / 2.2, luma);\n float coverage = pow(shapeColor.a * alpha, gamma); \n \n return coverage;\n }\n `}}});var Nh,Hh,hu,D0=p(()=>{ot();ti();Ar();sn();nn();Dr();Oa();Be();ee();w0();A0();hu=class extends St{constructor(){let t=new ct({uColor:{value:new Float32Array([1,1,1,1]),type:"vec4"},uTransformMatrix:{value:new G,type:"mat3x3"},uDistance:{value:4,type:"f32"},uRound:{value:0,type:"f32"}}),e=_e();Nh??(Nh=Ne({name:"sdf-shader",bits:[Ri,Gi(e),T0,E0,ze]})),Hh??(Hh=He({name:"sdf-shader",bits:[ki,Ii(e),S0,C0,We]})),super({glProgram:Hh,gpuProgram:Nh,resources:{localUniforms:t,batchSamplers:Ui(e)}})}}});var fu,P0=p(()=>{Xt();vt();fu=class extends ht{constructor(){super(...arguments),this.chars=Object.create(null),this.lineHeight=0,this.fontFamily="",this.fontMetrics={fontSize:0,ascent:0,descent:0},this.baseLineOffset=0,this.distanceField={type:"none",range:0},this.pages=[],this.applyFillAsTint=!0,this.baseMeasurementFontSize=100,this.baseRenderedFontSize=100}get font(){return X(Y,"BitmapFont.font is deprecated, please use BitmapFont.fontFamily instead."),this.fontFamily}get pageTextures(){return X(Y,"BitmapFont.pageTextures is deprecated, please use BitmapFont.pages instead."),this.pages}get size(){return X(Y,"BitmapFont.size is deprecated, please use BitmapFont.fontMetrics.fontSize instead."),this.fontMetrics.fontSize}get distanceFieldRange(){return X(Y,"BitmapFont.distanceFieldRange is deprecated, please use BitmapFont.distanceField.range instead."),this.distanceField.range}get distanceFieldType(){return X(Y,"BitmapFont.distanceFieldType is deprecated, please use BitmapFont.distanceField.type instead."),this.distanceField.type}destroy(t=!1){this.emit("destroy",this),this.removeAllListeners();for(let e in this.chars)this.chars[e].texture?.destroy();this.chars=null,t&&(this.pages.forEach(e=>e.texture.destroy(!0)),this.pages=null)}}});function du(r){if(r==="")return[];typeof r=="string"&&(r=[r]);let t=[];for(let e=0,i=r.length;e{"use strict"});var B0,Wh,F0=p(()=>{$t();Yt();Wi();Aa();dt();vt();cu();lu();Uh();Yi();P0();zh();B0=class M0 extends fu{constructor(t){super(),this.resolution=1,this.pages=[],this._padding=0,this._measureCache=Object.create(null),this._currentChars=[],this._currentX=0,this._currentY=0,this._currentPageIndex=-1,this._skipKerning=!1;let e={...M0.defaultOptions,...t};this._textureSize=e.textureSize,this._mipmap=e.mipmap;let i=e.style.clone();e.overrideFill&&(i._fill.color=16777215,i._fill.alpha=1,i._fill.texture=I.WHITE,i._fill.fill=null),this.applyFillAsTint=e.overrideFill;let s=i.fontSize;i.fontSize=this.baseMeasurementFontSize;let n=li(i);e.overrideSize?i._stroke&&(i._stroke.width*=this.baseRenderedFontSize/s):i.fontSize=this.baseRenderedFontSize=s,this._style=i,this._skipKerning=e.skipKerning??!1,this.resolution=e.resolution??1,this._padding=e.padding??4,this.fontMetrics=Te.measureFont(n),this.lineHeight=i.lineHeight||this.fontMetrics.fontSize||i.fontSize}ensureCharacters(t){let e=du(t).filter(x=>!this._currentChars.includes(x)).filter((x,_,v)=>v.indexOf(x)===_);if(!e.length)return;this._currentChars=[...this._currentChars,...e];let i;this._currentPageIndex===-1?i=this._nextPage():i=this.pages[this._currentPageIndex];let{canvas:s,context:n}=i.canvasAndContext,o=i.texture.source,a=this._style,u=this._currentX,l=this._currentY,c=this.baseRenderedFontSize/this.baseMeasurementFontSize,h=this._padding*c,d=0,f=!1,m=s.width/this.resolution,g=s.height/this.resolution;for(let x=0;xm&&(l+=d,d=E,u=0,l+d>g)){o.update();let U=this._nextPage();s=U.canvasAndContext.canvas,n=U.canvasAndContext.context,o=U.texture.source,l=0}let P=T/c-(a.dropShadow?.distance??0)-(a._stroke?.width??0);if(this.chars[_]={id:_.codePointAt(0),xOffset:-this._padding,yOffset:-this._padding,xAdvance:P,kerning:{}},f){this._drawGlyph(n,v,u+h,l+h,c,a);let U=o.width*c,M=o.height*c,k=new tt(u/U*o.width,l/M*o.height,S/U*o.width,E/M*o.height);this.chars[_].texture=new I({source:o,frame:k}),u+=Math.ceil(S)}}o.update(),this._currentX=u,this._currentY=l,this._skipKerning&&this._applyKerning(e,n)}get pageTextures(){return X(Y,"BitmapFont.pageTextures is deprecated, please use BitmapFont.pages instead."),this.pages}_applyKerning(t,e){let i=this._measureCache;for(let s=0;s{let g=n.width;for(let x=0;x{let m=n.chars.length-1;if(i){let g=n.chars[m];for(;g===" ";)n.width-=e.chars[g].xAdvance,g=n.chars[--m]}s.width=Math.max(s.width,n.width),n={width:0,charPositions:[],chars:[],spaceWidth:0,spacesIndex:[]},a=!0,s.lines.push(n),s.height+=e.lineHeight},h=e.baseMeasurementFontSize/t.fontSize,d=t.letterSpacing*h,f=t.wordWrapWidth*h;for(let m=0;mf?(c(),l(u),x||n.charPositions.push(0)):(u.start=n.width,l(u),x||n.charPositions.push(0)),g==="\\r"||g===`\n`)n.width!==0&&c();else if(!x){let C=_.xAdvance+(_.kerning[o]||0)+d;n.width+=C,n.spaceWidth=C,n.spacesIndex.push(n.charPositions.length),n.chars.push(g)}}else{let y=_.kerning[o]||0,C=_.xAdvance+y+d;u.positions[u.index++]=u.width+y,u.chars.push(g),u.width+=C}o=g}return c(),t.align==="center"?ZA(s):t.align==="right"?QA(s):t.align==="justify"&&JA(s),s}function ZA(r){for(let t=0;t{"use strict"});var mu,Xh,R0,k0=p(()=>{Qs();vt();gt();Yi();F0();Vh();zh();mu=0,Xh=class{constructor(){this.ALPHA=[["a","z"],["A","Z"]," "],this.NUMERIC=[["0","9"]],this.ALPHANUMERIC=[["a","z"],["A","Z"],["0","9"]," "],this.ASCII=[[" ","~"]],this.defaultOptions={chars:this.ALPHANUMERIC,resolution:1,padding:4,skipKerning:!1}}getFont(t,e){let i=`${e.fontFamily}-bitmap`,s=!0;if(e._fill.fill&&!e._stroke)i+=e._fill.fill.styleKey,s=!1;else if(e._stroke||e.dropShadow){let o=e.styleKey;o=o.substring(0,o.lastIndexOf("-")),i=`${o}-bitmap`,s=!1}if(!Bt.has(i)){let o=new Wh({style:e,overrideFill:s,overrideSize:!0,...this.defaultOptions});mu++,mu>50&&z("BitmapText",`You have dynamically created ${mu} bitmap fonts, this can be inefficient. Try pre installing your font styles using \\`BitmapFont.install({name:"style1", style})\\``),o.once("destroy",()=>{mu--,Bt.remove(i)}),Bt.set(i,o)}let n=Bt.get(i);return n.ensureCharacters?.(t),n}getLayout(t,e,i=!0){let s=this.getFont(t,e);return pu([...t],e,s,i)}measureText(t,e,i=!0){return this.getLayout(t,e,i)}install(...t){let e=t[0];typeof e=="string"&&(e={name:e,style:t[1],chars:t[2]?.chars,resolution:t[2]?.resolution,padding:t[2]?.padding,skipKerning:t[2]?.skipKerning},X(Y,"BitmapFontManager.install(name, style, options) is deprecated, use BitmapFontManager.install({name, style, ...options})"));let i=e?.name;if(!i)throw new Error("[BitmapFontManager] Property `name` is required.");e={...this.defaultOptions,...e};let s=e.style,n=s instanceof le?s:new le(s),o=n._fill.fill!==null&&n._fill.fill!==void 0,a=new Wh({style:n,overrideFill:o,skipKerning:e.skipKerning,padding:e.padding,resolution:e.resolution,overrideSize:!1}),u=du(e.chars);return a.ensureCharacters(u.join("")),Bt.set(`${i}-bitmap`,a),a.once("destroy",()=>Bt.remove(`${i}-bitmap`)),a}uninstall(t){let e=`${t}-bitmap`,i=Bt.get(e);i&&i.destroy()}},R0=new Xh});function G0(r,t){t.groupTransform=r.groupTransform,t.groupColorAlpha=r.groupColorAlpha,t.groupColor=r.groupColor,t.groupBlendMode=r.groupBlendMode,t.globalDisplayStatus=r.globalDisplayStatus,t.groupTransform=r.groupTransform,t.localDisplayStatus=r.localDisplayStatus,t.groupAlpha=r.groupAlpha,t._roundPixels=r._roundPixels}var yn,I0=p(()=>{Qs();D();Qt();Lh();D0();k0();Vh();yn=class{constructor(t){this._gpuBitmapText={},this._destroyRenderableBound=this.destroyRenderable.bind(this),this._renderer=t,this._renderer.renderableGC.addManagedHash(this,"_gpuBitmapText")}validateRenderable(t){let e=this._getGpuBitmapText(t);return t._didTextUpdate&&(t._didTextUpdate=!1,this._updateContext(t,e)),this._renderer.renderPipes.graphics.validateRenderable(e)}addRenderable(t,e){let i=this._getGpuBitmapText(t);G0(t,i),t._didTextUpdate&&(t._didTextUpdate=!1,this._updateContext(t,i)),this._renderer.renderPipes.graphics.addRenderable(i,e),i.context.customShader&&this._updateDistanceField(t)}destroyRenderable(t){t.off("destroyed",this._destroyRenderableBound),this._destroyRenderableByUid(t.uid)}_destroyRenderableByUid(t){let e=this._gpuBitmapText[t].context;e.customShader&&(K.return(e.customShader),e.customShader=null),K.return(this._gpuBitmapText[t]),this._gpuBitmapText[t]=null}updateRenderable(t){let e=this._getGpuBitmapText(t);G0(t,e),this._renderer.renderPipes.graphics.updateRenderable(e),e.context.customShader&&this._updateDistanceField(t)}_updateContext(t,e){let{context:i}=e,s=R0.getFont(t.text,t._style);i.clear(),s.distanceField.type!=="none"&&(i.customShader||(i.customShader=K.get(hu)));let n=Array.from(t.text),o=t._style,a=s.baseLineOffset,u=pu(n,o,s,!0),l=0,c=o.padding,h=u.scale,d=u.width,f=u.height+u.offsetY;o._stroke&&(d+=o._stroke.width/h,f+=o._stroke.width/h),i.translate(-t._anchor._x*d-c,-t._anchor._y*f-c).scale(h,h);let m=s.applyFillAsTint?o._fill.color:16777215;for(let g=0;g{D();I0();H.add(yn)});var bn,U0=p(()=>{D();dt();Sa();Qt();pn();bn=class{constructor(t){this._gpuText=Object.create(null),this._destroyRenderableBound=this.destroyRenderable.bind(this),this._renderer=t,this._renderer.runners.resolutionChange.add(this),this._renderer.renderableGC.addManagedHash(this,"_gpuText")}resolutionChange(){for(let t in this._gpuText){let e=this._gpuText[t];if(!e)continue;let i=e.batchableSprite.renderable;i._autoResolution&&(i._resolution=this._renderer.resolution,i.onViewUpdate())}}validateRenderable(t){let e=this._getGpuText(t),i=t._getKey();return e.textureNeedsUploading?(e.textureNeedsUploading=!1,!0):e.currentKey!==i}addRenderable(t,e){let s=this._getGpuText(t).batchableSprite;t._didTextUpdate&&this._updateText(t),this._renderer.renderPipes.batch.addToBatch(s,e)}updateRenderable(t){let i=this._getGpuText(t).batchableSprite;t._didTextUpdate&&this._updateText(t),i._batcher.updateElement(i)}destroyRenderable(t){t.off("destroyed",this._destroyRenderableBound),this._destroyRenderableById(t.uid)}_destroyRenderableById(t){let e=this._gpuText[t];this._renderer.htmlText.decreaseReferenceCount(e.currentKey),K.return(e.batchableSprite),this._gpuText[t]=null}_updateText(t){let e=t._getKey(),i=this._getGpuText(t),s=i.batchableSprite;i.currentKey!==e&&this._updateGpuText(t).catch(o=>{console.error(o)}),t._didTextUpdate=!1;let n=t._style.padding;Qr(s.bounds,t._anchor,s.texture,n)}async _updateGpuText(t){t._didTextUpdate=!1;let e=this._getGpuText(t);if(e.generatingTexture)return;let i=t._getKey();this._renderer.htmlText.decreaseReferenceCount(e.currentKey),e.generatingTexture=!0,e.currentKey=i;let s=t.resolution??this._renderer.resolution,n=await this._renderer.htmlText.getManagedTexture(t.text,s,t._style,t._getKey()),o=e.batchableSprite;o.texture=e.texture=n,e.generatingTexture=!1,e.textureNeedsUploading=!0,t.onViewUpdate();let a=t._style.padding;Qr(o.bounds,t._anchor,o.texture,a)}_getGpuText(t){return this._gpuText[t.uid]||this.initGpuText(t)}initGpuText(t){let e={texture:I.EMPTY,currentKey:"--",batchableSprite:K.get($e),textureNeedsUploading:!1,generatingTexture:!1},i=e.batchableSprite;return i.renderable=t,i.transform=t.groupTransform,i.texture=I.EMPTY,i.bounds={minX:0,maxX:1,minY:0,maxY:0},i.roundPixels=this._renderer._roundPixels|t._roundPixels,t._resolution=t._autoResolution?this._renderer.resolution:t.resolution,this._gpuText[t.uid]=e,t.on("destroyed",this._destroyRenderableBound),e}destroy(){for(let t in this._gpuText)this._destroyRenderableById(t);this._gpuText=null,this._renderer=null}};bn.extension={type:[b.WebGLPipes,b.WebGPUPipes,b.CanvasPipes],name:"htmlText"}});function O0(){let{userAgent:r}=Q.get().getNavigator();return/^((?!chrome|android).)*safari/i.test(r)}var L0=p(()=>{Pt()});var N0,H0,qi,jh=p(()=>{"use strict";N0="http://www.w3.org/2000/svg",H0="http://www.w3.org/1999/xhtml",qi=class{constructor(){this.svgRoot=document.createElementNS(N0,"svg"),this.foreignObject=document.createElementNS(N0,"foreignObject"),this.domElement=document.createElementNS(H0,"div"),this.styleElement=document.createElementNS(H0,"style"),this.image=new Image;let{foreignObject:t,svgRoot:e,styleElement:i,domElement:s}=this;t.setAttribute("width","10000"),t.setAttribute("height","10000"),t.style.overflow="hidden",e.appendChild(t),t.appendChild(i),t.appendChild(s)}}});function V0(r){let t=r._stroke,e=r._fill,s=[`div { ${[`color: ${Z.shared.setValue(e.color).toHex()}`,`font-size: ${r.fontSize}px`,`font-family: ${r.fontFamily}`,`font-weight: ${r.fontWeight}`,`font-style: ${r.fontStyle}`,`font-variant: ${r.fontVariant}`,`letter-spacing: ${r.letterSpacing}px`,`text-align: ${r.align}`,`padding: ${r.padding}px`,`white-space: ${r.whiteSpace==="pre"&&r.wordWrap?"pre-wrap":r.whiteSpace}`,...r.lineHeight?[`line-height: ${r.lineHeight}px`]:[],...r.wordWrap?[`word-wrap: ${r.breakWords?"break-all":"break-word"}`,`max-width: ${r.wordWrapWidth}px`]:[],...t?[$0(t)]:[],...r.dropShadow?[X0(r.dropShadow)]:[],...r.cssOverrides].join(";")} }`];return tD(r.tagStyles,s),s.join(" ")}function X0(r){let t=Z.shared.setValue(r.color).setAlpha(r.alpha).toHexa(),e=Math.round(Math.cos(r.angle)*r.distance),i=Math.round(Math.sin(r.angle)*r.distance),s=`${e}px ${i}px`;return r.blur>0?`text-shadow: ${s} ${r.blur}px ${t}`:`text-shadow: ${s} ${t}`}function $0(r){return[`-webkit-text-stroke-width: ${r.width}px`,`-webkit-text-stroke-color: ${Z.shared.setValue(r.color).toHex()}`,`text-stroke-width: ${r.width}px`,`text-stroke-color: ${Z.shared.setValue(r.color).toHex()}`,"paint-order: stroke"].join(";")}function tD(r,t){for(let e in r){let i=r[e],s=[];for(let n in i)W0[n]?s.push(W0[n](i[n])):z0[n]&&s.push(z0[n].replace("{{VALUE}}",i[n]));t.push(`${e} { ${s.join(";")} }`)}}var z0,W0,j0=p(()=>{$t();z0={fontSize:"font-size: {{VALUE}}px",fontFamily:"font-family: {{VALUE}}",fontWeight:"font-weight: {{VALUE}}",fontStyle:"font-style: {{VALUE}}",fontVariant:"font-variant: {{VALUE}}",letterSpacing:"letter-spacing: {{VALUE}}px",align:"text-align: {{VALUE}}",padding:"padding: {{VALUE}}px",whiteSpace:"white-space: {{VALUE}}",lineHeight:"line-height: {{VALUE}}px",wordWrapWidth:"max-width: {{VALUE}}px"},W0={fill:r=>`color: ${Z.shared.setValue(r).toHex()}`,breakWords:r=>`word-wrap: ${r?"break-all":"break-word"}`,stroke:$0,dropShadow:X0}});var gu,Y0=p(()=>{gt();Yi();Rh();j0();gu=class r extends le{constructor(t={}){super(t),this._cssOverrides=[],this.cssOverrides??(this.cssOverrides=t.cssOverrides),this.tagStyles=t.tagStyles??{}}set cssOverrides(t){this._cssOverrides=t instanceof Array?t:[t],this.update()}get cssOverrides(){return this._cssOverrides}_generateKey(){return this._styleKey=au(this)+this._cssOverrides.join("-"),this._styleKey}update(){this._cssStyle=null,super.update()}clone(){return new r({align:this.align,breakWords:this.breakWords,dropShadow:this.dropShadow?{...this.dropShadow}:null,fill:this._fill,fontFamily:this.fontFamily,fontSize:this.fontSize,fontStyle:this.fontStyle,fontVariant:this.fontVariant,fontWeight:this.fontWeight,letterSpacing:this.letterSpacing,lineHeight:this.lineHeight,padding:this.padding,stroke:this._stroke,whiteSpace:this.whiteSpace,wordWrap:this.wordWrap,wordWrapWidth:this.wordWrapWidth,cssOverrides:this.cssOverrides})}get cssStyle(){return this._cssStyle||(this._cssStyle=V0(this)),this._cssStyle}addOverride(...t){let e=t.filter(i=>!this.cssOverrides.includes(i));e.length>0&&(this.cssOverrides.push(...e),this.update())}removeOverride(...t){let e=t.filter(i=>this.cssOverrides.includes(i));e.length>0&&(this.cssOverrides=this.cssOverrides.filter(i=>!e.includes(i)),this.update())}set fill(t){typeof t!="string"&&typeof t!="number"&&z("[HTMLTextStyle] only color fill is not supported by HTMLText"),super.fill=t}set stroke(t){t&&typeof t!="string"&&typeof t!="number"&&z("[HTMLTextStyle] only color stroke is not supported by HTMLText"),super.stroke=t}}});function K0(r,t){let e=t.fontFamily,i=[],s={},n=/font-family:([^;"\\s]+)/g,o=r.match(n);function a(u){s[u]||(i.push(u),s[u]=!0)}if(Array.isArray(e))for(let u=0;u{let l=u.split(":")[1].trim();a(l)});for(let u in t.tagStyles){let l=t.tagStyles[u].fontFamily;a(l)}return i}var q0=p(()=>{"use strict"});async function Z0(r){let e=await(await Q.get().fetch(r)).blob(),i=new FileReader;return await new Promise((n,o)=>{i.onloadend=()=>n(i.result),i.onerror=o,i.readAsDataURL(e)})}var Q0=p(()=>{Pt()});async function Yh(r,t){let e=await Z0(t);return`@font-face {\n font-family: "${r.fontFamily}";\n src: url(\'${e}\');\n font-weight: ${r.fontWeight};\n font-style: ${r.fontStyle};\n }`}var J0=p(()=>{Q0()});async function tb(r,t,e){let i=r.filter(s=>Bt.has(`${s}-and-url`)).map((s,n)=>{if(!xu.has(s)){let{url:o}=Bt.get(`${s}-and-url`);n===0?xu.set(s,Yh({fontWeight:t.fontWeight,fontStyle:t.fontStyle,fontFamily:s},o)):xu.set(s,Yh({fontWeight:e.fontWeight,fontStyle:e.fontStyle,fontFamily:s},o))}return xu.get(s)});return(await Promise.all(i)).join(`\n`)}var xu,eb=p(()=>{Qs();J0();xu=new Map});function rb(r,t,e,i,s){let{domElement:n,styleElement:o,svgRoot:a}=s;n.innerHTML=`
${r}
`,n.setAttribute("style",`transform: scale(${e});transform-origin: top left; display: inline-block`),o.textContent=i;let{width:u,height:l}=s.image;return a.setAttribute("width",u.toString()),a.setAttribute("height",l.toString()),new XMLSerializer().serializeToString(a)}var ib=p(()=>{"use strict"});function sb(r,t){let e=ue.getOptimalCanvasAndContext(r.width,r.height,t),{context:i}=e;return i.clearRect(0,0,r.width,r.height),i.drawImage(r,0,0),e}var nb=p(()=>{Wi()});function ob(r,t,e){return new Promise(async i=>{e&&await new Promise(s=>setTimeout(s,100)),r.onload=()=>{i()},r.src=`data:image/svg+xml;charset=utf8,${encodeURIComponent(t)}`,r.crossOrigin="anonymous"})}var ab=p(()=>{"use strict"});function lb(r,t,e,i){i||(i=ub||(ub=new qi));let{domElement:s,styleElement:n,svgRoot:o}=i;s.innerHTML=`
${r}
`,s.setAttribute("style","transform-origin: top left; display: inline-block"),e&&(n.textContent=e),document.body.appendChild(o);let a=s.getBoundingClientRect();o.remove();let u=t.padding*2;return{width:a.width-u,height:a.height-u}}var ub,cb=p(()=>{jh()});var Zi,hb=p(()=>{D();Wi();yr();Ve();L0();gt();Qt();Gh();jh();Y0();q0();eb();ib();nb();ab();cb();Zi=class{constructor(t){this._activeTextures={},this._renderer=t,this._createCanvas=t.type===Mt.WEBGPU}getTexture(t){return this._buildTexturePromise(t.text,t.resolution,t.style)}getManagedTexture(t,e,i,s){if(this._activeTextures[s])return this._increaseReferenceCount(s),this._activeTextures[s].promise;let n=this._buildTexturePromise(t,e,i).then(o=>(this._activeTextures[s].texture=o,o));return this._activeTextures[s]={texture:null,promise:n,usageCount:1},n}async _buildTexturePromise(t,e,i){let s=K.get(qi),n=K0(t,i),o=await tb(n,i,gu.defaultTextStyle),a=lb(t,i,o,s),u=Math.ceil(Math.ceil(Math.max(1,a.width)+i.padding*2)*e),l=Math.ceil(Math.ceil(Math.max(1,a.height)+i.padding*2)*e),c=s.image,h=2;c.width=(u|0)+h,c.height=(l|0)+h;let d=rb(t,i,e,o,s);await ob(c,d,O0()&&n.length>0);let f=c,m;this._createCanvas&&(m=sb(c,e));let g=uu(m?m.canvas:f,c.width-h,c.height-h,e);return this._createCanvas&&(this._renderer.texture.initSource(g.source),ue.returnCanvasAndContext(m)),K.return(s),g}_increaseReferenceCount(t){this._activeTextures[t].usageCount++}decreaseReferenceCount(t){let e=this._activeTextures[t];e&&(e.usageCount--,e.usageCount===0&&(e.texture?this._cleanUp(e):e.promise.then(i=>{e.texture=i,this._cleanUp(e)}).catch(()=>{z("HTMLTextSystem: Failed to clean texture")}),this._activeTextures[t]=null))}_cleanUp(t){xt.returnTexture(t.texture),t.texture.source.resource=null,t.texture.source.uploadMethodId="unknown"}getReferenceCount(t){return this._activeTextures[t].usageCount}destroy(){this._activeTextures=null}};Zi.extension={type:[b.WebGLSystem,b.WebGPUSystem,b.CanvasSystem],name:"htmlText"};Zi.defaultFontOptions={fontFamily:"Arial",fontStyle:"normal",fontWeight:"normal"}});var Kh=p(()=>{D();U0();hb();H.add(Zi);H.add(bn)});var fb,Qi,_u=p(()=>{Er();ur();Bi();vt();fb=class db extends ye{constructor(...t){let e=t[0]??{};e instanceof Float32Array&&(X(Y,"use new MeshGeometry({ positions, uvs, indices }) instead"),e={positions:e,uvs:t[1],indices:t[2]}),e={...db.defaultOptions,...e};let i=e.positions||new Float32Array([0,0,1,0,1,1,0,1]),s=e.uvs||new Float32Array([0,0,1,0,1,1,0,1]),n=e.indices||new Uint32Array([0,1,2,0,2,3]),o=e.shrinkBuffersToFit,a=new Tt({data:i,label:"attribute-mesh-positions",shrinkToFit:o,usage:J.VERTEX|J.COPY_DST}),u=new Tt({data:s,label:"attribute-mesh-uvs",shrinkToFit:o,usage:J.VERTEX|J.COPY_DST}),l=new Tt({data:n,label:"index-mesh-buffer",shrinkToFit:o,usage:J.INDEX|J.COPY_DST});super({attributes:{aPosition:{buffer:a,format:"float32x2",stride:2*4,offset:0},aUV:{buffer:u,format:"float32x2",stride:2*4,offset:0}},indexBuffer:l,topology:e.topology}),this.batchMode="auto"}get positions(){return this.attributes.aPosition.buffer.data}set positions(t){this.attributes.aPosition.buffer.data=t}get uvs(){return this.attributes.aUV.buffer.data}set uvs(t){this.attributes.aUV.buffer.data=t}get indices(){return this.indexBuffer.data}set indices(t){this.indexBuffer.data=t}};fb.defaultOptions={topology:"triangle-list",shrinkBuffersToFit:!1};Qi=fb});var ci,pb,Ji,ts=p(()=>{"use strict";ci={name:"local-uniform-bit",vertex:{header:`\n\n struct LocalUniforms {\n uTransformMatrix:mat3x3,\n uColor:vec4,\n uRound:f32,\n }\n\n @group(1) @binding(0) var localUniforms : LocalUniforms;\n `,main:`\n vColor *= localUniforms.uColor;\n modelMatrix *= localUniforms.uTransformMatrix;\n `,end:`\n if(localUniforms.uRound == 1)\n {\n vPosition = vec4(roundPixels(vPosition.xy, globalUniforms.uResolution), vPosition.zw);\n }\n `}},pb={...ci,vertex:{...ci.vertex,header:ci.vertex.header.replace("group(1)","group(2)")}},Ji={name:"local-uniform-bit",vertex:{header:`\n\n uniform mat3 uTransformMatrix;\n uniform vec4 uColor;\n uniform float uRound;\n `,main:`\n vColor *= uColor;\n modelMatrix = uTransformMatrix;\n `,end:`\n if(uRound == 1.)\n {\n gl_Position.xy = roundPixels(gl_Position.xy, uResolution);\n }\n `}}});var mb,gb,xb=p(()=>{"use strict";mb={name:"tiling-bit",vertex:{header:`\n struct TilingUniforms {\n uMapCoord:mat3x3,\n uClampFrame:vec4,\n uClampOffset:vec2,\n uTextureTransform:mat3x3,\n uSizeAnchor:vec4\n };\n\n @group(2) @binding(0) var tilingUniforms: TilingUniforms;\n @group(2) @binding(1) var uTexture: texture_2d;\n @group(2) @binding(2) var uSampler: sampler;\n `,main:`\n uv = (tilingUniforms.uTextureTransform * vec3(uv, 1.0)).xy;\n\n position = (position - tilingUniforms.uSizeAnchor.zw) * tilingUniforms.uSizeAnchor.xy;\n `},fragment:{header:`\n struct TilingUniforms {\n uMapCoord:mat3x3,\n uClampFrame:vec4,\n uClampOffset:vec2,\n uTextureTransform:mat3x3,\n uSizeAnchor:vec4\n };\n\n @group(2) @binding(0) var tilingUniforms: TilingUniforms;\n @group(2) @binding(1) var uTexture: texture_2d;\n @group(2) @binding(2) var uSampler: sampler;\n `,main:`\n\n var coord = vUV + ceil(tilingUniforms.uClampOffset - vUV);\n coord = (tilingUniforms.uMapCoord * vec3(coord, 1.0)).xy;\n var unclamped = coord;\n coord = clamp(coord, tilingUniforms.uClampFrame.xy, tilingUniforms.uClampFrame.zw);\n\n var bias = 0.;\n\n if(unclamped.x == coord.x && unclamped.y == coord.y)\n {\n bias = -32.;\n } \n\n outColor = textureSampleBias(uTexture, uSampler, coord, bias);\n `}},gb={name:"tiling-bit",vertex:{header:`\n uniform mat3 uTextureTransform;\n uniform vec4 uSizeAnchor;\n \n `,main:`\n uv = (uTextureTransform * vec3(aUV, 1.0)).xy;\n\n position = (position - uSizeAnchor.zw) * uSizeAnchor.xy;\n `},fragment:{header:`\n uniform sampler2D uTexture;\n uniform mat3 uMapCoord;\n uniform vec4 uClampFrame;\n uniform vec2 uClampOffset;\n `,main:`\n\n vec2 coord = vUV + ceil(uClampOffset - vUV);\n coord = (uMapCoord * vec3(coord, 1.0)).xy;\n vec2 unclamped = coord;\n coord = clamp(coord, uClampFrame.xy, uClampFrame.zw);\n \n outColor = texture(uTexture, coord, unclamped == coord ? 0.0 : -32.0);// lod-bias very negative to force lod 0\n \n `}}});var qh,Zh,yu,_b=p(()=>{ot();Ar();ts();Dr();Be();ee();dt();xb();yu=class extends St{constructor(){qh??(qh=Ne({name:"tiling-sprite-shader",bits:[ci,mb,ze]})),Zh??(Zh=He({name:"tiling-sprite-shader",bits:[Ji,gb,We]}));let t=new ct({uMapCoord:{value:new G,type:"mat3x3"},uClampFrame:{value:new Float32Array([0,0,1,1]),type:"vec4"},uClampOffset:{value:new Float32Array([0,0]),type:"vec2"},uTextureTransform:{value:new G,type:"mat3x3"},uSizeAnchor:{value:new Float32Array([100,100,.5,.5]),type:"vec4"}});super({glProgram:Zh,gpuProgram:qh,resources:{localUniforms:new ct({uTransformMatrix:{value:new G,type:"mat3x3"},uColor:{value:new Float32Array([1,1,1,1]),type:"vec4"},uRound:{value:0,type:"f32"}}),tilingUniforms:t,uTexture:I.EMPTY.source,uSampler:I.EMPTY.source.style}})}updateUniforms(t,e,i,s,n,o){let a=this.resources.tilingUniforms,u=o.width,l=o.height,c=o.textureMatrix,h=a.uniforms.uTextureTransform;h.set(i.a*u/t,i.b*u/e,i.c*l/t,i.d*l/e,i.tx/t,i.ty/e),h.invert(),a.uniforms.uMapCoord=c.mapCoord,a.uniforms.uClampFrame=c.uClampFrame,a.uniforms.uClampOffset=c.uClampOffset,a.uniforms.uTextureTransform=h,a.uniforms.uSizeAnchor[0]=t,a.uniforms.uSizeAnchor[1]=e,a.uniforms.uSizeAnchor[2]=s,a.uniforms.uSizeAnchor[3]=n,o&&(this.resources.uTexture=o.source,this.resources.uSampler=o.source.style)}}});var bu,yb=p(()=>{_u();bu=class extends Qi{constructor(){super({positions:new Float32Array([0,0,1,0,1,1,0,1]),uvs:new Float32Array([0,0,1,0,1,1,0,1]),indices:new Uint32Array([0,1,2,0,2,3])})}}});function bb(r,t){let e=r.anchor.x,i=r.anchor.y;t[0]=-e*r.width,t[1]=-i*r.height,t[2]=(1-e)*r.width,t[3]=-i*r.height,t[4]=(1-e)*r.width,t[5]=(1-i)*r.height,t[6]=-e*r.width,t[7]=(1-i)*r.height}var vb=p(()=>{"use strict"});function Tb(r,t,e,i){let s=0,n=r.length/(t||2),o=i.a,a=i.b,u=i.c,l=i.d,c=i.tx,h=i.ty;for(e*=t;s{"use strict"});function wb(r,t){let e=r.texture,i=e.frame.width,s=e.frame.height,n=0,o=0;r.applyAnchorToTexture&&(n=r.anchor.x,o=r.anchor.y),t[0]=t[6]=-n,t[2]=t[4]=1-n,t[1]=t[3]=-o,t[5]=t[7]=1-o;let a=G.shared;a.copyFrom(r._tileTransform.matrix),a.tx/=r.width,a.ty/=r.height,a.invert(),a.scale(r.width/i,r.height/s),Tb(t,2,0,a)}var Eb=p(()=>{ot();Sb()});var vu,vn,Cb=p(()=>{D();tn();Me();Ve();Hi();ja();_u();_b();yb();vb();Eb();vu=new bu,vn=class{constructor(t){this._state=Ct.default2d,this._tilingSpriteDataHash=Object.create(null),this._destroyRenderableBound=this.destroyRenderable.bind(this),this._renderer=t,this._renderer.renderableGC.addManagedHash(this,"_tilingSpriteDataHash")}validateRenderable(t){let e=this._getTilingSpriteData(t),i=e.canBatch;this._updateCanBatch(t);let s=e.canBatch;if(s&&s===i){let{batchableMesh:n}=e;return!n._batcher.checkAndUpdateTexture(n,t.texture)}return i!==s}addRenderable(t,e){let i=this._renderer.renderPipes.batch;this._updateCanBatch(t);let s=this._getTilingSpriteData(t),{geometry:n,canBatch:o}=s;if(o){s.batchableMesh||(s.batchableMesh=new Pr);let a=s.batchableMesh;t.didViewUpdate&&(this._updateBatchableMesh(t),a.geometry=n,a.renderable=t,a.transform=t.groupTransform,a.texture=t._texture),a.roundPixels=this._renderer._roundPixels|t._roundPixels,i.addToBatch(a,e)}else i.break(e),s.shader||(s.shader=new yu),this.updateRenderable(t),e.add(t)}execute(t){let{shader:e}=this._tilingSpriteDataHash[t.uid];e.groups[0]=this._renderer.globalUniforms.bindGroup;let i=e.resources.localUniforms.uniforms;i.uTransformMatrix=t.groupTransform,i.uRound=this._renderer._roundPixels|t._roundPixels,Xe(t.groupColorAlpha,i.uColor,0),this._state.blendMode=ar(t.groupBlendMode,t.texture._source),this._renderer.encoder.draw({geometry:vu,shader:e,state:this._state})}updateRenderable(t){let e=this._getTilingSpriteData(t),{canBatch:i}=e;if(i){let{batchableMesh:s}=e;t.didViewUpdate&&this._updateBatchableMesh(t),s._batcher.updateElement(s)}else if(t.didViewUpdate){let{shader:s}=e;s.updateUniforms(t.width,t.height,t._tileTransform.matrix,t.anchor.x,t.anchor.y,t.texture)}}destroyRenderable(t){let e=this._getTilingSpriteData(t);e.batchableMesh=null,e.shader?.destroy(),this._tilingSpriteDataHash[t.uid]=null,t.off("destroyed",this._destroyRenderableBound)}_getTilingSpriteData(t){return this._tilingSpriteDataHash[t.uid]||this._initTilingSpriteData(t)}_initTilingSpriteData(t){let e=new Qi({indices:vu.indices,positions:vu.positions.slice(),uvs:vu.uvs.slice()});return this._tilingSpriteDataHash[t.uid]={canBatch:!0,renderable:t,geometry:e},t.on("destroyed",this._destroyRenderableBound),this._tilingSpriteDataHash[t.uid]}_updateBatchableMesh(t){let e=this._getTilingSpriteData(t),{geometry:i}=e,s=t.texture.source.style;s.addressMode!=="repeat"&&(s.addressMode="repeat",s.update()),wb(t,i.uvs),bb(t,i.positions)}destroy(){for(let t in this._tilingSpriteDataHash)this.destroyRenderable(this._tilingSpriteDataHash[t].renderable);this._tilingSpriteDataHash=null,this._renderer=null}_updateCanBatch(t){let e=this._getTilingSpriteData(t),i=t.texture,s=!0;return this._renderer.type===Mt.WEBGL&&(s=this._renderer.context.supports.nonPowOf2wrapping),e.canBatch=i.textureMatrix.isSimple&&(s||i.source.isPowerOfTwo),e.canBatch}};vn.extension={type:[b.WebGLPipes,b.WebGPUPipes,b.CanvasPipes],name:"tilingSprite"}});var Qh=p(()=>{D();Cb();H.add(vn)});var Ab,Pb,Bb=p(()=>{vt();_u();Ab=class Db extends Qi{constructor(...t){super({});let e=t[0]??{};typeof e=="number"&&(X(Y,"PlaneGeometry constructor changed please use { width, height, verticesX, verticesY } instead"),e={width:e,height:t[1],verticesX:t[2],verticesY:t[3]}),this.build(e)}build(t){t={...Db.defaultOptions,...t},this.verticesX=this.verticesX??t.verticesX,this.verticesY=this.verticesY??t.verticesY,this.width=this.width??t.width,this.height=this.height??t.height;let e=this.verticesX*this.verticesY,i=[],s=[],n=[],o=this.verticesX-1,a=this.verticesY-1,u=this.width/o,l=this.height/a;for(let h=0;h{Bb();Mb=class Fb extends Pb{constructor(t={}){t={...Fb.defaultOptions,...t},super({width:t.width,height:t.height,verticesX:4,verticesY:4}),this.update(t)}update(t){this.width=t.width??this.width,this.height=t.height??this.height,this._originalWidth=t.originalWidth??this._originalWidth,this._originalHeight=t.originalHeight??this._originalHeight,this._leftWidth=t.leftWidth??this._leftWidth,this._rightWidth=t.rightWidth??this._rightWidth,this._topHeight=t.topHeight??this._topHeight,this._bottomHeight=t.bottomHeight??this._bottomHeight,this.updateUvs(),this.updatePositions()}updatePositions(){let t=this.positions,e=this._leftWidth+this._rightWidth,i=this.width>e?1:this.width/e,s=this._topHeight+this._bottomHeight,n=this.height>s?1:this.height/s,o=Math.min(i,n);t[9]=t[11]=t[13]=t[15]=this._topHeight*o,t[17]=t[19]=t[21]=t[23]=this.height-this._bottomHeight*o,t[25]=t[27]=t[29]=t[31]=this.height,t[2]=t[10]=t[18]=t[26]=this._leftWidth*o,t[4]=t[12]=t[20]=t[28]=this.width-this._rightWidth*o,t[6]=t[14]=t[22]=t[30]=this.width,this.getBuffer("aPosition").update()}updateUvs(){let t=this.uvs;t[0]=t[8]=t[16]=t[24]=0,t[1]=t[3]=t[5]=t[7]=0,t[6]=t[14]=t[22]=t[30]=1,t[25]=t[27]=t[29]=t[31]=1;let e=1/this._originalWidth,i=1/this._originalHeight;t[2]=t[10]=t[18]=t[26]=e*this._leftWidth,t[9]=t[11]=t[13]=t[15]=i*this._topHeight,t[4]=t[12]=t[20]=t[28]=1-e*this._rightWidth,t[17]=t[19]=t[21]=t[23]=1-i*this._bottomHeight,this.getBuffer("aUV").update()}};Mb.defaultOptions={width:100,height:100,leftWidth:10,topHeight:10,rightWidth:10,bottomHeight:10,originalWidth:100,originalHeight:100};Rb=Mb});var Tn,Gb=p(()=>{D();Qt();ja();kb();Tn=class{constructor(t){this._gpuSpriteHash=Object.create(null),this._destroyRenderableBound=this.destroyRenderable.bind(this),this._renderer=t,this._renderer.renderableGC.addManagedHash(this,"_gpuSpriteHash")}addRenderable(t,e){let i=this._getGpuSprite(t);t.didViewUpdate&&this._updateBatchableSprite(t,i),this._renderer.renderPipes.batch.addToBatch(i,e)}updateRenderable(t){let e=this._gpuSpriteHash[t.uid];t.didViewUpdate&&this._updateBatchableSprite(t,e),e._batcher.updateElement(e)}validateRenderable(t){let e=this._getGpuSprite(t);return!e._batcher.checkAndUpdateTexture(e,t._texture)}destroyRenderable(t){let e=this._gpuSpriteHash[t.uid];K.return(e.geometry),K.return(e),this._gpuSpriteHash[t.uid]=null,t.off("destroyed",this._destroyRenderableBound)}_updateBatchableSprite(t,e){e.geometry.update(t),e.texture=t._texture}_getGpuSprite(t){return this._gpuSpriteHash[t.uid]||this._initGPUSprite(t)}_initGPUSprite(t){let e=K.get(Pr);return e.geometry=K.get(Rb),e.renderable=t,e.transform=t.groupTransform,e.texture=t._texture,e.roundPixels=this._renderer._roundPixels|t._roundPixels,this._gpuSpriteHash[t.uid]=e,t.didViewUpdate||this._updateBatchableSprite(t,e),t.on("destroyed",this._destroyRenderableBound),e}destroy(){for(let t in this._gpuSpriteHash)this._gpuSpriteHash[t].geometry.destroy();this._gpuSpriteHash=null,this._renderer=null}};Tn.extension={type:[b.WebGLPipes,b.WebGPUPipes,b.CanvasPipes],name:"nineSliceSprite"}});var Jh=p(()=>{D();Gb();H.add(Tn)});var Sn,Ib=p(()=>{D();Sn=class{constructor(t){this._renderer=t}push(t,e,i){this._renderer.renderPipes.batch.break(i),i.add({renderPipeId:"filter",canBundle:!1,action:"pushFilter",container:e,filterEffect:t})}pop(t,e,i){this._renderer.renderPipes.batch.break(i),i.add({renderPipeId:"filter",action:"popFilter",canBundle:!1})}execute(t){t.action==="pushFilter"?this._renderer.filter.push(t):t.action==="popFilter"&&this._renderer.filter.pop()}destroy(){this._renderer=null}};Sn.extension={type:[b.WebGLPipes,b.WebGPUPipes,b.CanvasPipes],name:"filter"}});function Ub(r,t){t.clear(),Ob(r,t),t.isValid||t.set(0,0,0,0);let e=r.renderGroup||r.parentRenderGroup;return t.applyMatrix(e.worldTransform),t}function Ob(r,t){if(r.localDisplayStatus!==7||!r.measurable)return;let e=!!r.effects.length,i=t;if((r.renderGroup||e)&&(i=he.get().clear()),r.boundsArea)t.addRect(r.boundsArea,r.worldTransform);else{if(r.renderPipeId){let n=r.bounds;i.addFrame(n.minX,n.minY,n.maxX,n.maxY,r.groupTransform)}let s=r.children;for(let n=0;n{ot();Vr();eD=new G});function Nb(r,t){t.clear();let e=t.matrix;for(let i=0;i{"use strict"});var rD,wn,zb=p(()=>{D();ot();xe();wr();Bi();ee();dt();yr();Ve();ce();Lb();Hb();gt();rD=new ye({attributes:{aPosition:{buffer:new Float32Array([0,0,1,0,1,1,0,1]),format:"float32x2",stride:2*4,offset:0}},indexBuffer:new Uint32Array([0,1,2,0,2,3])}),wn=class{constructor(t){this._filterStackIndex=0,this._filterStack=[],this._filterGlobalUniforms=new ct({uInputSize:{value:new Float32Array(4),type:"vec4"},uInputPixel:{value:new Float32Array(4),type:"vec4"},uInputClamp:{value:new Float32Array(4),type:"vec4"},uOutputFrame:{value:new Float32Array(4),type:"vec4"},uGlobalFrame:{value:new Float32Array(4),type:"vec4"},uOutputTexture:{value:new Float32Array(4),type:"vec4"}}),this._globalFilterBindGroup=new It({}),this.renderer=t}get activeBackTexture(){return this._activeFilterData?.backTexture}push(t){let e=this.renderer,i=t.filterEffect.filters;this._filterStack[this._filterStackIndex]||(this._filterStack[this._filterStackIndex]=this._getFilterData());let s=this._filterStack[this._filterStackIndex];if(this._filterStackIndex++,i.length===0){s.skip=!0;return}let n=s.bounds;if(t.renderables?Nb(t.renderables,n):t.filterEffect.filterArea?(n.clear(),n.addRect(t.filterEffect.filterArea),n.applyMatrix(t.container.worldTransform)):Ub(t.container,n),t.container){let m=(t.container.renderGroup||t.container.parentRenderGroup).cacheToLocalTransform;m&&n.applyMatrix(m)}let o=e.renderTarget.renderTarget.colorTexture.source,a=1/0,u=0,l=!0,c=!1,h=!1,d=!0;for(let f=0;f0?this._filterStack[this._filterStackIndex-1].bounds:null,u=t.renderTarget.getRenderTarget(e.previousRenderSurface);n=this.getBackTexture(u,s,a)}e.backTexture=n;let o=e.filterEffect.filters;if(this._globalFilterBindGroup.setResource(i.source.style,2),this._globalFilterBindGroup.setResource(n.source,3),t.globalUniforms.pop(),o.length===1)o[0].apply(this,i,e.previousRenderSurface,!1),xt.returnTexture(i);else{let a=e.inputTexture,u=xt.getOptimalTexture(s.width,s.height,a.source._resolution,!1),l=0;for(l=0;l0&&this._filterStack[d].skip;)--d;d>0&&(h=this._filterStack[d].inputTexture.source._resolution);let f=this._filterGlobalUniforms,m=f.uniforms,g=m.uOutputFrame,x=m.uInputSize,_=m.uInputPixel,v=m.uInputClamp,T=m.uGlobalFrame,y=m.uOutputTexture;if(c){let E=this._filterStackIndex;for(;E>0;){E--;let P=this._filterStack[this._filterStackIndex-1];if(!P.skip){u.x=P.bounds.minX,u.y=P.bounds.minY;break}}g[0]=a.minX-u.x,g[1]=a.minY-u.y}else g[0]=0,g[1]=0;g[2]=e.frame.width,g[3]=e.frame.height,x[0]=e.source.width,x[1]=e.source.height,x[2]=1/x[0],x[3]=1/x[1],_[0]=e.source.pixelWidth,_[1]=e.source.pixelHeight,_[2]=1/_[0],_[3]=1/_[1],v[0]=.5*_[2],v[1]=.5*_[3],v[2]=e.frame.width*x[2]-.5*_[2],v[3]=e.frame.height*x[3]-.5*_[3];let C=this.renderer.renderTarget.rootRenderTarget.colorTexture;T[0]=u.x*h,T[1]=u.y*h,T[2]=C.source.width*h,T[3]=C.source.height*h;let S=this.renderer.renderTarget.getRenderTarget(i);if(n.renderTarget.bind(i,!!s),i instanceof I?(y[0]=i.frame.width,y[1]=i.frame.height):(y[0]=S.width,y[1]=S.height),y[2]=S.isRoot?-1:1,f.update(),n.renderPipes.uniformBatch){let E=n.renderPipes.uniformBatch.getUboResource(f);this._globalFilterBindGroup.setResource(E,0)}else this._globalFilterBindGroup.setResource(f,0);this._globalFilterBindGroup.setResource(e.source,1),this._globalFilterBindGroup.setResource(e.source.style,2),t.groups[0]=this._globalFilterBindGroup,n.encoder.draw({geometry:rD,shader:t,state:t._state,topology:"triangle-list"}),n.type===Mt.WEBGL&&n.renderTarget.finishRenderPass()}_getFilterData(){return{skip:!1,inputTexture:null,bounds:new ft,container:null,filterEffect:null,blendRequired:!1,previousRenderSurface:null}}calculateSpriteMatrix(t,e){let i=this._activeFilterData,s=t.set(i.inputTexture._source.width,0,0,i.inputTexture._source.height,i.bounds.minX,i.bounds.minY),n=e.worldTransform.copyTo(G.shared),o=e.renderGroup||e.parentRenderGroup;return o&&o.cacheToLocalTransform&&n.prepend(o.cacheToLocalTransform),n.invert(),s.prepend(n),s.scale(1/e.texture.frame.width,1/e.texture.frame.height),s.translate(e.anchor.x,e.anchor.y),s}};wn.extension={type:[b.WebGLSystem,b.WebGPUSystem],name:"filter"}});var tf=p(()=>{D();Ib();zb();H.add(wn);H.add(Sn)});var iD={};var Wb=p(()=>{Vg();nc();Qg();Ta();Pa();fh();dh();xh();Oh();$h();Kh();Qh();Jh();tf()});var sD={};var Xb=p(()=>{nc();Ta();Pa();fh();dh();xh();Oh();$h();Kh();Qh();Jh();tf()});var jb,Yb,Kb=p(()=>{ri();Fi();Be();Me();jb=class ef extends St{constructor(t){t={...ef.defaultOptions,...t},super(t),this.enabled=!0,this._state=Ct.for2d(),this.blendMode=t.blendMode,this.padding=t.padding,typeof t.antialias=="boolean"?this.antialias=t.antialias?"on":"off":this.antialias=t.antialias,this.resolution=t.resolution,this.blendRequired=t.blendRequired,this.clipToViewport=t.clipToViewport,this.addResource("uTexture",0,1)}apply(t,e,i,s){t.applyFilter(this,e,i,s)}get blendMode(){return this._state.blendMode}set blendMode(t){this._state.blendMode=t}static from(t){let{gpu:e,gl:i,...s}=t,n,o;return e&&(n=ve.from(e)),i&&(o=be.from(i)),new ef({gpuProgram:n,glProgram:o,...s})}};jb.defaultOptions={blendMode:"normal",resolution:1,padding:0,antialias:"off",blendRequired:!1,clipToViewport:!0};Yb=jb});async function qb(r){if(!r)for(let t=0;t{D();rf=[];H.handleByNamedList(b.Environment,rf)});function Tu(){if(typeof En=="boolean")return En;try{En=new Function("param1","param2","param3","return param1[param2] === param3;")({a:"b"},"a","b")===!0}catch{En=!1}return En}var En,sf=p(()=>{"use strict"});var Ot,es=p(()=>{"use strict";Ot=(r=>(r[r.NONE=0]="NONE",r[r.COLOR=16384]="COLOR",r[r.STENCIL=1024]="STENCIL",r[r.DEPTH=256]="DEPTH",r[r.COLOR_DEPTH=16640]="COLOR_DEPTH",r[r.COLOR_STENCIL=17408]="COLOR_STENCIL",r[r.DEPTH_STENCIL=1280]="DEPTH_STENCIL",r[r.ALL=17664]="ALL",r))(Ot||{})});var rs,nf=p(()=>{"use strict";rs=class{constructor(t){this.items=[],this._name=t}emit(t,e,i,s,n,o,a,u){let{name:l,items:c}=this;for(let h=0,d=c.length;h{$t();Zb();De();sf();vt();es();nf();Xt();nD=["init","destroy","contextChange","resolutionChange","reset","renderEnd","renderStart","render","update","postrender","prerender"],Qb=class Jb extends ht{constructor(t){super(),this.runners=Object.create(null),this.renderPipes=Object.create(null),this._initOptions={},this._systemsHash=Object.create(null),this.type=t.type,this.name=t.name,this.config=t;let e=[...nD,...this.config.runners??[]];this._addRunners(...e),this._unsafeEvalCheck()}async init(t={}){let e=t.skipExtensionImports===!0?!0:t.manageImports===!1;await qb(e),this._addSystems(this.config.systems),this._addPipes(this.config.renderPipes,this.config.renderPipeAdaptors);for(let i in this._systemsHash)t={...this._systemsHash[i].constructor.defaultOptions,...t};t={...Jb.defaultOptions,...t},this._roundPixels=t.roundPixels?1:0;for(let i=0;i{this.runners[e]=new rs(e)})}_addSystems(t){let e;for(e in t){let i=t[e];this._addSystem(i.value,i.name)}}_addSystem(t,e){let i=new t(this);if(this[e])throw new Error(`Whoops! The name "${e}" is already in use`);this[e]=i,this._systemsHash[e]=i;for(let s in this.runners)this.runners[s].add(i);return this}_addPipes(t,e){let i=e.reduce((s,n)=>(s[n.name]=n.value,s),{});t.forEach(s=>{let n=s.value,o=s.name,a=i[o];this.renderPipes[o]=new n(this,a?new a:null)})}destroy(t=!1){this.runners.destroy.items.reverse(),this.runners.destroy.emit(t),Object.values(this.runners).forEach(e=>{e.destroy()}),this._systemsHash=null,this.renderPipes=null}generateTexture(t){return this.textureGenerator.generateTexture(t)}get roundPixels(){return!!this._roundPixels}_unsafeEvalCheck(){if(!Tu())throw new Error("Current environment does not allow unsafe-eval, please use pixi.js/unsafe-eval module to enable support.")}};Qb.defaultOptions={resolution:1,failIfMajorPerformanceCaveat:!1,roundPixels:!1};Rr=Qb});var An,rv=p(()=>{D();ot();ti();Fa();Ar();sn();nn();ts();Dr();Be();ee();An=class{init(){let t=new ct({uTransformMatrix:{value:new G,type:"mat3x3"},uColor:{value:new Float32Array([1,1,1,1]),type:"vec4"},uRound:{value:0,type:"f32"}}),e=Ne({name:"graphics",bits:[Ri,Gi(_e()),pb,ze]});this.shader=new St({gpuProgram:e,resources:{localUniforms:t}})}execute(t,e){let i=e.context,s=i.customShader||this.shader,n=t.renderer,o=n.graphicsContext,{batcher:a,instructions:u}=o.getContextRenderData(i),l=n.encoder;l.setGeometry(a.geometry,s.gpuProgram);let c=n.globalUniforms.bindGroup;l.setBindGroup(0,c,s.gpuProgram);let h=n.renderPipes.uniformBatch.getUniformBindGroup(s.resources.localUniforms,!0);l.setBindGroup(2,h,s.gpuProgram);let d=u.instructions,f=null;for(let m=0;m{"use strict";iv={name:"texture-bit",vertex:{header:`\n\n struct TextureUniforms {\n uTextureMatrix:mat3x3,\n }\n\n @group(2) @binding(2) var textureUniforms : TextureUniforms;\n `,main:`\n uv = (textureUniforms.uTextureMatrix * vec3(uv, 1.0)).xy;\n `},fragment:{header:`\n @group(2) @binding(0) var uTexture: texture_2d;\n @group(2) @binding(1) var uSampler: sampler;\n\n \n `,main:`\n outColor = textureSample(uTexture, uSampler, vUV);\n `}},sv={name:"texture-bit",vertex:{header:`\n uniform mat3 uTextureMatrix;\n `,main:`\n uv = (uTextureMatrix * vec3(uv, 1.0)).xy;\n `},fragment:{header:`\n uniform sampler2D uTexture;\n\n \n `,main:`\n outColor = texture(uTexture, vUV);\n `}}});var Dn,nv=p(()=>{D();ot();Ar();ts();Dr();of();Be();dt();gt();Dn=class{init(){let t=Ne({name:"mesh",bits:[ci,iv,ze]});this._shader=new St({gpuProgram:t,resources:{uTexture:I.EMPTY._source,uSampler:I.EMPTY._source.style,textureUniforms:{uTextureMatrix:{type:"mat3x3",value:new G}}}})}execute(t,e){let i=t.renderer,s=e._shader;if(!s)s=this._shader,s.groups[2]=i.texture.getTextureBindGroup(e.texture);else if(!s.gpuProgram){z("Mesh shader has no gpuProgram",e.shader);return}let n=s.gpuProgram;if(n.autoAssignGlobalUniforms&&(s.groups[0]=i.globalUniforms.bindGroup),n.autoAssignLocalUniforms){let o=t.localUniforms;s.groups[1]=i.renderPipes.uniformBatch.getUniformBindGroup(o,!0)}i.encoder.draw({geometry:e._geometry,shader:s,state:e.state})}destroy(){this._shader.destroy(!0),this._shader=null}};Dn.extension={type:[b.WebGPUPipesAdaptor],name:"mesh"}});var Eu,Pn,ov=p(()=>{D();Me();Fa();Eu=Ct.for2d(),Pn=class{start(t,e,i){let s=t.renderer,n=s.encoder,o=i.gpuProgram;this._shader=i,this._geometry=e,n.setGeometry(e,o),Eu.blendMode="normal",s.pipeline.getPipeline(e,o,Eu);let a=s.globalUniforms.bindGroup;n.resetBindGroup(1),n.setBindGroup(0,a,o)}execute(t,e){let i=this._shader.gpuProgram,s=t.renderer,n=s.encoder;if(!e.bindGroup){let u=e.textures;e.bindGroup=Pi(u.textures,u.count)}Eu.blendMode=e.blendMode;let o=s.bindGroup.getBindGroup(e.bindGroup,i,1),a=s.pipeline.getPipeline(this._geometry,i,Eu,e.topology);e.bindGroup._touch(s.textureGC.count),n.setPipeline(a),n.renderPassEncoder.setBindGroup(1,o),n.renderPassEncoder.drawIndexed(e.size,1,e.start)}};Pn.extension={type:[b.WebGPUPipesAdaptor],name:"batch"}});var Bn,av=p(()=>{D();Bn=class{constructor(t){this._renderer=t}updateRenderable(){}destroyRenderable(){}validateRenderable(){return!1}addRenderable(t,e){this._renderer.renderPipes.batch.break(e),e.add(t)}execute(t){t.isRenderable&&t.render(this._renderer)}destroy(){this._renderer=null}};Bn.extension={type:[b.WebGLPipes,b.WebGPUPipes,b.CanvasPipes],name:"customRender"}});function Mn(r,t){let e=r.instructionSet,i=e.instructions;for(let s=0;s{"use strict"});var oD,Fn,uv=p(()=>{D();ot();Qt();pn();af();oD=new G,Fn=class{constructor(t){this._renderer=t}addRenderGroup(t,e){t.isCachedAsTexture?this._addRenderableCacheAsTexture(t,e):this._addRenderableDirect(t,e)}execute(t){t.isRenderable&&(t.isCachedAsTexture?this._executeCacheAsTexture(t):this._executeDirect(t))}destroy(){this._renderer=null}_addRenderableDirect(t,e){this._renderer.renderPipes.batch.break(e),t._batchableRenderGroup&&(K.return(t._batchableRenderGroup),t._batchableRenderGroup=null),e.add(t)}_addRenderableCacheAsTexture(t,e){let i=t._batchableRenderGroup??(t._batchableRenderGroup=K.get($e));i.renderable=t.root,i.transform=t.root.relativeGroupTransform,i.texture=t.texture,i.bounds=t._textureBounds,e.add(t),this._renderer.renderPipes.batch.addToBatch(i,e)}_executeCacheAsTexture(t){if(t.textureNeedsUpdate){t.textureNeedsUpdate=!1;let e=oD.identity().translate(-t._textureBounds.x,-t._textureBounds.y);this._renderer.renderTarget.push(t.texture,!0,null,t.texture.frame),this._renderer.globalUniforms.push({worldTransformMatrix:e,worldColor:4294967295}),Mn(t,this._renderer.renderPipes),this._renderer.renderTarget.finishRenderPass(),this._renderer.renderTarget.pop(),this._renderer.globalUniforms.pop()}t._batchableRenderGroup._batcher.updateElement(t._batchableRenderGroup),t._batchableRenderGroup._batcher.geometry.buffers[0].update()}_executeDirect(t){this._renderer.globalUniforms.push({worldTransformMatrix:t.inverseParentTextureTransform,worldColor:t.worldColorAlpha}),Mn(t,this._renderer.renderPipes),this._renderer.globalUniforms.pop()}};Fn.extension={type:[b.WebGLPipes,b.WebGPUPipes,b.CanvasPipes],name:"renderGroup"}});function lv(r,t){let e=r.root,i=r.instructionSet;i.reset();let s=t.renderPipes?t:t.batch.renderer,n=s.renderPipes;n.batch.buildStart(i),n.blendMode.buildStart(),n.colorMask.buildStart(),e.sortableChildren&&e.sortChildren(),cv(e,i,s,!0),n.batch.buildEnd(i),n.blendMode.buildEnd(i)}function is(r,t,e){let i=e.renderPipes?e:e.batch.renderer;r.globalDisplayStatus<7||!r.includeInBuild||(r.sortableChildren&&r.sortChildren(),r.isSimple?aD(r,t,i):cv(r,t,i,!1))}function aD(r,t,e){if(r.renderPipeId){let i=r,{renderPipes:s,renderableGC:n}=e;s.blendMode.setBlendMode(i,r.groupBlendMode,t),s[i.renderPipeId].addRenderable(i,t),n.addRenderable(i),i.didViewUpdate=!1}if(!r.renderGroup){let i=r.children,s=i.length;for(let n=0;n=0;l--){let c=r.effects[l];s[c.pipe].pop(c,r,t)}}}var Cu=p(()=>{"use strict"});function Rn(r,t){t||(t=0);for(let e=t;e{"use strict"});function lf(r,t=!1){lD(r);let e=r.childrenToUpdate,i=r.updateTick++;for(let s in e){let n=Number(s),o=e[s],a=o.list,u=o.index;for(let l=0;l1?1:e,r.worldAlpha=e,r.worldColorAlpha=r.worldColor+((e*255|0)<<24)}function dv(r,t,e){if(t===r.updateTick)return;r.updateTick=t,r.didChange=!1;let i=r.localTransform;r.updateLocalTransform();let s=r.parent;if(s&&!s.renderGroup?(e|=r._updateFlags,r.relativeGroupTransform.appendFrom(i,s.relativeGroupTransform),e&hv&&fv(r,s,e)):(e=r._updateFlags,r.relativeGroupTransform.copyFrom(i),e&hv&&fv(r,uD,e)),!r.renderGroup){let n=r.children,o=n.length;for(let l=0;l1?1:i,r.groupAlpha=i,r.groupColorAlpha=r.groupColor+((i*255|0)<<24)}e&Ls&&(r.groupBlendMode=r.localBlendMode==="inherit"?t.groupBlendMode:r.localBlendMode),e&qr&&(r.globalDisplayStatus=r.localDisplayStatus&t.globalDisplayStatus),r._updateFlags=0}var uD,hv,pv=p(()=>{De();uf();zl();uD=new it,hv=qr|wi|Ls});function mv(r,t){let{list:e,index:i}=r.childrenRenderablesToUpdate,s=!1;for(let n=0;n{"use strict"});var cD,kn,xv=p(()=>{D();ot();yr();ce();Cu();uf();af();pv();gv();cD=new G,kn=class{constructor(t){this._renderer=t}render({container:t,transform:e}){let i=t.parent,s=t.renderGroup.renderGroupParent;t.parent=null,t.renderGroup.renderGroupParent=null;let n=this._renderer,o=cD;e&&(o=o.copyFrom(t.renderGroup.localTransform),t.renderGroup.localTransform.copyFrom(e));let a=n.renderPipes;this._updateCachedRenderGroups(t.renderGroup,null),this._updateRenderGroups(t.renderGroup),n.globalUniforms.start({worldTransformMatrix:e?t.renderGroup.localTransform:t.renderGroup.worldTransform,worldColor:t.renderGroup.worldColorAlpha}),Mn(t.renderGroup,a),a.uniformBatch&&a.uniformBatch.renderEnd(),e&&t.renderGroup.localTransform.copyFrom(o),t.parent=i,t.renderGroup.renderGroupParent=s}destroy(){this._renderer=null}_updateCachedRenderGroups(t,e){if(t.isCachedAsTexture){if(!t.updateCacheTexture)return;e=t}t._parentCacheAsTextureRenderGroup=e;for(let i=t.renderGroupChildren.length-1;i>=0;i--)this._updateCachedRenderGroups(t.renderGroupChildren[i],e);if(t.invalidateMatrices(),t.isCachedAsTexture){if(t.textureNeedsUpdate){let i=t.root.getLocalBounds();i.ceil();let s=t.texture;t.texture&&xt.returnTexture(t.texture);let n=this._renderer,o=t.textureOptions.resolution||n.view.resolution,a=t.textureOptions.antialias??n.view.antialias;t.texture=xt.getOptimalTexture(i.width,i.height,o,a),t._textureBounds||(t._textureBounds=new ft),t._textureBounds.copyFrom(i),s!==t.texture&&t.renderGroupParent&&(t.renderGroupParent.structureDidChange=!0)}}else t.texture&&(xt.returnTexture(t.texture),t.texture=null)}_updateRenderGroups(t){let e=this._renderer,i=e.renderPipes;if(t.runOnRender(),t.instructionSet.renderPipes=i,t.structureDidChange?Rn(t.childrenRenderablesToUpdate.list,0):mv(t,i),lf(t),t.structureDidChange?(t.structureDidChange=!1,lv(t,e)):this._updateRenderables(t),t.childrenRenderablesToUpdate.index=0,e.renderPipes.batch.upload(t.instructionSet),!(t.isCachedAsTexture&&!t.textureNeedsUpdate))for(let s=0;s{D();Qt();pn();Gn=class{constructor(t){this._gpuSpriteHash=Object.create(null),this._destroyRenderableBound=this.destroyRenderable.bind(this),this._renderer=t,this._renderer.renderableGC.addManagedHash(this,"_gpuSpriteHash")}addRenderable(t,e){let i=this._getGpuSprite(t);t.didViewUpdate&&this._updateBatchableSprite(t,i),this._renderer.renderPipes.batch.addToBatch(i,e)}updateRenderable(t){let e=this._gpuSpriteHash[t.uid];t.didViewUpdate&&this._updateBatchableSprite(t,e),e._batcher.updateElement(e)}validateRenderable(t){let e=this._getGpuSprite(t);return!e._batcher.checkAndUpdateTexture(e,t._texture)}destroyRenderable(t){let e=this._gpuSpriteHash[t.uid];K.return(e),this._gpuSpriteHash[t.uid]=null,t.off("destroyed",this._destroyRenderableBound)}_updateBatchableSprite(t,e){e.bounds=t.visualBounds,e.texture=t._texture}_getGpuSprite(t){return this._gpuSpriteHash[t.uid]||this._initGPUSprite(t)}_initGPUSprite(t){let e=K.get($e);return e.renderable=t,e.transform=t.groupTransform,e.texture=t._texture,e.bounds=t.visualBounds,e.roundPixels=this._renderer._roundPixels|t._roundPixels,this._gpuSpriteHash[t.uid]=e,t.on("destroyed",this._destroyRenderableBound),e}destroy(){for(let t in this._gpuSpriteHash)K.return(this._gpuSpriteHash[t]);this._gpuSpriteHash=null,this._renderer=null}};Gn.extension={type:[b.WebGLPipes,b.WebGPUPipes,b.CanvasPipes],name:"sprite"}});var ss,cf=p(()=>{Xt();ss="8.6.6"});var In,Un,hf=p(()=>{D();cf();In=class{static init(){globalThis.__PIXI_APP_INIT__?.(this,ss)}static destroy(){}};In.extension=b.Application;Un=class{constructor(t){this._renderer=t}init(){globalThis.__PIXI_RENDERER_INIT__?.(this._renderer,ss)}destroy(){this._renderer=null}};Un.extension={type:[b.WebGLSystem,b.WebGPUSystem],name:"initHook",priority:-10}});var ff,df,bv=p(()=>{D();Me();$c();ff=class yv{constructor(t,e){this.state=Ct.for2d(),this._batchersByInstructionSet=Object.create(null),this._activeBatches=Object.create(null),this.renderer=t,this._adaptor=e,this._adaptor.init?.(this)}static getBatcher(t){return new this._availableBatchers[t]}buildStart(t){let e=this._batchersByInstructionSet[t.uid];e||(e=this._batchersByInstructionSet[t.uid]=Object.create(null),e.default||(e.default=new on)),this._activeBatches=e,this._activeBatch=this._activeBatches.default;for(let i in this._activeBatches)this._activeBatches[i].begin()}addToBatch(t,e){if(this._activeBatch.name!==t.batcherName){this._activeBatch.break(e);let i=this._activeBatches[t.batcherName];i||(i=this._activeBatches[t.batcherName]=yv.getBatcher(t.batcherName),i.begin()),this._activeBatch=i}this._activeBatch.add(t)}break(t){this._activeBatch.break(t)}buildEnd(t){this._activeBatch.break(t);let e=this._activeBatches;for(let i in e){let s=e[i],n=s.geometry;n.indexBuffer.setDataWithSize(s.indexBuffer,s.indexSize,!0),n.buffers[0].setDataWithSize(s.attributeBuffer.float32View,s.attributeSize,!1)}}upload(t){let e=this._batchersByInstructionSet[t.uid];for(let i in e){let s=e[i],n=s.geometry;s.dirty&&(s.dirty=!1,n.buffers[0].update(s.attributeSize*4))}}execute(t){if(t.action==="startBatch"){let e=t.batcher,i=e.geometry,s=e.shader;this._adaptor.start(this,i,s)}this._adaptor.execute(this,t)}destroy(){this.state=null,this.renderer=null,this._adaptor=null;for(let t in this._activeBatches)this._activeBatches[t].destroy();this._activeBatches=null}};ff.extension={type:[b.WebGLPipes,b.WebGPUPipes,b.CanvasPipes],name:"batch"};ff._availableBatchers=Object.create(null);df=ff;H.handleByMap(b.Batcher,df._availableBatchers);H.add(on)});var vv,Tv=p(()=>{vv=`in vec2 vMaskCoord;\nin vec2 vTextureCoord;\n\nuniform sampler2D uTexture;\nuniform sampler2D uMaskTexture;\n\nuniform float uAlpha;\nuniform vec4 uMaskClamp;\nuniform float uInverse;\n\nout vec4 finalColor;\n\nvoid main(void)\n{\n float clip = step(3.5,\n step(uMaskClamp.x, vMaskCoord.x) +\n step(uMaskClamp.y, vMaskCoord.y) +\n step(vMaskCoord.x, uMaskClamp.z) +\n step(vMaskCoord.y, uMaskClamp.w));\n\n // TODO look into why this is needed\n float npmAlpha = uAlpha;\n vec4 original = texture(uTexture, vTextureCoord);\n vec4 masky = texture(uMaskTexture, vMaskCoord);\n float alphaMul = 1.0 - npmAlpha * (1.0 - masky.a);\n\n float a = alphaMul * masky.r * npmAlpha * clip;\n\n if (uInverse == 1.0) {\n a = 1.0 - a;\n }\n\n finalColor = original * a;\n}\n`});var Sv,wv=p(()=>{Sv=`in vec2 aPosition;\n\nout vec2 vTextureCoord;\nout vec2 vMaskCoord;\n\n\nuniform vec4 uInputSize;\nuniform vec4 uOutputFrame;\nuniform vec4 uOutputTexture;\nuniform mat3 uFilterMatrix;\n\nvec4 filterVertexPosition( vec2 aPosition )\n{\n vec2 position = aPosition * uOutputFrame.zw + uOutputFrame.xy;\n \n position.x = position.x * (2.0 / uOutputTexture.x) - 1.0;\n position.y = position.y * (2.0*uOutputTexture.z / uOutputTexture.y) - uOutputTexture.z;\n\n return vec4(position, 0.0, 1.0);\n}\n\nvec2 filterTextureCoord( vec2 aPosition )\n{\n return aPosition * (uOutputFrame.zw * uInputSize.zw);\n}\n\nvec2 getFilterCoord( vec2 aPosition )\n{\n return ( uFilterMatrix * vec3( filterTextureCoord(aPosition), 1.0) ).xy;\n} \n\nvoid main(void)\n{\n gl_Position = filterVertexPosition(aPosition);\n vTextureCoord = filterTextureCoord(aPosition);\n vMaskCoord = getFilterCoord(aPosition);\n}\n`});var pf,Ev=p(()=>{pf=`struct GlobalFilterUniforms {\n uInputSize:vec4,\n uInputPixel:vec4,\n uInputClamp:vec4,\n uOutputFrame:vec4,\n uGlobalFrame:vec4,\n uOutputTexture:vec4,\n};\n\nstruct MaskUniforms {\n uFilterMatrix:mat3x3,\n uMaskClamp:vec4,\n uAlpha:f32,\n uInverse:f32,\n};\n\n@group(0) @binding(0) var gfu: GlobalFilterUniforms;\n@group(0) @binding(1) var uTexture: texture_2d;\n@group(0) @binding(2) var uSampler : sampler;\n\n@group(1) @binding(0) var filterUniforms : MaskUniforms;\n@group(1) @binding(1) var uMaskTexture: texture_2d;\n\nstruct VSOutput {\n @builtin(position) position: vec4,\n @location(0) uv : vec2,\n @location(1) filterUv : vec2,\n};\n\nfn filterVertexPosition(aPosition:vec2) -> vec4\n{\n var position = aPosition * gfu.uOutputFrame.zw + gfu.uOutputFrame.xy;\n\n position.x = position.x * (2.0 / gfu.uOutputTexture.x) - 1.0;\n position.y = position.y * (2.0*gfu.uOutputTexture.z / gfu.uOutputTexture.y) - gfu.uOutputTexture.z;\n\n return vec4(position, 0.0, 1.0);\n}\n\nfn filterTextureCoord( aPosition:vec2 ) -> vec2\n{\n return aPosition * (gfu.uOutputFrame.zw * gfu.uInputSize.zw);\n}\n\nfn globalTextureCoord( aPosition:vec2 ) -> vec2\n{\n return (aPosition.xy / gfu.uGlobalFrame.zw) + (gfu.uGlobalFrame.xy / gfu.uGlobalFrame.zw);\n}\n\nfn getFilterCoord(aPosition:vec2 ) -> vec2\n{\n return ( filterUniforms.uFilterMatrix * vec3( filterTextureCoord(aPosition), 1.0) ).xy;\n}\n\nfn getSize() -> vec2\n{\n return gfu.uGlobalFrame.zw;\n}\n\n@vertex\nfn mainVertex(\n @location(0) aPosition : vec2,\n) -> VSOutput {\n return VSOutput(\n filterVertexPosition(aPosition),\n filterTextureCoord(aPosition),\n getFilterCoord(aPosition)\n );\n}\n\n@fragment\nfn mainFragment(\n @location(0) uv: vec2,\n @location(1) filterUv: vec2,\n @builtin(position) position: vec4\n) -> @location(0) vec4 {\n\n var maskClamp = filterUniforms.uMaskClamp;\n var uAlpha = filterUniforms.uAlpha;\n\n var clip = step(3.5,\n step(maskClamp.x, filterUv.x) +\n step(maskClamp.y, filterUv.y) +\n step(filterUv.x, maskClamp.z) +\n step(filterUv.y, maskClamp.w));\n\n var mask = textureSample(uMaskTexture, uSampler, filterUv);\n var source = textureSample(uTexture, uSampler, uv);\n var alphaMul = 1.0 - uAlpha * (1.0 - mask.a);\n\n var a: f32 = alphaMul * mask.r * uAlpha * clip;\n\n if (filterUniforms.uInverse == 1.0) {\n a = 1.0 - a;\n }\n\n return source * a;\n}\n`});var Au,Cv=p(()=>{ot();ri();Fi();ee();Zl();Kb();Tv();wv();Ev();Au=class extends Yb{constructor(t){let{sprite:e,...i}=t,s=new Si(e.texture),n=new ct({uFilterMatrix:{value:new G,type:"mat3x3"},uMaskClamp:{value:s.uClampFrame,type:"vec4"},uAlpha:{value:1,type:"f32"},uInverse:{value:t.inverse?1:0,type:"f32"}}),o=ve.from({vertex:{source:pf,entryPoint:"mainVertex"},fragment:{source:pf,entryPoint:"mainFragment"}}),a=be.from({vertex:Sv,fragment:vv,name:"mask-filter"});super({...i,gpuProgram:o,glProgram:a,resources:{filterUniforms:n,uMaskTexture:e.texture.source}}),this.sprite=e,this._textureMatrix=s}set inverse(t){this.resources.filterUniforms.uniforms.uInverse=t?1:0}get inverse(){return this.resources.filterUniforms.uniforms.uInverse===1}apply(t,e,i,s){this._textureMatrix.texture=this.sprite.texture,t.calculateSpriteMatrix(this.resources.filterUniforms.uniforms.uFilterMatrix,this.sprite).prepend(this._textureMatrix.mapCoord),this.resources.uMaskTexture=this.sprite.texture.source,t.applyFilter(this,e,i,s)}}});var hD,mf,On,Av=p(()=>{D();oa();Cv();ce();Is();Cu();yc();Qt();dt();yr();Ve();hD=new ft,mf=class extends rr{constructor(){super(),this.filters=[new Au({sprite:new Jr(I.EMPTY),inverse:!1,resolution:"inherit",antialias:"inherit"})]}get sprite(){return this.filters[0].sprite}set sprite(t){this.filters[0].sprite=t}get inverse(){return this.filters[0].inverse}set inverse(t){this.filters[0].inverse=t}},On=class{constructor(t){this._activeMaskStage=[],this._renderer=t}push(t,e,i){let s=this._renderer;if(s.renderPipes.batch.break(i),i.add({renderPipeId:"alphaMask",action:"pushMaskBegin",mask:t,inverse:e._maskOptions.inverse,canBundle:!1,maskedContainer:e}),t.inverse=e._maskOptions.inverse,t.renderMaskToTexture){let n=t.mask;n.includeInBuild=!0,is(n,i,s),n.includeInBuild=!1}s.renderPipes.batch.break(i),i.add({renderPipeId:"alphaMask",action:"pushMaskEnd",mask:t,maskedContainer:e,inverse:e._maskOptions.inverse,canBundle:!1})}pop(t,e,i){this._renderer.renderPipes.batch.break(i),i.add({renderPipeId:"alphaMask",action:"popMaskEnd",mask:t,inverse:e._maskOptions.inverse,canBundle:!1})}execute(t){let e=this._renderer,i=t.mask.renderMaskToTexture;if(t.action==="pushMaskBegin"){let s=K.get(mf);if(s.inverse=t.inverse,i){t.mask.mask.measurable=!0;let n=yi(t.mask.mask,!0,hD);t.mask.mask.measurable=!1,n.ceil();let o=e.renderTarget.renderTarget.colorTexture.source,a=xt.getOptimalTexture(n.width,n.height,o._resolution,o.antialias);e.renderTarget.push(a,!0),e.globalUniforms.push({offset:n,worldColor:4294967295});let u=s.sprite;u.texture=a,u.worldTransform.tx=n.minX,u.worldTransform.ty=n.minY,this._activeMaskStage.push({filterEffect:s,maskedContainer:t.maskedContainer,filterTexture:a})}else s.sprite=t.mask.mask,this._activeMaskStage.push({filterEffect:s,maskedContainer:t.maskedContainer})}else if(t.action==="pushMaskEnd"){let s=this._activeMaskStage[this._activeMaskStage.length-1];i&&(e.type===Mt.WEBGL&&e.renderTarget.finishRenderPass(),e.renderTarget.pop(),e.globalUniforms.pop()),e.filter.push({renderPipeId:"filter",action:"pushFilter",container:s.maskedContainer,filterEffect:s.filterEffect,canBundle:!1})}else if(t.action==="popMaskEnd"){e.filter.pop();let s=this._activeMaskStage.pop();i&&xt.returnTexture(s.filterTexture),K.return(s.filterEffect)}}destroy(){this._renderer=null,this._activeMaskStage=null}};On.extension={type:[b.WebGLPipes,b.WebGPUPipes,b.CanvasPipes],name:"alphaMask"}});var Ln,Dv=p(()=>{D();Ln=class{constructor(t){this._colorStack=[],this._colorStackIndex=0,this._currentColor=0,this._renderer=t}buildStart(){this._colorStack[0]=15,this._colorStackIndex=1,this._currentColor=15}push(t,e,i){this._renderer.renderPipes.batch.break(i);let n=this._colorStack;n[this._colorStackIndex]=n[this._colorStackIndex-1]&t.mask;let o=this._colorStack[this._colorStackIndex];o!==this._currentColor&&(this._currentColor=o,i.add({renderPipeId:"colorMask",colorMask:o,canBundle:!1})),this._colorStackIndex++}pop(t,e,i){this._renderer.renderPipes.batch.break(i);let n=this._colorStack;this._colorStackIndex--;let o=n[this._colorStackIndex-1];o!==this._currentColor&&(this._currentColor=o,i.add({renderPipeId:"colorMask",colorMask:o,canBundle:!1}))}execute(t){this._renderer.colorMask.setMask(t.colorMask)}destroy(){this._colorStack=null}};Ln.extension={type:[b.WebGLPipes,b.WebGPUPipes,b.CanvasPipes],name:"colorMask"}});var Nn,Pv=p(()=>{D();Cu();es();ei();Nn=class{constructor(t){this._maskStackHash={},this._maskHash=new WeakMap,this._renderer=t}push(t,e,i){var s;let n=t,o=this._renderer;o.renderPipes.batch.break(i),o.renderPipes.blendMode.setBlendMode(n.mask,"none",i),i.add({renderPipeId:"stencilMask",action:"pushMaskBegin",mask:t,inverse:e._maskOptions.inverse,canBundle:!1});let a=n.mask;a.includeInBuild=!0,this._maskHash.has(n)||this._maskHash.set(n,{instructionsStart:0,instructionsLength:0});let u=this._maskHash.get(n);u.instructionsStart=i.instructionSize,is(a,i,o),a.includeInBuild=!1,o.renderPipes.batch.break(i),i.add({renderPipeId:"stencilMask",action:"pushMaskEnd",mask:t,inverse:e._maskOptions.inverse,canBundle:!1});let l=i.instructionSize-u.instructionsStart-1;u.instructionsLength=l;let c=o.renderTarget.renderTarget.uid;(s=this._maskStackHash)[c]??(s[c]=0)}pop(t,e,i){let s=t,n=this._renderer;n.renderPipes.batch.break(i),n.renderPipes.blendMode.setBlendMode(s.mask,"none",i),i.add({renderPipeId:"stencilMask",action:"popMaskBegin",inverse:e._maskOptions.inverse,canBundle:!1});let o=this._maskHash.get(t);for(let a=0;a{$t();D();gf=class Bv{constructor(){this.clearBeforeRender=!0,this._backgroundColor=new Z(0),this.color=this._backgroundColor,this.alpha=1}init(t){t={...Bv.defaultOptions,...t},this.clearBeforeRender=t.clearBeforeRender,this.color=t.background||t.backgroundColor||this._backgroundColor,this.alpha=t.backgroundAlpha,this._backgroundColor.setAlpha(t.backgroundAlpha)}get color(){return this._backgroundColor}set color(t){this._backgroundColor.setValue(t)}get alpha(){return this._backgroundColor.alpha}set alpha(t){this._backgroundColor.setAlpha(t)}get colorRgba(){return this._backgroundColor.toArray()}destroy(){}};gf.extension={type:[b.WebGLSystem,b.WebGPUSystem,b.CanvasSystem],name:"background",priority:0};gf.defaultOptions={backgroundAlpha:1,backgroundColor:0,clearBeforeRender:!0};Mv=gf});var Hn,zn,Rv=p(()=>{D();oa();gt();Hn={};H.handle(b.BlendMode,r=>{if(!r.name)throw new Error("BlendMode extension must have a name property");Hn[r.name]=r.ref},r=>{delete Hn[r.name]});zn=class{constructor(t){this._isAdvanced=!1,this._filterHash=Object.create(null),this._renderer=t}setBlendMode(t,e,i){if(this._activeBlendMode===e){this._isAdvanced&&this._renderableList.push(t);return}this._activeBlendMode=e,this._isAdvanced&&this._endAdvancedBlendMode(i),this._isAdvanced=!!Hn[e],this._isAdvanced&&(this._beginAdvancedBlendMode(i),this._renderableList.push(t))}_beginAdvancedBlendMode(t){this._renderer.renderPipes.batch.break(t);let e=this._activeBlendMode;if(!Hn[e]){z(`Unable to assign BlendMode: \'${e}\'. You may want to include: import \'pixi.js/advanced-blend-modes\'`);return}let i=this._filterHash[e];i||(i=this._filterHash[e]=new rr,i.filters=[new Hn[e]]);let s={renderPipeId:"filter",action:"pushFilter",renderables:[],filterEffect:i,canBundle:!1};this._renderableList=s.renderables,t.add(s)}_endAdvancedBlendMode(t){this._renderableList=null,this._renderer.renderPipes.batch.break(t),t.add({renderPipeId:"filter",action:"popFilter",canBundle:!1})}buildStart(){this._isAdvanced=!1}buildEnd(t){this._isAdvanced&&this._endAdvancedBlendMode(t)}destroy(){this._renderer=null,this._renderableList=null;for(let t in this._filterHash)this._filterHash[t].destroy();this._filterHash=null}};zn.extension={type:[b.WebGLPipes,b.WebGPUPipes,b.CanvasPipes],name:"blendMode"}});var xf,_f,Gv,Iv=p(()=>{D();De();dt();xf={png:"image/png",jpg:"image/jpeg",webp:"image/webp"},_f=class kv{constructor(t){this._renderer=t}_normalizeOptions(t,e={}){return t instanceof it||t instanceof I?{target:t,...e}:{...e,...t}}async image(t){let e=new Image;return e.src=await this.base64(t),e}async base64(t){t=this._normalizeOptions(t,kv.defaultImageOptions);let{format:e,quality:i}=t,s=this.canvas(t);if(s.toBlob!==void 0)return new Promise((n,o)=>{s.toBlob(a=>{if(!a){o(new Error("ICanvas.toBlob failed!"));return}let u=new FileReader;u.onload=()=>n(u.result),u.onerror=o,u.readAsDataURL(a)},xf[e],i)});if(s.toDataURL!==void 0)return s.toDataURL(xf[e],i);if(s.convertToBlob!==void 0){let n=await s.convertToBlob({type:xf[e],quality:i});return new Promise((o,a)=>{let u=new FileReader;u.onload=()=>o(u.result),u.onerror=a,u.readAsDataURL(n)})}throw new Error("Extract.base64() requires ICanvas.toDataURL, ICanvas.toBlob, or ICanvas.convertToBlob to be implemented")}canvas(t){t=this._normalizeOptions(t);let e=t.target,i=this._renderer;if(e instanceof I)return i.texture.generateCanvas(e);let s=i.textureGenerator.generateTexture(t),n=i.texture.generateCanvas(s);return s.destroy(!0),n}pixels(t){t=this._normalizeOptions(t);let e=t.target,i=this._renderer,s=e instanceof I?e:i.textureGenerator.generateTexture(t),n=i.texture.getPixels(s);return e instanceof it&&s.destroy(!0),n}texture(t){return t=this._normalizeOptions(t),t.target instanceof I?t.target:this._renderer.textureGenerator.generateTexture(t)}download(t){t=this._normalizeOptions(t);let e=this.canvas(t),i=document.createElement("a");i.download=t.filename??"image.png",i.href=e.toDataURL("image/png"),document.body.appendChild(i),i.click(),document.body.removeChild(i)}log(t){let e=t.width??200;t=this._normalizeOptions(t);let i=this.canvas(t),s=i.toDataURL();console.log(`[Pixi Texture] ${i.width}px ${i.height}px`);let n=["font-size: 1px;",`padding: ${e}px 300px;`,`background: url(${s}) no-repeat;`,"background-size: contain;"].join(" ");console.log("%c ",n)}destroy(){this._renderer=null}};_f.extension={type:[b.WebGLSystem,b.WebGPUSystem],name:"extract"};_f.defaultImageOptions={format:"png",quality:1};Gv=_f});var Du,Uv=p(()=>{ne();dt();Du=class r extends I{static create(t){return new r({source:new ut(t)})}resize(t,e,i){return this.source.resize(t,e,i),this}}});var fD,dD,pD,Wn,Ov=p(()=>{$t();D();ot();Yt();ce();ha();De();Uv();fD=new tt,dD=new ft,pD=[0,0,0,0],Wn=class{constructor(t){this._renderer=t}generateTexture(t){t instanceof it&&(t={target:t,frame:void 0,textureSourceOptions:{},resolution:void 0});let e=t.resolution||this._renderer.resolution,i=t.antialias||this._renderer.view.antialias,s=t.target,n=t.clearColor;n?n=Array.isArray(n)&&n.length===4?n:Z.shared.setValue(n).toArray():n=pD;let o=t.frame?.copyTo(fD)||vi(s,dD).rectangle;o.width=Math.max(o.width,1/e)|0,o.height=Math.max(o.height,1/e)|0;let a=Du.create({...t.textureSourceOptions,width:o.width,height:o.height,resolution:e,antialias:i}),u=G.shared.translate(-o.x,-o.y);return this._renderer.render({container:s,transform:u,target:a,clearColor:n}),a.source.updateMipmaps(),a}destroy(){this._renderer=null}};Wn.extension={type:[b.WebGLSystem,b.WebGPUSystem],name:"textureGenerator"}});var Vn,Lv=p(()=>{D();ot();xe();Hi();wr();Ve();ee();Vn=class{constructor(t){this._stackIndex=0,this._globalUniformDataStack=[],this._uniformsPool=[],this._activeUniforms=[],this._bindGroupPool=[],this._activeBindGroups=[],this._renderer=t}reset(){this._stackIndex=0;for(let t=0;t"},uWorldTransformMatrix:{value:new G,type:"mat3x3"},uWorldColorAlpha:{value:new Float32Array(4),type:"vec4"},uResolution:{value:[0,0],type:"vec2"}},{isStatic:!0})}destroy(){this._renderer=null}};Vn.extension={type:[b.WebGLSystem,b.WebGPUSystem,b.CanvasSystem],name:"globalUniforms"}});var mD,Xn,Nv=p(()=>{D();Ws();mD=1,Xn=class{constructor(){this._tasks=[],this._offset=0}init(){oe.system.add(this._update,this)}repeat(t,e,i=!0){let s=mD++,n=0;return i&&(this._offset+=1e3,n=this._offset),this._tasks.push({func:t,duration:e,start:performance.now(),offset:n,last:performance.now(),repeat:!0,id:s}),s}cancel(t){for(let e=0;e=i.duration){let s=t-i.start;i.func(s),i.last=t}}}destroy(){oe.system.remove(this._update,this),this._tasks.length=0}};Xn.extension={type:[b.WebGLSystem,b.WebGPUSystem,b.CanvasSystem],name:"scheduler",priority:0}});function zv(r){if(!Hv){if(Q.get().getNavigator().userAgent.toLowerCase().indexOf("chrome")>-1){let t=[`%c %c %c %c %c PixiJS %c v${ss} (${r}) http://www.pixijs.com/\n\n`,"background: #E72264; padding:5px 0;","background: #6CA2EA; padding:5px 0;","background: #B5D33D; padding:5px 0;","background: #FED23F; padding:5px 0;","color: #FFFFFF; background: #E72264; padding:5px 0;","color: #E72264; background: #FFFFFF; padding:5px 0;"];globalThis.console.log(...t)}else globalThis.console&&globalThis.console.log(`PixiJS ${ss} - ${r} - http://www.pixijs.com/`);Hv=!0}}var Hv,Wv=p(()=>{Pt();cf();Hv=!1});var ns,Vv=p(()=>{D();Wv();Ve();ns=class{constructor(t){this._renderer=t}init(t){if(t.hello){let e=this._renderer.name;this._renderer.type===Mt.WEBGL&&(e+=` ${this._renderer.context.webGLVersion}`),zv(e)}}};ns.extension={type:[b.WebGLSystem,b.WebGPUSystem,b.CanvasSystem],name:"hello",priority:-2};ns.defaultOptions={hello:!1}});function Xv(r){let t=!1;for(let i in r)if(r[i]==null){t=!0;break}if(!t)return r;let e=Object.create(null);for(let i in r){let s=r[i];s&&(e[i]=s)}return e}function $v(r){let t=0;for(let e=0;e{"use strict"});var gD,yf,Kv,qv=p(()=>{D();jv();gD=0,yf=class Yv{constructor(t){this._managedRenderables=[],this._managedHashes=[],this._managedArrays=[],this._renderer=t}init(t){t={...Yv.defaultOptions,...t},this.maxUnusedTime=t.renderableGCMaxUnusedTime,this._frequency=t.renderableGCFrequency,this.enabled=t.renderableGCActive}get enabled(){return!!this._handler}set enabled(t){this.enabled!==t&&(t?(this._handler=this._renderer.scheduler.repeat(()=>this.run(),this._frequency,!1),this._hashHandler=this._renderer.scheduler.repeat(()=>{for(let e of this._managedHashes)e.context[e.hash]=Xv(e.context[e.hash])},this._frequency),this._arrayHandler=this._renderer.scheduler.repeat(()=>{for(let e of this._managedArrays)$v(e.context[e.hash])},this._frequency)):(this._renderer.scheduler.cancel(this._handler),this._renderer.scheduler.cancel(this._hashHandler),this._renderer.scheduler.cancel(this._arrayHandler)))}addManagedHash(t,e){this._managedHashes.push({context:t,hash:e})}addManagedArray(t,e){this._managedArrays.push({context:t,hash:e})}prerender({container:t}){this._now=performance.now(),t.renderGroup.gcTick=gD++,this._updateInstructionGCTick(t.renderGroup,t.renderGroup.gcTick)}addRenderable(t){this.enabled&&(t._lastUsed===-1&&(this._managedRenderables.push(t),t.once("destroyed",this._removeRenderable,this)),t._lastUsed=this._now)}run(){let t=this._now,e=this._managedRenderables,i=this._renderer.renderPipes,s=0;for(let n=0;nthis.maxUnusedTime){if(!o.destroyed){let l=i;a&&(a.structureDidChange=!0),l[o.renderPipeId].destroyRenderable(o)}o._lastUsed=-1,s++,o.off("destroyed",this._removeRenderable,this)}else e[n-s]=o}e.length-=s}destroy(){this.enabled=!1,this._renderer=null,this._managedRenderables.length=0,this._managedHashes.length=0,this._managedArrays.length=0}_removeRenderable(t){let e=this._managedRenderables.indexOf(t);e>=0&&(t.off("destroyed",this._removeRenderable,this),this._managedRenderables[e]=null)}_updateInstructionGCTick(t,e){t.instructionSet.gcTick=e;for(let i of t.renderGroupChildren)this._updateInstructionGCTick(i,e)}};yf.extension={type:[b.WebGLSystem,b.WebGPUSystem],name:"renderableGC",priority:0};yf.defaultOptions={renderableGCActive:!0,renderableGCMaxUnusedTime:6e4,renderableGCFrequency:3e4};Kv=yf});var bf,Qv,Jv=p(()=>{D();bf=class Zv{constructor(t){this._renderer=t,this.count=0,this.checkCount=0}init(t){t={...Zv.defaultOptions,...t},this.checkCountMax=t.textureGCCheckCountMax,this.maxIdle=t.textureGCAMaxIdle??t.textureGCMaxIdle,this.active=t.textureGCActive}postrender(){this._renderer.renderingToScreen&&(this.count++,this.active&&(this.checkCount++,this.checkCount>this.checkCountMax&&(this.checkCount=0,this.run())))}run(){let t=this._renderer.texture.managedTextures;for(let e=0;e-1&&this.count-i._touched>this.maxIdle&&(i._touched=-1,i.unload())}}destroy(){this._renderer=null}};bf.extension={type:[b.WebGLSystem,b.WebGPUSystem],name:"textureGC"};bf.defaultOptions={textureGCActive:!0,textureGCAMaxIdle:null,textureGCMaxIdle:60*60,textureGCCheckCountMax:600};Qv=bf});var tT,$n,vf=p(()=>{jt();ne();dt();tT=class eT{constructor(t={}){if(this.uid=rt("renderTarget"),this.colorTextures=[],this.dirtyId=0,this.isRoot=!1,this._size=new Float32Array(2),this._managedColorTextures=!1,t={...eT.defaultOptions,...t},this.stencil=t.stencil,this.depth=t.depth,this.isRoot=t.isRoot,typeof t.colorTextures=="number"){this._managedColorTextures=!0;for(let e=0;ei.source)];let e=this.colorTexture.source;this.resize(e.width,e.height,e._resolution)}this.colorTexture.source.on("resize",this.onSourceResize,this),(t.depthStencilTexture||this.stencil)&&(t.depthStencilTexture instanceof I||t.depthStencilTexture instanceof ut?this.depthStencilTexture=t.depthStencilTexture.source:this.ensureDepthStencilTexture())}get size(){let t=this._size;return t[0]=this.pixelWidth,t[1]=this.pixelHeight,t}get width(){return this.colorTexture.source.width}get height(){return this.colorTexture.source.height}get pixelWidth(){return this.colorTexture.source.pixelWidth}get pixelHeight(){return this.colorTexture.source.pixelHeight}get resolution(){return this.colorTexture.source._resolution}get colorTexture(){return this.colorTextures[0]}onSourceResize(t){this.resize(t.width,t.height,t._resolution,!0)}ensureDepthStencilTexture(){this.depthStencilTexture||(this.depthStencilTexture=new ut({width:this.width,height:this.height,resolution:this.resolution,format:"depth24plus-stencil8",autoGenerateMipmaps:!1,antialias:!1,mipLevelCount:1}))}resize(t,e,i=this.resolution,s=!1){this.dirtyId++,this.colorTextures.forEach((n,o)=>{s&&o===0||n.source.resize(t,e,i)}),this.depthStencilTexture&&this.depthStencilTexture.source.resize(t,e,i)}destroy(){this.colorTexture.source.off("resize",this.onSourceResize,this),this._managedColorTextures&&this.colorTextures.forEach(t=>{t.destroy()}),this.depthStencilTexture&&(this.depthStencilTexture.destroy(),delete this.depthStencilTexture)}};tT.defaultOptions={width:0,height:0,resolution:1,colorTextures:1,stencil:!1,depth:!1,antialias:!1,isRoot:!1};$n=tT});function Pu(r,t){if(!jn.has(r)){let e=new I({source:new te({resource:r,...t})}),i=()=>{jn.get(r)===e&&jn.delete(r)};e.once("destroy",i),e.source.once("destroy",i),jn.set(r,e)}return jn.get(r)}var jn,Tf=p(()=>{Ai();dt();jn=new Map});var Sf,iT,sT=p(()=>{Pt();D();Yt();vt();vf();Tf();Sf=class rT{get autoDensity(){return this.texture.source.autoDensity}set autoDensity(t){this.texture.source.autoDensity=t}get resolution(){return this.texture.source._resolution}set resolution(t){this.texture.source.resize(this.texture.source.width,this.texture.source.height,t)}init(t){t={...rT.defaultOptions,...t},t.view&&(X(Y,"ViewSystem.view has been renamed to ViewSystem.canvas"),t.canvas=t.view),this.screen=new tt(0,0,t.width,t.height),this.canvas=t.canvas||Q.get().createCanvas(),this.antialias=!!t.antialias,this.texture=Pu(this.canvas,t),this.renderTarget=new $n({colorTextures:[this.texture],depth:!!t.depth,isRoot:!0}),this.texture.source.transparent=t.backgroundAlpha<1,this.resolution=t.resolution}resize(t,e,i){this.texture.source.resize(t,e,i),this.screen.width=this.texture.frame.width,this.screen.height=this.texture.frame.height}destroy(t=!1){(typeof t=="boolean"?t:!!t?.removeView)&&this.canvas.parentNode&&this.canvas.parentNode.removeChild(this.canvas)}};Sf.extension={type:[b.WebGLSystem,b.WebGPUSystem,b.CanvasSystem],name:"view",priority:0};Sf.defaultOptions={width:800,height:600,autoDensity:!1,antialias:!1};iT=Sf});var Bu,Mu,wf=p(()=>{av();uv();xv();_v();hf();bv();Av();Dv();Pv();Fv();Rv();Iv();Ov();Lv();Nv();Vv();qv();Jv();sT();Bu=[Mv,Vn,ns,iT,kn,Qv,Wn,Gv,Un,Kv,Xn],Mu=[zn,df,Gn,Fn,On,Nn,Ln,Bn]});var Yn,nT=p(()=>{D();Yn=class{constructor(t){this._hash=Object.create(null),this._renderer=t,this._renderer.renderableGC.addManagedHash(this,"_hash")}contextChange(t){this._gpu=t}getBindGroup(t,e,i){return t._updateKey(),this._hash[t._key]||this._createBindGroup(t,e,i)}_createBindGroup(t,e,i){let s=this._gpu.device,n=e.layout[i],o=[],a=this._renderer;for(let c in n){let h=t.resources[c]??t.resources[n[c]],d;if(h._resourceType==="uniformGroup"){let f=h;a.ubo.updateUniformGroup(f);let m=f.buffer;d={buffer:a.buffer.getGPUBuffer(m),offset:0,size:m.descriptor.size}}else if(h._resourceType==="buffer"){let f=h;d={buffer:a.buffer.getGPUBuffer(f),offset:0,size:f.descriptor.size}}else if(h._resourceType==="bufferResource"){let f=h;d={buffer:a.buffer.getGPUBuffer(f.buffer),offset:f.offset,size:f.size}}else if(h._resourceType==="textureSampler"){let f=h;d=a.texture.getGpuSampler(f)}else if(h._resourceType==="textureSource"){let f=h;d=a.texture.getGpuSource(f).createView({})}o.push({binding:n[c],resource:d})}let u=a.shader.getProgramData(e).bindGroups[i],l=s.createBindGroup({layout:u,entries:o});return this._hash[t._key]=l,l}destroy(){for(let t of Object.keys(this._hash))this._hash[t]=null;this._hash=null,this._renderer=null}};Yn.extension={type:[b.WebGPUSystem],name:"bindGroup"}});var Kn,oT=p(()=>{D();Pc();Kn=class{constructor(t){this._gpuBuffers=Object.create(null),this._managedBuffers=[],t.renderableGC.addManagedHash(this,"_gpuBuffers")}contextChange(t){this._gpu=t}getGPUBuffer(t){return this._gpuBuffers[t.uid]||this.createGPUBuffer(t)}updateBuffer(t){let e=this._gpuBuffers[t.uid]||this.createGPUBuffer(t),i=t.data;return t._updateID&&i&&(t._updateID=0,this._gpu.device.queue.writeBuffer(e,0,i.buffer,0,(t._updateSize||i.byteLength)+3&-4)),e}destroyAll(){for(let t in this._gpuBuffers)this._gpuBuffers[t].destroy();this._gpuBuffers={}}createGPUBuffer(t){this._gpuBuffers[t.uid]||(t.on("update",this.updateBuffer,this),t.on("change",this.onBufferChange,this),t.on("destroy",this.onBufferDestroy,this),this._managedBuffers.push(t));let e=this._gpu.device.createBuffer(t.descriptor);return t._updateID=0,t.data&&(Js(t.data.buffer,e.getMappedRange()),e.unmap()),this._gpuBuffers[t.uid]=e,e}onBufferChange(t){this._gpuBuffers[t.uid].destroy(),t._updateID=0,this._gpuBuffers[t.uid]=this.createGPUBuffer(t)}onBufferDestroy(t){this._managedBuffers.splice(this._managedBuffers.indexOf(t),1),this._destroyBuffer(t)}destroy(){this._managedBuffers.forEach(t=>this._destroyBuffer(t)),this._managedBuffers=null,this._gpuBuffers=null}_destroyBuffer(t){this._gpuBuffers[t.uid].destroy(),t.off("update",this.updateBuffer,this),t.off("change",this.onBufferChange,this),t.off("destroy",this.onBufferDestroy,this),this._gpuBuffers[t.uid]=null}};Kn.extension={type:[b.WebGPUSystem],name:"buffer"}});var qn,aT=p(()=>{D();qn=class{constructor(t){this._colorMaskCache=15,this._renderer=t}setMask(t){this._colorMaskCache!==t&&(this._colorMaskCache=t,this._renderer.pipeline.setColorMask(t))}destroy(){this._renderer=null,this._colorMaskCache=null}};qn.extension={type:[b.WebGPUSystem],name:"colorMask"}});var os,uT=p(()=>{Pt();D();os=class{constructor(t){this._renderer=t}async init(t){return this._initPromise?this._initPromise:(this._initPromise=this._createDeviceAndAdaptor(t).then(e=>{this.gpu=e,this._renderer.runners.contextChange.emit(this.gpu)}),this._initPromise)}contextChange(t){this._renderer.gpu=t}async _createDeviceAndAdaptor(t){let e=await Q.get().getNavigator().gpu.requestAdapter({powerPreference:t.powerPreference,forceFallbackAdapter:t.forceFallbackAdapter}),i=["texture-compression-bc","texture-compression-astc","texture-compression-etc2"].filter(n=>e.features.has(n)),s=await e.requestDevice({requiredFeatures:i});return{adapter:e,device:s}}destroy(){this.gpu=null,this._renderer=null}};os.extension={type:[b.WebGPUSystem],name:"device"};os.defaultOptions={powerPreference:void 0,forceFallbackAdapter:!1}});var Zn,lT=p(()=>{D();Zn=class{constructor(t){this._boundBindGroup=Object.create(null),this._boundVertexBuffer=Object.create(null),this._renderer=t}renderStart(){this.commandFinished=new Promise(t=>{this._resolveCommandFinished=t}),this.commandEncoder=this._renderer.gpu.device.createCommandEncoder()}beginRenderPass(t){this.endRenderPass(),this._clearCache(),this.renderPassEncoder=this.commandEncoder.beginRenderPass(t.descriptor)}endRenderPass(){this.renderPassEncoder&&this.renderPassEncoder.end(),this.renderPassEncoder=null}setViewport(t){this.renderPassEncoder.setViewport(t.x,t.y,t.width,t.height,0,1)}setPipelineFromGeometryProgramAndState(t,e,i,s){let n=this._renderer.pipeline.getPipeline(t,e,i,s);this.setPipeline(n)}setPipeline(t){this._boundPipeline!==t&&(this._boundPipeline=t,this.renderPassEncoder.setPipeline(t))}_setVertexBuffer(t,e){this._boundVertexBuffer[t]!==e&&(this._boundVertexBuffer[t]=e,this.renderPassEncoder.setVertexBuffer(t,this._renderer.buffer.updateBuffer(e)))}_setIndexBuffer(t){if(this._boundIndexBuffer===t)return;this._boundIndexBuffer=t;let e=t.data.BYTES_PER_ELEMENT===2?"uint16":"uint32";this.renderPassEncoder.setIndexBuffer(this._renderer.buffer.updateBuffer(t),e)}resetBindGroup(t){this._boundBindGroup[t]=null}setBindGroup(t,e,i){if(this._boundBindGroup[t]===e)return;this._boundBindGroup[t]=e,e._touch(this._renderer.textureGC.count);let s=this._renderer.bindGroup.getBindGroup(e,i,t);this.renderPassEncoder.setBindGroup(t,s)}setGeometry(t,e){let i=this._renderer.pipeline.getBufferNamesToBind(t,e);for(let s in i)this._setVertexBuffer(s,t.attributes[i[s]].buffer);t.indexBuffer&&this._setIndexBuffer(t.indexBuffer)}_setShaderBindGroups(t,e){for(let i in t.groups){let s=t.groups[i];e||this._syncBindGroup(s),this.setBindGroup(i,s,t.gpuProgram)}}_syncBindGroup(t){for(let e in t.resources){let i=t.resources[e];i.isUniformGroup&&this._renderer.ubo.updateUniformGroup(i)}}draw(t){let{geometry:e,shader:i,state:s,topology:n,size:o,start:a,instanceCount:u,skipSync:l}=t;this.setPipelineFromGeometryProgramAndState(e,i.gpuProgram,s,n),this.setGeometry(e,i.gpuProgram),this._setShaderBindGroups(i,l),e.indexBuffer?this.renderPassEncoder.drawIndexed(o||e.indexBuffer.data.length,u??e.instanceCount,a||0):this.renderPassEncoder.draw(o||e.getSize(),u??e.instanceCount,a||0)}finishRenderPass(){this.renderPassEncoder&&(this.renderPassEncoder.end(),this.renderPassEncoder=null)}postrender(){this.finishRenderPass(),this._gpu.device.queue.submit([this.commandEncoder.finish()]),this._resolveCommandFinished(),this.commandEncoder=null}restoreRenderPass(){let t=this._renderer.renderTarget.adaptor.getDescriptor(this._renderer.renderTarget.renderTarget,!1,[0,0,0,1]);this.renderPassEncoder=this.commandEncoder.beginRenderPass(t);let e=this._boundPipeline,i={...this._boundVertexBuffer},s=this._boundIndexBuffer,n={...this._boundBindGroup};this._clearCache();let o=this._renderer.renderTarget.viewport;this.renderPassEncoder.setViewport(o.x,o.y,o.width,o.height,0,1),this.setPipeline(e);for(let a in i)this._setVertexBuffer(a,i[a]);for(let a in n)this.setBindGroup(a,n[a],null);this._setIndexBuffer(s)}_clearCache(){for(let t=0;t<16;t++)this._boundBindGroup[t]=null,this._boundVertexBuffer[t]=null;this._boundIndexBuffer=null,this._boundPipeline=null}destroy(){this._renderer=null,this._gpu=null,this._boundBindGroup=null,this._boundVertexBuffer=null,this._boundIndexBuffer=null,this._boundPipeline=null}contextChange(t){this._gpu=t}};Zn.extension={type:[b.WebGPUSystem],name:"encoder",priority:1}});var Qn,cT=p(()=>{D();ei();Qn=class{constructor(t){this._renderTargetStencilState=Object.create(null),this._renderer=t,t.renderTarget.onRenderTargetChange.add(this)}onRenderTargetChange(t){let e=this._renderTargetStencilState[t.uid];e||(e=this._renderTargetStencilState[t.uid]={stencilMode:pt.DISABLED,stencilReference:0}),this._activeRenderTarget=t,this.setStencilMode(e.stencilMode,e.stencilReference)}setStencilMode(t,e){let i=this._renderTargetStencilState[this._activeRenderTarget.uid];i.stencilMode=t,i.stencilReference=e;let s=this._renderer;s.pipeline.setStencilMode(t),s.encoder.renderPassEncoder.setStencilReference(e)}destroy(){this._renderer.renderTarget.onRenderTargetChange.remove(this),this._renderer=null,this._activeRenderTarget=null,this._renderTargetStencilState=null}};Qn.extension={type:[b.WebGPUSystem],name:"stencil"}});var as,Ef=p(()=>{sf();Er();ur();as=class{constructor(t){this._syncFunctionHash=Object.create(null),this._adaptor=t,this._systemCheck()}_systemCheck(){if(!Tu())throw new Error("Current environment does not allow unsafe-eval, please use pixi.js/unsafe-eval module to enable support.")}ensureUniformGroup(t){let e=this.getUniformGroupData(t);t.buffer||(t.buffer=new Tt({data:new Float32Array(e.layout.size/4),usage:J.UNIFORM|J.COPY_DST}))}getUniformGroupData(t){return this._syncFunctionHash[t._signature]||this._initUniformGroup(t)}_initUniformGroup(t){let e=t._signature,i=this._syncFunctionHash[e];if(!i){let s=Object.keys(t.uniformStructures).map(a=>t.uniformStructures[a]),n=this._adaptor.createUboElements(s),o=this._generateUboSync(n.uboElements);i=this._syncFunctionHash[e]={layout:n,syncFunction:o}}return this._syncFunctionHash[e]}_generateUboSync(t){return this._adaptor.generateUboSync(t)}syncUniformGroup(t,e,i){let s=this.getUniformGroupData(t);t.buffer||(t.buffer=new Tt({data:new Float32Array(s.layout.size/4),usage:J.UNIFORM|J.COPY_DST}));let n=null;return e||(e=t.buffer.data,n=t.buffer.dataInt32),i||(i=0),s.syncFunction(t.uniforms,e,n,i),!0}updateUniformGroup(t){if(t.isStatic&&!t._dirtyId)return!1;t._dirtyId=0;let e=this.syncUniformGroup(t);return t.buffer.update(),e}destroy(){this._syncFunctionHash=null}}});function hT(r){let t=r.map(i=>({data:i,offset:0,size:0})),e=0;for(let i=0;i1&&(n=Math.max(n,o)*s.data.size),e=Math.ceil(e/o)*o,s.size=n,s.offset=e,e+=n}return e=Math.ceil(e/16)*16,{uboElements:t,size:e}}var Jn,Cf=p(()=>{"use strict";Jn={i32:{align:4,size:4},u32:{align:4,size:4},f32:{align:4,size:4},f16:{align:2,size:2},"vec2":{align:8,size:8},"vec2":{align:8,size:8},"vec2":{align:8,size:8},"vec2":{align:4,size:4},"vec3":{align:16,size:12},"vec3":{align:16,size:12},"vec3":{align:16,size:12},"vec3":{align:8,size:6},"vec4":{align:16,size:16},"vec4":{align:16,size:16},"vec4":{align:16,size:16},"vec4":{align:8,size:8},"mat2x2":{align:8,size:16},"mat2x2":{align:4,size:8},"mat3x2":{align:8,size:24},"mat3x2":{align:4,size:12},"mat4x2":{align:8,size:32},"mat4x2":{align:4,size:16},"mat2x3":{align:16,size:32},"mat2x3":{align:8,size:16},"mat3x3":{align:16,size:48},"mat3x3":{align:8,size:24},"mat4x3":{align:16,size:64},"mat4x3":{align:8,size:32},"mat2x4":{align:16,size:32},"mat2x4":{align:8,size:16},"mat3x4":{align:16,size:48},"mat3x4":{align:8,size:24},"mat4x4":{align:16,size:64},"mat4x4":{align:8,size:32}}});var fr,Af=p(()=>{"use strict";fr=[{type:"mat3x3",test:r=>r.value.a!==void 0,ubo:`\n var matrix = uv[name].toArray(true);\n data[offset] = matrix[0];\n data[offset + 1] = matrix[1];\n data[offset + 2] = matrix[2];\n data[offset + 4] = matrix[3];\n data[offset + 5] = matrix[4];\n data[offset + 6] = matrix[5];\n data[offset + 8] = matrix[6];\n data[offset + 9] = matrix[7];\n data[offset + 10] = matrix[8];\n `,uniform:`\n gl.uniformMatrix3fv(ud[name].location, false, uv[name].toArray(true));\n `},{type:"vec4",test:r=>r.type==="vec4"&&r.size===1&&r.value.width!==void 0,ubo:`\n v = uv[name];\n data[offset] = v.x;\n data[offset + 1] = v.y;\n data[offset + 2] = v.width;\n data[offset + 3] = v.height;\n `,uniform:`\n cv = ud[name].value;\n v = uv[name];\n if (cv[0] !== v.x || cv[1] !== v.y || cv[2] !== v.width || cv[3] !== v.height) {\n cv[0] = v.x;\n cv[1] = v.y;\n cv[2] = v.width;\n cv[3] = v.height;\n gl.uniform4f(ud[name].location, v.x, v.y, v.width, v.height);\n }\n `},{type:"vec2",test:r=>r.type==="vec2"&&r.size===1&&r.value.x!==void 0,ubo:`\n v = uv[name];\n data[offset] = v.x;\n data[offset + 1] = v.y;\n `,uniform:`\n cv = ud[name].value;\n v = uv[name];\n if (cv[0] !== v.x || cv[1] !== v.y) {\n cv[0] = v.x;\n cv[1] = v.y;\n gl.uniform2f(ud[name].location, v.x, v.y);\n }\n `},{type:"vec4",test:r=>r.type==="vec4"&&r.size===1&&r.value.red!==void 0,ubo:`\n v = uv[name];\n data[offset] = v.red;\n data[offset + 1] = v.green;\n data[offset + 2] = v.blue;\n data[offset + 3] = v.alpha;\n `,uniform:`\n cv = ud[name].value;\n v = uv[name];\n if (cv[0] !== v.red || cv[1] !== v.green || cv[2] !== v.blue || cv[3] !== v.alpha) {\n cv[0] = v.red;\n cv[1] = v.green;\n cv[2] = v.blue;\n cv[3] = v.alpha;\n gl.uniform4f(ud[name].location, v.red, v.green, v.blue, v.alpha);\n }\n `},{type:"vec3",test:r=>r.type==="vec3"&&r.size===1&&r.value.red!==void 0,ubo:`\n v = uv[name];\n data[offset] = v.red;\n data[offset + 1] = v.green;\n data[offset + 2] = v.blue;\n `,uniform:`\n cv = ud[name].value;\n v = uv[name];\n if (cv[0] !== v.red || cv[1] !== v.green || cv[2] !== v.blue) {\n cv[0] = v.red;\n cv[1] = v.green;\n cv[2] = v.blue;\n gl.uniform3f(ud[name].location, v.red, v.green, v.blue);\n }\n `}]});function Fu(r,t,e,i){let s=[`\n var v = null;\n var v2 = null;\n var t = 0;\n var index = 0;\n var name = null;\n var arrayOffset = null;\n `],n=0;for(let a=0;a1)h=u.offset/4,s.push(e(u,h-n));else{let d=i[u.data.type];h=u.offset/4,s.push(`\n v = uv.${l};\n offset += ${h-n};\n ${d};\n `)}n=h}let o=s.join(`\n`);return new Function("uv","data","dataInt32","offset",o)}var Df=p(()=>{Af()});function us(r,t){return`\n for (let i = 0; i < ${r*t}; i++) {\n data[offset + (((i / ${r})|0) * 4) + (i % ${r})] = v[i];\n }\n `}var Pf,fT,Bf=p(()=>{"use strict";Pf={f32:`\n data[offset] = v;`,i32:`\n dataInt32[offset] = v;`,"vec2":`\n data[offset] = v[0];\n data[offset + 1] = v[1];`,"vec3":`\n data[offset] = v[0];\n data[offset + 1] = v[1];\n data[offset + 2] = v[2];`,"vec4":`\n data[offset] = v[0];\n data[offset + 1] = v[1];\n data[offset + 2] = v[2];\n data[offset + 3] = v[3];`,"vec2":`\n dataInt32[offset] = v[0];\n dataInt32[offset + 1] = v[1];`,"vec3":`\n dataInt32[offset] = v[0];\n dataInt32[offset + 1] = v[1];\n dataInt32[offset + 2] = v[2];`,"vec4":`\n dataInt32[offset] = v[0];\n dataInt32[offset + 1] = v[1];\n dataInt32[offset + 2] = v[2];\n dataInt32[offset + 3] = v[3];`,"mat2x2":`\n data[offset] = v[0];\n data[offset + 1] = v[1];\n data[offset + 4] = v[2];\n data[offset + 5] = v[3];`,"mat3x3":`\n data[offset] = v[0];\n data[offset + 1] = v[1];\n data[offset + 2] = v[2];\n data[offset + 4] = v[3];\n data[offset + 5] = v[4];\n data[offset + 6] = v[5];\n data[offset + 8] = v[6];\n data[offset + 9] = v[7];\n data[offset + 10] = v[8];`,"mat4x4":`\n for (let i = 0; i < 16; i++) {\n data[offset + i] = v[i];\n }`,"mat3x2":us(3,2),"mat4x2":us(4,2),"mat2x3":us(2,3),"mat4x3":us(4,3),"mat2x4":us(2,4),"mat3x4":us(3,4)},fT={...Pf,"mat2x2":`\n data[offset] = v[0];\n data[offset + 1] = v[1];\n data[offset + 2] = v[2];\n data[offset + 3] = v[3];\n `}});function dT(r,t){let{size:e,align:i}=Jn[r.data.type],s=(i-e)/4,n=r.data.type.indexOf("i32")>=0?"dataInt32":"data";return`\n v = uv.${r.data.name};\n ${t!==0?`offset += ${t};`:""}\n\n arrayOffset = offset;\n\n t = 0;\n\n for(var i=0; i < ${r.data.size*(e/4)}; i++)\n {\n for(var j = 0; j < ${e/4}; j++)\n {\n ${n}[arrayOffset++] = v[t++];\n }\n ${s!==0?`arrayOffset += ${s};`:""}\n }\n `}var pT=p(()=>{Cf()});function mT(r){return Fu(r,"uboWgsl",dT,fT)}var gT=p(()=>{Df();Bf();pT()});var to,xT=p(()=>{D();Ef();Cf();gT();to=class extends as{constructor(){super({createUboElements:hT,generateUboSync:mT})}};to.extension={type:[b.WebGPUSystem],name:"ubo"}});var kr,Ru=p(()=>{Xt();jt();kr=class extends ht{constructor({buffer:t,offset:e,size:i}){super(),this.uid=rt("buffer"),this._resourceType="bufferResource",this._touched=0,this._resourceId=rt("resource"),this._bufferResource=!0,this.destroyed=!1,this.buffer=t,this.offset=e|0,this.size=i,this.buffer.on("change",this.onBufferChange,this)}onBufferChange(){this._resourceId=rt("resource"),this.emit("change",this)}destroy(t=!1){this.destroyed=!0,t&&this.buffer.destroy(),this.emit("change",this),this.buffer=null}}});var ku,_T=p(()=>{"use strict";ku=class{constructor({minUniformOffsetAlignment:t}){this._minUniformOffsetAlignment=256,this.byteIndex=0,this._minUniformOffsetAlignment=t,this.data=new Float32Array(65535)}clear(){this.byteIndex=0}addEmptyGroup(t){if(t>this._minUniformOffsetAlignment/4)throw new Error(`UniformBufferBatch: array is too large: ${t*4}`);let e=this.byteIndex,i=e+t*4;if(i=Math.ceil(i/this._minUniformOffsetAlignment)*this._minUniformOffsetAlignment,i>this.data.length*4)throw new Error("UniformBufferBatch: ubo batch got too big");return this.byteIndex=i,e}addGroup(t){let e=this.addEmptyGroup(t.length);for(let i=0;i{D();Er();Ru();ur();_T();wr();Gr=128,eo=class{constructor(t){this._bindGroupHash=Object.create(null),this._buffers=[],this._bindGroups=[],this._bufferResources=[],this._renderer=t,this._renderer.renderableGC.addManagedHash(this,"_bindGroupHash"),this._batchBuffer=new ku({minUniformOffsetAlignment:Gr});let e=256/Gr;for(let i=0;i{gt();ii()});var Ye,Ff=p(()=>{ei();Ye=[];Ye[pt.NONE]=void 0;Ye[pt.DISABLED]={stencilWriteMask:0,stencilReadMask:0};Ye[pt.RENDERING_MASK_ADD]={stencilFront:{compare:"equal",passOp:"increment-clamp"},stencilBack:{compare:"equal",passOp:"increment-clamp"}};Ye[pt.RENDERING_MASK_REMOVE]={stencilFront:{compare:"equal",passOp:"decrement-clamp"},stencilBack:{compare:"equal",passOp:"decrement-clamp"}};Ye[pt.MASK_ACTIVE]={stencilWriteMask:0,stencilFront:{compare:"equal",passOp:"keep"},stencilBack:{compare:"equal",passOp:"keep"}};Ye[pt.INVERSE_MASK_ACTIVE]={stencilWriteMask:0,stencilFront:{compare:"not-equal",passOp:"replace"},stencilBack:{compare:"not-equal",passOp:"replace"}}});function yD(r,t,e,i,s){return r<<24|t<<16|e<<10|i<<5|s}function bD(r,t,e,i){return e<<6|r<<3|i<<1|t}var _D,ro,bT=p(()=>{D();gt();Mf();ei();rn();Ff();_D={"point-list":0,"line-list":1,"line-strip":2,"triangle-list":3,"triangle-strip":4};ro=class{constructor(t){this._moduleCache=Object.create(null),this._bufferLayoutsCache=Object.create(null),this._bindingNamesCache=Object.create(null),this._pipeCache=Object.create(null),this._pipeStateCaches=Object.create(null),this._colorMask=15,this._multisampleCount=1,this._renderer=t}contextChange(t){this._gpu=t,this.setStencilMode(pt.DISABLED),this._updatePipeHash()}setMultisampleCount(t){this._multisampleCount!==t&&(this._multisampleCount=t,this._updatePipeHash())}setRenderTarget(t){this._multisampleCount=t.msaaSamples,this._depthStencilAttachment=t.descriptor.depthStencilAttachment?1:0,this._updatePipeHash()}setColorMask(t){this._colorMask!==t&&(this._colorMask=t,this._updatePipeHash())}setStencilMode(t){this._stencilMode!==t&&(this._stencilMode=t,this._stencilState=Ye[t],this._updatePipeHash())}setPipeline(t,e,i,s){let n=this.getPipeline(t,e,i);s.setPipeline(n)}getPipeline(t,e,i,s){t._layoutKey||(Gu(t,e.attributeData),this._generateBufferKey(t)),s||(s=t.topology);let n=yD(t._layoutKey,e._layoutKey,i.data,i._blendModeId,_D[s]);return this._pipeCache[n]?this._pipeCache[n]:(this._pipeCache[n]=this._createPipeline(t,e,i,s),this._pipeCache[n])}_createPipeline(t,e,i,s){let n=this._gpu.device,o=this._createVertexBufferLayouts(t,e),a=this._renderer.state.getColorTargets(i);a[0].writeMask=this._stencilMode===pt.RENDERING_MASK_ADD?0:this._colorMask;let u=this._renderer.shader.getProgramData(e).pipeline,l={vertex:{module:this._getModule(e.vertex.source),entryPoint:e.vertex.entryPoint,buffers:o},fragment:{module:this._getModule(e.fragment.source),entryPoint:e.fragment.entryPoint,targets:a},primitive:{topology:s,cullMode:i.cullMode},layout:u,multisample:{count:this._multisampleCount},label:"PIXI Pipeline"};return this._depthStencilAttachment&&(l.depthStencil={...this._stencilState,format:"depth24plus-stencil8",depthWriteEnabled:i.depthTest,depthCompare:i.depthTest?"less":"always"}),n.createRenderPipeline(l)}_getModule(t){return this._moduleCache[t]||this._createModule(t)}_createModule(t){let e=this._gpu.device;return this._moduleCache[t]=e.createShaderModule({code:t}),this._moduleCache[t]}_generateBufferKey(t){let e=[],i=0,s=Object.keys(t.attributes).sort();for(let o=0;o{let o={arrayStride:0,stepMode:"vertex",attributes:[]},a=o.attributes;for(let u in e.attributeData){let l=t.attributes[u];(l.divisor??1)!==1&&z(`Attribute ${u} has an invalid divisor value of \'${l.divisor}\'. WebGPU only supports a divisor value of 1`),l.buffer===n&&(o.arrayStride=l.stride,o.stepMode=l.instance?"instance":"vertex",a.push({shaderLocation:e.attributeData[u].location,offset:l.offset,format:l.format}))}a.length&&s.push(o)}),this._bufferLayoutsCache[i]=s,s}_updatePipeHash(){let t=bD(this._stencilMode,this._multisampleCount,this._colorMask,this._depthStencilAttachment);this._pipeStateCaches[t]||(this._pipeStateCaches[t]=Object.create(null)),this._pipeCache=this._pipeStateCaches[t]}destroy(){this._renderer=null,this._bufferLayoutsCache=null}};ro.extension={type:[b.WebGPUSystem],name:"pipeline"}});function vT(r,t,e,i,s,n){let o=n?1:-1;return r.identity(),r.a=1/i*2,r.d=o*(1/s*2),r.tx=-1-t*r.a,r.ty=-o-e*r.d,r}var TT=p(()=>{"use strict"});function ST(r){let t=r.colorTexture.source.resource;return globalThis.HTMLCanvasElement&&t instanceof HTMLCanvasElement&&document.body.contains(t)}var wT=p(()=>{"use strict"});var ls,Rf=p(()=>{ot();Yt();es();TT();nf();Ai();ne();dt();Tf();wT();vf();ls=class{constructor(t){this.rootViewPort=new tt,this.viewport=new tt,this.onRenderTargetChange=new rs("onRenderTargetChange"),this.projectionMatrix=new G,this.defaultClearColor=[0,0,0,0],this._renderSurfaceToRenderTargetHash=new Map,this._gpuRenderTargetHash=Object.create(null),this._renderTargetStack=[],this._renderer=t,t.renderableGC.addManagedHash(this,"_gpuRenderTargetHash")}finishRenderPass(){this.adaptor.finishRenderPass(this.renderTarget)}renderStart({target:t,clear:e,clearColor:i,frame:s}){this._renderTargetStack.length=0,this.push(t,e,i,s),this.rootViewPort.copyFrom(this.viewport),this.rootRenderTarget=this.renderTarget,this.renderingToScreen=ST(this.rootRenderTarget),this.adaptor.prerender?.(this.rootRenderTarget)}postrender(){this.adaptor.postrender?.(this.rootRenderTarget)}bind(t,e=!0,i,s){let n=this.getRenderTarget(t),o=this.renderTarget!==n;this.renderTarget=n,this.renderSurface=t;let a=this.getGpuRenderTarget(n);(n.pixelWidth!==a.width||n.pixelHeight!==a.height)&&(this.adaptor.resizeGpuRenderTarget(n),a.width=n.pixelWidth,a.height=n.pixelHeight);let u=n.colorTexture,l=this.viewport,c=u.pixelWidth,h=u.pixelHeight;if(!s&&t instanceof I&&(s=t.frame),s){let d=u._resolution;l.x=s.x*d+.5|0,l.y=s.y*d+.5|0,l.width=s.width*d+.5|0,l.height=s.height*d+.5|0}else l.x=0,l.y=0,l.width=c,l.height=h;return vT(this.projectionMatrix,0,0,l.width/u.resolution,l.height/u.resolution,!n.isRoot),this.adaptor.startRenderPass(n,e,i,l),o&&this.onRenderTargetChange.emit(n),n}clear(t,e=Ot.ALL,i){e&&(t&&(t=this.getRenderTarget(t)),this.adaptor.clear(t||this.renderTarget,e,i,this.viewport))}contextChange(){this._gpuRenderTargetHash=Object.create(null)}push(t,e=Ot.ALL,i,s){let n=this.bind(t,e,i,s);return this._renderTargetStack.push({renderTarget:n,frame:s}),n}pop(){this._renderTargetStack.pop();let t=this._renderTargetStack[this._renderTargetStack.length-1];this.bind(t.renderTarget,!1,null,t.frame)}getRenderTarget(t){return t.isTexture&&(t=t.source),this._renderSurfaceToRenderTargetHash.get(t)??this._initRenderTarget(t)}copyToTexture(t,e,i,s,n){i.x<0&&(s.width+=i.x,n.x-=i.x,i.x=0),i.y<0&&(s.height+=i.y,n.y-=i.y,i.y=0);let{pixelWidth:o,pixelHeight:a}=t;return s.width=Math.min(s.width,o-i.x),s.height=Math.min(s.height,a-i.y),this.adaptor.copyToTexture(t,e,i,s,n)}ensureDepthStencil(){this.renderTarget.stencil||(this.renderTarget.stencil=!0,this.adaptor.startRenderPass(this.renderTarget,!1,null,this.viewport))}destroy(){this._renderer=null,this._renderSurfaceToRenderTargetHash.forEach((t,e)=>{t!==e&&t.destroy()}),this._renderSurfaceToRenderTargetHash.clear(),this._gpuRenderTargetHash=Object.create(null)}_initRenderTarget(t){let e=null;return te.test(t)&&(t=Pu(t).source),t instanceof $n?e=t:t instanceof ut&&(e=new $n({colorTextures:[t]}),te.test(t.source.resource)&&(e.isRoot=!0),t.once("destroy",()=>{e.destroy(),this._renderSurfaceToRenderTargetHash.delete(t);let i=this._gpuRenderTargetHash[e.uid];i&&(this._gpuRenderTargetHash[e.uid]=null,this.adaptor.destroyGpuRenderTarget(i))})),this._renderSurfaceToRenderTargetHash.set(t,e),e}getGpuRenderTarget(t){return this._gpuRenderTargetHash[t.uid]||(this._gpuRenderTargetHash[t.uid]=this.adaptor.initGpuRenderTarget(t))}}});var Iu,ET=p(()=>{"use strict";Iu=class{constructor(){this.contexts=[],this.msaaTextures=[],this.msaaSamples=1}}});var Uu,CT=p(()=>{es();Ai();ne();ET();Uu=class{init(t,e){this._renderer=t,this._renderTargetSystem=e}copyToTexture(t,e,i,s,n){let o=this._renderer,a=this._getGpuColorTexture(t),u=o.texture.getGpuSource(e.source);return o.encoder.commandEncoder.copyTextureToTexture({texture:a,origin:i},{texture:u,origin:n},s),e}startRenderPass(t,e=!0,i,s){let o=this._renderTargetSystem.getGpuRenderTarget(t),a=this.getDescriptor(t,e,i);o.descriptor=a,this._renderer.pipeline.setRenderTarget(o),this._renderer.encoder.beginRenderPass(o),this._renderer.encoder.setViewport(s)}finishRenderPass(){this._renderer.encoder.endRenderPass()}_getGpuColorTexture(t){let e=this._renderTargetSystem.getGpuRenderTarget(t);return e.contexts[0]?e.contexts[0].getCurrentTexture():this._renderer.texture.getGpuSource(t.colorTextures[0].source)}getDescriptor(t,e,i){typeof e=="boolean"&&(e=e?Ot.ALL:Ot.NONE);let s=this._renderTargetSystem,n=s.getGpuRenderTarget(t),o=t.colorTextures.map((l,c)=>{let h=n.contexts[c],d,f;h?d=h.getCurrentTexture().createView():d=this._renderer.texture.getGpuSource(l).createView({mipLevelCount:1}),n.msaaTextures[c]&&(f=d,d=this._renderer.texture.getTextureView(n.msaaTextures[c]));let m=e&Ot.COLOR?"clear":"load";return i??(i=s.defaultClearColor),{view:d,resolveTarget:f,clearValue:i,storeOp:"store",loadOp:m}}),a;if((t.stencil||t.depth)&&!t.depthStencilTexture&&(t.ensureDepthStencilTexture(),t.depthStencilTexture.source.sampleCount=n.msaa?4:1),t.depthStencilTexture){let l=e&Ot.STENCIL?"clear":"load",c=e&Ot.DEPTH?"clear":"load";a={view:this._renderer.texture.getGpuSource(t.depthStencilTexture.source).createView(),stencilStoreOp:"store",stencilLoadOp:l,depthClearValue:1,depthLoadOp:c,depthStoreOp:"store"}}return{colorAttachments:o,depthStencilAttachment:a}}clear(t,e=!0,i,s){if(!e)return;let{gpu:n,encoder:o}=this._renderer,a=n.device;if(o.commandEncoder===null){let l=a.createCommandEncoder(),c=this.getDescriptor(t,e,i),h=l.beginRenderPass(c);h.setViewport(s.x,s.y,s.width,s.height,0,1),h.end();let d=l.finish();a.queue.submit([d])}else this.startRenderPass(t,e,i,s)}initGpuRenderTarget(t){t.isRoot=!0;let e=new Iu;return t.colorTextures.forEach((i,s)=>{if(te.test(i.resource)){let n=i.resource.getContext("webgpu"),o=i.transparent?"premultiplied":"opaque";try{n.configure({device:this._renderer.gpu.device,usage:GPUTextureUsage.TEXTURE_BINDING|GPUTextureUsage.COPY_DST|GPUTextureUsage.RENDER_ATTACHMENT|GPUTextureUsage.COPY_SRC,format:"bgra8unorm",alphaMode:o})}catch(a){console.error(a)}e.contexts[s]=n}if(e.msaa=i.source.antialias,i.source.antialias){let n=new ut({width:0,height:0,sampleCount:4});e.msaaTextures[s]=n}}),e.msaa&&(e.msaaSamples=4,t.depthStencilTexture&&(t.depthStencilTexture.source.sampleCount=4)),e}destroyGpuRenderTarget(t){t.contexts.forEach(e=>{e.unconfigure()}),t.msaaTextures.forEach(e=>{e.destroy()}),t.msaaTextures.length=0,t.contexts.length=0}ensureDepthStencilTexture(t){let e=this._renderTargetSystem.getGpuRenderTarget(t);t.depthStencilTexture&&e.msaa&&(t.depthStencilTexture.source.sampleCount=4)}resizeGpuRenderTarget(t){let e=this._renderTargetSystem.getGpuRenderTarget(t);e.width=t.width,e.height=t.height,e.msaa&&t.colorTextures.forEach((i,s)=>{e.msaaTextures[s]?.resize(i.source.width,i.source.height,i.source._resolution)})}}});var io,AT=p(()=>{D();Rf();CT();io=class extends ls{constructor(t){super(t),this.adaptor=new Uu,this.adaptor.init(t,this)}};io.extension={type:[b.WebGPUSystem],name:"renderTarget"}});var so,DT=p(()=>{D();so=class{constructor(){this._gpuProgramData=Object.create(null)}contextChange(t){this._gpu=t,this.maxTextures=t.device.limits.maxSampledTexturesPerShaderStage}getProgramData(t){return this._gpuProgramData[t._layoutKey]||this._createGPUProgramData(t)}_createGPUProgramData(t){let e=this._gpu.device,i=t.gpuLayout.map(n=>e.createBindGroupLayout({entries:n})),s={bindGroupLayouts:i};return this._gpuProgramData[t._layoutKey]={bindGroups:i,pipeline:e.createPipelineLayout(s)},this._gpuProgramData[t._layoutKey]}destroy(){this._gpu=null,this._gpuProgramData=null}};so.extension={type:[b.WebGPUSystem],name:"shader"}});var re,PT=p(()=>{"use strict";re={};re.normal={alpha:{srcFactor:"one",dstFactor:"one-minus-src-alpha",operation:"add"},color:{srcFactor:"one",dstFactor:"one-minus-src-alpha",operation:"add"}};re.add={alpha:{srcFactor:"src-alpha",dstFactor:"one-minus-src-alpha",operation:"add"},color:{srcFactor:"one",dstFactor:"one",operation:"add"}};re.multiply={alpha:{srcFactor:"one",dstFactor:"one-minus-src-alpha",operation:"add"},color:{srcFactor:"dst",dstFactor:"one-minus-src-alpha",operation:"add"}};re.screen={alpha:{srcFactor:"one",dstFactor:"one-minus-src-alpha",operation:"add"},color:{srcFactor:"one",dstFactor:"one-minus-src",operation:"add"}};re.overlay={alpha:{srcFactor:"one",dstFactor:"one-minus-src-alpha",operation:"add"},color:{srcFactor:"one",dstFactor:"one-minus-src",operation:"add"}};re.none={alpha:{srcFactor:"one",dstFactor:"one-minus-src-alpha",operation:"add"},color:{srcFactor:"zero",dstFactor:"zero",operation:"add"}};re["normal-npm"]={alpha:{srcFactor:"one",dstFactor:"one-minus-src-alpha",operation:"add"},color:{srcFactor:"src-alpha",dstFactor:"one-minus-src-alpha",operation:"add"}};re["add-npm"]={alpha:{srcFactor:"one",dstFactor:"one",operation:"add"},color:{srcFactor:"src-alpha",dstFactor:"one",operation:"add"}};re["screen-npm"]={alpha:{srcFactor:"one",dstFactor:"one-minus-src-alpha",operation:"add"},color:{srcFactor:"src-alpha",dstFactor:"one-minus-src",operation:"add"}};re.erase={alpha:{srcFactor:"zero",dstFactor:"one-minus-src-alpha",operation:"add"},color:{srcFactor:"zero",dstFactor:"one-minus-src",operation:"add"}};re.min={alpha:{srcFactor:"one",dstFactor:"one",operation:"min"},color:{srcFactor:"one",dstFactor:"one",operation:"min"}};re.max={alpha:{srcFactor:"one",dstFactor:"one",operation:"max"},color:{srcFactor:"one",dstFactor:"one",operation:"max"}}});var no,BT=p(()=>{D();Me();PT();no=class{constructor(){this.defaultState=new Ct,this.defaultState.blend=!0}contextChange(t){this.gpu=t}getColorTargets(t){return[{format:"bgra8unorm",writeMask:0,blend:re[t.blendMode]||re.normal}]}destroy(){this.gpu=null}};no.extension={type:[b.WebGPUSystem],name:"state"}});var MT,FT=p(()=>{"use strict";MT={type:"image",upload(r,t,e){let i=r.resource,s=(r.pixelWidth|0)*(r.pixelHeight|0),n=i.byteLength/s;e.device.queue.writeTexture({texture:t},i,{offset:0,rowsPerImage:r.pixelHeight,bytesPerRow:r.pixelHeight*n},{width:r.pixelWidth,height:r.pixelHeight,depthOrArrayLayers:1})}}});var kf,vD,RT,kT=p(()=>{"use strict";kf={"bc1-rgba-unorm":{blockBytes:8,blockWidth:4,blockHeight:4},"bc2-rgba-unorm":{blockBytes:16,blockWidth:4,blockHeight:4},"bc3-rgba-unorm":{blockBytes:16,blockWidth:4,blockHeight:4},"bc7-rgba-unorm":{blockBytes:16,blockWidth:4,blockHeight:4},"etc1-rgb-unorm":{blockBytes:8,blockWidth:4,blockHeight:4},"etc2-rgba8unorm":{blockBytes:16,blockWidth:4,blockHeight:4},"astc-4x4-unorm":{blockBytes:16,blockWidth:4,blockHeight:4}},vD={blockBytes:4,blockWidth:1,blockHeight:1},RT={type:"compressed",upload(r,t,e){let i=r.pixelWidth,s=r.pixelHeight,n=kf[r.format]||vD;for(let o=0;o>1,1),s=Math.max(s>>1,1)}}}});var Ou,Gf=p(()=>{"use strict";Ou={type:"image",upload(r,t,e){let i=r.resource;if(!i)return;let s=Math.min(t.width,r.resourceWidth||r.pixelWidth),n=Math.min(t.height,r.resourceHeight||r.pixelHeight),o=r.alphaMode==="premultiply-alpha-on-upload";e.device.queue.copyExternalImageToTexture({source:i},{texture:t,premultipliedAlpha:o},{width:s,height:n})}}});var GT,IT=p(()=>{Gf();GT={type:"video",upload(r,t,e){Ou.upload(r,t,e)}}});var Lu,UT=p(()=>{"use strict";Lu=class{constructor(t){this.device=t,this.sampler=t.createSampler({minFilter:"linear"}),this.pipelines={}}_getMipmapPipeline(t){let e=this.pipelines[t];return e||(this.mipmapShaderModule||(this.mipmapShaderModule=this.device.createShaderModule({code:`\n var pos : array, 3> = array, 3>(\n vec2(-1.0, -1.0), vec2(-1.0, 3.0), vec2(3.0, -1.0));\n\n struct VertexOutput {\n @builtin(position) position : vec4,\n @location(0) texCoord : vec2,\n };\n\n @vertex\n fn vertexMain(@builtin(vertex_index) vertexIndex : u32) -> VertexOutput {\n var output : VertexOutput;\n output.texCoord = pos[vertexIndex] * vec2(0.5, -0.5) + vec2(0.5);\n output.position = vec4(pos[vertexIndex], 0.0, 1.0);\n return output;\n }\n\n @group(0) @binding(0) var imgSampler : sampler;\n @group(0) @binding(1) var img : texture_2d;\n\n @fragment\n fn fragmentMain(@location(0) texCoord : vec2) -> @location(0) vec4 {\n return textureSample(img, imgSampler, texCoord);\n }\n `})),e=this.device.createRenderPipeline({layout:"auto",vertex:{module:this.mipmapShaderModule,entryPoint:"vertexMain"},fragment:{module:this.mipmapShaderModule,entryPoint:"fragmentMain",targets:[{format:t}]}}),this.pipelines[t]=e),e}generateMipmap(t){let e=this._getMipmapPipeline(t.format);if(t.dimension==="3d"||t.dimension==="1d")throw new Error("Generating mipmaps for non-2d textures is currently unsupported!");let i=t,s=t.depthOrArrayLayers||1,n=t.usage&GPUTextureUsage.RENDER_ATTACHMENT;if(!n){let u={size:{width:Math.ceil(t.width/2),height:Math.ceil(t.height/2),depthOrArrayLayers:s},format:t.format,usage:GPUTextureUsage.TEXTURE_BINDING|GPUTextureUsage.COPY_SRC|GPUTextureUsage.RENDER_ATTACHMENT,mipLevelCount:t.mipLevelCount-1};i=this.device.createTexture(u)}let o=this.device.createCommandEncoder({}),a=e.getBindGroupLayout(0);for(let u=0;u{Pt();D();ee();Wi();wr();FT();kT();Gf();IT();UT();oo=class{constructor(t){this.managedTextures=[],this._gpuSources=Object.create(null),this._gpuSamplers=Object.create(null),this._bindGroupHash=Object.create(null),this._textureViewHash=Object.create(null),this._uploads={image:Ou,buffer:MT,video:GT,compressed:RT},this._renderer=t,t.renderableGC.addManagedHash(this,"_gpuSources"),t.renderableGC.addManagedHash(this,"_gpuSamplers"),t.renderableGC.addManagedHash(this,"_bindGroupHash"),t.renderableGC.addManagedHash(this,"_textureViewHash")}contextChange(t){this._gpu=t}initSource(t){if(t.autoGenerateMipmaps){let u=Math.max(t.pixelWidth,t.pixelHeight);t.mipLevelCount=Math.floor(Math.log2(u))+1}let e=GPUTextureUsage.TEXTURE_BINDING|GPUTextureUsage.COPY_DST;t.uploadMethodId!=="compressed"&&(e|=GPUTextureUsage.RENDER_ATTACHMENT,e|=GPUTextureUsage.COPY_SRC);let i=kf[t.format]||{blockBytes:4,blockWidth:1,blockHeight:1},s=Math.ceil(t.pixelWidth/i.blockWidth)*i.blockWidth,n=Math.ceil(t.pixelHeight/i.blockHeight)*i.blockHeight,o={label:t.label,size:{width:s,height:n},format:t.format,sampleCount:t.sampleCount,mipLevelCount:t.mipLevelCount,dimension:t.dimension,usage:e},a=this._gpu.device.createTexture(o);return this._gpuSources[t.uid]=a,this.managedTextures.includes(t)||(t.on("update",this.onSourceUpdate,this),t.on("resize",this.onSourceResize,this),t.on("destroy",this.onSourceDestroy,this),t.on("unload",this.onSourceUnload,this),t.on("updateMipmaps",this.onUpdateMipmaps,this),this.managedTextures.push(t)),this.onSourceUpdate(t),a}onSourceUpdate(t){let e=this.getGpuSource(t);e&&(this._uploads[t.uploadMethodId]&&this._uploads[t.uploadMethodId].upload(t,e,this._gpu),t.autoGenerateMipmaps&&t.mipLevelCount>1&&this.onUpdateMipmaps(t))}onSourceUnload(t){let e=this._gpuSources[t.uid];e&&(this._gpuSources[t.uid]=null,e.destroy())}onUpdateMipmaps(t){this._mipmapGenerator||(this._mipmapGenerator=new Lu(this._gpu.device));let e=this.getGpuSource(t);this._mipmapGenerator.generateMipmap(e)}onSourceDestroy(t){t.off("update",this.onSourceUpdate,this),t.off("unload",this.onSourceUnload,this),t.off("destroy",this.onSourceDestroy,this),t.off("resize",this.onSourceResize,this),t.off("updateMipmaps",this.onUpdateMipmaps,this),this.managedTextures.splice(this.managedTextures.indexOf(t),1),this.onSourceUnload(t)}onSourceResize(t){let e=this._gpuSources[t.uid];e?(e.width!==t.pixelWidth||e.height!==t.pixelHeight)&&(this._textureViewHash[t.uid]=null,this._bindGroupHash[t.uid]=null,this.onSourceUnload(t),this.initSource(t)):this.initSource(t)}_initSampler(t){return this._gpuSamplers[t._resourceId]=this._gpu.device.createSampler(t),this._gpuSamplers[t._resourceId]}getGpuSampler(t){return this._gpuSamplers[t._resourceId]||this._initSampler(t)}getGpuSource(t){return this._gpuSources[t.uid]||this.initSource(t)}getTextureBindGroup(t){return this._bindGroupHash[t.uid]??this._createTextureBindGroup(t)}_createTextureBindGroup(t){let e=t.source;return this._bindGroupHash[t.uid]=new It({0:e,1:e.style,2:new ct({uTextureMatrix:{type:"mat3x3",value:t.textureMatrix.mapCoord}})}),this._bindGroupHash[t.uid]}getTextureView(t){let e=t.source;return this._textureViewHash[e.uid]??this._createTextureView(e)}_createTextureView(t){return this._textureViewHash[t.uid]=this.getGpuSource(t).createView(),this._textureViewHash[t.uid]}generateCanvas(t){let e=this._renderer,i=e.gpu.device.createCommandEncoder(),s=Q.get().createCanvas();s.width=t.source.pixelWidth,s.height=t.source.pixelHeight;let n=s.getContext("webgpu");return n.configure({device:e.gpu.device,usage:GPUTextureUsage.COPY_DST|GPUTextureUsage.COPY_SRC,format:Q.get().getNavigator().gpu.getPreferredCanvasFormat(),alphaMode:"premultiplied"}),i.copyTextureToTexture({texture:e.texture.getGpuSource(t.source),origin:{x:0,y:0}},{texture:n.getCurrentTexture()},{width:s.width,height:s.height}),e.gpu.device.queue.submit([i.finish()]),s}getPixels(t){let e=this.generateCanvas(t),i=ue.getOptimalCanvasAndContext(e.width,e.height),s=i.context;s.drawImage(e,0,0);let{width:n,height:o}=e,a=s.getImageData(0,0,n,o),u=new Uint8ClampedArray(a.data.buffer);return ue.returnCanvasAndContext(i),{pixels:u,width:n,height:o}}destroy(){this.managedTextures.slice().forEach(t=>this.onSourceDestroy(t)),this.managedTextures=null;for(let t of Object.keys(this._bindGroupHash)){let e=Number(t);this._bindGroupHash[e]?.destroy(),this._bindGroupHash[e]=null}this._gpu=null,this._mipmapGenerator=null,this._gpuSources=null,this._bindGroupHash=null,this._textureViewHash=null,this._gpuSamplers=null}};oo.extension={type:[b.WebGPUSystem],name:"texture"}});var zT={};sd(zT,{WebGPURenderer:()=>If});var TD,SD,wD,LT,NT,HT,If,WT=p(()=>{D();rv();nv();ov();Cn();wf();Ve();nT();oT();aT();uT();lT();cT();xT();yT();bT();AT();DT();BT();OT();TD=[...Bu,to,Zn,os,Kn,oo,io,so,no,ro,qn,Qn,Yn],SD=[...Mu,eo],wD=[Pn,Dn,An],LT=[],NT=[],HT=[];H.handleByNamedList(b.WebGPUSystem,LT);H.handleByNamedList(b.WebGPUPipes,NT);H.handleByNamedList(b.WebGPUPipesAdaptor,HT);H.add(...TD,...SD,...wD);If=class extends Rr{constructor(){let t={name:"webgpu",type:Mt.WEBGPU,systems:LT,renderPipes:NT,renderPipeAdaptors:HT};super(t)}}});var ao,VT=p(()=>{D();ot();ti();Ar();sn();nn();ts();Dr();Oa();Be();ee();ao=class{init(){let t=new ct({uColor:{value:new Float32Array([1,1,1,1]),type:"vec4"},uTransformMatrix:{value:new G,type:"mat3x3"},uRound:{value:0,type:"f32"}}),e=_e(),i=He({name:"graphics",bits:[ki,Ii(e),Ji,We]});this.shader=new St({glProgram:i,resources:{localUniforms:t,batchSamplers:Ui(e)}})}execute(t,e){let i=e.context,s=i.customShader||this.shader,n=t.renderer,o=n.graphicsContext,{batcher:a,instructions:u}=o.getContextRenderData(i);s.groups[0]=n.globalUniforms.bindGroup,n.state.set(t.state),n.shader.bind(s),n.geometry.bind(a.geometry,s.glProgram);let l=u.instructions;for(let c=0;c{D();ot();Ar();ts();Dr();of();Be();dt();gt();uo=class{init(){let t=He({name:"mesh",bits:[Ji,sv,We]});this._shader=new St({glProgram:t,resources:{uTexture:I.EMPTY.source,textureUniforms:{uTextureMatrix:{type:"mat3x3",value:new G}}}})}execute(t,e){let i=t.renderer,s=e._shader;if(s){if(!s.glProgram){z("Mesh shader has no glProgram",e.shader);return}}else{s=this._shader;let n=e.texture,o=n.source;s.resources.uTexture=o,s.resources.uSampler=o.style,s.resources.textureUniforms.uniforms.uTextureMatrix=n.textureMatrix.mapCoord}s.groups[100]=i.globalUniforms.bindGroup,s.groups[101]=t.localUniformsBindGroup,i.encoder.draw({geometry:e._geometry,shader:s,state:e.state})}destroy(){this._shader.destroy(!0),this._shader=null}};uo.extension={type:[b.WebGLPipesAdaptor],name:"mesh"}});var lo,$T=p(()=>{D();Me();lo=class{constructor(){this._didUpload=!1,this._tempState=Ct.for2d()}init(t){t.renderer.runners.contextChange.add(this)}contextChange(){this._didUpload=!1}start(t,e,i){let s=t.renderer;s.shader.bind(i,this._didUpload),s.shader.updateUniformGroup(s.globalUniforms.uniformGroup),s.geometry.bind(e,i.glProgram)}execute(t,e){let i=t.renderer;this._didUpload=!0,this._tempState.blendMode=e.blendMode,i.state.set(this._tempState);let s=e.textures.textures;for(let n=0;n{"use strict";co=(r=>(r[r.ELEMENT_ARRAY_BUFFER=34963]="ELEMENT_ARRAY_BUFFER",r[r.ARRAY_BUFFER=34962]="ARRAY_BUFFER",r[r.UNIFORM_BUFFER=35345]="UNIFORM_BUFFER",r))(co||{})});var Nu,YT=p(()=>{"use strict";Nu=class{constructor(t,e){this._lastBindBaseLocation=-1,this._lastBindCallId=-1,this.buffer=t||null,this.updateID=-1,this.byteLength=-1,this.type=e}}});var ho,KT=p(()=>{D();ur();jT();YT();ho=class{constructor(t){this._gpuBuffers=Object.create(null),this._boundBufferBases=Object.create(null),this._minBaseLocation=0,this._nextBindBaseIndex=this._minBaseLocation,this._bindCallId=0,this._renderer=t,this._renderer.renderableGC.addManagedHash(this,"_gpuBuffers")}destroy(){this._renderer=null,this._gl=null,this._gpuBuffers=null,this._boundBufferBases=null}contextChange(){let t=this._gl=this._renderer.gl;this._gpuBuffers=Object.create(null),this._maxBindings=t.MAX_UNIFORM_BUFFER_BINDINGS?t.getParameter(t.MAX_UNIFORM_BUFFER_BINDINGS):0}getGlBuffer(t){return this._gpuBuffers[t.uid]||this.createGLBuffer(t)}bind(t){let{_gl:e}=this,i=this.getGlBuffer(t);e.bindBuffer(i.type,i.buffer)}bindBufferBase(t,e){let{_gl:i}=this;this._boundBufferBases[e]!==t&&(this._boundBufferBases[e]=t,t._lastBindBaseLocation=e,i.bindBufferBase(i.UNIFORM_BUFFER,e,t.buffer))}nextBindBase(t){this._bindCallId++,this._minBaseLocation=0,t&&(this._boundBufferBases[0]=null,this._minBaseLocation=1,this._nextBindBaseIndex<1&&(this._nextBindBaseIndex=1))}freeLocationForBufferBase(t){let e=this.getLastBindBaseLocation(t);if(e>=this._minBaseLocation)return t._lastBindCallId=this._bindCallId,e;let i=0,s=this._nextBindBaseIndex;for(;i<2;){s>=this._maxBindings&&(s=this._minBaseLocation,i++);let n=this._boundBufferBases[s];if(n&&n._lastBindCallId===this._bindCallId){s++;continue}break}return e=s,this._nextBindBaseIndex=s+1,i>=2?-1:(t._lastBindCallId=this._bindCallId,this._boundBufferBases[e]=null,e)}getLastBindBaseLocation(t){let e=t._lastBindBaseLocation;return this._boundBufferBases[e]===t?e:-1}bindBufferRange(t,e,i,s){let{_gl:n}=this;i||(i=0),e||(e=0),this._boundBufferBases[e]=null,n.bindBufferRange(n.UNIFORM_BUFFER,e||0,t.buffer,i*256,s||256)}updateBuffer(t){let{_gl:e}=this,i=this.getGlBuffer(t);if(t._updateID===i.updateID)return i;i.updateID=t._updateID,e.bindBuffer(i.type,i.buffer);let s=t.data,n=t.descriptor.usage&J.STATIC?e.STATIC_DRAW:e.DYNAMIC_DRAW;return s?i.byteLength>=s.byteLength?e.bufferSubData(i.type,0,s,0,t._updateSize/s.BYTES_PER_ELEMENT):(i.byteLength=s.byteLength,e.bufferData(i.type,s,n)):(i.byteLength=t.descriptor.size,e.bufferData(i.type,i.byteLength,n)),i}destroyAll(){let t=this._gl;for(let e in this._gpuBuffers)t.deleteBuffer(this._gpuBuffers[e].buffer);this._gpuBuffers=Object.create(null)}onBufferDestroy(t,e){let i=this._gpuBuffers[t.uid],s=this._gl;e||s.deleteBuffer(i.buffer),this._gpuBuffers[t.uid]=null}createGLBuffer(t){let{_gl:e}=this,i=co.ARRAY_BUFFER;t.descriptor.usage&J.INDEX?i=co.ELEMENT_ARRAY_BUFFER:t.descriptor.usage&J.UNIFORM&&(i=co.UNIFORM_BUFFER);let s=new Nu(e.createBuffer(),i);return this._gpuBuffers[t.uid]=s,t.on("destroy",this.onBufferDestroy,this),s}};ho.extension={type:[b.WebGLSystem],name:"buffer"}});var Uf,ZT,QT=p(()=>{Pt();D();gt();Uf=class qT{constructor(t){this.supports={uint32Indices:!0,uniformBufferObject:!0,vertexArrayObject:!0,srgbTextures:!0,nonPowOf2wrapping:!0,msaa:!0,nonPowOf2mipmaps:!0},this._renderer=t,this.extensions=Object.create(null),this.handleContextLost=this.handleContextLost.bind(this),this.handleContextRestored=this.handleContextRestored.bind(this)}get isLost(){return!this.gl||this.gl.isContextLost()}contextChange(t){this.gl=t,this._renderer.gl=t}init(t){t={...qT.defaultOptions,...t};let e=this.multiView=t.multiView;if(t.context&&e&&(z("Renderer created with both a context and multiview enabled. Disabling multiView as both cannot work together."),e=!1),e?this.canvas=Q.get().createCanvas(this._renderer.canvas.width,this._renderer.canvas.height):this.canvas=this._renderer.view.canvas,t.context)this.initFromContext(t.context);else{let i=this._renderer.background.alpha<1,s=t.premultipliedAlpha??!0,n=t.antialias&&!this._renderer.backBuffer.useBackBuffer;this.createContext(t.preferWebGLVersion,{alpha:i,premultipliedAlpha:s,antialias:n,stencil:!0,preserveDrawingBuffer:t.preserveDrawingBuffer,powerPreference:t.powerPreference??"default"})}}ensureCanvasSize(t){if(!this.multiView){t!==this.canvas&&z("multiView is disabled, but targetCanvas is not the main canvas");return}let{canvas:e}=this;(e.width{this.gl.isContextLost()&&this.extensions.loseContext?.restoreContext()},0))}handleContextRestored(){this._renderer.runners.contextChange.emit(this.gl)}destroy(){let t=this._renderer.view.canvas;this._renderer=null,t.removeEventListener("webglcontextlost",this.handleContextLost),t.removeEventListener("webglcontextrestored",this.handleContextRestored),this.gl.useProgram(null),this.extensions.loseContext?.loseContext()}forceContextLoss(){this.extensions.loseContext?.loseContext(),this._contextLossForced=!0}validateContext(t){let e=t.getContextAttributes();e&&!e.stencil&&z("Provided WebGL context does not have a stencil buffer, masks may not render correctly");let i=this.supports,s=this.webGLVersion===2,n=this.extensions;i.uint32Indices=s||!!n.uint32ElementIndex,i.uniformBufferObject=s,i.vertexArrayObject=s||!!n.vertexArrayObject,i.srgbTextures=s||!!n.srgb,i.nonPowOf2wrapping=s,i.nonPowOf2mipmaps=s,i.msaa=s,i.uint32Indices||z("Provided WebGL context does not support 32 index buffer, large scenes may not render correctly")}};Uf.extension={type:[b.WebGLSystem],name:"context"};Uf.defaultOptions={context:null,premultipliedAlpha:!0,preserveDrawingBuffer:!1,powerPreference:void 0,preferWebGLVersion:2,multiView:!1};ZT=Uf});var Hu,Of,at,Lf=p(()=>{"use strict";Hu=(r=>(r[r.RGBA=6408]="RGBA",r[r.RGB=6407]="RGB",r[r.RG=33319]="RG",r[r.RED=6403]="RED",r[r.RGBA_INTEGER=36249]="RGBA_INTEGER",r[r.RGB_INTEGER=36248]="RGB_INTEGER",r[r.RG_INTEGER=33320]="RG_INTEGER",r[r.RED_INTEGER=36244]="RED_INTEGER",r[r.ALPHA=6406]="ALPHA",r[r.LUMINANCE=6409]="LUMINANCE",r[r.LUMINANCE_ALPHA=6410]="LUMINANCE_ALPHA",r[r.DEPTH_COMPONENT=6402]="DEPTH_COMPONENT",r[r.DEPTH_STENCIL=34041]="DEPTH_STENCIL",r))(Hu||{}),Of=(r=>(r[r.TEXTURE_2D=3553]="TEXTURE_2D",r[r.TEXTURE_CUBE_MAP=34067]="TEXTURE_CUBE_MAP",r[r.TEXTURE_2D_ARRAY=35866]="TEXTURE_2D_ARRAY",r[r.TEXTURE_CUBE_MAP_POSITIVE_X=34069]="TEXTURE_CUBE_MAP_POSITIVE_X",r[r.TEXTURE_CUBE_MAP_NEGATIVE_X=34070]="TEXTURE_CUBE_MAP_NEGATIVE_X",r[r.TEXTURE_CUBE_MAP_POSITIVE_Y=34071]="TEXTURE_CUBE_MAP_POSITIVE_Y",r[r.TEXTURE_CUBE_MAP_NEGATIVE_Y=34072]="TEXTURE_CUBE_MAP_NEGATIVE_Y",r[r.TEXTURE_CUBE_MAP_POSITIVE_Z=34073]="TEXTURE_CUBE_MAP_POSITIVE_Z",r[r.TEXTURE_CUBE_MAP_NEGATIVE_Z=34074]="TEXTURE_CUBE_MAP_NEGATIVE_Z",r))(Of||{}),at=(r=>(r[r.UNSIGNED_BYTE=5121]="UNSIGNED_BYTE",r[r.UNSIGNED_SHORT=5123]="UNSIGNED_SHORT",r[r.UNSIGNED_SHORT_5_6_5=33635]="UNSIGNED_SHORT_5_6_5",r[r.UNSIGNED_SHORT_4_4_4_4=32819]="UNSIGNED_SHORT_4_4_4_4",r[r.UNSIGNED_SHORT_5_5_5_1=32820]="UNSIGNED_SHORT_5_5_5_1",r[r.UNSIGNED_INT=5125]="UNSIGNED_INT",r[r.UNSIGNED_INT_10F_11F_11F_REV=35899]="UNSIGNED_INT_10F_11F_11F_REV",r[r.UNSIGNED_INT_2_10_10_10_REV=33640]="UNSIGNED_INT_2_10_10_10_REV",r[r.UNSIGNED_INT_24_8=34042]="UNSIGNED_INT_24_8",r[r.UNSIGNED_INT_5_9_9_9_REV=35902]="UNSIGNED_INT_5_9_9_9_REV",r[r.BYTE=5120]="BYTE",r[r.SHORT=5122]="SHORT",r[r.INT=5124]="INT",r[r.FLOAT=5126]="FLOAT",r[r.FLOAT_32_UNSIGNED_INT_24_8_REV=36269]="FLOAT_32_UNSIGNED_INT_24_8_REV",r[r.HALF_FLOAT=36193]="HALF_FLOAT",r))(at||{})});function tS(r){return JT[r]??JT.float32}var JT,eS=p(()=>{Lf();JT={uint8x2:at.UNSIGNED_BYTE,uint8x4:at.UNSIGNED_BYTE,sint8x2:at.BYTE,sint8x4:at.BYTE,unorm8x2:at.UNSIGNED_BYTE,unorm8x4:at.UNSIGNED_BYTE,snorm8x2:at.BYTE,snorm8x4:at.BYTE,uint16x2:at.UNSIGNED_SHORT,uint16x4:at.UNSIGNED_SHORT,sint16x2:at.SHORT,sint16x4:at.SHORT,unorm16x2:at.UNSIGNED_SHORT,unorm16x4:at.UNSIGNED_SHORT,snorm16x2:at.SHORT,snorm16x4:at.SHORT,float16x2:at.HALF_FLOAT,float16x4:at.HALF_FLOAT,float32:at.FLOAT,float32x2:at.FLOAT,float32x3:at.FLOAT,float32x4:at.FLOAT,uint32:at.UNSIGNED_INT,uint32x2:at.UNSIGNED_INT,uint32x3:at.UNSIGNED_INT,uint32x4:at.UNSIGNED_INT,sint32:at.INT,sint32x2:at.INT,sint32x3:at.INT,sint32x4:at.INT}});var ED,fo,rS=p(()=>{D();ii();Mf();eS();ED={"point-list":0,"line-list":1,"line-strip":3,"triangle-list":4,"triangle-strip":5},fo=class{constructor(t){this._geometryVaoHash=Object.create(null),this._renderer=t,this._activeGeometry=null,this._activeVao=null,this.hasVao=!0,this.hasInstance=!0,this._renderer.renderableGC.addManagedHash(this,"_geometryVaoHash")}contextChange(){let t=this.gl=this._renderer.gl;if(!this._renderer.context.supports.vertexArrayObject)throw new Error("[PixiJS] Vertex Array Objects are not supported on this device");let e=this._renderer.context.extensions.vertexArrayObject;e&&(t.createVertexArray=()=>e.createVertexArrayOES(),t.bindVertexArray=s=>e.bindVertexArrayOES(s),t.deleteVertexArray=s=>e.deleteVertexArrayOES(s));let i=this._renderer.context.extensions.vertexAttribDivisorANGLE;i&&(t.drawArraysInstanced=(s,n,o,a)=>{i.drawArraysInstancedANGLE(s,n,o,a)},t.drawElementsInstanced=(s,n,o,a,u)=>{i.drawElementsInstancedANGLE(s,n,o,a,u)},t.vertexAttribDivisor=(s,n)=>i.vertexAttribDivisorANGLE(s,n)),this._activeGeometry=null,this._activeVao=null,this._geometryVaoHash=Object.create(null)}bind(t,e){let i=this.gl;this._activeGeometry=t;let s=this.getVao(t,e);this._activeVao!==s&&(this._activeVao=s,i.bindVertexArray(s)),this.updateBuffers()}reset(){this.unbind()}updateBuffers(){let t=this._activeGeometry,e=this._renderer.buffer;for(let i=0;i1?n.drawElementsInstanced(a,e||o.indexBuffer.data.length,l,(i||0)*u,s):n.drawElements(a,e||o.indexBuffer.data.length,l,(i||0)*u)}else s>1?n.drawArraysInstanced(a,i||0,e||o.getSize(),s):n.drawArrays(a,i||0,e||o.getSize());return this}unbind(){this.gl.bindVertexArray(null),this._activeVao=null,this._activeGeometry=null}destroy(){this._renderer=null,this.gl=null,this._activeVao=null,this._activeGeometry=null}};fo.extension={type:[b.WebGLSystem],name:"geometry"}});var CD,Nf,sS,nS=p(()=>{D();gt();Bi();Be();Me();ne();dt();ri();CD=new ye({attributes:{aPosition:[-1,-1,3,-1,-1,3]}}),Nf=class iS{constructor(t){this.useBackBuffer=!1,this._useBackBufferThisRender=!1,this._renderer=t}init(t={}){let{useBackBuffer:e,antialias:i}={...iS.defaultOptions,...t};this.useBackBuffer=e,this._antialias=i,this._renderer.context.supports.msaa||(z("antialiasing, is not supported on when using the back buffer"),this._antialias=!1),this._state=Ct.for2d();let s=new be({vertex:`\n attribute vec2 aPosition;\n out vec2 vUv;\n\n void main() {\n gl_Position = vec4(aPosition, 0.0, 1.0);\n\n vUv = (aPosition + 1.0) / 2.0;\n\n // flip dem UVs\n vUv.y = 1.0 - vUv.y;\n }`,fragment:`\n in vec2 vUv;\n out vec4 finalColor;\n\n uniform sampler2D uTexture;\n\n void main() {\n finalColor = texture(uTexture, vUv);\n }`,name:"big-triangle"});this._bigTriangleShader=new St({glProgram:s,resources:{uTexture:I.WHITE.source}})}renderStart(t){let e=this._renderer.renderTarget.getRenderTarget(t.target);if(this._useBackBufferThisRender=this.useBackBuffer&&!!e.isRoot,this._useBackBufferThisRender){let i=this._renderer.renderTarget.getRenderTarget(t.target);this._targetTexture=i.colorTexture,t.target=this._getBackBufferTexture(i.colorTexture)}}renderEnd(){this._presentBackBuffer()}_presentBackBuffer(){let t=this._renderer;t.renderTarget.finishRenderPass(),this._useBackBufferThisRender&&(t.renderTarget.bind(this._targetTexture,!1),this._bigTriangleShader.resources.uTexture=this._backBufferTexture.source,t.encoder.draw({geometry:CD,shader:this._bigTriangleShader,state:this._state}))}_getBackBufferTexture(t){return this._backBufferTexture=this._backBufferTexture||new I({source:new ut({width:t.width,height:t.height,resolution:t._resolution,antialias:this._antialias})}),this._backBufferTexture.source.resize(t.width,t.height,t._resolution),this._backBufferTexture}destroy(){this._backBufferTexture&&(this._backBufferTexture.destroy(),this._backBufferTexture=null)}};Nf.extension={type:[b.WebGLSystem],name:"backBuffer",priority:1};Nf.defaultOptions={useBackBuffer:!1};sS=Nf});var po,oS=p(()=>{D();po=class{constructor(t){this._colorMaskCache=15,this._renderer=t}setMask(t){this._colorMaskCache!==t&&(this._colorMaskCache=t,this._renderer.gl.colorMask(!!(t&8),!!(t&4),!!(t&2),!!(t&1)))}};po.extension={type:[b.WebGLSystem],name:"colorMask"}});var mo,aS=p(()=>{D();mo=class{constructor(t){this.commandFinished=Promise.resolve(),this._renderer=t}setGeometry(t,e){this._renderer.geometry.bind(t,e.glProgram)}finishRenderPass(){}draw(t){let e=this._renderer,{geometry:i,shader:s,state:n,skipSync:o,topology:a,size:u,start:l,instanceCount:c}=t;e.shader.bind(s,o),e.geometry.bind(i,e.shader._activeProgram),n&&e.state.set(n),e.geometry.draw(a,u,l,c??i.instanceCount)}destroy(){this._renderer=null}};mo.extension={type:[b.WebGLSystem],name:"encoder"}});var go,uS=p(()=>{D();Ff();ei();go=class{constructor(t){this._stencilCache={enabled:!1,stencilReference:0,stencilMode:pt.NONE},this._renderTargetStencilState=Object.create(null),t.renderTarget.onRenderTargetChange.add(this)}contextChange(t){this._gl=t,this._comparisonFuncMapping={always:t.ALWAYS,never:t.NEVER,equal:t.EQUAL,"not-equal":t.NOTEQUAL,less:t.LESS,"less-equal":t.LEQUAL,greater:t.GREATER,"greater-equal":t.GEQUAL},this._stencilOpsMapping={keep:t.KEEP,zero:t.ZERO,replace:t.REPLACE,invert:t.INVERT,"increment-clamp":t.INCR,"decrement-clamp":t.DECR,"increment-wrap":t.INCR_WRAP,"decrement-wrap":t.DECR_WRAP},this._stencilCache.enabled=!1,this._stencilCache.stencilMode=pt.NONE,this._stencilCache.stencilReference=0}onRenderTargetChange(t){if(this._activeRenderTarget===t)return;this._activeRenderTarget=t;let e=this._renderTargetStencilState[t.uid];e||(e=this._renderTargetStencilState[t.uid]={stencilMode:pt.DISABLED,stencilReference:0}),this.setStencilMode(e.stencilMode,e.stencilReference)}setStencilMode(t,e){let i=this._renderTargetStencilState[this._activeRenderTarget.uid],s=this._gl,n=Ye[t],o=this._stencilCache;if(i.stencilMode=t,i.stencilReference=e,t===pt.DISABLED){this._stencilCache.enabled&&(this._stencilCache.enabled=!1,s.disable(s.STENCIL_TEST));return}this._stencilCache.enabled||(this._stencilCache.enabled=!0,s.enable(s.STENCIL_TEST)),(t!==o.stencilMode||o.stencilReference!==e)&&(o.stencilMode=t,o.stencilReference=e,s.stencilFunc(this._comparisonFuncMapping[n.stencilBack.compare],e,255),s.stencilOp(s.KEEP,s.KEEP,this._stencilOpsMapping[n.stencilBack.passOp]))}};go.extension={type:[b.WebGLSystem],name:"stencil"}});function lS(r){let t=r.map(n=>({data:n,offset:0,size:0})),e=16,i=0,s=0;for(let n=0;n1&&(i=Math.max(i,e)*o.data.size);let a=i===12?16:i;o.size=i;let u=s%e;u>0&&e-u{"use strict";Hf={f32:4,i32:4,"vec2":8,"vec3":12,"vec4":16,"vec2":8,"vec3":12,"vec4":16,"mat2x2":32,"mat3x3":48,"mat4x4":64}});function cS(r,t){let e=Math.max(Hf[r.data.type]/16,1),i=r.data.value.length/r.data.size,s=(4-i%4)%4,n=r.data.type.indexOf("i32")>=0?"dataInt32":"data";return`\n v = uv.${r.data.name};\n offset += ${t};\n\n arrayOffset = offset;\n\n t = 0;\n\n for(var i=0; i < ${r.data.size*e}; i++)\n {\n for(var j = 0; j < ${i}; j++)\n {\n ${n}[arrayOffset++] = v[t++];\n }\n ${s!==0?`arrayOffset += ${s};`:""}\n }\n `}var hS=p(()=>{zf()});function fS(r){return Fu(r,"uboStd40",cS,Pf)}var dS=p(()=>{Df();Bf();hS()});var xo,pS=p(()=>{D();Ef();zf();dS();xo=class extends as{constructor(){super({createUboElements:lS,generateUboSync:fS})}};xo.extension={type:[b.WebGLSystem],name:"ubo"}});var zu,mS=p(()=>{"use strict";zu=class{constructor(){this.width=-1,this.height=-1,this.msaa=!1,this.msaaRenderBuffer=[]}}});var Wu,gS=p(()=>{Yt();gt();Ai();es();mS();Wu=class{constructor(){this._clearColorCache=[0,0,0,0],this._viewPortCache=new tt}init(t,e){this._renderer=t,this._renderTargetSystem=e,t.runners.contextChange.add(this)}contextChange(){this._clearColorCache=[0,0,0,0],this._viewPortCache=new tt}copyToTexture(t,e,i,s,n){let o=this._renderTargetSystem,a=this._renderer,u=o.getGpuRenderTarget(t),l=a.gl;return this.finishRenderPass(t),l.bindFramebuffer(l.FRAMEBUFFER,u.resolveTargetFramebuffer),a.texture.bind(e,0),l.copyTexSubImage2D(l.TEXTURE_2D,0,n.x,n.y,i.x,i.y,s.width,s.height),e}startRenderPass(t,e=!0,i,s){let n=this._renderTargetSystem,o=t.colorTexture,a=n.getGpuRenderTarget(t),u=s.y;t.isRoot&&(u=o.pixelHeight-s.height),t.colorTextures.forEach(h=>{this._renderer.texture.unbind(h)});let l=this._renderer.gl;l.bindFramebuffer(l.FRAMEBUFFER,a.framebuffer);let c=this._viewPortCache;(c.x!==s.x||c.y!==u||c.width!==s.width||c.height!==s.height)&&(c.x=s.x,c.y=u,c.width=s.width,c.height=s.height,l.viewport(s.x,u,s.width,s.height)),!a.depthStencilRenderBuffer&&(t.stencil||t.depth)&&this._initStencil(a),this.clear(t,e,i)}finishRenderPass(t){let i=this._renderTargetSystem.getGpuRenderTarget(t);if(!i.msaa)return;let s=this._renderer.gl;s.bindFramebuffer(s.FRAMEBUFFER,i.resolveTargetFramebuffer),s.bindFramebuffer(s.READ_FRAMEBUFFER,i.framebuffer),s.blitFramebuffer(0,0,i.width,i.height,0,0,i.width,i.height,s.COLOR_BUFFER_BIT,s.NEAREST),s.bindFramebuffer(s.FRAMEBUFFER,i.framebuffer)}initGpuRenderTarget(t){let e=this._renderer,i=e.gl,s=new zu;return t.colorTexture.resource===e.canvas?(this._renderer.context.ensureCanvasSize(t.colorTexture.resource),s.framebuffer=null,s):(this._initColor(t,s),i.bindFramebuffer(i.FRAMEBUFFER,null),s)}destroyGpuRenderTarget(t){let e=this._renderer.gl;t.framebuffer&&(e.deleteFramebuffer(t.framebuffer),t.framebuffer=null),t.resolveTargetFramebuffer&&(e.deleteFramebuffer(t.resolveTargetFramebuffer),t.resolveTargetFramebuffer=null),t.depthStencilRenderBuffer&&(e.deleteRenderbuffer(t.depthStencilRenderBuffer),t.depthStencilRenderBuffer=null),t.msaaRenderBuffer.forEach(i=>{e.deleteRenderbuffer(i)}),t.msaaRenderBuffer=null}clear(t,e,i){if(!e)return;let s=this._renderTargetSystem;typeof e=="boolean"&&(e=e?Ot.ALL:Ot.NONE);let n=this._renderer.gl;if(e&Ot.COLOR){i??(i=s.defaultClearColor);let o=this._clearColorCache,a=i;(o[0]!==a[0]||o[1]!==a[1]||o[2]!==a[2]||o[3]!==a[3])&&(o[0]=a[0],o[1]=a[1],o[2]=a[2],o[3]=a[3],n.clearColor(a[0],a[1],a[2],a[3]))}n.clear(e)}resizeGpuRenderTarget(t){if(t.isRoot)return;let i=this._renderTargetSystem.getGpuRenderTarget(t);this._resizeColor(t,i),(t.stencil||t.depth)&&this._resizeStencil(i)}_initColor(t,e){let i=this._renderer,s=i.gl,n=s.createFramebuffer();if(e.resolveTargetFramebuffer=n,s.bindFramebuffer(s.FRAMEBUFFER,n),e.width=t.colorTexture.source.pixelWidth,e.height=t.colorTexture.source.pixelHeight,t.colorTextures.forEach((o,a)=>{let u=o.source;u.antialias&&(i.context.supports.msaa?e.msaa=!0:z("[RenderTexture] Antialiasing on textures is not supported in WebGL1")),i.texture.bindSource(u,0);let c=i.texture.getGlSource(u).texture;s.framebufferTexture2D(s.FRAMEBUFFER,s.COLOR_ATTACHMENT0+a,3553,c,0)}),e.msaa){let o=s.createFramebuffer();e.framebuffer=o,s.bindFramebuffer(s.FRAMEBUFFER,o),t.colorTextures.forEach((a,u)=>{let l=s.createRenderbuffer();e.msaaRenderBuffer[u]=l})}else e.framebuffer=n;this._resizeColor(t,e)}_resizeColor(t,e){let i=t.colorTexture.source;if(e.width=i.pixelWidth,e.height=i.pixelHeight,t.colorTextures.forEach((s,n)=>{n!==0&&s.source.resize(i.width,i.height,i._resolution)}),e.msaa){let s=this._renderer,n=s.gl,o=e.framebuffer;n.bindFramebuffer(n.FRAMEBUFFER,o),t.colorTextures.forEach((a,u)=>{let l=a.source;s.texture.bindSource(l,0);let h=s.texture.getGlSource(l).internalFormat,d=e.msaaRenderBuffer[u];n.bindRenderbuffer(n.RENDERBUFFER,d),n.renderbufferStorageMultisample(n.RENDERBUFFER,4,h,l.pixelWidth,l.pixelHeight),n.framebufferRenderbuffer(n.FRAMEBUFFER,n.COLOR_ATTACHMENT0+u,n.RENDERBUFFER,d)})}}_initStencil(t){if(t.framebuffer===null)return;let e=this._renderer.gl,i=e.createRenderbuffer();t.depthStencilRenderBuffer=i,e.bindRenderbuffer(e.RENDERBUFFER,i),e.framebufferRenderbuffer(e.FRAMEBUFFER,e.DEPTH_STENCIL_ATTACHMENT,e.RENDERBUFFER,i),this._resizeStencil(t)}_resizeStencil(t){let e=this._renderer.gl;e.bindRenderbuffer(e.RENDERBUFFER,t.depthStencilRenderBuffer),t.msaa?e.renderbufferStorageMultisample(e.RENDERBUFFER,4,e.DEPTH24_STENCIL8,t.width,t.height):e.renderbufferStorage(e.RENDERBUFFER,this._renderer.context.webGLVersion===2?e.DEPTH24_STENCIL8:e.DEPTH_STENCIL,t.width,t.height)}prerender(t){let e=t.colorTexture.resource;this._renderer.context.multiView&&te.test(e)&&this._renderer.context.ensureCanvasSize(e)}postrender(t){if(this._renderer.context.multiView&&te.test(t.colorTexture.resource)){let e=this._renderer.context.canvas,i=t.colorTexture;i.context2D.drawImage(e,0,i.pixelHeight-e.height)}}}});var _o,xS=p(()=>{D();Rf();gS();_o=class extends ls{constructor(t){super(t),this.adaptor=new Wu,this.adaptor.init(t,this)}};_o.extension={type:[b.WebGLSystem],name:"renderTarget"}});function _S(r,t){let e=[],i=[`\n var g = s.groups;\n var sS = r.shader;\n var p = s.glProgram;\n var ugS = r.uniformGroup;\n var resources;\n `],s=!1,n=0,o=t._getProgramData(r.glProgram);for(let u in r.groups){let l=r.groups[u];e.push(`\n resources = g[${u}].resources;\n `);for(let c in l.resources){let h=l.resources[c];if(h instanceof ct)if(h.ubo){let d=r._uniformBindMap[u][Number(c)];e.push(`\n sS.bindUniformBlock(\n resources[${c}],\n \'${d}\',\n ${r.glProgram._uniformBlockData[d].index}\n );\n `)}else e.push(`\n ugS.updateUniformGroup(resources[${c}], p, sD);\n `);else if(h instanceof kr){let d=r._uniformBindMap[u][Number(c)];e.push(`\n sS.bindUniformBlock(\n resources[${c}],\n \'${d}\',\n ${r.glProgram._uniformBlockData[d].index}\n );\n `)}else if(h instanceof ut){let d=r._uniformBindMap[u][c],f=o.uniformData[d];f&&(s||(s=!0,i.push(`\n var tS = r.texture;\n `)),t._gl.uniform1i(f.location,n),e.push(`\n tS.bind(resources[${c}], ${n});\n `),n++)}}}let a=[...i,...e].join(`\n`);return new Function("r","s","sD",a)}var yS=p(()=>{Ru();ee();ne()});var Vu,bS=p(()=>{"use strict";Vu=class{constructor(t,e){this.program=t,this.uniformData=e,this.uniformGroups={},this.uniformDirtyGroups={},this.uniformBlockBindings={}}destroy(){this.uniformData=null,this.uniformGroups=null,this.uniformDirtyGroups=null,this.uniformBlockBindings=null,this.program=null}}});function Wf(r,t,e){let i=r.createShader(t);return r.shaderSource(i,e),r.compileShader(i),i}var vS=p(()=>{"use strict"});function Vf(r){let t=new Array(r);for(let e=0;e{"use strict"});function $f(r,t){if(!$u){let e=Object.keys(TS);$u={};for(let i=0;i{"use strict";$u=null,TS={FLOAT:"float",FLOAT_VEC2:"vec2",FLOAT_VEC3:"vec3",FLOAT_VEC4:"vec4",INT:"int",INT_VEC2:"ivec2",INT_VEC3:"ivec3",INT_VEC4:"ivec4",UNSIGNED_INT:"uint",UNSIGNED_INT_VEC2:"uvec2",UNSIGNED_INT_VEC3:"uvec3",UNSIGNED_INT_VEC4:"uvec4",BOOL:"bool",BOOL_VEC2:"bvec2",BOOL_VEC3:"bvec3",BOOL_VEC4:"bvec4",FLOAT_MAT2:"mat2",FLOAT_MAT3:"mat3",FLOAT_MAT4:"mat4",SAMPLER_2D:"sampler2D",INT_SAMPLER_2D:"sampler2D",UNSIGNED_INT_SAMPLER_2D:"sampler2D",SAMPLER_CUBE:"samplerCube",INT_SAMPLER_CUBE:"samplerCube",UNSIGNED_INT_SAMPLER_CUBE:"samplerCube",SAMPLER_2D_ARRAY:"sampler2DArray",INT_SAMPLER_2D_ARRAY:"sampler2DArray",UNSIGNED_INT_SAMPLER_2D_ARRAY:"sampler2DArray"},AD={float:"float32",vec2:"float32x2",vec3:"float32x3",vec4:"float32x4",int:"sint32",ivec2:"sint32x2",ivec3:"sint32x3",ivec4:"sint32x4",uint:"uint32",uvec2:"uint32x2",uvec3:"uint32x3",uvec4:"uint32x4",bool:"uint32",bvec2:"uint32x2",bvec3:"uint32x3",bvec4:"uint32x4"}});function wS(r,t,e=!1){let i={},s=t.getProgramParameter(r,t.ACTIVE_ATTRIBUTES);for(let o=0;oo>a?1:-1);for(let o=0;o{ii();jf()});function CS(r,t){if(!t.ACTIVE_UNIFORM_BLOCKS)return{};let e={},i=t.getProgramParameter(r,t.ACTIVE_UNIFORM_BLOCKS);for(let s=0;s{"use strict"});function DS(r,t){let e={},i=t.getProgramParameter(r,t.ACTIVE_UNIFORMS);for(let s=0;s{Xf();jf()});function BS(r,t){let e=r.getShaderSource(t).split(`\n`).map((l,c)=>`${c}: ${l}`),i=r.getShaderInfoLog(t),s=i.split(`\n`),n={},o=s.map(l=>parseFloat(l.replace(/^ERROR\\: 0\\:([\\d]+)\\:.*$/,"$1"))).filter(l=>l&&!n[l]?(n[l]=!0,!0):!1),a=[""];o.forEach(l=>{e[l-1]=`%c${e[l-1]}%c`,a.push("background: #FF0000; color:#FFFFFF; font-size: 10px","font-size: 10px")});let u=e.join(`\n`);a[0]=u,console.error(i),console.groupCollapsed("click to view full shader code"),console.warn(...a),console.groupEnd()}function MS(r,t,e,i){r.getProgramParameter(t,r.LINK_STATUS)||(r.getShaderParameter(e,r.COMPILE_STATUS)||BS(r,e),r.getShaderParameter(i,r.COMPILE_STATUS)||BS(r,i),console.error("PixiJS Error: Could not initialize shader."),r.getProgramInfoLog(t)!==""&&console.warn("PixiJS Warning: gl.getProgramInfoLog()",r.getProgramInfoLog(t)))}var FS=p(()=>{"use strict"});function RS(r,t){let e=Wf(r,r.VERTEX_SHADER,t.vertex),i=Wf(r,r.FRAGMENT_SHADER,t.fragment),s=r.createProgram();r.attachShader(s,e),r.attachShader(s,i);let n=t.transformFeedbackVaryings;n&&(typeof r.transformFeedbackVaryings!="function"?z("TransformFeedback is not supported but TransformFeedbackVaryings are given."):r.transformFeedbackVaryings(s,n.names,n.bufferMode==="separate"?r.SEPARATE_ATTRIBS:r.INTERLEAVED_ATTRIBS)),r.linkProgram(s),r.getProgramParameter(s,r.LINK_STATUS)||MS(r,s,e,i),t._attributeData=wS(s,r,!/^[ \\t]*#[ \\t]*version[ \\t]+300[ \\t]+es[ \\t]*$/m.test(t.vertex)),t._uniformData=DS(s,r),t._uniformBlockData=CS(s,r),r.deleteShader(e),r.deleteShader(i);let o={};for(let u in t._uniformData){let l=t._uniformData[u];o[u]={location:r.getUniformLocation(s,u),value:Xu(l.type,l.size)}}return new Vu(s,o)}var kS=p(()=>{gt();bS();vS();Xf();ES();AS();PS();FS()});var ju,yo,GS=p(()=>{D();ti();yS();kS();ju={textureCount:0,blockIndex:0},yo=class{constructor(t){this._activeProgram=null,this._programDataHash=Object.create(null),this._shaderSyncFunctions=Object.create(null),this._renderer=t,this._renderer.renderableGC.addManagedHash(this,"_programDataHash")}contextChange(t){this._gl=t,this._programDataHash=Object.create(null),this._shaderSyncFunctions=Object.create(null),this._activeProgram=null,this.maxTextures=_e()}bind(t,e){if(this._setProgram(t.glProgram),e)return;ju.textureCount=0,ju.blockIndex=0;let i=this._shaderSyncFunctions[t.glProgram._key];i||(i=this._shaderSyncFunctions[t.glProgram._key]=this._generateShaderSync(t,this)),this._renderer.buffer.nextBindBase(!!t.glProgram.transformFeedbackVaryings),i(this._renderer,t,ju)}updateUniformGroup(t){this._renderer.uniformGroup.updateUniformGroup(t,this._activeProgram,ju)}bindUniformBlock(t,e,i=0){let s=this._renderer.buffer,n=this._getProgramData(this._activeProgram),o=t._bufferResource;o||this._renderer.ubo.updateUniformGroup(t);let a=t.buffer,u=s.updateBuffer(a),l=s.freeLocationForBufferBase(u);if(o){let{offset:h,size:d}=t;h===0&&d===a.data.byteLength?s.bindBufferBase(u,l):s.bindBufferRange(u,l,h)}else s.getLastBindBaseLocation(u)!==l&&s.bindBufferBase(u,l);let c=this._activeProgram._uniformBlockData[e].index;n.uniformBlockBindings[i]!==l&&(n.uniformBlockBindings[i]=l,this._renderer.gl.uniformBlockBinding(n.program,c,l))}_setProgram(t){if(this._activeProgram===t)return;this._activeProgram=t;let e=this._getProgramData(t);this._gl.useProgram(e.program)}_getProgramData(t){return this._programDataHash[t._key]||this._createProgramData(t)}_createProgramData(t){let e=t._key;return this._programDataHash[e]=RS(this._gl,t),this._programDataHash[e]}destroy(){for(let t of Object.keys(this._programDataHash))this._programDataHash[t].destroy(),this._programDataHash[t]=null;this._programDataHash=null}_generateShaderSync(t,e){return _S(t,e)}};yo.extension={type:[b.WebGLSystem],name:"shader"}});var IS,US,OS=p(()=>{"use strict";IS={f32:`if (cv !== v) {\n cu.value = v;\n gl.uniform1f(location, v);\n }`,"vec2":`if (cv[0] !== v[0] || cv[1] !== v[1]) {\n cv[0] = v[0];\n cv[1] = v[1];\n gl.uniform2f(location, v[0], v[1]);\n }`,"vec3":`if (cv[0] !== v[0] || cv[1] !== v[1] || cv[2] !== v[2]) {\n cv[0] = v[0];\n cv[1] = v[1];\n cv[2] = v[2];\n gl.uniform3f(location, v[0], v[1], v[2]);\n }`,"vec4":`if (cv[0] !== v[0] || cv[1] !== v[1] || cv[2] !== v[2] || cv[3] !== v[3]) {\n cv[0] = v[0];\n cv[1] = v[1];\n cv[2] = v[2];\n cv[3] = v[3];\n gl.uniform4f(location, v[0], v[1], v[2], v[3]);\n }`,i32:`if (cv !== v) {\n cu.value = v;\n gl.uniform1i(location, v);\n }`,"vec2":`if (cv[0] !== v[0] || cv[1] !== v[1]) {\n cv[0] = v[0];\n cv[1] = v[1];\n gl.uniform2i(location, v[0], v[1]);\n }`,"vec3":`if (cv[0] !== v[0] || cv[1] !== v[1] || cv[2] !== v[2]) {\n cv[0] = v[0];\n cv[1] = v[1];\n cv[2] = v[2];\n gl.uniform3i(location, v[0], v[1], v[2]);\n }`,"vec4":`if (cv[0] !== v[0] || cv[1] !== v[1] || cv[2] !== v[2] || cv[3] !== v[3]) {\n cv[0] = v[0];\n cv[1] = v[1];\n cv[2] = v[2];\n cv[3] = v[3];\n gl.uniform4i(location, v[0], v[1], v[2], v[3]);\n }`,u32:`if (cv !== v) {\n cu.value = v;\n gl.uniform1ui(location, v);\n }`,"vec2":`if (cv[0] !== v[0] || cv[1] !== v[1]) {\n cv[0] = v[0];\n cv[1] = v[1];\n gl.uniform2ui(location, v[0], v[1]);\n }`,"vec3":`if (cv[0] !== v[0] || cv[1] !== v[1] || cv[2] !== v[2]) {\n cv[0] = v[0];\n cv[1] = v[1];\n cv[2] = v[2];\n gl.uniform3ui(location, v[0], v[1], v[2]);\n }`,"vec4":`if (cv[0] !== v[0] || cv[1] !== v[1] || cv[2] !== v[2] || cv[3] !== v[3]) {\n cv[0] = v[0];\n cv[1] = v[1];\n cv[2] = v[2];\n cv[3] = v[3];\n gl.uniform4ui(location, v[0], v[1], v[2], v[3]);\n }`,bool:`if (cv !== v) {\n cu.value = v;\n gl.uniform1i(location, v);\n }`,"vec2":`if (cv[0] !== v[0] || cv[1] !== v[1]) {\n cv[0] = v[0];\n cv[1] = v[1];\n gl.uniform2i(location, v[0], v[1]);\n }`,"vec3":`if (cv[0] !== v[0] || cv[1] !== v[1] || cv[2] !== v[2]) {\n cv[0] = v[0];\n cv[1] = v[1];\n cv[2] = v[2];\n gl.uniform3i(location, v[0], v[1], v[2]);\n }`,"vec4":`if (cv[0] !== v[0] || cv[1] !== v[1] || cv[2] !== v[2] || cv[3] !== v[3]) {\n cv[0] = v[0];\n cv[1] = v[1];\n cv[2] = v[2];\n cv[3] = v[3];\n gl.uniform4i(location, v[0], v[1], v[2], v[3]);\n }`,"mat2x2":"gl.uniformMatrix2fv(location, false, v);","mat3x3":"gl.uniformMatrix3fv(location, false, v);","mat4x4":"gl.uniformMatrix4fv(location, false, v);"},US={f32:"gl.uniform1fv(location, v);","vec2":"gl.uniform2fv(location, v);","vec3":"gl.uniform3fv(location, v);","vec4":"gl.uniform4fv(location, v);","mat2x2":"gl.uniformMatrix2fv(location, false, v);","mat3x3":"gl.uniformMatrix3fv(location, false, v);","mat4x4":"gl.uniformMatrix4fv(location, false, v);",i32:"gl.uniform1iv(location, v);","vec2":"gl.uniform2iv(location, v);","vec3":"gl.uniform3iv(location, v);","vec4":"gl.uniform4iv(location, v);",u32:"gl.uniform1iv(location, v);","vec2":"gl.uniform2iv(location, v);","vec3":"gl.uniform3iv(location, v);","vec4":"gl.uniform4iv(location, v);",bool:"gl.uniform1iv(location, v);","vec2":"gl.uniform2iv(location, v);","vec3":"gl.uniform3iv(location, v);","vec4":"gl.uniform4iv(location, v);"}});function LS(r,t){let e=[`\n var v = null;\n var cv = null;\n var cu = null;\n var t = 0;\n var gl = renderer.gl;\n var name = null;\n `];for(let i in r.uniforms){if(!t[i]){r.uniforms[i]instanceof ct?r.uniforms[i].ubo?e.push(`\n renderer.shader.bindUniformBlock(uv.${i}, "${i}");\n `):e.push(`\n renderer.shader.updateUniformGroup(uv.${i});\n `):r.uniforms[i]instanceof kr&&e.push(`\n renderer.shader.bindBufferResource(uv.${i}, "${i}");\n `);continue}let s=r.uniformStructures[i],n=!1;for(let o=0;o{Ru();ee();Af();OS()});var bo,HS=p(()=>{D();NS();bo=class{constructor(t){this._cache={},this._uniformGroupSyncHash={},this._renderer=t,this.gl=null,this._cache={}}contextChange(t){this.gl=t}updateUniformGroup(t,e,i){let s=this._renderer.shader._getProgramData(e);(!t.isStatic||t._dirtyId!==s.uniformDirtyGroups[t.uid])&&(s.uniformDirtyGroups[t.uid]=t._dirtyId,this._getUniformSyncFunction(t,e)(s.uniformData,t.uniforms,this._renderer,i))}_getUniformSyncFunction(t,e){return this._uniformGroupSyncHash[t._signature]?.[e._key]||this._createUniformSyncFunction(t,e)}_createUniformSyncFunction(t,e){let i=this._uniformGroupSyncHash[t._signature]||(this._uniformGroupSyncHash[t._signature]={}),s=this._getSignature(t,e._uniformData,"u");return this._cache[s]||(this._cache[s]=this._generateUniformsSync(t,e._uniformData)),i[e._key]=this._cache[s],i[e._key]}_generateUniformsSync(t,e){return LS(t,e)}_getSignature(t,e,i){let s=t.uniforms,n=[`${i}-`];for(let o in s)n.push(o),e[o]&&n.push(e[o].type);return n.join("-")}destroy(){this._renderer=null,this._cache=null}};bo.extension={type:[b.WebGLSystem],name:"uniformGroup"}});function zS(r){let t={};if(t.normal=[r.ONE,r.ONE_MINUS_SRC_ALPHA],t.add=[r.ONE,r.ONE],t.multiply=[r.DST_COLOR,r.ONE_MINUS_SRC_ALPHA,r.ONE,r.ONE_MINUS_SRC_ALPHA],t.screen=[r.ONE,r.ONE_MINUS_SRC_COLOR,r.ONE,r.ONE_MINUS_SRC_ALPHA],t.none=[0,0],t["normal-npm"]=[r.SRC_ALPHA,r.ONE_MINUS_SRC_ALPHA,r.ONE,r.ONE_MINUS_SRC_ALPHA],t["add-npm"]=[r.SRC_ALPHA,r.ONE,r.ONE,r.ONE],t["screen-npm"]=[r.SRC_ALPHA,r.ONE_MINUS_SRC_COLOR,r.ONE,r.ONE_MINUS_SRC_ALPHA],t.erase=[r.ZERO,r.ONE_MINUS_SRC_ALPHA],!(r instanceof Q.get().getWebGLRenderingContext()))t.min=[r.ONE,r.ONE,r.ONE,r.ONE,r.MIN,r.MIN],t.max=[r.ONE,r.ONE,r.ONE,r.ONE,r.MAX,r.MAX];else{let i=r.getExtension("EXT_blend_minmax");i&&(t.min=[r.ONE,r.ONE,r.ONE,r.ONE,i.MIN_EXT,i.MIN_EXT],t.max=[r.ONE,r.ONE,r.ONE,r.ONE,i.MAX_EXT,i.MAX_EXT])}return t}var WS=p(()=>{Pt()});var DD,PD,BD,MD,FD,RD,VS,XS,$S=p(()=>{D();Me();WS();DD=0,PD=1,BD=2,MD=3,FD=4,RD=5,VS=class Yf{constructor(){this.gl=null,this.stateId=0,this.polygonOffset=0,this.blendMode="none",this._blendEq=!1,this.map=[],this.map[DD]=this.setBlend,this.map[PD]=this.setOffset,this.map[BD]=this.setCullFace,this.map[MD]=this.setDepthTest,this.map[FD]=this.setFrontFace,this.map[RD]=this.setDepthMask,this.checks=[],this.defaultState=Ct.for2d()}contextChange(t){this.gl=t,this.blendModesMap=zS(t),this.reset()}set(t){if(t||(t=this.defaultState),this.stateId!==t.data){let e=this.stateId^t.data,i=0;for(;e;)e&1&&this.map[i].call(this,!!(t.data&1<>=1,i++;this.stateId=t.data}for(let e=0;e{Lf();Yu=class{constructor(t){this.target=Of.TEXTURE_2D,this.texture=t,this.width=-1,this.height=-1,this.type=at.UNSIGNED_BYTE,this.internalFormat=Hu.RGBA,this.format=Hu.RGBA,this.samplerType=0}}});var YS,KS=p(()=>{"use strict";YS={id:"buffer",upload(r,t,e){t.width===r.width||t.height===r.height?e.texSubImage2D(e.TEXTURE_2D,0,0,0,r.width,r.height,t.format,t.type,r.resource):e.texImage2D(t.target,0,t.internalFormat,r.width,r.height,0,t.format,t.type,r.resource),t.width=r.width,t.height=r.height}}});var kD,qS,ZS=p(()=>{"use strict";kD={"bc1-rgba-unorm":!0,"bc1-rgba-unorm-srgb":!0,"bc2-rgba-unorm":!0,"bc2-rgba-unorm-srgb":!0,"bc3-rgba-unorm":!0,"bc3-rgba-unorm-srgb":!0,"bc4-r-unorm":!0,"bc4-r-snorm":!0,"bc5-rg-unorm":!0,"bc5-rg-snorm":!0,"bc6h-rgb-ufloat":!0,"bc6h-rgb-float":!0,"bc7-rgba-unorm":!0,"bc7-rgba-unorm-srgb":!0,"etc2-rgb8unorm":!0,"etc2-rgb8unorm-srgb":!0,"etc2-rgb8a1unorm":!0,"etc2-rgb8a1unorm-srgb":!0,"etc2-rgba8unorm":!0,"etc2-rgba8unorm-srgb":!0,"eac-r11unorm":!0,"eac-r11snorm":!0,"eac-rg11unorm":!0,"eac-rg11snorm":!0,"astc-4x4-unorm":!0,"astc-4x4-unorm-srgb":!0,"astc-5x4-unorm":!0,"astc-5x4-unorm-srgb":!0,"astc-5x5-unorm":!0,"astc-5x5-unorm-srgb":!0,"astc-6x5-unorm":!0,"astc-6x5-unorm-srgb":!0,"astc-6x6-unorm":!0,"astc-6x6-unorm-srgb":!0,"astc-8x5-unorm":!0,"astc-8x5-unorm-srgb":!0,"astc-8x6-unorm":!0,"astc-8x6-unorm-srgb":!0,"astc-8x8-unorm":!0,"astc-8x8-unorm-srgb":!0,"astc-10x5-unorm":!0,"astc-10x5-unorm-srgb":!0,"astc-10x6-unorm":!0,"astc-10x6-unorm-srgb":!0,"astc-10x8-unorm":!0,"astc-10x8-unorm-srgb":!0,"astc-10x10-unorm":!0,"astc-10x10-unorm-srgb":!0,"astc-12x10-unorm":!0,"astc-12x10-unorm-srgb":!0,"astc-12x12-unorm":!0,"astc-12x12-unorm-srgb":!0},qS={id:"compressed",upload(r,t,e){e.pixelStorei(e.UNPACK_ALIGNMENT,4);let i=r.pixelWidth,s=r.pixelHeight,n=!!kD[r.format];for(let o=0;o>1,1),s=Math.max(s>>1,1)}}}});var Ku,Kf=p(()=>{"use strict";Ku={id:"image",upload(r,t,e,i){let s=r.alphaMode==="premultiply-alpha-on-upload";e.pixelStorei(e.UNPACK_PREMULTIPLY_ALPHA_WEBGL,s);let n=t.width,o=t.height,a=r.pixelWidth,u=r.pixelHeight,l=r.resourceWidth,c=r.resourceHeight;l{Kf();QS={id:"video",upload(r,t,e,i){if(!r.isValid){e.texImage2D(t.target,0,t.internalFormat,1,1,0,t.format,t.type,null);return}Ku.upload(r,t,e,i)}}});var qf,t1,qu,e1,r1=p(()=>{"use strict";qf={linear:9729,nearest:9728},t1={linear:{linear:9987,nearest:9985},nearest:{linear:9986,nearest:9984}},qu={"clamp-to-edge":33071,repeat:10497,"mirror-repeat":33648},e1={never:512,less:513,equal:514,"less-equal":515,greater:516,"not-equal":517,"greater-equal":518,always:519}});function Zf(r,t,e,i,s,n,o,a){let u=n;if(!a||r.addressModeU!=="repeat"||r.addressModeV!=="repeat"||r.addressModeW!=="repeat"){let l=qu[o?"clamp-to-edge":r.addressModeU],c=qu[o?"clamp-to-edge":r.addressModeV],h=qu[o?"clamp-to-edge":r.addressModeW];t[s](u,t.TEXTURE_WRAP_S,l),t[s](u,t.TEXTURE_WRAP_T,c),t.TEXTURE_WRAP_R&&t[s](u,t.TEXTURE_WRAP_R,h)}if((!a||r.magFilter!=="linear")&&t[s](u,t.TEXTURE_MAG_FILTER,qf[r.magFilter]),e){if(!a||r.mipmapFilter!=="linear"){let l=t1[r.minFilter][r.mipmapFilter];t[s](u,t.TEXTURE_MIN_FILTER,l)}}else t[s](u,t.TEXTURE_MIN_FILTER,qf[r.minFilter]);if(i&&r.maxAnisotropy>1){let l=Math.min(r.maxAnisotropy,t.getParameter(i.MAX_TEXTURE_MAX_ANISOTROPY_EXT));t[s](u,i.TEXTURE_MAX_ANISOTROPY_EXT,l)}r.compare&&t[s](u,t.TEXTURE_COMPARE_FUNC,e1[r.compare])}var i1=p(()=>{r1()});function s1(r){return{r8unorm:r.RED,r8snorm:r.RED,r8uint:r.RED,r8sint:r.RED,r16uint:r.RED,r16sint:r.RED,r16float:r.RED,rg8unorm:r.RG,rg8snorm:r.RG,rg8uint:r.RG,rg8sint:r.RG,r32uint:r.RED,r32sint:r.RED,r32float:r.RED,rg16uint:r.RG,rg16sint:r.RG,rg16float:r.RG,rgba8unorm:r.RGBA,"rgba8unorm-srgb":r.RGBA,rgba8snorm:r.RGBA,rgba8uint:r.RGBA,rgba8sint:r.RGBA,bgra8unorm:r.RGBA,"bgra8unorm-srgb":r.RGBA,rgb9e5ufloat:r.RGB,rgb10a2unorm:r.RGBA,rg11b10ufloat:r.RGB,rg32uint:r.RG,rg32sint:r.RG,rg32float:r.RG,rgba16uint:r.RGBA,rgba16sint:r.RGBA,rgba16float:r.RGBA,rgba32uint:r.RGBA,rgba32sint:r.RGBA,rgba32float:r.RGBA,stencil8:r.STENCIL_INDEX8,depth16unorm:r.DEPTH_COMPONENT,depth24plus:r.DEPTH_COMPONENT,"depth24plus-stencil8":r.DEPTH_STENCIL,depth32float:r.DEPTH_COMPONENT,"depth32float-stencil8":r.DEPTH_STENCIL}}var n1=p(()=>{"use strict"});function o1(r,t){let e={},i=r.RGBA;return r instanceof Q.get().getWebGLRenderingContext()?t.srgb&&(e={"rgba8unorm-srgb":t.srgb.SRGB8_ALPHA8_EXT,"bgra8unorm-srgb":t.srgb.SRGB8_ALPHA8_EXT}):(e={"rgba8unorm-srgb":r.SRGB8_ALPHA8,"bgra8unorm-srgb":r.SRGB8_ALPHA8},i=r.RGBA8),{r8unorm:r.R8,r8snorm:r.R8_SNORM,r8uint:r.R8UI,r8sint:r.R8I,r16uint:r.R16UI,r16sint:r.R16I,r16float:r.R16F,rg8unorm:r.RG8,rg8snorm:r.RG8_SNORM,rg8uint:r.RG8UI,rg8sint:r.RG8I,r32uint:r.R32UI,r32sint:r.R32I,r32float:r.R32F,rg16uint:r.RG16UI,rg16sint:r.RG16I,rg16float:r.RG16F,rgba8unorm:r.RGBA,...e,rgba8snorm:r.RGBA8_SNORM,rgba8uint:r.RGBA8UI,rgba8sint:r.RGBA8I,bgra8unorm:i,rgb9e5ufloat:r.RGB9_E5,rgb10a2unorm:r.RGB10_A2,rg11b10ufloat:r.R11F_G11F_B10F,rg32uint:r.RG32UI,rg32sint:r.RG32I,rg32float:r.RG32F,rgba16uint:r.RGBA16UI,rgba16sint:r.RGBA16I,rgba16float:r.RGBA16F,rgba32uint:r.RGBA32UI,rgba32sint:r.RGBA32I,rgba32float:r.RGBA32F,stencil8:r.STENCIL_INDEX8,depth16unorm:r.DEPTH_COMPONENT16,depth24plus:r.DEPTH_COMPONENT24,"depth24plus-stencil8":r.DEPTH24_STENCIL8,depth32float:r.DEPTH_COMPONENT32F,"depth32float-stencil8":r.DEPTH32F_STENCIL8,...t.s3tc?{"bc1-rgba-unorm":t.s3tc.COMPRESSED_RGBA_S3TC_DXT1_EXT,"bc2-rgba-unorm":t.s3tc.COMPRESSED_RGBA_S3TC_DXT3_EXT,"bc3-rgba-unorm":t.s3tc.COMPRESSED_RGBA_S3TC_DXT5_EXT}:{},...t.s3tc_sRGB?{"bc1-rgba-unorm-srgb":t.s3tc_sRGB.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT,"bc2-rgba-unorm-srgb":t.s3tc_sRGB.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT,"bc3-rgba-unorm-srgb":t.s3tc_sRGB.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT}:{},...t.rgtc?{"bc4-r-unorm":t.rgtc.COMPRESSED_RED_RGTC1_EXT,"bc4-r-snorm":t.rgtc.COMPRESSED_SIGNED_RED_RGTC1_EXT,"bc5-rg-unorm":t.rgtc.COMPRESSED_RED_GREEN_RGTC2_EXT,"bc5-rg-snorm":t.rgtc.COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT}:{},...t.bptc?{"bc6h-rgb-float":t.bptc.COMPRESSED_RGB_BPTC_SIGNED_FLOAT_EXT,"bc6h-rgb-ufloat":t.bptc.COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_EXT,"bc7-rgba-unorm":t.bptc.COMPRESSED_RGBA_BPTC_UNORM_EXT,"bc7-rgba-unorm-srgb":t.bptc.COMPRESSED_SRGB_ALPHA_BPTC_UNORM_EXT}:{},...t.etc?{"etc2-rgb8unorm":t.etc.COMPRESSED_RGB8_ETC2,"etc2-rgb8unorm-srgb":t.etc.COMPRESSED_SRGB8_ETC2,"etc2-rgb8a1unorm":t.etc.COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2,"etc2-rgb8a1unorm-srgb":t.etc.COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2,"etc2-rgba8unorm":t.etc.COMPRESSED_RGBA8_ETC2_EAC,"etc2-rgba8unorm-srgb":t.etc.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC,"eac-r11unorm":t.etc.COMPRESSED_R11_EAC,"eac-rg11unorm":t.etc.COMPRESSED_SIGNED_RG11_EAC}:{},...t.astc?{"astc-4x4-unorm":t.astc.COMPRESSED_RGBA_ASTC_4x4_KHR,"astc-4x4-unorm-srgb":t.astc.COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR,"astc-5x4-unorm":t.astc.COMPRESSED_RGBA_ASTC_5x4_KHR,"astc-5x4-unorm-srgb":t.astc.COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR,"astc-5x5-unorm":t.astc.COMPRESSED_RGBA_ASTC_5x5_KHR,"astc-5x5-unorm-srgb":t.astc.COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR,"astc-6x5-unorm":t.astc.COMPRESSED_RGBA_ASTC_6x5_KHR,"astc-6x5-unorm-srgb":t.astc.COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR,"astc-6x6-unorm":t.astc.COMPRESSED_RGBA_ASTC_6x6_KHR,"astc-6x6-unorm-srgb":t.astc.COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR,"astc-8x5-unorm":t.astc.COMPRESSED_RGBA_ASTC_8x5_KHR,"astc-8x5-unorm-srgb":t.astc.COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR,"astc-8x6-unorm":t.astc.COMPRESSED_RGBA_ASTC_8x6_KHR,"astc-8x6-unorm-srgb":t.astc.COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR,"astc-8x8-unorm":t.astc.COMPRESSED_RGBA_ASTC_8x8_KHR,"astc-8x8-unorm-srgb":t.astc.COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR,"astc-10x5-unorm":t.astc.COMPRESSED_RGBA_ASTC_10x5_KHR,"astc-10x5-unorm-srgb":t.astc.COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR,"astc-10x6-unorm":t.astc.COMPRESSED_RGBA_ASTC_10x6_KHR,"astc-10x6-unorm-srgb":t.astc.COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR,"astc-10x8-unorm":t.astc.COMPRESSED_RGBA_ASTC_10x8_KHR,"astc-10x8-unorm-srgb":t.astc.COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR,"astc-10x10-unorm":t.astc.COMPRESSED_RGBA_ASTC_10x10_KHR,"astc-10x10-unorm-srgb":t.astc.COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR,"astc-12x10-unorm":t.astc.COMPRESSED_RGBA_ASTC_12x10_KHR,"astc-12x10-unorm-srgb":t.astc.COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR,"astc-12x12-unorm":t.astc.COMPRESSED_RGBA_ASTC_12x12_KHR,"astc-12x12-unorm-srgb":t.astc.COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR}:{}}}var a1=p(()=>{Pt()});function u1(r){return{r8unorm:r.UNSIGNED_BYTE,r8snorm:r.BYTE,r8uint:r.UNSIGNED_BYTE,r8sint:r.BYTE,r16uint:r.UNSIGNED_SHORT,r16sint:r.SHORT,r16float:r.HALF_FLOAT,rg8unorm:r.UNSIGNED_BYTE,rg8snorm:r.BYTE,rg8uint:r.UNSIGNED_BYTE,rg8sint:r.BYTE,r32uint:r.UNSIGNED_INT,r32sint:r.INT,r32float:r.FLOAT,rg16uint:r.UNSIGNED_SHORT,rg16sint:r.SHORT,rg16float:r.HALF_FLOAT,rgba8unorm:r.UNSIGNED_BYTE,"rgba8unorm-srgb":r.UNSIGNED_BYTE,rgba8snorm:r.BYTE,rgba8uint:r.UNSIGNED_BYTE,rgba8sint:r.BYTE,bgra8unorm:r.UNSIGNED_BYTE,"bgra8unorm-srgb":r.UNSIGNED_BYTE,rgb9e5ufloat:r.UNSIGNED_INT_5_9_9_9_REV,rgb10a2unorm:r.UNSIGNED_INT_2_10_10_10_REV,rg11b10ufloat:r.UNSIGNED_INT_10F_11F_11F_REV,rg32uint:r.UNSIGNED_INT,rg32sint:r.INT,rg32float:r.FLOAT,rgba16uint:r.UNSIGNED_SHORT,rgba16sint:r.SHORT,rgba16float:r.HALF_FLOAT,rgba32uint:r.UNSIGNED_INT,rgba32sint:r.INT,rgba32float:r.FLOAT,stencil8:r.UNSIGNED_BYTE,depth16unorm:r.UNSIGNED_SHORT,depth24plus:r.UNSIGNED_INT,"depth24plus-stencil8":r.UNSIGNED_INT_24_8,depth32float:r.FLOAT,"depth32float-stencil8":r.FLOAT_32_UNSIGNED_INT_24_8_REV}}var l1=p(()=>{"use strict"});var GD,vo,c1=p(()=>{Pt();D();dt();jS();KS();ZS();Kf();JS();i1();n1();a1();l1();GD=4,vo=class{constructor(t){this.managedTextures=[],this._glTextures=Object.create(null),this._glSamplers=Object.create(null),this._boundTextures=[],this._activeTextureLocation=-1,this._boundSamplers=Object.create(null),this._uploads={image:Ku,buffer:YS,video:QS,compressed:qS},this._useSeparateSamplers=!1,this._renderer=t,this._renderer.renderableGC.addManagedHash(this,"_glTextures"),this._renderer.renderableGC.addManagedHash(this,"_glSamplers")}contextChange(t){this._gl=t,this._mapFormatToInternalFormat||(this._mapFormatToInternalFormat=o1(t,this._renderer.context.extensions),this._mapFormatToType=u1(t),this._mapFormatToFormat=s1(t)),this._glTextures=Object.create(null),this._glSamplers=Object.create(null),this._boundSamplers=Object.create(null);for(let e=0;e<16;e++)this.bind(I.EMPTY,e)}initSource(t){this.bind(t)}bind(t,e=0){let i=t.source;t?(this.bindSource(i,e),this._useSeparateSamplers&&this._bindSampler(i.style,e)):(this.bindSource(null,e),this._useSeparateSamplers&&this._bindSampler(null,e))}bindSource(t,e=0){let i=this._gl;if(t._touched=this._renderer.textureGC.count,this._boundTextures[e]!==t){this._boundTextures[e]=t,this._activateLocation(e),t||(t=I.EMPTY.source);let s=this.getGlSource(t);i.bindTexture(s.target,s.texture)}}_bindSampler(t,e=0){let i=this._gl;if(!t){this._boundSamplers[e]=null,i.bindSampler(e,null);return}let s=this._getGlSampler(t);this._boundSamplers[e]!==s&&(this._boundSamplers[e]=s,i.bindSampler(e,s))}unbind(t){let e=t.source,i=this._boundTextures,s=this._gl;for(let n=0;n1,this._renderer.context.extensions.anisotropicFiltering,"texParameteri",i.TEXTURE_2D,!this._renderer.context.supports.nonPowOf2wrapping&&!t.isPowerOfTwo,e)}onSourceUnload(t){let e=this._glTextures[t.uid];e&&(this.unbind(t),this._glTextures[t.uid]=null,this._gl.deleteTexture(e.texture))}onSourceUpdate(t){let e=this._gl,i=this.getGlSource(t);e.bindTexture(e.TEXTURE_2D,i.texture),this._boundTextures[this._activeTextureLocation]=t,this._uploads[t.uploadMethodId]?this._uploads[t.uploadMethodId].upload(t,i,e,this._renderer.context.webGLVersion):e.texImage2D(e.TEXTURE_2D,0,e.RGBA,t.pixelWidth,t.pixelHeight,0,e.RGBA,e.UNSIGNED_BYTE,null),t.autoGenerateMipmaps&&t.mipLevelCount>1&&this.onUpdateMipmaps(t,!1)}onUpdateMipmaps(t,e=!0){e&&this.bindSource(t,0);let i=this.getGlSource(t);this._gl.generateMipmap(i.target)}onSourceDestroy(t){t.off("destroy",this.onSourceDestroy,this),t.off("update",this.onSourceUpdate,this),t.off("resize",this.onSourceUpdate,this),t.off("unload",this.onSourceUnload,this),t.off("styleChange",this.onStyleChange,this),t.off("updateMipmaps",this.onUpdateMipmaps,this),this.managedTextures.splice(this.managedTextures.indexOf(t),1),this.onSourceUnload(t)}_initSampler(t){let e=this._gl,i=this._gl.createSampler();return this._glSamplers[t._resourceId]=i,Zf(t,e,this._boundTextures[this._activeTextureLocation].mipLevelCount>1,this._renderer.context.extensions.anisotropicFiltering,"samplerParameteri",i,!1,!0),this._glSamplers[t._resourceId]}_getGlSampler(t){return this._glSamplers[t._resourceId]||this._initSampler(t)}getGlSource(t){return this._glTextures[t.uid]||this._initSource(t)}generateCanvas(t){let{pixels:e,width:i,height:s}=this.getPixels(t),n=Q.get().createCanvas();n.width=i,n.height=s;let o=n.getContext("2d");if(o){let a=o.createImageData(i,s);a.data.set(e),o.putImageData(a,0,0)}return n}getPixels(t){let e=t.source.resolution,i=t.frame,s=Math.max(Math.round(i.width*e),1),n=Math.max(Math.round(i.height*e),1),o=new Uint8Array(GD*s*n),a=this._renderer,u=a.renderTarget.getRenderTarget(t),l=a.renderTarget.getGpuRenderTarget(u),c=a.gl;return c.bindFramebuffer(c.FRAMEBUFFER,l.resolveTargetFramebuffer),c.readPixels(Math.round(i.x*e),Math.round(i.y*e),s,n,c.RGBA,c.UNSIGNED_BYTE,o),{pixels:new Uint8ClampedArray(o.buffer),width:s,height:n}}destroy(){this.managedTextures.slice().forEach(t=>this.onSourceDestroy(t)),this.managedTextures=null,this._renderer=null}};vo.extension={type:[b.WebGLSystem],name:"texture"}});var p1={};sd(p1,{WebGLRenderer:()=>Qf});var ID,UD,OD,h1,f1,d1,Qf,m1=p(()=>{D();VT();XT();$T();Cn();wf();Ve();KT();QT();rS();nS();oS();aS();uS();pS();xS();GS();HS();$S();c1();ID=[...Bu,xo,sS,ZT,ho,vo,_o,fo,bo,yo,mo,XS,go,po],UD=[...Mu],OD=[lo,uo,ao],h1=[],f1=[],d1=[];H.handleByNamedList(b.WebGLSystem,h1);H.handleByNamedList(b.WebGLPipes,f1);H.handleByNamedList(b.WebGLPipesAdaptor,d1);H.add(...ID,...UD,...OD);Qf=class extends Rr{constructor(){let t={name:"webgl",type:Mt.WEBGL,systems:h1,renderPipes:f1,renderPipeAdaptors:d1};super(t)}}});var w1=Ao((wtt,S1)=>{"use strict";S1.exports=ND;function hs(r){return r instanceof Buffer?Buffer.from(r):new r.constructor(r.buffer.slice(),r.byteOffset,r.length)}function ND(r){if(r=r||{},r.circles)return HD(r);let t=new Map;if(t.set(Date,o=>new Date(o)),t.set(Map,(o,a)=>new Map(i(Array.from(o),a))),t.set(Set,(o,a)=>new Set(i(Array.from(o),a))),r.constructorHandlers)for(let o of r.constructorHandlers)t.set(o[0],o[1]);let e=null;return r.proto?n:s;function i(o,a){let u=Object.keys(o),l=new Array(u.length);for(let c=0;cnew Date(u)),i.set(Map,(u,l)=>new Map(n(Array.from(u),l))),i.set(Set,(u,l)=>new Set(n(Array.from(u),l))),r.constructorHandlers)for(let u of r.constructorHandlers)i.set(u[0],u[1]);let s=null;return r.proto?a:o;function n(u,l){let c=Object.keys(u),h=new Array(c.length);for(let d=0;d{}};function od(){for(var r=0,t=arguments.length,e={},i;r=0&&(i=e.slice(s+1),e=e.slice(0,s)),e&&!t.hasOwnProperty(e))throw new Error("unknown type: "+e);return{type:e,name:i}})}Do.prototype=od.prototype={constructor:Do,on:function(r,t){var e=this._,i=L1(r+"",e),s,n=-1,o=i.length;if(arguments.length<2){for(;++n0)for(var e=new Array(s),i=0,s,n;i=0&&(t=r.slice(0,e))!=="xmlns"&&(r=r.slice(e+1)),tl.hasOwnProperty(t)?{space:tl[t],local:r}:r}function H1(r){return function(){var t=this.ownerDocument,e=this.namespaceURI;return e===Po&&t.documentElement.namespaceURI===Po?t.createElement(r):t.createElementNS(e,r)}}function z1(r){return function(){return this.ownerDocument.createElementNS(r.space,r.local)}}function Bo(r){var t=Qe(r);return(t.local?z1:H1)(t)}function W1(){}function Ir(r){return r==null?W1:function(){return this.querySelector(r)}}function ad(r){typeof r!="function"&&(r=Ir(r));for(var t=this._groups,e=t.length,i=new Array(e),s=0;s=T&&(T=v+1);!(C=x[T])&&++T=0;)(o=i[s])&&(n&&o.compareDocumentPosition(n)^4&&n.parentNode.insertBefore(o,n),n=o);return this}function yd(r){r||(r=rw);function t(h,d){return h&&d?r(h.__data__,d.__data__):!h-!d}for(var e=this._groups,i=e.length,s=new Array(i),n=0;nt?1:r>=t?0:NaN}function bd(){var r=arguments[0];return arguments[0]=this,r.apply(null,arguments),this}function vd(){return Array.from(this)}function Td(){for(var r=this._groups,t=0,e=r.length;t1?this.each((t==null?lw:typeof t=="function"?hw:cw)(r,t,e??"")):pr(this.node(),r)}function pr(r,t){return r.style.getPropertyValue(t)||Ro(r).getComputedStyle(r,null).getPropertyValue(t)}function fw(r){return function(){delete this[r]}}function dw(r,t){return function(){this[r]=t}}function pw(r,t){return function(){var e=t.apply(this,arguments);e==null?delete this[r]:this[r]=e}}function Dd(r,t){return arguments.length>1?this.each((t==null?fw:typeof t=="function"?pw:dw)(r,t)):this.node()[r]}function Pd(r){return r.trim().split(/^|\\s+/)}function rl(r){return r.classList||new Bd(r)}function Bd(r){this._node=r,this._names=Pd(r.getAttribute("class")||"")}Bd.prototype={add:function(r){var t=this._names.indexOf(r);t<0&&(this._names.push(r),this._node.setAttribute("class",this._names.join(" ")))},remove:function(r){var t=this._names.indexOf(r);t>=0&&(this._names.splice(t,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(r){return this._names.indexOf(r)>=0}};function Md(r,t){for(var e=rl(r),i=-1,s=t.length;++i=0&&(e=t.slice(i+1),t=t.slice(0,i)),{type:t,name:e}})}function Fw(r){return function(){var t=this.__on;if(t){for(var e=0,i=-1,s=t.length,n;e()=>r;function bs(r,{sourceEvent:t,subject:e,target:i,identifier:s,active:n,x:o,y:a,dx:u,dy:l,dispatch:c}){Object.defineProperties(this,{type:{value:r,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},subject:{value:e,enumerable:!0,configurable:!0},target:{value:i,enumerable:!0,configurable:!0},identifier:{value:s,enumerable:!0,configurable:!0},active:{value:n,enumerable:!0,configurable:!0},x:{value:o,enumerable:!0,configurable:!0},y:{value:a,enumerable:!0,configurable:!0},dx:{value:u,enumerable:!0,configurable:!0},dy:{value:l,enumerable:!0,configurable:!0},_:{value:c}})}bs.prototype.on=function(){var r=this._.on.apply(this._,arguments);return r===this._?this:r};function Uw(r){return!r.ctrlKey&&!r.button}function Ow(){return this.parentNode}function Lw(r,t){return t??{x:r.x,y:r.y}}function Nw(){return navigator.maxTouchPoints||"ontouchstart"in this}function sl(){var r=Uw,t=Ow,e=Lw,i=Nw,s={},n=Ze("start","drag","end"),o=0,a,u,l,c,h=0;function d(y){y.on("mousedown.drag",f).filter(i).on("touchstart.drag",x).on("touchmove.drag",_,Kd).on("touchend.drag touchcancel.drag",v).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function f(y,C){if(!(c||!r.call(this,y,C))){var S=T(this,t.call(this,y,C),y,C,"mouse");S&&(Wt(y.view).on("mousemove.drag",m,Ur).on("mouseup.drag",g,Ur),xs(y.view),ko(y),l=!1,a=y.clientX,u=y.clientY,S("start",y))}}function m(y){if(mr(y),!l){var C=y.clientX-a,S=y.clientY-u;l=C*C+S*S>h}s.mouse("drag",y)}function g(y){Wt(y.view).on("mousemove.drag mouseup.drag",null),_s(y.view,l),mr(y),s.mouse("end",y)}function x(y,C){if(r.call(this,y,C)){var S=y.changedTouches,E=t.call(this,y,C),P=S.length,U,M;for(U=0;U>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):e===8?Io(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):e===4?Io(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|t&240,((t&15)<<4|t&15)/255):null):(t=zw.exec(r))?new se(t[1],t[2],t[3],1):(t=Ww.exec(r))?new se(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=Vw.exec(r))?Io(t[1],t[2],t[3],t[4]):(t=Xw.exec(r))?Io(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=$w.exec(r))?rp(t[1],t[2]/100,t[3]/100,1):(t=jw.exec(r))?rp(t[1],t[2]/100,t[3]/100,t[4]):qd.hasOwnProperty(r)?Jd(qd[r]):r==="transparent"?new se(NaN,NaN,NaN,0):null}function Jd(r){return new se(r>>16&255,r>>8&255,r&255,1)}function Io(r,t,e,i){return i<=0&&(r=t=e=NaN),new se(r,t,e,i)}function qw(r){return r instanceof Ss||(r=gr(r)),r?(r=r.rgb(),new se(r.r,r.g,r.b,r.opacity)):new se}function di(r,t,e,i){return arguments.length===1?qw(r):new se(r,t,e,i??1)}function se(r,t,e,i){this.r=+r,this.g=+t,this.b=+e,this.opacity=+i}Go(se,di,nl(Ss,{brighter(r){return r=r==null?Oo:Math.pow(Oo,r),new se(this.r*r,this.g*r,this.b*r,this.opacity)},darker(r){return r=r==null?vs:Math.pow(vs,r),new se(this.r*r,this.g*r,this.b*r,this.opacity)},rgb(){return this},clamp(){return new se(Lr(this.r),Lr(this.g),Lr(this.b),Lo(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:tp,formatHex:tp,formatHex8:Zw,formatRgb:ep,toString:ep}));function tp(){return`#${Or(this.r)}${Or(this.g)}${Or(this.b)}`}function Zw(){return`#${Or(this.r)}${Or(this.g)}${Or(this.b)}${Or((isNaN(this.opacity)?1:this.opacity)*255)}`}function ep(){let r=Lo(this.opacity);return`${r===1?"rgb(":"rgba("}${Lr(this.r)}, ${Lr(this.g)}, ${Lr(this.b)}${r===1?")":`, ${r})`}`}function Lo(r){return isNaN(r)?1:Math.max(0,Math.min(1,r))}function Lr(r){return Math.max(0,Math.min(255,Math.round(r)||0))}function Or(r){return r=Lr(r),(r<16?"0":"")+r.toString(16)}function rp(r,t,e,i){return i<=0?r=t=e=NaN:e<=0||e>=1?r=t=NaN:t<=0&&(r=NaN),new we(r,t,e,i)}function sp(r){if(r instanceof we)return new we(r.h,r.s,r.l,r.opacity);if(r instanceof Ss||(r=gr(r)),!r)return new we;if(r instanceof we)return r;r=r.rgb();var t=r.r/255,e=r.g/255,i=r.b/255,s=Math.min(t,e,i),n=Math.max(t,e,i),o=NaN,a=n-s,u=(n+s)/2;return a?(t===n?o=(e-i)/a+(e0&&u<1?0:o,new we(o,a,u,r.opacity)}function np(r,t,e,i){return arguments.length===1?sp(r):new we(r,t,e,i??1)}function we(r,t,e,i){this.h=+r,this.s=+t,this.l=+e,this.opacity=+i}Go(we,np,nl(Ss,{brighter(r){return r=r==null?Oo:Math.pow(Oo,r),new we(this.h,this.s,this.l*r,this.opacity)},darker(r){return r=r==null?vs:Math.pow(vs,r),new we(this.h,this.s,this.l*r,this.opacity)},rgb(){var r=this.h%360+(this.h<0)*360,t=isNaN(r)||isNaN(this.s)?0:this.s,e=this.l,i=e+(e<.5?e:1-e)*t,s=2*e-i;return new se(ol(r>=240?r-240:r+120,s,i),ol(r,s,i),ol(r<120?r+240:r-120,s,i),this.opacity)},clamp(){return new we(ip(this.h),Uo(this.s),Uo(this.l),Lo(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){let r=Lo(this.opacity);return`${r===1?"hsl(":"hsla("}${ip(this.h)}, ${Uo(this.s)*100}%, ${Uo(this.l)*100}%${r===1?")":`, ${r})`}`}}));function ip(r){return r=(r||0)%360,r<0?r+360:r}function Uo(r){return Math.max(0,Math.min(1,r||0))}function ol(r,t,e){return(r<60?t+(e-t)*r/60:r<180?e:r<240?t+(e-t)*(240-r)/60:t)*255}function al(r,t,e,i,s){var n=r*r,o=n*r;return((1-3*r+3*n-o)*t+(4-6*n+3*o)*e+(1+3*r+3*n-3*o)*i+o*s)/6}function op(r){var t=r.length-1;return function(e){var i=e<=0?e=0:e>=1?(e=1,t-1):Math.floor(e*t),s=r[i],n=r[i+1],o=i>0?r[i-1]:2*s-n,a=i()=>r;function Qw(r,t){return function(e){return r+e*t}}function Jw(r,t,e){return r=Math.pow(r,e),t=Math.pow(t,e)-r,e=1/e,function(i){return Math.pow(r+i*t,e)}}function up(r){return(r=+r)==1?No:function(t,e){return e-t?Jw(t,e,r):ul(isNaN(t)?e:t)}}function No(r,t){var e=t-r;return e?Qw(r,e):ul(isNaN(r)?t:r)}var Ho=function r(t){var e=up(t);function i(s,n){var o=e((s=di(s)).r,(n=di(n)).r),a=e(s.g,n.g),u=e(s.b,n.b),l=No(s.opacity,n.opacity);return function(c){return s.r=o(c),s.g=a(c),s.b=u(c),s.opacity=l(c),s+""}}return i.gamma=r,i}(1);function lp(r){return function(t){var e=t.length,i=new Array(e),s=new Array(e),n=new Array(e),o,a;for(o=0;oe&&(n=t.slice(e,n),a[o]?a[o]+=n:a[++o]=n),(i=i[0])===(s=s[0])?a[o]?a[o]+=s:a[++o]=s:(a[++o]=null,u.push({i:o,x:me(i,s)})),e=ll.lastIndex;return e180?c+=360:c-l>180&&(l+=360),d.push({i:h.push(s(h)+"rotate(",null,i)-2,x:me(l,c)})):c&&h.push(s(h)+"rotate("+c+i)}function a(l,c,h,d){l!==c?d.push({i:h.push(s(h)+"skewX(",null,i)-2,x:me(l,c)}):c&&h.push(s(h)+"skewX("+c+i)}function u(l,c,h,d,f,m){if(l!==h||c!==d){var g=f.push(s(f)+"scale(",null,",",null,")");m.push({i:g-4,x:me(l,h)},{i:g-2,x:me(c,d)})}else(h!==1||d!==1)&&f.push(s(f)+"scale("+h+","+d+")")}return function(l,c){var h=[],d=[];return l=r(l),c=r(c),n(l.translateX,l.translateY,c.translateX,c.translateY,h,d),o(l.rotate,c.rotate,h,d),a(l.skewX,c.skewX,h,d),u(l.scaleX,l.scaleY,c.scaleX,c.scaleY,h,d),l=c=null,function(f){for(var m=-1,g=d.length,x;++m=0&&r._call.call(void 0,t),r=r._next;--pi}function mp(){Nr=(Xo=As.now())+$o,pi=Es=0;try{_p()}finally{pi=0,lE(),Nr=0}}function uE(){var r=As.now(),t=r-Xo;t>gp&&($o-=t,Xo=r)}function lE(){for(var r,t=Vo,e,i=1/0;t;)t._call?(i>t._time&&(i=t._time),r=t,t=t._next):(e=t._next,t._next=null,t=r?r._next=e:Vo=e);Cs=r,gl(i)}function gl(r){if(!pi){Es&&(Es=clearTimeout(Es));var t=r-Nr;t>24?(r<1/0&&(Es=setTimeout(mp,r-As.now()-$o)),ws&&(ws=clearInterval(ws))):(ws||(Xo=As.now(),ws=setInterval(uE,gp)),pi=1,xp(mp))}}function jo(r,t,e){var i=new Ds;return t=t==null?0:+t,i.restart(s=>{i.stop(),r(s+t)},t,e),i}var cE=Ze("start","end","cancel","interrupt"),hE=[],vp=0,yp=1,Ko=2,Yo=3,bp=4,qo=5,Bs=6;function xr(r,t,e,i,s,n){var o=r.__transition;if(!o)r.__transition={};else if(e in o)return;fE(r,e,{name:t,index:i,group:s,on:cE,tween:hE,time:n.time,delay:n.delay,duration:n.duration,ease:n.ease,timer:null,state:vp})}function Ms(r,t){var e=Ft(r,t);if(e.state>vp)throw new Error("too late; already scheduled");return e}function Ht(r,t){var e=Ft(r,t);if(e.state>Yo)throw new Error("too late; already running");return e}function Ft(r,t){var e=r.__transition;if(!e||!(e=e[t]))throw new Error("transition not found");return e}function fE(r,t,e){var i=r.__transition,s;i[t]=e,e.timer=mi(n,0,e.time);function n(l){e.state=yp,e.timer.restart(o,e.delay,e.time),e.delay<=l&&o(l-e.delay)}function o(l){var c,h,d,f;if(e.state!==yp)return u();for(c in i)if(f=i[c],f.name===e.name){if(f.state===Yo)return jo(o);f.state===bp?(f.state=Bs,f.timer.stop(),f.on.call("interrupt",r,r.__data__,f.index,f.group),delete i[c]):+cKo&&i.state=0&&(t=t.slice(0,e)),!t||t==="start"})}function FE(r,t,e){var i,s,n=ME(t)?Ms:Ht;return function(){var o=n(this,r),a=o.on;a!==i&&(s=(i=a).copy()).on(t,e),o.on=s}}function Fp(r,t){var e=this._id;return arguments.length<2?Ft(this.node(),e).on.on(r):this.each(FE(e,r,t))}function RE(r){return function(){var t=this.parentNode;for(var e in this.__transition)if(+e!==r)return;t&&t.removeChild(this)}}function Rp(){return this.on("end.remove",RE(this._id))}function kp(r){var t=this._name,e=this._id;typeof r!="function"&&(r=Ir(r));for(var i=this._groups,s=i.length,n=new Array(s),o=0;o=(h=(a+l)/2))?a=h:l=h,(x=e>=(d=(u+c)/2))?u=d:c=d,s=n,!(n=n[_=x<<1|g]))return s[_]=o,r;if(f=+r._x.call(null,n.data),m=+r._y.call(null,n.data),t===f&&e===m)return o.next=n,s?s[_]=o:r._root=o,r;do s=s?s[_]=new Array(4):r._root=new Array(4),(g=t>=(h=(a+l)/2))?a=h:l=h,(x=e>=(d=(u+c)/2))?u=d:c=d;while((_=x<<1|g)===(v=(m>=d)<<1|f>=h));return s[v]=n,s[_]=o,r}function Kp(r){var t,e,i=r.length,s,n,o=new Array(i),a=new Array(i),u=1/0,l=1/0,c=-1/0,h=-1/0;for(e=0;ec&&(c=s),nh&&(h=n));if(u>c||l>h)return this;for(this.cover(u,l).cover(c,h),e=0;er||r>=s||i>t||t>=n;)switch(l=(tc||(a=m.y0)>h||(u=m.x1)=_)<<1|r>=x)&&(m=d[d.length-1],d[d.length-1]=d[d.length-1-g],d[d.length-1-g]=m)}else{var v=r-+this._x.call(null,f.data),T=t-+this._y.call(null,f.data),y=v*v+T*T;if(y=(d=(o+u)/2))?o=d:u=d,(g=h>=(f=(a+l)/2))?a=f:l=f,t=e,!(e=e[x=g<<1|m]))return this;if(!e.length)break;(t[x+1&3]||t[x+2&3]||t[x+3&3])&&(i=t,_=x)}for(;e.data!==r;)if(s=e,!(e=e.next))return this;return(n=e.next)&&delete e.next,s?(n?s.next=n:delete s.next,this):t?(n?t[x]=n:delete t[x],(e=t[0]||t[1]||t[2]||t[3])&&e===(t[3]||t[2]||t[1]||t[0])&&!e.length&&(i?i[_]=e:this._root=e),this):(this._root=n,this)}function em(r){for(var t=0,e=r.length;td.index){var k=f-P.x-P.vx,N=m-P.y-P.vy,q=k*k+N*N;qf+M||Sm+M||El.r&&(l.r=l[c].r)}function u(){if(t){var l,c=t.length,h;for(e=new Array(c),l=0;l[t(C,S,o),C])),y;for(x=0,a=new Array(_);x(r=(1664525*r+1013904223)%4294967296)/4294967296}function dm(r){return r.x}function pm(r){return r.y}var QE=10,JE=Math.PI*(3-Math.sqrt(5));function Tl(r){var t,e=1,i=.001,s=1-Math.pow(i,1/300),n=0,o=.6,a=new Map,u=mi(h),l=Ze("tick","end"),c=fm();r==null&&(r=[]);function h(){d(),l.call("tick",t),e1?(x==null?a.delete(g):a.set(g,m(x)),t):a.get(g)},find:function(g,x,_){var v=0,T=r.length,y,C,S,E,P;for(_==null?_=1/0:_*=_,v=0;v1?(l.on(g,x),t):l.on(g)}}}function Sl(){var r,t,e,i,s=Ie(-30),n,o=1,a=1/0,u=.81;function l(f){var m,g=r.length,x=Hr(r,dm,pm).visitAfter(h);for(i=f,m=0;m=a)return;(f.data!==t||f.next)&&(_===0&&(_=Ee(e),y+=_*_),v===0&&(v=Ee(e),y+=v*v),y()=>r;function wl(r,{sourceEvent:t,target:e,transform:i,dispatch:s}){Object.defineProperties(this,{type:{value:r,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},target:{value:e,enumerable:!0,configurable:!0},transform:{value:i,enumerable:!0,configurable:!0},_:{value:s}})}function Ce(r,t,e){this.k=r,this.x=t,this.y=e}Ce.prototype={constructor:Ce,scale:function(r){return r===1?this:new Ce(this.k*r,this.x,this.y)},translate:function(r,t){return r===0&t===0?this:new Ce(this.k,this.x+this.k*r,this.y+this.k*t)},apply:function(r){return[r[0]*this.k+this.x,r[1]*this.k+this.y]},applyX:function(r){return r*this.k+this.x},applyY:function(r){return r*this.k+this.y},invert:function(r){return[(r[0]-this.x)/this.k,(r[1]-this.y)/this.k]},invertX:function(r){return(r-this.x)/this.k},invertY:function(r){return(r-this.y)/this.k},rescaleX:function(r){return r.copy().domain(r.range().map(this.invertX,this).map(r.invert,r))},rescaleY:function(r){return r.copy().domain(r.range().map(this.invertY,this).map(r.invert,r))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};var zr=new Ce(1,0,0);El.prototype=Ce.prototype;function El(r){for(;!r.__zoom;)if(!(r=r.parentNode))return zr;return r.__zoom}function ta(r){r.stopImmediatePropagation()}function xi(r){r.preventDefault(),r.stopImmediatePropagation()}function tC(r){return(!r.ctrlKey||r.type==="wheel")&&!r.button}function eC(){var r=this;return r instanceof SVGElement?(r=r.ownerSVGElement||r,r.hasAttribute("viewBox")?(r=r.viewBox.baseVal,[[r.x,r.y],[r.x+r.width,r.y+r.height]]):[[0,0],[r.width.baseVal.value,r.height.baseVal.value]]):[[0,0],[r.clientWidth,r.clientHeight]]}function mm(){return this.__zoom||zr}function rC(r){return-r.deltaY*(r.deltaMode===1?.05:r.deltaMode?1:.002)*(r.ctrlKey?10:1)}function iC(){return navigator.maxTouchPoints||"ontouchstart"in this}function sC(r,t,e){var i=r.invertX(t[0][0])-e[0][0],s=r.invertX(t[1][0])-e[1][0],n=r.invertY(t[0][1])-e[0][1],o=r.invertY(t[1][1])-e[1][1];return r.translate(s>i?(i+s)/2:Math.min(0,i)||Math.max(0,s),o>n?(n+o)/2:Math.min(0,n)||Math.max(0,o))}function Cl(){var r=tC,t=eC,e=sC,i=rC,s=iC,n=[0,1/0],o=[[-1/0,-1/0],[1/0,1/0]],a=250,u=ml,l=Ze("start","zoom","end"),c,h,d,f=500,m=150,g=0,x=10;function _(w){w.property("__zoom",mm).on("wheel.zoom",P,{passive:!1}).on("mousedown.zoom",U).on("dblclick.zoom",M).filter(s).on("touchstart.zoom",k).on("touchmove.zoom",N).on("touchend.zoom touchcancel.zoom",q).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}_.transform=function(w,L,A,B){var $=w.selection?w.selection():w;$.property("__zoom",mm),w!==$?C(w,L,A,B):$.interrupt().each(function(){S(this,arguments).event(B).start().zoom(null,typeof L=="function"?L.apply(this,arguments):L).end()})},_.scaleBy=function(w,L,A,B){_.scaleTo(w,function(){var $=this.__zoom.k,O=typeof L=="function"?L.apply(this,arguments):L;return $*O},A,B)},_.scaleTo=function(w,L,A,B){_.transform(w,function(){var $=t.apply(this,arguments),O=this.__zoom,V=A==null?y($):typeof A=="function"?A.apply(this,arguments):A,st=O.invert(V),lt=typeof L=="function"?L.apply(this,arguments):L;return e(T(v(O,lt),V,st),$,o)},A,B)},_.translateBy=function(w,L,A,B){_.transform(w,function(){return e(this.__zoom.translate(typeof L=="function"?L.apply(this,arguments):L,typeof A=="function"?A.apply(this,arguments):A),t.apply(this,arguments),o)},null,B)},_.translateTo=function(w,L,A,B,$){_.transform(w,function(){var O=t.apply(this,arguments),V=this.__zoom,st=B==null?y(O):typeof B=="function"?B.apply(this,arguments):B;return e(zr.translate(st[0],st[1]).scale(V.k).translate(typeof L=="function"?-L.apply(this,arguments):-L,typeof A=="function"?-A.apply(this,arguments):-A),O,o)},B,$)};function v(w,L){return L=Math.max(n[0],Math.min(n[1],L)),L===w.k?w:new Ce(L,w.x,w.y)}function T(w,L,A){var B=L[0]-A[0]*w.k,$=L[1]-A[1]*w.k;return B===w.x&&$===w.y?w:new Ce(w.k,B,$)}function y(w){return[(+w[0][0]+ +w[1][0])/2,(+w[0][1]+ +w[1][1])/2]}function C(w,L,A,B){w.on("start.zoom",function(){S(this,arguments).event(B).start()}).on("interrupt.zoom end.zoom",function(){S(this,arguments).event(B).end()}).tween("zoom",function(){var $=this,O=arguments,V=S($,O).event(B),st=t.apply($,O),lt=A==null?y(st):typeof A=="function"?A.apply($,O):A,wt=Math.max(st[1][0]-st[0][0],st[1][1]-st[0][1]),yt=$.__zoom,Rt=typeof L=="function"?L.apply($,O):L,Lt=u(yt.invert(lt).concat(wt/yt.k),Rt.invert(lt).concat(wt/Rt.k));return function(Nt){if(Nt===1)Nt=Rt;else{var At=Lt(Nt),ie=wt/At[2];Nt=new Ce(ie,lt[0]-At[0]*ie,lt[1]-At[1]*ie)}V.zoom(null,Nt)}})}function S(w,L,A){return!A&&w.__zooming||new E(w,L)}function E(w,L){this.that=w,this.args=L,this.active=0,this.sourceEvent=null,this.extent=t.apply(w,L),this.taps=0}E.prototype={event:function(w){return w&&(this.sourceEvent=w),this},start:function(){return++this.active===1&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(w,L){return this.mouse&&w!=="mouse"&&(this.mouse[1]=L.invert(this.mouse[0])),this.touch0&&w!=="touch"&&(this.touch0[1]=L.invert(this.touch0[0])),this.touch1&&w!=="touch"&&(this.touch1[1]=L.invert(this.touch1[0])),this.that.__zoom=L,this.emit("zoom"),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit("end")),this},emit:function(w){var L=Wt(this.that).datum();l.call(w,this.that,new wl(w,{sourceEvent:this.sourceEvent,target:_,type:w,transform:this.that.__zoom,dispatch:l}),L)}};function P(w,...L){if(!r.apply(this,arguments))return;var A=S(this,L).event(w),B=this.__zoom,$=Math.max(n[0],Math.min(n[1],B.k*Math.pow(2,i.apply(this,arguments)))),O=pe(w);if(A.wheel)(A.mouse[0][0]!==O[0]||A.mouse[0][1]!==O[1])&&(A.mouse[1]=B.invert(A.mouse[0]=O)),clearTimeout(A.wheel);else{if(B.k===$)return;A.mouse=[O,B.invert(O)],_r(this),A.start()}xi(w),A.wheel=setTimeout(V,m),A.zoom("mouse",e(T(v(B,$),A.mouse[0],A.mouse[1]),A.extent,o));function V(){A.wheel=null,A.end()}}function U(w,...L){if(d||!r.apply(this,arguments))return;var A=w.currentTarget,B=S(this,L,!0).event(w),$=Wt(w.view).on("mousemove.zoom",lt,!0).on("mouseup.zoom",wt,!0),O=pe(w,A),V=w.clientX,st=w.clientY;xs(w.view),ta(w),B.mouse=[O,this.__zoom.invert(O)],_r(this),B.start();function lt(yt){if(xi(yt),!B.moved){var Rt=yt.clientX-V,Lt=yt.clientY-st;B.moved=Rt*Rt+Lt*Lt>g}B.event(yt).zoom("mouse",e(T(B.that.__zoom,B.mouse[0]=pe(yt,A),B.mouse[1]),B.extent,o))}function wt(yt){$.on("mousemove.zoom mouseup.zoom",null),_s(yt.view,B.moved),xi(yt),B.event(yt).end()}}function M(w,...L){if(r.apply(this,arguments)){var A=this.__zoom,B=pe(w.changedTouches?w.changedTouches[0]:w,this),$=A.invert(B),O=A.k*(w.shiftKey?.5:2),V=e(T(v(A,O),B,$),t.apply(this,L),o);xi(w),a>0?Wt(this).transition().duration(a).call(C,V,B,w):Wt(this).call(_.transform,V,B,w)}}function k(w,...L){if(r.apply(this,arguments)){var A=w.touches,B=A.length,$=S(this,L,w.changedTouches.length===B).event(w),O,V,st,lt;for(ta(w),V=0;V!0,load:async()=>{await Promise.resolve().then(()=>(Wb(),iD))}};D();var $b={extension:{type:b.Environment,name:"webworker",priority:0},test:()=>typeof self<"u"&&self.WorkerGlobalScope!==void 0,load:async()=>{await Promise.resolve().then(()=>(Xb(),sD))}};D();Pa();Ta();D();Pt();Cn();var Su;function tv(r){return Su!==void 0||(Su=(()=>{let t={stencil:!0,failIfMajorPerformanceCaveat:r??Rr.defaultOptions.failIfMajorPerformanceCaveat};try{if(!Q.get().getWebGLRenderingContext())return!1;let i=Q.get().createCanvas().getContext("webgl",t),s=!!i?.getContextAttributes()?.stencil;if(i){let n=i.getExtension("WEBGL_lose_context");n&&n.loseContext()}return i=null,s}catch{return!1}})()),Su}Pt();var wu;async function ev(r={}){return wu!==void 0||(wu=await(async()=>{let t=Q.get().getNavigator().gpu;if(!t)return!1;try{return await(await t.requestAdapter(r)).requestDevice(),!0}catch{return!1}})()),wu}Cn();var g1=["webgl","webgpu","canvas"];async function x1(r){let t=[];r.preference?(t.push(r.preference),g1.forEach(n=>{n!==r.preference&&t.push(n)})):t=g1.slice();let e,i={};for(let n=0;n(WT(),zT));e=a,i={...r,...r.webgpu};break}else if(o==="webgl"&&tv(r.failIfMajorPerformanceCaveat??Rr.defaultOptions.failIfMajorPerformanceCaveat)){let{WebGLRenderer:a}=await Promise.resolve().then(()=>(m1(),p1));e=a,i={...r,...r.webgl};break}else if(o==="canvas")throw i={...r},new Error("CanvasRenderer is not yet implemented")}if(delete i.webgpu,delete i.webgl,!e)throw new Error("No available renderer for the current environment");let s=new e;return await s.init(i),s}De();hf();vt();var _1=class Jf{constructor(...t){this.stage=new it,t[0]!==void 0&&X(Y,"Application constructor options are deprecated, please use Application.init() instead.")}async init(t){t={...t},this.renderer=await x1(t),Jf._plugins.forEach(e=>{e.init.call(this,t)})}render(){this.renderer.render({container:this.stage})}get canvas(){return this.renderer.canvas}get view(){return X(Y,"Application.view is deprecated, please use Application.canvas instead."),this.renderer.canvas}get screen(){return this.renderer.screen}destroy(t=!1,e=!1){let i=Jf._plugins.slice(0);i.reverse(),i.forEach(s=>{s.destroy.call(this)}),this.stage.destroy(e),this.stage=null,this.renderer.destroy(t),this.renderer=null}};_1._plugins=[];var Zu=_1;H.handleByList(b.Application,Zu._plugins);H.add(In);sa();vt();wa();var Qu=class extends Sr{constructor(t,e){let{text:i,resolution:s,style:n,anchor:o,width:a,height:u,roundPixels:l,...c}=t;super({...c}),this.batched=!0,this._resolution=null,this._autoResolution=!0,this._didTextUpdate=!0,this._styleClass=e,this.text=i??"",this.style=n,this.resolution=s??null,this.allowChildren=!1,this._anchor=new zt({_onUpdate:()=>{this.onViewUpdate()}}),o&&(this.anchor=o),this.roundPixels=l??!1,a!==void 0&&(this.width=a),u!==void 0&&(this.height=u)}get anchor(){return this._anchor}set anchor(t){typeof t=="number"?this._anchor.set(t):this._anchor.copyFrom(t)}set text(t){t=t.toString(),this._text!==t&&(this._text=t,this.onViewUpdate())}get text(){return this._text}set resolution(t){this._autoResolution=t===null,this._resolution=t,this.onViewUpdate()}get resolution(){return this._resolution}get style(){return this._style}set style(t){t||(t={}),this._style?.off("update",this.onViewUpdate,this),t instanceof this._styleClass?this._style=t:this._style=new this._styleClass(t),this._style.on("update",this.onViewUpdate,this),this.onViewUpdate()}get width(){return Math.abs(this.scale.x)*this.bounds.width}set width(t){this._setWidth(t,this.bounds.width)}get height(){return Math.abs(this.scale.y)*this.bounds.height}set height(t){this._setHeight(t,this.bounds.height)}getSize(t){return t||(t={}),t.width=Math.abs(this.scale.x)*this.bounds.width,t.height=Math.abs(this.scale.y)*this.bounds.height,t}setSize(t,e){typeof t=="object"?(e=t.height??t.width,t=t.width):e??(e=t),t!==void 0&&this._setWidth(t,this.bounds.width),e!==void 0&&this._setHeight(e,this.bounds.height)}containsPoint(t){let e=this.bounds.width,i=this.bounds.height,s=-e*this.anchor.x,n=0;return t.x>=s&&t.x<=s+e&&(n=-i*this.anchor.y,t.y>=n&&t.y<=n+i)}onViewUpdate(){this.didViewUpdate||(this._didTextUpdate=!0),super.onViewUpdate()}_getKey(){return`${this.text}:${this._style.styleKey}:${this._resolution}`}destroy(t=!1){super.destroy(t),this.owner=null,this._bounds=null,this._anchor=null,(typeof t=="boolean"?t:t?.style)&&this._style.destroy(t),this._style=null,this._text=null}};function y1(r,t){let e=r[0]??{};return(typeof e=="string"||r[1])&&(X(Y,`use new ${t}({ text: "hi!", style }) instead`),e={text:e,style:r[1]}),e}cu();Yi();var To=class extends Qu{constructor(...t){let e=y1(t,"Text");super(e,le),this.renderPipeId="text"}updateBounds(){let t=this._bounds,e=this._anchor,i=Te.measureText(this._text,this._style),{width:s,height:n}=i;t.minX=-e._x*s,t.maxX=t.minX+s,t.minY=-e._y*n,t.maxY=t.minY+n}};vh();Ec();De();Lh();Xt();var LD=ds(Jc(),1);H.add(Vb,$b);var wo=Object.freeze({Linear:Object.freeze({None:function(r){return r},In:function(r){return r},Out:function(r){return r},InOut:function(r){return r}}),Quadratic:Object.freeze({In:function(r){return r*r},Out:function(r){return r*(2-r)},InOut:function(r){return(r*=2)<1?.5*r*r:-.5*(--r*(r-2)-1)}}),Cubic:Object.freeze({In:function(r){return r*r*r},Out:function(r){return--r*r*r+1},InOut:function(r){return(r*=2)<1?.5*r*r*r:.5*((r-=2)*r*r+2)}}),Quartic:Object.freeze({In:function(r){return r*r*r*r},Out:function(r){return 1- --r*r*r*r},InOut:function(r){return(r*=2)<1?.5*r*r*r*r:-.5*((r-=2)*r*r*r-2)}}),Quintic:Object.freeze({In:function(r){return r*r*r*r*r},Out:function(r){return--r*r*r*r*r+1},InOut:function(r){return(r*=2)<1?.5*r*r*r*r*r:.5*((r-=2)*r*r*r*r+2)}}),Sinusoidal:Object.freeze({In:function(r){return 1-Math.sin((1-r)*Math.PI/2)},Out:function(r){return Math.sin(r*Math.PI/2)},InOut:function(r){return .5*(1-Math.sin(Math.PI*(.5-r)))}}),Exponential:Object.freeze({In:function(r){return r===0?0:Math.pow(1024,r-1)},Out:function(r){return r===1?1:1-Math.pow(2,-10*r)},InOut:function(r){return r===0?0:r===1?1:(r*=2)<1?.5*Math.pow(1024,r-1):.5*(-Math.pow(2,-10*(r-1))+2)}}),Circular:Object.freeze({In:function(r){return 1-Math.sqrt(1-r*r)},Out:function(r){return Math.sqrt(1- --r*r)},InOut:function(r){return(r*=2)<1?-.5*(Math.sqrt(1-r*r)-1):.5*(Math.sqrt(1-(r-=2)*r)+1)}}),Elastic:Object.freeze({In:function(r){return r===0?0:r===1?1:-Math.pow(2,10*(r-1))*Math.sin((r-1.1)*5*Math.PI)},Out:function(r){return r===0?0:r===1?1:Math.pow(2,-10*r)*Math.sin((r-.1)*5*Math.PI)+1},InOut:function(r){return r===0?0:r===1?1:(r*=2,r<1?-.5*Math.pow(2,10*(r-1))*Math.sin((r-1.1)*5*Math.PI):.5*Math.pow(2,-10*(r-1))*Math.sin((r-1.1)*5*Math.PI)+1)}}),Back:Object.freeze({In:function(r){var t=1.70158;return r===1?1:r*r*((t+1)*r-t)},Out:function(r){var t=1.70158;return r===0?0:--r*r*((t+1)*r+t)+1},InOut:function(r){var t=2.5949095;return(r*=2)<1?.5*(r*r*((t+1)*r-t)):.5*((r-=2)*r*((t+1)*r+t)+2)}}),Bounce:Object.freeze({In:function(r){return 1-wo.Bounce.Out(1-r)},Out:function(r){return r<.36363636363636365?7.5625*r*r:r<.7272727272727273?7.5625*(r-=.5454545454545454)*r+.75:r<.9090909090909091?7.5625*(r-=.8181818181818182)*r+.9375:7.5625*(r-=.9545454545454546)*r+.984375},InOut:function(r){return r<.5?wo.Bounce.In(r*2)*.5:wo.Bounce.Out(r*2-1)*.5+.5}}),generatePow:function(r){return r===void 0&&(r=4),r=r1e4?1e4:r,{In:function(t){return Math.pow(t,r)},Out:function(t){return 1-Math.pow(1-t,r)},InOut:function(t){return t<.5?Math.pow(t*2,r)/2:(1-Math.pow(2-t*2,r))/2+.5}}}}),So=function(){return performance.now()},Eo=function(){function r(){for(var t=[],e=0;e0;){this._tweensAddedDuringUpdate={};for(var s=0;s1?n(r[e],r[e-1],e-i):n(r[s],r[s+1>e?e:s+1],i-s)},Bezier:function(r,t){for(var e=0,i=r.length-1,s=Math.pow,n=cs.Utils.Bernstein,o=0;o<=i;o++)e+=s(1-t,i-o)*s(t,o)*r[o]*n(i,o);return e},CatmullRom:function(r,t){var e=r.length-1,i=e*t,s=Math.floor(i),n=cs.Utils.CatmullRom;return r[0]===r[e]?(t<0&&(s=Math.floor(i=e*(1+t))),n(r[(s-1+e)%e],r[s],r[(s+1)%e],r[(s+2)%e],i-s)):t<0?r[0]-(n(r[0],r[0],r[1],r[1],-i)-r[0]):t>1?r[e]-(n(r[e],r[e],r[e-1],r[e-1],i-e)-r[e]):n(r[s?s-1:0],r[s],r[e1;i--)e*=i;return r[t]=e,e}}(),CatmullRom:function(r,t,e,i,s){var n=(e-r)*.5,o=(i-t)*.5,a=s*s,u=s*a;return(2*t-2*e+n+o)*u+(-3*t+3*e-2*n-o)*a+n*s+t}}},b1=function(){function r(){}return r.nextId=function(){return r._nextId++},r._nextId=0,r}(),td=new Eo,Co=function(){function r(t,e){this._isPaused=!1,this._pauseStart=0,this._valuesStart={},this._valuesEnd={},this._valuesStartRepeat={},this._duration=1e3,this._isDynamic=!1,this._initialRepeat=0,this._repeat=0,this._yoyo=!1,this._isPlaying=!1,this._reversed=!1,this._delayTime=0,this._startTime=0,this._easingFunction=wo.Linear.None,this._interpolationFunction=cs.Linear,this._chainedTweens=[],this._onStartCallbackFired=!1,this._onEveryStartCallbackFired=!1,this._id=b1.nextId(),this._isChainStopped=!1,this._propertiesAreSetUp=!1,this._goToEnd=!1,this._object=t,typeof e=="object"?(this._group=e,e.add(this)):e===!0&&(this._group=td,td.add(this))}return r.prototype.getId=function(){return this._id},r.prototype.isPlaying=function(){return this._isPlaying},r.prototype.isPaused=function(){return this._isPaused},r.prototype.getDuration=function(){return this._duration},r.prototype.to=function(t,e){if(e===void 0&&(e=1e3),this._isPlaying)throw new Error("Can not call Tween.to() while Tween is already started or paused. Stop the Tween first.");return this._valuesEnd=t,this._propertiesAreSetUp=!1,this._duration=e<0?0:e,this},r.prototype.duration=function(t){return t===void 0&&(t=1e3),this._duration=t<0?0:t,this},r.prototype.dynamic=function(t){return t===void 0&&(t=!1),this._isDynamic=t,this},r.prototype.start=function(t,e){if(t===void 0&&(t=So()),e===void 0&&(e=!1),this._isPlaying)return this;if(this._repeat=this._initialRepeat,this._reversed){this._reversed=!1;for(var i in this._valuesStartRepeat)this._swapEndStartRepeatValues(i),this._valuesStart[i]=this._valuesStartRepeat[i]}if(this._isPlaying=!0,this._isPaused=!1,this._onStartCallbackFired=!1,this._onEveryStartCallbackFired=!1,this._isChainStopped=!1,this._startTime=t,this._startTime+=this._delayTime,!this._propertiesAreSetUp||e){if(this._propertiesAreSetUp=!0,!this._isDynamic){var s={};for(var n in this._valuesEnd)s[n]=this._valuesEnd[n];this._valuesEnd=s}this._setupProperties(this._object,this._valuesStart,this._valuesEnd,this._valuesStartRepeat,e)}return this},r.prototype.startFromCurrentValues=function(t){return this.start(t,!0)},r.prototype._setupProperties=function(t,e,i,s,n){for(var o in i){var a=t[o],u=Array.isArray(a),l=u?"array":typeof a,c=!u&&Array.isArray(i[o]);if(!(l==="undefined"||l==="function")){if(c){var h=i[o];if(h.length===0)continue;for(var d=[a],f=0,m=h.length;f"u"||n)&&(e[o]=a),u||(e[o]*=1),c?s[o]=i[o].slice().reverse():s[o]=e[o]||0}}},r.prototype.stop=function(){return this._isChainStopped||(this._isChainStopped=!0,this.stopChainedTweens()),this._isPlaying?(this._isPlaying=!1,this._isPaused=!1,this._onStopCallback&&this._onStopCallback(this._object),this):this},r.prototype.end=function(){return this._goToEnd=!0,this.update(this._startTime+this._duration),this},r.prototype.pause=function(t){return t===void 0&&(t=So()),this._isPaused||!this._isPlaying?this:(this._isPaused=!0,this._pauseStart=t,this)},r.prototype.resume=function(t){return t===void 0&&(t=So()),!this._isPaused||!this._isPlaying?this:(this._isPaused=!1,this._startTime+=t-this._pauseStart,this._pauseStart=0,this)},r.prototype.stopChainedTweens=function(){for(var t=0,e=this._chainedTweens.length;tu)return 1;var g=Math.trunc(o/a),x=o-g*a,_=Math.min(x/i._duration,1);return _===0&&o===i._duration?1:_},c=l(),h=this._easingFunction(c);if(this._updateProperties(this._object,this._valuesStart,this._valuesEnd,h),this._onUpdateCallback&&this._onUpdateCallback(this._object,c),this._duration===0||o>=this._duration)if(this._repeat>0){var d=Math.min(Math.trunc((o-this._duration)/a)+1,this._repeat);isFinite(this._repeat)&&(this._repeat-=d);for(n in this._valuesStartRepeat)!this._yoyo&&typeof this._valuesEnd[n]=="string"&&(this._valuesStartRepeat[n]=this._valuesStartRepeat[n]+parseFloat(this._valuesEnd[n])),this._yoyo&&this._swapEndStartRepeatValues(n),this._valuesStart[n]=this._valuesStartRepeat[n];return this._yoyo&&(this._reversed=!this._reversed),this._startTime+=a*d,this._onRepeatCallback&&this._onRepeatCallback(this._object),this._onEveryStartCallbackFired=!1,!0}else{this._onCompleteCallback&&this._onCompleteCallback(this._object);for(var f=0,m=this._chainedTweens.length;fr?.removeEventListener("click",e)),document.addEventListener("keydown",i),window.addCleanup(()=>document.removeEventListener("keydown",i))}function T1(r){for(;r.firstChild;)r.removeChild(r.firstChild)}var Ttt=Object.hasOwnProperty;var E1=ds(w1(),1),Att=(0,E1.default)();function C1(r){return r.document.body.dataset.slug}function fs(r){let t=A1(XD(r,"index"),!0);return t.length===0?"/":t}function zD(r){let t=r.split("/").filter(e=>e!=="").slice(0,-1).map(e=>"..").join("/");return t.length===0&&(t="."),t}function ed(r,t){return WD(zD(r),fs(t))}function WD(...r){if(r.length===0)return"";let t=r.filter(e=>e!==""&&e!=="/").map(e=>A1(e)).join("/");return r[0].startsWith("/")&&(t="/"+t),r[r.length-1].endsWith("/")&&(t=t+"/"),t}function VD(r,t){return r===t||r.endsWith("/"+t)}function XD(r,t){return VD(r,t)&&(r=r.slice(0,-t.length)),r}function A1(r,t){return r.startsWith("/")&&(r=r.substring(1)),!t&&r.endsWith("/")&&(r=r.slice(0,-1)),r}var D1="graph-visited";function P1(){return new Set(JSON.parse(localStorage.getItem(D1)??"[]"))}function $D(r){let t=P1();t.add(r),localStorage.setItem(D1,JSON.stringify([...t]))}async function rd(r,t){let e=fs(t),i=P1(),s=document.getElementById(r);if(!s)return;T1(s);let{drag:n,zoom:o,depth:a,scale:u,repelForce:l,centerForce:c,linkDistance:h,fontSize:d,opacityScale:f,removeTags:m,showTags:g,focusOnHover:x}=JSON.parse(s.dataset.cfg),_=new Map(Object.entries(await fetchData).map(([F,R])=>[fs(F),R])),v=[],T=[],y=new Set(_.keys()),C=new Map;for(let[F,R]of _.entries()){let j=R.links??[];for(let nt of j)y.has(nt)&&v.push({source:F,target:nt});if(g){let nt=R.tags.filter(Et=>!m.includes(Et)).map(Et=>fs("tags/"+Et));T.push(...nt.filter(Et=>!T.includes(Et)));for(let Et of nt)v.push({source:F,target:Et})}}let S=new Set,E=[e,"__SENTINEL"];if(a>=0)for(;a>=0&&E.length>0;){let F=E.shift();if(F==="__SENTINEL")a--,E.push("__SENTINEL");else{S.add(F);let R=v.filter(nt=>nt.source===F),j=v.filter(nt=>nt.target===F);E.push(...R.map(nt=>nt.target),...j.map(nt=>nt.source))}}else y.forEach(F=>S.add(F)),g&&T.forEach(F=>S.add(F));let P=[...S].map(F=>{let R=F.startsWith("tags/")?"#"+F.substring(5):_.get(F)?.title??F;return{id:F,text:R,tags:_.get(F)?.tags??[]}}),U={nodes:P,links:v.filter(F=>S.has(F.source)&&S.has(F.target)).map(F=>({source:P.find(R=>R.id===F.source),target:P.find(R=>R.id===F.target)}))},M=Tl(U.nodes).force("charge",Sl().strength(-100*l)).force("center",_l().strength(c)).force("link",vl(U.links).distance(h)).force("collide",bl(F=>A(F)).iterations(3)),k=s.offsetWidth,N=Math.max(s.offsetHeight,250),w=["--secondary","--tertiary","--gray","--light","--lightgray","--dark","--darkgray","--bodyFont"].reduce((F,R)=>(F[R]=getComputedStyle(document.documentElement).getPropertyValue(R),F),{}),L=F=>F.id===e?w["--secondary"]:i.has(F.id)||F.id.startsWith("tags/")?w["--tertiary"]:w["--gray"];function A(F){let R=U.links.filter(j=>j.source.id===F.id||j.target.id===F.id).length;return 2+Math.sqrt(R)}let B=null,$=new Set,O=[],V=[];function st(F){if(B=F,F===null){$=new Set;for(let R of V)R.active=!1;for(let R of O)R.active=!1}else{$=new Set;for(let R of O){let j=R.simulationData;(j.source.id===F||j.target.id===F)&&($.add(j.source.id),$.add(j.target.id)),R.active=j.source.id===F||j.target.id===F}for(let R of V)R.active=$.has(R.simulationData.id)}}let lt=0,wt=!1;function yt(){C.get("link")?.stop();let F=new Eo;for(let R of O){let j=1;B&&(j=R.active?1:.2),R.color=R.active?w["--gray"]:w["--lightgray"],F.add(new Co(R).to({alpha:j},200))}F.getAll().forEach(R=>R.start()),C.set("link",{update:F.update.bind(F),stop(){F.getAll().forEach(R=>R.stop())}})}function Rt(){C.get("label")?.stop();let F=new Eo,R=1/u,j=R*1.1;for(let nt of V){let Et=nt.simulationData.id;B===Et?F.add(new Co(nt.label).to({alpha:1,scale:{x:j,y:j}},100)):F.add(new Co(nt.label).to({alpha:nt.label.alpha,scale:{x:R,y:R}},100))}F.getAll().forEach(nt=>nt.start()),C.set("label",{update:F.update.bind(F),stop(){F.getAll().forEach(nt=>nt.stop())}})}function Lt(){C.get("hover")?.stop();let F=new Eo;for(let R of V){let j=1;B!==null&&x&&(j=R.active?1:.2),F.add(new Co(R.gfx,F).to({alpha:j},200))}F.getAll().forEach(R=>R.start()),C.set("hover",{update:F.update.bind(F),stop(){F.getAll().forEach(R=>R.stop())}})}function Nt(){Lt(),yt(),Rt()}C.forEach(F=>F.stop()),C.clear();let At=new Zu;await At.init({width:k,height:N,antialias:!0,autoStart:!1,autoDensity:!0,backgroundAlpha:0,preference:"webgpu",resolution:window.devicePixelRatio,eventMode:"static"}),s.appendChild(At.canvas);let ie=At.stage;ie.interactive=!1;let dr=new it({zIndex:3}),hi=new it({zIndex:2}),Re=new it({zIndex:1});ie.addChild(hi,dr,Re);for(let F of U.nodes){let R=F.id,j=new To({interactive:!1,eventMode:"none",text:F.text,alpha:0,anchor:{x:.5,y:1.2},style:{fontSize:d*15,fill:w["--dark"],fontFamily:w["--bodyFont"]},resolution:window.devicePixelRatio*4});j.scale.set(1/u);let nt=0,Et=R.startsWith("tags/"),id=new Fr({interactive:!0,label:R,eventMode:"static",hitArea:new ai(0,0,A(F)),cursor:"pointer"}).circle(0,0,A(F)).fill({color:Et?w["--light"]:L(F)}).stroke({width:Et?2:0,color:L(F)}).on("pointerover",M1=>{st(M1.target.label),nt=j.alpha,wt||Nt()}).on("pointerleave",()=>{st(null),j.alpha=nt,wt||Nt()});hi.addChild(id),dr.addChild(j);let B1={simulationData:F,gfx:id,label:j,color:L(F),alpha:1,active:!1};V.push(B1)}for(let F of U.links){let R=new Fr({interactive:!1,eventMode:"none"});Re.addChild(R);let j={simulationData:F,gfx:R,color:w["--lightgray"],alpha:1,active:!1};O.push(j)}let Se=zr;if(n)Wt(At.canvas).call(sl().container(()=>At.canvas).subject(()=>U.nodes.find(F=>F.id===B)).on("start",function(R){R.active||M.alphaTarget(1).restart(),R.subject.fx=R.subject.x,R.subject.fy=R.subject.y,R.subject.__initialDragPos={x:R.subject.x,y:R.subject.y,fx:R.subject.fx,fy:R.subject.fy},lt=Date.now(),wt=!0}).on("drag",function(R){let j=R.subject.__initialDragPos;R.subject.fx=j.x+(R.x-j.x)/Se.k,R.subject.fy=j.y+(R.y-j.y)/Se.k}).on("end",function(R){if(R.active||M.alphaTarget(0),R.subject.fx=null,R.subject.fy=null,wt=!1,Date.now()-lt<500){let j=U.nodes.find(Et=>Et.id===R.subject.id),nt=ed(t,j.id);window.spaNavigate(new URL(nt,window.location.toString()))}}));else for(let F of V)F.gfx.on("click",()=>{let R=ed(t,F.simulationData.id);window.spaNavigate(new URL(R,window.location.toString()))});o&&Wt(At.canvas).call(Cl().extent([[0,0],[k,N]]).scaleExtent([.25,4]).on("zoom",({transform:F})=>{Se=F,ie.scale.set(F.k,F.k),ie.position.set(F.x,F.y);let R=F.k*f,j=Math.max((R-1)/3.75,0),nt=V.filter(Et=>Et.active).flatMap(Et=>Et.label);for(let Et of dr.children)nt.includes(Et)||(Et.alpha=j)}));function ke(F){for(let R of V){let{x:j,y:nt}=R.simulationData;!j||!nt||(R.gfx.position.set(j+k/2,nt+N/2),R.label&&R.label.position.set(j+k/2,nt+N/2))}for(let R of O){let j=R.simulationData;R.gfx.clear(),R.gfx.moveTo(j.source.x+k/2,j.source.y+N/2),R.gfx.lineTo(j.target.x+k/2,j.target.y+N/2).stroke({alpha:R.alpha,width:1,color:R.color})}C.forEach(R=>R.update(F)),At.renderer.render(ie),requestAnimationFrame(ke)}let qe=requestAnimationFrame(ke);window.addCleanup(()=>cancelAnimationFrame(qe))}document.addEventListener("nav",async r=>{let t=r.detail.url;$D(fs(t)),await rd("graph-container",t);let e=()=>{rd("graph-container",t)};document.addEventListener("themechange",e),window.addCleanup(()=>{document.removeEventListener("themechange",e)});let i=document.getElementById("global-graph-outer"),s=i?.closest(".sidebar");function n(){let l=C1(window);i?.classList.add("active"),s&&(s.style.zIndex="1"),rd("global-graph-container",l),v1(i,o)}function o(){i?.classList.remove("active"),s&&(s.style.zIndex="")}async function a(l){l.key==="g"&&(l.ctrlKey||l.metaKey)&&!l.shiftKey&&(l.preventDefault(),i?.classList.contains("active")?o():n())}let u=document.getElementById("global-graph-icon");u?.addEventListener("click",n),window.addCleanup(()=>u?.removeEventListener("click",n)),document.addEventListener("keydown",a),window.addCleanup(()=>document.removeEventListener("keydown",a))});\n';var graph_default=`/** - * Layout breakpoints - * $mobile: screen width below this value will use mobile styles - * $desktop: screen width above this value will use desktop styles - * Screen width between $mobile and $desktop width will use the tablet layout. - * assuming mobile < desktop - */ -.graph > h3 { - font-size: 1rem; - margin: 0; -} -.graph > .graph-outer { - border-radius: 5px; - border: 1px solid var(--lightgray); - box-sizing: border-box; - height: 250px; - margin: 0.5em 0; - position: relative; - overflow: hidden; -} -.graph > .graph-outer > #global-graph-icon { - cursor: pointer; - background: none; - border: none; - color: var(--dark); - opacity: 0.5; - width: 24px; - height: 24px; - position: absolute; - padding: 0.2rem; - margin: 0.3rem; - top: 0; - right: 0; - border-radius: 4px; - background-color: transparent; - transition: background-color 0.5s ease; - cursor: pointer; -} -.graph > .graph-outer > #global-graph-icon:hover { - background-color: var(--lightgray); -} -.graph > #global-graph-outer { - position: fixed; - z-index: 9999; - left: 0; - top: 0; - width: 100vw; - height: 100%; - backdrop-filter: blur(4px); - display: none; - overflow: hidden; -} -.graph > #global-graph-outer.active { - display: inline-block; -} -.graph > #global-graph-outer > #global-graph-container { - border: 1px solid var(--lightgray); - background-color: var(--light); - border-radius: 5px; - box-sizing: border-box; - position: fixed; - top: 50%; - left: 50%; - transform: translate(-50%, -50%); - height: 80vh; - width: 80vw; -} -@media all and not ((min-width: 1200px)) { - .graph > #global-graph-outer > #global-graph-container { - width: 90%; - } -} -/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL2hvbWUvYWxhbmQvZ2l0L3F1YXJ0ei9xdWFydHovY29tcG9uZW50cy9zdHlsZXMiLCJzb3VyY2VzIjpbIi4uLy4uL3N0eWxlcy92YXJpYWJsZXMuc2NzcyIsImdyYXBoLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUNHRTtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0U7O0FBS047RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBWkY7SUFhSSIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogTGF5b3V0IGJyZWFrcG9pbnRzXG4gKiAkbW9iaWxlOiBzY3JlZW4gd2lkdGggYmVsb3cgdGhpcyB2YWx1ZSB3aWxsIHVzZSBtb2JpbGUgc3R5bGVzXG4gKiAkZGVza3RvcDogc2NyZWVuIHdpZHRoIGFib3ZlIHRoaXMgdmFsdWUgd2lsbCB1c2UgZGVza3RvcCBzdHlsZXNcbiAqIFNjcmVlbiB3aWR0aCBiZXR3ZWVuICRtb2JpbGUgYW5kICRkZXNrdG9wIHdpZHRoIHdpbGwgdXNlIHRoZSB0YWJsZXQgbGF5b3V0LlxuICogYXNzdW1pbmcgbW9iaWxlIDwgZGVza3RvcFxuICovXG4kYnJlYWtwb2ludHM6IChcbiAgbW9iaWxlOiA4MDBweCxcbiAgZGVza3RvcDogMTIwMHB4LFxuKTtcblxuJG1vYmlsZTogXCIobWF4LXdpZHRoOiAje21hcC1nZXQoJGJyZWFrcG9pbnRzLCBtb2JpbGUpfSlcIjtcbiR0YWJsZXQ6IFwiKG1pbi13aWR0aDogI3ttYXAtZ2V0KCRicmVha3BvaW50cywgbW9iaWxlKX0pIGFuZCAobWF4LXdpZHRoOiAje21hcC1nZXQoJGJyZWFrcG9pbnRzLCBkZXNrdG9wKX0pXCI7XG4kZGVza3RvcDogXCIobWluLXdpZHRoOiAje21hcC1nZXQoJGJyZWFrcG9pbnRzLCBkZXNrdG9wKX0pXCI7XG5cbiRwYWdlV2lkdGg6ICN7bWFwLWdldCgkYnJlYWtwb2ludHMsIG1vYmlsZSl9O1xuJHNpZGVQYW5lbFdpZHRoOiAzMjBweDsgLy8zODBweDtcbiR0b3BTcGFjaW5nOiA2cmVtO1xuJGJvbGRXZWlnaHQ6IDcwMDtcbiRzZW1pQm9sZFdlaWdodDogNjAwO1xuJG5vcm1hbFdlaWdodDogNDAwO1xuXG4kbW9iaWxlR3JpZDogKFxuICB0ZW1wbGF0ZVJvd3M6IFwiYXV0byBhdXRvIGF1dG8gYXV0byBhdXRvXCIsXG4gIHRlbXBsYXRlQ29sdW1uczogXCJhdXRvXCIsXG4gIHJvd0dhcDogXCI1cHhcIixcbiAgY29sdW1uR2FwOiBcIjVweFwiLFxuICB0ZW1wbGF0ZUFyZWFzOlxuICAgICdcImdyaWQtc2lkZWJhci1sZWZ0XCJcXFxuICAgICAgXCJncmlkLWhlYWRlclwiXFxcbiAgICAgIFwiZ3JpZC1jZW50ZXJcIlxcXG4gICAgICBcImdyaWQtc2lkZWJhci1yaWdodFwiXFxcbiAgICAgIFwiZ3JpZC1mb290ZXJcIicsXG4pO1xuJHRhYmxldEdyaWQ6IChcbiAgdGVtcGxhdGVSb3dzOiBcImF1dG8gYXV0byBhdXRvIGF1dG9cIixcbiAgdGVtcGxhdGVDb2x1bW5zOiBcIiN7JHNpZGVQYW5lbFdpZHRofSBhdXRvXCIsXG4gIHJvd0dhcDogXCI1cHhcIixcbiAgY29sdW1uR2FwOiBcIjVweFwiLFxuICB0ZW1wbGF0ZUFyZWFzOlxuICAgICdcImdyaWQtc2lkZWJhci1sZWZ0IGdyaWQtaGVhZGVyXCJcXFxuICAgICAgXCJncmlkLXNpZGViYXItbGVmdCBncmlkLWNlbnRlclwiXFxcbiAgICAgIFwiZ3JpZC1zaWRlYmFyLWxlZnQgZ3JpZC1zaWRlYmFyLXJpZ2h0XCJcXFxuICAgICAgXCJncmlkLXNpZGViYXItbGVmdCBncmlkLWZvb3RlclwiJyxcbik7XG4kZGVza3RvcEdyaWQ6IChcbiAgdGVtcGxhdGVSb3dzOiBcImF1dG8gYXV0byBhdXRvXCIsXG4gIHRlbXBsYXRlQ29sdW1uczogXCIjeyRzaWRlUGFuZWxXaWR0aH0gYXV0byAjeyRzaWRlUGFuZWxXaWR0aH1cIixcbiAgcm93R2FwOiBcIjVweFwiLFxuICBjb2x1bW5HYXA6IFwiNXB4XCIsXG4gIHRlbXBsYXRlQXJlYXM6XG4gICAgJ1wiZ3JpZC1zaWRlYmFyLWxlZnQgZ3JpZC1oZWFkZXIgZ3JpZC1zaWRlYmFyLXJpZ2h0XCJcXFxuICAgICAgXCJncmlkLXNpZGViYXItbGVmdCBncmlkLWNlbnRlciBncmlkLXNpZGViYXItcmlnaHRcIlxcXG4gICAgICBcImdyaWQtc2lkZWJhci1sZWZ0IGdyaWQtZm9vdGVyIGdyaWQtc2lkZWJhci1yaWdodFwiJyxcbik7XG4iLCJAdXNlIFwiLi4vLi4vc3R5bGVzL3ZhcmlhYmxlcy5zY3NzXCIgYXMgKjtcblxuLmdyYXBoIHtcbiAgJiA+IGgzIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgJiA+IC5ncmFwaC1vdXRlciB7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWxpZ2h0Z3JheSk7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBoZWlnaHQ6IDI1MHB4O1xuICAgIG1hcmdpbjogMC41ZW0gMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICYgPiAjZ2xvYmFsLWdyYXBoLWljb24ge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGNvbG9yOiB2YXIoLS1kYXJrKTtcbiAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgIHdpZHRoOiAyNHB4O1xuICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcGFkZGluZzogMC4ycmVtO1xuICAgICAgbWFyZ2luOiAwLjNyZW07XG4gICAgICB0b3A6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjVzIGVhc2U7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGlnaHRncmF5KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmID4gI2dsb2JhbC1ncmFwaC1vdXRlciB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHotaW5kZXg6IDk5OTk7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMHZ3O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoNHB4KTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgJiA+ICNnbG9iYWwtZ3JhcGgtY29udGFpbmVyIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWxpZ2h0Z3JheSk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1saWdodCk7XG4gICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgIGhlaWdodDogODB2aDtcbiAgICAgIHdpZHRoOiA4MHZ3O1xuXG4gICAgICBAbWVkaWEgYWxsIGFuZCBub3QgKCRkZXNrdG9wKSB7XG4gICAgICAgIHdpZHRoOiA5MCU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iXX0= */`;import{jsx as jsx24,jsxs as jsxs13}from"preact/jsx-runtime";var defaultOptions15={localGraph:{drag:!0,zoom:!0,depth:1,scale:1.1,repelForce:.5,centerForce:.3,linkDistance:30,fontSize:.6,opacityScale:1,showTags:!0,removeTags:[],focusOnHover:!1},globalGraph:{drag:!0,zoom:!0,depth:-1,scale:.9,repelForce:.5,centerForce:.3,linkDistance:30,fontSize:.6,opacityScale:1,showTags:!0,removeTags:[],focusOnHover:!0}},Graph_default=__name(opts=>{let Graph=__name(({displayClass,cfg})=>{let localGraph={...defaultOptions15.localGraph,...opts?.localGraph},globalGraph={...defaultOptions15.globalGraph,...opts?.globalGraph};return jsxs13("div",{class:classNames(displayClass,"graph"),children:[jsx24("h3",{children:i18n(cfg.locale).components.graph.title}),jsxs13("div",{class:"graph-outer",children:[jsx24("div",{id:"graph-container","data-cfg":JSON.stringify(localGraph)}),jsx24("button",{id:"global-graph-icon","aria-label":"Global Graph",children:jsx24("svg",{version:"1.1",xmlns:"http://www.w3.org/2000/svg",xmlnsXlink:"http://www.w3.org/1999/xlink",x:"0px",y:"0px",viewBox:"0 0 55 55",fill:"currentColor",xmlSpace:"preserve",children:jsx24("path",{d:`M49,0c-3.309,0-6,2.691-6,6c0,1.035,0.263,2.009,0.726,2.86l-9.829,9.829C32.542,17.634,30.846,17,29,17 - s-3.542,0.634-4.898,1.688l-7.669-7.669C16.785,10.424,17,9.74,17,9c0-2.206-1.794-4-4-4S9,6.794,9,9s1.794,4,4,4 - c0.74,0,1.424-0.215,2.019-0.567l7.669,7.669C21.634,21.458,21,23.154,21,25s0.634,3.542,1.688,4.897L10.024,42.562 - C8.958,41.595,7.549,41,6,41c-3.309,0-6,2.691-6,6s2.691,6,6,6s6-2.691,6-6c0-1.035-0.263-2.009-0.726-2.86l12.829-12.829 - c1.106,0.86,2.44,1.436,3.898,1.619v10.16c-2.833,0.478-5,2.942-5,5.91c0,3.309,2.691,6,6,6s6-2.691,6-6c0-2.967-2.167-5.431-5-5.91 - v-10.16c1.458-0.183,2.792-0.759,3.898-1.619l7.669,7.669C41.215,39.576,41,40.26,41,41c0,2.206,1.794,4,4,4s4-1.794,4-4 - s-1.794-4-4-4c-0.74,0-1.424,0.215-2.019,0.567l-7.669-7.669C36.366,28.542,37,26.846,37,25s-0.634-3.542-1.688-4.897l9.665-9.665 - C46.042,11.405,47.451,12,49,12c3.309,0,6-2.691,6-6S52.309,0,49,0z M11,9c0-1.103,0.897-2,2-2s2,0.897,2,2s-0.897,2-2,2 - S11,10.103,11,9z M6,51c-2.206,0-4-1.794-4-4s1.794-4,4-4s4,1.794,4,4S8.206,51,6,51z M33,49c0,2.206-1.794,4-4,4s-4-1.794-4-4 - s1.794-4,4-4S33,46.794,33,49z M29,31c-3.309,0-6-2.691-6-6s2.691-6,6-6s6,2.691,6,6S32.309,31,29,31z M47,41c0,1.103-0.897,2-2,2 - s-2-0.897-2-2s0.897-2,2-2S47,39.897,47,41z M49,10c-2.206,0-4-1.794-4-4s1.794-4,4-4s4,1.794,4,4S51.206,10,49,10z`})})})]}),jsx24("div",{id:"global-graph-outer",children:jsx24("div",{id:"global-graph-container","data-cfg":JSON.stringify(globalGraph)})})]})},"Graph");return Graph.css=graph_default,Graph.afterDOMLoaded=graph_inline_default,Graph},"default");var backlinks_default=`/** - * Layout breakpoints - * $mobile: screen width below this value will use mobile styles - * $desktop: screen width above this value will use desktop styles - * Screen width between $mobile and $desktop width will use the tablet layout. - * assuming mobile < desktop - */ -.backlinks { - flex-direction: column; - /*&:after { - pointer-events: none; - content: ""; - width: 100%; - height: 50px; - position: absolute; - left: 0; - bottom: 0; - opacity: 1; - transition: opacity 0.3s ease; - background: linear-gradient(transparent 0px, var(--light)); - }*/ -} -.backlinks > h3 { - font-size: 1rem; - margin: 0; -} -.backlinks > ul { - list-style: none; - padding: 0; - margin: 0.5rem 0; -} -.backlinks > ul > li > a { - background-color: transparent; -} -.backlinks > .overflow { - height: auto; -} -.backlinks > .overflow:after { - display: none; -} -@media all and not ((min-width: 1200px)) { - .backlinks > .overflow { - height: 250px; - } -} -/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL2hvbWUvYWxhbmQvZ2l0L3F1YXJ0ei9xdWFydHovY29tcG9uZW50cy9zdHlsZXMiLCJzb3VyY2VzIjpbIi4uLy4uL3N0eWxlcy92YXJpYWJsZXMuc2NzcyIsImJhY2tsaW5rcy5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FDRUE7RUFDRTtBQUNBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTs7QUFhQTtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0U7RUFDRTs7QUFLTjtFQUlFOztBQUhBO0VBQ0U7O0FBR0Y7RUFMRjtJQU1JIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBMYXlvdXQgYnJlYWtwb2ludHNcbiAqICRtb2JpbGU6IHNjcmVlbiB3aWR0aCBiZWxvdyB0aGlzIHZhbHVlIHdpbGwgdXNlIG1vYmlsZSBzdHlsZXNcbiAqICRkZXNrdG9wOiBzY3JlZW4gd2lkdGggYWJvdmUgdGhpcyB2YWx1ZSB3aWxsIHVzZSBkZXNrdG9wIHN0eWxlc1xuICogU2NyZWVuIHdpZHRoIGJldHdlZW4gJG1vYmlsZSBhbmQgJGRlc2t0b3Agd2lkdGggd2lsbCB1c2UgdGhlIHRhYmxldCBsYXlvdXQuXG4gKiBhc3N1bWluZyBtb2JpbGUgPCBkZXNrdG9wXG4gKi9cbiRicmVha3BvaW50czogKFxuICBtb2JpbGU6IDgwMHB4LFxuICBkZXNrdG9wOiAxMjAwcHgsXG4pO1xuXG4kbW9iaWxlOiBcIihtYXgtd2lkdGg6ICN7bWFwLWdldCgkYnJlYWtwb2ludHMsIG1vYmlsZSl9KVwiO1xuJHRhYmxldDogXCIobWluLXdpZHRoOiAje21hcC1nZXQoJGJyZWFrcG9pbnRzLCBtb2JpbGUpfSkgYW5kIChtYXgtd2lkdGg6ICN7bWFwLWdldCgkYnJlYWtwb2ludHMsIGRlc2t0b3ApfSlcIjtcbiRkZXNrdG9wOiBcIihtaW4td2lkdGg6ICN7bWFwLWdldCgkYnJlYWtwb2ludHMsIGRlc2t0b3ApfSlcIjtcblxuJHBhZ2VXaWR0aDogI3ttYXAtZ2V0KCRicmVha3BvaW50cywgbW9iaWxlKX07XG4kc2lkZVBhbmVsV2lkdGg6IDMyMHB4OyAvLzM4MHB4O1xuJHRvcFNwYWNpbmc6IDZyZW07XG4kYm9sZFdlaWdodDogNzAwO1xuJHNlbWlCb2xkV2VpZ2h0OiA2MDA7XG4kbm9ybWFsV2VpZ2h0OiA0MDA7XG5cbiRtb2JpbGVHcmlkOiAoXG4gIHRlbXBsYXRlUm93czogXCJhdXRvIGF1dG8gYXV0byBhdXRvIGF1dG9cIixcbiAgdGVtcGxhdGVDb2x1bW5zOiBcImF1dG9cIixcbiAgcm93R2FwOiBcIjVweFwiLFxuICBjb2x1bW5HYXA6IFwiNXB4XCIsXG4gIHRlbXBsYXRlQXJlYXM6XG4gICAgJ1wiZ3JpZC1zaWRlYmFyLWxlZnRcIlxcXG4gICAgICBcImdyaWQtaGVhZGVyXCJcXFxuICAgICAgXCJncmlkLWNlbnRlclwiXFxcbiAgICAgIFwiZ3JpZC1zaWRlYmFyLXJpZ2h0XCJcXFxuICAgICAgXCJncmlkLWZvb3RlclwiJyxcbik7XG4kdGFibGV0R3JpZDogKFxuICB0ZW1wbGF0ZVJvd3M6IFwiYXV0byBhdXRvIGF1dG8gYXV0b1wiLFxuICB0ZW1wbGF0ZUNvbHVtbnM6IFwiI3skc2lkZVBhbmVsV2lkdGh9IGF1dG9cIixcbiAgcm93R2FwOiBcIjVweFwiLFxuICBjb2x1bW5HYXA6IFwiNXB4XCIsXG4gIHRlbXBsYXRlQXJlYXM6XG4gICAgJ1wiZ3JpZC1zaWRlYmFyLWxlZnQgZ3JpZC1oZWFkZXJcIlxcXG4gICAgICBcImdyaWQtc2lkZWJhci1sZWZ0IGdyaWQtY2VudGVyXCJcXFxuICAgICAgXCJncmlkLXNpZGViYXItbGVmdCBncmlkLXNpZGViYXItcmlnaHRcIlxcXG4gICAgICBcImdyaWQtc2lkZWJhci1sZWZ0IGdyaWQtZm9vdGVyXCInLFxuKTtcbiRkZXNrdG9wR3JpZDogKFxuICB0ZW1wbGF0ZVJvd3M6IFwiYXV0byBhdXRvIGF1dG9cIixcbiAgdGVtcGxhdGVDb2x1bW5zOiBcIiN7JHNpZGVQYW5lbFdpZHRofSBhdXRvICN7JHNpZGVQYW5lbFdpZHRofVwiLFxuICByb3dHYXA6IFwiNXB4XCIsXG4gIGNvbHVtbkdhcDogXCI1cHhcIixcbiAgdGVtcGxhdGVBcmVhczpcbiAgICAnXCJncmlkLXNpZGViYXItbGVmdCBncmlkLWhlYWRlciBncmlkLXNpZGViYXItcmlnaHRcIlxcXG4gICAgICBcImdyaWQtc2lkZWJhci1sZWZ0IGdyaWQtY2VudGVyIGdyaWQtc2lkZWJhci1yaWdodFwiXFxcbiAgICAgIFwiZ3JpZC1zaWRlYmFyLWxlZnQgZ3JpZC1mb290ZXIgZ3JpZC1zaWRlYmFyLXJpZ2h0XCInLFxuKTtcbiIsIkB1c2UgXCIuLi8uLi9zdHlsZXMvdmFyaWFibGVzLnNjc3NcIiBhcyAqO1xuXG4uYmFja2xpbmtzIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgLyomOmFmdGVyIHtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZTtcbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0cmFuc3BhcmVudCAwcHgsIHZhcigtLWxpZ2h0KSk7XG4gICAgfSovXG5cbiAgJiA+IGgzIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgJiA+IHVsIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwLjVyZW0gMDtcblxuICAgICYgPiBsaSB7XG4gICAgICAmID4gYSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYgPiAub3ZlcmZsb3cge1xuICAgICY6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIEBtZWRpYSBhbGwgYW5kIG5vdCAoJGRlc2t0b3ApIHtcbiAgICAgIGhlaWdodDogMjUwcHg7XG4gICAgfVxuICB9XG59XG4iXX0= */`;import{jsx as jsx25,jsxs as jsxs14}from"preact/jsx-runtime";var defaultOptions16={hideWhenEmpty:!0},Backlinks_default=__name(opts=>{let options2={...defaultOptions16,...opts},Backlinks=__name(({fileData,allFiles,displayClass,cfg})=>{let slug=simplifySlug(fileData.slug),backlinkFiles=allFiles.filter(file=>file.links?.includes(slug));return options2.hideWhenEmpty&&backlinkFiles.length==0?null:jsxs14("div",{class:classNames(displayClass,"backlinks"),children:[jsx25("h3",{children:i18n(cfg.locale).components.backlinks.title}),jsx25("ul",{class:"overflow",children:backlinkFiles.length>0?backlinkFiles.map(f=>jsx25("li",{children:jsx25("a",{href:resolveRelative(fileData.slug,f.slug),class:"internal",children:f.frontmatter?.title})})):jsx25("li",{children:i18n(cfg.locale).components.backlinks.noBacklinksFound})})]})},"Backlinks");return Backlinks.css=backlinks_default,Backlinks},"default");var search_default=`/** - * Layout breakpoints - * $mobile: screen width below this value will use mobile styles - * $desktop: screen width above this value will use desktop styles - * Screen width between $mobile and $desktop width will use the tablet layout. - * assuming mobile < desktop - */ -.search { - min-width: fit-content; - max-width: 14rem; -} -@media all and ((max-width: 800px)) { - .search { - flex-grow: 0.3; - } -} -.search > .search-button { - background-color: var(--lightgray); - border: none; - border-radius: 4px; - font-family: inherit; - font-size: inherit; - height: 2rem; - padding: 0; - display: flex; - align-items: center; - text-align: inherit; - cursor: pointer; - white-space: nowrap; - width: 100%; - justify-content: space-between; -} -.search > .search-button > p { - display: inline; - padding: 0 1rem; -} -.search > .search-button svg { - cursor: pointer; - width: 18px; - min-width: 18px; - margin: 0 0.5rem; -} -.search > .search-button svg .search-path { - stroke: var(--darkgray); - stroke-width: 2px; - transition: stroke 0.5s ease; -} -.search > #search-container { - position: fixed; - contain: layout; - z-index: 999; - left: 0; - top: 0; - width: 100vw; - height: 100vh; - overflow-y: auto; - display: none; - backdrop-filter: blur(4px); -} -.search > #search-container.active { - display: inline-block; -} -.search > #search-container > #search-space { - width: 65%; - margin-top: 12vh; - margin-left: auto; - margin-right: auto; -} -@media all and not ((min-width: 1200px)) { - .search > #search-container > #search-space { - width: 90%; - } -} -.search > #search-container > #search-space > * { - width: 100%; - border-radius: 7px; - background: var(--light); - box-shadow: 0 14px 50px rgba(27, 33, 48, 0.12), 0 10px 30px rgba(27, 33, 48, 0.16); - margin-bottom: 2em; -} -.search > #search-container > #search-space > input { - box-sizing: border-box; - padding: 0.5em 1em; - font-family: var(--bodyFont); - color: var(--dark); - font-size: 1.1em; - border: 1px solid var(--lightgray); -} -.search > #search-container > #search-space > input:focus { - outline: none; -} -.search > #search-container > #search-space > #search-layout { - display: none; - flex-direction: row; - border: 1px solid var(--lightgray); - flex: 0 0 100%; - box-sizing: border-box; -} -.search > #search-container > #search-space > #search-layout.display-results { - display: flex; -} -.search > #search-container > #search-space > #search-layout[data-preview] > #results-container { - flex: 0 0 min(30%, 450px); -} -@media all and not ((max-width: 800px)) { - .search > #search-container > #search-space > #search-layout[data-preview] .result-card > p.preview { - display: none; - } - .search > #search-container > #search-space > #search-layout[data-preview] > div:first-child { - border-right: 1px solid var(--lightgray); - border-top-right-radius: unset; - border-bottom-right-radius: unset; - } - .search > #search-container > #search-space > #search-layout[data-preview] > div:last-child { - border-top-left-radius: unset; - border-bottom-left-radius: unset; - } -} -.search > #search-container > #search-space > #search-layout > div { - height: 63vh; - border-radius: 5px; -} -@media all and ((max-width: 800px)) { - .search > #search-container > #search-space > #search-layout > #preview-container { - display: none !important; - } - .search > #search-container > #search-space > #search-layout[data-preview] > #results-container { - width: 100%; - height: auto; - flex: 0 0 100%; - } -} -.search > #search-container > #search-space > #search-layout .highlight { - background: color-mix(in srgb, var(--tertiary) 60%, rgba(255, 255, 255, 0)); - border-radius: 5px; - scroll-margin-top: 2rem; -} -.search > #search-container > #search-space > #search-layout > #preview-container { - flex-grow: 1; - display: block; - overflow: hidden; - font-family: inherit; - color: var(--dark); - line-height: 1.5em; - font-weight: 400; - overflow-y: auto; - padding: 0 2rem; -} -.search > #search-container > #search-space > #search-layout > #preview-container .preview-inner { - margin: 0 auto; - width: min(800px, 100%); -} -.search > #search-container > #search-space > #search-layout > #preview-container a[role=anchor] { - background-color: transparent; -} -.search > #search-container > #search-space > #search-layout > #results-container { - overflow-y: auto; -} -.search > #search-container > #search-space > #search-layout > #results-container .result-card { - overflow: hidden; - padding: 1em; - cursor: pointer; - transition: background 0.2s ease; - border-bottom: 1px solid var(--lightgray); - width: 100%; - display: block; - box-sizing: border-box; - font-family: inherit; - font-size: 100%; - line-height: 1.15; - margin: 0; - text-transform: none; - text-align: left; - outline: none; - font-weight: inherit; -} -.search > #search-container > #search-space > #search-layout > #results-container .result-card:hover, .search > #search-container > #search-space > #search-layout > #results-container .result-card:focus, .search > #search-container > #search-space > #search-layout > #results-container .result-card.focus { - background: var(--lightgray); -} -.search > #search-container > #search-space > #search-layout > #results-container .result-card > h3 { - margin: 0; -} -.search > #search-container > #search-space > #search-layout > #results-container .result-card > ul.tags { - margin-top: 0.45rem; - margin-bottom: 0; -} -.search > #search-container > #search-space > #search-layout > #results-container .result-card > ul > li > p { - border-radius: 8px; - background-color: var(--highlight); - padding: 0.2rem 0.4rem; - margin: 0 0.1rem; - line-height: 1.4rem; - font-weight: 700; - color: var(--secondary); -} -.search > #search-container > #search-space > #search-layout > #results-container .result-card > ul > li > p.match-tag { - color: var(--tertiary); -} -.search > #search-container > #search-space > #search-layout > #results-container .result-card > p { - margin-bottom: 0; -} -/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL2hvbWUvYWxhbmQvZ2l0L3F1YXJ0ei9xdWFydHovY29tcG9uZW50cy9zdHlsZXMiLCJzb3VyY2VzIjpbIi4uLy4uL3N0eWxlcy92YXJpYWJsZXMuc2NzcyIsInNlYXJjaC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FDRUE7RUFDRTtFQUNBOztBQUNBO0VBSEY7SUFJSTs7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0U7RUFDQTtFQUNBOztBQUtOO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBTkY7SUFPSTs7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQSxZQUNFO0VBRUY7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDRTs7QUFJSjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBRUk7SUFDRTs7RUFJQTtJQUNFO0lBQ0E7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7OztBQU1SO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0lBQ0U7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7OztBQUlKO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsYUQxSUs7RUMySUw7RUFDQTs7QUFFQTtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTs7QUFJSjtFQUNFOztBQUVBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFHRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxhRHRNRDtFQ3VNQzs7QUFFQTtFQUNFOztBQUlKO0VBQ0UiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIExheW91dCBicmVha3BvaW50c1xuICogJG1vYmlsZTogc2NyZWVuIHdpZHRoIGJlbG93IHRoaXMgdmFsdWUgd2lsbCB1c2UgbW9iaWxlIHN0eWxlc1xuICogJGRlc2t0b3A6IHNjcmVlbiB3aWR0aCBhYm92ZSB0aGlzIHZhbHVlIHdpbGwgdXNlIGRlc2t0b3Agc3R5bGVzXG4gKiBTY3JlZW4gd2lkdGggYmV0d2VlbiAkbW9iaWxlIGFuZCAkZGVza3RvcCB3aWR0aCB3aWxsIHVzZSB0aGUgdGFibGV0IGxheW91dC5cbiAqIGFzc3VtaW5nIG1vYmlsZSA8IGRlc2t0b3BcbiAqL1xuJGJyZWFrcG9pbnRzOiAoXG4gIG1vYmlsZTogODAwcHgsXG4gIGRlc2t0b3A6IDEyMDBweCxcbik7XG5cbiRtb2JpbGU6IFwiKG1heC13aWR0aDogI3ttYXAtZ2V0KCRicmVha3BvaW50cywgbW9iaWxlKX0pXCI7XG4kdGFibGV0OiBcIihtaW4td2lkdGg6ICN7bWFwLWdldCgkYnJlYWtwb2ludHMsIG1vYmlsZSl9KSBhbmQgKG1heC13aWR0aDogI3ttYXAtZ2V0KCRicmVha3BvaW50cywgZGVza3RvcCl9KVwiO1xuJGRlc2t0b3A6IFwiKG1pbi13aWR0aDogI3ttYXAtZ2V0KCRicmVha3BvaW50cywgZGVza3RvcCl9KVwiO1xuXG4kcGFnZVdpZHRoOiAje21hcC1nZXQoJGJyZWFrcG9pbnRzLCBtb2JpbGUpfTtcbiRzaWRlUGFuZWxXaWR0aDogMzIwcHg7IC8vMzgwcHg7XG4kdG9wU3BhY2luZzogNnJlbTtcbiRib2xkV2VpZ2h0OiA3MDA7XG4kc2VtaUJvbGRXZWlnaHQ6IDYwMDtcbiRub3JtYWxXZWlnaHQ6IDQwMDtcblxuJG1vYmlsZUdyaWQ6IChcbiAgdGVtcGxhdGVSb3dzOiBcImF1dG8gYXV0byBhdXRvIGF1dG8gYXV0b1wiLFxuICB0ZW1wbGF0ZUNvbHVtbnM6IFwiYXV0b1wiLFxuICByb3dHYXA6IFwiNXB4XCIsXG4gIGNvbHVtbkdhcDogXCI1cHhcIixcbiAgdGVtcGxhdGVBcmVhczpcbiAgICAnXCJncmlkLXNpZGViYXItbGVmdFwiXFxcbiAgICAgIFwiZ3JpZC1oZWFkZXJcIlxcXG4gICAgICBcImdyaWQtY2VudGVyXCJcXFxuICAgICAgXCJncmlkLXNpZGViYXItcmlnaHRcIlxcXG4gICAgICBcImdyaWQtZm9vdGVyXCInLFxuKTtcbiR0YWJsZXRHcmlkOiAoXG4gIHRlbXBsYXRlUm93czogXCJhdXRvIGF1dG8gYXV0byBhdXRvXCIsXG4gIHRlbXBsYXRlQ29sdW1uczogXCIjeyRzaWRlUGFuZWxXaWR0aH0gYXV0b1wiLFxuICByb3dHYXA6IFwiNXB4XCIsXG4gIGNvbHVtbkdhcDogXCI1cHhcIixcbiAgdGVtcGxhdGVBcmVhczpcbiAgICAnXCJncmlkLXNpZGViYXItbGVmdCBncmlkLWhlYWRlclwiXFxcbiAgICAgIFwiZ3JpZC1zaWRlYmFyLWxlZnQgZ3JpZC1jZW50ZXJcIlxcXG4gICAgICBcImdyaWQtc2lkZWJhci1sZWZ0IGdyaWQtc2lkZWJhci1yaWdodFwiXFxcbiAgICAgIFwiZ3JpZC1zaWRlYmFyLWxlZnQgZ3JpZC1mb290ZXJcIicsXG4pO1xuJGRlc2t0b3BHcmlkOiAoXG4gIHRlbXBsYXRlUm93czogXCJhdXRvIGF1dG8gYXV0b1wiLFxuICB0ZW1wbGF0ZUNvbHVtbnM6IFwiI3skc2lkZVBhbmVsV2lkdGh9IGF1dG8gI3skc2lkZVBhbmVsV2lkdGh9XCIsXG4gIHJvd0dhcDogXCI1cHhcIixcbiAgY29sdW1uR2FwOiBcIjVweFwiLFxuICB0ZW1wbGF0ZUFyZWFzOlxuICAgICdcImdyaWQtc2lkZWJhci1sZWZ0IGdyaWQtaGVhZGVyIGdyaWQtc2lkZWJhci1yaWdodFwiXFxcbiAgICAgIFwiZ3JpZC1zaWRlYmFyLWxlZnQgZ3JpZC1jZW50ZXIgZ3JpZC1zaWRlYmFyLXJpZ2h0XCJcXFxuICAgICAgXCJncmlkLXNpZGViYXItbGVmdCBncmlkLWZvb3RlciBncmlkLXNpZGViYXItcmlnaHRcIicsXG4pO1xuIiwiQHVzZSBcIi4uLy4uL3N0eWxlcy92YXJpYWJsZXMuc2Nzc1wiIGFzICo7XG5cbi5zZWFyY2gge1xuICBtaW4td2lkdGg6IGZpdC1jb250ZW50O1xuICBtYXgtd2lkdGg6IDE0cmVtO1xuICBAbWVkaWEgYWxsIGFuZCAoJG1vYmlsZSkge1xuICAgIGZsZXgtZ3JvdzogMC4zO1xuICB9XG5cbiAgJiA+IC5zZWFyY2gtYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1saWdodGdyYXkpO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIGhlaWdodDogMnJlbTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB0ZXh0LWFsaWduOiBpbmhlcml0O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAgICYgPiBwIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgIHBhZGRpbmc6IDAgMXJlbTtcbiAgICB9XG5cbiAgICAmIHN2ZyB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICB3aWR0aDogMThweDtcbiAgICAgIG1pbi13aWR0aDogMThweDtcbiAgICAgIG1hcmdpbjogMCAwLjVyZW07XG5cbiAgICAgIC5zZWFyY2gtcGF0aCB7XG4gICAgICAgIHN0cm9rZTogdmFyKC0tZGFya2dyYXkpO1xuICAgICAgICBzdHJva2Utd2lkdGg6IDJweDtcbiAgICAgICAgdHJhbnNpdGlvbjogc3Ryb2tlIDAuNXMgZWFzZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmID4gI3NlYXJjaC1jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBjb250YWluOiBsYXlvdXQ7XG4gICAgei1pbmRleDogOTk5O1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxMDB2dztcbiAgICBoZWlnaHQ6IDEwMHZoO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoNHB4KTtcblxuICAgICYuYWN0aXZlIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgICAmID4gI3NlYXJjaC1zcGFjZSB7XG4gICAgICB3aWR0aDogNjUlO1xuICAgICAgbWFyZ2luLXRvcDogMTJ2aDtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuXG4gICAgICBAbWVkaWEgYWxsIGFuZCBub3QgKCRkZXNrdG9wKSB7XG4gICAgICAgIHdpZHRoOiA5MCU7XG4gICAgICB9XG5cbiAgICAgICYgPiAqIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDdweDtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tbGlnaHQpO1xuICAgICAgICBib3gtc2hhZG93OlxuICAgICAgICAgIDAgMTRweCA1MHB4IHJnYmEoMjcsIDMzLCA0OCwgMC4xMiksXG4gICAgICAgICAgMCAxMHB4IDMwcHggcmdiYSgyNywgMzMsIDQ4LCAwLjE2KTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMmVtO1xuICAgICAgfVxuXG4gICAgICAmID4gaW5wdXQge1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBwYWRkaW5nOiAwLjVlbSAxZW07XG4gICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1ib2R5Rm9udCk7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1kYXJrKTtcbiAgICAgICAgZm9udC1zaXplOiAxLjFlbTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tbGlnaHRncmF5KTtcblxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYgPiAjc2VhcmNoLWxheW91dCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWxpZ2h0Z3JheSk7XG4gICAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXG4gICAgICAgICYuZGlzcGxheS1yZXN1bHRzIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICB9XG5cbiAgICAgICAgJltkYXRhLXByZXZpZXddID4gI3Jlc3VsdHMtY29udGFpbmVyIHtcbiAgICAgICAgICBmbGV4OiAwIDAgbWluKDMwJSwgNDUwcHgpO1xuICAgICAgICB9XG5cbiAgICAgICAgQG1lZGlhIGFsbCBhbmQgbm90ICgkbW9iaWxlKSB7XG4gICAgICAgICAgJltkYXRhLXByZXZpZXddIHtcbiAgICAgICAgICAgICYgLnJlc3VsdC1jYXJkID4gcC5wcmV2aWV3IHtcbiAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJiA+IGRpdiB7XG4gICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHZhcigtLWxpZ2h0Z3JheSk7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHVuc2V0O1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB1bnNldDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdW5zZXQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdW5zZXQ7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmID4gZGl2IHtcbiAgICAgICAgICBoZWlnaHQ6IGNhbGMoNzV2aCAtIDEydmgpO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBtZWRpYSBhbGwgYW5kICgkbW9iaWxlKSB7XG4gICAgICAgICAgJiA+ICNwcmV2aWV3LWNvbnRhaW5lciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJltkYXRhLXByZXZpZXddID4gI3Jlc3VsdHMtY29udGFpbmVyIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJiAuaGlnaGxpZ2h0IHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBjb2xvci1taXgoaW4gc3JnYiwgdmFyKC0tdGVydGlhcnkpIDYwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSk7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgIHNjcm9sbC1tYXJnaW4tdG9wOiAycmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJiA+ICNwcmV2aWV3LWNvbnRhaW5lciB7XG4gICAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWRhcmspO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbiAgICAgICAgICBmb250LXdlaWdodDogJG5vcm1hbFdlaWdodDtcbiAgICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgICAgIHBhZGRpbmc6IDAgMnJlbTtcblxuICAgICAgICAgICYgLnByZXZpZXctaW5uZXIge1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICB3aWR0aDogbWluKCRwYWdlV2lkdGgsIDEwMCUpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGFbcm9sZT1cImFuY2hvclwiXSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmID4gI3Jlc3VsdHMtY29udGFpbmVyIHtcbiAgICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuXG4gICAgICAgICAgJiAucmVzdWx0LWNhcmQge1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIHBhZGRpbmc6IDFlbTtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4ycyBlYXNlO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWxpZ2h0Z3JheSk7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcblxuICAgICAgICAgICAgLy8gbm9ybWFsaXplIGNhcmQgcHJvcHNcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMDAlO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG5cbiAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAmOmZvY3VzLFxuICAgICAgICAgICAgJi5mb2N1cyB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWxpZ2h0Z3JheSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYgPiBoMyB7XG4gICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJiA+IHVsLnRhZ3Mge1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwLjQ1cmVtO1xuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmID4gdWwgPiBsaSA+IHAge1xuICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWhpZ2hsaWdodCk7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDAuMnJlbSAwLjRyZW07XG4gICAgICAgICAgICAgIG1hcmdpbjogMCAwLjFyZW07XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjRyZW07XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkYm9sZFdlaWdodDtcbiAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXNlY29uZGFyeSk7XG5cbiAgICAgICAgICAgICAgJi5tYXRjaC10YWcge1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXJ0aWFyeSk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJiA+IHAge1xuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIl19 */`;var search_inline_default='var Kt=Object.create;var Ft=Object.defineProperty;var Gt=Object.getOwnPropertyDescriptor;var Jt=Object.getOwnPropertyNames;var Vt=Object.getPrototypeOf,Zt=Object.prototype.hasOwnProperty;var ht=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports);var bt=(t,e,u,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of Jt(e))!Zt.call(t,r)&&r!==u&&Ft(t,r,{get:()=>e[r],enumerable:!(n=Gt(e,r))||n.enumerable});return t};var Qt=(t,e,u)=>(u=t!=null?Kt(Vt(t)):{},bt(e||!t||!t.__esModule?Ft(u,"default",{value:t,enumerable:!0}):u,t));var ft=ht(()=>{});var It=ht((Ue,Ot)=>{"use strict";Ot.exports=ge;function q(t){return t instanceof Buffer?Buffer.from(t):new t.constructor(t.buffer.slice(),t.byteOffset,t.length)}function ge(t){if(t=t||{},t.circles)return de(t);let e=new Map;if(e.set(Date,s=>new Date(s)),e.set(Map,(s,l)=>new Map(n(Array.from(s),l))),e.set(Set,(s,l)=>new Set(n(Array.from(s),l))),t.constructorHandlers)for(let s of t.constructorHandlers)e.set(s[0],s[1]);let u=null;return t.proto?i:r;function n(s,l){let o=Object.keys(s),D=new Array(o.length);for(let h=0;hnew Date(o)),n.set(Map,(o,D)=>new Map(i(Array.from(o),D))),n.set(Set,(o,D)=>new Set(i(Array.from(o),D))),t.constructorHandlers)for(let o of t.constructorHandlers)n.set(o[0],o[1]);let r=null;return t.proto?l:s;function i(o,D){let h=Object.keys(o),c=new Array(h.length);for(let f=0;f=this.B&&(c||!h[F])){var i=Q(f,n,a),s="";switch(this.G){case"full":if(2i;l--)if(l-i>=this.B){var o=Q(f,n,a,r,i);s=F.substring(i,l),K(this,h,s,o,t,u)}break}case"reverse":if(1=this.B&&K(this,h,s,Q(f,n,a,r,l),t,u);s=""}case"forward":if(1=this.B&&K(this,h,s,i,t,u);break}default:if(this.C&&(i=Math.min(i/this.C(e,F,a)|0,f-1)),K(this,h,F,i,t,u),c&&1=this.B&&!r[F]){r[F]=1;let g=this.l&&F>i;K(this,D,g?i:F,Q(s+(n/2>s?0:1),n,a,l-1,o-1),t,u,g?F:i)}}}}}this.m||(this.register[t]=1)}}return this};function Q(t,e,u,n,r){return u&&1=this.B&&!u[f])if(this.s||i||this.map[f])o[c++]=f,u[f]=1;else return n;t=o,r=t.length}if(!r)return n;e||(e=100),l=this.depth&&1=n))));f++);if(h){if(i)return St(o,n,0);e[e.length]=o;return}}return!u&&o}function St(t,e,u){return t=t.length===1?t[0]:[].concat.apply([],t),u||t.length>e?t.slice(u,u+e):t}function dt(t,e,u,n){return u?(n=n&&e>u,t=(t=t[n?e:u])&&t[n?u:e]):t=t[e],t}B.contain=function(t){return!!this.register[t]};B.update=function(t,e){return this.remove(t).add(t,e)};B.remove=function(t,e){let u=this.register[t];if(u){if(this.m)for(let n=0,r;n"u"&&(s=new Promise(D=>{i=D}));let l,o;switch(r||(r=0)){case 0:if(l="reg",this.m){o=p();for(let D in this.register)o[D]=1}else o=this.register;break;case 1:l="cfg",o={doc:0,opt:this.s?1:0};break;case 2:l="map",o=this.map;break;case 3:l="ctx",o=this.h;break;default:typeof u>"u"&&i&&i();return}return Lt(t,e||this,u,l,n,r,o,i),s};B.import=function(t,e){if(e)switch(x(e)&&(e=JSON.parse(e)),t){case"cfg":this.s=!!e.opt;break;case"reg":this.m=!1,this.register=e;break;case"map":this.map=e;break;case"ctx":this.h=e}};wt(P.prototype);function re(t){t=t.data;var e=self._index;let u=t.args;var n=t.task;switch(n){case"init":n=t.options||{},t=t.factory,e=n.encode,n.cache=!1,e&&e.indexOf("function")===0&&(n.encode=Function("return "+e)()),t?(Function("return "+t)()(self),self._index=new self.FlexSearch.Index(n),delete self.FlexSearch):self._index=new P(n);break;default:t=t.id,e=e[n].apply(e,u),postMessage(n==="search"?{id:t,msg:e}:{id:t})}}var Ct=0;function N(t){if(!(this instanceof N))return new N(t);var e;t?ot(e=t.encode)&&(t.encode=e.toString()):t={},(e=(self||window)._factory)&&(e=e.toString());let u=typeof window>"u"&&self.exports,n=this;this.o=ie(e,u,t.worker),this.h=p(),this.o&&(u?this.o.on("message",function(r){n.h[r.id](r.msg),delete n.h[r.id]}):this.o.onmessage=function(r){r=r.data,n.h[r.id](r.msg),delete n.h[r.id]},this.o.postMessage({task:"init",factory:e,options:t}))}J("add");J("append");J("search");J("update");J("remove");function J(t){N.prototype[t]=N.prototype[t+"Async"]=function(){let e=this,u=[].slice.call(arguments);var n=u[u.length-1];let r;return ot(n)&&(r=n,u.splice(u.length-1,1)),n=new Promise(function(i){setTimeout(function(){e.h[++Ct]=i,e.o.postMessage({task:t,id:Ct,args:u})})}),r?(n.then(r),this):n}}function ie(t,e,u){let n;try{n=e?new(ft()).Worker(__dirname+"/node/node.js"):t?new Worker(URL.createObjectURL(new Blob(["onmessage="+re.toString()],{type:"text/javascript"}))):new Worker(x(u)?u:"worker/worker.js",{type:"module"})}catch{}return n}function G(t){if(!(this instanceof G))return new G(t);var e=t.document||t.doc||t,u;this.K=[],this.h=[],this.A=[],this.register=p(),this.key=(u=e.key||e.id)&&X(u,this.A)||"id",this.m=Y(t.fastupdate),this.C=(u=e.store)&&u!==!0&&[],this.store=u&&p(),this.I=(u=e.tag)&&X(u,this.A),this.l=u&&p(),this.cache=(u=t.cache)&&new ut(u),t.cache=!1,this.o=t.worker,this.async=!1,u=p();let n=e.index||e.field||e;x(n)&&(n=[n]);for(let r=0,i,s;re||u)&&(r=r.slice(u,u+e)),n&&(r=kt.call(this,r)),{tag:t,result:r}}function kt(t){let e=Array(t.length);for(let u=0,n;u"u"&&(s=new Promise(l=>{i=l})),r||(r=0),n||(n=0),nt?.removeEventListener("click",u)),document.addEventListener("keydown",n),window.addCleanup(()=>document.removeEventListener("keydown",n))}function V(t){for(;t.firstChild;)t.removeChild(t.firstChild)}var Ie=Object.hasOwnProperty;var Ut=Qt(It(),1),Ne=(0,Ut.default)();function Ce(t){let e=Nt(Be(t,"index"),!0);return e.length===0?"/":e}var Pt=(t,e,u)=>{let n=new URL(t.getAttribute(e),u);t.setAttribute(e,n.pathname+n.hash)};function Wt(t,e){t.querySelectorAll(\'[href=""], [href^="./"], [href^="../"]\').forEach(u=>Pt(u,"href",e)),t.querySelectorAll(\'[src=""], [src^="./"], [src^="../"]\').forEach(u=>Pt(u,"src",e))}function Ae(t){let e=t.split("/").filter(u=>u!=="").slice(0,-1).map(u=>"..").join("/");return e.length===0&&(e="."),e}function zt(t,e){return pe(Ae(t),Ce(e))}function pe(...t){if(t.length===0)return"";let e=t.filter(u=>u!==""&&u!=="/").map(u=>Nt(u)).join("/");return t[0].startsWith("/")&&(e="/"+e),t[t.length-1].endsWith("/")&&(e=e+"/"),e}function me(t,e){return t===e||t.endsWith("/"+e)}function Be(t,e){return me(t,e)&&(t=t.slice(0,-e.length)),t}function Nt(t,e){return t.startsWith("/")&&(t=t.substring(1)),!e&&t.endsWith("/")&&(t=t.slice(0,-1)),t}var j="basic",S="",ye=t=>t.toLowerCase().split(/([^a-z]|[^\\x00-\\x7F])/),Z=new Ht.Document({charset:"latin:extra",encode:ye,document:{id:"id",tag:"tags",index:[{field:"title",tokenize:"forward"},{field:"content",tokenize:"forward"},{field:"tags",tokenize:"forward"}]}}),we=new DOMParser,Dt=new Map,nt=30,rt=8,xe=5,_t=t=>{let e=t.split(/\\s+/).filter(n=>n.trim()!==""),u=e.length;if(u>1)for(let n=1;nr.length-n.length)};function qt(t,e,u){let n=_t(t),r=e.split(/\\s+/).filter(o=>o!==""),i=0,s=r.length-1;if(u){let o=f=>n.some(a=>f.toLowerCase().startsWith(a.toLowerCase())),D=r.map(o),h=0,c=0;for(let f=0;fg+(A?1:0),0);F>=h&&(h=F,c=f)}i=Math.max(c-nt,0),s=Math.min(i+2*nt,r.length-1),r=r.slice(i,s)}let l=r.map(o=>{for(let D of n)if(o.toLowerCase().includes(D.toLowerCase())){let h=new RegExp(D.toLowerCase(),"gi");return o.replace(h,\'$&\')}return o}).join(" ");return`${i===0?"":"..."}${l}${s===r.length-1?"":"..."}`}function ve(t,e){let u=new DOMParser,n=_t(t),r=u.parseFromString(e.innerHTML,"text/html"),i=l=>{let o=document.createElement("span");return o.className="highlight",o.textContent=l,o},s=(l,o)=>{if(l.nodeType===Node.TEXT_NODE){let D=l.nodeValue??"",h=new RegExp(o.toLowerCase(),"gi"),c=D.match(h);if(!c||c.length===0)return;let f=document.createElement("span"),a=0;for(let F of c){let g=D.indexOf(F,a);f.appendChild(document.createTextNode(D.slice(a,g))),f.appendChild(i(F)),a=g+F.length}f.appendChild(document.createTextNode(D.slice(a))),l.parentNode?.replaceChild(f,l)}else if(l.nodeType===Node.ELEMENT_NODE){if(l.classList.contains("highlight"))return;Array.from(l.childNodes).forEach(D=>s(D,o))}};for(let l of n)s(r.body,l);return r.body}document.addEventListener("nav",async t=>{let e=t.detail.url,u=await fetchData,n=document.getElementById("search-container"),r=n?.closest(".sidebar"),i=document.getElementById("search-button"),s=document.getElementById("search-bar"),l=document.getElementById("search-layout"),o=Object.keys(u),D=E=>{l?.querySelector(`#${E.id}`)===null&&l?.appendChild(E)},h=l?.dataset?.preview==="true",c,f,a=document.createElement("div");a.id="results-container",D(a),h&&(c=document.createElement("div"),c.id="preview-container",D(c));function F(){n?.classList.remove("active"),s&&(s.value=""),r&&(r.style.zIndex=""),a&&V(a),c&&V(c),l&&l.classList.remove("display-results"),j="basic",i?.focus()}function g(E){j=E,r&&(r.style.zIndex="1"),n?.classList.add("active"),s?.focus()}let A=null;async function k(E){if(E.key==="k"&&(E.ctrlKey||E.metaKey)&&!E.shiftKey){E.preventDefault(),n?.classList.contains("active")?F():g("basic");return}else if(E.shiftKey&&(E.ctrlKey||E.metaKey)&&E.key.toLowerCase()==="k"){E.preventDefault(),n?.classList.contains("active")?F():g("tags"),s&&(s.value="#");return}if(A&&A.classList.remove("focus"),!!n?.classList.contains("active")){if(E.key==="Enter")if(a?.contains(document.activeElement)){let d=document.activeElement;if(d.classList.contains("no-match"))return;await z(d),d.click()}else{let d=document.getElementsByClassName("result-card")[0];if(!d||d?.classList.contains("no-match"))return;await z(d),d.click()}else if(E.key==="ArrowUp"||E.shiftKey&&E.key==="Tab"){if(E.preventDefault(),a?.contains(document.activeElement)){let d=A||document.activeElement,C=d?.previousElementSibling;d?.classList.remove("focus"),C?.focus(),C&&(A=C),await z(C)}}else if((E.key==="ArrowDown"||E.key==="Tab")&&(E.preventDefault(),document.activeElement===s||A!==null)){let d=A||document.getElementsByClassName("result-card")[0],C=d?.nextElementSibling;d?.classList.remove("focus"),C?.focus(),C&&(A=C),await z(C)}}}let v=(E,d)=>{let C=o[d];return{id:d,slug:C,title:j==="tags"?u[C].title:qt(E,u[C].title??""),content:qt(E,u[C].content??"",!0),tags:w(E.substring(1),u[C].tags)}};function w(E,d){return!d||j!=="tags"?[]:d.map(C=>C.toLowerCase().includes(E.toLowerCase())?`
  • #${C}

  • `:`
  • #${C}

  • `).slice(0,xe)}function R(E){return new URL(zt(e,E),location.toString())}let _=({slug:E,title:d,content:C,tags:M})=>{let T=M.length>0?`
      ${M.join("")}
    `:"",m=document.createElement("a");m.classList.add("result-card"),m.id=E,m.href=R(E).toString(),m.innerHTML=`

    ${d}

    ${T}${h&&window.innerWidth>600?"":`

    ${C}

    `}`,m.addEventListener("click",L=>{L.altKey||L.ctrlKey||L.metaKey||L.shiftKey||F()});let O=L=>{L.altKey||L.ctrlKey||L.metaKey||L.shiftKey||F()};async function I(L){if(!L.target)return;let $t=L.target;await z($t)}return m.addEventListener("mouseenter",I),window.addCleanup(()=>m.removeEventListener("mouseenter",I)),m.addEventListener("click",O),window.addCleanup(()=>m.removeEventListener("click",O)),m};async function b(E){if(a)if(V(a),E.length===0?a.innerHTML=`\n

    No results.

    \n

    Try another search term?

    \n
    `:a.append(...E.map(_)),E.length===0&&c)V(c);else{let d=a.firstElementChild;d.classList.add("focus"),A=d,await z(d)}}async function W(E){if(Dt.has(E))return Dt.get(E);let d=R(E).toString(),C=await fetch(d).then(M=>M.text()).then(M=>{if(M===void 0)throw new Error(`Could not fetch ${d}`);let T=we.parseFromString(M??"","text/html");return Wt(T,d),[...T.getElementsByClassName("popover-hint")]});return Dt.set(E,C),C}async function z(E){if(!l||!h||!E||!c)return;let d=E.id,C=await W(d).then(T=>T.flatMap(m=>[...ve(S,m).children]));f=document.createElement("div"),f.classList.add("preview-inner"),f.append(...C),c.replaceChildren(f),[...c.querySelectorAll(".highlight")].sort((T,m)=>m.innerHTML.length-T.innerHTML.length)[0]?.scrollIntoView({block:"start"})}async function ct(E){if(!l||!Z)return;S=E.target.value,l.classList.toggle("display-results",S!==""),j=S.startsWith("#")?"tags":"basic";let d;if(j==="tags"){S=S.substring(1).trim();let m=S.indexOf(" ");if(m!=-1){let O=S.substring(0,m),I=S.substring(m+1).trim();d=await Z.searchAsync({query:I,limit:Math.max(rt,1e4),index:["title","content"],tag:O});for(let L of d)L.result=L.result.slice(0,rt);j="basic",S=I}else d=await Z.searchAsync({query:S,limit:rt,index:["tags"]})}else j==="basic"&&(d=await Z.searchAsync({query:S,limit:rt,index:["title","content"]}));let C=m=>{let O=d.filter(I=>I.field===m);return O.length===0?[]:[...O[0].result]},T=[...new Set([...C("title"),...C("content"),...C("tags")])].map(m=>v(S,m));await b(T)}document.addEventListener("keydown",k),window.addCleanup(()=>document.removeEventListener("keydown",k)),i?.addEventListener("click",()=>g("basic")),window.addCleanup(()=>i?.removeEventListener("click",()=>g("basic"))),s?.addEventListener("input",ct),window.addCleanup(()=>s?.removeEventListener("input",ct)),jt(n,F),await Le(u)});async function Le(t){let e=0,u=[];for(let[n,r]of Object.entries(t))u.push(Z.addAsync(e++,{id:e,slug:n,title:r.title,content:r.content,tags:r.tags}));return await Promise.all(u)}\n';import{jsx as jsx26,jsxs as jsxs15}from"preact/jsx-runtime";var defaultOptions17={enablePreview:!0},Search_default=__name(userOpts=>{let Search=__name(({displayClass,cfg})=>{let opts={...defaultOptions17,...userOpts},searchPlaceholder=i18n(cfg.locale).components.search.searchBarPlaceholder;return jsxs15("div",{class:classNames(displayClass,"search"),children:[jsxs15("button",{class:"search-button",id:"search-button",children:[jsx26("p",{children:i18n(cfg.locale).components.search.title}),jsxs15("svg",{role:"img",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 19.9 19.7",children:[jsx26("title",{children:"Search"}),jsxs15("g",{class:"search-path",fill:"none",children:[jsx26("path",{"stroke-linecap":"square",d:"M18.5 18.3l-5.4-5.4"}),jsx26("circle",{cx:"8",cy:"8",r:"7"})]})]})]}),jsx26("div",{id:"search-container",children:jsxs15("div",{id:"search-space",children:[jsx26("input",{autocomplete:"off",id:"search-bar",name:"search",type:"text","aria-label":searchPlaceholder,placeholder:searchPlaceholder}),jsx26("div",{id:"search-layout","data-preview":opts.enablePreview})]})})]})},"Search");return Search.afterDOMLoaded=search_inline_default,Search.css=search_default,Search},"default");var footer_default=`footer { - text-align: left; - margin-bottom: 4rem; - opacity: 0.7; -} -footer ul { - list-style: none; - margin: 0; - padding: 0; - display: flex; - flex-direction: row; - gap: 1rem; - margin-top: -1rem; -} -/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL2hvbWUvYWxhbmQvZ2l0L3F1YXJ0ei9xdWFydHovY29tcG9uZW50cy9zdHlsZXMiLCJzb3VyY2VzIjpbImZvb3Rlci5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0U7RUFDQTtFQUNBOztBQUVBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EiLCJzb3VyY2VzQ29udGVudCI6WyJmb290ZXIge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBtYXJnaW4tYm90dG9tOiA0cmVtO1xuICBvcGFjaXR5OiAwLjc7XG5cbiAgJiB1bCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgZ2FwOiAxcmVtO1xuICAgIG1hcmdpbi10b3A6IC0xcmVtO1xuICB9XG59XG4iXX0= */`;var version="4.4.0";import{jsx as jsx27,jsxs as jsxs16}from"preact/jsx-runtime";var Footer_default=__name(opts=>{let Footer=__name(({displayClass,cfg})=>{let year=new Date().getFullYear(),links=opts?.links??[];return jsxs16("footer",{class:`${displayClass??""}`,children:[jsxs16("p",{children:[i18n(cfg.locale).components.footer.createdWith," ",jsxs16("a",{href:"https://quartz.jzhao.xyz/",children:["Quartz v",version]})," \xA9 ",year]}),jsx27("ul",{children:Object.entries(links).map(([text,link])=>jsx27("li",{children:jsx27("a",{href:link,children:text})}))})]})},"Footer");return Footer.css=footer_default,Footer},"default");import{Fragment as Fragment5,jsx as jsx28}from"preact/jsx-runtime";var DesktopOnly_default=__name(component=>{if(component){let Component=component,DesktopOnly=__name(props=>jsx28(Component,{displayClass:"desktop-only",...props}),"DesktopOnly");return DesktopOnly.displayName=component.displayName,DesktopOnly.afterDOMLoaded=component?.afterDOMLoaded,DesktopOnly.beforeDOMLoaded=component?.beforeDOMLoaded,DesktopOnly.css=component?.css,DesktopOnly}else return()=>jsx28(Fragment5,{})},"default");import{Fragment as Fragment6,jsx as jsx29}from"preact/jsx-runtime";var MobileOnly_default=__name(component=>{if(component){let Component=component,MobileOnly=__name(props=>jsx29(Component,{displayClass:"mobile-only",...props}),"MobileOnly");return MobileOnly.displayName=component.displayName,MobileOnly.afterDOMLoaded=component?.afterDOMLoaded,MobileOnly.beforeDOMLoaded=component?.beforeDOMLoaded,MobileOnly.css=component?.css,MobileOnly}else return()=>jsx29(Fragment6,{})},"default");import{jsx as jsx30,jsxs as jsxs17}from"preact/jsx-runtime";var breadcrumbs_default=`.breadcrumb-container { - margin: 0; - margin-top: 0.75rem; - padding: 0; - display: flex; - flex-direction: row; - flex-wrap: wrap; - gap: 0.5rem; -} - -.breadcrumb-element { - display: flex; - flex-direction: row; - align-items: center; - justify-content: center; -} -.breadcrumb-element p { - margin: 0; - margin-left: 0.5rem; - padding: 0; - line-height: normal; -} -/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL2hvbWUvYWxhbmQvZ2l0L3F1YXJ0ei9xdWFydHovY29tcG9uZW50cy9zdHlsZXMiLCJzb3VyY2VzIjpbImJyZWFkY3J1bWJzLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0Y7RUFPRTtFQUNBO0VBQ0E7RUFDQTs7QUFUQTtFQUNFO0VBQ0E7RUFDQTtFQUNBIiwic291cmNlc0NvbnRlbnQiOlsiLmJyZWFkY3J1bWItY29udGFpbmVyIHtcbiAgbWFyZ2luOiAwO1xuICBtYXJnaW4tdG9wOiAwLjc1cmVtO1xuICBwYWRkaW5nOiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGdhcDogMC41cmVtO1xufVxuXG4uYnJlYWRjcnVtYi1lbGVtZW50IHtcbiAgcCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gICAgcGFkZGluZzogMDtcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICB9XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuIl19 */`;import{Fragment as Fragment7,jsx as jsx31,jsxs as jsxs18}from"preact/jsx-runtime";var defaultOptions18={spacerSymbol:"\u276F",rootName:"Home",resolveFrontmatterTitle:!0,hideOnRoot:!0,showCurrentPage:!0};function formatCrumb(displayName,baseSlug,currentSlug){return{displayName:displayName.replaceAll("-"," "),path:resolveRelative(baseSlug,currentSlug)}}__name(formatCrumb,"formatCrumb");var Breadcrumbs_default=__name(opts=>{let options2={...defaultOptions18,...opts},folderIndex,Breadcrumbs=__name(({fileData,allFiles,displayClass})=>{if(options2.hideOnRoot&&fileData.slug==="index")return jsx31(Fragment7,{});let crumbs=[formatCrumb(options2.rootName,fileData.slug,"/")];if(!folderIndex&&options2.resolveFrontmatterTitle){folderIndex=new Map;for(let file of allFiles){let folderParts=file.slug?.split("/");folderParts?.at(-1)==="index"&&folderIndex.set(folderParts.slice(0,-1).join("/"),file)}}let slugParts=fileData.slug?.split("/");if(slugParts){let isTagPath=slugParts[0]==="tags",currentPath="";for(let i=0;ijsxs18("div",{class:"breadcrumb-element",children:[jsx31("a",{href:crumb.path,children:crumb.displayName}),index!==crumbs.length-1&&jsx31("p",{children:` ${options2.spacerSymbol} `})]}))})},"Breadcrumbs");return Breadcrumbs.css=breadcrumbs_default,Breadcrumbs},"default");import{Fragment as Fragment8,jsx as jsx32}from"preact/jsx-runtime";var sharedPageComponents={head:Head_default(),header:[],afterBody:[],footer:Footer_default({links:{GitHub:"https://github.com/jackyzha0/quartz","Discord Community":"https://discord.gg/cRFFHYye7t"}})},defaultContentPageLayout={beforeBody:[Breadcrumbs_default(),ArticleTitle_default(),ContentMeta_default(),TagList_default()],left:[PageTitle_default(),MobileOnly_default(Spacer_default()),Search_default(),Darkmode_default(),DesktopOnly_default(Explorer_default())],right:[Graph_default(),DesktopOnly_default(TableOfContents_default()),Backlinks_default()]},defaultListPageLayout={beforeBody:[Breadcrumbs_default(),ArticleTitle_default(),ContentMeta_default()],left:[PageTitle_default(),MobileOnly_default(Spacer_default()),Search_default(),Darkmode_default(),DesktopOnly_default(Explorer_default())],right:[]};import chalk4 from"chalk";import path6 from"path";import fs3 from"fs";var write=__name(async({ctx,slug,ext,content})=>{let pathToPage=joinSegments(ctx.argv.output,slug+ext),dir=path6.dirname(pathToPage);return await fs3.promises.mkdir(dir,{recursive:!0}),await fs3.promises.writeFile(pathToPage,content),pathToPage},"write");var DepGraph=class{static{__name(this,"DepGraph")}_graph=new Map;constructor(){this._graph=new Map}export(){return{nodes:this.nodes,edges:this.edges}}toString(){return JSON.stringify(this.export(),null,2)}get nodes(){return Array.from(this._graph.keys())}get edges(){let edges=[];return this.forEachEdge(edge=>edges.push(edge)),edges}hasNode(node){return this._graph.has(node)}addNode(node){this._graph.has(node)||this._graph.set(node,{incoming:new Set,outgoing:new Set})}removeNode(node){if(this._graph.has(node)){for(let target of this._graph.get(node).outgoing)this.removeEdge(node,target);for(let source of this._graph.get(node).incoming)this.removeEdge(source,node);this._graph.delete(node)}}forEachNode(callback){for(let node of this._graph.keys())callback(node)}hasEdge(from,to){return!!this._graph.get(from)?.outgoing.has(to)}addEdge(from,to){this.addNode(from),this.addNode(to),this._graph.get(from).outgoing.add(to),this._graph.get(to).incoming.add(from)}removeEdge(from,to){this._graph.has(from)&&this._graph.has(to)&&(this._graph.get(from).outgoing.delete(to),this._graph.get(to).incoming.delete(from))}outDegree(node){return this.hasNode(node)?this._graph.get(node).outgoing.size:-1}inDegree(node){return this.hasNode(node)?this._graph.get(node).incoming.size:-1}forEachOutNeighbor(node,callback){this._graph.get(node)?.outgoing.forEach(callback)}forEachInNeighbor(node,callback){this._graph.get(node)?.incoming.forEach(callback)}forEachEdge(callback){for(let[source,{outgoing}]of this._graph.entries())for(let target of outgoing)callback([source,target])}mergeGraph(other){other.forEachEdge(([source,target])=>{this.addNode(source),this.addNode(target),this.addEdge(source,target)})}updateIncomingEdgesForNode(other,node){this.addNode(node),other.forEachInNeighbor(node,neighbor=>{this.addEdge(neighbor,node)}),this.forEachEdge(([source,target])=>{target===node&&!other.hasEdge(source,target)&&this.removeEdge(source,target)})}removeOrphanNodes(){let orphanNodes=new Set;return this.forEachNode(node=>{this.inDegree(node)===0&&this.outDegree(node)===0&&orphanNodes.add(node)}),orphanNodes.forEach(node=>{this.removeNode(node)}),orphanNodes}getLeafNodes(node){let stack=[node],visited=new Set,leafNodes=new Set;for(;stack.length>0;){let node2=stack.pop();visited.has(node2)||(visited.add(node2),this.outDegree(node2)===0&&leafNodes.add(node2),this.forEachOutNeighbor(node2,neighbor=>{visited.has(neighbor)||stack.push(neighbor)}))}return leafNodes}getLeafNodeAncestors(node){let leafNodes=this.getLeafNodes(node),visited=new Set,upstreamNodes=new Set;return leafNodes.forEach(leafNode=>{let stack=[leafNode];for(;stack.length>0;){let node2=stack.pop();visited.has(node2)||(visited.add(node2),this.outDegree(node2)!==0&&upstreamNodes.add(node2),this.forEachInNeighbor(node2,parentNode=>{visited.has(parentNode)||stack.push(parentNode)}))}}),upstreamNodes}};var parseDependencies=__name((argv,hast,file)=>{let dependencies=[];return visit7(hast,"element",elem=>{let ref=null;if(["script","img","audio","video","source","iframe"].includes(elem.tagName)&&elem?.properties?.src?ref=elem.properties.src.toString():["a","link"].includes(elem.tagName)&&elem?.properties?.href&&(ref=elem.properties.href.toString()),ref===null||!isRelativeURL(ref))return;let fp=path7.join(file.data.filePath,path7.relative(argv.directory,ref)).replace(/\\/g,"/");fp.split("/").pop()?.includes(".")||(fp+=".md"),dependencies.push(fp)}),dependencies},"parseDependencies"),ContentPage=__name(userOpts=>{let opts={...sharedPageComponents,...defaultContentPageLayout,pageBody:Content_default(),...userOpts},{head:Head,header,beforeBody,pageBody,afterBody,left,right,footer:Footer}=opts,Header2=Header_default(),Body2=Body_default();return{name:"ContentPage",getQuartzComponents(){return[Head,Header2,Body2,...header,...beforeBody,pageBody,...afterBody,...left,...right,Footer]},async getDependencyGraph(ctx,content,_resources){let graph=new DepGraph;for(let[tree,file]of content){let sourcePath=file.data.filePath,slug=file.data.slug;graph.addEdge(sourcePath,joinSegments(ctx.argv.output,slug+".html")),parseDependencies(ctx.argv,tree,file).forEach(dep=>{graph.addEdge(dep,sourcePath)})}return graph},async emit(ctx,content,resources){let cfg=ctx.cfg.configuration,fps=[],allFiles=content.map(c=>c[1].data),containsIndex=!1;for(let[tree,file]of content){let slug=file.data.slug;slug==="index"&&(containsIndex=!0);let externalResources=pageResources(pathToRoot(slug),file.data,resources),componentData={ctx,fileData:file.data,externalResources,cfg,children:[],tree,allFiles},content2=renderPage(cfg,slug,componentData,opts,externalResources),fp=await write({ctx,content:content2,slug,ext:".html"});fps.push(fp)}return!containsIndex&&!ctx.argv.fastRebuild&&console.log(chalk4.yellow(` -Warning: you seem to be missing an \`index.md\` home page file at the root of your \`${ctx.argv.directory}\` folder. This may cause errors when deploying.`)),fps}}},"ContentPage");import{VFile}from"vfile";function defaultProcessedContent(vfileData){let root={type:"root",children:[]},vfile=new VFile("");return vfile.data=vfileData,[root,vfile]}__name(defaultProcessedContent,"defaultProcessedContent");var TagPage=__name(userOpts=>{let opts={...sharedPageComponents,...defaultListPageLayout,pageBody:TagContent_default({sort:userOpts?.sort}),...userOpts},{head:Head,header,beforeBody,pageBody,afterBody,left,right,footer:Footer}=opts,Header2=Header_default(),Body2=Body_default();return{name:"TagPage",getQuartzComponents(){return[Head,Header2,Body2,...header,...beforeBody,pageBody,...afterBody,...left,...right,Footer]},async getDependencyGraph(ctx,content,_resources){let graph=new DepGraph;for(let[_tree,file]of content){let sourcePath=file.data.filePath,tags=(file.data.frontmatter?.tags??[]).flatMap(getAllSegmentPrefixes);tags.length>0&&tags.push("index");for(let tag of tags)graph.addEdge(sourcePath,joinSegments(ctx.argv.output,"tags",tag+".html"))}return graph},async emit(ctx,content,resources){let fps=[],allFiles=content.map(c=>c[1].data),cfg=ctx.cfg.configuration,tags=new Set(allFiles.flatMap(data=>data.frontmatter?.tags??[]).flatMap(getAllSegmentPrefixes));tags.add("index");let tagDescriptions=Object.fromEntries([...tags].map(tag=>{let title=tag==="index"?i18n(cfg.locale).pages.tagContent.tagIndex:`${i18n(cfg.locale).pages.tagContent.tag}: ${tag}`;return[tag,defaultProcessedContent({slug:joinSegments("tags",tag),frontmatter:{title,tags:[]}})]}));for(let[tree,file]of content){let slug=file.data.slug;if(slug.startsWith("tags/")){let tag=slug.slice(5);tags.has(tag)&&(tagDescriptions[tag]=[tree,file],file.data.frontmatter?.title===tag&&(file.data.frontmatter.title=`${i18n(cfg.locale).pages.tagContent.tag}: ${tag}`))}}for(let tag of tags){let slug=joinSegments("tags",tag),[tree,file]=tagDescriptions[tag],externalResources=pageResources(pathToRoot(slug),file.data,resources),componentData={ctx,fileData:file.data,externalResources,cfg,children:[],tree,allFiles},content2=renderPage(cfg,slug,componentData,opts,externalResources),fp=await write({ctx,content:content2,slug:file.data.slug,ext:".html"});fps.push(fp)}return fps}}},"TagPage");import path8 from"path";var FolderPage=__name(userOpts=>{let opts={...sharedPageComponents,...defaultListPageLayout,pageBody:FolderContent_default({sort:userOpts?.sort}),...userOpts},{head:Head,header,beforeBody,pageBody,afterBody,left,right,footer:Footer}=opts,Header2=Header_default(),Body2=Body_default();return{name:"FolderPage",getQuartzComponents(){return[Head,Header2,Body2,...header,...beforeBody,pageBody,...afterBody,...left,...right,Footer]},async getDependencyGraph(_ctx,content,_resources){let graph=new DepGraph;return content.map(([_tree,vfile])=>{let slug=vfile.data.slug,folderName=path8.dirname(slug??"");slug&&folderName!=="."&&folderName!=="tags"&&graph.addEdge(vfile.data.filePath,joinSegments(folderName,"index.html"))}),graph},async emit(ctx,content,resources){let fps=[],allFiles=content.map(c=>c[1].data),cfg=ctx.cfg.configuration,folders=new Set(allFiles.flatMap(data=>data.slug?_getFolders(data.slug).filter(folderName=>folderName!=="."&&folderName!=="tags"):[])),folderDescriptions=Object.fromEntries([...folders].map(folder=>[folder,defaultProcessedContent({slug:joinSegments(folder,"index"),frontmatter:{title:`${i18n(cfg.locale).pages.folderContent.folder}: ${folder}`,tags:[]}})]));for(let[tree,file]of content){let slug=stripSlashes(simplifySlug(file.data.slug));folders.has(slug)&&(folderDescriptions[slug]=[tree,file])}for(let folder of folders){let slug=joinSegments(folder,"index"),[tree,file]=folderDescriptions[folder],externalResources=pageResources(pathToRoot(slug),file.data,resources),componentData={ctx,fileData:file.data,externalResources,cfg,children:[],tree,allFiles},content2=renderPage(cfg,slug,componentData,opts,externalResources),fp=await write({ctx,content:content2,slug,ext:".html"});fps.push(fp)}return fps}}},"FolderPage");function _getFolders(slug){var folderName=path8.dirname(slug??"");let parentFolderNames=[folderName];for(;folderName!==".";)folderName=path8.dirname(folderName??""),parentFolderNames.push(folderName);return parentFolderNames}__name(_getFolders,"_getFolders");import{toHtml as toHtml2}from"hast-util-to-html";var defaultOptions19={enableSiteMap:!0,enableRSS:!0,rssLimit:10,rssFullHtml:!1,includeEmptyFiles:!0};function generateSiteMap(cfg,idx){let base=cfg.baseUrl??"",createURLEntry=__name((slug,content)=>` - https://${joinSegments(base,encodeURI(slug))} - ${content.date&&`${content.date.toISOString()}`} - `,"createURLEntry");return`${Array.from(idx).map(([slug,content])=>createURLEntry(simplifySlug(slug),content)).join("")}`}__name(generateSiteMap,"generateSiteMap");function generateRSSFeed(cfg,idx,limit){let base=cfg.baseUrl??"",createURLEntry=__name((slug,content)=>` - ${escapeHTML(content.title)} - https://${joinSegments(base,encodeURI(slug))} - https://${joinSegments(base,encodeURI(slug))} - ${content.richContent??content.description} - ${content.date?.toUTCString()} - `,"createURLEntry"),items=Array.from(idx).sort(([_,f1],[__,f2])=>f1.date&&f2.date?f2.date.getTime()-f1.date.getTime():f1.date&&!f2.date?-1:!f1.date&&f2.date?1:f1.title.localeCompare(f2.title)).map(([slug,content])=>createURLEntry(simplifySlug(slug),content)).slice(0,limit??idx.size).join("");return` - - - ${escapeHTML(cfg.pageTitle)} - https://${base} - ${limit?i18n(cfg.locale).pages.rss.lastFewNotes({count:limit}):i18n(cfg.locale).pages.rss.recentNotes} on ${escapeHTML(cfg.pageTitle)} - Quartz -- quartz.jzhao.xyz - ${items} - - `}__name(generateRSSFeed,"generateRSSFeed");var ContentIndex=__name(opts=>(opts={...defaultOptions19,...opts},{name:"ContentIndex",async getDependencyGraph(ctx,content,_resources){let graph=new DepGraph;for(let[_tree,file]of content){let sourcePath=file.data.filePath;graph.addEdge(sourcePath,joinSegments(ctx.argv.output,"static/contentIndex.json")),opts?.enableSiteMap&&graph.addEdge(sourcePath,joinSegments(ctx.argv.output,"sitemap.xml")),opts?.enableRSS&&graph.addEdge(sourcePath,joinSegments(ctx.argv.output,"index.xml"))}return graph},async emit(ctx,content,_resources){let cfg=ctx.cfg.configuration,emitted=[],linkIndex=new Map;for(let[tree,file]of content){let slug=file.data.slug,date=getDate(ctx.cfg.configuration,file.data)??new Date;(opts?.includeEmptyFiles||file.data.text&&file.data.text!=="")&&linkIndex.set(slug,{title:file.data.frontmatter?.title,links:file.data.links??[],tags:file.data.frontmatter?.tags??[],content:file.data.text??"",richContent:opts?.rssFullHtml?escapeHTML(toHtml2(tree,{allowDangerousHtml:!0})):void 0,date,description:file.data.description??""})}opts?.enableSiteMap&&emitted.push(await write({ctx,content:generateSiteMap(cfg,linkIndex),slug:"sitemap",ext:".xml"})),opts?.enableRSS&&emitted.push(await write({ctx,content:generateRSSFeed(cfg,linkIndex,opts.rssLimit),slug:"index",ext:".xml"}));let fp=joinSegments("static","contentIndex"),simplifiedIndex=Object.fromEntries(Array.from(linkIndex).map(([slug,content2])=>(delete content2.description,delete content2.date,[slug,content2])));return emitted.push(await write({ctx,content:JSON.stringify(simplifiedIndex),slug:fp,ext:".json"})),emitted},getQuartzComponents:__name(()=>[],"getQuartzComponents")}),"ContentIndex");import path9 from"path";var AliasRedirects=__name(()=>({name:"AliasRedirects",getQuartzComponents(){return[]},async getDependencyGraph(ctx,content,_resources){let graph=new DepGraph,{argv}=ctx;for(let[_tree,file]of content){let dir=path9.posix.relative(argv.directory,path9.dirname(file.data.filePath)),slugs=(file.data.frontmatter?.aliases??[]).map(alias=>path9.posix.join(dir,alias)),permalink=file.data.frontmatter?.permalink;typeof permalink=="string"&&slugs.push(permalink);for(let slug of slugs)slug.endsWith("/")&&(slug=joinSegments(slug,"index")),graph.addEdge(file.data.filePath,joinSegments(argv.output,slug+".html"))}return graph},async emit(ctx,content,_resources){let{argv}=ctx,fps=[];for(let[_tree,file]of content){let ogSlug=simplifySlug(file.data.slug),dir=path9.posix.relative(argv.directory,path9.dirname(file.data.filePath)),slugs=(file.data.frontmatter?.aliases??[]).map(alias=>path9.posix.join(dir,alias)),permalink=file.data.frontmatter?.permalink;typeof permalink=="string"&&slugs.push(permalink);for(let slug of slugs){slug.endsWith("/")&&(slug=joinSegments(slug,"index"));let redirUrl=resolveRelative(slug,file.data.slug),fp=await write({ctx,content:` - - - - ${ogSlug} - - - - - - - `,slug,ext:".html"});fps.push(fp)}}return fps}}),"AliasRedirects");import path11 from"path";import fs4 from"fs";import path10 from"path";import{globby}from"globby";function toPosixPath(fp){return fp.split(path10.sep).join("/")}__name(toPosixPath,"toPosixPath");async function glob(pattern,cwd,ignorePatterns){return(await globby(pattern,{cwd,ignore:ignorePatterns,gitignore:!0})).map(toPosixPath)}__name(glob,"glob");var filesToCopy=__name(async(argv,cfg)=>await glob("**",argv.directory,["**/*.md",...cfg.configuration.ignorePatterns]),"filesToCopy"),Assets=__name(()=>({name:"Assets",getQuartzComponents(){return[]},async getDependencyGraph(ctx,_content,_resources){let{argv,cfg}=ctx,graph=new DepGraph,fps=await filesToCopy(argv,cfg);for(let fp of fps){let ext=path11.extname(fp),src=joinSegments(argv.directory,fp),name=slugifyFilePath(fp,!0)+ext,dest=joinSegments(argv.output,name);graph.addEdge(src,dest)}return graph},async emit({argv,cfg},_content,_resources){let assetsPath=argv.output,fps=await filesToCopy(argv,cfg),res=[];for(let fp of fps){let ext=path11.extname(fp),src=joinSegments(argv.directory,fp),name=slugifyFilePath(fp,!0)+ext,dest=joinSegments(assetsPath,name),dir=path11.dirname(dest);await fs4.promises.mkdir(dir,{recursive:!0}),await fs4.promises.copyFile(src,dest),res.push(dest)}return res}}),"Assets");import fs5 from"fs";var Static=__name(()=>({name:"Static",getQuartzComponents(){return[]},async getDependencyGraph({argv,cfg},_content,_resources){let graph=new DepGraph,staticPath=joinSegments(QUARTZ,"static"),fps=await glob("**",staticPath,cfg.configuration.ignorePatterns);for(let fp of fps)graph.addEdge(joinSegments("static",fp),joinSegments(argv.output,"static",fp));return graph},async emit({argv,cfg},_content,_resources){let staticPath=joinSegments(QUARTZ,"static"),fps=await glob("**",staticPath,cfg.configuration.ignorePatterns);return await fs5.promises.cp(staticPath,joinSegments(argv.output,"static"),{recursive:!0,dereference:!0}),fps.map(fp=>joinSegments(argv.output,"static",fp))}}),"Static");var spa_inline_default='var $=Object.create;var R=Object.defineProperty;var W=Object.getOwnPropertyDescriptor;var _=Object.getOwnPropertyNames;var I=Object.getPrototypeOf,V=Object.prototype.hasOwnProperty;var q=(u,e)=>()=>(e||u((e={exports:{}}).exports,e),e.exports);var z=(u,e,t,D)=>{if(e&&typeof e=="object"||typeof e=="function")for(let F of _(e))!V.call(u,F)&&F!==t&&R(u,F,{get:()=>e[F],enumerable:!(D=W(e,F))||D.enumerable});return u};var K=(u,e,t)=>(t=u!=null?$(I(u)):{},z(e||!u||!u.__esModule?R(t,"default",{value:u,enumerable:!0}):t,u));var k=q((Bu,j)=>{"use strict";j.exports=uu;function f(u){return u instanceof Buffer?Buffer.from(u):new u.constructor(u.buffer.slice(),u.byteOffset,u.length)}function uu(u){if(u=u||{},u.circles)return eu(u);let e=new Map;if(e.set(Date,n=>new Date(n)),e.set(Map,(n,i)=>new Map(D(Array.from(n),i))),e.set(Set,(n,i)=>new Set(D(Array.from(n),i))),u.constructorHandlers)for(let n of u.constructorHandlers)e.set(n[0],n[1]);let t=null;return u.proto?l:F;function D(n,i){let r=Object.keys(n),o=new Array(r.length);for(let c=0;cnew Date(r)),D.set(Map,(r,o)=>new Map(l(Array.from(r),o))),D.set(Set,(r,o)=>new Set(l(Array.from(r),o))),u.constructorHandlers)for(let r of u.constructorHandlers)D.set(r[0],r[1]);let F=null;return u.proto?i:n;function l(r,o){let c=Object.keys(r),s=new Array(c.length);for(let a=0;a(e,t)=>e[`node${u}`]===t[`node${u}`],Z=m("Name"),Q=m("Type"),Y=m("Value");function L(u,e){if(u.attributes.length===0&&e.attributes.length===0)return[];let t=[],D=new Map,F=new Map;for(let l of u.attributes)D.set(l.name,l.value);for(let l of e.attributes){let n=D.get(l.name);l.value===n?D.delete(l.name):(typeof n<"u"&&D.delete(l.name),F.set(l.name,l.value))}for(let l of D.keys())t.push({type:5,name:l});for(let[l,n]of F.entries())t.push({type:4,name:l,value:n});return t}function g(u,e=!0){let t=`${u.localName}`;for(let{name:D,value:F}of u.attributes)e&&D.startsWith("data-")||(t+=`[${D}=${F}]`);return t+=u.innerHTML,t}function h(u){switch(u.tagName){case"BASE":case"TITLE":return u.localName;case"META":{if(u.hasAttribute("name"))return`meta[name="${u.getAttribute("name")}"]`;if(u.hasAttribute("property"))return`meta[name="${u.getAttribute("property")}"]`;break}case"LINK":{if(u.hasAttribute("rel")&&u.hasAttribute("href"))return`link[rel="${u.getAttribute("rel")}"][href="${u.getAttribute("href")}"]`;if(u.hasAttribute("href"))return`link[href="${u.getAttribute("href")}"]`;break}}return g(u)}function G(u){let[e,t=""]=u.split("?");return`${e}?t=${Date.now()}&${t.replace(/t=\\d+/g,"")}`}function C(u){if(u.nodeType===1&&u.hasAttribute("data-persist"))return u;if(u.nodeType===1&&u.localName==="script"){let e=document.createElement("script");for(let{name:t,value:D}of u.attributes)t==="src"&&(D=G(D)),e.setAttribute(t,D);return e.innerHTML=u.innerHTML,e}return u.cloneNode(!0)}function J(u,e){if(u.children.length===0&&e.children.length===0)return[];let t=[],D=new Map,F=new Map,l=new Map;for(let n of u.children)D.set(h(n),n);for(let n of e.children){let i=h(n),r=D.get(i);r?g(n,!1)!==g(r,!1)&&F.set(i,C(n)):l.set(i,C(n)),D.delete(i)}for(let n of u.childNodes){if(n.nodeType===1){let i=h(n);if(D.has(i)){t.push({type:1});continue}else if(F.has(i)){let r=F.get(i);t.push({type:3,attributes:L(n,r),children:T(n,r)});continue}}t.push(void 0)}for(let n of l.values())t.push({type:0,node:C(n)});return t}function T(u,e){let t=[],D=Math.max(u.childNodes.length,e.childNodes.length);for(let F=0;Fy(D,i,n[r])));return}}}function w(u,e){let t=B(u,e);return y(u,t)}var fu=Object.hasOwnProperty;var O=K(k(),1),gu=(0,O.default)();function b(u){return u.document.body.dataset.slug}var U=(u,e,t)=>{let D=new URL(u.getAttribute(e),t);u.setAttribute(e,D.pathname+D.hash)};function M(u,e){u.querySelectorAll(\'[href=""], [href^="./"], [href^="../"]\').forEach(t=>U(t,"href",e)),u.querySelectorAll(\'[src=""], [src^="./"], [src^="../"]\').forEach(t=>U(t,"src",e))}var tu=//;async function N(u){let e=await fetch(`${u}`);if(!e.headers.get("content-type")?.startsWith("text/html"))return e;let t=await e.clone().text(),[D,F]=t.match(tu)??[];return F?fetch(`${new URL(F,u)}`):e}var Du=1,d=document.createElement("route-announcer"),nu=u=>u?.nodeType===Du,ru=u=>{try{let e=new URL(u);if(window.location.origin===e.origin)return!0}catch{}return!1},Fu=u=>{let e=u.origin===window.location.origin,t=u.pathname===window.location.pathname;return e&&t},P=({target:u})=>{if(!nu(u)||u.attributes.getNamedItem("target")?.value==="_blank")return;let e=u.closest("a");if(!e||"routerIgnore"in e.dataset)return;let{href:t}=e;if(ru(t))return{url:new URL(t),scroll:"routerNoscroll"in e.dataset?!1:void 0}};function H(u){let e=new CustomEvent("nav",{detail:{url:u}});document.dispatchEvent(e)}var v=new Set;window.addCleanup=u=>v.add(u);function iu(){let u=document.createElement("div");u.className="navigation-progress",u.style.width="0",document.body.contains(u)||document.body.appendChild(u),setTimeout(()=>{u.style.width="80%"},100)}var x;async function p(u,e=!1){iu(),x=x||new DOMParser;let t=await N(u).then(i=>{if(i.headers.get("content-type")?.startsWith("text/html"))return i.text();window.location.assign(u)}).catch(()=>{window.location.assign(u)});if(!t)return;v.forEach(i=>i()),v.clear();let D=x.parseFromString(t,"text/html");M(D,u);let F=D.querySelector("title")?.textContent;if(F)document.title=F;else{let i=document.querySelector("h1");F=i?.innerText??i?.textContent??u.pathname}d.textContent!==F&&(d.textContent=F),d.dataset.persist="",D.body.appendChild(d),w(document.body,D.body),e||(u.hash?document.getElementById(decodeURIComponent(u.hash.substring(1)))?.scrollIntoView():window.scrollTo({top:0})),document.head.querySelectorAll(":not([spa-preserve])").forEach(i=>i.remove()),D.head.querySelectorAll(":not([spa-preserve])").forEach(i=>document.head.appendChild(i)),e||history.pushState({},"",u),H(b(window)),delete d.dataset.persist}window.spaNavigate=p;function ou(){return typeof window<"u"&&(window.addEventListener("click",async u=>{let{url:e}=P(u)??{};if(!(!e||u.ctrlKey||u.metaKey)){if(u.preventDefault(),Fu(e)&&e.hash){document.getElementById(decodeURIComponent(e.hash.substring(1)))?.scrollIntoView(),history.pushState({},"",e);return}try{p(e,!1)}catch{window.location.assign(e)}}}),window.addEventListener("popstate",u=>{let{url:e}=P(u)??{};if(!(window.location.hash&&window.location.pathname===e?.pathname))try{p(new URL(window.location.toString()),!0)}catch{window.location.reload()}})),new class{go(e){let t=new URL(e,window.location.toString());return p(t,!1)}back(){return window.history.back()}forward(){return window.history.forward()}}}ou();H(b(window));if(!customElements.get("route-announcer")){let u={"aria-live":"assertive","aria-atomic":"true",style:"position: absolute; left: 0; top: 0; clip: rect(0 0 0 0); clip-path: inset(50%); overflow: hidden; white-space: nowrap; width: 1px; height: 1px"};customElements.define("route-announcer",class extends HTMLElement{constructor(){super()}connectedCallback(){for(let[t,D]of Object.entries(u))this.setAttribute(t,D)}})}\n';var popover_inline_default='var Jt=Object.create;var At=Object.defineProperty;var te=Object.getOwnPropertyDescriptor;var ee=Object.getOwnPropertyNames;var ue=Object.getPrototypeOf,ne=Object.prototype.hasOwnProperty;var ie=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports);var oe=(t,e,u,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of ee(e))!ne.call(t,i)&&i!==u&&At(t,i,{get:()=>e[i],enumerable:!(n=te(e,i))||n.enumerable});return t};var re=(t,e,u)=>(u=t!=null?Jt(ue(t)):{},oe(e||!t||!t.__esModule?At(u,"default",{value:t,enumerable:!0}):u,t));var qt=ie((tu,Yt)=>{"use strict";Yt.exports=ve;function X(t){return t instanceof Buffer?Buffer.from(t):new t.constructor(t.buffer.slice(),t.byteOffset,t.length)}function ve(t){if(t=t||{},t.circles)return be(t);let e=new Map;if(e.set(Date,o=>new Date(o)),e.set(Map,(o,l)=>new Map(n(Array.from(o),l))),e.set(Set,(o,l)=>new Set(n(Array.from(o),l))),t.constructorHandlers)for(let o of t.constructorHandlers)e.set(o[0],o[1]);let u=null;return t.proto?r:i;function n(o,l){let s=Object.keys(o),c=new Array(s.length);for(let a=0;anew Date(s)),n.set(Map,(s,c)=>new Map(r(Array.from(s),c))),n.set(Set,(s,c)=>new Set(r(Array.from(s),c))),t.constructorHandlers)for(let s of t.constructorHandlers)n.set(s[0],s[1]);let i=null;return t.proto?l:o;function r(s,c){let a=Object.keys(s),D=new Array(a.length);for(let f=0;f({x:t,y:t}),se={left:"right",right:"left",bottom:"top",top:"bottom"},ce={start:"end",end:"start"};function at(t,e,u){return v(t,j(e,u))}function Q(t,e){return typeof t=="function"?t(e):t}function P(t){return t.split("-")[0]}function it(t){return t.split("-")[1]}function ft(t){return t==="x"?"y":"x"}function Ft(t){return t==="y"?"height":"width"}function G(t){return["top","bottom"].includes(P(t))?"y":"x"}function dt(t){return ft(G(t))}function Et(t,e,u){u===void 0&&(u=!1);let n=it(t),i=dt(t),r=Ft(i),o=i==="x"?n===(u?"end":"start")?"right":"left":n==="start"?"bottom":"top";return e.reference[r]>e.floating[r]&&(o=K(o)),[o,K(o)]}function Ct(t){let e=K(t);return[nt(t),e,nt(e)]}function nt(t){return t.replace(/start|end/g,e=>ce[e])}function le(t,e,u){let n=["left","right"],i=["right","left"],r=["top","bottom"],o=["bottom","top"];switch(t){case"top":case"bottom":return u?e?i:n:e?n:i;case"left":case"right":return e?r:o;default:return[]}}function xt(t,e,u,n){let i=it(t),r=le(P(t),u==="start",n);return i&&(r=r.map(o=>o+"-"+i),e&&(r=r.concat(r.map(nt)))),r}function K(t){return t.replace(/left|right|bottom|top/g,e=>se[e])}function De(t){return{top:0,right:0,bottom:0,left:0,...t}}function mt(t){return typeof t!="number"?De(t):{top:t,right:t,bottom:t,left:t}}function k(t){let{x:e,y:u,width:n,height:i}=t;return{width:n,height:i,top:u,left:e,right:e+n,bottom:u+i,x:e,y:u}}function Bt(t,e,u){let{reference:n,floating:i}=t,r=G(e),o=dt(e),l=Ft(o),s=P(e),c=r==="y",a=n.x+n.width/2-i.width/2,D=n.y+n.height/2-i.height/2,f=n[l]/2-i[l]/2,F;switch(s){case"top":F={x:a,y:n.y-i.height};break;case"bottom":F={x:a,y:n.y+n.height};break;case"right":F={x:n.x+n.width,y:D};break;case"left":F={x:n.x-i.width,y:D};break;default:F={x:n.x,y:n.y}}switch(it(e)){case"start":F[o]-=f*(u&&c?-1:1);break;case"end":F[o]+=f*(u&&c?-1:1);break}return F}var wt=async(t,e,u)=>{let{placement:n="bottom",strategy:i="absolute",middleware:r=[],platform:o}=u,l=r.filter(Boolean),s=await(o.isRTL==null?void 0:o.isRTL(e)),c=await o.getElementRects({reference:t,floating:e,strategy:i}),{x:a,y:D}=Bt(c,n,s),f=n,F={},d=0;for(let m=0;mS<=0)){var ut,B;let S=(((ut=r.flip)==null?void 0:ut.index)||0)+1,I=E[S];if(I)return{data:{index:S,overflows:U},reset:{placement:I}};let H=(B=U.filter(O=>O.overflows[0]<=0).sort((O,T)=>O.overflows[1]-T.overflows[1])[0])==null?void 0:B.placement;if(!H)switch(F){case"bestFit":{var z;let O=(z=U.map(T=>[T.placement,T.overflows.filter($=>$>0).reduce(($,Dt)=>$+Dt,0)]).sort((T,$)=>T[1]-$[1])[0])==null?void 0:z[0];O&&(H=O);break}case"initialPlacement":H=l;break}if(i!==H)return{reset:{placement:H}}}return{}}}};function vt(t){let e=j(...t.map(r=>r.left)),u=j(...t.map(r=>r.top)),n=v(...t.map(r=>r.right)),i=v(...t.map(r=>r.bottom));return{x:e,y:u,width:n-e,height:i-u}}function ae(t){let e=t.slice().sort((i,r)=>i.y-r.y),u=[],n=null;for(let i=0;in.height/2?u.push([r]):u[u.length-1].push(r),n=r}return u.map(i=>k(vt(i)))}var bt=function(t){return t===void 0&&(t={}),{name:"inline",options:t,async fn(e){let{placement:u,elements:n,rects:i,platform:r,strategy:o}=e,{padding:l=2,x:s,y:c}=Q(t,e),a=Array.from(await(r.getClientRects==null?void 0:r.getClientRects(n.reference))||[]),D=ae(a),f=k(vt(a)),F=mt(l);function d(){if(D.length===2&&D[0].left>D[1].right&&s!=null&&c!=null)return D.find(g=>s>g.left-F.left&&sg.top-F.top&&c=2){if(G(u)==="y"){let B=D[0],z=D[D.length-1],S=P(u)==="top",I=B.top,H=z.bottom,O=S?B.left:z.left,T=S?B.right:z.right,$=T-O,Dt=H-I;return{top:I,bottom:H,left:O,right:T,width:$,height:Dt,x:O,y:I}}let g=P(u)==="left",h=v(...D.map(B=>B.right)),p=j(...D.map(B=>B.left)),A=D.filter(B=>g?B.left===p:B.right===h),C=A[0].top,E=A[A.length-1].bottom,W=p,N=h,U=N-W,ut=E-C;return{top:C,bottom:E,left:W,right:N,width:U,height:ut,x:W,y:C}}return f}let m=await r.getElementRects({reference:{getBoundingClientRect:d},floating:n.floating,strategy:o});return i.reference.x!==m.reference.x||i.reference.y!==m.reference.y||i.reference.width!==m.reference.width||i.reference.height!==m.reference.height?{reset:{rects:m}}:{}}}};var Rt=function(t){return t===void 0&&(t={}),{name:"shift",options:t,async fn(e){let{x:u,y:n,placement:i}=e,{mainAxis:r=!0,crossAxis:o=!1,limiter:l={fn:g=>{let{x:h,y:p}=g;return{x:h,y:p}}},...s}=Q(t,e),c={x:u,y:n},a=await gt(e,s),D=G(P(i)),f=ft(D),F=c[f],d=c[D];if(r){let g=f==="y"?"top":"left",h=f==="y"?"bottom":"right",p=F+a[g],A=F-a[h];F=at(p,F,A)}if(o){let g=D==="y"?"top":"left",h=D==="y"?"bottom":"right",p=d+a[g],A=d-a[h];d=at(p,d,A)}let m=l.fn({...e,[f]:F,[D]:d});return{...m,data:{x:m.x-u,y:m.y-n}}}}};function rt(){return typeof window<"u"}function V(t){return Ot(t)?(t.nodeName||"").toLowerCase():"#document"}function x(t){var e;return(t==null||(e=t.ownerDocument)==null?void 0:e.defaultView)||window}function L(t){var e;return(e=(Ot(t)?t.ownerDocument:t.document)||window.document)==null?void 0:e.documentElement}function Ot(t){return rt()?t instanceof Node||t instanceof x(t).Node:!1}function w(t){return rt()?t instanceof Element||t instanceof x(t).Element:!1}function R(t){return rt()?t instanceof HTMLElement||t instanceof x(t).HTMLElement:!1}function St(t){return!rt()||typeof ShadowRoot>"u"?!1:t instanceof ShadowRoot||t instanceof x(t).ShadowRoot}function Y(t){let{overflow:e,overflowX:u,overflowY:n,display:i}=y(t);return/auto|scroll|overlay|hidden|clip/.test(e+n+u)&&!["inline","contents"].includes(i)}function Lt(t){return["table","td","th"].includes(V(t))}function J(t){return[":popover-open",":modal"].some(e=>{try{return t.matches(e)}catch{return!1}})}function st(t){let e=ct(),u=w(t)?y(t):t;return["transform","translate","scale","rotate","perspective"].some(n=>u[n]?u[n]!=="none":!1)||(u.containerType?u.containerType!=="normal":!1)||!e&&(u.backdropFilter?u.backdropFilter!=="none":!1)||!e&&(u.filter?u.filter!=="none":!1)||["transform","translate","scale","rotate","perspective","filter"].some(n=>(u.willChange||"").includes(n))||["paint","layout","strict","content"].some(n=>(u.contain||"").includes(n))}function Tt(t){let e=M(t);for(;R(e)&&!_(e);){if(st(e))return e;if(J(e))return null;e=M(e)}return null}function ct(){return typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter","none")}function _(t){return["html","body","#document"].includes(V(t))}function y(t){return x(t).getComputedStyle(t)}function tt(t){return w(t)?{scrollLeft:t.scrollLeft,scrollTop:t.scrollTop}:{scrollLeft:t.scrollX,scrollTop:t.scrollY}}function M(t){if(V(t)==="html")return t;let e=t.assignedSlot||t.parentNode||St(t)&&t.host||L(t);return St(e)?e.host:e}function Pt(t){let e=M(t);return _(e)?t.ownerDocument?t.ownerDocument.body:t.body:R(e)&&Y(e)?e:Pt(e)}function ot(t,e,u){var n;e===void 0&&(e=[]),u===void 0&&(u=!0);let i=Pt(t),r=i===((n=t.ownerDocument)==null?void 0:n.body),o=x(i);if(r){let l=lt(o);return e.concat(o,o.visualViewport||[],Y(i)?i:[],l&&u?ot(l):[])}return e.concat(i,ot(i,[],u))}function lt(t){return t.parent&&Object.getPrototypeOf(t.parent)?t.frameElement:null}function Ht(t){let e=y(t),u=parseFloat(e.width)||0,n=parseFloat(e.height)||0,i=R(t),r=i?t.offsetWidth:u,o=i?t.offsetHeight:n,l=Z(u)!==r||Z(n)!==o;return l&&(u=r,n=o),{width:u,height:n,$:l}}function jt(t){return w(t)?t:t.contextElement}function q(t){let e=jt(t);if(!R(e))return b(1);let u=e.getBoundingClientRect(),{width:n,height:i,$:r}=Ht(e),o=(r?Z(u.width):u.width)/n,l=(r?Z(u.height):u.height)/i;return(!o||!Number.isFinite(o))&&(o=1),(!l||!Number.isFinite(l))&&(l=1),{x:o,y:l}}var fe=b(0);function Wt(t){let e=x(t);return!ct()||!e.visualViewport?fe:{x:e.visualViewport.offsetLeft,y:e.visualViewport.offsetTop}}function Fe(t,e,u){return e===void 0&&(e=!1),!u||e&&u!==x(t)?!1:e}function et(t,e,u,n){e===void 0&&(e=!1),u===void 0&&(u=!1);let i=t.getBoundingClientRect(),r=jt(t),o=b(1);e&&(n?w(n)&&(o=q(n)):o=q(t));let l=Fe(r,u,n)?Wt(r):b(0),s=(i.left+l.x)/o.x,c=(i.top+l.y)/o.y,a=i.width/o.x,D=i.height/o.y;if(r){let f=x(r),F=n&&w(n)?x(n):n,d=f,m=lt(d);for(;m&&n&&F!==d;){let g=q(m),h=m.getBoundingClientRect(),p=y(m),A=h.left+(m.clientLeft+parseFloat(p.paddingLeft))*g.x,C=h.top+(m.clientTop+parseFloat(p.paddingTop))*g.y;s*=g.x,c*=g.y,a*=g.x,D*=g.y,s+=A,c+=C,d=x(m),m=lt(d)}}return k({width:a,height:D,x:s,y:c})}function ht(t,e){let u=tt(t).scrollLeft;return e?e.left+u:et(L(t)).left+u}function Nt(t,e,u){u===void 0&&(u=!1);let n=t.getBoundingClientRect(),i=n.left+e.scrollLeft-(u?0:ht(t,n)),r=n.top+e.scrollTop;return{x:i,y:r}}function de(t){let{elements:e,rect:u,offsetParent:n,strategy:i}=t,r=i==="fixed",o=L(n),l=e?J(e.floating):!1;if(n===o||l&&r)return u;let s={scrollLeft:0,scrollTop:0},c=b(1),a=b(0),D=R(n);if((D||!D&&!r)&&((V(n)!=="body"||Y(o))&&(s=tt(n)),R(n))){let F=et(n);c=q(n),a.x=F.x+n.clientLeft,a.y=F.y+n.clientTop}let f=o&&!D&&!r?Nt(o,s,!0):b(0);return{width:u.width*c.x,height:u.height*c.y,x:u.x*c.x-s.scrollLeft*c.x+a.x+f.x,y:u.y*c.y-s.scrollTop*c.y+a.y+f.y}}function me(t){return Array.from(t.getClientRects())}function ge(t){let e=L(t),u=tt(t),n=t.ownerDocument.body,i=v(e.scrollWidth,e.clientWidth,n.scrollWidth,n.clientWidth),r=v(e.scrollHeight,e.clientHeight,n.scrollHeight,n.clientHeight),o=-u.scrollLeft+ht(t),l=-u.scrollTop;return y(n).direction==="rtl"&&(o+=v(e.clientWidth,n.clientWidth)-i),{width:i,height:r,x:o,y:l}}function pe(t,e){let u=x(t),n=L(t),i=u.visualViewport,r=n.clientWidth,o=n.clientHeight,l=0,s=0;if(i){r=i.width,o=i.height;let c=ct();(!c||c&&e==="fixed")&&(l=i.offsetLeft,s=i.offsetTop)}return{width:r,height:o,x:l,y:s}}function he(t,e){let u=et(t,!0,e==="fixed"),n=u.top+t.clientTop,i=u.left+t.clientLeft,r=R(t)?q(t):b(1),o=t.clientWidth*r.x,l=t.clientHeight*r.y,s=i*r.x,c=n*r.y;return{width:o,height:l,x:s,y:c}}function kt(t,e,u){let n;if(e==="viewport")n=pe(t,u);else if(e==="document")n=ge(L(t));else if(w(e))n=he(e,u);else{let i=Wt(t);n={x:e.x-i.x,y:e.y-i.y,width:e.width,height:e.height}}return k(n)}function Ut(t,e){let u=M(t);return u===e||!w(u)||_(u)?!1:y(u).position==="fixed"||Ut(u,e)}function Ae(t,e){let u=e.get(t);if(u)return u;let n=ot(t,[],!1).filter(l=>w(l)&&V(l)!=="body"),i=null,r=y(t).position==="fixed",o=r?M(t):t;for(;w(o)&&!_(o);){let l=y(o),s=st(o);!s&&l.position==="fixed"&&(i=null),(r?!s&&!i:!s&&l.position==="static"&&!!i&&["absolute","fixed"].includes(i.position)||Y(o)&&!s&&Ut(t,o))?n=n.filter(a=>a!==o):i=l,o=M(o)}return e.set(t,n),n}function Ee(t){let{element:e,boundary:u,rootBoundary:n,strategy:i}=t,o=[...u==="clippingAncestors"?J(e)?[]:Ae(e,this._c):[].concat(u),n],l=o[0],s=o.reduce((c,a)=>{let D=kt(e,a,i);return c.top=v(D.top,c.top),c.right=j(D.right,c.right),c.bottom=j(D.bottom,c.bottom),c.left=v(D.left,c.left),c},kt(e,l,i));return{width:s.right-s.left,height:s.bottom-s.top,x:s.left,y:s.top}}function Ce(t){let{width:e,height:u}=Ht(t);return{width:e,height:u}}function xe(t,e,u){let n=R(e),i=L(e),r=u==="fixed",o=et(t,!0,r,e),l={scrollLeft:0,scrollTop:0},s=b(0);if(n||!n&&!r)if((V(e)!=="body"||Y(i))&&(l=tt(e)),n){let f=et(e,!0,r,e);s.x=f.x+e.clientLeft,s.y=f.y+e.clientTop}else i&&(s.x=ht(i));let c=i&&!n&&!r?Nt(i,l):b(0),a=o.left+l.scrollLeft-s.x-c.x,D=o.top+l.scrollTop-s.y-c.y;return{x:a,y:D,width:o.width,height:o.height}}function pt(t){return y(t).position==="static"}function Mt(t,e){if(!R(t)||y(t).position==="fixed")return null;if(e)return e(t);let u=t.offsetParent;return L(t)===u&&(u=u.ownerDocument.body),u}function $t(t,e){let u=x(t);if(J(t))return u;if(!R(t)){let i=M(t);for(;i&&!_(i);){if(w(i)&&!pt(i))return i;i=M(i)}return u}let n=Mt(t,e);for(;n&&Lt(n)&&pt(n);)n=Mt(n,e);return n&&_(n)&&pt(n)&&!st(n)?u:n||Tt(t)||u}var Be=async function(t){let e=this.getOffsetParent||$t,u=this.getDimensions,n=await u(t.floating);return{reference:xe(t.reference,await e(t.floating),t.strategy),floating:{x:0,y:0,width:n.width,height:n.height}}};function we(t){return y(t).direction==="rtl"}var ye={convertOffsetParentRelativeRectToViewportRelativeRect:de,getDocumentElement:L,getClippingRect:Ee,getOffsetParent:$t,getElementRects:Be,getClientRects:me,getDimensions:Ce,getScale:q,isElement:w,isRTL:we};var Vt=Rt,_t=yt;var zt=bt;var It=(t,e,u)=>{let n=new Map,i={platform:ye,...u},r={...i.platform,_c:n};return wt(t,e,{...i,platform:r})};var Ge=Object.hasOwnProperty;var Kt=re(qt(),1),nu=(0,Kt.default)();var Xt=(t,e,u)=>{let n=new URL(t.getAttribute(e),u);t.setAttribute(e,n.pathname+n.hash)};function Zt(t,e){t.querySelectorAll(\'[href=""], [href^="./"], [href^="../"]\').forEach(u=>Xt(u,"href",e)),t.querySelectorAll(\'[src=""], [src^="./"], [src^="../"]\').forEach(u=>Xt(u,"src",e))}var Re=//;async function Qt(t){let e=await fetch(`${t}`);if(!e.headers.get("content-type")?.startsWith("text/html"))return e;let u=await e.clone().text(),[n,i]=u.match(Re)??[];return i?fetch(`${new URL(i,t)}`):e}var Se=new DOMParser;async function Gt({clientX:t,clientY:e}){let u=this;if(u.dataset.noPopover==="true")return;async function n(d){let{x:m,y:g}=await It(u,d,{middleware:[zt({x:t,y:e}),Vt(),_t()]});Object.assign(d.style,{left:`${m}px`,top:`${g}px`})}let i=()=>[...u.children].some(d=>d.classList.contains("popover"));if(i())return n(u.lastChild);let r=new URL(document.location.href);r.hash="",r.search="";let o=new URL(u.href),l=decodeURIComponent(o.hash);o.hash="",o.search="";let s=await Qt(o).catch(d=>{console.error(d)});if(i()||!s)return;let[c]=s.headers.get("Content-Type").split(";"),[a,D]=c.split("/"),f=document.createElement("div");f.classList.add("popover");let F=document.createElement("div");switch(F.classList.add("popover-inner"),f.appendChild(F),F.dataset.contentType=c??void 0,a){case"image":let d=document.createElement("img");d.src=o.toString(),d.alt=o.pathname,F.appendChild(d);break;case"application":switch(D){case"pdf":let p=document.createElement("iframe");p.src=o.toString(),F.appendChild(p);break;default:break}break;default:let m=await s.text(),g=Se.parseFromString(m,"text/html");Zt(g,o);let h=[...g.getElementsByClassName("popover-hint")];if(h.length===0)return;h.forEach(p=>F.appendChild(p))}if(n(f),u.appendChild(f),l!==""){let d=F.querySelector(l);d&&F.scroll({top:d.offsetTop-12,behavior:"instant"})}}document.addEventListener("nav",()=>{let t=[...document.getElementsByClassName("internal")];for(let e of t)e.addEventListener("mouseenter",Gt),window.addCleanup(()=>e.removeEventListener("mouseenter",Gt))});\n';var custom_default=`/** - * Layout breakpoints - * $mobile: screen width below this value will use mobile styles - * $desktop: screen width above this value will use desktop styles - * Screen width between $mobile and $desktop width will use the tablet layout. - * assuming mobile < desktop - */ -code[data-theme*=" "] { - color: var(--shiki-light); - background-color: var(--shiki-light-bg); -} - -code[data-theme*=" "] span { - color: var(--shiki-light); -} - -[saved-theme=dark] code[data-theme*=" "] { - color: var(--shiki-dark); - background-color: var(--shiki-dark-bg); -} - -[saved-theme=dark] code[data-theme*=" "] span { - color: var(--shiki-dark); -} - -.callout { - border: 1px solid var(--border); - background-color: var(--bg); - border-radius: 5px; - padding: 0 1rem; - overflow-y: hidden; - transition: max-height 0.3s ease; - box-sizing: border-box; - --callout-icon-note: url('data:image/svg+xml; utf8, '); - --callout-icon-abstract: url('data:image/svg+xml; utf8, '); - --callout-icon-info: url('data:image/svg+xml; utf8, '); - --callout-icon-todo: url('data:image/svg+xml; utf8, '); - --callout-icon-tip: url('data:image/svg+xml; utf8, '); - --callout-icon-success: url('data:image/svg+xml; utf8, '); - --callout-icon-question: url('data:image/svg+xml; utf8, '); - --callout-icon-warning: url('data:image/svg+xml; utf8, '); - --callout-icon-failure: url('data:image/svg+xml; utf8, '); - --callout-icon-danger: url('data:image/svg+xml; utf8, '); - --callout-icon-bug: url('data:image/svg+xml; utf8, '); - --callout-icon-example: url('data:image/svg+xml; utf8, '); - --callout-icon-quote: url('data:image/svg+xml; utf8, '); - --callout-icon-fold: url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"%3E%3Cpolyline points="6 9 12 15 18 9"%3E%3C/polyline%3E%3C/svg%3E'); -} -.callout > .callout-content > :first-child { - margin-top: 0; -} -.callout[data-callout] { - --color: #448aff; - --border: #448aff44; - --bg: #448aff10; - --callout-icon: var(--callout-icon-note); -} -.callout[data-callout=abstract] { - --color: #00b0ff; - --border: #00b0ff44; - --bg: #00b0ff10; - --callout-icon: var(--callout-icon-abstract); -} -.callout[data-callout=info], .callout[data-callout=todo] { - --color: #00b8d4; - --border: #00b8d444; - --bg: #00b8d410; - --callout-icon: var(--callout-icon-info); -} -.callout[data-callout=todo] { - --callout-icon: var(--callout-icon-todo); -} -.callout[data-callout=tip] { - --color: #00bfa5; - --border: #00bfa544; - --bg: #00bfa510; - --callout-icon: var(--callout-icon-tip); -} -.callout[data-callout=success] { - --color: #09ad7a; - --border: #09ad7144; - --bg: #09ad7110; - --callout-icon: var(--callout-icon-success); -} -.callout[data-callout=question] { - --color: #dba642; - --border: #dba64244; - --bg: #dba64210; - --callout-icon: var(--callout-icon-question); -} -.callout[data-callout=warning] { - --color: #db8942; - --border: #db894244; - --bg: #db894210; - --callout-icon: var(--callout-icon-warning); -} -.callout[data-callout=failure], .callout[data-callout=danger], .callout[data-callout=bug] { - --color: #db4242; - --border: #db424244; - --bg: #db424210; - --callout-icon: var(--callout-icon-failure); -} -.callout[data-callout=bug] { - --callout-icon: var(--callout-icon-bug); -} -.callout[data-callout=danger] { - --callout-icon: var(--callout-icon-danger); -} -.callout[data-callout=example] { - --color: #7a43b5; - --border: #7a43b544; - --bg: #7a43b510; - --callout-icon: var(--callout-icon-example); -} -.callout[data-callout=quote] { - --color: var(--secondary); - --border: var(--lightgray); - --callout-icon: var(--callout-icon-quote); -} -.callout.is-collapsed > .callout-title > .fold-callout-icon { - transform: rotateZ(-90deg); -} - -.callout-title { - display: flex; - align-items: flex-start; - gap: 5px; - padding: 1rem 0; - color: var(--color); - --icon-size: 18px; -} -.callout-title .fold-callout-icon { - transition: transform 0.15s ease; - opacity: 0.8; - cursor: pointer; - --callout-icon: var(--callout-icon-fold); -} -.callout-title > .callout-title-inner > p { - color: var(--color); - margin: 0; -} -.callout-title .callout-icon, .callout-title .fold-callout-icon { - width: var(--icon-size); - height: var(--icon-size); - flex: 0 0 var(--icon-size); - background-size: var(--icon-size) var(--icon-size); - background-position: center; - background-color: var(--color); - mask-image: var(--callout-icon); - mask-size: var(--icon-size) var(--icon-size); - mask-position: center; - mask-repeat: no-repeat; - padding: 0.2rem 0; -} -.callout-title .callout-title-inner { - font-weight: 600; -} - -html { - scroll-behavior: smooth; - text-size-adjust: none; - overflow-x: hidden; - width: 100vw; -} - -body, -section { - margin: 0; - box-sizing: border-box; - background-color: var(--light); - font-family: var(--bodyFont); - color: var(--darkgray); -} - -.text-highlight { - background-color: var(--textHighlight); - padding: 0 0.1rem; - border-radius: 5px; -} - -::selection { - background: color-mix(in srgb, var(--tertiary) 60%, rgba(255, 255, 255, 0)); - color: var(--darkgray); -} - -p, -ul, -text, -a, -tr, -td, -li, -ol, -ul, -.katex, -.math { - color: var(--darkgray); - fill: var(--darkgray); - hyphens: auto; -} - -p, -ul, -text, -a, -li, -ol, -ul, -.katex, -.math { - overflow-wrap: anywhere; - /* tr and td removed from list of selectors for overflow-wrap, allowing them to use default 'normal' property value */ -} - -.math.math-display { - text-align: center; -} - -strong { - font-weight: 600; -} - -a { - font-weight: 600; - text-decoration: none; - transition: color 0.2s ease; - color: var(--secondary); -} -a:hover { - color: var(--tertiary) !important; -} -a.internal { - text-decoration: none; - background-color: var(--highlight); - padding: 0 0.1rem; - border-radius: 5px; - line-height: 1.4rem; -} -a.internal:has(> img) { - background-color: transparent; - border-radius: 0; - padding: 0; -} -a.internal.tag-link::before { - content: "#"; -} -a.external .external-icon { - height: 1ex; - margin: 0 0.15em; -} -a.external .external-icon > path { - fill: var(--dark); -} - -.desktop-only { - display: initial; -} -@media all and ((max-width: 800px)) { - .desktop-only { - display: none; - } -} - -.mobile-only { - display: none; -} -@media all and ((max-width: 800px)) { - .mobile-only { - display: initial; - } -} - -.page { - max-width: calc(1200px + 300px); - margin: 0 auto; -} -.page article > h1 { - font-size: 2rem; -} -.page article li:has(> input[type=checkbox]) { - list-style-type: none; - padding-left: 0; -} -.page article li:has(> input[type=checkbox]:checked) { - text-decoration: line-through; - text-decoration-color: var(--gray); - color: var(--gray); -} -.page article li > * { - margin-top: 0; - margin-bottom: 0; -} -.page article p > strong { - color: var(--dark); -} -.page > #quartz-body { - display: grid; - grid-template-columns: 320px auto 320px; - grid-template-rows: auto auto auto; - column-gap: 5px; - row-gap: 5px; - grid-template-areas: "grid-sidebar-left grid-header grid-sidebar-right" "grid-sidebar-left grid-center grid-sidebar-right" "grid-sidebar-left grid-footer grid-sidebar-right"; -} -@media all and ((min-width: 800px) and (max-width: 1200px)) { - .page > #quartz-body { - grid-template-columns: 320px auto; - grid-template-rows: auto auto auto auto; - column-gap: 5px; - row-gap: 5px; - grid-template-areas: "grid-sidebar-left grid-header" "grid-sidebar-left grid-center" "grid-sidebar-left grid-sidebar-right" "grid-sidebar-left grid-footer"; - } -} -@media all and ((max-width: 800px)) { - .page > #quartz-body { - grid-template-columns: auto; - grid-template-rows: auto auto auto auto auto; - column-gap: 5px; - row-gap: 5px; - grid-template-areas: "grid-sidebar-left" "grid-header" "grid-center" "grid-sidebar-right" "grid-footer"; - } -} -@media all and not ((min-width: 1200px)) { - .page > #quartz-body { - padding: 0 1rem; - } -} -@media all and ((max-width: 800px)) { - .page > #quartz-body { - margin: 0 auto; - } -} -.page > #quartz-body .sidebar { - gap: 2rem; - top: 0; - box-sizing: border-box; - padding: 6rem 2rem 2rem 2rem; - display: flex; - height: 100vh; - position: sticky; -} -.page > #quartz-body .sidebar.left { - z-index: 1; - grid-area: grid-sidebar-left; - flex-direction: column; -} -@media all and ((max-width: 800px)) { - .page > #quartz-body .sidebar.left { - gap: 0; - align-items: center; - position: initial; - display: flex; - height: unset; - flex-direction: row; - padding: 0; - padding-top: 2rem; - } -} -.page > #quartz-body .sidebar.right { - grid-area: grid-sidebar-right; - margin-right: 0; - flex-direction: column; -} -@media all and ((max-width: 800px)) { - .page > #quartz-body .sidebar.right { - margin-left: inherit; - margin-right: inherit; - } -} -@media all and not ((min-width: 1200px)) { - .page > #quartz-body .sidebar.right { - position: initial; - height: unset; - width: 100%; - flex-direction: row; - padding: 0; - } - .page > #quartz-body .sidebar.right > * { - flex: 1; - } - .page > #quartz-body .sidebar.right > .toc { - display: none; - } -} -.page > #quartz-body .page-header, .page > #quartz-body .page-footer { - margin-top: 1rem; -} -.page > #quartz-body .page-header { - grid-area: grid-header; - margin: 6rem 0 0 0; -} -@media all and ((max-width: 800px)) { - .page > #quartz-body .page-header { - margin-top: 0; - padding: 0; - } -} -.page > #quartz-body .center > article { - grid-area: grid-center; -} -.page > #quartz-body footer { - grid-area: grid-footer; -} -.page > #quartz-body .center, .page > #quartz-body footer { - max-width: 100%; - min-width: 100%; - margin-left: auto; - margin-right: auto; -} -@media all and ((min-width: 800px) and (max-width: 1200px)) { - .page > #quartz-body .center, .page > #quartz-body footer { - margin-right: 0; - } -} -@media all and ((max-width: 800px)) { - .page > #quartz-body .center, .page > #quartz-body footer { - margin-right: 0; - margin-left: 0; - } -} -.page > #quartz-body footer { - margin-left: 0; -} - -.footnotes { - margin-top: 2rem; - border-top: 1px solid var(--lightgray); -} - -input[type=checkbox] { - transform: translateY(2px); - color: var(--secondary); - border: 1px solid var(--lightgray); - border-radius: 3px; - background-color: var(--light); - position: relative; - margin-inline-end: 0.2rem; - margin-inline-start: -1.4rem; - appearance: none; - width: 16px; - height: 16px; -} -input[type=checkbox]:checked { - border-color: var(--secondary); - background-color: var(--secondary); -} -input[type=checkbox]:checked::after { - content: ""; - position: absolute; - left: 4px; - top: 1px; - width: 4px; - height: 8px; - display: block; - border: solid var(--light); - border-width: 0 2px 2px 0; - transform: rotate(45deg); -} - -blockquote { - margin: 1rem 0; - border-left: 3px solid var(--secondary); - padding-left: 1rem; - transition: border-color 0.2s ease; -} - -h1, -h2, -h3, -h4, -h5, -h6, -thead { - font-family: var(--headerFont); - color: var(--dark); - font-weight: revert; - margin-bottom: 0; -} -article > h1 > a[role=anchor], -article > h2 > a[role=anchor], -article > h3 > a[role=anchor], -article > h4 > a[role=anchor], -article > h5 > a[role=anchor], -article > h6 > a[role=anchor], -article > thead > a[role=anchor] { - color: var(--dark); - background-color: transparent; -} - -h1[id] > a[href^="#"], -h2[id] > a[href^="#"], -h3[id] > a[href^="#"], -h4[id] > a[href^="#"], -h5[id] > a[href^="#"], -h6[id] > a[href^="#"] { - margin: 0 0.5rem; - opacity: 0; - transition: opacity 0.2s ease; - transform: translateY(-0.1rem); - font-family: var(--codeFont); - user-select: none; -} -h1[id]:hover > a, -h2[id]:hover > a, -h3[id]:hover > a, -h4[id]:hover > a, -h5[id]:hover > a, -h6[id]:hover > a { - opacity: 1; -} - -h1 { - font-size: 1.75rem; - margin-top: 2.25rem; - margin-bottom: 1rem; -} - -h2 { - font-size: 1.4rem; - margin-top: 1.9rem; - margin-bottom: 1rem; -} - -h3 { - font-size: 1.12rem; - margin-top: 1.62rem; - margin-bottom: 1rem; -} - -h4, -h5, -h6 { - font-size: 1rem; - margin-top: 1.5rem; - margin-bottom: 1rem; -} - -figure[data-rehype-pretty-code-figure] { - margin: 0; - position: relative; - line-height: 1.6rem; - position: relative; -} -figure[data-rehype-pretty-code-figure] > [data-rehype-pretty-code-title] { - font-family: var(--codeFont); - font-size: 0.9rem; - padding: 0.1rem 0.5rem; - border: 1px solid var(--lightgray); - width: fit-content; - border-radius: 5px; - margin-bottom: -0.5rem; - color: var(--darkgray); -} -figure[data-rehype-pretty-code-figure] > pre { - padding: 0; -} - -pre { - font-family: var(--codeFont); - padding: 0 0.5rem; - border-radius: 5px; - overflow-x: auto; - border: 1px solid var(--lightgray); - position: relative; -} -pre:has(> code.mermaid) { - border: none; -} -pre > code { - background: none; - padding: 0; - font-size: 0.85rem; - counter-reset: line; - counter-increment: line 0; - display: grid; - padding: 0.5rem 0; - overflow-x: auto; -} -pre > code [data-highlighted-chars] { - background-color: var(--highlight); - border-radius: 5px; -} -pre > code > [data-line] { - padding: 0 0.25rem; - box-sizing: border-box; - border-left: 3px solid transparent; -} -pre > code > [data-line][data-highlighted-line] { - background-color: var(--highlight); - border-left: 3px solid var(--secondary); -} -pre > code > [data-line]::before { - content: counter(line); - counter-increment: line; - width: 1rem; - margin-right: 1rem; - display: inline-block; - text-align: right; - color: rgba(115, 138, 148, 0.6); -} -pre > code[data-line-numbers-max-digits="2"] > [data-line]::before { - width: 2rem; -} -pre > code[data-line-numbers-max-digits="3"] > [data-line]::before { - width: 3rem; -} - -code { - font-size: 0.9em; - color: var(--dark); - font-family: var(--codeFont); - border-radius: 5px; - padding: 0.1rem 0.2rem; - background: var(--lightgray); -} - -tbody, -li, -p { - line-height: 1.6rem; -} - -.table-container { - overflow-x: auto; -} -.table-container > table { - margin: 1rem; - padding: 1.5rem; - border-collapse: collapse; -} -.table-container > table th, -.table-container > table td { - min-width: 75px; -} -.table-container > table > * { - line-height: 2rem; -} - -th { - text-align: left; - padding: 0.4rem 0.7rem; - border-bottom: 2px solid var(--gray); -} - -td { - padding: 0.2rem 0.7rem; -} - -tr { - border-bottom: 1px solid var(--lightgray); -} -tr:last-child { - border-bottom: none; -} - -img { - max-width: 100%; - border-radius: 5px; - margin: 1rem 0; - content-visibility: auto; -} - -p > img + em { - display: block; - transform: translateY(-1rem); -} - -hr { - width: 100%; - margin: 2rem auto; - height: 1px; - border: none; - background-color: var(--lightgray); -} - -audio, -video { - width: 100%; - border-radius: 5px; -} - -.spacer { - flex: 1 1 auto; -} - -div:has(> .overflow) { - display: flex; - overflow-y: auto; - max-height: 100%; -} - -ul.overflow, -ol.overflow { - max-height: 100%; - overflow-y: auto; - content: ""; - clear: both; - /*&:after { - pointer-events: none; - content: ""; - width: 100%; - height: 50px; - position: absolute; - left: 0; - bottom: 0; - opacity: 1; - transition: opacity 0.3s ease; - background: linear-gradient(transparent 0px, var(--light)); - }*/ -} -ul.overflow > li:last-of-type, -ol.overflow > li:last-of-type { - margin-bottom: 30px; -} - -.transclude ul { - padding-left: 1rem; -} - -.katex-display { - overflow-x: auto; - overflow-y: hidden; -} - -.external-embed.youtube, -iframe.pdf { - aspect-ratio: 16/9; - height: 100%; - width: 100%; - border-radius: 5px; -} - -.navigation-progress { - position: fixed; - top: 0; - left: 0; - width: 0; - height: 3px; - background: var(--secondary); - transition: width 0.2s ease; - z-index: 9999; -} -/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL2hvbWUvYWxhbmQvZ2l0L3F1YXJ0ei9xdWFydHovc3R5bGVzIiwic291cmNlcyI6WyJ2YXJpYWJsZXMuc2NzcyIsInN5bnRheC5zY3NzIiwiY2FsbG91dHMuc2NzcyIsImJhc2Uuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQ0FBO0VBQ0U7RUFDQTs7O0FBR0Y7RUFDRTs7O0FBR0Y7RUFDRTtFQUNBOzs7QUFHRjtFQUNFOzs7QUNaRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBTUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFqQkE7RUFDRTs7QUFrQkY7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBRUU7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBR0U7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7O0FBSUo7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7O0FBRUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFFRTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0UsYUYzSWE7OztBR2hCakI7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdGO0VBQ0U7RUFDQTtFQUNBOzs7QUFFRjtFQUNFO0VBQ0E7OztBQUdGO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7RUFXRTtFQUNBO0VBQ0E7OztBQUdGO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtFQVNFO0FBQ0E7OztBQUlBO0VBQ0U7OztBQUlKO0VBQ0UsYUg5Q2U7OztBR2lEakI7RUFDRSxhSGxEZTtFR21EZjtFQUNBO0VBQ0E7O0FBRUE7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDRTtFQUNBO0VBQ0E7O0FBR0E7RUFDRTs7QUFLTjtFQUNFO0VBQ0E7O0FBRUE7RUFDRTs7O0FBS047RUFDRTs7QUFDQTtFQUZGO0lBR0k7Ozs7QUFJSjtFQUNFOztBQUNBO0VBRkY7SUFHSTs7OztBQUlKO0VBQ0U7RUFDQTs7QUFFRTtFQUNFOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTs7QUFJSjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQVBGO0lBUUk7SUFDQTtJQUNBO0lBQ0E7SUFDQTs7O0FBRUY7RUFkRjtJQWVJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7OztBQUdGO0VBdEJGO0lBdUJJOzs7QUFFRjtFQXpCRjtJQTBCSTs7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTs7QUFDQTtFQUpGO0lBS0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTs7O0FBSUo7RUFDRTtFQUNBO0VBQ0E7O0FBQ0E7RUFKRjtJQUtJO0lBQ0E7OztBQUVGO0VBUkY7SUFTSTtJQUNBO0lBQ0E7SUFDQTtJQUNBOztFQUNBO0lBQ0U7O0VBRUY7SUFDRTs7O0FBSU47RUFFRTs7QUFHRjtFQUNFO0VBQ0E7O0FBQ0E7RUFIRjtJQUlJO0lBQ0E7OztBQUlKO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUVFO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBTkY7SUFPSTs7O0FBRUY7RUFURjtJQVVJO0lBQ0E7OztBQUdKO0VBQ0U7OztBQUtOO0VBQ0U7RUFDQTs7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0U7RUFDQTs7QUFFQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFLTjtFQUNFO0VBQ0E7RUFDQTtFQUNBOzs7QUFHRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtFQU9FO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0VBQ0U7RUFDQTs7O0FBVUY7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtFQUNFOzs7QUFLSjtFQUNFO0VBQ0E7RUFDQTs7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7OztBQUdGO0VBQ0U7RUFDQTtFQUNBOzs7QUFHRjtBQUFBO0FBQUE7RUFHRTtFQUNBO0VBQ0E7OztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7OztBQUlKO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTs7QUFFQTtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFJSjtFQUNFOztBQUdGO0VBQ0U7OztBQUtOO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHRjtBQUFBO0FBQUE7RUFHRTs7O0FBR0Y7RUFDRTs7QUFFQTtFQUNFO0VBQ0E7RUFDQTs7QUFFQTtBQUFBO0VBRUU7O0FBR0Y7RUFDRTs7O0FBS047RUFDRTtFQUNBO0VBQ0E7OztBQUdGO0VBQ0U7OztBQUdGO0VBQ0U7O0FBQ0E7RUFDRTs7O0FBSUo7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0Y7RUFDRTtFQUNBOzs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdGO0FBQUE7RUFFRTtFQUNBOzs7QUFHRjtFQUNFOzs7QUFHRjtFQUNFO0VBQ0E7RUFDQTs7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFHQTtFQUNBO0FBS0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUhBO0FBQUE7RUFDRTs7O0FBaUJGO0VBQ0U7OztBQUlKO0VBQ0U7RUFDQTs7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTtFQUNBOzs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIExheW91dCBicmVha3BvaW50c1xuICogJG1vYmlsZTogc2NyZWVuIHdpZHRoIGJlbG93IHRoaXMgdmFsdWUgd2lsbCB1c2UgbW9iaWxlIHN0eWxlc1xuICogJGRlc2t0b3A6IHNjcmVlbiB3aWR0aCBhYm92ZSB0aGlzIHZhbHVlIHdpbGwgdXNlIGRlc2t0b3Agc3R5bGVzXG4gKiBTY3JlZW4gd2lkdGggYmV0d2VlbiAkbW9iaWxlIGFuZCAkZGVza3RvcCB3aWR0aCB3aWxsIHVzZSB0aGUgdGFibGV0IGxheW91dC5cbiAqIGFzc3VtaW5nIG1vYmlsZSA8IGRlc2t0b3BcbiAqL1xuJGJyZWFrcG9pbnRzOiAoXG4gIG1vYmlsZTogODAwcHgsXG4gIGRlc2t0b3A6IDEyMDBweCxcbik7XG5cbiRtb2JpbGU6IFwiKG1heC13aWR0aDogI3ttYXAtZ2V0KCRicmVha3BvaW50cywgbW9iaWxlKX0pXCI7XG4kdGFibGV0OiBcIihtaW4td2lkdGg6ICN7bWFwLWdldCgkYnJlYWtwb2ludHMsIG1vYmlsZSl9KSBhbmQgKG1heC13aWR0aDogI3ttYXAtZ2V0KCRicmVha3BvaW50cywgZGVza3RvcCl9KVwiO1xuJGRlc2t0b3A6IFwiKG1pbi13aWR0aDogI3ttYXAtZ2V0KCRicmVha3BvaW50cywgZGVza3RvcCl9KVwiO1xuXG4kcGFnZVdpZHRoOiAje21hcC1nZXQoJGJyZWFrcG9pbnRzLCBtb2JpbGUpfTtcbiRzaWRlUGFuZWxXaWR0aDogMzIwcHg7IC8vMzgwcHg7XG4kdG9wU3BhY2luZzogNnJlbTtcbiRib2xkV2VpZ2h0OiA3MDA7XG4kc2VtaUJvbGRXZWlnaHQ6IDYwMDtcbiRub3JtYWxXZWlnaHQ6IDQwMDtcblxuJG1vYmlsZUdyaWQ6IChcbiAgdGVtcGxhdGVSb3dzOiBcImF1dG8gYXV0byBhdXRvIGF1dG8gYXV0b1wiLFxuICB0ZW1wbGF0ZUNvbHVtbnM6IFwiYXV0b1wiLFxuICByb3dHYXA6IFwiNXB4XCIsXG4gIGNvbHVtbkdhcDogXCI1cHhcIixcbiAgdGVtcGxhdGVBcmVhczpcbiAgICAnXCJncmlkLXNpZGViYXItbGVmdFwiXFxcbiAgICAgIFwiZ3JpZC1oZWFkZXJcIlxcXG4gICAgICBcImdyaWQtY2VudGVyXCJcXFxuICAgICAgXCJncmlkLXNpZGViYXItcmlnaHRcIlxcXG4gICAgICBcImdyaWQtZm9vdGVyXCInLFxuKTtcbiR0YWJsZXRHcmlkOiAoXG4gIHRlbXBsYXRlUm93czogXCJhdXRvIGF1dG8gYXV0byBhdXRvXCIsXG4gIHRlbXBsYXRlQ29sdW1uczogXCIjeyRzaWRlUGFuZWxXaWR0aH0gYXV0b1wiLFxuICByb3dHYXA6IFwiNXB4XCIsXG4gIGNvbHVtbkdhcDogXCI1cHhcIixcbiAgdGVtcGxhdGVBcmVhczpcbiAgICAnXCJncmlkLXNpZGViYXItbGVmdCBncmlkLWhlYWRlclwiXFxcbiAgICAgIFwiZ3JpZC1zaWRlYmFyLWxlZnQgZ3JpZC1jZW50ZXJcIlxcXG4gICAgICBcImdyaWQtc2lkZWJhci1sZWZ0IGdyaWQtc2lkZWJhci1yaWdodFwiXFxcbiAgICAgIFwiZ3JpZC1zaWRlYmFyLWxlZnQgZ3JpZC1mb290ZXJcIicsXG4pO1xuJGRlc2t0b3BHcmlkOiAoXG4gIHRlbXBsYXRlUm93czogXCJhdXRvIGF1dG8gYXV0b1wiLFxuICB0ZW1wbGF0ZUNvbHVtbnM6IFwiI3skc2lkZVBhbmVsV2lkdGh9IGF1dG8gI3skc2lkZVBhbmVsV2lkdGh9XCIsXG4gIHJvd0dhcDogXCI1cHhcIixcbiAgY29sdW1uR2FwOiBcIjVweFwiLFxuICB0ZW1wbGF0ZUFyZWFzOlxuICAgICdcImdyaWQtc2lkZWJhci1sZWZ0IGdyaWQtaGVhZGVyIGdyaWQtc2lkZWJhci1yaWdodFwiXFxcbiAgICAgIFwiZ3JpZC1zaWRlYmFyLWxlZnQgZ3JpZC1jZW50ZXIgZ3JpZC1zaWRlYmFyLXJpZ2h0XCJcXFxuICAgICAgXCJncmlkLXNpZGViYXItbGVmdCBncmlkLWZvb3RlciBncmlkLXNpZGViYXItcmlnaHRcIicsXG4pO1xuIiwiY29kZVtkYXRhLXRoZW1lKj1cIiBcIl0ge1xuICBjb2xvcjogdmFyKC0tc2hpa2ktbGlnaHQpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zaGlraS1saWdodC1iZyk7XG59XG5cbmNvZGVbZGF0YS10aGVtZSo9XCIgXCJdIHNwYW4ge1xuICBjb2xvcjogdmFyKC0tc2hpa2ktbGlnaHQpO1xufVxuXG5bc2F2ZWQtdGhlbWU9XCJkYXJrXCJdIGNvZGVbZGF0YS10aGVtZSo9XCIgXCJdIHtcbiAgY29sb3I6IHZhcigtLXNoaWtpLWRhcmspO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zaGlraS1kYXJrLWJnKTtcbn1cblxuW3NhdmVkLXRoZW1lPVwiZGFya1wiXSBjb2RlW2RhdGEtdGhlbWUqPVwiIFwiXSBzcGFuIHtcbiAgY29sb3I6IHZhcigtLXNoaWtpLWRhcmspO1xufVxuIiwiQHVzZSBcIi4vdmFyaWFibGVzLnNjc3NcIiBhcyAqO1xuQHVzZSBcInNhc3M6Y29sb3JcIjtcblxuLmNhbGxvdXQge1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXIpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZyk7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgcGFkZGluZzogMCAxcmVtO1xuICBvdmVyZmxvdy15OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IG1heC1oZWlnaHQgMC4zcyBlYXNlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXG4gICYgPiAuY2FsbG91dC1jb250ZW50ID4gOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG5cbiAgLS1jYWxsb3V0LWljb24tbm90ZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7IHV0ZjgsIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTAwJVwiIGhlaWdodD1cIjEwMCVcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCI+PGxpbmUgeDE9XCIxOFwiIHkxPVwiMlwiIHgyPVwiMjJcIiB5Mj1cIjZcIj48L2xpbmU+PHBhdGggZD1cIk03LjUgMjAuNSAxOSA5bC00LTRMMy41IDE2LjUgMiAyMnpcIj48L3BhdGg+PC9zdmc+Jyk7XG4gIC0tY2FsbG91dC1pY29uLWFic3RyYWN0OiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDsgdXRmOCwgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxMDAlXCIgaGVpZ2h0PVwiMTAwJVwiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIj48cmVjdCB4PVwiOFwiIHk9XCIyXCIgd2lkdGg9XCI4XCIgaGVpZ2h0PVwiNFwiIHJ4PVwiMVwiIHJ5PVwiMVwiPjwvcmVjdD48cGF0aCBkPVwiTTE2IDRoMmEyIDIgMCAwIDEgMiAydjE0YTIgMiAwIDAgMS0yIDJINmEyIDIgMCAwIDEtMi0yVjZhMiAyIDAgMCAxIDItMmgyXCI+PC9wYXRoPjxwYXRoIGQ9XCJNMTIgMTFoNFwiPjwvcGF0aD48cGF0aCBkPVwiTTEyIDE2aDRcIj48L3BhdGg+PHBhdGggZD1cIk04IDExaC4wMVwiPjwvcGF0aD48cGF0aCBkPVwiTTggMTZoLjAxXCI+PC9wYXRoPjwvc3ZnPicpO1xuICAtLWNhbGxvdXQtaWNvbi1pbmZvOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDsgdXRmOCwgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxMDAlXCIgaGVpZ2h0PVwiMTAwJVwiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIj48Y2lyY2xlIGN4PVwiMTJcIiBjeT1cIjEyXCIgcj1cIjEwXCI+PC9jaXJjbGU+PGxpbmUgeDE9XCIxMlwiIHkxPVwiMTZcIiB4Mj1cIjEyXCIgeTI9XCIxMlwiPjwvbGluZT48bGluZSB4MT1cIjEyXCIgeTE9XCI4XCIgeDI9XCIxMi4wMVwiIHkyPVwiOFwiPjwvbGluZT48L3N2Zz4nKTtcbiAgLS1jYWxsb3V0LWljb24tdG9kbzogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7IHV0ZjgsIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTAwJVwiIGhlaWdodD1cIjEwMCVcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCI+PHBhdGggZD1cIk0xMiAyMmM1LjUyMyAwIDEwLTQuNDc3IDEwLTEwUzE3LjUyMyAyIDEyIDIgMiA2LjQ3NyAyIDEyczQuNDc3IDEwIDEwIDEwelwiPjwvcGF0aD48cGF0aCBkPVwibTkgMTIgMiAyIDQtNFwiPjwvcGF0aD48L3N2Zz4nKTtcbiAgLS1jYWxsb3V0LWljb24tdGlwOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDsgdXRmOCw8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjEwMCVcIiBoZWlnaHQ9XCIxMDAlXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiPjxwYXRoIGQ9XCJNOC41IDE0LjVBMi41IDIuNSAwIDAgMCAxMSAxMmMwLTEuMzgtLjUtMi0xLTMtMS4wNzItMi4xNDMtLjIyNC00LjA1NCAyLTYgLjUgMi41IDIgNC45IDQgNi41IDIgMS42IDMgMy41IDMgNS41YTcgNyAwIDEgMS0xNCAwYzAtMS4xNTMuNDMzLTIuMjk0IDEtM2EyLjUgMi41IDAgMCAwIDIuNSAyLjV6XCI+PC9wYXRoPjwvc3ZnPiAnKTtcbiAgLS1jYWxsb3V0LWljb24tc3VjY2VzczogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7IHV0ZjgsPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxMDAlXCIgaGVpZ2h0PVwiMTAwJVwiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIj48cG9seWxpbmUgcG9pbnRzPVwiMjAgNiA5IDE3IDQgMTJcIj48L3BvbHlsaW5lPjwvc3ZnPiAnKTtcbiAgLS1jYWxsb3V0LWljb24tcXVlc3Rpb246IHVybCgnZGF0YTppbWFnZS9zdmcreG1sOyB1dGY4LDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTAwJVwiIGhlaWdodD1cIjEwMCVcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCI+PGNpcmNsZSBjeD1cIjEyXCIgY3k9XCIxMlwiIHI9XCIxMFwiPjwvY2lyY2xlPjxwYXRoIGQ9XCJNOS4wOSA5YTMgMyAwIDAgMSA1LjgzIDFjMCAyLTMgMy0zIDNcIj48L3BhdGg+PGxpbmUgeDE9XCIxMlwiIHkxPVwiMTdcIiB4Mj1cIjEyLjAxXCIgeTI9XCIxN1wiPjwvbGluZT48L3N2Zz4gJyk7XG4gIC0tY2FsbG91dC1pY29uLXdhcm5pbmc6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sOyB1dGY4LCA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjEwMCVcIiBoZWlnaHQ9XCIxMDAlXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiPjxwYXRoIGQ9XCJtMjEuNzMgMTgtOC0xNGEyIDIgMCAwIDAtMy40OCAwbC04IDE0QTIgMiAwIDAgMCA0IDIxaDE2YTIgMiAwIDAgMCAxLjczLTNaXCI+PC9wYXRoPjxsaW5lIHgxPVwiMTJcIiB5MT1cIjlcIiB4Mj1cIjEyXCIgeTI9XCIxM1wiPjwvbGluZT48bGluZSB4MT1cIjEyXCIgeTE9XCIxN1wiIHgyPVwiMTIuMDFcIiB5Mj1cIjE3XCI+PC9saW5lPjwvc3ZnPicpO1xuICAtLWNhbGxvdXQtaWNvbi1mYWlsdXJlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDsgdXRmOCw8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjEwMCVcIiBoZWlnaHQ9XCIxMDAlXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiPjxsaW5lIHgxPVwiMThcIiB5MT1cIjZcIiB4Mj1cIjZcIiB5Mj1cIjE4XCI+PC9saW5lPjxsaW5lIHgxPVwiNlwiIHkxPVwiNlwiIHgyPVwiMThcIiB5Mj1cIjE4XCI+PC9saW5lPjwvc3ZnPiAnKTtcbiAgLS1jYWxsb3V0LWljb24tZGFuZ2VyOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDsgdXRmOCw8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjEwMCVcIiBoZWlnaHQ9XCIxMDAlXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiPjxwb2x5Z29uIHBvaW50cz1cIjEzIDIgMyAxNCAxMiAxNCAxMSAyMiAyMSAxMCAxMiAxMCAxMyAyXCI+PC9wb2x5Z29uPjwvc3ZnPiAnKTtcbiAgLS1jYWxsb3V0LWljb24tYnVnOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDsgdXRmOCwgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxMDAlXCIgaGVpZ2h0PVwiMTAwJVwiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIj48cmVjdCB3aWR0aD1cIjhcIiBoZWlnaHQ9XCIxNFwiIHg9XCI4XCIgeT1cIjZcIiByeD1cIjRcIj48L3JlY3Q+PHBhdGggZD1cIm0xOSA3LTMgMlwiPjwvcGF0aD48cGF0aCBkPVwibTUgNyAzIDJcIj48L3BhdGg+PHBhdGggZD1cIm0xOSAxOS0zLTJcIj48L3BhdGg+PHBhdGggZD1cIm01IDE5IDMtMlwiPjwvcGF0aD48cGF0aCBkPVwiTTIwIDEzaC00XCI+PC9wYXRoPjxwYXRoIGQ9XCJNNCAxM2g0XCI+PC9wYXRoPjxwYXRoIGQ9XCJtMTAgNCAxIDJcIj48L3BhdGg+PHBhdGggZD1cIm0xNCA0LTEgMlwiPjwvcGF0aD48L3N2Zz4nKTtcbiAgLS1jYWxsb3V0LWljb24tZXhhbXBsZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7IHV0ZjgsPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxMDAlXCIgaGVpZ2h0PVwiMTAwJVwiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIj48bGluZSB4MT1cIjhcIiB5MT1cIjZcIiB4Mj1cIjIxXCIgeTI9XCI2XCI+PC9saW5lPjxsaW5lIHgxPVwiOFwiIHkxPVwiMTJcIiB4Mj1cIjIxXCIgeTI9XCIxMlwiPjwvbGluZT48bGluZSB4MT1cIjhcIiB5MT1cIjE4XCIgeDI9XCIyMVwiIHkyPVwiMThcIj48L2xpbmU+PGxpbmUgeDE9XCIzXCIgeTE9XCI2XCIgeDI9XCIzLjAxXCIgeTI9XCI2XCI+PC9saW5lPjxsaW5lIHgxPVwiM1wiIHkxPVwiMTJcIiB4Mj1cIjMuMDFcIiB5Mj1cIjEyXCI+PC9saW5lPjxsaW5lIHgxPVwiM1wiIHkxPVwiMThcIiB4Mj1cIjMuMDFcIiB5Mj1cIjE4XCI+PC9saW5lPjwvc3ZnPiAnKTtcbiAgLS1jYWxsb3V0LWljb24tcXVvdGU6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sOyB1dGY4LCA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjEwMCVcIiBoZWlnaHQ9XCIxMDAlXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiPjxwYXRoIGQ9XCJNMyAyMWMzIDAgNy0xIDctOFY1YzAtMS4yNS0uNzU2LTIuMDE3LTItMkg0Yy0xLjI1IDAtMiAuNzUtMiAxLjk3MlYxMWMwIDEuMjUuNzUgMiAyIDIgMSAwIDEgMCAxIDF2MWMwIDEtMSAyLTIgMnMtMSAuMDA4LTEgMS4wMzFWMjBjMCAxIDAgMSAxIDF6XCI+PC9wYXRoPjxwYXRoIGQ9XCJNMTUgMjFjMyAwIDctMSA3LThWNWMwLTEuMjUtLjc1Ny0yLjAxNy0yLTJoLTRjLTEuMjUgMC0yIC43NS0yIDEuOTcyVjExYzAgMS4yNS43NSAyIDIgMmguNzVjMCAyLjI1LjI1IDQtMi43NSA0djNjMCAxIDAgMSAxIDF6XCI+PC9wYXRoPjwvc3ZnPicpO1xuICAtLWNhbGxvdXQtaWNvbi1mb2xkOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjRcIiBoZWlnaHQ9XCIyNFwiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiUzRSUzQ3BvbHlsaW5lIHBvaW50cz1cIjYgOSAxMiAxNSAxOCA5XCIlM0UlM0MvcG9seWxpbmUlM0UlM0Mvc3ZnJTNFJyk7XG5cbiAgJltkYXRhLWNhbGxvdXRdIHtcbiAgICAtLWNvbG9yOiAjNDQ4YWZmO1xuICAgIC0tYm9yZGVyOiAjNDQ4YWZmNDQ7XG4gICAgLS1iZzogIzQ0OGFmZjEwO1xuICAgIC0tY2FsbG91dC1pY29uOiB2YXIoLS1jYWxsb3V0LWljb24tbm90ZSk7XG4gIH1cblxuICAmW2RhdGEtY2FsbG91dD1cImFic3RyYWN0XCJdIHtcbiAgICAtLWNvbG9yOiAjMDBiMGZmO1xuICAgIC0tYm9yZGVyOiAjMDBiMGZmNDQ7XG4gICAgLS1iZzogIzAwYjBmZjEwO1xuICAgIC0tY2FsbG91dC1pY29uOiB2YXIoLS1jYWxsb3V0LWljb24tYWJzdHJhY3QpO1xuICB9XG5cbiAgJltkYXRhLWNhbGxvdXQ9XCJpbmZvXCJdLFxuICAmW2RhdGEtY2FsbG91dD1cInRvZG9cIl0ge1xuICAgIC0tY29sb3I6ICMwMGI4ZDQ7XG4gICAgLS1ib3JkZXI6ICMwMGI4ZDQ0NDtcbiAgICAtLWJnOiAjMDBiOGQ0MTA7XG4gICAgLS1jYWxsb3V0LWljb246IHZhcigtLWNhbGxvdXQtaWNvbi1pbmZvKTtcbiAgfVxuXG4gICZbZGF0YS1jYWxsb3V0PVwidG9kb1wiXSB7XG4gICAgLS1jYWxsb3V0LWljb246IHZhcigtLWNhbGxvdXQtaWNvbi10b2RvKTtcbiAgfVxuXG4gICZbZGF0YS1jYWxsb3V0PVwidGlwXCJdIHtcbiAgICAtLWNvbG9yOiAjMDBiZmE1O1xuICAgIC0tYm9yZGVyOiAjMDBiZmE1NDQ7XG4gICAgLS1iZzogIzAwYmZhNTEwO1xuICAgIC0tY2FsbG91dC1pY29uOiB2YXIoLS1jYWxsb3V0LWljb24tdGlwKTtcbiAgfVxuXG4gICZbZGF0YS1jYWxsb3V0PVwic3VjY2Vzc1wiXSB7XG4gICAgLS1jb2xvcjogIzA5YWQ3YTtcbiAgICAtLWJvcmRlcjogIzA5YWQ3MTQ0O1xuICAgIC0tYmc6ICMwOWFkNzExMDtcbiAgICAtLWNhbGxvdXQtaWNvbjogdmFyKC0tY2FsbG91dC1pY29uLXN1Y2Nlc3MpO1xuICB9XG5cbiAgJltkYXRhLWNhbGxvdXQ9XCJxdWVzdGlvblwiXSB7XG4gICAgLS1jb2xvcjogI2RiYTY0MjtcbiAgICAtLWJvcmRlcjogI2RiYTY0MjQ0O1xuICAgIC0tYmc6ICNkYmE2NDIxMDtcbiAgICAtLWNhbGxvdXQtaWNvbjogdmFyKC0tY2FsbG91dC1pY29uLXF1ZXN0aW9uKTtcbiAgfVxuXG4gICZbZGF0YS1jYWxsb3V0PVwid2FybmluZ1wiXSB7XG4gICAgLS1jb2xvcjogI2RiODk0MjtcbiAgICAtLWJvcmRlcjogI2RiODk0MjQ0O1xuICAgIC0tYmc6ICNkYjg5NDIxMDtcbiAgICAtLWNhbGxvdXQtaWNvbjogdmFyKC0tY2FsbG91dC1pY29uLXdhcm5pbmcpO1xuICB9XG5cbiAgJltkYXRhLWNhbGxvdXQ9XCJmYWlsdXJlXCJdLFxuICAmW2RhdGEtY2FsbG91dD1cImRhbmdlclwiXSxcbiAgJltkYXRhLWNhbGxvdXQ9XCJidWdcIl0ge1xuICAgIC0tY29sb3I6ICNkYjQyNDI7XG4gICAgLS1ib3JkZXI6ICNkYjQyNDI0NDtcbiAgICAtLWJnOiAjZGI0MjQyMTA7XG4gICAgLS1jYWxsb3V0LWljb246IHZhcigtLWNhbGxvdXQtaWNvbi1mYWlsdXJlKTtcbiAgfVxuXG4gICZbZGF0YS1jYWxsb3V0PVwiYnVnXCJdIHtcbiAgICAtLWNhbGxvdXQtaWNvbjogdmFyKC0tY2FsbG91dC1pY29uLWJ1Zyk7XG4gIH1cblxuICAmW2RhdGEtY2FsbG91dD1cImRhbmdlclwiXSB7XG4gICAgLS1jYWxsb3V0LWljb246IHZhcigtLWNhbGxvdXQtaWNvbi1kYW5nZXIpO1xuICB9XG5cbiAgJltkYXRhLWNhbGxvdXQ9XCJleGFtcGxlXCJdIHtcbiAgICAtLWNvbG9yOiAjN2E0M2I1O1xuICAgIC0tYm9yZGVyOiAjN2E0M2I1NDQ7XG4gICAgLS1iZzogIzdhNDNiNTEwO1xuICAgIC0tY2FsbG91dC1pY29uOiB2YXIoLS1jYWxsb3V0LWljb24tZXhhbXBsZSk7XG4gIH1cblxuICAmW2RhdGEtY2FsbG91dD1cInF1b3RlXCJdIHtcbiAgICAtLWNvbG9yOiB2YXIoLS1zZWNvbmRhcnkpO1xuICAgIC0tYm9yZGVyOiB2YXIoLS1saWdodGdyYXkpO1xuICAgIC0tY2FsbG91dC1pY29uOiB2YXIoLS1jYWxsb3V0LWljb24tcXVvdGUpO1xuICB9XG5cbiAgJi5pcy1jb2xsYXBzZWQgPiAuY2FsbG91dC10aXRsZSA+IC5mb2xkLWNhbGxvdXQtaWNvbiB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGVaKC05MGRlZyk7XG4gIH1cbn1cblxuLmNhbGxvdXQtdGl0bGUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgZ2FwOiA1cHg7XG4gIHBhZGRpbmc6IDFyZW0gMDtcbiAgY29sb3I6IHZhcigtLWNvbG9yKTtcblxuICAtLWljb24tc2l6ZTogMThweDtcblxuICAmIC5mb2xkLWNhbGxvdXQtaWNvbiB7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGVhc2U7XG4gICAgb3BhY2l0eTogMC44O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAtLWNhbGxvdXQtaWNvbjogdmFyKC0tY2FsbG91dC1pY29uLWZvbGQpO1xuICB9XG5cbiAgJiA+IC5jYWxsb3V0LXRpdGxlLWlubmVyID4gcCB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yKTtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAuY2FsbG91dC1pY29uLFxuICAmIC5mb2xkLWNhbGxvdXQtaWNvbiB7XG4gICAgd2lkdGg6IHZhcigtLWljb24tc2l6ZSk7XG4gICAgaGVpZ2h0OiB2YXIoLS1pY29uLXNpemUpO1xuICAgIGZsZXg6IDAgMCB2YXIoLS1pY29uLXNpemUpO1xuXG4gICAgLy8gaWNvbiBzdXBwb3J0XG4gICAgYmFja2dyb3VuZC1zaXplOiB2YXIoLS1pY29uLXNpemUpIHZhcigtLWljb24tc2l6ZSk7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yKTtcbiAgICBtYXNrLWltYWdlOiB2YXIoLS1jYWxsb3V0LWljb24pO1xuICAgIG1hc2stc2l6ZTogdmFyKC0taWNvbi1zaXplKSB2YXIoLS1pY29uLXNpemUpO1xuICAgIG1hc2stcG9zaXRpb246IGNlbnRlcjtcbiAgICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIHBhZGRpbmc6IDAuMnJlbSAwO1xuICB9XG5cbiAgLmNhbGxvdXQtdGl0bGUtaW5uZXIge1xuICAgIGZvbnQtd2VpZ2h0OiAkc2VtaUJvbGRXZWlnaHQ7XG4gIH1cbn1cbiIsIkB1c2UgXCIuL3ZhcmlhYmxlcy5zY3NzXCIgYXMgKjtcbkB1c2UgXCIuL3N5bnRheC5zY3NzXCI7XG5AdXNlIFwiLi9jYWxsb3V0cy5zY3NzXCI7XG5cbmh0bWwge1xuICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcbiAgdGV4dC1zaXplLWFkanVzdDogbm9uZTtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICB3aWR0aDogMTAwdnc7XG59XG5cbmJvZHksXG5zZWN0aW9uIHtcbiAgbWFyZ2luOiAwO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1saWdodCk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1ib2R5Rm9udCk7XG4gIGNvbG9yOiB2YXIoLS1kYXJrZ3JheSk7XG59XG5cbi50ZXh0LWhpZ2hsaWdodCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRleHRIaWdobGlnaHQpO1xuICBwYWRkaW5nOiAwIDAuMXJlbTtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xufVxuOjpzZWxlY3Rpb24ge1xuICBiYWNrZ3JvdW5kOiBjb2xvci1taXgoaW4gc3JnYiwgdmFyKC0tdGVydGlhcnkpIDYwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSk7XG4gIGNvbG9yOiB2YXIoLS1kYXJrZ3JheSk7XG59XG5cbnAsXG51bCxcbnRleHQsXG5hLFxudHIsXG50ZCxcbmxpLFxub2wsXG51bCxcbi5rYXRleCxcbi5tYXRoIHtcbiAgY29sb3I6IHZhcigtLWRhcmtncmF5KTtcbiAgZmlsbDogdmFyKC0tZGFya2dyYXkpO1xuICBoeXBoZW5zOiBhdXRvO1xufVxuXG5wLFxudWwsXG50ZXh0LFxuYSxcbmxpLFxub2wsXG51bCxcbi5rYXRleCxcbi5tYXRoIHtcbiAgb3ZlcmZsb3ctd3JhcDogYW55d2hlcmU7XG4gIC8qIHRyIGFuZCB0ZCByZW1vdmVkIGZyb20gbGlzdCBvZiBzZWxlY3RvcnMgZm9yIG92ZXJmbG93LXdyYXAsIGFsbG93aW5nIHRoZW0gdG8gdXNlIGRlZmF1bHQgJ25vcm1hbCcgcHJvcGVydHkgdmFsdWUgKi9cbn1cblxuLm1hdGgge1xuICAmLm1hdGgtZGlzcGxheSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiAkc2VtaUJvbGRXZWlnaHQ7XG59XG5cbmEge1xuICBmb250LXdlaWdodDogJHNlbWlCb2xkV2VpZ2h0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMnMgZWFzZTtcbiAgY29sb3I6IHZhcigtLXNlY29uZGFyeSk7XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLXRlcnRpYXJ5KSAhaW1wb3J0YW50O1xuICB9XG5cbiAgJi5pbnRlcm5hbCB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWhpZ2hsaWdodCk7XG4gICAgcGFkZGluZzogMCAwLjFyZW07XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjRyZW07XG5cbiAgICAmOmhhcyg+IGltZykge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gICAgJi50YWctbGluayB7XG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIiNcIjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmV4dGVybmFsIC5leHRlcm5hbC1pY29uIHtcbiAgICBoZWlnaHQ6IDFleDtcbiAgICBtYXJnaW46IDAgMC4xNWVtO1xuXG4gICAgPiBwYXRoIHtcbiAgICAgIGZpbGw6IHZhcigtLWRhcmspO1xuICAgIH1cbiAgfVxufVxuXG4uZGVza3RvcC1vbmx5IHtcbiAgZGlzcGxheTogaW5pdGlhbDtcbiAgQG1lZGlhIGFsbCBhbmQgKCRtb2JpbGUpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5tb2JpbGUtb25seSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIEBtZWRpYSBhbGwgYW5kICgkbW9iaWxlKSB7XG4gICAgZGlzcGxheTogaW5pdGlhbDtcbiAgfVxufVxuXG4ucGFnZSB7XG4gIG1heC13aWR0aDogY2FsYygje21hcC1nZXQoJGJyZWFrcG9pbnRzLCBkZXNrdG9wKX0gKyAzMDBweCk7XG4gIG1hcmdpbjogMCBhdXRvO1xuICAmIGFydGljbGUge1xuICAgICYgPiBoMSB7XG4gICAgICBmb250LXNpemU6IDJyZW07XG4gICAgfVxuXG4gICAgJiBsaTpoYXMoPiBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0pIHtcbiAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG5cbiAgICAmIGxpOmhhcyg+IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkKSB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogdmFyKC0tZ3JheSk7XG4gICAgICBjb2xvcjogdmFyKC0tZ3JheSk7XG4gICAgfVxuXG4gICAgJiBsaSA+ICoge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgcCA+IHN0cm9uZyB7XG4gICAgICBjb2xvcjogdmFyKC0tZGFyayk7XG4gICAgfVxuICB9XG5cbiAgJiA+ICNxdWFydHotYm9keSB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6ICN7bWFwLWdldCgkZGVza3RvcEdyaWQsIHRlbXBsYXRlQ29sdW1ucyl9O1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogI3ttYXAtZ2V0KCRkZXNrdG9wR3JpZCwgdGVtcGxhdGVSb3dzKX07XG4gICAgY29sdW1uLWdhcDogI3ttYXAtZ2V0KCRkZXNrdG9wR3JpZCwgY29sdW1uR2FwKX07XG4gICAgcm93LWdhcDogI3ttYXAtZ2V0KCRkZXNrdG9wR3JpZCwgcm93R2FwKX07XG4gICAgZ3JpZC10ZW1wbGF0ZS1hcmVhczogI3ttYXAtZ2V0KCRkZXNrdG9wR3JpZCwgdGVtcGxhdGVBcmVhcyl9O1xuICAgIEBtZWRpYSBhbGwgYW5kICgkdGFibGV0KSB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6ICN7bWFwLWdldCgkdGFibGV0R3JpZCwgdGVtcGxhdGVDb2x1bW5zKX07XG4gICAgICBncmlkLXRlbXBsYXRlLXJvd3M6ICN7bWFwLWdldCgkdGFibGV0R3JpZCwgdGVtcGxhdGVSb3dzKX07XG4gICAgICBjb2x1bW4tZ2FwOiAje21hcC1nZXQoJHRhYmxldEdyaWQsIGNvbHVtbkdhcCl9O1xuICAgICAgcm93LWdhcDogI3ttYXAtZ2V0KCR0YWJsZXRHcmlkLCByb3dHYXApfTtcbiAgICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6ICN7bWFwLWdldCgkdGFibGV0R3JpZCwgdGVtcGxhdGVBcmVhcyl9O1xuICAgIH1cbiAgICBAbWVkaWEgYWxsIGFuZCAoJG1vYmlsZSkge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAje21hcC1nZXQoJG1vYmlsZUdyaWQsIHRlbXBsYXRlQ29sdW1ucyl9O1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiAje21hcC1nZXQoJG1vYmlsZUdyaWQsIHRlbXBsYXRlUm93cyl9O1xuICAgICAgY29sdW1uLWdhcDogI3ttYXAtZ2V0KCRtb2JpbGVHcmlkLCBjb2x1bW5HYXApfTtcbiAgICAgIHJvdy1nYXA6ICN7bWFwLWdldCgkbW9iaWxlR3JpZCwgcm93R2FwKX07XG4gICAgICBncmlkLXRlbXBsYXRlLWFyZWFzOiAje21hcC1nZXQoJG1vYmlsZUdyaWQsIHRlbXBsYXRlQXJlYXMpfTtcbiAgICB9XG5cbiAgICBAbWVkaWEgYWxsIGFuZCBub3QgKCRkZXNrdG9wKSB7XG4gICAgICBwYWRkaW5nOiAwIDFyZW07XG4gICAgfVxuICAgIEBtZWRpYSBhbGwgYW5kICgkbW9iaWxlKSB7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICB9XG5cbiAgICAmIC5zaWRlYmFyIHtcbiAgICAgIGdhcDogMnJlbTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICBwYWRkaW5nOiAkdG9wU3BhY2luZyAycmVtIDJyZW0gMnJlbTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBoZWlnaHQ6IDEwMHZoO1xuICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICB9XG5cbiAgICAmIC5zaWRlYmFyLmxlZnQge1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIGdyaWQtYXJlYTogZ3JpZC1zaWRlYmFyLWxlZnQ7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgQG1lZGlhIGFsbCBhbmQgKCRtb2JpbGUpIHtcbiAgICAgICAgZ2FwOiAwO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBwb3NpdGlvbjogaW5pdGlhbDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgaGVpZ2h0OiB1bnNldDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgcGFkZGluZy10b3A6IDJyZW07XG4gICAgICB9XG4gICAgfVxuXG4gICAgJiAuc2lkZWJhci5yaWdodCB7XG4gICAgICBncmlkLWFyZWE6IGdyaWQtc2lkZWJhci1yaWdodDtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBAbWVkaWEgYWxsIGFuZCAoJG1vYmlsZSkge1xuICAgICAgICBtYXJnaW4tbGVmdDogaW5oZXJpdDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBpbmhlcml0O1xuICAgICAgfVxuICAgICAgQG1lZGlhIGFsbCBhbmQgbm90ICgkZGVza3RvcCkge1xuICAgICAgICBwb3NpdGlvbjogaW5pdGlhbDtcbiAgICAgICAgaGVpZ2h0OiB1bnNldDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICYgPiAqIHtcbiAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICB9XG4gICAgICAgICYgPiAudG9jIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICYgLnBhZ2UtaGVhZGVyLFxuICAgICYgLnBhZ2UtZm9vdGVyIHtcbiAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgfVxuXG4gICAgJiAucGFnZS1oZWFkZXIge1xuICAgICAgZ3JpZC1hcmVhOiBncmlkLWhlYWRlcjtcbiAgICAgIG1hcmdpbjogJHRvcFNwYWNpbmcgMCAwIDA7XG4gICAgICBAbWVkaWEgYWxsIGFuZCAoJG1vYmlsZSkge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgICYgLmNlbnRlciA+IGFydGljbGUge1xuICAgICAgZ3JpZC1hcmVhOiBncmlkLWNlbnRlcjtcbiAgICB9XG5cbiAgICAmIGZvb3RlciB7XG4gICAgICBncmlkLWFyZWE6IGdyaWQtZm9vdGVyO1xuICAgIH1cblxuICAgICYgLmNlbnRlcixcbiAgICAmIGZvb3RlciB7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIEBtZWRpYSBhbGwgYW5kICgkdGFibGV0KSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSBhbGwgYW5kICgkbW9iaWxlKSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuICAgICYgZm9vdGVyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuXG4uZm9vdG5vdGVzIHtcbiAgbWFyZ2luLXRvcDogMnJlbTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWxpZ2h0Z3JheSk7XG59XG5cbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgycHgpO1xuICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5KTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tbGlnaHRncmF5KTtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1saWdodCk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWlubGluZS1lbmQ6IDAuMnJlbTtcbiAgbWFyZ2luLWlubGluZS1zdGFydDogLTEuNHJlbTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgd2lkdGg6IDE2cHg7XG4gIGhlaWdodDogMTZweDtcblxuICAmOmNoZWNrZWQge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tc2Vjb25kYXJ5KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zZWNvbmRhcnkpO1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDRweDtcbiAgICAgIHRvcDogMXB4O1xuICAgICAgd2lkdGg6IDRweDtcbiAgICAgIGhlaWdodDogOHB4O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBib3JkZXI6IHNvbGlkIHZhcigtLWxpZ2h0KTtcbiAgICAgIGJvcmRlci13aWR0aDogMCAycHggMnB4IDA7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgfVxuICB9XG59XG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW46IDFyZW0gMDtcbiAgYm9yZGVyLWxlZnQ6IDNweCBzb2xpZCB2YXIoLS1zZWNvbmRhcnkpO1xuICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjJzIGVhc2U7XG59XG5cbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNixcbnRoZWFkIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWhlYWRlckZvbnQpO1xuICBjb2xvcjogdmFyKC0tZGFyayk7XG4gIGZvbnQtd2VpZ2h0OiByZXZlcnQ7XG4gIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgYXJ0aWNsZSA+ICYgPiBhW3JvbGU9XCJhbmNob3JcIl0ge1xuICAgIGNvbG9yOiB2YXIoLS1kYXJrKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG5oMSxcbmgyLFxuaDMsXG5oNCxcbmg1LFxuaDYge1xuICAmW2lkXSA+IGFbaHJlZl49XCIjXCJdIHtcbiAgICBtYXJnaW46IDAgMC41cmVtO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2U7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0wLjFyZW0pO1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1jb2RlRm9udCk7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIH1cblxuICAmW2lkXTpob3ZlciA+IGEge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLy8gdHlwb2dyYXBoeSBpbXByb3ZlbWVudHNcbmgxIHtcbiAgZm9udC1zaXplOiAxLjc1cmVtO1xuICBtYXJnaW4tdG9wOiAyLjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG5oMiB7XG4gIGZvbnQtc2l6ZTogMS40cmVtO1xuICBtYXJnaW4tdG9wOiAxLjlyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbmgzIHtcbiAgZm9udC1zaXplOiAxLjEycmVtO1xuICBtYXJnaW4tdG9wOiAxLjYycmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG5oNCxcbmg1LFxuaDYge1xuICBmb250LXNpemU6IDFyZW07XG4gIG1hcmdpbi10b3A6IDEuNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuZmlndXJlW2RhdGEtcmVoeXBlLXByZXR0eS1jb2RlLWZpZ3VyZV0ge1xuICBtYXJnaW46IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGluZS1oZWlnaHQ6IDEuNnJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICYgPiBbZGF0YS1yZWh5cGUtcHJldHR5LWNvZGUtdGl0bGVdIHtcbiAgICBmb250LWZhbWlseTogdmFyKC0tY29kZUZvbnQpO1xuICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICAgIHBhZGRpbmc6IDAuMXJlbSAwLjVyZW07XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tbGlnaHRncmF5KTtcbiAgICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIG1hcmdpbi1ib3R0b206IC0wLjVyZW07XG4gICAgY29sb3I6IHZhcigtLWRhcmtncmF5KTtcbiAgfVxuXG4gICYgPiBwcmUge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cblxucHJlIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWNvZGVGb250KTtcbiAgcGFkZGluZzogMCAwLjVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tbGlnaHRncmF5KTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICY6aGFzKD4gY29kZS5tZXJtYWlkKSB7XG4gICAgYm9yZGVyOiBub25lO1xuICB9XG5cbiAgJiA+IGNvZGUge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICBmb250LXNpemU6IDAuODVyZW07XG4gICAgY291bnRlci1yZXNldDogbGluZTtcbiAgICBjb3VudGVyLWluY3JlbWVudDogbGluZSAwO1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgcGFkZGluZzogMC41cmVtIDA7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcblxuICAgICYgW2RhdGEtaGlnaGxpZ2h0ZWQtY2hhcnNdIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWhpZ2hsaWdodCk7XG4gICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgfVxuXG4gICAgJiA+IFtkYXRhLWxpbmVdIHtcbiAgICAgIHBhZGRpbmc6IDAgMC4yNXJlbTtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICBib3JkZXItbGVmdDogM3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuXG4gICAgICAmW2RhdGEtaGlnaGxpZ2h0ZWQtbGluZV0ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1oaWdobGlnaHQpO1xuICAgICAgICBib3JkZXItbGVmdDogM3B4IHNvbGlkIHZhcigtLXNlY29uZGFyeSk7XG4gICAgICB9XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IGNvdW50ZXIobGluZSk7XG4gICAgICAgIGNvdW50ZXItaW5jcmVtZW50OiBsaW5lO1xuICAgICAgICB3aWR0aDogMXJlbTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICBjb2xvcjogcmdiYSgxMTUsIDEzOCwgMTQ4LCAwLjYpO1xuICAgICAgfVxuICAgIH1cblxuICAgICZbZGF0YS1saW5lLW51bWJlcnMtbWF4LWRpZ2l0cz1cIjJcIl0gPiBbZGF0YS1saW5lXTo6YmVmb3JlIHtcbiAgICAgIHdpZHRoOiAycmVtO1xuICAgIH1cblxuICAgICZbZGF0YS1saW5lLW51bWJlcnMtbWF4LWRpZ2l0cz1cIjNcIl0gPiBbZGF0YS1saW5lXTo6YmVmb3JlIHtcbiAgICAgIHdpZHRoOiAzcmVtO1xuICAgIH1cbiAgfVxufVxuXG5jb2RlIHtcbiAgZm9udC1zaXplOiAwLjllbTtcbiAgY29sb3I6IHZhcigtLWRhcmspO1xuICBmb250LWZhbWlseTogdmFyKC0tY29kZUZvbnQpO1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIHBhZGRpbmc6IDAuMXJlbSAwLjJyZW07XG4gIGJhY2tncm91bmQ6IHZhcigtLWxpZ2h0Z3JheSk7XG59XG5cbnRib2R5LFxubGksXG5wIHtcbiAgbGluZS1oZWlnaHQ6IDEuNnJlbTtcbn1cblxuLnRhYmxlLWNvbnRhaW5lciB7XG4gIG92ZXJmbG93LXg6IGF1dG87XG5cbiAgJiA+IHRhYmxlIHtcbiAgICBtYXJnaW46IDFyZW07XG4gICAgcGFkZGluZzogMS41cmVtO1xuICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG5cbiAgICB0aCxcbiAgICB0ZCB7XG4gICAgICBtaW4td2lkdGg6IDc1cHg7XG4gICAgfVxuXG4gICAgJiA+ICoge1xuICAgICAgbGluZS1oZWlnaHQ6IDJyZW07XG4gICAgfVxuICB9XG59XG5cbnRoIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgcGFkZGluZzogMC40cmVtIDAuN3JlbTtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHZhcigtLWdyYXkpO1xufVxuXG50ZCB7XG4gIHBhZGRpbmc6IDAuMnJlbSAwLjdyZW07XG59XG5cbnRyIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWxpZ2h0Z3JheSk7XG4gICY6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgfVxufVxuXG5pbWcge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgbWFyZ2luOiAxcmVtIDA7XG4gIGNvbnRlbnQtdmlzaWJpbGl0eTogYXV0bztcbn1cblxucCA+IGltZyArIGVtIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXJlbSk7XG59XG5cbmhyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMnJlbSBhdXRvO1xuICBoZWlnaHQ6IDFweDtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1saWdodGdyYXkpO1xufVxuXG5hdWRpbyxcbnZpZGVvIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbn1cblxuLnNwYWNlciB7XG4gIGZsZXg6IDEgMSBhdXRvO1xufVxuXG5kaXY6aGFzKD4gLm92ZXJmbG93KSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG59XG5cbnVsLm92ZXJmbG93LFxub2wub3ZlcmZsb3cge1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuXG4gIC8vIGNsZWFyZml4XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGNsZWFyOiBib3RoO1xuXG4gICYgPiBsaTpsYXN0LW9mLXR5cGUge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIH1cbiAgLyomOmFmdGVyIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogNTBweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICBib3R0b206IDA7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZTtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodHJhbnNwYXJlbnQgMHB4LCB2YXIoLS1saWdodCkpO1xuICB9Ki9cbn1cblxuLnRyYW5zY2x1ZGUge1xuICB1bCB7XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICB9XG59XG5cbi5rYXRleC1kaXNwbGF5IHtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgb3ZlcmZsb3cteTogaGlkZGVuO1xufVxuXG4uZXh0ZXJuYWwtZW1iZWQueW91dHViZSxcbmlmcmFtZS5wZGYge1xuICBhc3BlY3QtcmF0aW86IDE2IC8gOTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xufVxuXG4ubmF2aWdhdGlvbi1wcm9ncmVzcyB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAzcHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLXNlY29uZGFyeSk7XG4gIHRyYW5zaXRpb246IHdpZHRoIDAuMnMgZWFzZTtcbiAgei1pbmRleDogOTk5OTtcbn1cbiJdfQ== */`;var popover_default=`/** - * Layout breakpoints - * $mobile: screen width below this value will use mobile styles - * $desktop: screen width above this value will use desktop styles - * Screen width between $mobile and $desktop width will use the tablet layout. - * assuming mobile < desktop - */ -@keyframes dropin { - 0% { - opacity: 0; - visibility: hidden; - } - 1% { - opacity: 0; - } - 100% { - opacity: 1; - visibility: visible; - } -} -.popover { - z-index: 999; - position: absolute; - overflow: visible; - padding: 1rem; - visibility: hidden; - opacity: 0; - transition: opacity 0.3s ease, visibility 0.3s ease; -} -.popover > .popover-inner { - position: relative; - width: 30rem; - max-height: 20rem; - padding: 0 1rem 1rem 1rem; - font-weight: initial; - font-style: initial; - line-height: normal; - font-size: initial; - font-family: var(--bodyFont); - border: 1px solid var(--lightgray); - background-color: var(--light); - border-radius: 5px; - box-shadow: 6px 6px 36px 0 rgba(0, 0, 0, 0.25); - overflow: auto; - white-space: normal; -} -.popover > .popover-inner[data-content-type][data-content-type*=pdf], .popover > .popover-inner[data-content-type][data-content-type*=image] { - padding: 0; - max-height: 100%; -} -.popover > .popover-inner[data-content-type][data-content-type*=image] img { - margin: 0; - border-radius: 0; - display: block; -} -.popover > .popover-inner[data-content-type][data-content-type*=pdf] iframe { - width: 100%; -} -.popover h1 { - font-size: 1.5rem; -} -@media all and ((max-width: 800px)) { - .popover { - display: none !important; - } -} - -a:hover .popover, -.popover:hover { - animation: dropin 0.3s ease; - animation-fill-mode: forwards; - animation-delay: 0.2s; -} -/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL2hvbWUvYWxhbmQvZ2l0L3F1YXJ0ei9xdWFydHovY29tcG9uZW50cy9zdHlsZXMiLCJzb3VyY2VzIjpbIi4uLy4uL3N0eWxlcy92YXJpYWJsZXMuc2NzcyIsInBvcG92ZXIuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQ0VBO0VBQ0U7SUFDRTtJQUNBOztFQUVGO0lBQ0U7O0VBRUY7SUFDRTtJQUNBOzs7QUFJSjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBOENBO0VBQ0E7RUFDQSxZQUNFOztBQS9DRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFJQTtFQUVFO0VBQ0E7O0FBSUE7RUFDRTtFQUNBO0VBQ0E7O0FBS0Y7RUFDRTs7QUFLTjtFQUNFOztBQVNGO0VBeERGO0lBeURJOzs7O0FBSUo7QUFBQTtFQUVFO0VBQ0E7RUFDQSIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogTGF5b3V0IGJyZWFrcG9pbnRzXG4gKiAkbW9iaWxlOiBzY3JlZW4gd2lkdGggYmVsb3cgdGhpcyB2YWx1ZSB3aWxsIHVzZSBtb2JpbGUgc3R5bGVzXG4gKiAkZGVza3RvcDogc2NyZWVuIHdpZHRoIGFib3ZlIHRoaXMgdmFsdWUgd2lsbCB1c2UgZGVza3RvcCBzdHlsZXNcbiAqIFNjcmVlbiB3aWR0aCBiZXR3ZWVuICRtb2JpbGUgYW5kICRkZXNrdG9wIHdpZHRoIHdpbGwgdXNlIHRoZSB0YWJsZXQgbGF5b3V0LlxuICogYXNzdW1pbmcgbW9iaWxlIDwgZGVza3RvcFxuICovXG4kYnJlYWtwb2ludHM6IChcbiAgbW9iaWxlOiA4MDBweCxcbiAgZGVza3RvcDogMTIwMHB4LFxuKTtcblxuJG1vYmlsZTogXCIobWF4LXdpZHRoOiAje21hcC1nZXQoJGJyZWFrcG9pbnRzLCBtb2JpbGUpfSlcIjtcbiR0YWJsZXQ6IFwiKG1pbi13aWR0aDogI3ttYXAtZ2V0KCRicmVha3BvaW50cywgbW9iaWxlKX0pIGFuZCAobWF4LXdpZHRoOiAje21hcC1nZXQoJGJyZWFrcG9pbnRzLCBkZXNrdG9wKX0pXCI7XG4kZGVza3RvcDogXCIobWluLXdpZHRoOiAje21hcC1nZXQoJGJyZWFrcG9pbnRzLCBkZXNrdG9wKX0pXCI7XG5cbiRwYWdlV2lkdGg6ICN7bWFwLWdldCgkYnJlYWtwb2ludHMsIG1vYmlsZSl9O1xuJHNpZGVQYW5lbFdpZHRoOiAzMjBweDsgLy8zODBweDtcbiR0b3BTcGFjaW5nOiA2cmVtO1xuJGJvbGRXZWlnaHQ6IDcwMDtcbiRzZW1pQm9sZFdlaWdodDogNjAwO1xuJG5vcm1hbFdlaWdodDogNDAwO1xuXG4kbW9iaWxlR3JpZDogKFxuICB0ZW1wbGF0ZVJvd3M6IFwiYXV0byBhdXRvIGF1dG8gYXV0byBhdXRvXCIsXG4gIHRlbXBsYXRlQ29sdW1uczogXCJhdXRvXCIsXG4gIHJvd0dhcDogXCI1cHhcIixcbiAgY29sdW1uR2FwOiBcIjVweFwiLFxuICB0ZW1wbGF0ZUFyZWFzOlxuICAgICdcImdyaWQtc2lkZWJhci1sZWZ0XCJcXFxuICAgICAgXCJncmlkLWhlYWRlclwiXFxcbiAgICAgIFwiZ3JpZC1jZW50ZXJcIlxcXG4gICAgICBcImdyaWQtc2lkZWJhci1yaWdodFwiXFxcbiAgICAgIFwiZ3JpZC1mb290ZXJcIicsXG4pO1xuJHRhYmxldEdyaWQ6IChcbiAgdGVtcGxhdGVSb3dzOiBcImF1dG8gYXV0byBhdXRvIGF1dG9cIixcbiAgdGVtcGxhdGVDb2x1bW5zOiBcIiN7JHNpZGVQYW5lbFdpZHRofSBhdXRvXCIsXG4gIHJvd0dhcDogXCI1cHhcIixcbiAgY29sdW1uR2FwOiBcIjVweFwiLFxuICB0ZW1wbGF0ZUFyZWFzOlxuICAgICdcImdyaWQtc2lkZWJhci1sZWZ0IGdyaWQtaGVhZGVyXCJcXFxuICAgICAgXCJncmlkLXNpZGViYXItbGVmdCBncmlkLWNlbnRlclwiXFxcbiAgICAgIFwiZ3JpZC1zaWRlYmFyLWxlZnQgZ3JpZC1zaWRlYmFyLXJpZ2h0XCJcXFxuICAgICAgXCJncmlkLXNpZGViYXItbGVmdCBncmlkLWZvb3RlclwiJyxcbik7XG4kZGVza3RvcEdyaWQ6IChcbiAgdGVtcGxhdGVSb3dzOiBcImF1dG8gYXV0byBhdXRvXCIsXG4gIHRlbXBsYXRlQ29sdW1uczogXCIjeyRzaWRlUGFuZWxXaWR0aH0gYXV0byAjeyRzaWRlUGFuZWxXaWR0aH1cIixcbiAgcm93R2FwOiBcIjVweFwiLFxuICBjb2x1bW5HYXA6IFwiNXB4XCIsXG4gIHRlbXBsYXRlQXJlYXM6XG4gICAgJ1wiZ3JpZC1zaWRlYmFyLWxlZnQgZ3JpZC1oZWFkZXIgZ3JpZC1zaWRlYmFyLXJpZ2h0XCJcXFxuICAgICAgXCJncmlkLXNpZGViYXItbGVmdCBncmlkLWNlbnRlciBncmlkLXNpZGViYXItcmlnaHRcIlxcXG4gICAgICBcImdyaWQtc2lkZWJhci1sZWZ0IGdyaWQtZm9vdGVyIGdyaWQtc2lkZWJhci1yaWdodFwiJyxcbik7XG4iLCJAdXNlIFwiLi4vLi4vc3R5bGVzL3ZhcmlhYmxlcy5zY3NzXCIgYXMgKjtcblxuQGtleWZyYW1lcyBkcm9waW4ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cbiAgMSUge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG59XG5cbi5wb3BvdmVyIHtcbiAgei1pbmRleDogOTk5O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBwYWRkaW5nOiAxcmVtO1xuXG4gICYgPiAucG9wb3Zlci1pbm5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAzMHJlbTtcbiAgICBtYXgtaGVpZ2h0OiAyMHJlbTtcbiAgICBwYWRkaW5nOiAwIDFyZW0gMXJlbSAxcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBpbml0aWFsO1xuICAgIGZvbnQtc3R5bGU6IGluaXRpYWw7XG4gICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXNpemU6IGluaXRpYWw7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWJvZHlGb250KTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1saWdodGdyYXkpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxpZ2h0KTtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgYm94LXNoYWRvdzogNnB4IDZweCAzNnB4IDAgcmdiYSgwLCAwLCAwLCAwLjI1KTtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICB9XG5cbiAgJiA+IC5wb3BvdmVyLWlubmVyW2RhdGEtY29udGVudC10eXBlXSB7XG4gICAgJltkYXRhLWNvbnRlbnQtdHlwZSo9XCJwZGZcIl0sXG4gICAgJltkYXRhLWNvbnRlbnQtdHlwZSo9XCJpbWFnZVwiXSB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICB9XG5cbiAgICAmW2RhdGEtY29udGVudC10eXBlKj1cImltYWdlXCJdIHtcbiAgICAgIGltZyB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJltkYXRhLWNvbnRlbnQtdHlwZSo9XCJwZGZcIl0ge1xuICAgICAgaWZyYW1lIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgaDEge1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICB9XG5cbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOlxuICAgIG9wYWNpdHkgMC4zcyBlYXNlLFxuICAgIHZpc2liaWxpdHkgMC4zcyBlYXNlO1xuXG4gIEBtZWRpYSBhbGwgYW5kICgkbW9iaWxlKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbmE6aG92ZXIgLnBvcG92ZXIsXG4ucG9wb3Zlcjpob3ZlciB7XG4gIGFuaW1hdGlvbjogZHJvcGluIDAuM3MgZWFzZTtcbiAgYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7XG4gIGFuaW1hdGlvbi1kZWxheTogMC4ycztcbn1cbiJdfQ== */`;import{Features,transform}from"lightningcss";import{transform as transpile}from"esbuild";function getComponentResources(ctx){let allComponents=new Set;for(let emitter of ctx.cfg.plugins.emitters){let components=emitter.getQuartzComponents(ctx);for(let component of components)allComponents.add(component)}let componentResources={css:new Set,beforeDOMLoaded:new Set,afterDOMLoaded:new Set};for(let component of allComponents){let{css,beforeDOMLoaded,afterDOMLoaded}=component;css&&componentResources.css.add(css),beforeDOMLoaded&&componentResources.beforeDOMLoaded.add(beforeDOMLoaded),afterDOMLoaded&&componentResources.afterDOMLoaded.add(afterDOMLoaded)}return{css:[...componentResources.css],beforeDOMLoaded:[...componentResources.beforeDOMLoaded],afterDOMLoaded:[...componentResources.afterDOMLoaded]}}__name(getComponentResources,"getComponentResources");async function joinScripts(scripts){let script=scripts.map(script2=>`(function () {${script2}})();`).join(` -`);return(await transpile(script,{minify:!0})).code}__name(joinScripts,"joinScripts");function addGlobalPageResources(ctx,componentResources){let cfg=ctx.cfg.configuration;if(cfg.enablePopovers&&(componentResources.afterDOMLoaded.push(popover_inline_default),componentResources.css.push(popover_default)),cfg.analytics?.provider==="google"){let tagId=cfg.analytics.tagId;componentResources.afterDOMLoaded.push(` - const gtagScript = document.createElement("script") - gtagScript.src = "https://www.googletagmanager.com/gtag/js?id=${tagId}" - gtagScript.async = true - document.head.appendChild(gtagScript) - - window.dataLayer = window.dataLayer || []; - function gtag() { dataLayer.push(arguments); } - gtag("js", new Date()); - gtag("config", "${tagId}", { send_page_view: false }); - - document.addEventListener("nav", () => { - gtag("event", "page_view", { - page_title: document.title, - page_location: location.href, - }); - });`)}else if(cfg.analytics?.provider==="plausible"){let plausibleHost=cfg.analytics.host??"https://plausible.io";componentResources.afterDOMLoaded.push(` - const plausibleScript = document.createElement("script") - plausibleScript.src = "${plausibleHost}/js/script.manual.js" - plausibleScript.setAttribute("data-domain", location.hostname) - plausibleScript.defer = true - document.head.appendChild(plausibleScript) - - window.plausible = window.plausible || function() { (window.plausible.q = window.plausible.q || []).push(arguments) } - - document.addEventListener("nav", () => { - plausible("pageview") - }) - `)}else if(cfg.analytics?.provider==="umami")componentResources.afterDOMLoaded.push(` - const umamiScript = document.createElement("script") - umamiScript.src = "${cfg.analytics.host??"https://analytics.umami.is"}/script.js" - umamiScript.setAttribute("data-website-id", "${cfg.analytics.websiteId}") - umamiScript.async = true - - document.head.appendChild(umamiScript) - `);else if(cfg.analytics?.provider==="goatcounter")componentResources.afterDOMLoaded.push(` - const goatcounterScript = document.createElement("script") - goatcounterScript.src = "${cfg.analytics.scriptSrc??"https://gc.zgo.at/count.js"}" - goatcounterScript.async = true - goatcounterScript.setAttribute("data-goatcounter", - "https://${cfg.analytics.websiteId}.${cfg.analytics.host??"goatcounter.com"}/count") - document.head.appendChild(goatcounterScript) - `);else if(cfg.analytics?.provider==="posthog")componentResources.afterDOMLoaded.push(` - const posthogScript = document.createElement("script") - posthogScript.innerHTML= \`!function(t,e){var o,n,p,r;e.__SV||(window.posthog=e,e._i=[],e.init=function(i,s,a){function g(t,e){var o=e.split(".");2==o.length&&(t=t[o[0]],e=o[1]),t[e]=function(){t.push([e].concat(Array.prototype.slice.call(arguments,0)))}}(p=t.createElement("script")).type="text/javascript",p.async=!0,p.src=s.api_host+"/static/array.js",(r=t.getElementsByTagName("script")[0]).parentNode.insertBefore(p,r);var u=e;for(void 0!==a?u=e[a]=[]:a="posthog",u.people=u.people||[],u.toString=function(t){var e="posthog";return"posthog"!==a&&(e+="."+a),t||(e+=" (stub)"),e},u.people.toString=function(){return u.toString(1)+".people (stub)"},o="capture identify alias people.set people.set_once set_config register register_once unregister opt_out_capturing has_opted_out_capturing opt_in_capturing reset isFeatureEnabled onFeatureFlags getFeatureFlag getFeatureFlagPayload reloadFeatureFlags group updateEarlyAccessFeatureEnrollment getEarlyAccessFeatures getActiveMatchingSurveys getSurveys onSessionId".split(" "),n=0;n window.location.assign(url) - window.addCleanup = () => {} - const event = new CustomEvent("nav", { detail: { url: document.body.dataset.slug } }) - document.dispatchEvent(event) - `)}__name(addGlobalPageResources,"addGlobalPageResources");var ComponentResources=__name(()=>({name:"ComponentResources",getQuartzComponents(){return[]},async getDependencyGraph(_ctx,_content,_resources){return new DepGraph},async emit(ctx,_content,_resources){let promises=[],cfg=ctx.cfg.configuration,componentResources=getComponentResources(ctx),googleFontsStyleSheet="";if(cfg.theme.fontOrigin!=="local"){if(cfg.theme.fontOrigin==="googleFonts"&&!cfg.theme.cdnCaching){let match,fontSourceRegex=/url\((https:\/\/fonts.gstatic.com\/s\/[^)]+\.(woff2|ttf))\)/g;for(googleFontsStyleSheet=await(await fetch(googleFontHref(ctx.cfg.configuration.theme))).text();(match=fontSourceRegex.exec(googleFontsStyleSheet))!==null;){let url=match[1],[filename,ext]=url.split("/").pop().split(".");googleFontsStyleSheet=googleFontsStyleSheet.replace(url,`https://${cfg.baseUrl}/static/fonts/${filename}.ttf`),promises.push(fetch(url).then(res=>{if(!res.ok)throw new Error("Failed to fetch font");return res.arrayBuffer()}).then(buf=>write({ctx,slug:joinSegments("static","fonts",filename),ext:`.${ext}`,content:Buffer.from(buf)})))}}}addGlobalPageResources(ctx,componentResources);let stylesheet=joinStyles(ctx.cfg.configuration.theme,googleFontsStyleSheet,...componentResources.css,custom_default),[prescript,postscript]=await Promise.all([joinScripts(componentResources.beforeDOMLoaded),joinScripts(componentResources.afterDOMLoaded)]);return promises.push(write({ctx,slug:"index",ext:".css",content:transform({filename:"index.css",code:Buffer.from(stylesheet),minify:!0,targets:{safari:984576,ios_saf:984576,edge:7536640,firefox:6684672,chrome:7143424},include:Features.MediaQueries}).code.toString()}),write({ctx,slug:"prescript",ext:".js",content:prescript}),write({ctx,slug:"postscript",ext:".js",content:postscript})),await Promise.all(promises)}}),"ComponentResources");var NotFoundPage=__name(()=>{let opts={...sharedPageComponents,pageBody:__default(),beforeBody:[],left:[],right:[]},{head:Head,pageBody,footer:Footer}=opts,Body2=Body_default();return{name:"404Page",getQuartzComponents(){return[Head,Body2,pageBody,Footer]},async getDependencyGraph(_ctx,_content,_resources){return new DepGraph},async emit(ctx,_content,resources){let cfg=ctx.cfg.configuration,slug="404",path13=new URL(`https://${cfg.baseUrl??"example.com"}`).pathname,notFound=i18n(cfg.locale).pages.error.title,[tree,vfile]=defaultProcessedContent({slug,text:notFound,description:notFound,frontmatter:{title:notFound,tags:[]}}),externalResources=pageResources(path13,vfile.data,resources),componentData={ctx,fileData:vfile.data,externalResources,cfg,children:[],tree,allFiles:[]};return[await write({ctx,content:renderPage(cfg,slug,componentData,opts,externalResources),slug,ext:".html"})]}}},"NotFoundPage");import chalk5 from"chalk";function getStaticResourcesFromPlugins(ctx){let staticResources={css:[],js:[]};for(let transformer of ctx.cfg.plugins.transformers){let res=transformer.externalResources?transformer.externalResources(ctx):{};res?.js&&staticResources.js.push(...res.js),res?.css&&staticResources.css.push(...res.css)}if(ctx.argv.serve){let wsUrl=ctx.argv.remoteDevHost?`wss://${ctx.argv.remoteDevHost}:${ctx.argv.wsPort}`:`ws://localhost:${ctx.argv.wsPort}`;staticResources.js.push({loadTime:"afterDOMReady",contentType:"inline",script:` - const socket = new WebSocket('${wsUrl}') - // reload(true) ensures resources like images and scripts are fetched again in firefox - socket.addEventListener('message', () => document.location.reload(true)) - `})}return staticResources}__name(getStaticResourcesFromPlugins,"getStaticResourcesFromPlugins");async function emitContent(ctx,content){let{argv,cfg}=ctx,perf=new PerfTimer,log=new QuartzLogger(ctx.argv.verbose);log.start("Emitting output files");let emittedFiles=0,staticResources=getStaticResourcesFromPlugins(ctx);for(let emitter of cfg.plugins.emitters)try{let emitted=await emitter.emit(ctx,content,staticResources);if(emittedFiles+=emitted.length,ctx.argv.verbose)for(let file of emitted)console.log(`[emit:${emitter.name}] ${file}`)}catch(err){trace(`Failed to emit from plugin \`${emitter.name}\``,err)}log.end(`Emitted ${emittedFiles} files to \`${argv.output}\` in ${perf.timeSince()}`)}__name(emitContent,"emitContent");var config={configuration:{pageTitle:"\u{1FAB4} Quartz 4.0",pageTitleSuffix:"",enableSPA:!0,enablePopovers:!0,analytics:null,locale:"en-US",baseUrl:"quartz.jzhao.xyz",ignorePatterns:["private","templates",".obsidian"],defaultDateType:"created",generateSocialImages:!1,theme:{fontOrigin:"googleFonts",cdnCaching:!0,typography:{header:"Schibsted Grotesk",body:"Source Sans Pro",code:"IBM Plex Mono"},colors:{lightMode:{light:"#faf8f8",lightgray:"#e5e5e5",gray:"#b8b8b8",darkgray:"#4e4e4e",dark:"#2b2b2b",secondary:"#284b63",tertiary:"#84a59d",highlight:"rgba(143, 159, 169, 0.15)",textHighlight:"#fff23688"},darkMode:{light:"#161618",lightgray:"#393639",gray:"#646464",darkgray:"#d4d4d4",dark:"#ebebec",secondary:"#7b97aa",tertiary:"#84a59d",highlight:"rgba(143, 159, 169, 0.15)",textHighlight:"#b3aa0288"}}}},plugins:{transformers:[FrontMatter(),CreatedModifiedDate({priority:["frontmatter","filesystem"]}),SyntaxHighlighting({theme:{light:"github-light",dark:"github-dark"},keepBackground:!1}),ObsidianFlavoredMarkdown({enableInHtmlEmbed:!1}),GitHubFlavoredMarkdown(),TableOfContents(),CrawlLinks({markdownLinkResolution:"shortest"}),Description(),Latex({renderEngine:"katex"})],filters:[RemoveDrafts()],emitters:[AliasRedirects(),ComponentResources(),ContentPage(),FolderPage(),TagPage(),ContentIndex({enableSiteMap:!0,enableRSS:!0}),Assets(),Static(),NotFoundPage()]}},quartz_config_default=config;import chokidar from"chokidar";import fs6 from"fs";import{fileURLToPath}from"url";var options={retrieveSourceMap(source){if(source.includes(".quartz-cache")){let realSource=fileURLToPath(source.split("?",2)[0]+".map");return{map:fs6.readFileSync(realSource,"utf8")}}else return null}};sourceMapSupport.install(options);function newBuildId(){return Math.random().toString(36).substring(2,8)}__name(newBuildId,"newBuildId");async function buildQuartz(argv,mut,clientRefresh){let ctx={buildId:newBuildId(),argv,cfg:quartz_config_default,allSlugs:[]},perf=new PerfTimer,output=argv.output,pluginCount=Object.values(quartz_config_default.plugins).flat().length,pluginNames=__name(key=>quartz_config_default.plugins[key].map(plugin=>plugin.name),"pluginNames");argv.verbose&&(console.log(`Loaded ${pluginCount} plugins`),console.log(` Transformers: ${pluginNames("transformers").join(", ")}`),console.log(` Filters: ${pluginNames("filters").join(", ")}`),console.log(` Emitters: ${pluginNames("emitters").join(", ")}`));let release=await mut.acquire();perf.addEvent("clean"),await rimraf(path12.join(output,"*"),{glob:!0}),console.log(`Cleaned output directory \`${output}\` in ${perf.timeSince("clean")}`),perf.addEvent("glob");let allFiles=await glob("**/*.*",argv.directory,quartz_config_default.configuration.ignorePatterns),fps=allFiles.filter(fp=>fp.endsWith(".md")).sort();console.log(`Found ${fps.length} input files from \`${argv.directory}\` in ${perf.timeSince("glob")}`);let filePaths=fps.map(fp=>joinSegments(argv.directory,fp));ctx.allSlugs=allFiles.map(fp=>slugifyFilePath(fp));let parsedFiles=await parseMarkdown(ctx,filePaths),filteredContent=filterContent(ctx,parsedFiles),dependencies={};if(argv.fastRebuild){let staticResources=getStaticResourcesFromPlugins(ctx);for(let emitter of quartz_config_default.plugins.emitters)dependencies[emitter.name]=await emitter.getDependencyGraph?.(ctx,filteredContent,staticResources)??null}if(await emitContent(ctx,filteredContent),console.log(chalk6.green(`Done processing ${fps.length} files in ${perf.timeSince()}`)),release(),argv.serve)return startServing(ctx,mut,parsedFiles,clientRefresh,dependencies)}__name(buildQuartz,"buildQuartz");async function startServing(ctx,mut,initialContent,clientRefresh,dependencies){let{argv}=ctx,contentMap=new Map;for(let content of initialContent){let[_tree,vfile]=content;contentMap.set(vfile.data.filePath,content)}let buildData={ctx,mut,dependencies,contentMap,ignored:await isGitIgnored(),initialSlugs:ctx.allSlugs,toRebuild:new Set,toRemove:new Set,trackedAssets:new Set,lastBuildMs:0},watcher=chokidar.watch(".",{persistent:!0,cwd:argv.directory,ignoreInitial:!0}),buildFromEntry=argv.fastRebuild?partialRebuildFromEntrypoint:rebuildFromEntrypoint;return watcher.on("add",fp=>buildFromEntry(fp,"add",clientRefresh,buildData)).on("change",fp=>buildFromEntry(fp,"change",clientRefresh,buildData)).on("unlink",fp=>buildFromEntry(fp,"delete",clientRefresh,buildData)),async()=>{await watcher.close()}}__name(startServing,"startServing");async function partialRebuildFromEntrypoint(filepath,action,clientRefresh,buildData){let{ctx,ignored,dependencies,contentMap,mut,toRemove}=buildData,{argv,cfg}=ctx;if(ignored(filepath))return;let buildId=newBuildId();ctx.buildId=buildId,buildData.lastBuildMs=new Date().getTime();let release=await mut.acquire();if(ctx.buildId!==buildId){release();return}let perf=new PerfTimer;console.log(chalk6.yellow("Detected change, rebuilding..."));let fp=joinSegments(argv.directory,toPosixPath(filepath)),staticResources=getStaticResourcesFromPlugins(ctx),processedFiles=[];switch(action){case"add":processedFiles=await parseMarkdown(ctx,[fp]),processedFiles.forEach(([tree,vfile])=>contentMap.set(vfile.data.filePath,[tree,vfile]));for(let emitter of cfg.plugins.emitters){let emitterGraph=await emitter.getDependencyGraph?.(ctx,processedFiles,staticResources)??null;if(emitterGraph){let existingGraph=dependencies[emitter.name];existingGraph!==null?existingGraph.mergeGraph(emitterGraph):dependencies[emitter.name]=emitterGraph}}break;case"change":if(processedFiles=await parseMarkdown(ctx,[fp]),processedFiles.forEach(([tree,vfile])=>contentMap.set(vfile.data.filePath,[tree,vfile])),path12.extname(fp)===".md")for(let emitter of cfg.plugins.emitters){let emitterGraph=await emitter.getDependencyGraph?.(ctx,processedFiles,staticResources)??null;emitterGraph?.hasNode(fp)&&dependencies[emitter.name]?.updateIncomingEdgesForNode(emitterGraph,fp)}break;case"delete":toRemove.add(fp);break}argv.verbose&&console.log(`Updated dependency graphs in ${perf.timeSince()}`),perf.addEvent("rebuild");let emittedFiles=0;for(let emitter of cfg.plugins.emitters){let depGraph=dependencies[emitter.name];if(depGraph===null){argv.verbose&&console.log(`Emitter ${emitter.name} doesn't define a dependency graph. Calling it with all files...`);let files=[...contentMap.values()].filter(([_node,vfile])=>!toRemove.has(vfile.data.filePath)),emittedFps=await emitter.emit(ctx,files,staticResources);if(ctx.argv.verbose)for(let file of emittedFps)console.log(`[emit:${emitter.name}] ${file}`);emittedFiles+=emittedFps.length;continue}if(depGraph.hasNode(fp)){let upstreamContent=[...depGraph.getLeafNodeAncestors(fp)].filter(file=>contentMap.has(file)).filter(file=>!toRemove.has(file)).map(file=>contentMap.get(file)),emittedFps=await emitter.emit(ctx,upstreamContent,staticResources);if(ctx.argv.verbose)for(let file of emittedFps)console.log(`[emit:${emitter.name}] ${file}`);emittedFiles+=emittedFps.length}}console.log(`Emitted ${emittedFiles} files to \`${argv.output}\` in ${perf.timeSince("rebuild")}`);let destinationsToDelete=new Set;for(let file of toRemove)contentMap.delete(file),Object.values(dependencies).forEach(depGraph=>{depGraph?.removeNode(file),depGraph?.removeOrphanNodes()?.forEach(node=>{node.startsWith(argv.output)&&destinationsToDelete.add(node)})});await rimraf([...destinationsToDelete]),console.log(chalk6.green(`Done rebuilding in ${perf.timeSince()}`)),toRemove.clear(),release(),clientRefresh()}__name(partialRebuildFromEntrypoint,"partialRebuildFromEntrypoint");async function rebuildFromEntrypoint(fp,action,clientRefresh,buildData){let{ctx,ignored,mut,initialSlugs,contentMap,toRebuild,toRemove,trackedAssets}=buildData,{argv}=ctx;if(ignored(fp))return;fp=toPosixPath(fp);let filePath=joinSegments(argv.directory,fp);if(path12.extname(fp)!==".md"){action==="add"||action==="change"?trackedAssets.add(filePath):action==="delete"&&trackedAssets.delete(filePath),clientRefresh();return}action==="add"||action==="change"?toRebuild.add(filePath):action==="delete"&&toRemove.add(filePath);let buildId=newBuildId();ctx.buildId=buildId,buildData.lastBuildMs=new Date().getTime();let release=await mut.acquire();if(ctx.buildId!==buildId){release();return}let perf=new PerfTimer;console.log(chalk6.yellow("Detected change, rebuilding..."));try{let filesToRebuild=[...toRebuild].filter(fp2=>!toRemove.has(fp2)),parsedContent=await parseMarkdown(ctx,filesToRebuild);for(let content of parsedContent){let[_tree,vfile]=content;contentMap.set(vfile.data.filePath,content)}for(let fp2 of toRemove)contentMap.delete(fp2);let parsedFiles=[...contentMap.values()],filteredContent=filterContent(ctx,parsedFiles),trackedSlugs=[...new Set([...contentMap.keys(),...toRebuild,...trackedAssets])].filter(fp2=>!toRemove.has(fp2)).map(fp2=>slugifyFilePath(path12.posix.relative(argv.directory,fp2)));ctx.allSlugs=[...new Set([...initialSlugs,...trackedSlugs])],await rimraf(path12.join(argv.output,".*"),{glob:!0}),await emitContent(ctx,filteredContent),console.log(chalk6.green(`Done rebuilding in ${perf.timeSince()}`))}catch(err){console.log(chalk6.yellow("Rebuild failed. Waiting on a change to fix the error...")),argv.verbose&&console.log(chalk6.red(err))}clientRefresh(),toRebuild.clear(),toRemove.clear(),release()}__name(rebuildFromEntrypoint,"rebuildFromEntrypoint");var build_default=__name(async(argv,mut,clientRefresh)=>{try{return await buildQuartz(argv,mut,clientRefresh)}catch(err){trace(` -Exiting Quartz due to a fatal error`,err)}},"default");export{build_default as default}; -//# sourceMappingURL=transpiled-build.mjs.map diff --git a/quartz/.quartz-cache/transpiled-build.mjs.map b/quartz/.quartz-cache/transpiled-build.mjs.map deleted file mode 100644 index abf9adc..0000000 --- a/quartz/.quartz-cache/transpiled-build.mjs.map +++ /dev/null @@ -1,6 +0,0 @@ -{ - "version": 3, - "sources": ["../build.ts", "../util/perf.ts", "../processors/parse.ts", "../util/path.ts", "../util/log.ts", "../util/trace.ts", "../processors/filter.ts", "../plugins/transformers/frontmatter.ts", "../i18n/locales/en-US.ts", "../i18n/locales/en-GB.ts", "../i18n/locales/fr-FR.ts", "../i18n/locales/it-IT.ts", "../i18n/locales/ja-JP.ts", "../i18n/locales/de-DE.ts", "../i18n/locales/nl-NL.ts", "../i18n/locales/ro-RO.ts", "../i18n/locales/ca-ES.ts", "../i18n/locales/es-ES.ts", "../i18n/locales/ar-SA.ts", "../i18n/locales/uk-UA.ts", "../i18n/locales/ru-RU.ts", "../i18n/locales/ko-KR.ts", "../i18n/locales/zh-CN.ts", "../i18n/locales/zh-TW.ts", "../i18n/locales/vi-VN.ts", "../i18n/locales/pt-BR.ts", "../i18n/locales/hu-HU.ts", "../i18n/locales/fa-IR.ts", "../i18n/locales/pl-PL.ts", "../i18n/locales/cs-CZ.ts", "../i18n/locales/tr-TR.ts", "../i18n/locales/th-TH.ts", "../i18n/locales/lt-LT.ts", "../i18n/index.ts", "../plugins/transformers/gfm.ts", "../plugins/transformers/citations.ts", "../plugins/transformers/lastmod.ts", "../plugins/transformers/latex.ts", "../plugins/transformers/description.ts", "../util/escape.ts", "../plugins/transformers/links.ts", "../plugins/transformers/ofm.ts", "../components/scripts/callout.inline.ts", "../components/scripts/checkbox.inline.ts", "../util/lang.ts", "../plugins/transformers/oxhugofm.ts", "../plugins/transformers/syntax.ts", "../plugins/transformers/toc.ts", "../plugins/transformers/linebreaks.ts", "../plugins/transformers/roam.ts", "../plugins/filters/draft.ts", "../plugins/emitters/contentPage.tsx", "../components/Header.tsx", "../components/scripts/clipboard.inline.ts", "../components/styles/clipboard.scss", "../components/Body.tsx", "../components/renderPage.tsx", "../util/resources.tsx", "../components/scripts/mermaid.inline.ts", "../components/styles/mermaid.inline.scss", "../util/jsx.tsx", "../components/pages/Content.tsx", "../components/styles/listPage.scss", "../components/Date.tsx", "../components/PageList.tsx", "../components/pages/TagContent.tsx", "../components/pages/FolderContent.tsx", "../components/pages/404.tsx", "../components/ArticleTitle.tsx", "../components/scripts/darkmode.inline.ts", "../components/styles/darkmode.scss", "../components/Darkmode.tsx", "../util/theme.ts", "../components/Head.tsx", "../util/og.tsx", "../components/PageTitle.tsx", "../components/ContentMeta.tsx", "../components/styles/contentMeta.scss", "../components/Spacer.tsx", "../components/styles/legacyToc.scss", "../components/styles/toc.scss", "../components/scripts/toc.inline.ts", "../components/TableOfContents.tsx", "../components/styles/explorer.scss", "../components/scripts/explorer.inline.ts", "../components/ExplorerNode.tsx", "../components/Explorer.tsx", "../components/TagList.tsx", "../components/scripts/graph.inline.ts", "../components/styles/graph.scss", "../components/Graph.tsx", "../components/styles/backlinks.scss", "../components/Backlinks.tsx", "../components/styles/search.scss", "../components/scripts/search.inline.ts", "../components/Search.tsx", "../components/styles/footer.scss", "../../package.json", "../components/Footer.tsx", "../components/DesktopOnly.tsx", "../components/MobileOnly.tsx", "../components/RecentNotes.tsx", "../components/styles/breadcrumbs.scss", "../components/Breadcrumbs.tsx", "../components/Comments.tsx", "../../quartz.layout.ts", "../plugins/emitters/helpers.ts", "../depgraph.ts", "../plugins/vfile.ts", "../plugins/emitters/tagPage.tsx", "../plugins/emitters/folderPage.tsx", "../plugins/emitters/contentIndex.ts", "../plugins/emitters/aliases.ts", "../plugins/emitters/assets.ts", "../util/glob.ts", "../plugins/emitters/static.ts", "../components/scripts/spa.inline.ts", "../components/scripts/popover.inline.ts", "../styles/custom.scss", "../components/styles/popover.scss", "../plugins/emitters/componentResources.ts", "../plugins/emitters/404.tsx", "../plugins/emitters/cname.ts", "../plugins/index.ts", "../processors/emit.ts", "../../quartz.config.ts", "../util/sourcemap.ts"], - "mappings": "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AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;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", - "names": ["path", "chalk", "targetSlug", "chalk", "process", "chalk", "process", "defaultOptions", "path", "chalk", "defaultOptions", "chalk", "path", "defaultOptions", "path", "visit", "defaultOptions", "visit", "path", "visit", "path", "defaultOptions", "path", "url", "visit", "classNames", "defaultOptions", "visit", "toString", "defaultOptions", "slugAnchor", "visit", "toString", "visit", "mdastFindReplace", "tableRegex", "path", "visit", "jsx", "jsx", "visit", "mermaid_inline_default", "jsx", "mermaid_inline_default", "pageResources", "visit", "Content", "Header", "Body", "jsx", "jsxs", "jsx", "jsxs", "jsx", "jsx", "Date", "jsx", "jsxs", "Date", "Fragment", "jsx", "jsxs", "defaultOptions", "options", "tag", "content", "path", "jsx", "jsxs", "defaultOptions", "options", "path", "jsx", "jsxs", "jsx", "jsx", "jsxs", "fs", "jsx", "jsxs", "Fragment", "jsx", "jsxs", "fs", "defaultOptions", "path", "jsx", "jsx", "defaultOptions", "options", "Date", "jsx", "jsx", "jsxs", "defaultOptions", "TableOfContents", "Fragment", "jsx", "jsxs", "jsx", "jsxs", "defaultOptions", "jsx", "jsx", "jsxs", "defaultOptions", "jsx", "jsxs", "defaultOptions", "options", "jsx", "jsxs", "defaultOptions", "jsx", "jsxs", "Fragment", "jsx", "Fragment", "jsx", "jsx", "jsxs", "Fragment", "jsx", "jsxs", "defaultOptions", "options", "Fragment", "jsx", "chalk", "path", "fs", "path", "fs", "node", "visit", "path", "Header", "Body", "content", "chalk", "Header", "Body", "content", "path", "Header", "Body", "path", "content", "toHtml", "defaultOptions", "toHtml", "content", "path", "path", "path", "fs", "path", "path", "path", "fs", "fs", "fs", "script", "Body", "path", "chalk", "fs", "path", "chalk", "fp"] -} diff --git a/quartz/bootstrap-worker.mjs b/quartz/bootstrap-worker.mjs index c4c4949..b08689c 100644 --- a/quartz/bootstrap-worker.mjs +++ b/quartz/bootstrap-worker.mjs @@ -1,8 +1,7 @@ #!/usr/bin/env node import workerpool from "workerpool" const cacheFile = "./.quartz-cache/transpiled-worker.mjs" -const { parseMarkdown, processHtml } = await import(cacheFile) +const { parseFiles } = await import(cacheFile) workerpool.worker({ - parseMarkdown, - processHtml, + parseFiles, }) diff --git a/quartz/i18n/index.ts b/quartz/i18n/index.ts index 7c8996b..97b0323 100644 --- a/quartz/i18n/index.ts +++ b/quartz/i18n/index.ts @@ -22,8 +22,6 @@ import fa from "./locales/fa-IR" import pl from "./locales/pl-PL" import cs from "./locales/cs-CZ" import tr from "./locales/tr-TR" -import th from "./locales/th-TH" -import lt from "./locales/lt-LT" export const TRANSLATIONS = { "en-US": enUs, @@ -70,8 +68,6 @@ export const TRANSLATIONS = { "pl-PL": pl, "cs-CZ": cs, "tr-TR": tr, - "th-TH": th, - "lt-LT": lt, } as const export const defaultTranslation = "en-US" diff --git a/quartz/i18n/locales/lt-LT.ts b/quartz/i18n/locales/lt-LT.ts deleted file mode 100644 index d48e593..0000000 --- a/quartz/i18n/locales/lt-LT.ts +++ /dev/null @@ -1,104 +0,0 @@ -import { Translation } from "./definition" - -export default { - propertyDefaults: { - title: "Be Pavadinimo", - description: "Aprašymas Nepateiktas", - }, - components: { - callout: { - note: "Pastaba", - abstract: "Santrauka", - info: "Informacija", - todo: "Darbų sąrašas", - tip: "Patarimas", - success: "Sėkmingas", - question: "Klausimas", - warning: "Įspėjimas", - failure: "Nesėkmingas", - danger: "Pavojus", - bug: "Klaida", - example: "Pavyzdys", - quote: "Citata", - }, - backlinks: { - title: "Atgalinės Nuorodos", - noBacklinksFound: "Atgalinių Nuorodų Nerasta", - }, - themeToggle: { - lightMode: "Šviesus Režimas", - darkMode: "Tamsus Režimas", - }, - explorer: { - title: "Naršyklė", - }, - footer: { - createdWith: "Sukurta Su", - }, - graph: { - title: "Grafiko Vaizdas", - }, - recentNotes: { - title: "Naujausi Užrašai", - seeRemainingMore: ({ remaining }) => `Peržiūrėti dar ${remaining} →`, - }, - transcludes: { - transcludeOf: ({ targetSlug }) => `Įterpimas iš ${targetSlug}`, - linkToOriginal: "Nuoroda į originalą", - }, - search: { - title: "Paieška", - searchBarPlaceholder: "Ieškoti", - }, - tableOfContents: { - title: "Turinys", - }, - contentMeta: { - readingTime: ({ minutes }) => `${minutes} min skaitymo`, - }, - }, - pages: { - rss: { - recentNotes: "Naujausi užrašai", - lastFewNotes: ({ count }) => - count === 1 - ? "Paskutinis 1 užrašas" - : count < 10 - ? `Paskutiniai ${count} užrašai` - : `Paskutiniai ${count} užrašų`, - }, - error: { - title: "Nerasta", - notFound: - "Arba šis puslapis yra pasiekiamas tik tam tikriems vartotojams, arba tokio puslapio nėra.", - home: "Grįžti į pagrindinį puslapį", - }, - folderContent: { - folder: "Aplankas", - itemsUnderFolder: ({ count }) => - count === 1 - ? "1 elementas šiame aplanke." - : count < 10 - ? `${count} elementai šiame aplanke.` - : `${count} elementų šiame aplanke.`, - }, - tagContent: { - tag: "Žyma", - tagIndex: "Žymų indeksas", - itemsUnderTag: ({ count }) => - count === 1 - ? "1 elementas su šia žyma." - : count < 10 - ? `${count} elementai su šia žyma.` - : `${count} elementų su šia žyma.`, - showingFirst: ({ count }) => - count < 10 ? `Rodomos pirmosios ${count} žymos.` : `Rodomos pirmosios ${count} žymų.`, - totalTags: ({ count }) => - count === 1 - ? "Rasta iš viso 1 žyma." - : count < 10 - ? `Rasta iš viso ${count} žymos.` - : `Rasta iš viso ${count} žymų.`, - }, - }, -} as const satisfies Translation diff --git a/quartz/i18n/locales/th-TH.ts b/quartz/i18n/locales/th-TH.ts deleted file mode 100644 index 4ea8486..0000000 --- a/quartz/i18n/locales/th-TH.ts +++ /dev/null @@ -1,82 +0,0 @@ -import { Translation } from "./definition" - -export default { - propertyDefaults: { - title: "ไม่มีชื่อ", - description: "ไม่ได้ระบุคำอธิบายย่อ", - }, - components: { - callout: { - note: "หมายเหตุ", - abstract: "บทคัดย่อ", - info: "ข้อมูล", - todo: "ต้องทำเพิ่มเติม", - tip: "คำแนะนำ", - success: "เรียบร้อย", - question: "คำถาม", - warning: "คำเตือน", - failure: "ข้อผิดพลาด", - danger: "อันตราย", - bug: "บั๊ก", - example: "ตัวอย่าง", - quote: "คำพูกยกมา", - }, - backlinks: { - title: "หน้าที่กล่าวถึง", - noBacklinksFound: "ไม่มีหน้าที่โยงมาหน้านี้", - }, - themeToggle: { - lightMode: "โหมดสว่าง", - darkMode: "โหมดมืด", - }, - explorer: { - title: "รายการหน้า", - }, - footer: { - createdWith: "สร้างด้วย", - }, - graph: { - title: "มุมมองกราฟ", - }, - recentNotes: { - title: "บันทึกล่าสุด", - seeRemainingMore: ({ remaining }) => `ดูเพิ่มอีก ${remaining} รายการ →`, - }, - transcludes: { - transcludeOf: ({ targetSlug }) => `รวมข้ามเนื้อหาจาก ${targetSlug}`, - linkToOriginal: "ดูหน้าต้นทาง", - }, - search: { - title: "ค้นหา", - searchBarPlaceholder: "ค้นหาบางอย่าง", - }, - tableOfContents: { - title: "สารบัญ", - }, - contentMeta: { - readingTime: ({ minutes }) => `อ่านราว ${minutes} นาที`, - }, - }, - pages: { - rss: { - recentNotes: "บันทึกล่าสุด", - lastFewNotes: ({ count }) => `${count} บันทึกล่าสุด`, - }, - error: { - title: "ไม่มีหน้านี้", - notFound: "หน้านี้อาจตั้งค่าเป็นส่วนตัวหรือยังไม่ถูกสร้าง", - home: "กลับหน้าหลัก", - }, - folderContent: { - folder: "โฟลเดอร์", - itemsUnderFolder: ({ count }) => `มี ${count} รายการในโฟลเดอร์นี้`, - }, - tagContent: { - tag: "แท็ก", - tagIndex: "แท็กทั้งหมด", - itemsUnderTag: ({ count }) => `มี ${count} รายการในแท็กนี้`, - showingFirst: ({ count }) => `แสดง ${count} แท็กแรก`, - totalTags: ({ count }) => `มีทั้งหมด ${count} แท็ก`, - }, - }, -} as const satisfies Translation diff --git a/quartz/plugins/transformers/ofm.ts b/quartz/plugins/transformers/ofm.ts index b0b0a42..d49b8e6 100644 --- a/quartz/plugins/transformers/ofm.ts +++ b/quartz/plugins/transformers/ofm.ts @@ -1,13 +1,5 @@ import { QuartzTransformerPlugin } from "../types" -import { - Root, - Html, - BlockContent, - PhrasingContent, - DefinitionContent, - Paragraph, - Code, -} from "mdast" +import { Root, Html, BlockContent, DefinitionContent, Paragraph, Code } from "mdast" import { Element, Literal, Root as HtmlRoot } from "hast" import { ReplaceFunction, findAndReplace as mdastFindReplace } from "mdast-util-find-and-replace" import rehypeRaw from "rehype-raw" @@ -22,6 +14,7 @@ import checkboxScript from "../../components/scripts/checkbox.inline.ts" import { FilePath, pathToRoot, slugTag, slugifyFilePath } from "../../util/path" import { toHast } from "mdast-util-to-hast" import { toHtml } from "hast-util-to-html" +import { PhrasingContent } from "mdast-util-find-and-replace/lib" import { capitalize } from "../../util/lang" import { PluggableList } from "unified" @@ -128,12 +121,12 @@ const commentRegex = new RegExp(/%%[\s\S]*?%%/g) // from https://github.com/escwxyz/remark-obsidian-callout/blob/main/src/index.ts const calloutRegex = new RegExp(/^\[\!([\w-]+)\|?(.+?)?\]([+-]?)/) const calloutLineRegex = new RegExp(/^> *\[\!\w+\|?.*?\][+-]?.*$/gm) -// (?<=^| ) -> a lookbehind assertion, tag should start be separated by a space or be the start of the line +// (?:^| ) -> non-capturing group, tag should start be separated by a space or be the start of the line // #(...) -> capturing group, tag itself must start with # // (?:[-_\p{L}\d\p{Z}])+ -> non-capturing group, non-empty string of (Unicode-aware) alpha-numeric characters and symbols, hyphens and/or underscores // (?:\/[-_\p{L}\d\p{Z}]+)*) -> non-capturing group, matches an arbitrary number of tag strings separated by "/" const tagRegex = new RegExp( - /(?<=^| )#((?:[-_\p{L}\p{Emoji}\p{M}\d])+(?:\/[-_\p{L}\p{Emoji}\p{M}\d]+)*)/gu, + /(?:^| )#((?:[-_\p{L}\p{Emoji}\p{M}\d])+(?:\/[-_\p{L}\p{Emoji}\p{M}\d]+)*)/gu, ) const blockReferenceRegex = new RegExp(/\^([-_A-Za-z0-9]+)$/g) const ytLinkRegex = /^.*(youtu.be\/|v\/|u\/\w\/|embed\/|watch\?v=|\&v=)([^#\&\?]*).*/ diff --git a/quartz/plugins/vfile.ts b/quartz/plugins/vfile.ts index 8c5cf6a..5be2105 100644 --- a/quartz/plugins/vfile.ts +++ b/quartz/plugins/vfile.ts @@ -1,13 +1,11 @@ -import { Root as HtmlRoot } from "hast" -import { Root as MdRoot } from "mdast" +import { Node, Parent } from "hast" import { Data, VFile } from "vfile" export type QuartzPluginData = Data -export type MarkdownContent = [MdRoot, VFile] -export type ProcessedContent = [HtmlRoot, VFile] +export type ProcessedContent = [Node, VFile] export function defaultProcessedContent(vfileData: Partial): ProcessedContent { - const root: HtmlRoot = { type: "root", children: [] } + const root: Parent = { type: "root", children: [] } const vfile = new VFile("") vfile.data = vfileData return [root, vfile] diff --git a/quartz/processors/parse.ts b/quartz/processors/parse.ts index 479313f..2bd530c 100644 --- a/quartz/processors/parse.ts +++ b/quartz/processors/parse.ts @@ -4,20 +4,18 @@ import remarkRehype from "remark-rehype" import { Processor, unified } from "unified" import { Root as MDRoot } from "remark-parse/lib" import { Root as HTMLRoot } from "hast" -import { MarkdownContent, ProcessedContent } from "../plugins/vfile" +import { ProcessedContent } from "../plugins/vfile" import { PerfTimer } from "../util/perf" import { read } from "to-vfile" -import { FilePath, FullSlug, QUARTZ, slugifyFilePath } from "../util/path" +import { FilePath, QUARTZ, slugifyFilePath } from "../util/path" import path from "path" import workerpool, { Promise as WorkerPromise } from "workerpool" import { QuartzLogger } from "../util/log" import { trace } from "../util/trace" import { BuildCtx } from "../util/ctx" -export type QuartzMdProcessor = Processor -export type QuartzHtmlProcessor = Processor - -export function createMdProcessor(ctx: BuildCtx): QuartzMdProcessor { +export type QuartzProcessor = Processor +export function createProcessor(ctx: BuildCtx): QuartzProcessor { const transformers = ctx.cfg.plugins.transformers return ( @@ -26,20 +24,14 @@ export function createMdProcessor(ctx: BuildCtx): QuartzMdProcessor { .use(remarkParse) // MD AST -> MD AST transforms .use( - transformers.flatMap((plugin) => plugin.markdownPlugins?.(ctx) ?? []), - ) as unknown as QuartzMdProcessor - // ^ sadly the typing of `use` is not smart enough to infer the correct type from our plugin list - ) -} - -export function createHtmlProcessor(ctx: BuildCtx): QuartzHtmlProcessor { - const transformers = ctx.cfg.plugins.transformers - return ( - unified() + transformers + .filter((p) => p.markdownPlugins) + .flatMap((plugin) => plugin.markdownPlugins!(ctx)), + ) // MD AST -> HTML AST .use(remarkRehype, { allowDangerousHtml: true }) // HTML AST -> HTML AST transforms - .use(transformers.flatMap((plugin) => plugin.htmlPlugins?.(ctx) ?? [])) + .use(transformers.filter((p) => p.htmlPlugins).flatMap((plugin) => plugin.htmlPlugins!(ctx))) ) } @@ -83,8 +75,8 @@ async function transpileWorkerScript() { export function createFileParser(ctx: BuildCtx, fps: FilePath[]) { const { argv, cfg } = ctx - return async (processor: QuartzMdProcessor) => { - const res: MarkdownContent[] = [] + return async (processor: QuartzProcessor) => { + const res: ProcessedContent[] = [] for (const fp of fps) { try { const perf = new PerfTimer() @@ -108,32 +100,10 @@ export function createFileParser(ctx: BuildCtx, fps: FilePath[]) { res.push([newAst, file]) if (argv.verbose) { - console.log(`[markdown] ${fp} -> ${file.data.slug} (${perf.timeSince()})`) + console.log(`[process] ${fp} -> ${file.data.slug} (${perf.timeSince()})`) } } catch (err) { - trace(`\nFailed to process markdown \`${fp}\``, err as Error) - } - } - - return res - } -} - -export function createMarkdownParser(ctx: BuildCtx, mdContent: MarkdownContent[]) { - return async (processor: QuartzHtmlProcessor) => { - const res: ProcessedContent[] = [] - for (const [ast, file] of mdContent) { - try { - const perf = new PerfTimer() - - const newAst = await processor.run(ast as MDRoot, file) - res.push([newAst, file]) - - if (ctx.argv.verbose) { - console.log(`[html] ${file.data.slug} (${perf.timeSince()})`) - } - } catch (err) { - trace(`\nFailed to process html \`${file.data.filePath}\``, err as Error) + trace(`\nFailed to process \`${fp}\``, err as Error) } } @@ -143,7 +113,6 @@ export function createMarkdownParser(ctx: BuildCtx, mdContent: MarkdownContent[] const clamp = (num: number, min: number, max: number) => Math.min(Math.max(Math.round(num), min), max) - export async function parseMarkdown(ctx: BuildCtx, fps: FilePath[]): Promise { const { argv } = ctx const perf = new PerfTimer() @@ -157,8 +126,9 @@ export async function parseMarkdown(ctx: BuildCtx, fps: FilePath[]): Promise { - console.error(`${err}`.replace(/^error:\s*/i, "")) - process.exit(1) - } - - const mdPromises: WorkerPromise<[MarkdownContent[], FullSlug[]]>[] = [] - for (const chunk of chunks(fps, CHUNK_SIZE)) { - mdPromises.push(pool.exec("parseMarkdown", [ctx.buildId, argv, chunk])) - } - const mdResults: [MarkdownContent[], FullSlug[]][] = - await WorkerPromise.all(mdPromises).catch(errorHandler) const childPromises: WorkerPromise[] = [] - for (const [_, extraSlugs] of mdResults) { - ctx.allSlugs.push(...extraSlugs) + for (const chunk of chunks(fps, CHUNK_SIZE)) { + childPromises.push(pool.exec("parseFiles", [ctx.buildId, argv, chunk, ctx.allSlugs])) } - for (const [mdChunk, _] of mdResults) { - childPromises.push(pool.exec("processHtml", [ctx.buildId, argv, mdChunk, ctx.allSlugs])) - } - const results: ProcessedContent[][] = await WorkerPromise.all(childPromises).catch(errorHandler) + const results: ProcessedContent[][] = await WorkerPromise.all(childPromises).catch((err) => { + const errString = err.toString().slice("Error:".length) + console.error(errString) + process.exit(1) + }) res = results.flat() await pool.terminate() } diff --git a/quartz/util/og.tsx b/quartz/util/og.tsx index 42b9b27..0430a26 100644 --- a/quartz/util/og.tsx +++ b/quartz/util/og.tsx @@ -35,9 +35,7 @@ export async function getSatoriFont(headerFontName: string, bodyFontName: string async function fetchTtf(fontName: string, weight: FontWeight): Promise { try { // Get css file from google fonts - const cssResponse = await fetch( - `https://fonts.googleapis.com/css2?family=${fontName}:wght@${weight}`, - ) + const cssResponse = await fetch(`https://fonts.googleapis.com/css?family=${fontName}:${weight}`) const css = await cssResponse.text() // Extract .ttf url from css file diff --git a/quartz/util/path.test.ts b/quartz/util/path.test.ts index 29d845d..687e693 100644 --- a/quartz/util/path.test.ts +++ b/quartz/util/path.test.ts @@ -171,10 +171,6 @@ describe("transforms", () => { assert.strictEqual(path.joinSegments("/a", "b/"), "/a/b/") assert.strictEqual(path.joinSegments("/a/", "b/"), "/a/b/") - // lone slash - assert.strictEqual(path.joinSegments("/a/", "b", "/"), "/a/b/") - assert.strictEqual(path.joinSegments("a/", "b" + "/"), "a/b/") - // works with protocol specifiers assert.strictEqual(path.joinSegments("https://example.com", "a"), "https://example.com/a") assert.strictEqual(path.joinSegments("https://example.com/", "a"), "https://example.com/a") diff --git a/quartz/util/path.ts b/quartz/util/path.ts index 5835f15..580707f 100644 --- a/quartz/util/path.ts +++ b/quartz/util/path.ts @@ -188,7 +188,7 @@ export function joinSegments(...args: string[]): string { } let joined = args - .filter((segment) => segment !== "" && segment !== "/") + .filter((segment) => segment !== "") .map((segment) => stripSlashes(segment)) .join("/") diff --git a/quartz/worker.ts b/quartz/worker.ts index c9cd980..a209df9 100644 --- a/quartz/worker.ts +++ b/quartz/worker.ts @@ -3,46 +3,23 @@ sourceMapSupport.install(options) import cfg from "../quartz.config" import { Argv, BuildCtx } from "./util/ctx" import { FilePath, FullSlug } from "./util/path" -import { - createFileParser, - createHtmlProcessor, - createMarkdownParser, - createMdProcessor, -} from "./processors/parse" +import { createFileParser, createProcessor } from "./processors/parse" import { options } from "./util/sourcemap" -import { MarkdownContent, ProcessedContent } from "./plugins/vfile" // only called from worker thread -export async function parseMarkdown( +export async function parseFiles( buildId: string, argv: Argv, fps: FilePath[], -): Promise<[MarkdownContent[], FullSlug[]]> { - // this is a hack - // we assume markdown parsers can add to `allSlugs`, - // but don't actually use them - const allSlugs: FullSlug[] = [] - const ctx: BuildCtx = { - buildId, - cfg, - argv, - allSlugs, - } - return [await createFileParser(ctx, fps)(createMdProcessor(ctx)), allSlugs] -} - -// only called from worker thread -export function processHtml( - buildId: string, - argv: Argv, - mds: MarkdownContent[], allSlugs: FullSlug[], -): Promise { +) { const ctx: BuildCtx = { buildId, cfg, argv, allSlugs, } - return createMarkdownParser(ctx, mds)(createHtmlProcessor(ctx)) + const processor = createProcessor(ctx) + const parse = createFileParser(ctx, fps) + return parse(processor) }