Radish alpha
r
rad:z4V1sjrXqjvFdnCUbxPFqd5p4DtH5
Radicle web interface
Radicle
Git
Update dependencies
Merged rudolfs opened 1 year ago

Leaving out the eslint update, there is something incompatible with the other packages that prevents us to upgrade. We should look into it separately.

check check-visual check-unit-test check-http-client-unit-test check-radicle-httpd check-e2e check-build check-http 👉 Preview 👉 Workflow runs 👉 Branch on GitHub

3 files changed +379 -536 472993c6 662a5e24
modified package-lock.json
@@ -13,16 +13,16 @@
        "@radicle/gray-matter": "4.1.0",
        "@wooorm/starry-night": "^3.4.0",
        "async-mutex": "^0.5.0",
-
        "baconjs": "^3.0.17",
+
        "baconjs": "^3.0.19",
        "bs58": "^6.0.0",
        "buffer": "^6.0.3",
-
        "compare-versions": "^6.1.0",
-
        "dompurify": "^3.1.5",
+
        "compare-versions": "^6.1.1",
+
        "dompurify": "^3.1.6",
        "fuzzysort": "^3.0.2",
        "hast-util-to-dom": "^4.0.0",
        "hast-util-to-html": "^9.0.1",
        "lodash": "^4.17.21",
-
        "marked": "^13.0.0",
+
        "marked": "^13.0.2",
        "marked-emoji": "^1.4.1",
        "marked-footnote": "^1.2.2",
        "marked-katex-extension": "^5.0.2",
@@ -34,38 +34,38 @@
        "zod": "^3.23.8"
      },
      "devDependencies": {
-
        "@eslint/js": "^9.5.0",
-
        "@playwright/test": "^1.44.1",
+
        "@eslint/js": "^9.7.0",
+
        "@playwright/test": "^1.45.2",
        "@sveltejs/vite-plugin-svelte": "^3.1.1",
        "@tsconfig/svelte": "^5.0.4",
        "@types/config": "^3.3.4",
        "@types/dompurify": "^3.0.5",
        "@types/katex": "^0.16.7",
-
        "@types/lodash": "^4.17.5",
+
        "@types/lodash": "^4.17.7",
        "@types/md5": "^2.3.5",
-
        "@types/node": "^20.14.8",
+
        "@types/node": "^20.14.11",
        "@types/sinon": "^17.0.3",
        "@types/wait-on": "^5.3.4",
-
        "@typescript-eslint/parser": "^7.13.1",
+
        "@typescript-eslint/parser": "^7.16.1",
        "chalk": "^5.3.0",
-
        "config": "^3.3.11",
+
        "config": "^3.3.12",
        "eslint": "^8.57.0",
        "eslint-config-prettier": "^9.1.0",
-
        "eslint-plugin-svelte": "^2.41.0",
+
        "eslint-plugin-svelte": "^2.42.0",
        "execa": "^9.3.0",
        "get-port": "^7.1.0",
-
        "globals": "^15.6.0",
+
        "globals": "^15.8.0",
        "happy-dom": "^14.12.3",
-
        "prettier": "^3.3.2",
+
        "prettier": "^3.3.3",
        "prettier-plugin-svelte": "^3.2.5",
        "sinon": "^18.0.0",
-
        "svelte-check": "^3.8.1",
-
        "svelte-eslint-parser": "^0.39.2",
-
        "typescript": "^5.5.0",
-
        "typescript-eslint": "^7.13.1",
-
        "vite": "^5.3.1",
+
        "svelte-check": "^3.8.4",
+
        "svelte-eslint-parser": "^0.40.0",
+
        "typescript": "^5.5.3",
+
        "typescript-eslint": "^7.16.1",
+
        "vite": "^5.3.4",
        "vite-plugin-virtual": "^0.3.0",
-
        "vitest": "^1.6.0",
+
        "vitest": "^2.0.3",
        "wait-on": "^7.2.0"
      },
      "engines": {
@@ -485,9 +485,9 @@
      }
    },
    "node_modules/@eslint-community/regexpp": {
-
      "version": "4.10.1",
-
      "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.10.1.tgz",
-
      "integrity": "sha512-Zm2NGpWELsQAD1xsJzGQpYfvICSsFkEpU0jxBjfdC6uNEWXcHnfs9hScFWtXVDVl+rBQJGrl4g1vcKIejpH9dA==",
+
      "version": "4.11.0",
+
      "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.11.0.tgz",
+
      "integrity": "sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A==",
      "dev": true,
      "engines": {
        "node": "^12.0.0 || ^14.0.0 || >=16.0.0"
@@ -554,9 +554,9 @@
      }
    },
    "node_modules/@eslint/js": {
-
      "version": "9.5.0",
-
      "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.5.0.tgz",
-
      "integrity": "sha512-A7+AOT2ICkodvtsWnxZP4Xxk3NbZ3VMHd8oihydLRGrJgqqdEz1qSeEgXYyT/Cu8h1TWWsQRejIx48mtjZ5y1w==",
+
      "version": "9.7.0",
+
      "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.7.0.tgz",
+
      "integrity": "sha512-ChuWDQenef8OSFnvuxv0TCVxEwmu3+hPNKvM9B34qpM0rDRbjL8t5QkQeHHeAfsKQjuH9wS82WeCi1J/owatng==",
      "dev": true,
      "engines": {
        "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -634,18 +634,6 @@
      "deprecated": "Use @eslint/object-schema instead",
      "dev": true
    },
-
    "node_modules/@jest/schemas": {
-
      "version": "29.6.3",
-
      "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz",
-
      "integrity": "sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==",
-
      "dev": true,
-
      "dependencies": {
-
        "@sinclair/typebox": "^0.27.8"
-
      },
-
      "engines": {
-
        "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
-
      }
-
    },
    "node_modules/@jridgewell/gen-mapping": {
      "version": "0.3.5",
      "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz",
@@ -676,9 +664,9 @@
      }
    },
    "node_modules/@jridgewell/sourcemap-codec": {
-
      "version": "1.4.15",
-
      "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz",
-
      "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg=="
+
      "version": "1.5.0",
+
      "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz",
+
      "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ=="
    },
    "node_modules/@jridgewell/trace-mapping": {
      "version": "0.3.25",
@@ -725,18 +713,18 @@
      }
    },
    "node_modules/@playwright/test": {
-
      "version": "1.44.1",
-
      "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.44.1.tgz",
-
      "integrity": "sha512-1hZ4TNvD5z9VuhNJ/walIjvMVvYkZKf71axoF/uiAqpntQJXpG64dlXhoDXE3OczPuTuvjf/M5KWFg5VAVUS3Q==",
+
      "version": "1.45.2",
+
      "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.45.2.tgz",
+
      "integrity": "sha512-JxG9eq92ET75EbVi3s+4sYbcG7q72ECeZNbdBlaMkGcNbiDQ4cAi8U2QP5oKkOx+1gpaiL1LDStmzCaEM1Z6fQ==",
      "dev": true,
      "dependencies": {
-
        "playwright": "1.44.1"
+
        "playwright": "1.45.2"
      },
      "bin": {
        "playwright": "cli.js"
      },
      "engines": {
-
        "node": ">=16"
+
        "node": ">=18"
      }
    },
    "node_modules/@radicle/gray-matter": {
@@ -754,9 +742,9 @@
      }
    },
    "node_modules/@rollup/rollup-android-arm-eabi": {
-
      "version": "4.18.0",
-
      "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.18.0.tgz",
-
      "integrity": "sha512-Tya6xypR10giZV1XzxmH5wr25VcZSncG0pZIjfePT0OVBvqNEurzValetGNarVrGiq66EBVAFn15iYX4w6FKgQ==",
+
      "version": "4.18.1",
+
      "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.18.1.tgz",
+
      "integrity": "sha512-lncuC4aHicncmbORnx+dUaAgzee9cm/PbIqgWz1PpXuwc+sa1Ct83tnqUDy/GFKleLiN7ZIeytM6KJ4cAn1SxA==",
      "cpu": [
        "arm"
      ],
@@ -767,9 +755,9 @@
      ]
    },
    "node_modules/@rollup/rollup-android-arm64": {
-
      "version": "4.18.0",
-
      "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.18.0.tgz",
-
      "integrity": "sha512-avCea0RAP03lTsDhEyfy+hpfr85KfyTctMADqHVhLAF3MlIkq83CP8UfAHUssgXTYd+6er6PaAhx/QGv4L1EiA==",
+
      "version": "4.18.1",
+
      "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.18.1.tgz",
+
      "integrity": "sha512-F/tkdw0WSs4ojqz5Ovrw5r9odqzFjb5LIgHdHZG65dFI1lWTWRVy32KDJLKRISHgJvqUeUhdIvy43fX41znyDg==",
      "cpu": [
        "arm64"
      ],
@@ -780,9 +768,9 @@
      ]
    },
    "node_modules/@rollup/rollup-darwin-arm64": {
-
      "version": "4.18.0",
-
      "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.18.0.tgz",
-
      "integrity": "sha512-IWfdwU7KDSm07Ty0PuA/W2JYoZ4iTj3TUQjkVsO/6U+4I1jN5lcR71ZEvRh52sDOERdnNhhHU57UITXz5jC1/w==",
+
      "version": "4.18.1",
+
      "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.18.1.tgz",
+
      "integrity": "sha512-vk+ma8iC1ebje/ahpxpnrfVQJibTMyHdWpOGZ3JpQ7Mgn/3QNHmPq7YwjZbIE7km73dH5M1e6MRRsnEBW7v5CQ==",
      "cpu": [
        "arm64"
      ],
@@ -793,9 +781,9 @@
      ]
    },
    "node_modules/@rollup/rollup-darwin-x64": {
-
      "version": "4.18.0",
-
      "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.18.0.tgz",
-
      "integrity": "sha512-n2LMsUz7Ynu7DoQrSQkBf8iNrjOGyPLrdSg802vk6XT3FtsgX6JbE8IHRvposskFm9SNxzkLYGSq9QdpLYpRNA==",
+
      "version": "4.18.1",
+
      "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.18.1.tgz",
+
      "integrity": "sha512-IgpzXKauRe1Tafcej9STjSSuG0Ghu/xGYH+qG6JwsAUxXrnkvNHcq/NL6nz1+jzvWAnQkuAJ4uIwGB48K9OCGA==",
      "cpu": [
        "x64"
      ],
@@ -806,9 +794,9 @@
      ]
    },
    "node_modules/@rollup/rollup-linux-arm-gnueabihf": {
-
      "version": "4.18.0",
-
      "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.18.0.tgz",
-
      "integrity": "sha512-C/zbRYRXFjWvz9Z4haRxcTdnkPt1BtCkz+7RtBSuNmKzMzp3ZxdM28Mpccn6pt28/UWUCTXa+b0Mx1k3g6NOMA==",
+
      "version": "4.18.1",
+
      "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.18.1.tgz",
+
      "integrity": "sha512-P9bSiAUnSSM7EmyRK+e5wgpqai86QOSv8BwvkGjLwYuOpaeomiZWifEos517CwbG+aZl1T4clSE1YqqH2JRs+g==",
      "cpu": [
        "arm"
      ],
@@ -819,9 +807,9 @@
      ]
    },
    "node_modules/@rollup/rollup-linux-arm-musleabihf": {
-
      "version": "4.18.0",
-
      "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.18.0.tgz",
-
      "integrity": "sha512-l3m9ewPgjQSXrUMHg93vt0hYCGnrMOcUpTz6FLtbwljo2HluS4zTXFy2571YQbisTnfTKPZ01u/ukJdQTLGh9A==",
+
      "version": "4.18.1",
+
      "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.18.1.tgz",
+
      "integrity": "sha512-5RnjpACoxtS+aWOI1dURKno11d7krfpGDEn19jI8BuWmSBbUC4ytIADfROM1FZrFhQPSoP+KEa3NlEScznBTyQ==",
      "cpu": [
        "arm"
      ],
@@ -832,9 +820,9 @@
      ]
    },
    "node_modules/@rollup/rollup-linux-arm64-gnu": {
-
      "version": "4.18.0",
-
      "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.18.0.tgz",
-
      "integrity": "sha512-rJ5D47d8WD7J+7STKdCUAgmQk49xuFrRi9pZkWoRD1UeSMakbcepWXPF8ycChBoAqs1pb2wzvbY6Q33WmN2ftw==",
+
      "version": "4.18.1",
+
      "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.18.1.tgz",
+
      "integrity": "sha512-8mwmGD668m8WaGbthrEYZ9CBmPug2QPGWxhJxh/vCgBjro5o96gL04WLlg5BA233OCWLqERy4YUzX3bJGXaJgQ==",
      "cpu": [
        "arm64"
      ],
@@ -845,9 +833,9 @@
      ]
    },
    "node_modules/@rollup/rollup-linux-arm64-musl": {
-
      "version": "4.18.0",
-
      "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.18.0.tgz",
-
      "integrity": "sha512-be6Yx37b24ZwxQ+wOQXXLZqpq4jTckJhtGlWGZs68TgdKXJgw54lUUoFYrg6Zs/kjzAQwEwYbp8JxZVzZLRepQ==",
+
      "version": "4.18.1",
+
      "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.18.1.tgz",
+
      "integrity": "sha512-dJX9u4r4bqInMGOAQoGYdwDP8lQiisWb9et+T84l2WXk41yEej8v2iGKodmdKimT8cTAYt0jFb+UEBxnPkbXEQ==",
      "cpu": [
        "arm64"
      ],
@@ -858,9 +846,9 @@
      ]
    },
    "node_modules/@rollup/rollup-linux-powerpc64le-gnu": {
-
      "version": "4.18.0",
-
      "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.18.0.tgz",
-
      "integrity": "sha512-hNVMQK+qrA9Todu9+wqrXOHxFiD5YmdEi3paj6vP02Kx1hjd2LLYR2eaN7DsEshg09+9uzWi2W18MJDlG0cxJA==",
+
      "version": "4.18.1",
+
      "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.18.1.tgz",
+
      "integrity": "sha512-V72cXdTl4EI0x6FNmho4D502sy7ed+LuVW6Ym8aI6DRQ9hQZdp5sj0a2usYOlqvFBNKQnLQGwmYnujo2HvjCxQ==",
      "cpu": [
        "ppc64"
      ],
@@ -871,9 +859,9 @@
      ]
    },
    "node_modules/@rollup/rollup-linux-riscv64-gnu": {
-
      "version": "4.18.0",
-
      "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.18.0.tgz",
-
      "integrity": "sha512-ROCM7i+m1NfdrsmvwSzoxp9HFtmKGHEqu5NNDiZWQtXLA8S5HBCkVvKAxJ8U+CVctHwV2Gb5VUaK7UAkzhDjlg==",
+
      "version": "4.18.1",
+
      "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.18.1.tgz",
+
      "integrity": "sha512-f+pJih7sxoKmbjghrM2RkWo2WHUW8UbfxIQiWo5yeCaCM0TveMEuAzKJte4QskBp1TIinpnRcxkquY+4WuY/tg==",
      "cpu": [
        "riscv64"
      ],
@@ -884,9 +872,9 @@
      ]
    },
    "node_modules/@rollup/rollup-linux-s390x-gnu": {
-
      "version": "4.18.0",
-
      "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.18.0.tgz",
-
      "integrity": "sha512-0UyyRHyDN42QL+NbqevXIIUnKA47A+45WyasO+y2bGJ1mhQrfrtXUpTxCOrfxCR4esV3/RLYyucGVPiUsO8xjg==",
+
      "version": "4.18.1",
+
      "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.18.1.tgz",
+
      "integrity": "sha512-qb1hMMT3Fr/Qz1OKovCuUM11MUNLUuHeBC2DPPAWUYYUAOFWaxInaTwTQmc7Fl5La7DShTEpmYwgdt2hG+4TEg==",
      "cpu": [
        "s390x"
      ],
@@ -897,9 +885,9 @@
      ]
    },
    "node_modules/@rollup/rollup-linux-x64-gnu": {
-
      "version": "4.18.0",
-
      "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.18.0.tgz",
-
      "integrity": "sha512-xuglR2rBVHA5UsI8h8UbX4VJ470PtGCf5Vpswh7p2ukaqBGFTnsfzxUBetoWBWymHMxbIG0Cmx7Y9qDZzr648w==",
+
      "version": "4.18.1",
+
      "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.18.1.tgz",
+
      "integrity": "sha512-7O5u/p6oKUFYjRbZkL2FLbwsyoJAjyeXHCU3O4ndvzg2OFO2GinFPSJFGbiwFDaCFc+k7gs9CF243PwdPQFh5g==",
      "cpu": [
        "x64"
      ],
@@ -910,9 +898,9 @@
      ]
    },
    "node_modules/@rollup/rollup-linux-x64-musl": {
-
      "version": "4.18.0",
-
      "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.18.0.tgz",
-
      "integrity": "sha512-LKaqQL9osY/ir2geuLVvRRs+utWUNilzdE90TpyoX0eNqPzWjRm14oMEE+YLve4k/NAqCdPkGYDaDF5Sw+xBfg==",
+
      "version": "4.18.1",
+
      "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.18.1.tgz",
+
      "integrity": "sha512-pDLkYITdYrH/9Cv/Vlj8HppDuLMDUBmgsM0+N+xLtFd18aXgM9Nyqupb/Uw+HeidhfYg2lD6CXvz6CjoVOaKjQ==",
      "cpu": [
        "x64"
      ],
@@ -923,9 +911,9 @@
      ]
    },
    "node_modules/@rollup/rollup-win32-arm64-msvc": {
-
      "version": "4.18.0",
-
      "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.18.0.tgz",
-
      "integrity": "sha512-7J6TkZQFGo9qBKH0pk2cEVSRhJbL6MtfWxth7Y5YmZs57Pi+4x6c2dStAUvaQkHQLnEQv1jzBUW43GvZW8OFqA==",
+
      "version": "4.18.1",
+
      "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.18.1.tgz",
+
      "integrity": "sha512-W2ZNI323O/8pJdBGil1oCauuCzmVd9lDmWBBqxYZcOqWD6aWqJtVBQ1dFrF4dYpZPks6F+xCZHfzG5hYlSHZ6g==",
      "cpu": [
        "arm64"
      ],
@@ -936,9 +924,9 @@
      ]
    },
    "node_modules/@rollup/rollup-win32-ia32-msvc": {
-
      "version": "4.18.0",
-
      "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.18.0.tgz",
-
      "integrity": "sha512-Txjh+IxBPbkUB9+SXZMpv+b/vnTEtFyfWZgJ6iyCmt2tdx0OF5WhFowLmnh8ENGNpfUlUZkdI//4IEmhwPieNg==",
+
      "version": "4.18.1",
+
      "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.18.1.tgz",
+
      "integrity": "sha512-ELfEX1/+eGZYMaCIbK4jqLxO1gyTSOIlZr6pbC4SRYFaSIDVKOnZNMdoZ+ON0mrFDp4+H5MhwNC1H/AhE3zQLg==",
      "cpu": [
        "ia32"
      ],
@@ -949,9 +937,9 @@
      ]
    },
    "node_modules/@rollup/rollup-win32-x64-msvc": {
-
      "version": "4.18.0",
-
      "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.18.0.tgz",
-
      "integrity": "sha512-UOo5FdvOL0+eIVTgS4tIdbW+TtnBLWg1YBCcU2KWM7nuNwRz9bksDX1bekJJCpu25N1DVWaCwnT39dVQxzqS8g==",
+
      "version": "4.18.1",
+
      "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.18.1.tgz",
+
      "integrity": "sha512-yjk2MAkQmoaPYCSu35RLJ62+dz358nE83VfTePJRp8CG7aMg25mEJYpXFiD+NcevhX8LxD5OP5tktPXnXN7GDw==",
      "cpu": [
        "x64"
      ],
@@ -988,12 +976,6 @@
      "integrity": "sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ==",
      "dev": true
    },
