Jacky Zhao
2024-01-31 7cb1c291c802b74dc47d235f094e5d9134f95283
package-lock.json
@@ -1,24 +1,24 @@
{
  "name": "@jackyzha0/quartz",
  "version": "4.1.5",
  "version": "4.1.6",
  "lockfileVersion": 3,
  "requires": true,
  "packages": {
    "": {
      "name": "@jackyzha0/quartz",
      "version": "4.1.5",
      "version": "4.1.6",
      "license": "MIT",
      "dependencies": {
        "@clack/prompts": "^0.7.0",
        "@floating-ui/dom": "^1.5.3",
        "@napi-rs/simple-git": "0.1.9",
        "@floating-ui/dom": "^1.6.1",
        "@napi-rs/simple-git": "0.1.14",
        "async-mutex": "^0.4.0",
        "chalk": "^5.3.0",
        "chokidar": "^3.5.3",
        "cli-spinner": "^0.2.10",
        "d3": "^7.8.5",
        "esbuild-sass-plugin": "^2.16.0",
        "flexsearch": "0.7.21",
        "flexsearch": "0.7.43",
        "github-slugger": "^2.0.0",
        "globby": "^14.0.0",
        "gray-matter": "^4.0.3",
@@ -27,7 +27,7 @@
        "hast-util-to-string": "^3.0.0",
        "is-absolute-url": "^4.0.1",
        "js-yaml": "^4.1.0",
        "lightningcss": "^1.22.1",
        "lightningcss": "^1.23.0",
        "mdast-util-find-and-replace": "^3.0.1",
        "mdast-util-to-hast": "^13.0.2",
        "mdast-util-to-string": "^4.0.0",
@@ -39,7 +39,7 @@
        "reading-time": "^1.5.0",
        "rehype-autolink-headings": "^7.1.0",
        "rehype-katex": "^7.0.0",
        "rehype-mathjax": "^5.0.0",
        "rehype-mathjax": "^6.0.0",
        "rehype-pretty-code": "^0.12.6",
        "rehype-raw": "^7.0.0",
        "rehype-slug": "^6.0.0",
@@ -49,19 +49,19 @@
        "remark-gfm": "^4.0.0",
        "remark-math": "^6.0.0",
        "remark-parse": "^11.0.0",
        "remark-rehype": "^11.0.0",
        "remark-rehype": "^11.1.0",
        "remark-smartypants": "^2.0.0",
        "rfdc": "^1.3.0",
        "rfdc": "^1.3.1",
        "rimraf": "^5.0.5",
        "serve-handler": "^6.1.5",
        "shikiji": "^0.9.9",
        "shikiji": "^0.10.2",
        "source-map-support": "^0.5.21",
        "to-vfile": "^8.0.0",
        "toml": "^3.0.0",
        "unified": "^11.0.4",
        "unist-util-visit": "^5.0.0",
        "vfile": "^6.0.1",
        "workerpool": "^8.0.0",
        "workerpool": "^9.1.0",
        "ws": "^8.15.1",
        "yargs": "^17.7.2"
      },
@@ -71,17 +71,15 @@
      "devDependencies": {
        "@types/cli-spinner": "^0.2.3",
        "@types/d3": "^7.4.3",
        "@types/flexsearch": "^0.7.3",
        "@types/hast": "^3.0.3",
        "@types/js-yaml": "^4.0.9",
        "@types/node": "^20.1.2",
        "@types/node": "^20.11.11",
        "@types/pretty-time": "^1.1.5",
        "@types/source-map-support": "^0.5.10",
        "@types/workerpool": "^6.4.7",
        "@types/ws": "^8.5.10",
        "@types/yargs": "^17.0.32",
        "esbuild": "^0.19.9",
        "prettier": "^3.1.1",
        "prettier": "^3.2.4",
        "tsx": "^4.7.0",
        "typescript": "^5.3.3"
      },
@@ -90,6 +88,16 @@
        "npm": ">=9.3.1"
      }
    },
    "node_modules/@asamuzakjp/dom-selector": {
      "version": "2.0.2",
      "resolved": "https://registry.npmjs.org/@asamuzakjp/dom-selector/-/dom-selector-2.0.2.tgz",
      "integrity": "sha512-x1KXOatwofR6ZAYzXRBL5wrdV0vwNxlTCK9NCuLqAzQYARqGcvFwiJA6A1ERuh+dgeA4Dxm3JBYictIes+SqUQ==",
      "dependencies": {
        "bidi-js": "^1.0.3",
        "css-tree": "^2.3.1",
        "is-potential-custom-element-name": "^1.0.1"
      }
    },
    "node_modules/@clack/core": {
      "version": "0.3.3",
      "resolved": "https://registry.npmjs.org/@clack/core/-/core-0.3.3.tgz",
@@ -470,26 +478,26 @@
      }
    },
    "node_modules/@floating-ui/core": {
      "version": "1.5.2",
      "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.5.2.tgz",
      "integrity": "sha512-Ii3MrfY/GAIN3OhXNzpCKaLxHQfJF9qvwq/kEJYdqDxeIHa01K8sldugal6TmeeXl+WMvhv9cnVzUTaFFJF09A==",
      "version": "1.6.0",
      "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.6.0.tgz",
      "integrity": "sha512-PcF++MykgmTj3CIyOQbKA/hDzOAiqI3mhuoN44WRCopIs1sgoDoU4oty4Jtqaj/y3oDU6fnVSm4QG0a3t5i0+g==",
      "dependencies": {
        "@floating-ui/utils": "^0.1.3"
        "@floating-ui/utils": "^0.2.1"
      }
    },
    "node_modules/@floating-ui/dom": {
      "version": "1.5.3",
      "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.5.3.tgz",
      "integrity": "sha512-ClAbQnEqJAKCJOEbbLo5IUlZHkNszqhuxS4fHAVxRPXPya6Ysf2G8KypnYcOTpx6I8xcgF9bbHb6g/2KpbV8qA==",
      "version": "1.6.1",
      "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.6.1.tgz",
      "integrity": "sha512-iA8qE43/H5iGozC3W0YSnVSW42Vh522yyM1gj+BqRwVsTNOyr231PsXDaV04yT39PsO0QL2QpbI/M0ZaLUQgRQ==",
      "dependencies": {
        "@floating-ui/core": "^1.4.2",
        "@floating-ui/utils": "^0.1.3"
        "@floating-ui/core": "^1.6.0",
        "@floating-ui/utils": "^0.2.1"
      }
    },
    "node_modules/@floating-ui/utils": {
      "version": "0.1.6",
      "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.1.6.tgz",
      "integrity": "sha512-OfX7E2oUDYxtBvsuS4e/jSn4Q9Qb6DzgeYtsAdkPZ47znpoNsMgZw0+tVijiv3uGNR6dgNlty6r9rzIzHjtd/A=="
      "version": "0.2.1",
      "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.2.1.tgz",
      "integrity": "sha512-9TANp6GPoMtYzQdt54kfAyMmz1+osLlXdg2ENroU7zzrtflTLrrC/lgrIfaSe+Wu0b89GKccT7vxXA0MoAIO+Q=="
    },
    "node_modules/@isaacs/cliui": {
      "version": "8.0.2",
@@ -508,30 +516,30 @@
      }
    },
    "node_modules/@napi-rs/simple-git": {
      "version": "0.1.9",
      "resolved": "https://registry.npmjs.org/@napi-rs/simple-git/-/simple-git-0.1.9.tgz",
      "integrity": "sha512-qKzDS0+VjMvVyU28px+C6zlD1HKy83NIdYzfMQWa/g/V1iG/Ic8uwrS2ihHfm7mp7X0PPrmINLiTTi6ieUIKfw==",
      "version": "0.1.14",
      "resolved": "https://registry.npmjs.org/@napi-rs/simple-git/-/simple-git-0.1.14.tgz",
      "integrity": "sha512-2cDnsT0nKpQ7yg5u/Zf8/ibp9YFIKhpcfMAGATYuqdJoHuBo6P6UArZ0RDOOtfFC5b9FXuYcGw2ApbM4eWdnbQ==",
      "engines": {
        "node": ">= 10"
      },
      "optionalDependencies": {
        "@napi-rs/simple-git-android-arm-eabi": "0.1.9",
        "@napi-rs/simple-git-android-arm64": "0.1.9",
        "@napi-rs/simple-git-darwin-arm64": "0.1.9",
        "@napi-rs/simple-git-darwin-x64": "0.1.9",
        "@napi-rs/simple-git-linux-arm-gnueabihf": "0.1.9",
        "@napi-rs/simple-git-linux-arm64-gnu": "0.1.9",
        "@napi-rs/simple-git-linux-arm64-musl": "0.1.9",
        "@napi-rs/simple-git-linux-x64-gnu": "0.1.9",
        "@napi-rs/simple-git-linux-x64-musl": "0.1.9",
        "@napi-rs/simple-git-win32-arm64-msvc": "0.1.9",
        "@napi-rs/simple-git-win32-x64-msvc": "0.1.9"
        "@napi-rs/simple-git-android-arm-eabi": "0.1.14",
        "@napi-rs/simple-git-android-arm64": "0.1.14",
        "@napi-rs/simple-git-darwin-arm64": "0.1.14",
        "@napi-rs/simple-git-darwin-x64": "0.1.14",
        "@napi-rs/simple-git-linux-arm-gnueabihf": "0.1.14",
        "@napi-rs/simple-git-linux-arm64-gnu": "0.1.14",
        "@napi-rs/simple-git-linux-arm64-musl": "0.1.14",
        "@napi-rs/simple-git-linux-x64-gnu": "0.1.14",
        "@napi-rs/simple-git-linux-x64-musl": "0.1.14",
        "@napi-rs/simple-git-win32-arm64-msvc": "0.1.14",
        "@napi-rs/simple-git-win32-x64-msvc": "0.1.14"
      }
    },
    "node_modules/@napi-rs/simple-git-android-arm-eabi": {
      "version": "0.1.9",
      "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-android-arm-eabi/-/simple-git-android-arm-eabi-0.1.9.tgz",
      "integrity": "sha512-9D4JnfePMpgL4pg9aMUX7/TIWEUQ+Tgx8n3Pf8TNCMGjUbImJyYsDSLJzbcv9wH7srgn4GRjSizXFJHAPjzEug==",
      "version": "0.1.14",
      "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-android-arm-eabi/-/simple-git-android-arm-eabi-0.1.14.tgz",
      "integrity": "sha512-fAJ/Hxc9DhtSHOcB3dPCRW1YcVsqAnbNoOOnHir4aDCtqTP64HrFa7A/675v3vQZpI0u3fXHRcYqW8NF0O/zcg==",
      "cpu": [
        "arm"
      ],
@@ -544,9 +552,9 @@
      }
    },
    "node_modules/@napi-rs/simple-git-android-arm64": {
      "version": "0.1.9",
      "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-android-arm64/-/simple-git-android-arm64-0.1.9.tgz",
      "integrity": "sha512-Krilsw0gPrrASZzudNEl9pdLuNbhoTK0j7pUbfB8FRifpPdFB/zouwuEm0aSnsDXN4ftGrmGG82kuiR/2MeoPg==",
      "version": "0.1.14",
      "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-android-arm64/-/simple-git-android-arm64-0.1.14.tgz",
      "integrity": "sha512-dav730MRAR142DoyNDafuwKXcUCYwlbxxxxOarDph7bbN0mZZnKHOQohvRCD/Uz4aJLaj6khCavXSjLDWArEUg==",
      "cpu": [
        "arm64"
      ],
@@ -559,9 +567,9 @@
      }
    },
    "node_modules/@napi-rs/simple-git-darwin-arm64": {
      "version": "0.1.9",
      "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-darwin-arm64/-/simple-git-darwin-arm64-0.1.9.tgz",
      "integrity": "sha512-H/F09nDgYjv4gcFrZBgdTKkZEepqt0KLYcCJuUADuxkKupmjLdecMhypXLk13AzvLW4UQI7NlLTLDXUFLyr2BA==",
      "version": "0.1.14",
      "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-darwin-arm64/-/simple-git-darwin-arm64-0.1.14.tgz",
      "integrity": "sha512-f6+DqRnI+vFvnsAyw66mWhwl0vw1TOieHV07hvKbg4PU5j+RBI+lVqwY2L+IEAxDFlPirTWKKvGY1Lr7M/yi/A==",
      "cpu": [
        "arm64"
      ],
@@ -574,9 +582,9 @@
      }
    },
    "node_modules/@napi-rs/simple-git-darwin-x64": {
      "version": "0.1.9",
      "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-darwin-x64/-/simple-git-darwin-x64-0.1.9.tgz",
      "integrity": "sha512-jBR2xS9nVPqmHv0TWz874W0m/d453MGrMeLjB+boK5IPPLhg3AWIZj0aN9jy2Je1BGVAa0w3INIQJtBBeB6kFA==",
      "version": "0.1.14",
      "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-darwin-x64/-/simple-git-darwin-x64-0.1.14.tgz",
      "integrity": "sha512-x/EnwJdDWJAFay8TQt09byJoBlVZhPEaTAPmRR0fUPzWTjrr28bOy8UW1ysszd9ylBxlyIhuWjOHMHu9CBigTQ==",
      "cpu": [
        "x64"
      ],
@@ -589,9 +597,9 @@
      }
    },
    "node_modules/@napi-rs/simple-git-linux-arm-gnueabihf": {
      "version": "0.1.9",
      "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-arm-gnueabihf/-/simple-git-linux-arm-gnueabihf-0.1.9.tgz",
      "integrity": "sha512-3n0+VpO4YfZxndZ0sCvsHIvsazd+JmbSjrlTRBCnJeAU1/sfos3skNZtKGZksZhjvd+3o+/GFM8L7Xnv01yggA==",
      "version": "0.1.14",
      "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-arm-gnueabihf/-/simple-git-linux-arm-gnueabihf-0.1.14.tgz",
      "integrity": "sha512-k0JZaXBl031gP5VOnoMa1I3lCHlBG7QvtunX5rxnRjx2kZ+JgUyT12s/qle/4xkJ0MnmfKTeiD7hs4Cc4Z3Tzw==",
      "cpu": [
        "arm"
      ],
@@ -604,9 +612,9 @@
      }
    },
    "node_modules/@napi-rs/simple-git-linux-arm64-gnu": {
      "version": "0.1.9",
      "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-arm64-gnu/-/simple-git-linux-arm64-gnu-0.1.9.tgz",
      "integrity": "sha512-lIzf0KHU2SKC12vMrWwCtysG2Sdt31VHRPMUiz9lD9t3xwVn8qhFSTn5yDkTeG3rgX6o0p5EKalfQN5BXsJq2w==",
      "version": "0.1.14",
      "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-arm64-gnu/-/simple-git-linux-arm64-gnu-0.1.14.tgz",
      "integrity": "sha512-CsmKP6tSIxau10ZKxV1Q1kem2QcJ/Qlov7pxp1Q7kMErcouW0H6vliVniewicaXRVDYV9wK18iD2t5GoJttwlA==",
      "cpu": [
        "arm64"
      ],
@@ -619,9 +627,9 @@
      }
    },
    "node_modules/@napi-rs/simple-git-linux-arm64-musl": {
      "version": "0.1.9",
      "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-arm64-musl/-/simple-git-linux-arm64-musl-0.1.9.tgz",
      "integrity": "sha512-KQozUoNXrxrB8k741ncWXSiMbjl1AGBGfZV21PANzUM8wH4Yem2bg3kfglYS/QIx3udspsT35I9abu49n7D1/w==",
      "version": "0.1.14",
      "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-arm64-musl/-/simple-git-linux-arm64-musl-0.1.14.tgz",
      "integrity": "sha512-krfEckZQ3myoHwmGmqY0aHBnqAzzV66+jFNLQEKaVMSGsXA2P+UcGo0coGzmB13rFRWC2eZpZRNB3MrfrStHkw==",
      "cpu": [
        "arm64"
      ],
@@ -634,9 +642,9 @@
      }
    },
    "node_modules/@napi-rs/simple-git-linux-x64-gnu": {
      "version": "0.1.9",
      "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-x64-gnu/-/simple-git-linux-x64-gnu-0.1.9.tgz",
      "integrity": "sha512-O/Niui5mnHPcK3iYC3ui8wgERtJWsQ3Y74W/09t0bL/3dgzGMl4oQt0qTj9dWCsnoGsIEYHPzwCBp/2vqYp/pw==",
      "version": "0.1.14",
      "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-x64-gnu/-/simple-git-linux-x64-gnu-0.1.14.tgz",
      "integrity": "sha512-4T2Q2QdO6t3OawkwdVmdqLz2EH8lfAw2cMT/zdjfTMfhNKjJgSg3kTgRnu/tf8TLCb+wu80fFvafwE0laB2VTQ==",
      "cpu": [
        "x64"
      ],
@@ -649,9 +657,9 @@
      }
    },
    "node_modules/@napi-rs/simple-git-linux-x64-musl": {
      "version": "0.1.9",
      "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-x64-musl/-/simple-git-linux-x64-musl-0.1.9.tgz",
      "integrity": "sha512-L9n+e8Wn3hKr3RsIdY8GaB+ry4xZ4BaGwyKExgoB8nDGQuRUY9oP6p0WA4hWfJvJnU1H6hvo36a5UFPReyBO7A==",
      "version": "0.1.14",
      "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-x64-musl/-/simple-git-linux-x64-musl-0.1.14.tgz",
      "integrity": "sha512-RaTGW8u+RXJbfRF4QN2Dcr5r5DrFh4wLjOvFeOy7sGX3Q9m3IKuw5AjRxTJqIw6xD/AAPKKNzOvPjrIF7728Lw==",
      "cpu": [
        "x64"
      ],
@@ -664,9 +672,9 @@
      }
    },
    "node_modules/@napi-rs/simple-git-win32-arm64-msvc": {
      "version": "0.1.9",
      "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-win32-arm64-msvc/-/simple-git-win32-arm64-msvc-0.1.9.tgz",
      "integrity": "sha512-Z6Ja/SZK+lMvRWaxj7wjnvSbAsGrH006sqZo8P8nxKUdZfkVvoCaAWr1r0cfkk2Z3aijLLtD+vKeXGlUPH6gGQ==",
      "version": "0.1.14",
      "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-win32-arm64-msvc/-/simple-git-win32-arm64-msvc-0.1.14.tgz",
      "integrity": "sha512-kb9bKG9t79HJMuRMqbUJFLfWRf952O2Ea4VFwoRA2d/Uwtowm85Ol3JV9E6oeurguRLqdMLrUKyduCW6Hc9Jsg==",
      "cpu": [
        "arm64"
      ],
@@ -679,9 +687,9 @@
      }
    },
    "node_modules/@napi-rs/simple-git-win32-x64-msvc": {
      "version": "0.1.9",
      "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-win32-x64-msvc/-/simple-git-win32-x64-msvc-0.1.9.tgz",
      "integrity": "sha512-VAZj1UvC+R2MjKOD3I/Y7dmQlHWAYy4omhReQJRpbCf+oGCBi9CWiIduGqeYEq723nLIKdxP7XjaO0wl1NnUww==",
      "version": "0.1.14",
      "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-win32-x64-msvc/-/simple-git-win32-x64-msvc-0.1.14.tgz",
      "integrity": "sha512-3835xy0e2gOaZ3SPt1pINBFSBBL3dOx3cChyAzQU0TnMU4Ye/YOh1qa5pO7BOJlCSnOh7iWt782blxCT0HH61w==",
      "cpu": [
        "x64"
      ],
@@ -745,14 +753,6 @@
        "url": "https://github.com/sponsors/sindresorhus"
      }
    },
    "node_modules/@tootallnate/once": {
      "version": "2.0.0",
      "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz",
      "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==",
      "engines": {
        "node": ">= 10"
      }
    },
    "node_modules/@types/cli-spinner": {
      "version": "0.2.3",
      "resolved": "https://registry.npmjs.org/@types/cli-spinner/-/cli-spinner-0.2.3.tgz",
@@ -1036,12 +1036,6 @@
        "@types/estree": "*"
      }
    },
    "node_modules/@types/flexsearch": {
      "version": "0.7.3",
      "resolved": "https://registry.npmjs.org/@types/flexsearch/-/flexsearch-0.7.3.tgz",
      "integrity": "sha512-HXwADeHEP4exXkCIwy2n1+i0f1ilP1ETQOH5KDOugjkTFZPntWo0Gr8stZOaebkxsdx+k0X/K6obU/+it07ocg==",
      "dev": true
    },
    "node_modules/@types/geojson": {
      "version": "7946.0.10",
      "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.10.tgz",
@@ -1068,9 +1062,9 @@
      "integrity": "sha512-HMwFiRujE5PjrgwHQ25+bsLJgowjGjm5Z8FVSf0N6PwgJrwxH0QxzHYDcKsTfV3wva0vzrpqMTJS2jXPr5BMEQ=="
    },
    "node_modules/@types/mathjax": {
      "version": "0.0.37",
      "resolved": "https://registry.npmjs.org/@types/mathjax/-/mathjax-0.0.37.tgz",
      "integrity": "sha512-y0WSZBtBNQwcYipTU/BhgeFu1EZNlFvUNCmkMXV9kBQZq7/o5z82dNVyH3yy2Xv5zzeNeQoHSL4Xm06+EQiH+g=="
      "version": "0.0.40",
      "resolved": "https://registry.npmjs.org/@types/mathjax/-/mathjax-0.0.40.tgz",
      "integrity": "sha512-rHusx08LCg92WJxrsM3SPjvLTSvK5C+gealtSuhKbEOcUZfWlwigaFoPLf6Dfxhg4oryN5qP9Sj7zOQ4HYXINw=="
    },
    "node_modules/@types/mdast": {
      "version": "4.0.3",
@@ -1094,10 +1088,13 @@
      }
    },
    "node_modules/@types/node": {
      "version": "20.3.3",
      "resolved": "https://registry.npmjs.org/@types/node/-/node-20.3.3.tgz",
      "integrity": "sha512-wheIYdr4NYML61AjC8MKj/2jrR/kDQri/CIpVoZwldwhnIrD/j9jIU5bJ8yBKuB2VhpFV7Ab6G2XkBjv9r9Zzw==",
      "dev": true
      "version": "20.11.11",
      "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.11.tgz",
      "integrity": "sha512-PlJCXfb57Jrman0H1BxO2+Q7qwih2Mwk7T6Gvixj+SK4mqs4RWOGMMoP6p/LFa3UrP2CZOO6ai6otd7J/TB6Ug==",
      "dev": true,
      "dependencies": {
        "undici-types": "~5.26.4"
      }
    },
    "node_modules/@types/pretty-time": {
      "version": "1.1.5",
@@ -1119,15 +1116,6 @@
      "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.6.tgz",
      "integrity": "sha512-PBjIUxZHOuj0R15/xuwJYjFi+KZdNFrehocChv4g5hu6aFroHue8m0lBP0POdK2nKzbw0cgV1mws8+V/JAcEkQ=="
    },
    "node_modules/@types/workerpool": {
      "version": "6.4.7",
      "resolved": "https://registry.npmjs.org/@types/workerpool/-/workerpool-6.4.7.tgz",
      "integrity": "sha512-DI2U4obcMzFViyNjLw0xXspim++qkAJ4BWRdYPVMMFtOpTvMr6PAk3UTZEoSqnZnvgUkJ3ck97Ybk+iIfuJHMg==",
      "dev": true,
      "dependencies": {
        "@types/node": "*"
      }
    },
    "node_modules/@types/ws": {
      "version": "8.5.10",
      "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.10.tgz",
@@ -1157,21 +1145,15 @@
      "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz",
      "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ=="
    },
    "node_modules/abab": {
      "version": "2.0.6",
      "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz",
      "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==",
      "deprecated": "Use your platform's native atob() and btoa() methods instead"
    },
    "node_modules/agent-base": {
      "version": "6.0.2",
      "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz",
      "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==",
      "version": "7.1.0",
      "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.0.tgz",
      "integrity": "sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==",
      "dependencies": {
        "debug": "4"
        "debug": "^4.3.4"
      },
      "engines": {
        "node": ">= 6.0.0"
        "node": ">= 14"
      }
    },
    "node_modules/ansi-regex": {
@@ -1252,6 +1234,14 @@
      "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
      "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw=="
    },
    "node_modules/bidi-js": {
      "version": "1.0.3",
      "resolved": "https://registry.npmjs.org/bidi-js/-/bidi-js-1.0.3.tgz",
      "integrity": "sha512-RKshQI1R3YQ+n9YJz2QQ147P66ELpa1FQEg20Dk8oW9t2KgLbpDLLp9aGZ7y8WHSshDknG0bknqGw5/tyCs5tw==",
      "dependencies": {
        "require-from-string": "^2.0.2"
      }
    },
    "node_modules/binary-extensions": {
      "version": "2.2.0",
      "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz",
@@ -1518,15 +1508,27 @@
        "node": ">= 8"
      }
    },
    "node_modules/css-tree": {
      "version": "2.3.1",
      "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-2.3.1.tgz",
      "integrity": "sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==",
      "dependencies": {
        "mdn-data": "2.0.30",
        "source-map-js": "^1.0.1"
      },
      "engines": {
        "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0"
      }
    },
    "node_modules/cssstyle": {
      "version": "3.0.0",
      "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-3.0.0.tgz",
      "integrity": "sha512-N4u2ABATi3Qplzf0hWbVCdjenim8F3ojEXpBDF5hBpjzW182MjNGLqfmQ0SkSPeQ+V86ZXgeH8aXj6kayd4jgg==",
      "version": "4.0.1",
      "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-4.0.1.tgz",
      "integrity": "sha512-8ZYiJ3A/3OkDd093CBT/0UKDWry7ak4BdPTFP2+QEP7cmhouyq/Up709ASSj2cK02BbZiMgk7kYjZNS4QP5qrQ==",
      "dependencies": {
        "rrweb-cssom": "^0.6.0"
      },
      "engines": {
        "node": ">=14"
        "node": ">=18"
      }
    },
    "node_modules/d3": {
@@ -1900,16 +1902,15 @@
      }
    },
    "node_modules/data-urls": {
      "version": "4.0.0",
      "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-4.0.0.tgz",
      "integrity": "sha512-/mMTei/JXPqvFqQtfyTowxmJVwr2PVAeCcDxyFf6LhoOu/09TX2OX3kb2wzi4DMXcfj4OItwDOnhl5oziPnT6g==",
      "version": "5.0.0",
      "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-5.0.0.tgz",
      "integrity": "sha512-ZYP5VBHshaDAiVZxjbRVcFJpc+4xGgT0bK3vzy1HLN8jTO975HEbuYzZJcHoQEY5K1a0z8YayJkyVETa08eNTg==",
      "dependencies": {
        "abab": "^2.0.6",
        "whatwg-mimetype": "^3.0.0",
        "whatwg-url": "^12.0.0"
        "whatwg-mimetype": "^4.0.0",
        "whatwg-url": "^14.0.0"
      },
      "engines": {
        "node": ">=14"
        "node": ">=18"
      }
    },
    "node_modules/debug": {
@@ -1992,18 +1993,6 @@
        "url": "https://github.com/sponsors/wooorm"
      }
    },
    "node_modules/domexception": {
      "version": "4.0.0",
      "resolved": "https://registry.npmjs.org/domexception/-/domexception-4.0.0.tgz",
      "integrity": "sha512-A2is4PLG+eeSfoTMA95/s4pvAoSo2mKtiM5jlHkAVewmiO8ISFTFKZjH7UAM1Atli/OT/7JHOrJRJiMKUZKYBw==",
      "deprecated": "Use your platform's native DOMException instead",
      "dependencies": {
        "webidl-conversions": "^7.0.0"
      },
      "engines": {
        "node": ">=12"
      }
    },
    "node_modules/eastasianwidth": {
      "version": "0.2.0",
      "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz",
@@ -2193,9 +2182,9 @@
      }
    },
    "node_modules/flexsearch": {
      "version": "0.7.21",
      "resolved": "https://registry.npmjs.org/flexsearch/-/flexsearch-0.7.21.tgz",
      "integrity": "sha512-W7cHV7Hrwjid6lWmy0IhsWDFQboWSng25U3VVywpHOTJnnAZNPScog67G+cVpeX9f7yDD21ih0WDrMMT+JoaYg=="
      "version": "0.7.43",
      "resolved": "https://registry.npmjs.org/flexsearch/-/flexsearch-0.7.43.tgz",
      "integrity": "sha512-c5o/+Um8aqCSOXGcZoqZOm+NqtVwNsvVpWv6lfmSclU954O3wvQKxxK8zj74fPaSJbXpSLTs4PRhh+wnoCXnKg=="
    },
    "node_modules/foreground-child": {
      "version": "3.1.1",
@@ -2703,14 +2692,14 @@
      }
    },
    "node_modules/html-encoding-sniffer": {
      "version": "3.0.0",
      "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-3.0.0.tgz",
      "integrity": "sha512-oWv4T4yJ52iKrufjnyZPkrN0CH3QnrUqdB6In1g5Fe1mia8GmF36gnfNySxoZtxD5+NmYw1EElVXiBk93UeskA==",
      "version": "4.0.0",
      "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-4.0.0.tgz",
      "integrity": "sha512-Y22oTqIU4uuPgEemfz7NDJz6OeKf12Lsu+QC+s3BVpda64lTiMYCyGwg5ki4vFxkMwQdeZDl2adZoqUgdFuTgQ==",
      "dependencies": {
        "whatwg-encoding": "^2.0.0"
        "whatwg-encoding": "^3.1.1"
      },
      "engines": {
        "node": ">=12"
        "node": ">=18"
      }
    },
    "node_modules/html-void-elements": {
@@ -2723,28 +2712,27 @@
      }
    },
    "node_modules/http-proxy-agent": {
      "version": "5.0.0",
      "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz",
      "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==",
      "version": "7.0.0",
      "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.0.tgz",
      "integrity": "sha512-+ZT+iBxVUQ1asugqnD6oWoRiS25AkjNfG085dKJGtGxkdwLQrMKU5wJr2bOOFAXzKcTuqq+7fZlTMgG3SRfIYQ==",
      "dependencies": {
        "@tootallnate/once": "2",
        "agent-base": "6",
        "debug": "4"
        "agent-base": "^7.1.0",
        "debug": "^4.3.4"
      },
      "engines": {
        "node": ">= 6"
        "node": ">= 14"
      }
    },
    "node_modules/https-proxy-agent": {
      "version": "5.0.1",
      "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz",
      "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==",
      "version": "7.0.2",
      "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.2.tgz",
      "integrity": "sha512-NmLNjm6ucYwtcUmL7JQC1ZQ57LmHP4lT15FQ8D61nak1rO6DH+fz5qNK2Ap5UN4ZapYICE3/0KodcLYSPsPbaA==",
      "dependencies": {
        "agent-base": "6",
        "agent-base": "^7.0.2",
        "debug": "4"
      },
      "engines": {
        "node": ">= 6"
        "node": ">= 14"
      }
    },
    "node_modules/iconv-lite": {
@@ -2972,39 +2960,37 @@
      }
    },
    "node_modules/jsdom": {
      "version": "22.1.0",
      "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-22.1.0.tgz",
      "integrity": "sha512-/9AVW7xNbsBv6GfWho4TTNjEo9fe6Zhf9O7s0Fhhr3u+awPwAJMKwAMXnkk5vBxflqLW9hTHX/0cs+P3gW+cQw==",
      "version": "23.2.0",
      "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-23.2.0.tgz",
      "integrity": "sha512-L88oL7D/8ufIES+Zjz7v0aes+oBMh2Xnh3ygWvL0OaICOomKEPKuPnIfBJekiXr+BHbbMjrWn/xqrDQuxFTeyA==",
      "dependencies": {
        "abab": "^2.0.6",
        "cssstyle": "^3.0.0",
        "data-urls": "^4.0.0",
        "@asamuzakjp/dom-selector": "^2.0.1",
        "cssstyle": "^4.0.1",
        "data-urls": "^5.0.0",
        "decimal.js": "^10.4.3",
        "domexception": "^4.0.0",
        "form-data": "^4.0.0",
        "html-encoding-sniffer": "^3.0.0",
        "http-proxy-agent": "^5.0.0",
        "https-proxy-agent": "^5.0.1",
        "html-encoding-sniffer": "^4.0.0",
        "http-proxy-agent": "^7.0.0",
        "https-proxy-agent": "^7.0.2",
        "is-potential-custom-element-name": "^1.0.1",
        "nwsapi": "^2.2.4",
        "parse5": "^7.1.2",
        "rrweb-cssom": "^0.6.0",
        "saxes": "^6.0.0",
        "symbol-tree": "^3.2.4",
        "tough-cookie": "^4.1.2",
        "w3c-xmlserializer": "^4.0.0",
        "tough-cookie": "^4.1.3",
        "w3c-xmlserializer": "^5.0.0",
        "webidl-conversions": "^7.0.0",
        "whatwg-encoding": "^2.0.0",
        "whatwg-mimetype": "^3.0.0",
        "whatwg-url": "^12.0.1",
        "ws": "^8.13.0",
        "xml-name-validator": "^4.0.0"
        "whatwg-encoding": "^3.1.1",
        "whatwg-mimetype": "^4.0.0",
        "whatwg-url": "^14.0.0",
        "ws": "^8.16.0",
        "xml-name-validator": "^5.0.0"
      },
      "engines": {
        "node": ">=16"
        "node": ">=18"
      },
      "peerDependencies": {
        "canvas": "^2.5.0"
        "canvas": "^2.11.2"
      },
      "peerDependenciesMeta": {
        "canvas": {
@@ -3044,9 +3030,9 @@
      }
    },
    "node_modules/lightningcss": {
      "version": "1.22.1",
      "resolved": "https://registry.npmjs.org/lightningcss/-/lightningcss-1.22.1.tgz",
      "integrity": "sha512-Fy45PhibiNXkm0cK5FJCbfO8Y6jUpD/YcHf/BtuI+jvYYqSXKF4muk61jjE8YxCR9y+hDYIWSzHTc+bwhDE6rQ==",
      "version": "1.23.0",
      "resolved": "https://registry.npmjs.org/lightningcss/-/lightningcss-1.23.0.tgz",
      "integrity": "sha512-SEArWKMHhqn/0QzOtclIwH5pXIYQOUEkF8DgICd/105O+GCgd7jxjNod/QPnBCSWvpRHQBGVz5fQ9uScby03zA==",
      "dependencies": {
        "detect-libc": "^1.0.3"
      },
@@ -3058,21 +3044,21 @@
        "url": "https://opencollective.com/parcel"
      },
      "optionalDependencies": {
        "lightningcss-darwin-arm64": "1.22.1",
        "lightningcss-darwin-x64": "1.22.1",
        "lightningcss-freebsd-x64": "1.22.1",
        "lightningcss-linux-arm-gnueabihf": "1.22.1",
        "lightningcss-linux-arm64-gnu": "1.22.1",
        "lightningcss-linux-arm64-musl": "1.22.1",
        "lightningcss-linux-x64-gnu": "1.22.1",
        "lightningcss-linux-x64-musl": "1.22.1",
        "lightningcss-win32-x64-msvc": "1.22.1"
        "lightningcss-darwin-arm64": "1.23.0",
        "lightningcss-darwin-x64": "1.23.0",
        "lightningcss-freebsd-x64": "1.23.0",
        "lightningcss-linux-arm-gnueabihf": "1.23.0",
        "lightningcss-linux-arm64-gnu": "1.23.0",
        "lightningcss-linux-arm64-musl": "1.23.0",
        "lightningcss-linux-x64-gnu": "1.23.0",
        "lightningcss-linux-x64-musl": "1.23.0",
        "lightningcss-win32-x64-msvc": "1.23.0"
      }
    },
    "node_modules/lightningcss-darwin-arm64": {
      "version": "1.22.1",
      "resolved": "https://registry.npmjs.org/lightningcss-darwin-arm64/-/lightningcss-darwin-arm64-1.22.1.tgz",
      "integrity": "sha512-ldvElu+R0QimNTjsKpaZkUv3zf+uefzLy/R1R19jtgOfSRM+zjUCUgDhfEDRmVqJtMwYsdhMI2aJtJChPC6Osg==",
      "version": "1.23.0",
      "resolved": "https://registry.npmjs.org/lightningcss-darwin-arm64/-/lightningcss-darwin-arm64-1.23.0.tgz",
      "integrity": "sha512-kl4Pk3Q2lnE6AJ7Qaij47KNEfY2/UXRZBT/zqGA24B8qwkgllr/j7rclKOf1axcslNXvvUdztjo4Xqh39Yq1aA==",
      "cpu": [
        "arm64"
      ],
@@ -3089,9 +3075,9 @@
      }
    },
    "node_modules/lightningcss-darwin-x64": {
      "version": "1.22.1",
      "resolved": "https://registry.npmjs.org/lightningcss-darwin-x64/-/lightningcss-darwin-x64-1.22.1.tgz",
      "integrity": "sha512-5p2rnlVTv6Gpw4PlTLq925nTVh+HFh4MpegX8dPDYJae+NFVjQ67gY7O6iHIzQjLipDiYejFF0yHrhjU3XgLBQ==",
      "version": "1.23.0",
      "resolved": "https://registry.npmjs.org/lightningcss-darwin-x64/-/lightningcss-darwin-x64-1.23.0.tgz",
      "integrity": "sha512-KeRFCNoYfDdcolcFXvokVw+PXCapd2yHS1Diko1z1BhRz/nQuD5XyZmxjWdhmhN/zj5sH8YvWsp0/lPLVzqKpg==",
      "cpu": [
        "x64"
      ],
@@ -3108,9 +3094,9 @@
      }
    },
    "node_modules/lightningcss-freebsd-x64": {
      "version": "1.22.1",
      "resolved": "https://registry.npmjs.org/lightningcss-freebsd-x64/-/lightningcss-freebsd-x64-1.22.1.tgz",
      "integrity": "sha512-1FaBtcFrZqB2hkFbAxY//Pnp8koThvyB6AhjbdVqKD4/pu13Rl91fKt2N9qyeQPUt3xy7ORUvSO+dPk3J6EjXg==",
      "version": "1.23.0",
      "resolved": "https://registry.npmjs.org/lightningcss-freebsd-x64/-/lightningcss-freebsd-x64-1.23.0.tgz",
      "integrity": "sha512-xhnhf0bWPuZxcqknvMDRFFo2TInrmQRWZGB0f6YoAsZX8Y+epfjHeeOIGCfAmgF0DgZxHwYc8mIR5tQU9/+ROA==",
      "cpu": [
        "x64"
      ],
@@ -3127,9 +3113,9 @@
      }
    },
    "node_modules/lightningcss-linux-arm-gnueabihf": {
      "version": "1.22.1",
      "resolved": "https://registry.npmjs.org/lightningcss-linux-arm-gnueabihf/-/lightningcss-linux-arm-gnueabihf-1.22.1.tgz",
      "integrity": "sha512-6rub98tYGfE5I5j0BP8t/2d4BZyu1S7Iz9vUkm0H26snAFHYxLfj3RbQn0xHHIePSetjLnhcg3QlfwUAkD/FYg==",
      "version": "1.23.0",
      "resolved": "https://registry.npmjs.org/lightningcss-linux-arm-gnueabihf/-/lightningcss-linux-arm-gnueabihf-1.23.0.tgz",
      "integrity": "sha512-fBamf/bULvmWft9uuX+bZske236pUZEoUlaHNBjnueaCTJ/xd8eXgb0cEc7S5o0Nn6kxlauMBnqJpF70Bgq3zg==",
      "cpu": [
        "arm"
      ],
@@ -3146,9 +3132,9 @@
      }
    },
    "node_modules/lightningcss-linux-arm64-gnu": {
      "version": "1.22.1",
      "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-gnu/-/lightningcss-linux-arm64-gnu-1.22.1.tgz",
      "integrity": "sha512-nYO5qGtb/1kkTZu3FeTiM+2B2TAb7m2DkLCTgQIs2bk2o9aEs7I96fwySKcoHWQAiQDGR9sMux9vkV4KQXqPaQ==",
      "version": "1.23.0",
      "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-gnu/-/lightningcss-linux-arm64-gnu-1.23.0.tgz",
      "integrity": "sha512-RS7sY77yVLOmZD6xW2uEHByYHhQi5JYWmgVumYY85BfNoVI3DupXSlzbw+b45A9NnVKq45+oXkiN6ouMMtTwfg==",
      "cpu": [
        "arm64"
      ],
@@ -3165,9 +3151,9 @@
      }
    },
    "node_modules/lightningcss-linux-arm64-musl": {
      "version": "1.22.1",
      "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-musl/-/lightningcss-linux-arm64-musl-1.22.1.tgz",
      "integrity": "sha512-MCV6RuRpzXbunvzwY644iz8cw4oQxvW7oer9xPkdadYqlEyiJJ6wl7FyJOH7Q6ZYH4yjGAUCvxDBxPbnDu9ZVg==",
      "version": "1.23.0",
      "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-musl/-/lightningcss-linux-arm64-musl-1.23.0.tgz",
      "integrity": "sha512-cU00LGb6GUXCwof6ACgSMKo3q7XYbsyTj0WsKHLi1nw7pV0NCq8nFTn6ZRBYLoKiV8t+jWl0Hv8KkgymmK5L5g==",
      "cpu": [
        "arm64"
      ],
@@ -3184,9 +3170,9 @@
      }
    },
    "node_modules/lightningcss-linux-x64-gnu": {
      "version": "1.22.1",
      "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-gnu/-/lightningcss-linux-x64-gnu-1.22.1.tgz",
      "integrity": "sha512-RjNgpdM20VUXgV7us/VmlO3Vn2ZRiDnc3/bUxCVvySZWPiVPprpqW/QDWuzkGa+NCUf6saAM5CLsZLSxncXJwg==",
      "version": "1.23.0",
      "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-gnu/-/lightningcss-linux-x64-gnu-1.23.0.tgz",
      "integrity": "sha512-q4jdx5+5NfB0/qMbXbOmuC6oo7caPnFghJbIAV90cXZqgV8Am3miZhC4p+sQVdacqxfd+3nrle4C8icR3p1AYw==",
      "cpu": [
        "x64"
      ],
@@ -3203,9 +3189,9 @@
      }
    },
    "node_modules/lightningcss-linux-x64-musl": {
      "version": "1.22.1",
      "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-musl/-/lightningcss-linux-x64-musl-1.22.1.tgz",
      "integrity": "sha512-ZgO4C7Rd6Hv/5MnyY2KxOYmIlzk4rplVolDt3NbkNR8DndnyX0Q5IR4acJWNTBICQ21j3zySzKbcJaiJpk/4YA==",
      "version": "1.23.0",
      "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-musl/-/lightningcss-linux-x64-musl-1.23.0.tgz",
      "integrity": "sha512-G9Ri3qpmF4qef2CV/80dADHKXRAQeQXpQTLx7AiQrBYQHqBjB75oxqj06FCIe5g4hNCqLPnM9fsO4CyiT1sFSQ==",
      "cpu": [
        "x64"
      ],
@@ -3222,9 +3208,9 @@
      }
    },
    "node_modules/lightningcss-win32-x64-msvc": {
      "version": "1.22.1",
      "resolved": "https://registry.npmjs.org/lightningcss-win32-x64-msvc/-/lightningcss-win32-x64-msvc-1.22.1.tgz",
      "integrity": "sha512-4pozV4eyD0MDET41ZLHAeBo+H04Nm2UEYIk5w/ts40231dRFV7E0cjwbnZvSoc1DXFgecAhiC0L16ruv/ZDCpg==",
      "version": "1.23.0",
      "resolved": "https://registry.npmjs.org/lightningcss-win32-x64-msvc/-/lightningcss-win32-x64-msvc-1.23.0.tgz",
      "integrity": "sha512-1rcBDJLU+obPPJM6qR5fgBUiCdZwZLafZM5f9kwjFLkb/UBNIzmae39uCSmh71nzPCTXZqHbvwu23OWnWEz+eg==",
      "cpu": [
        "x64"
      ],
@@ -3678,6 +3664,11 @@
        "url": "https://opencollective.com/unified"
      }
    },
    "node_modules/mdn-data": {
      "version": "2.0.30",
      "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.30.tgz",
      "integrity": "sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA=="
    },
    "node_modules/merge2": {
      "version": "1.4.1",
      "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz",
@@ -4347,11 +4338,6 @@
        "node": ">=0.10.0"
      }
    },
    "node_modules/nwsapi": {
      "version": "2.2.7",
      "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.7.tgz",
      "integrity": "sha512-ub5E4+FBPKwAZx0UwIQOjYWGHTEq5sPqHQNRN8Z9e4A7u3Tj1weLJsL59yH9vmvqEtBHaOmT6cYQKIZOxp35FQ=="
    },
    "node_modules/parse-entities": {
      "version": "4.0.1",
      "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-4.0.1.tgz",
@@ -4487,9 +4473,9 @@
      }
    },
    "node_modules/prettier": {
      "version": "3.1.1",
      "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.1.1.tgz",
      "integrity": "sha512-22UbSzg8luF4UuZtzgiUOfcGM8s4tjBv6dJRT7j275NXsy2jb4aJa4NNveul5x4eqlF1wuhuR2RElK71RvmVaw==",
      "version": "3.2.4",
      "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.2.4.tgz",
      "integrity": "sha512-FWu1oLHKCrtpO1ypU6J0SbK2d9Ckwysq6bHj/uaCP26DxrPpppCLQRGVuqAxSTvhF00AcvDRyYrLNW7ocBhFFQ==",
      "dev": true,
      "bin": {
        "prettier": "bin/prettier.cjs"
@@ -4658,15 +4644,15 @@
      }
    },
    "node_modules/rehype-mathjax": {
      "version": "5.0.0",
      "resolved": "https://registry.npmjs.org/rehype-mathjax/-/rehype-mathjax-5.0.0.tgz",
      "integrity": "sha512-IRPgpSpwOq4JNn3efeTrbYDMmzjOKCTJtu1Wyo/+6nenyqwqIvlojYDczRILOeHa1HyCMYmqpdvfOovOVzDIGg==",
      "version": "6.0.0",
      "resolved": "https://registry.npmjs.org/rehype-mathjax/-/rehype-mathjax-6.0.0.tgz",
      "integrity": "sha512-SioRmn+0mRWtDc4QVKG9JG88bXhPazfhc11GQoQ68mwot2WWyfabyZ7tuJu3Z4LCf893wXkQTVTF8PUlntoDwA==",
      "dependencies": {
        "@types/hast": "^3.0.0",
        "@types/mathjax": "^0.0.37",
        "@types/mathjax": "^0.0.40",
        "hast-util-from-dom": "^5.0.0",
        "hast-util-to-text": "^4.0.0",
        "jsdom": "^22.0.0",
        "jsdom": "^23.0.0",
        "mathjax-full": "^3.0.0",
        "unified": "^11.0.0",
        "unist-util-visit-parents": "^6.0.0"
@@ -4861,9 +4847,9 @@
      }
    },
    "node_modules/remark-rehype": {
      "version": "11.0.0",
      "resolved": "https://registry.npmjs.org/remark-rehype/-/remark-rehype-11.0.0.tgz",
      "integrity": "sha512-vx8x2MDMcxuE4lBmQ46zYUDfcFMmvg80WYX+UNLeG6ixjdCCLcw1lrgAukwBTuOFsS78eoAedHGn9sNM0w7TPw==",
      "version": "11.1.0",
      "resolved": "https://registry.npmjs.org/remark-rehype/-/remark-rehype-11.1.0.tgz",
      "integrity": "sha512-z3tJrAs2kIs1AqIIy6pzHmAHlF1hWQ+OdY4/hv+Wxe35EhyLKcajL33iUEn3ScxtFox9nUvRufR/Zre8Q08H/g==",
      "dependencies": {
        "@types/hast": "^3.0.0",
        "@types/mdast": "^4.0.0",
@@ -4925,6 +4911,14 @@
        "node": ">=0.10.0"
      }
    },
    "node_modules/require-from-string": {
      "version": "2.0.2",
      "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz",
      "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==",
      "engines": {
        "node": ">=0.10.0"
      }
    },
    "node_modules/requires-port": {
      "version": "1.0.0",
      "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz",
@@ -5170,9 +5164,9 @@
      }
    },
    "node_modules/rfdc": {
      "version": "1.3.0",
      "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.0.tgz",
      "integrity": "sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA=="
      "version": "1.3.1",
      "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.1.tgz",
      "integrity": "sha512-r5a3l5HzYlIC68TpmYKlxWjmOP6wiPJ1vWv2HeLhNsRZMrCkxeqxiHlQ21oXmQ4F3SiryXBHhAD7JZqvOJjFmg=="
    },
    "node_modules/rimraf": {
      "version": "5.0.5",
@@ -5327,17 +5321,17 @@
      }
    },
    "node_modules/shikiji": {
      "version": "0.9.9",
      "resolved": "https://registry.npmjs.org/shikiji/-/shikiji-0.9.9.tgz",
      "integrity": "sha512-/S3unr/0mZTstNOuAmNDEufeimtqeQb8lXvPMLsYfDvqyfmG6334bO2xmDzD0kfxH2y8gnFgSWAJpdEzksmYXg==",
      "version": "0.10.2",
      "resolved": "https://registry.npmjs.org/shikiji/-/shikiji-0.10.2.tgz",
      "integrity": "sha512-wtZg3T0vtYV2PnqusWQs3mDaJBdCPWxFDrBM/SE5LfrX92gjUvfEMlc+vJnoKY6Z/S44OWaCRzNIsdBRWcTAiw==",
      "dependencies": {
        "shikiji-core": "0.9.9"
        "shikiji-core": "0.10.2"
      }
    },
    "node_modules/shikiji-core": {
      "version": "0.9.9",
      "resolved": "https://registry.npmjs.org/shikiji-core/-/shikiji-core-0.9.9.tgz",
      "integrity": "sha512-qu5Qq7Co6JIMY312J9Ek6WYjXieeyJT/fIqmkcjF4MdnMNlUnhSqPo8/42g5UdPgdyTCwijS7Nhg8DfLSLodkg=="
      "version": "0.10.2",
      "resolved": "https://registry.npmjs.org/shikiji-core/-/shikiji-core-0.10.2.tgz",
      "integrity": "sha512-9Of8HMlF96usXJHmCL3Gd0Fcf0EcyJUF9m8EoAKKd98mHXi0La2AZl1h6PegSFGtiYcBDK/fLuKbDa1l16r1fA=="
    },
    "node_modules/signal-exit": {
      "version": "4.1.0",
@@ -5610,14 +5604,14 @@
      }
    },
    "node_modules/tr46": {
      "version": "4.1.1",
      "resolved": "https://registry.npmjs.org/tr46/-/tr46-4.1.1.tgz",
      "integrity": "sha512-2lv/66T7e5yNyhAAC4NaKe5nVavzuGJQVVtRYLyQ2OI8tsJ61PMLlelehb0wi2Hx6+hT/OJUWZcw8MjlSRnxvw==",
      "version": "5.0.0",
      "resolved": "https://registry.npmjs.org/tr46/-/tr46-5.0.0.tgz",
      "integrity": "sha512-tk2G5R2KRwBd+ZN0zaEXpmzdKyOYksXwywulIX95MBODjSzMIuQnQ3m8JxgbhnL1LeVo7lqQKsYa1O3Htl7K5g==",
      "dependencies": {
        "punycode": "^2.3.0"
        "punycode": "^2.3.1"
      },
      "engines": {
        "node": ">=14"
        "node": ">=18"
      }
    },
    "node_modules/tr46/node_modules/punycode": {
@@ -5683,6 +5677,12 @@
        "node": ">=14.17"
      }
    },
    "node_modules/undici-types": {
      "version": "5.26.5",
      "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz",
      "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==",
      "dev": true
    },
    "node_modules/unherit": {
      "version": "3.0.1",
      "resolved": "https://registry.npmjs.org/unherit/-/unherit-3.0.1.tgz",
@@ -5990,14 +5990,14 @@
      }
    },
    "node_modules/w3c-xmlserializer": {
      "version": "4.0.0",
      "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-4.0.0.tgz",
      "integrity": "sha512-d+BFHzbiCx6zGfz0HyQ6Rg69w9k19nviJspaj4yNscGjrHu94sVP+aRm75yEbCh+r2/yR+7q6hux9LVtbuTGBw==",
      "version": "5.0.0",
      "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-5.0.0.tgz",
      "integrity": "sha512-o8qghlI8NZHU1lLPrpi2+Uq7abh4GGPpYANlalzWxyWteJOCsr/P+oPBA49TOLu5FTZO4d3F9MnWJfiMo4BkmA==",
      "dependencies": {
        "xml-name-validator": "^4.0.0"
        "xml-name-validator": "^5.0.0"
      },
      "engines": {
        "node": ">=14"
        "node": ">=18"
      }
    },
    "node_modules/web-namespaces": {
@@ -6018,34 +6018,34 @@
      }
    },
    "node_modules/whatwg-encoding": {
      "version": "2.0.0",
      "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-2.0.0.tgz",
      "integrity": "sha512-p41ogyeMUrw3jWclHWTQg1k05DSVXPLcVxRTYsXUk+ZooOCZLcoYgPZ/HL/D/N+uQPOtcp1me1WhBEaX02mhWg==",
      "version": "3.1.1",
      "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-3.1.1.tgz",
      "integrity": "sha512-6qN4hJdMwfYBtE3YBTTHhoeuUrDBPZmbQaxWAqSALV/MeEnR5z1xd8UKud2RAkFoPkmB+hli1TZSnyi84xz1vQ==",
      "dependencies": {
        "iconv-lite": "0.6.3"
      },
      "engines": {
        "node": ">=12"
        "node": ">=18"
      }
    },
    "node_modules/whatwg-mimetype": {
      "version": "3.0.0",
      "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-3.0.0.tgz",
      "integrity": "sha512-nt+N2dzIutVRxARx1nghPKGv1xHikU7HKdfafKkLNLindmPU/ch3U31NOCGGA/dmPcmb1VlofO0vnKAcsm0o/Q==",
      "version": "4.0.0",
      "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-4.0.0.tgz",
      "integrity": "sha512-QaKxh0eNIi2mE9p2vEdzfagOKHCcj1pJ56EEHGQOVxp8r9/iszLUUV7v89x9O1p/T+NlTM5W7jW6+cz4Fq1YVg==",
      "engines": {
        "node": ">=12"
        "node": ">=18"
      }
    },
    "node_modules/whatwg-url": {
      "version": "12.0.1",
      "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-12.0.1.tgz",
      "integrity": "sha512-Ed/LrqB8EPlGxjS+TrsXcpUond1mhccS3pchLhzSgPCnTimUCKj3IZE75pAs5m6heB2U2TMerKFUXheyHY+VDQ==",
      "version": "14.0.0",
      "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-14.0.0.tgz",
      "integrity": "sha512-1lfMEm2IEr7RIV+f4lUNPOqfFL+pO+Xw3fJSqmjX9AbXcXcYOkCe1P6+9VBZB6n94af16NfZf+sSk0JCBZC9aw==",
      "dependencies": {
        "tr46": "^4.1.1",
        "tr46": "^5.0.0",
        "webidl-conversions": "^7.0.0"
      },
      "engines": {
        "node": ">=14"
        "node": ">=18"
      }
    },
    "node_modules/which": {
@@ -6068,9 +6068,9 @@
      "integrity": "sha512-Gd9+TUn5nXdwj/hFsPVx5cuHHiF5Bwuc30jZ4+ronF1qHK5O7HD0sgmXWSEgwKquT3ClLoKPVbO6qGwVwLzvAw=="
    },
    "node_modules/workerpool": {
      "version": "8.0.0",
      "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-8.0.0.tgz",
      "integrity": "sha512-aoLtwqMXoYVA1JV+t8uCLo7sXkF4Q1Ijrn7954X2IVyysk2bv2Il7C9sVJH8xk9xJAL0FNgR+hPOhmvnMk/P5Q=="
      "version": "9.1.0",
      "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-9.1.0.tgz",
      "integrity": "sha512-+wRWfm9yyJghvXLSHMQj3WXDxHbibHAQmRrWbqKBfy0RjftZNeQaW+Std5bSYc83ydkrxoPTPOWVlXUR9RWJdQ=="
    },
    "node_modules/wrap-ansi": {
      "version": "8.1.0",
@@ -6154,9 +6154,9 @@
      }
    },
    "node_modules/ws": {
      "version": "8.15.1",
      "resolved": "https://registry.npmjs.org/ws/-/ws-8.15.1.tgz",
      "integrity": "sha512-W5OZiCjXEmk0yZ66ZN82beM5Sz7l7coYxpRkzS+p9PP+ToQry8szKh+61eNktr7EA9DOwvFGhfC605jDHbP6QQ==",
      "version": "8.16.0",
      "resolved": "https://registry.npmjs.org/ws/-/ws-8.16.0.tgz",
      "integrity": "sha512-HS0c//TP7Ina87TfiPUz1rQzMhHrl/SG2guqRcTOIUYD2q8uhUdNHZYJUaQ8aTGPzCh+c6oawMKW35nFl1dxyQ==",
      "engines": {
        "node": ">=10.0.0"
      },
@@ -6174,11 +6174,11 @@
      }
    },
    "node_modules/xml-name-validator": {
      "version": "4.0.0",
      "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-4.0.0.tgz",
      "integrity": "sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==",
      "version": "5.0.0",
      "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-5.0.0.tgz",
      "integrity": "sha512-EvGK8EJ3DhaHfbRlETOWAS5pO9MZITeauHKJyb8wyajUfQUenkIg2MvLDTZ4T/TgIcm3HU0TFBgWWboAZ30UHg==",
      "engines": {
        "node": ">=12"
        "node": ">=18"
      }
    },
    "node_modules/xmlchars": {