Emile Bangma
2026-01-08 f346a01296e5bdbd19de38fa69968b42629b883d
package-lock.json
@@ -35,9 +35,9 @@
        "mdast-util-to-string": "^4.0.0",
        "micromorph": "^0.4.5",
        "minimatch": "^10.1.1",
        "pixi.js": "^8.14.3",
        "pixi.js": "^8.15.0",
        "preact": "^10.28.1",
        "preact-render-to-string": "^6.6.4",
        "preact-render-to-string": "^6.6.5",
        "pretty-bytes": "^7.1.0",
        "pretty-time": "^1.1.0",
        "reading-time": "^1.5.0",
@@ -68,7 +68,7 @@
        "unist-util-visit": "^5.0.0",
        "vfile": "^6.0.3",
        "workerpool": "^10.0.1",
        "ws": "^8.18.3",
        "ws": "^8.19.0",
        "yargs": "^18.0.0"
      },
      "bin": {
@@ -96,13 +96,13 @@
    "node_modules/@bufbuild/protobuf": {
      "version": "2.2.0",
      "resolved": "https://registry.npmjs.org/@bufbuild/protobuf/-/protobuf-2.2.0.tgz",
      "integrity": "sha512-+imAQkHf7U/Rwvu0wk1XWgsP3WnpCWmK7B48f0XqSNzgk64+grljTKC7pnO/xBiEMUziF7vKRfbBnOQhg126qQ=="
      "integrity": "sha512-+imAQkHf7U/Rwvu0wk1XWgsP3WnpCWmK7B48f0XqSNzgk64+grljTKC7pnO/xBiEMUziF7vKRfbBnOQhg126qQ==",
      "peer": true
    },
    "node_modules/@citation-js/core": {
      "version": "0.7.14",
      "resolved": "https://registry.npmjs.org/@citation-js/core/-/core-0.7.14.tgz",
      "integrity": "sha512-dgeGqYDSQmn2MtnWZkwPGpJQPh43yr1lAAr9jl1NJ9pIY1RXUQxtlAUZVur0V9PHdbfQC+kkvB1KC3VpgVV3MA==",
      "peer": true,
      "dependencies": {
        "@citation-js/date": "^0.5.0",
        "@citation-js/name": "^0.4.2",
@@ -2300,7 +2300,8 @@
    "node_modules/buffer-builder": {
      "version": "0.2.0",
      "resolved": "https://registry.npmjs.org/buffer-builder/-/buffer-builder-0.2.0.tgz",
      "integrity": "sha512-7VPMEPuYznPSoR21NE1zvd2Xna6c/CloiZCfcMXR1Jny6PjX0N4Nsa38zcBFo/FMK+BlA+FLKbJCQ0i2yxp+Xg=="
      "integrity": "sha512-7VPMEPuYznPSoR21NE1zvd2Xna6c/CloiZCfcMXR1Jny6PjX0N4Nsa38zcBFo/FMK+BlA+FLKbJCQ0i2yxp+Xg==",
      "peer": true
    },
    "node_modules/buffer-from": {
      "version": "1.1.2",
@@ -2419,7 +2420,8 @@
    "node_modules/colorjs.io": {
      "version": "0.5.2",
      "resolved": "https://registry.npmjs.org/colorjs.io/-/colorjs.io-0.5.2.tgz",
      "integrity": "sha512-twmVoizEW7ylZSN32OgKdXRmo1qg+wT5/6C3xu5b9QsWzSFAhHLn2xd8ro0diCsKfCj1RdaTP/nrcW+vAoQPIw=="
      "integrity": "sha512-twmVoizEW7ylZSN32OgKdXRmo1qg+wT5/6C3xu5b9QsWzSFAhHLn2xd8ro0diCsKfCj1RdaTP/nrcW+vAoQPIw==",
      "peer": true
    },
    "node_modules/comma-separated-tokens": {
      "version": "2.0.3",
@@ -2792,7 +2794,6 @@
      "version": "3.0.0",
      "resolved": "https://registry.npmjs.org/d3-selection/-/d3-selection-3.0.0.tgz",
      "integrity": "sha512-fmTRWbNMmsmWq6xJV8D19U/gw/bwrHfNXxrIN+HfZgnzqTHp9jOmKMhsTUjXOJnZOdZY9Q28y4yebKzqDKlxlQ==",
      "peer": true,
      "engines": {
        "node": ">=12"
      }
@@ -2971,7 +2972,6 @@
      "integrity": "sha512-HyNQImnsOC7X9PMNaCIeAm4ISCQXs5a5YasTXVliKv4uuBo1dKrG0A+uQS8M5eXjVMnLg3WgXaKvprHlFJQffw==",
      "hasInstallScript": true,
      "license": "MIT",
      "peer": true,
      "bin": {
        "esbuild": "bin/esbuild"
      },
@@ -3382,6 +3382,7 @@
      "version": "4.0.0",
      "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
      "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
      "peer": true,
      "engines": {
        "node": ">=8"
      }
@@ -5492,9 +5493,9 @@
      }
    },
    "node_modules/pixi.js": {
      "version": "8.14.3",
      "resolved": "https://registry.npmjs.org/pixi.js/-/pixi.js-8.14.3.tgz",
      "integrity": "sha512-6xGYARV8D9E/fO1c2NmYn+k2dQ5oZldVm5tNlLQJ8obTlOQXdL5QpMc217qTpRyHVDFaw5eoFCLF1gr6p5ZcjQ==",
      "version": "8.15.0",
      "resolved": "https://registry.npmjs.org/pixi.js/-/pixi.js-8.15.0.tgz",
      "integrity": "sha512-J/Ghze/K9fjHRlfwC2EMZ7vnMIhGo4ByKCsKMcS0AB12iT79nf9zzWKUTzMJ8QAQFqQfDOl5ULwmHMUdeih2zQ==",
      "license": "MIT",
      "dependencies": {
        "@pixi/colord": "^2.9.6",
@@ -5525,16 +5526,15 @@
      "resolved": "https://registry.npmjs.org/preact/-/preact-10.28.1.tgz",
      "integrity": "sha512-u1/ixq/lVQI0CakKNvLDEcW5zfCjUQfZdK9qqWuIJtsezuyG6pk9TWj75GMuI/EzRSZB/VAE43sNWWZfiy8psw==",
      "license": "MIT",
      "peer": true,
      "funding": {
        "type": "opencollective",
        "url": "https://opencollective.com/preact"
      }
    },
    "node_modules/preact-render-to-string": {
      "version": "6.6.4",
      "resolved": "https://registry.npmjs.org/preact-render-to-string/-/preact-render-to-string-6.6.4.tgz",
      "integrity": "sha512-Bn6eQZ5SQ5loVEcC/mZmKT7HzO5Z/+vYzxfE/W2N468oSoNMJVdFGApF0GyXq0lDthuyXKTmtZ8k20NpYjr6Rw==",
      "version": "6.6.5",
      "resolved": "https://registry.npmjs.org/preact-render-to-string/-/preact-render-to-string-6.6.5.tgz",
      "integrity": "sha512-O6MHzYNIKYaiSX3bOw0gGZfEbOmlIDtDfWwN1JJdc/T3ihzRT6tGGSEWE088dWrEDGa1u7101q+6fzQnO9XCPA==",
      "license": "MIT",
      "peerDependencies": {
        "preact": ">=10 || >= 11.0.0-0"
@@ -6082,6 +6082,7 @@
      "version": "7.8.1",
      "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz",
      "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==",
      "peer": true,
      "dependencies": {
        "tslib": "^2.1.0"
      }
@@ -6166,6 +6167,7 @@
      "os": [
        "android"
      ],
      "peer": true,
      "engines": {
        "node": ">=14.0.0"
      }
@@ -6181,6 +6183,7 @@
      "os": [
        "android"
      ],
      "peer": true,
      "engines": {
        "node": ">=14.0.0"
      }
@@ -6196,6 +6199,7 @@
      "os": [
        "android"
      ],
      "peer": true,
      "engines": {
        "node": ">=14.0.0"
      }
@@ -6211,6 +6215,7 @@
      "os": [
        "android"
      ],
      "peer": true,
      "engines": {
        "node": ">=14.0.0"
      }
@@ -6226,6 +6231,7 @@
      "os": [
        "android"
      ],
      "peer": true,
      "engines": {
        "node": ">=14.0.0"
      }
@@ -6241,6 +6247,7 @@
      "os": [
        "darwin"
      ],
      "peer": true,
      "engines": {
        "node": ">=14.0.0"
      }
@@ -6256,6 +6263,7 @@
      "os": [
        "darwin"
      ],
      "peer": true,
      "engines": {
        "node": ">=14.0.0"
      }
@@ -6271,6 +6279,7 @@
      "os": [
        "linux"
      ],
      "peer": true,
      "engines": {
        "node": ">=14.0.0"
      }
@@ -6286,6 +6295,7 @@
      "os": [
        "linux"
      ],
      "peer": true,
      "engines": {
        "node": ">=14.0.0"
      }
@@ -6301,6 +6311,7 @@
      "os": [
        "linux"
      ],
      "peer": true,
      "engines": {
        "node": ">=14.0.0"
      }
@@ -6316,6 +6327,7 @@
      "os": [
        "linux"
      ],
      "peer": true,
      "engines": {
        "node": ">=14.0.0"
      }
@@ -6331,6 +6343,7 @@
      "os": [
        "linux"
      ],
      "peer": true,
      "engines": {
        "node": ">=14.0.0"
      }
@@ -6346,6 +6359,7 @@
      "os": [
        "linux"
      ],
      "peer": true,
      "engines": {
        "node": ">=14.0.0"
      }
@@ -6361,6 +6375,7 @@
      "os": [
        "linux"
      ],
      "peer": true,
      "engines": {
        "node": ">=14.0.0"
      }
@@ -6376,6 +6391,7 @@
      "os": [
        "linux"
      ],
      "peer": true,
      "engines": {
        "node": ">=14.0.0"
      }
@@ -6391,6 +6407,7 @@
      "os": [
        "linux"
      ],
      "peer": true,
      "engines": {
        "node": ">=14.0.0"
      }
@@ -6406,6 +6423,7 @@
      "os": [
        "linux"
      ],
      "peer": true,
      "engines": {
        "node": ">=14.0.0"
      }
@@ -6421,6 +6439,7 @@
      "os": [
        "win32"
      ],
      "peer": true,
      "engines": {
        "node": ">=14.0.0"
      }
@@ -6436,6 +6455,7 @@
      "os": [
        "win32"
      ],
      "peer": true,
      "engines": {
        "node": ">=14.0.0"
      }
@@ -6451,6 +6471,7 @@
      "os": [
        "win32"
      ],
      "peer": true,
      "engines": {
        "node": ">=14.0.0"
      }
@@ -6620,7 +6641,6 @@
      "version": "1.26.2",
      "resolved": "https://registry.npmjs.org/shiki/-/shiki-1.26.2.tgz",
      "integrity": "sha512-iP7u2NA9A6JwRRCkIUREEX2cMhlYV5EBmbbSlfSRvPThwca8HBRbVkWuNWW+kw9+i6BSUZqqG6YeUs5dC2SjZw==",
      "peer": true,
      "dependencies": {
        "@shikijs/core": "1.26.2",
        "@shikijs/engine-javascript": "1.26.2",
@@ -6790,6 +6810,7 @@
      "version": "8.1.1",
      "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz",
      "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==",
      "peer": true,
      "dependencies": {
        "has-flag": "^4.0.0"
      },
@@ -7125,7 +7146,8 @@
    "node_modules/varint": {
      "version": "6.0.0",
      "resolved": "https://registry.npmjs.org/varint/-/varint-6.0.0.tgz",
      "integrity": "sha512-cXEIW6cfr15lFv563k4GuVuW/fiwjknytD37jIOLSdSWuOI6WnO/oKwmP2FQTU2l01LP8/M5TSAJpzUaGe3uWg=="
      "integrity": "sha512-cXEIW6cfr15lFv563k4GuVuW/fiwjknytD37jIOLSdSWuOI6WnO/oKwmP2FQTU2l01LP8/M5TSAJpzUaGe3uWg==",
      "peer": true
    },
    "node_modules/vfile": {
      "version": "6.0.3",
@@ -7226,9 +7248,9 @@
      }
    },
    "node_modules/ws": {
      "version": "8.18.3",
      "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.3.tgz",
      "integrity": "sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg==",
      "version": "8.19.0",
      "resolved": "https://registry.npmjs.org/ws/-/ws-8.19.0.tgz",
      "integrity": "sha512-blAT2mjOEIi0ZzruJfIhb3nps74PRWTCz1IjglWEEpQl5XS/UNama6u2/rjFkDDouqr4L67ry+1aGIALViWjDg==",
      "license": "MIT",
      "engines": {
        "node": ">=10.0.0"