-
    "node_modules/@sinclair/typebox": {
-
      "version": "0.27.8",
-
      "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz",
-
      "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==",
-
      "dev": true
-
    },
    "node_modules/@sindresorhus/merge-streams": {
      "version": "4.0.0",
      "resolved": "https://registry.npmjs.org/@sindresorhus/merge-streams/-/merge-streams-4.0.0.tgz",
@@ -1134,9 +1116,9 @@
      "integrity": "sha512-sVDA58zAw4eWAffKOaQH5/5j3XeayukzDk+ewSsnv3p4yJEZHCCzMDiZM8e0OUrRvmpGZ85jf4yDHkHsgBNr9Q=="
    },
    "node_modules/@types/lodash": {
-
      "version": "4.17.5",
-
      "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.5.tgz",
-
      "integrity": "sha512-MBIOHVZqVqgfro1euRDWX7OO0fBVUUMrN6Pwm8LQsz8cWhEpihlvR70ENj3f40j58TNxZaWv2ndSkInykNBBJw==",
+
      "version": "4.17.7",
+
      "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.7.tgz",
+
      "integrity": "sha512-8wTvZawATi/lsmNu10/j2hk1KEP0IvjubqPE3cu1Xz7xfXXt5oCq3SNUz4fMIP4XGF9Ky+Ue2tBA3hcS7LSBlA==",
      "dev": true
    },
    "node_modules/@types/md5": {
@@ -1154,9 +1136,9 @@
      }
    },
    "node_modules/@types/node": {
-
      "version": "20.14.8",
-
      "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.8.tgz",
-
      "integrity": "sha512-DO+2/jZinXfROG7j7WKFn/3C6nFwxy2lLpgLjEXJz+0XKphZlTLJ14mo8Vfg8X5BWN6XjyESXq+LcYdT7tR3bA==",
+
      "version": "20.14.11",
+
      "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.11.tgz",
+
      "integrity": "sha512-kprQpL8MMeszbz6ojB5/tU8PLN4kesnN8Gjzw349rDlNgsSzg90lAVj3llK99Dh7JON+t9AuscPPFW6mPbTnSA==",
      "dev": true,
      "dependencies": {
        "undici-types": "~5.26.4"
@@ -1204,16 +1186,16 @@
      }
    },
    "node_modules/@typescript-eslint/eslint-plugin": {
-
      "version": "7.13.1",
-
      "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.13.1.tgz",
-
      "integrity": "sha512-kZqi+WZQaZfPKnsflLJQCz6Ze9FFSMfXrrIOcyargekQxG37ES7DJNpJUE9Q/X5n3yTIP/WPutVNzgknQ7biLg==",
+
      "version": "7.16.1",
+
      "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.16.1.tgz",
+
      "integrity": "sha512-SxdPak/5bO0EnGktV05+Hq8oatjAYVY3Zh2bye9pGZy6+jwyR3LG3YKkV4YatlsgqXP28BTeVm9pqwJM96vf2A==",
      "dev": true,
      "dependencies": {
        "@eslint-community/regexpp": "^4.10.0",
-
        "@typescript-eslint/scope-manager": "7.13.1",
-
        "@typescript-eslint/type-utils": "7.13.1",
-
        "@typescript-eslint/utils": "7.13.1",
-
        "@typescript-eslint/visitor-keys": "7.13.1",
+
        "@typescript-eslint/scope-manager": "7.16.1",
+
        "@typescript-eslint/type-utils": "7.16.1",
+
        "@typescript-eslint/utils": "7.16.1",
+
        "@typescript-eslint/visitor-keys": "7.16.1",
        "graphemer": "^1.4.0",
        "ignore": "^5.3.1",
        "natural-compare": "^1.4.0",
@@ -1237,15 +1219,15 @@
      }
    },
    "node_modules/@typescript-eslint/parser": {
-
      "version": "7.13.1",
-
      "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-7.13.1.tgz",
-
      "integrity": "sha512-1ELDPlnLvDQ5ybTSrMhRTFDfOQEOXNM+eP+3HT/Yq7ruWpciQw+Avi73pdEbA4SooCawEWo3dtYbF68gN7Ed1A==",
+
      "version": "7.16.1",
+
      "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-7.16.1.tgz",
+
      "integrity": "sha512-u+1Qx86jfGQ5i4JjK33/FnawZRpsLxRnKzGE6EABZ40KxVT/vWsiZFEBBHjFOljmmV3MBYOHEKi0Jm9hbAOClA==",
      "dev": true,
      "dependencies": {
-
        "@typescript-eslint/scope-manager": "7.13.1",
-
        "@typescript-eslint/types": "7.13.1",
-
        "@typescript-eslint/typescript-estree": "7.13.1",
-
        "@typescript-eslint/visitor-keys": "7.13.1",
+
        "@typescript-eslint/scope-manager": "7.16.1",
+
        "@typescript-eslint/types": "7.16.1",
+
        "@typescript-eslint/typescript-estree": "7.16.1",
+
        "@typescript-eslint/visitor-keys": "7.16.1",
        "debug": "^4.3.4"
      },
      "engines": {
@@ -1265,13 +1247,13 @@
      }
    },
    "node_modules/@typescript-eslint/scope-manager": {
-
      "version": "7.13.1",
-
      "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.13.1.tgz",
-
      "integrity": "sha512-adbXNVEs6GmbzaCpymHQ0MB6E4TqoiVbC0iqG3uijR8ZYfpAXMGttouQzF4Oat3P2GxDVIrg7bMI/P65LiQZdg==",
+
      "version": "7.16.1",
+
      "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.16.1.tgz",
+
      "integrity": "sha512-nYpyv6ALte18gbMz323RM+vpFpTjfNdyakbf3nsLvF43uF9KeNC289SUEW3QLZ1xPtyINJ1dIsZOuWuSRIWygw==",
      "dev": true,
      "dependencies": {
-
        "@typescript-eslint/types": "7.13.1",
-
        "@typescript-eslint/visitor-keys": "7.13.1"
+
        "@typescript-eslint/types": "7.16.1",
+
        "@typescript-eslint/visitor-keys": "7.16.1"
      },
      "engines": {
        "node": "^18.18.0 || >=20.0.0"
@@ -1282,13 +1264,13 @@
      }
    },
    "node_modules/@typescript-eslint/type-utils": {
-
      "version": "7.13.1",
-
      "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-7.13.1.tgz",
-
      "integrity": "sha512-aWDbLu1s9bmgPGXSzNCxELu+0+HQOapV/y+60gPXafR8e2g1Bifxzevaa+4L2ytCWm+CHqpELq4CSoN9ELiwCg==",
+
      "version": "7.16.1",
+
      "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-7.16.1.tgz",
+
      "integrity": "sha512-rbu/H2MWXN4SkjIIyWcmYBjlp55VT+1G3duFOIukTNFxr9PI35pLc2ydwAfejCEitCv4uztA07q0QWanOHC7dA==",
      "dev": true,
      "dependencies": {
-
        "@typescript-eslint/typescript-estree": "7.13.1",
-
        "@typescript-eslint/utils": "7.13.1",
+
        "@typescript-eslint/typescript-estree": "7.16.1",
+
        "@typescript-eslint/utils": "7.16.1",
        "debug": "^4.3.4",
        "ts-api-utils": "^1.3.0"
      },
@@ -1309,9 +1291,9 @@
      }
    },
    "node_modules/@typescript-eslint/types": {
-
      "version": "7.13.1",
-
      "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.13.1.tgz",
-
      "integrity": "sha512-7K7HMcSQIAND6RBL4kDl24sG/xKM13cA85dc7JnmQXw2cBDngg7c19B++JzvJHRG3zG36n9j1i451GBzRuHchw==",
+
      "version": "7.16.1",
+
      "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.16.1.tgz",
+
      "integrity": "sha512-AQn9XqCzUXd4bAVEsAXM/Izk11Wx2u4H3BAfQVhSfzfDOm/wAON9nP7J5rpkCxts7E5TELmN845xTUCQrD1xIQ==",
      "dev": true,
      "engines": {
        "node": "^18.18.0 || >=20.0.0"
@@ -1322,13 +1304,13 @@
      }
    },
    "node_modules/@typescript-eslint/typescript-estree": {
-
      "version": "7.13.1",
-
      "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.13.1.tgz",
-
      "integrity": "sha512-uxNr51CMV7npU1BxZzYjoVz9iyjckBduFBP0S5sLlh1tXYzHzgZ3BR9SVsNed+LmwKrmnqN3Kdl5t7eZ5TS1Yw==",
+
      "version": "7.16.1",
+
      "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.16.1.tgz",
+
      "integrity": "sha512-0vFPk8tMjj6apaAZ1HlwM8w7jbghC8jc1aRNJG5vN8Ym5miyhTQGMqU++kuBFDNKe9NcPeZ6x0zfSzV8xC1UlQ==",
      "dev": true,
      "dependencies": {
-
        "@typescript-eslint/types": "7.13.1",
-
        "@typescript-eslint/visitor-keys": "7.13.1",
+
        "@typescript-eslint/types": "7.16.1",
+
        "@typescript-eslint/visitor-keys": "7.16.1",
        "debug": "^4.3.4",
        "globby": "^11.1.0",
        "is-glob": "^4.0.3",
@@ -1350,15 +1332,15 @@
      }
    },
    "node_modules/@typescript-eslint/utils": {
-
      "version": "7.13.1",
-
      "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.13.1.tgz",
-
      "integrity": "sha512-h5MzFBD5a/Gh/fvNdp9pTfqJAbuQC4sCN2WzuXme71lqFJsZtLbjxfSk4r3p02WIArOF9N94pdsLiGutpDbrXQ==",
+
      "version": "7.16.1",
+
      "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.16.1.tgz",
+
      "integrity": "sha512-WrFM8nzCowV0he0RlkotGDujx78xudsxnGMBHI88l5J8wEhED6yBwaSLP99ygfrzAjsQvcYQ94quDwI0d7E1fA==",
      "dev": true,
      "dependencies": {
        "@eslint-community/eslint-utils": "^4.4.0",
-
        "@typescript-eslint/scope-manager": "7.13.1",
-
        "@typescript-eslint/types": "7.13.1",
-
        "@typescript-eslint/typescript-estree": "7.13.1"
+
        "@typescript-eslint/scope-manager": "7.16.1",
+
        "@typescript-eslint/types": "7.16.1",
+
        "@typescript-eslint/typescript-estree": "7.16.1"
      },
      "engines": {
        "node": "^18.18.0 || >=20.0.0"
@@ -1372,12 +1354,12 @@
      }
    },
    "node_modules/@typescript-eslint/visitor-keys": {
-
      "version": "7.13.1",
-
      "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.13.1.tgz",
-
      "integrity": "sha512-k/Bfne7lrP7hcb7m9zSsgcBmo+8eicqqfNAJ7uUY+jkTFpKeH2FSkWpFRtimBxgkyvqfu9jTPRbYOvud6isdXA==",
+
      "version": "7.16.1",
+
      "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.16.1.tgz",
+
      "integrity": "sha512-Qlzzx4sE4u3FsHTPQAAQFJFNOuqtuY0LFrZHwQ8IHK705XxBiWOFkfKRWu6niB7hwfgnwIpO4jTC75ozW1PHWg==",
      "dev": true,
      "dependencies": {
-
        "@typescript-eslint/types": "7.13.1",
+
        "@typescript-eslint/types": "7.16.1",
        "eslint-visitor-keys": "^3.4.3"
      },
      "engines": {
@@ -1394,96 +1376,81 @@
      "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ=="
    },
    "node_modules/@vitest/expect": {
-
      "version": "1.6.0",
-
      "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-1.6.0.tgz",
-
      "integrity": "sha512-ixEvFVQjycy/oNgHjqsL6AZCDduC+tflRluaHIzKIsdbzkLn2U/iBnVeJwB6HsIjQBdfMR8Z0tRxKUsvFJEeWQ==",
+
      "version": "2.0.3",
+
      "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-2.0.3.tgz",
+
      "integrity": "sha512-X6AepoOYePM0lDNUPsGXTxgXZAl3EXd0GYe/MZyVE4HzkUqyUVC6S3PrY5mClDJ6/7/7vALLMV3+xD/Ko60Hqg==",
      "dev": true,
      "dependencies": {
-
        "@vitest/spy": "1.6.0",
-
        "@vitest/utils": "1.6.0",
-
        "chai": "^4.3.10"
+
        "@vitest/spy": "2.0.3",
+
        "@vitest/utils": "2.0.3",
+
        "chai": "^5.1.1",
+
        "tinyrainbow": "^1.2.0"
      },
      "funding": {
        "url": "https://opencollective.com/vitest"
      }
    },
-
    "node_modules/@vitest/runner": {
-
      "version": "1.6.0",
-
      "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-1.6.0.tgz",
-
      "integrity": "sha512-P4xgwPjwesuBiHisAVz/LSSZtDjOTPYZVmNAnpHHSR6ONrf8eCJOFRvUwdHn30F5M1fxhqtl7QZQUk2dprIXAg==",
+
    "node_modules/@vitest/pretty-format": {
+
      "version": "2.0.3",
+
      "resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-2.0.3.tgz",
+
      "integrity": "sha512-URM4GLsB2xD37nnTyvf6kfObFafxmycCL8un3OC9gaCs5cti2u+5rJdIflZ2fUJUen4NbvF6jCufwViAFLvz1g==",
      "dev": true,
      "dependencies": {
-
        "@vitest/utils": "1.6.0",
-
        "p-limit": "^5.0.0",
-
        "pathe": "^1.1.1"
+
        "tinyrainbow": "^1.2.0"
      },
      "funding": {
        "url": "https://opencollective.com/vitest"
      }
    },
-
    "node_modules/@vitest/runner/node_modules/p-limit": {
-
      "version": "5.0.0",
-
      "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-5.0.0.tgz",
-
      "integrity": "sha512-/Eaoq+QyLSiXQ4lyYV23f14mZRQcXnxfHrN0vCai+ak9G0pp9iEQukIIZq5NccEvwRB8PUnZT0KsOoDCINS1qQ==",
+
    "node_modules/@vitest/runner": {
+
      "version": "2.0.3",
+
      "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-2.0.3.tgz",
+
      "integrity": "sha512-EmSP4mcjYhAcuBWwqgpjR3FYVeiA4ROzRunqKltWjBfLNs1tnMLtF+qtgd5ClTwkDP6/DGlKJTNa6WxNK0bNYQ==",
      "dev": true,
      "dependencies": {
-
        "yocto-queue": "^1.0.0"
-
      },
-
      "engines": {
-
        "node": ">=18"
-
      },
-
      "funding": {
-
        "url": "https://github.com/sponsors/sindresorhus"
-
      }
-
    },
-
    "node_modules/@vitest/runner/node_modules/yocto-queue": {
-
      "version": "1.0.0",
-
      "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz",
-
      "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==",
-
      "dev": true,
-
      "engines": {
-
        "node": ">=12.20"
+
        "@vitest/utils": "2.0.3",
+
        "pathe": "^1.1.2"
      },
      "funding": {
-
        "url": "https://github.com/sponsors/sindresorhus"
+
        "url": "https://opencollective.com/vitest"
      }
    },
    "node_modules/@vitest/snapshot": {
-
      "version": "1.6.0",
-
      "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-1.6.0.tgz",
-
      "integrity": "sha512-+Hx43f8Chus+DCmygqqfetcAZrDJwvTj0ymqjQq4CvmpKFSTVteEOBzCusu1x2tt4OJcvBflyHUE0DZSLgEMtQ==",
+
      "version": "2.0.3",
+
      "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-2.0.3.tgz",
+
      "integrity": "sha512-6OyA6v65Oe3tTzoSuRPcU6kh9m+mPL1vQ2jDlPdn9IQoUxl8rXhBnfICNOC+vwxWY684Vt5UPgtcA2aPFBb6wg==",
      "dev": true,
      "dependencies": {
-
        "magic-string": "^0.30.5",
-
        "pathe": "^1.1.1",
-
        "pretty-format": "^29.7.0"
+
        "@vitest/pretty-format": "2.0.3",
+
        "magic-string": "^0.30.10",
+
        "pathe": "^1.1.2"
      },
      "funding": {
        "url": "https://opencollective.com/vitest"
      }
    },
    "node_modules/@vitest/spy": {
-
      "version": "1.6.0",
-
      "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-1.6.0.tgz",
-
      "integrity": "sha512-leUTap6B/cqi/bQkXUu6bQV5TZPx7pmMBKBQiI0rJA8c3pB56ZsaTbREnF7CJfmvAS4V2cXIBAh/3rVwrrCYgw==",
+
      "version": "2.0.3",
+
      "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-2.0.3.tgz",
+
      "integrity": "sha512-sfqyAw/ypOXlaj4S+w8689qKM1OyPOqnonqOc9T91DsoHbfN5mU7FdifWWv3MtQFf0lEUstEwR9L/q/M390C+A==",
      "dev": true,
      "dependencies": {
-
        "tinyspy": "^2.2.0"
+
        "tinyspy": "^3.0.0"
      },
      "funding": {
        "url": "https://opencollective.com/vitest"
      }
    },
    "node_modules/@vitest/utils": {
-
      "version": "1.6.0",
-
      "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-1.6.0.tgz",
-
      "integrity": "sha512-21cPiuGMoMZwiOHa2i4LXkMkMkCGzA+MVFV70jRwHo95dL4x/ts5GZhML1QWuy7yfp3WzK3lRvZi3JnXTYqrBw==",
+
      "version": "2.0.3",
+
      "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-2.0.3.tgz",
+
      "integrity": "sha512-c/UdELMuHitQbbc/EVctlBaxoYAwQPQdSNwv7z/vHyBKy2edYZaFgptE27BRueZB7eW8po+cllotMNTDpL3HWg==",
      "dev": true,
      "dependencies": {
-
        "diff-sequences": "^29.6.3",
+
        "@vitest/pretty-format": "2.0.3",
        "estree-walker": "^3.0.3",
-
        "loupe": "^2.3.7",
-
        "pretty-format": "^29.7.0"
+
        "loupe": "^3.1.1",
+
        "tinyrainbow": "^1.2.0"
      },
      "funding": {
        "url": "https://opencollective.com/vitest"
@@ -1505,9 +1472,9 @@
      }
    },
    "node_modules/acorn": {
-
      "version": "8.12.0",
-
      "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.12.0.tgz",
-
      "integrity": "sha512-RTvkC4w+KNXrM39/lWCUaG0IbRkWdCv7W/IOW9oU6SawyxulvkQy5HQPVTKxEjczcUvapcrw3cFx/60VN/NRNw==",
+
      "version": "8.12.1",
+
      "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.12.1.tgz",
+
      "integrity": "sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==",
      "bin": {
        "acorn": "bin/acorn"
      },
@@ -1524,18 +1491,6 @@
        "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0"
      }
    },
-
    "node_modules/acorn-walk": {
-
      "version": "8.3.3",
-
      "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.3.tgz",
-
      "integrity": "sha512-MxXdReSRhGO7VlFe1bRG/oI7/mdLV9B9JJT0N8vZOhF7gFRR5l3M8W9G8JxmKV+JC5mGqJ0QvqfSOLsCPa4nUw==",
-
      "dev": true,
-
      "dependencies": {
-
        "acorn": "^8.11.0"
-
      },
-
      "engines": {
-
        "node": ">=0.4.0"
-
      }
-
    },
    "node_modules/ajv": {
      "version": "6.12.6",
      "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
@@ -1562,12 +1517,15 @@
      }
    },
    "node_modules/ansi-styles": {
-
      "version": "5.2.0",
-
      "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz",
-
      "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==",
+
      "version": "4.3.0",
+
      "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+
      "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
      "dev": true,
+
      "dependencies": {
+
        "color-convert": "^2.0.1"
+
      },
      "engines": {
-
        "node": ">=10"
+
        "node": ">=8"
      },
      "funding": {
        "url": "https://github.com/chalk/ansi-styles?sponsor=1"
@@ -1609,12 +1567,12 @@
      }
    },
    "node_modules/assertion-error": {
-
      "version": "1.1.0",
-
      "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz",
-
      "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==",
+
      "version": "2.0.1",
+
      "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-2.0.1.tgz",
+
      "integrity": "sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==",
      "dev": true,
      "engines": {
-
        "node": "*"
+
        "node": ">=12"
      }
    },
    "node_modules/async-mutex": {
@@ -1643,17 +1601,17 @@
      }
    },
    "node_modules/axobject-query": {
-
      "version": "4.0.0",
-
      "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-4.0.0.tgz",
-
      "integrity": "sha512-+60uv1hiVFhHZeO+Lz0RYzsVHy5Wr1ayX0mwda9KPDVLNJgZ1T9Ny7VmFbLDzxsH0D87I86vgj3gFrjTJUYznw==",
-
      "dependencies": {
-
        "dequal": "^2.0.3"
+
      "version": "4.1.0",
+
      "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-4.1.0.tgz",
+
      "integrity": "sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==",
+
      "engines": {
+
        "node": ">= 0.4"
      }
    },
    "node_modules/baconjs": {
-
      "version": "3.0.17",
-
      "resolved": "https://registry.npmjs.org/baconjs/-/baconjs-3.0.17.tgz",
-
      "integrity": "sha512-XwhawE4gmO+NhMKZYmUSidk8ZjDhx5pfp9k/s5HM25S+k/YKajsakFOxbmUU1L9zbh1SarPbCobBuHhCMPFbCA=="
+
      "version": "3.0.19",
+
      "resolved": "https://registry.npmjs.org/baconjs/-/baconjs-3.0.19.tgz",
+
      "integrity": "sha512-/h7R6hTql8yk1FxYk/bTALea7fGcSJrUoLHFhX1WEkfI4C2mbR4sPbaNd0EhUIDJi3QwTBWEFHh7xEAaz3A3/A=="
    },
    "node_modules/balanced-match": {
      "version": "1.0.2",
@@ -1786,21 +1744,19 @@
      }
    },
    "node_modules/chai": {
-
      "version": "4.4.1",
-
      "resolved": "https://registry.npmjs.org/chai/-/chai-4.4.1.tgz",
-
      "integrity": "sha512-13sOfMv2+DWduEU+/xbun3LScLoqN17nBeTLUsmDfKdoiC1fr0n9PU4guu4AhRcOVFk/sW8LyZWHuhWtQZiF+g==",
+
      "version": "5.1.1",
+
      "resolved": "https://registry.npmjs.org/chai/-/chai-5.1.1.tgz",
+
      "integrity": "sha512-pT1ZgP8rPNqUgieVaEY+ryQr6Q4HXNg8Ei9UnLUrjN4IA7dvQC5JB+/kxVcPNDHyBcc/26CXPkbNzq3qwrOEKA==",
      "dev": true,
      "dependencies": {
-
        "assertion-error": "^1.1.0",
-
        "check-error": "^1.0.3",
-
        "deep-eql": "^4.1.3",
-
        "get-func-name": "^2.0.2",
-
        "loupe": "^2.3.6",
-
        "pathval": "^1.1.1",
-
        "type-detect": "^4.0.8"
+
        "assertion-error": "^2.0.1",
+
        "check-error": "^2.1.1",
+
        "deep-eql": "^5.0.1",
+
        "loupe": "^3.1.0",
+
        "pathval": "^2.0.0"
      },
      "engines": {
-
        "node": ">=4"
+
        "node": ">=12"
      }
    },
    "node_modules/chalk": {
@@ -1842,15 +1798,12 @@
      }
    },
    "node_modules/check-error": {
-
      "version": "1.0.3",
-
      "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.3.tgz",
-
      "integrity": "sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==",
+
      "version": "2.1.1",
+
      "resolved": "https://registry.npmjs.org/check-error/-/check-error-2.1.1.tgz",
+
      "integrity": "sha512-OAlb+T7V4Op9OwdkjmguYRqncdlx5JiofwOAUkmTF+jNdHwzTaTs4sRAGpzLF3oOz5xAyDGrPgeIDFQmDOTiJw==",
      "dev": true,
-
      "dependencies": {
-
        "get-func-name": "^2.0.2"
-
      },
      "engines": {
-
        "node": "*"
+
        "node": ">= 16"
      }
    },
    "node_modules/chokidar": {
@@ -1950,9 +1903,9 @@
      }
    },
    "node_modules/compare-versions": {
-
      "version": "6.1.0",
-
      "resolved": "https://registry.npmjs.org/compare-versions/-/compare-versions-6.1.0.tgz",
-
      "integrity": "sha512-LNZQXhqUvqUTotpZ00qLSaify3b4VFD588aRr8MKFw4CMUr98ytzCW5wDH5qx/DEY5kCDXcbcRuCqL0szEf2tg=="
+
      "version": "6.1.1",
+
      "resolved": "https://registry.npmjs.org/compare-versions/-/compare-versions-6.1.1.tgz",
+
      "integrity": "sha512-4hm4VPpIecmlg59CHXnRDnqGplJFrbLG4aFEl5vl6cK1u76ws3LLvX7ikFnTDl5vo39sjWD6AaDPYodJp/NNHg=="
    },
    "node_modules/concat-map": {
      "version": "0.0.1",
@@ -1960,16 +1913,10 @@
      "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==",
      "dev": true
    },
-
    "node_modules/confbox": {
-
      "version": "0.1.7",
-
      "resolved": "https://registry.npmjs.org/confbox/-/confbox-0.1.7.tgz",
-
      "integrity": "sha512-uJcB/FKZtBMCJpK8MQji6bJHgu1tixKPxRLeGkNzBoOZzpnZUJm0jm2/sBDWcuBx1dYgxV4JU+g5hmNxCyAmdA==",
-
      "dev": true
-
    },
    "node_modules/config": {
-
      "version": "3.3.11",
-
      "resolved": "https://registry.npmjs.org/config/-/config-3.3.11.tgz",
-
      "integrity": "sha512-Dhn63ZoWCW5EMg4P0Sl/XNsj/7RLiUIA1x1npCy+m2cRwRHzLnt3UtYtxRDMZW/6oOMdWhCzaGYkOcajGgrAOA==",
+
      "version": "3.3.12",
+
      "resolved": "https://registry.npmjs.org/config/-/config-3.3.12.tgz",
+
      "integrity": "sha512-Vmx389R/QVM3foxqBzXO8t2tUikYZP64Q6vQxGrsMpREeJc/aWRnPRERXWsYzOHAumx/AOoILWe6nU3ZJL+6Sw==",
      "dev": true,
      "dependencies": {
        "json5": "^2.2.3"
@@ -2042,13 +1989,10 @@
      }
    },
    "node_modules/deep-eql": {
-
      "version": "4.1.4",
-
      "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-4.1.4.tgz",
-
      "integrity": "sha512-SUwdGfqdKOwxCPeVYjwSyRpJ7Z+fhpwIAtmCUdZIWZ/YP5R9WAsyuSgpLVDi9bjWoN2LXHNss/dk3urXtdQxGg==",
+
      "version": "5.0.2",
+
      "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-5.0.2.tgz",
+
      "integrity": "sha512-h5k/5U50IJJFpzfL6nO9jaaumfjO/f2NjK/oYB2Djzm4p9L+3T9qWpZqZ2hAbLPuuYq9wrU08WQyBTL5GbPk5Q==",
      "dev": true,
-
      "dependencies": {
-
        "type-detect": "^4.0.0"
-
      },
      "engines": {
        "node": ">=6"
      }
@@ -2115,15 +2059,6 @@
        "node": ">=0.3.1"
      }
    },
-
    "node_modules/diff-sequences": {
-
      "version": "29.6.3",
-
      "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.6.3.tgz",
-
      "integrity": "sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==",
-
      "dev": true,
-
      "engines": {
-
        "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
-
      }
-
    },
    "node_modules/dir-glob": {
      "version": "3.0.1",
      "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz",
@@ -2149,9 +2084,9 @@
      }
    },
    "node_modules/dompurify": {
-
      "version": "3.1.5",
-
      "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.1.5.tgz",
-
      "integrity": "sha512-lwG+n5h8QNpxtyrJW/gJWckL+1/DQiYMX8f7t8Z2AZTPw1esVrqjI63i7Zc2Gz0aKzLVMYC1V1PL/ky+aY/NgA=="
+
      "version": "3.1.6",
+
      "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.1.6.tgz",
+
      "integrity": "sha512-cTOAhc36AalkjtBpfG6O8JimdTMWNXjiePT2xQH/ppBGi/4uIpmj8eKyIkMJErXWARyINV/sB38yf8JCLF5pbQ=="
    },
    "node_modules/entities": {
      "version": "4.5.0",
@@ -2303,9 +2238,9 @@
      }
    },
    "node_modules/eslint-plugin-svelte": {
-
      "version": "2.41.0",
-
      "resolved": "https://registry.npmjs.org/eslint-plugin-svelte/-/eslint-plugin-svelte-2.41.0.tgz",
-
      "integrity": "sha512-gjU9Q/psxbWG1VNwYbEb0Q6U4W5PBGaDpYmO2zlQ+zlAMVS3Qt0luAK0ACi/tMSwRK6JENiySvMyJbO0YWmXSg==",
+
      "version": "2.42.0",
+
      "resolved": "https://registry.npmjs.org/eslint-plugin-svelte/-/eslint-plugin-svelte-2.42.0.tgz",
+
      "integrity": "sha512-mHP6z0DWq97KZvoQcApZHdF9m9epcDV/ICKufeEH18Vh+8vl7S+gwt8WdUohEqKNVMuXRkbvy1suMcVvUDiOGw==",
      "dev": true,
      "dependencies": {
        "@eslint-community/eslint-utils": "^4.4.0",
@@ -2318,7 +2253,7 @@
        "postcss-safe-parser": "^6.0.0",
        "postcss-selector-parser": "^6.1.0",
        "semver": "^7.6.2",
-
        "svelte-eslint-parser": "^0.39.2"
+
        "svelte-eslint-parser": "^0.40.0"
      },
      "engines": {
        "node": "^14.17.0 || >=16.0.0"
@@ -2328,7 +2263,7 @@
      },
      "peerDependencies": {
        "eslint": "^7.0.0 || ^8.0.0-0 || ^9.0.0-0",
-
        "svelte": "^3.37.0 || ^4.0.0 || ^5.0.0-next.155"
+
        "svelte": "^3.37.0 || ^4.0.0 || ^5.0.0-next.181"
      },
      "peerDependenciesMeta": {
        "svelte": {
@@ -2373,21 +2308,6 @@
        "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
      }
    },
-
    "node_modules/eslint/node_modules/ansi-styles": {
-
      "version": "4.3.0",
-
      "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
-
      "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
-
      "dev": true,
-
      "dependencies": {
-
        "color-convert": "^2.0.1"
-
      },
-
      "engines": {
-
        "node": ">=8"
-
      },
-
      "funding": {
-
        "url": "https://github.com/chalk/ansi-styles?sponsor=1"
-
      }
-
    },
    "node_modules/eslint/node_modules/brace-expansion": {
      "version": "1.1.11",
      "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
@@ -2459,9 +2379,9 @@
      }
    },
    "node_modules/esquery": {
-
      "version": "1.5.0",
-
      "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz",
-
      "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==",
+
      "version": "1.6.0",
+
      "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz",
+
      "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==",
      "dev": true,
      "dependencies": {
        "estraverse": "^5.1.0"
@@ -2848,9 +2768,9 @@
      }
    },
    "node_modules/globals": {
-
      "version": "15.6.0",
-
      "resolved": "https://registry.npmjs.org/globals/-/globals-15.6.0.tgz",
-
      "integrity": "sha512-UzcJi88Hw//CurUIRa9Jxb0vgOCcuD/MNjwmXp633cyaRKkCWACkoqHCtfZv43b1kqXGg/fpOa8bwgacCeXsVg==",
+
      "version": "15.8.0",
+
      "resolved": "https://registry.npmjs.org/globals/-/globals-15.8.0.tgz",
+
      "integrity": "sha512-VZAJ4cewHTExBWDHR6yptdIBlx9YSSZuwojj9Nt5mBRXQzrKakDsVKQ1J63sklLvzAJm0X5+RpO4i3Y2hcOnFw==",
      "dev": true,
      "engines": {
        "node": ">=18"
@@ -3275,12 +3195,6 @@
        "@sideway/pinpoint": "^2.0.0"
      }
    },
-
    "node_modules/js-tokens": {
-
      "version": "9.0.0",
-
      "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-9.0.0.tgz",
-
      "integrity": "sha512-WriZw1luRMlmV3LGJaR6QOJjWwgLUTf89OwT2lUOyjX2dJGBwgmIkbcz+7WFZjrZM635JOIR517++e/67CP9dQ==",
-
      "dev": true
-
    },
    "node_modules/js-yaml": {
      "version": "4.1.0",
      "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz",
@@ -3340,9 +3254,9 @@
      "dev": true
    },
    "node_modules/katex": {
-
      "version": "0.16.10",
-
      "resolved": "https://registry.npmjs.org/katex/-/katex-0.16.10.tgz",
-
      "integrity": "sha512-ZiqaC04tp2O5utMsl2TEZTXxa6WSC4yo0fv5ML++D3QZv/vx2Mct0mTlRx3O+uUkjfuAgOkzsCmq5MiUEsDDdA==",
+
      "version": "0.16.11",
+
      "resolved": "https://registry.npmjs.org/katex/-/katex-0.16.11.tgz",
+
      "integrity": "sha512-RQrI8rlHY92OLf3rho/Ts8i/XvjgguEjOkO1BEXcU3N8BqPpSzBNwV/G0Ukr+P/l3ivvJUE/Fa/CwbS6HesGNQ==",
      "funding": [
        "https://opencollective.com/katex",
        "https://github.com/sponsors/katex"
@@ -3417,22 +3331,6 @@
        "uc.micro": "^2.0.0"
      }
    },
-
    "node_modules/local-pkg": {
-
      "version": "0.5.0",
-
      "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-0.5.0.tgz",
-
      "integrity": "sha512-ok6z3qlYyCDS4ZEU27HaU6x/xZa9Whf8jD4ptH5UZTQYZVYeb9bnZ3ojVhiJNLiXK1Hfc0GNbLXcmZ5plLDDBg==",
-
      "dev": true,
-
      "dependencies": {
-
        "mlly": "^1.4.2",
-
        "pkg-types": "^1.0.3"
-
      },
-
      "engines": {
-
        "node": ">=14"
-
      },
-
      "funding": {
-
        "url": "https://github.com/sponsors/antfu"
-
      }
-
    },
    "node_modules/locate-character": {
      "version": "3.0.0",
      "resolved": "https://registry.npmjs.org/locate-character/-/locate-character-3.0.0.tgz",
@@ -3471,9 +3369,9 @@
      "dev": true
    },
    "node_modules/loupe": {
-
      "version": "2.3.7",
-
      "resolved": "https://registry.npmjs.org/loupe/-/loupe-2.3.7.tgz",
-
      "integrity": "sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==",
+
      "version": "3.1.1",
+
      "resolved": "https://registry.npmjs.org/loupe/-/loupe-3.1.1.tgz",
+
      "integrity": "sha512-edNu/8D5MKVfGVFRhFf8aAxiTM6Wumfz5XsaatSxlD3w4R1d/WEKUTydCdPGbl9K7QG/Ca3GnDV2sIKIpXRQcw==",
      "dev": true,
      "dependencies": {
        "get-func-name": "^2.0.1"
@@ -3488,9 +3386,9 @@
      }
    },
    "node_modules/marked": {
-
      "version": "13.0.0",
-
      "resolved": "https://registry.npmjs.org/marked/-/marked-13.0.0.tgz",
-
      "integrity": "sha512-VTeDCd9txf4KLLljUZ0nljE/Incb9SrWuueE44QVuU0pkOdh4sfCeW1Z6lPcxyDRSVY6rm8db/0OPaN75RNUmw==",
+
      "version": "13.0.2",
+
      "resolved": "https://registry.npmjs.org/marked/-/marked-13.0.2.tgz",
+
      "integrity": "sha512-J6CPjP8pS5sgrRqxVRvkCIkZ6MFdRIjDkwUwgJ9nL2fbmM6qGQeB2C16hi8Cc9BOzj6xXzy0jyi0iPIfnMHYzA==",
      "bin": {
        "marked": "bin/marked.js"
      },
@@ -3728,9 +3626,9 @@
      }
    },
    "node_modules/minimatch": {
-
      "version": "9.0.4",
-
      "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz",
-
      "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==",
+
      "version": "9.0.5",
+
      "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
+
      "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
      "dev": true,
      "dependencies": {
        "brace-expansion": "^2.0.1"
@@ -3763,18 +3661,6 @@
        "mkdirp": "bin/cmd.js"
      }
    },
-
    "node_modules/mlly": {
-
      "version": "1.7.1",
-
      "resolved": "https://registry.npmjs.org/mlly/-/mlly-1.7.1.tgz",
-
      "integrity": "sha512-rrVRZRELyQzrIUAVMHxP97kv+G786pHmOKzuFII8zDYahFBS7qnHh2AlYSl1GAHhaMPCz6/oHjVMcfFYgFYHgA==",
-
      "dev": true,
-
      "dependencies": {
-
        "acorn": "^8.11.3",
-
        "pathe": "^1.1.2",
-
        "pkg-types": "^1.1.1",
-
        "ufo": "^1.5.3"
-
      }
-
    },
    "node_modules/mri": {
      "version": "1.2.0",
      "resolved": "https://registry.npmjs.org/mri/-/mri-1.2.0.tgz",
@@ -4018,12 +3904,12 @@
      "dev": true
    },
    "node_modules/pathval": {
-
      "version": "1.1.1",
-
      "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.1.tgz",
-
      "integrity": "sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==",
+
      "version": "2.0.0",
+
      "resolved": "https://registry.npmjs.org/pathval/-/pathval-2.0.0.tgz",
+
      "integrity": "sha512-vE7JKRyES09KiunauX7nd2Q9/L7lhok4smP9RZTDeD4MVs72Dp2qNFVz39Nz5a0FVEW0BJR6C0DYrq6unoziZA==",
      "dev": true,
      "engines": {
-
        "node": "*"
+
        "node": ">= 14.16"
      }
    },
    "node_modules/periscopic": {
@@ -4054,17 +3940,6 @@
        "url": "https://github.com/sponsors/jonschlinkert"
      }
    },
-
    "node_modules/pkg-types": {
-
      "version": "1.1.1",
-
      "resolved": "https://registry.npmjs.org/pkg-types/-/pkg-types-1.1.1.tgz",
-
      "integrity": "sha512-ko14TjmDuQJ14zsotODv7dBlwxKhUKQEhuhmbqo1uCi9BB0Z2alo/wAXg6q1dTR5TyuqYyWhjtfe/Tsh+X28jQ==",
-
      "dev": true,
-
      "dependencies": {
-
        "confbox": "^0.1.7",
-
        "mlly": "^1.7.0",
-
        "pathe": "^1.1.2"
-
      }
-
    },
    "node_modules/plausible-tracker": {
      "version": "0.3.9",
      "resolved": "https://registry.npmjs.org/plausible-tracker/-/plausible-tracker-0.3.9.tgz",
@@ -4074,39 +3949,39 @@
      }
    },
    "node_modules/playwright": {
-
      "version": "1.44.1",
-
      "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.44.1.tgz",
-
      "integrity": "sha512-qr/0UJ5CFAtloI3avF95Y0L1xQo6r3LQArLIg/z/PoGJ6xa+EwzrwO5lpNr/09STxdHuUoP2mvuELJS+hLdtgg==",
+
      "version": "1.45.2",
+
      "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.45.2.tgz",
+
      "integrity": "sha512-ReywF2t/0teRvNBpfIgh5e4wnrI/8Su8ssdo5XsQKpjxJj+jspm00jSoz9BTg91TT0c9HRjXO7LBNVrgYj9X0g==",
      "dev": true,
      "dependencies": {
-
        "playwright-core": "1.44.1"
+
        "playwright-core": "1.45.2"
      },
      "bin": {
        "playwright": "cli.js"
      },
      "engines": {
-
        "node": ">=16"
+
        "node": ">=18"
      },
      "optionalDependencies": {
        "fsevents": "2.3.2"
      }
    },
    "node_modules/playwright-core": {
-
      "version": "1.44.1",
-
      "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.44.1.tgz",
-
      "integrity": "sha512-wh0JWtYTrhv1+OSsLPgFzGzt67Y7BE/ZS3jEqgGBlp2ppp1ZDj8c+9IARNW4dwf1poq5MgHreEM2KV/GuR4cFA==",
+
      "version": "1.45.2",
+
      "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.45.2.tgz",
+
      "integrity": "sha512-ha175tAWb0dTK0X4orvBIqi3jGEt701SMxMhyujxNrgd8K0Uy5wMSwwcQHtyB4om7INUkfndx02XnQ2p6dvLDw==",
      "dev": true,
      "bin": {
        "playwright-core": "cli.js"
      },
      "engines": {
-
        "node": ">=16"
+
        "node": ">=18"
      }
    },
    "node_modules/postcss": {
-
      "version": "8.4.38",
-
      "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.38.tgz",
-
      "integrity": "sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==",
+
      "version": "8.4.39",
+
      "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.39.tgz",
+
      "integrity": "sha512-0vzE+lAiG7hZl1/9I8yzKLx3aR9Xbof3fBHKunvMfOCYAtMhrsnccJY2iTURb9EZd5+pLuiNV9/c/GZJOHsgIw==",
      "dev": true,
      "funding": [
        {
@@ -4124,7 +3999,7 @@
      ],
      "dependencies": {
        "nanoid": "^3.3.7",
-
        "picocolors": "^1.0.0",
+
        "picocolors": "^1.0.1",
        "source-map-js": "^1.2.0"
      },
      "engines": {
@@ -4203,9 +4078,9 @@
      }
    },
    "node_modules/postcss-selector-parser": {
-
      "version": "6.1.0",
-
      "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.0.tgz",
-
      "integrity": "sha512-UMz42UD0UY0EApS0ZL9o1XnLhSTtvvvLe5Dc2H2O56fvRZi+KulDyf5ctDhhtYJBGKStV2FL1fy6253cmLgqVQ==",
+
      "version": "6.1.1",
+
      "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.1.tgz",
+
      "integrity": "sha512-b4dlw/9V8A71rLIDsSwVmak9z2DuBUB7CA1/wSdelNEzqsjoSPeADTWNO09lpH49Diy3/JIZ2bSPB1dI3LJCHg==",
      "dev": true,
      "dependencies": {
        "cssesc": "^3.0.0",
@@ -4225,9 +4100,9 @@
      }
    },
    "node_modules/prettier": {
-
      "version": "3.3.2",
-
      "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.3.2.tgz",
-
      "integrity": "sha512-rAVeHYMcv8ATV5d508CFdn+8/pHPpXeIid1DdrPwXnaAdH7cqjVbpJaT5eq4yRAFU/lsbwYwSF/n5iNrdJHPQA==",
+
      "version": "3.3.3",
+
      "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.3.3.tgz",
+
      "integrity": "sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==",
      "dev": true,
      "bin": {
        "prettier": "bin/prettier.cjs"
@@ -4249,20 +4124,6 @@
        "svelte": "^3.2.0 || ^4.0.0-next.0 || ^5.0.0-next.0"
      }
    },
-
    "node_modules/pretty-format": {
-
      "version": "29.7.0",
-
      "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz",
-
      "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==",
-
      "dev": true,
-
      "dependencies": {
-
        "@jest/schemas": "^29.6.3",
-
        "ansi-styles": "^5.0.0",
-
        "react-is": "^18.0.0"
-
      },
-
      "engines": {
-
        "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
-
      }
-
    },
    "node_modules/pretty-ms": {
      "version": "9.0.0",
      "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-9.0.0.tgz",
@@ -4322,12 +4183,6 @@
        }
      ]
    },
-
    "node_modules/react-is": {
-
      "version": "18.3.1",
-
      "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz",
-
      "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==",
-
      "dev": true
-
    },
    "node_modules/readdirp": {
      "version": "3.6.0",
      "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz",
@@ -4376,9 +4231,9 @@
      }
    },
    "node_modules/rollup": {
-
      "version": "4.18.0",
-
      "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.18.0.tgz",
-
      "integrity": "sha512-QmJz14PX3rzbJCN1SG4Xe/bAAX2a6NpCP8ab2vfu2GiUr8AQcr2nCV/oEO3yneFarB67zk8ShlIyWb2LGTb3Sg==",
+
      "version": "4.18.1",
+
      "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.18.1.tgz",
+
      "integrity": "sha512-Elx2UT8lzxxOXMpy5HWQGZqkrQOtrVDDa/bm9l10+U4rQnVzbL/LgZ4NOM1MPIDyHk69W4InuYDF5dzRh4Kw1A==",
      "dev": true,
      "dependencies": {
        "@types/estree": "1.0.5"
@@ -4391,22 +4246,22 @@
        "npm": ">=8.0.0"
      },
      "optionalDependencies": {
-
        "@rollup/rollup-android-arm-eabi": "4.18.0",
-
        "@rollup/rollup-android-arm64": "4.18.0",
-
        "@rollup/rollup-darwin-arm64": "4.18.0",
-
        "@rollup/rollup-darwin-x64": "4.18.0",
-
        "@rollup/rollup-linux-arm-gnueabihf": "4.18.0",
-
        "@rollup/rollup-linux-arm-musleabihf": "4.18.0",
-
        "@rollup/rollup-linux-arm64-gnu": "4.18.0",
-
        "@rollup/rollup-linux-arm64-musl": "4.18.0",
-
        "@rollup/rollup-linux-powerpc64le-gnu": "4.18.0",
-
        "@rollup/rollup-linux-riscv64-gnu": "4.18.0",
-
        "@rollup/rollup-linux-s390x-gnu": "4.18.0",
-
        "@rollup/rollup-linux-x64-gnu": "4.18.0",
-
        "@rollup/rollup-linux-x64-musl": "4.18.0",
-
        "@rollup/rollup-win32-arm64-msvc": "4.18.0",
-
        "@rollup/rollup-win32-ia32-msvc": "4.18.0",
-
        "@rollup/rollup-win32-x64-msvc": "4.18.0",
+
        "@rollup/rollup-android-arm-eabi": "4.18.1",
+
        "@rollup/rollup-android-arm64": "4.18.1",
+
        "@rollup/rollup-darwin-arm64": "4.18.1",
+
        "@rollup/rollup-darwin-x64": "4.18.1",
+
        "@rollup/rollup-linux-arm-gnueabihf": "4.18.1",
+
        "@rollup/rollup-linux-arm-musleabihf": "4.18.1",
+
        "@rollup/rollup-linux-arm64-gnu": "4.18.1",
+
        "@rollup/rollup-linux-arm64-musl": "4.18.1",
+
        "@rollup/rollup-linux-powerpc64le-gnu": "4.18.1",
+
        "@rollup/rollup-linux-riscv64-gnu": "4.18.1",
+
        "@rollup/rollup-linux-s390x-gnu": "4.18.1",
+
        "@rollup/rollup-linux-x64-gnu": "4.18.1",
+
        "@rollup/rollup-linux-x64-musl": "4.18.1",
+
        "@rollup/rollup-win32-arm64-msvc": "4.18.1",
+
        "@rollup/rollup-win32-ia32-msvc": "4.18.1",
+
        "@rollup/rollup-win32-x64-msvc": "4.18.1",
        "fsevents": "~2.3.2"
      }
    },
@@ -4492,9 +4347,9 @@
      }
    },
    "node_modules/semver": {
-
      "version": "7.6.2",
-
      "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.2.tgz",
-
      "integrity": "sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==",
+
      "version": "7.6.3",
+
      "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz",
+
      "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==",
      "dev": true,
      "bin": {
        "semver": "bin/semver.js"
@@ -4682,18 +4537,6 @@
        "url": "https://github.com/sponsors/sindresorhus"
      }
    },
-
    "node_modules/strip-literal": {
-
      "version": "2.1.0",
-
      "resolved": "https://registry.npmjs.org/strip-literal/-/strip-literal-2.1.0.tgz",
-
      "integrity": "sha512-Op+UycaUt/8FbN/Z2TWPBLge3jWrP3xj10f3fnYxf052bKuS3EKs1ZQcVGjnEMdsNVAM+plXRdmjrZ/KgG3Skw==",
-
      "dev": true,
-
      "dependencies": {
-
        "js-tokens": "^9.0.0"
-
      },
-
      "funding": {
-
        "url": "https://github.com/sponsors/antfu"
-
      }
-
    },
    "node_modules/supports-color": {
      "version": "7.2.0",
      "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
@@ -4731,15 +4574,13 @@
      }
    },
    "node_modules/svelte-check": {
-
      "version": "3.8.1",
-
      "resolved": "https://registry.npmjs.org/svelte-check/-/svelte-check-3.8.1.tgz",
-
      "integrity": "sha512-KlQ0TRVe01mdvh49Ylkr9FQxO/UWbQOtaIrccl3gjgkvby1TxY41VkT7ijCl6i29FjaJPE4m6YGmhdqov0MfkA==",
+
      "version": "3.8.4",
+
      "resolved": "https://registry.npmjs.org/svelte-check/-/svelte-check-3.8.4.tgz",
+
      "integrity": "sha512-61aHMkdinWyH8BkkTX9jPLYxYzaAAz/FK/VQqdr2FiCQQ/q04WCwDlpGbHff1GdrMYTmW8chlTFvRWL9k0A8vg==",
      "dev": true,
      "dependencies": {
        "@jridgewell/trace-mapping": "^0.3.17",
        "chokidar": "^3.4.1",
-
        "fast-glob": "^3.2.7",
-
        "import-fresh": "^3.2.1",
        "picocolors": "^1.0.0",
        "sade": "^1.7.4",
        "svelte-preprocess": "^5.1.3",
@@ -4753,15 +4594,15 @@
      }
    },
    "node_modules/svelte-eslint-parser": {
-
      "version": "0.39.2",
-
      "resolved": "https://registry.npmjs.org/svelte-eslint-parser/-/svelte-eslint-parser-0.39.2.tgz",
-
      "integrity": "sha512-87UwLuWTtDIuzWOhOi1zBL5wYVd07M5BK1qZ57YmXJB5/UmjUNJqGy3XSOhPqjckY1dATNV9y+mx+nI0WH6HPA==",
+
      "version": "0.40.0",
+
      "resolved": "https://registry.npmjs.org/svelte-eslint-parser/-/svelte-eslint-parser-0.40.0.tgz",
+
      "integrity": "sha512-M+v1HhC5T1WKYVxWexUCS4o6oIBS88XKzOZuhl2ew+eGxol7eC21e+VE8TC4rXJ3iT3iXT0qlZsZcpKjVo5/zQ==",
      "dev": true,
      "dependencies": {
        "eslint-scope": "^7.2.2",
        "eslint-visitor-keys": "^3.4.3",
        "espree": "^9.6.1",
-
        "postcss": "^8.4.38",
+
        "postcss": "^8.4.39",
        "postcss-scss": "^4.0.9"
      },
      "engines": {
@@ -4771,7 +4612,7 @@
        "url": "https://github.com/sponsors/ota-meshi"
      },
      "peerDependencies": {
-
        "svelte": "^3.37.0 || ^4.0.0 || ^5.0.0-next.115"
+
        "svelte": "^3.37.0 || ^4.0.0 || ^5.0.0-next.181"
      },
      "peerDependenciesMeta": {
        "svelte": {
@@ -4866,18 +4707,27 @@
      "dev": true
    },
    "node_modules/tinypool": {
-
      "version": "0.8.4",
-
      "resolved": "https://registry.npmjs.org/tinypool/-/tinypool-0.8.4.tgz",
-
      "integrity": "sha512-i11VH5gS6IFeLY3gMBQ00/MmLncVP7JLXOw1vlgkytLmJK7QnEr7NXf0LBdxfmNPAeyetukOk0bOYrJrFGjYJQ==",
+
      "version": "1.0.0",
+
      "resolved": "https://registry.npmjs.org/tinypool/-/tinypool-1.0.0.tgz",
+
      "integrity": "sha512-KIKExllK7jp3uvrNtvRBYBWBOAXSX8ZvoaD8T+7KB/QHIuoJW3Pmr60zucywjAlMb5TeXUkcs/MWeWLu0qvuAQ==",
+
      "dev": true,
+
      "engines": {
+
        "node": "^18.0.0 || >=20.0.0"
+
      }
+
    },
+
    "node_modules/tinyrainbow": {
+
      "version": "1.2.0",
+
      "resolved": "https://registry.npmjs.org/tinyrainbow/-/tinyrainbow-1.2.0.tgz",
+
      "integrity": "sha512-weEDEq7Z5eTHPDh4xjX789+fHfF+P8boiFB+0vbWzpbnbsEr/GRaohi/uMKxg8RZMXnl1ItAi/IUHWMsjDV7kQ==",
      "dev": true,
      "engines": {
        "node": ">=14.0.0"
      }
    },
    "node_modules/tinyspy": {
-
      "version": "2.2.1",
-
      "resolved": "https://registry.npmjs.org/tinyspy/-/tinyspy-2.2.1.tgz",
-
      "integrity": "sha512-KYad6Vy5VDWV4GH3fjpseMQ/XU2BhIYP7Vzd0LG44qRWm/Yt2WCOTicFdvmgo6gWaqooMQCawTtILVQJupKu7A==",
+
      "version": "3.0.0",
+
      "resolved": "https://registry.npmjs.org/tinyspy/-/tinyspy-3.0.0.tgz",
+
      "integrity": "sha512-q5nmENpTHgiPVd1cJDDc9cVoYN5x4vCvwT3FMilvKPKneCBZAxn2YWQjDF0UMcE9k0Cay1gBiDfTMU0g+mPMQA==",
      "dev": true,
      "engines": {
        "node": ">=14.0.0"
@@ -4971,9 +4821,9 @@
      }
    },
    "node_modules/typescript": {
-
      "version": "5.5.2",
-
      "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.5.2.tgz",
-
      "integrity": "sha512-NcRtPEOsPFFWjobJEtfihkLCZCXZt/os3zf8nTxjVH3RvTSxjrCamJpbExGvYOF+tFHc3pA65qpdwPbzjohhew==",
+
      "version": "5.5.3",
+
      "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.5.3.tgz",
+
      "integrity": "sha512-/hreyEujaB0w76zKo6717l3L0o/qEUtRgdvUBvlkhoWeOVMjMuHNHk0BRBzikzuGDqNmPQbg5ifMEqsHLiIUcQ==",
      "dev": true,
      "bin": {
        "tsc": "bin/tsc",
@@ -4984,14 +4834,14 @@
      }
    },
    "node_modules/typescript-eslint": {
-
      "version": "7.13.1",
-
      "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-7.13.1.tgz",
-
      "integrity": "sha512-pvLEuRs8iS9s3Cnp/Wt//hpK8nKc8hVa3cLljHqzaJJQYP8oys8GUyIFqtlev+2lT/fqMPcyQko+HJ6iYK3nFA==",
+
      "version": "7.16.1",
+
      "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-7.16.1.tgz",
+
      "integrity": "sha512-889oE5qELj65q/tGeOSvlreNKhimitFwZqQ0o7PcWC7/lgRkAMknznsCsV8J8mZGTP/Z+cIbX8accf2DE33hrA==",
      "dev": true,
      "dependencies": {
-
        "@typescript-eslint/eslint-plugin": "7.13.1",
-
        "@typescript-eslint/parser": "7.13.1",
-
        "@typescript-eslint/utils": "7.13.1"
+
        "@typescript-eslint/eslint-plugin": "7.16.1",
+
        "@typescript-eslint/parser": "7.16.1",
+
        "@typescript-eslint/utils": "7.16.1"
      },
      "engines": {
        "node": "^18.18.0 || >=20.0.0"
@@ -5014,12 +4864,6 @@
      "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-2.1.0.tgz",
      "integrity": "sha512-ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A=="
    },
-
    "node_modules/ufo": {
-
      "version": "1.5.3",
-
      "resolved": "https://registry.npmjs.org/ufo/-/ufo-1.5.3.tgz",
-
      "integrity": "sha512-Y7HYmWaFwPUmkoQCUIAYpKqkOf+SbVj/2fJJZ4RJMCfZp0rTGwRbzQD+HghfnhKOjL9E01okqz+ncJskGYfBNw==",
-
      "dev": true
-
    },
    "node_modules/undici-types": {
      "version": "5.26.5",
      "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz",
@@ -5113,9 +4957,9 @@
      "dev": true
    },
    "node_modules/vfile": {
-
      "version": "6.0.1",
-
      "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.1.tgz",
-
      "integrity": "sha512-1bYqc7pt6NIADBJ98UiG0Bn/CHIVOoZ/IyEkqIruLg0mE1BKzkOXY2D6CSqQIcKqgadppE5lrxgWXJmXd7zZJw==",
+
      "version": "6.0.2",
+
      "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.2.tgz",
+
      "integrity": "sha512-zND7NlS8rJYb/sPqkb13ZvbbUoExdbi4w3SfRrMq6R3FvnLQmmfpajJNITuuYm6AZ5uao9vy4BAos3EXBPf2rg==",
      "dependencies": {
        "@types/unist": "^3.0.0",
        "unist-util-stringify-position": "^4.0.0",
@@ -5127,9 +4971,9 @@
      }
    },
    "node_modules/vfile-location": {
-
      "version": "5.0.2",
-
      "resolved": "https://registry.npmjs.org/vfile-location/-/vfile-location-5.0.2.tgz",
-
      "integrity": "sha512-NXPYyxyBSH7zB5U6+3uDdd6Nybz6o6/od9rk8bp9H8GR3L+cm/fC0uUTbqBmUTnMCUDslAGBOIKNfvvb+gGlDg==",
+
      "version": "5.0.3",
+
      "resolved": "https://registry.npmjs.org/vfile-location/-/vfile-location-5.0.3.tgz",
+
      "integrity": "sha512-5yXvWDEgqeiYiBe1lbxYF7UMAIm/IcopxMHrMQDq3nvKcjPKIhZklUKL+AE7J7uApI4kwe2snsK+eI6UTj9EHg==",
      "dependencies": {
        "@types/unist": "^3.0.0",
        "vfile": "^6.0.0"
@@ -5153,13 +4997,13 @@
      }
    },
    "node_modules/vite": {
-
      "version": "5.3.1",
-
      "resolved": "https://registry.npmjs.org/vite/-/vite-5.3.1.tgz",
-
      "integrity": "sha512-XBmSKRLXLxiaPYamLv3/hnP/KXDai1NDexN0FpkTaZXTfycHvkRHoenpgl/fvuK/kPbB6xAgoyiryAhQNxYmAQ==",
+
      "version": "5.3.4",
+
      "resolved": "https://registry.npmjs.org/vite/-/vite-5.3.4.tgz",
+
      "integrity": "sha512-Cw+7zL3ZG9/NZBB8C+8QbQZmR54GwqIz+WMI4b3JgdYJvX+ny9AjJXqkGQlDXSXRP9rP0B4tbciRMOVEKulVOA==",
      "dev": true,
      "dependencies": {
        "esbuild": "^0.21.3",
-
        "postcss": "^8.4.38",
+
        "postcss": "^8.4.39",
        "rollup": "^4.13.0"
      },
      "bin": {
@@ -5208,15 +5052,15 @@
      }
    },
    "node_modules/vite-node": {
-
      "version": "1.6.0",
-
      "resolved": "https://registry.npmjs.org/vite-node/-/vite-node-1.6.0.tgz",
-
      "integrity": "sha512-de6HJgzC+TFzOu0NTC4RAIsyf/DY/ibWDYQUcuEA84EMHhcefTUGkjFHKKEJhQN4A+6I0u++kr3l36ZF2d7XRw==",
+
      "version": "2.0.3",
+
      "resolved": "https://registry.npmjs.org/vite-node/-/vite-node-2.0.3.tgz",
+
      "integrity": "sha512-14jzwMx7XTcMB+9BhGQyoEAmSl0eOr3nrnn+Z12WNERtOvLN+d2scbRUvyni05rT3997Bg+rZb47NyP4IQPKXg==",
      "dev": true,
      "dependencies": {
        "cac": "^6.7.14",
-
        "debug": "^4.3.4",
-
        "pathe": "^1.1.1",
-
        "picocolors": "^1.0.0",
+
        "debug": "^4.3.5",
+
        "pathe": "^1.1.2",
+
        "tinyrainbow": "^1.2.0",
        "vite": "^5.0.0"
      },
      "bin": {
@@ -5267,30 +5111,29 @@
      }
    },
    "node_modules/vitest": {
-
      "version": "1.6.0",
-
      "resolved": "https://registry.npmjs.org/vitest/-/vitest-1.6.0.tgz",
-
      "integrity": "sha512-H5r/dN06swuFnzNFhq/dnz37bPXnq8xB2xB5JOVk8K09rUtoeNN+LHWkoQ0A/i3hvbUKKcCei9KpbxqHMLhLLA==",
-
      "dev": true,
-
      "dependencies": {
-
        "@vitest/expect": "1.6.0",
-
        "@vitest/runner": "1.6.0",
-
        "@vitest/snapshot": "1.6.0",
-
        "@vitest/spy": "1.6.0",
-
        "@vitest/utils": "1.6.0",
-
        "acorn-walk": "^8.3.2",
-
        "chai": "^4.3.10",
-
        "debug": "^4.3.4",
+
      "version": "2.0.3",
+
      "resolved": "https://registry.npmjs.org/vitest/-/vitest-2.0.3.tgz",
+
      "integrity": "sha512-o3HRvU93q6qZK4rI2JrhKyZMMuxg/JRt30E6qeQs6ueaiz5hr1cPj+Sk2kATgQzMMqsa2DiNI0TIK++1ULx8Jw==",
+
      "dev": true,
+
      "dependencies": {
+
        "@ampproject/remapping": "^2.3.0",
+
        "@vitest/expect": "2.0.3",
+
        "@vitest/pretty-format": "^2.0.3",
+
        "@vitest/runner": "2.0.3",
+
        "@vitest/snapshot": "2.0.3",
+
        "@vitest/spy": "2.0.3",
+
        "@vitest/utils": "2.0.3",
+
        "chai": "^5.1.1",
+
        "debug": "^4.3.5",
        "execa": "^8.0.1",
-
        "local-pkg": "^0.5.0",
-
        "magic-string": "^0.30.5",
-
        "pathe": "^1.1.1",
-
        "picocolors": "^1.0.0",
-
        "std-env": "^3.5.0",
-
        "strip-literal": "^2.0.0",
-
        "tinybench": "^2.5.1",
-
        "tinypool": "^0.8.3",
+
        "magic-string": "^0.30.10",
+
        "pathe": "^1.1.2",
+
        "std-env": "^3.7.0",
+
        "tinybench": "^2.8.0",
+
        "tinypool": "^1.0.0",
+
        "tinyrainbow": "^1.2.0",
        "vite": "^5.0.0",
-
        "vite-node": "1.6.0",
+
        "vite-node": "2.0.3",
        "why-is-node-running": "^2.2.2"
      },
      "bin": {
@@ -5305,8 +5148,8 @@
      "peerDependencies": {
        "@edge-runtime/vm": "*",
        "@types/node": "^18.0.0 || >=20.0.0",
-
        "@vitest/browser": "1.6.0",
-
        "@vitest/ui": "1.6.0",
+
        "@vitest/browser": "2.0.3",
+
        "@vitest/ui": "2.0.3",
        "happy-dom": "*",
        "jsdom": "*"
      },
@@ -5405,9 +5248,9 @@
      "integrity": "sha512-poJU8iHIWnC3vgphJnrLZyI3YdqRlR27xzqDmpPXYzA93R4Gk8z7T6oqDzDoHjoikA2aS82crdXFkjELCdJsjQ=="
    },
    "node_modules/vscode-textmate": {
-
      "version": "9.0.0",
-
      "resolved": "https://registry.npmjs.org/vscode-textmate/-/vscode-textmate-9.0.0.tgz",
-
      "integrity": "sha512-Cl65diFGxz7gpwbav10HqiY/eVYTO1sjQpmRmV991Bj7wAoOAjGQ97PpQcXorDE2Uc4hnGWLY17xme+5t6MlSg=="
+
      "version": "9.1.0",
+
      "resolved": "https://registry.npmjs.org/vscode-textmate/-/vscode-textmate-9.1.0.tgz",
+
      "integrity": "sha512-lxKSVp2DkFOx9RDAvpiYUrB9/KT1fAfi1aE8CBGstP8N7rLF+Seifj8kDA198X0mYj1CjQUC+81+nQf8CO0nVA=="
    },
    "node_modules/wait-on": {
      "version": "7.2.0",
@@ -5471,9 +5314,9 @@
      }
    },
    "node_modules/why-is-node-running": {
-
      "version": "2.2.2",
-
      "resolved": "https://registry.npmjs.org/why-is-node-running/-/why-is-node-running-2.2.2.tgz",
-
      "integrity": "sha512-6tSwToZxTOcotxHeA+qGCq1mVzKR3CwcJGmVcY+QE8SHy6TnpFnh8PAvPNHYr7EcuVeG0QSMxtYCuO1ta/G/oA==",
+
      "version": "2.3.0",
+
      "resolved": "https://registry.npmjs.org/why-is-node-running/-/why-is-node-running-2.3.0.tgz",
+
      "integrity": "sha512-hUrmaWBdVDcxvYqnyh09zunKzROWjbZTiNy8dBEjkS7ehEDQibXJ7XvlmtbwuTclUiIyN+CyXQD4Vmko8fNm8w==",
      "dev": true,
      "dependencies": {
        "siginfo": "^2.0.0",
@@ -5523,9 +5366,9 @@
      }
    },
    "node_modules/yoctocolors": {
-
      "version": "2.0.2",
-
      "resolved": "https://registry.npmjs.org/yoctocolors/-/yoctocolors-2.0.2.tgz",
-
      "integrity": "sha512-Ct97huExsu7cWeEjmrXlofevF8CvzUglJ4iGUet5B8xn1oumtAZBpHU4GzYuoE6PVqcZ5hghtBrSlhwHuR1Jmw==",
+
      "version": "2.1.1",
+
      "resolved": "https://registry.npmjs.org/yoctocolors/-/yoctocolors-2.1.1.tgz",
+
      "integrity": "sha512-GQHQqAopRhwU8Kt1DDM8NjibDXHC8eoh1erhGAJPEyveY9qqVeXvVikNKrDz69sHowPMorbPUrH/mx8c50eiBQ==",
      "dev": true,
      "engines": {
        "node": ">=18"
modified package.json
@@ -20,38 +20,38 @@
    "node": ">=18.17.1"
  },
  "devDependencies": {
-
    "@eslint/js": "^9.5.0",
-
    "@playwright/test": "^1.44.1",
+
    "@eslint/js": "^9.7.0",
+
    "@playwright/test": "^1.45.2",
    "@sveltejs/vite-plugin-svelte": "^3.1.1",
    "@tsconfig/svelte": "^5.0.4",
    "@types/config": "^3.3.4",
    "@types/dompurify": "^3.0.5",
    "@types/katex": "^0.16.7",
-
    "@types/lodash": "^4.17.5",
+
    "@types/lodash": "^4.17.7",
    "@types/md5": "^2.3.5",
-
    "@types/node": "^20.14.8",
+
    "@types/node": "^20.14.11",
    "@types/sinon": "^17.0.3",
    "@types/wait-on": "^5.3.4",
-
    "@typescript-eslint/parser": "^7.13.1",
+
    "@typescript-eslint/parser": "^7.16.1",
    "chalk": "^5.3.0",
-
    "config": "^3.3.11",
+
    "config": "^3.3.12",
    "eslint": "^8.57.0",
    "eslint-config-prettier": "^9.1.0",
-
    "eslint-plugin-svelte": "^2.41.0",
+
    "eslint-plugin-svelte": "^2.42.0",
    "execa": "^9.3.0",
    "get-port": "^7.1.0",
-
    "globals": "^15.6.0",
+
    "globals": "^15.8.0",
    "happy-dom": "^14.12.3",
-
    "prettier": "^3.3.2",
+
    "prettier": "^3.3.3",
    "prettier-plugin-svelte": "^3.2.5",
    "sinon": "^18.0.0",
-
    "svelte-check": "^3.8.1",
-
    "svelte-eslint-parser": "^0.39.2",
-
    "typescript": "^5.5.0",
-
    "typescript-eslint": "^7.13.1",
-
    "vite": "^5.3.1",
+
    "svelte-check": "^3.8.4",
+
    "svelte-eslint-parser": "^0.40.0",
+
    "typescript": "^5.5.3",
+
    "typescript-eslint": "^7.16.1",
+
    "vite": "^5.3.4",
    "vite-plugin-virtual": "^0.3.0",
-
    "vitest": "^1.6.0",
+
    "vitest": "^2.0.3",
    "wait-on": "^7.2.0"
  },
  "dependencies": {
@@ -59,16 +59,16 @@
    "@radicle/gray-matter": "4.1.0",
    "@wooorm/starry-night": "^3.4.0",
    "async-mutex": "^0.5.0",
-
    "baconjs": "^3.0.17",
+
    "baconjs": "^3.0.19",
    "bs58": "^6.0.0",
    "buffer": "^6.0.3",
-
    "compare-versions": "^6.1.0",
-
    "dompurify": "^3.1.5",
+
    "compare-versions": "^6.1.1",
+
    "dompurify": "^3.1.6",
    "fuzzysort": "^3.0.2",
    "hast-util-to-dom": "^4.0.0",
    "hast-util-to-html": "^9.0.1",
    "lodash": "^4.17.21",
-
    "marked": "^13.0.0",
+
    "marked": "^13.0.2",
    "marked-emoji": "^1.4.1",
    "marked-footnote": "^1.2.2",
    "marked-katex-extension": "^5.0.2",
modified src/views/projects/Cob/Revision.svelte
@@ -99,7 +99,7 @@
  $: fromCommit =
    previousRevBase !== revisionBase
      ? revisionBase
-
      : previousRevBase ?? revisionBase;
+
      : (previousRevBase ?? revisionBase);

  onMount(async () => {
    try {