diff --git a/package-lock.json b/package-lock.json index eff9e6bd..93fb2726 100644 --- a/package-lock.json +++ b/package-lock.json @@ -19,7 +19,6 @@ "@lingui/react": "~4.11.3", "@szhsin/react-menu": "~4.2.2", "compare-versions": "~6.1.1", - "dayjs": "~1.11.12", "fast-blurhash": "~1.1.4", "fast-equals": "~5.0.1", "fuse.js": "~7.0.0", @@ -31,7 +30,7 @@ "masto": "~6.8.0", "moize": "~6.1.6", "p-retry": "~6.2.0", - "p-throttle": "~6.1.0", + "p-throttle": "~6.2.0", "preact": "~10.23.2", "punycode": "~2.3.1", "react-hotkeys-hook": "~4.5.0", @@ -54,16 +53,16 @@ "@lingui/vite-plugin": "~4.11.3", "@preact/preset-vite": "~2.9.0", "babel-plugin-macros": "~3.1.0", - "npm-run-all2": "~6.2.2", "postcss": "~8.4.41", "postcss-dark-theme-class": "~1.3.0", - "postcss-preset-env": "~10.0.0", + "postcss-preset-env": "~10.0.1", "twitter-text": "~3.1.0", - "vite": "~5.4.0", + "vite": "~5.4.1", "vite-plugin-generate-file": "~0.2.0", "vite-plugin-html-config": "~1.0.11", "vite-plugin-pwa": "~0.20.1", "vite-plugin-remove-console": "~2.2.0", + "vite-plugin-run": "~0.5.2", "workbox-cacheable-response": "~7.1.0", "workbox-expiration": "~7.1.0", "workbox-routing": "~7.1.0", @@ -84,6 +83,15 @@ "node": ">=6.0.0" } }, + "node_modules/@antfu/utils": { + "version": "0.7.10", + "resolved": "https://registry.npmjs.org/@antfu/utils/-/utils-0.7.10.tgz", + "integrity": "sha512-+562v9k4aI80m1+VuMHehNJWLOFjBnXn3tdOitzD0il5b7smkSBal4+a3oKiQTbrwMmN/TBUMDvbdoWDehgOww==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, "node_modules/@apideck/better-ajv-errors": { "version": "0.3.6", "resolved": "https://registry.npmjs.org/@apideck/better-ajv-errors/-/better-ajv-errors-0.3.6.tgz", @@ -1881,9 +1889,9 @@ } }, "node_modules/@csstools/color-helpers": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/@csstools/color-helpers/-/color-helpers-4.2.1.tgz", - "integrity": "sha512-CEypeeykO9AN7JWkr1OEOQb0HRzZlPWGwV0Ya6DuVgFdDi6g3ma/cPZ5ZPZM4AWQikDpq/0llnGGlIL+j8afzw==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/@csstools/color-helpers/-/color-helpers-5.0.1.tgz", + "integrity": "sha512-MKtmkA0BX87PKaO1NFRTFH+UnkgnmySQOvNxJubsadusqPEC2aJ9MOQiMceZJJ6oitUl/i0L6u0M1IrmAOmgBA==", "dev": true, "funding": [ { @@ -1896,7 +1904,7 @@ } ], "engines": { - "node": "^14 || ^16 || >=18" + "node": ">=18" } }, "node_modules/@csstools/css-calc": { @@ -1923,9 +1931,9 @@ } }, "node_modules/@csstools/css-color-parser": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@csstools/css-color-parser/-/css-color-parser-3.0.0.tgz", - "integrity": "sha512-F/A1Z3ZXH4fU6+29Up4QAZtewLmWLI4hVz6hyODMFvorx4AEC/03tu+gFq0nMZSDafC0lmapNOj9f4ctHMNaqQ==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@csstools/css-color-parser/-/css-color-parser-3.0.1.tgz", + "integrity": "sha512-++7I+Z7S/BWedPlR4z8aW1zsvtJFufFbpdPwdx5+W50dq5EYLV3sulitSNMry0BNmNMzeczdQij/f4C+ch01vQ==", "dev": true, "funding": [ { @@ -1938,7 +1946,7 @@ } ], "dependencies": { - "@csstools/color-helpers": "^4.2.1", + "@csstools/color-helpers": "^5.0.1", "@csstools/css-calc": "^2.0.0" }, "engines": { @@ -2040,9 +2048,9 @@ } }, "node_modules/@csstools/postcss-color-function": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@csstools/postcss-color-function/-/postcss-color-function-4.0.0.tgz", - "integrity": "sha512-e0RohXUxMsSzIS5s4xh218NiOYXAfby17L8KYe/6ITI8i4BiSFLpywMvpA/d6xPUGUfT20O+7JLBDHF3heYZRA==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@csstools/postcss-color-function/-/postcss-color-function-4.0.1.tgz", + "integrity": "sha512-nRnwVdqdMUIsE7cGbI+La4fxME6tT9bVDRYfBHW/0QTLwCVJN4+DC/3kqiU6AdTne31hUBGPwcH1uzkuc4fO5A==", "dev": true, "funding": [ { @@ -2055,7 +2063,7 @@ } ], "dependencies": { - "@csstools/css-color-parser": "^3.0.0", + "@csstools/css-color-parser": "^3.0.1", "@csstools/css-parser-algorithms": "^3.0.0", "@csstools/css-tokenizer": "^3.0.0", "@csstools/postcss-progressive-custom-properties": "^4.0.0", @@ -2069,9 +2077,9 @@ } }, "node_modules/@csstools/postcss-color-mix-function": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@csstools/postcss-color-mix-function/-/postcss-color-mix-function-3.0.0.tgz", - "integrity": "sha512-MWuSfaLKe1By/hSnjH/Hj7ZOIRZaLMNshCTkVuuqtZ0nfp+QRGUwf9nb2uPVKySYjKqNERANdA9Q0citA9hK1Q==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@csstools/postcss-color-mix-function/-/postcss-color-mix-function-3.0.1.tgz", + "integrity": "sha512-RRdu3CppF9dTn3AvDkeEkOL8ZDpDh/TF6YLV1JKl768BQk0XJ026xWfttoL911k0g8yprES3wFujjLsK0XhsEg==", "dev": true, "funding": [ { @@ -2084,7 +2092,7 @@ } ], "dependencies": { - "@csstools/css-color-parser": "^3.0.0", + "@csstools/css-color-parser": "^3.0.1", "@csstools/css-parser-algorithms": "^3.0.0", "@csstools/css-tokenizer": "^3.0.0", "@csstools/postcss-progressive-custom-properties": "^4.0.0", @@ -2179,9 +2187,9 @@ } }, "node_modules/@csstools/postcss-gamut-mapping": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@csstools/postcss-gamut-mapping/-/postcss-gamut-mapping-2.0.0.tgz", - "integrity": "sha512-JftxHVGt6PFfV/vWTDVKrrO0XyUA8OtuVykXhhMxue9qCzCCTSWqMHjZOvaOCCbxG1v2tGKV2FxBLQhzsZZPJg==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@csstools/postcss-gamut-mapping/-/postcss-gamut-mapping-2.0.1.tgz", + "integrity": "sha512-bCQ609PZsGUmrTVeGaPgYF27DFQ7gg2no3j6qXY3MOAVjfPRvMIlGdpLejhgYra1VUoTNA1SUqHLNgFWoJ/pRA==", "dev": true, "funding": [ { @@ -2194,7 +2202,7 @@ } ], "dependencies": { - "@csstools/css-color-parser": "^3.0.0", + "@csstools/css-color-parser": "^3.0.1", "@csstools/css-parser-algorithms": "^3.0.0", "@csstools/css-tokenizer": "^3.0.0" }, @@ -2206,9 +2214,9 @@ } }, "node_modules/@csstools/postcss-gradients-interpolation-method": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@csstools/postcss-gradients-interpolation-method/-/postcss-gradients-interpolation-method-5.0.0.tgz", - "integrity": "sha512-jmgh7C6ANVRPdFNMNIp426UFNuy01XXYwxbbyYV2fZBbmZleVLp6imxjw2XoaeHMdSiYoq8vOeX+GVzCyC7oOQ==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/@csstools/postcss-gradients-interpolation-method/-/postcss-gradients-interpolation-method-5.0.1.tgz", + "integrity": "sha512-ZINUsXxFrJ5bpfpq772BQzu5K23dDFoQwvyeQRHHQpDOS8hMIoBMmjDjtZV5fGJ/gtL/blKUvytAyrgBzaqvUQ==", "dev": true, "funding": [ { @@ -2221,7 +2229,7 @@ } ], "dependencies": { - "@csstools/css-color-parser": "^3.0.0", + "@csstools/css-color-parser": "^3.0.1", "@csstools/css-parser-algorithms": "^3.0.0", "@csstools/css-tokenizer": "^3.0.0", "@csstools/postcss-progressive-custom-properties": "^4.0.0", @@ -2235,9 +2243,9 @@ } }, "node_modules/@csstools/postcss-hwb-function": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@csstools/postcss-hwb-function/-/postcss-hwb-function-4.0.0.tgz", - "integrity": "sha512-Swb2CK/wKnsXEgT5GNlIO2C2h3lePn0Nmbsy48Z6yAht1XwQiDcxDAhqojg9LfonJVics+pzLM+IEQjPdgICNg==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@csstools/postcss-hwb-function/-/postcss-hwb-function-4.0.1.tgz", + "integrity": "sha512-1SluTV2F2WiWPw5CHQ/UOsUrO5y89VDQlOICzHIF3Mx50YdTf0qYZ/dTXL/Fa+1AgzSn4IYt51XXjgxI7pe/jw==", "dev": true, "funding": [ { @@ -2250,7 +2258,7 @@ } ], "dependencies": { - "@csstools/css-color-parser": "^3.0.0", + "@csstools/css-color-parser": "^3.0.1", "@csstools/css-parser-algorithms": "^3.0.0", "@csstools/css-tokenizer": "^3.0.0", "@csstools/postcss-progressive-custom-properties": "^4.0.0", @@ -2339,9 +2347,9 @@ } }, "node_modules/@csstools/postcss-light-dark-function": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@csstools/postcss-light-dark-function/-/postcss-light-dark-function-2.0.0.tgz", - "integrity": "sha512-1CHfwwckSJ4xYZYOgJD5u1NNlP85/6VqsQPL1geagvfpwm47hcGRDW+O3CD7KdexWGL45E5qKmL1bC2siqjmkg==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@csstools/postcss-light-dark-function/-/postcss-light-dark-function-2.0.1.tgz", + "integrity": "sha512-RHliBdalIg7KZNwv5B1VwF1qFEhmz3ZIbZXyxOH1g7W72S0oazMKIvYVgHenCxHCxWOxSR0ipZ+8kHa+fm4O5A==", "dev": true, "funding": [ { @@ -2590,9 +2598,9 @@ } }, "node_modules/@csstools/postcss-oklab-function": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@csstools/postcss-oklab-function/-/postcss-oklab-function-4.0.0.tgz", - "integrity": "sha512-4dwot1KLiFRFbYZV2XeeNoXQETK/3MaNCi4BpDlJ5J4XHF+VRwcppfCcqCC+TRucWanPFFlbt+X53nIuK7JVNg==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@csstools/postcss-oklab-function/-/postcss-oklab-function-4.0.1.tgz", + "integrity": "sha512-hEJ83YhqNII3/TBGcJLjSkNx65p4Zbz6YFm6ww2BRRO223/GTFOHT2ElicWmnBtoZWKORgysI4wtLv3p6LZSFQ==", "dev": true, "funding": [ { @@ -2605,7 +2613,7 @@ } ], "dependencies": { - "@csstools/css-color-parser": "^3.0.0", + "@csstools/css-color-parser": "^3.0.1", "@csstools/css-parser-algorithms": "^3.0.0", "@csstools/css-tokenizer": "^3.0.0", "@csstools/postcss-progressive-custom-properties": "^4.0.0", @@ -2644,9 +2652,9 @@ } }, "node_modules/@csstools/postcss-relative-color-syntax": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@csstools/postcss-relative-color-syntax/-/postcss-relative-color-syntax-3.0.0.tgz", - "integrity": "sha512-iE/mgtuUeFMpMJhhrze9pu5xSEaueCTijs7lTnJ6MoTL50H9fquQp3bFVd2haAb/fDhO/nXTu67tzsm+zXsFzA==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@csstools/postcss-relative-color-syntax/-/postcss-relative-color-syntax-3.0.1.tgz", + "integrity": "sha512-GbcQPmfBOjKomHuOVB6troujQg65ykCMt4OGot75Bdev7jAHC9hd0AX5qMprpG9AF0dA012curAVqY0ehmdYwQ==", "dev": true, "funding": [ { @@ -2659,7 +2667,7 @@ } ], "dependencies": { - "@csstools/css-color-parser": "^3.0.0", + "@csstools/css-color-parser": "^3.0.1", "@csstools/css-parser-algorithms": "^3.0.0", "@csstools/css-tokenizer": "^3.0.0", "@csstools/postcss-progressive-custom-properties": "^4.0.0", @@ -2725,9 +2733,9 @@ } }, "node_modules/@csstools/postcss-text-decoration-shorthand": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@csstools/postcss-text-decoration-shorthand/-/postcss-text-decoration-shorthand-4.0.0.tgz", - "integrity": "sha512-vyJpbr2emWy8AOmBT+41LcAaaS8Q3jOMiMZRzrdV8uZgKI1I0NiB+UM7vJuwkFPhC3oXl7XPIPtajsyEAvI3kw==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@csstools/postcss-text-decoration-shorthand/-/postcss-text-decoration-shorthand-4.0.1.tgz", + "integrity": "sha512-xPZIikbx6jyzWvhms27uugIc0I4ykH4keRvoa3rxX5K7lEhkbd54rjj/dv60qOCTisoS+3bmwJTeyV1VNBrXaw==", "dev": true, "funding": [ { @@ -2740,7 +2748,7 @@ } ], "dependencies": { - "@csstools/color-helpers": "^4.2.1", + "@csstools/color-helpers": "^5.0.1", "postcss-value-parser": "^4.2.0" }, "engines": { @@ -5788,11 +5796,6 @@ "url": "https://github.com/sponsors/kossnocorp" } }, - "node_modules/dayjs": { - "version": "1.11.12", - "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.12.tgz", - "integrity": "sha512-Rt2g+nTbLlDWZTwwrIXjy9MeiZmSDI375FvZs72ngxx8PDC6YXOeR3q5LAuPzjZQxhiWdRKac7RKV+YyQYfYIg==" - }, "node_modules/debug": { "version": "4.3.4", "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", @@ -6196,6 +6199,29 @@ "integrity": "sha512-RtnLYrMbXp4JkZIoZu+3VTqV21bNVBlJBZ4NmtwvMNqSE3qouhxv2gvLE4JJDaQc54ioPkrX74V6x+hp/hqjkQ==", "license": "MIT" }, + "node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, "node_modules/external-editor": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", @@ -6442,6 +6468,18 @@ "integrity": "sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==", "dev": true }, + "node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/get-symbol-description": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.2.tgz", @@ -6651,6 +6689,15 @@ "resolved": "https://registry.npmjs.org/html-prettify/-/html-prettify-1.0.7.tgz", "integrity": "sha512-99pRsP2PV2DyWnrVibNyad7gNmzCP7AANO8jw7Z9yanWyXH9dPdqdMXGefySplroqCNdk95u7j5TLxfyJ1Cbbg==" }, + "node_modules/human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "dev": true, + "engines": { + "node": ">=10.17.0" + } + }, "node_modules/iconv-lite": { "version": "0.4.24", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", @@ -7722,14 +7769,11 @@ "ws": "^8.17.0" } }, - "node_modules/memorystream": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz", - "integrity": "sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==", - "dev": true, - "engines": { - "node": ">= 0.10.0" - } + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true }, "node_modules/micro-memoize": { "version": "4.1.2", @@ -7890,74 +7934,16 @@ "node": ">=0.10.0" } }, - "node_modules/npm-normalize-package-bin": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-3.0.1.tgz", - "integrity": "sha512-dMxCf+zZ+3zeQZXKxmyuCKlIDPGuv8EF940xbkC4kQVDTtqoh6rJFO+JTKSA6/Rwi0getWmtuy4Itup0AMcaDQ==", - "dev": true, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/npm-run-all2": { - "version": "6.2.2", - "resolved": "https://registry.npmjs.org/npm-run-all2/-/npm-run-all2-6.2.2.tgz", - "integrity": "sha512-Q+alQAGIW7ZhKcxLt8GcSi3h3ryheD6xnmXahkMRVM5LYmajcUrSITm8h+OPC9RYWMV2GR0Q1ntTUCfxaNoOJw==", + "node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", "dev": true, "dependencies": { - "ansi-styles": "^6.2.1", - "cross-spawn": "^7.0.3", - "memorystream": "^0.3.1", - "minimatch": "^9.0.0", - "pidtree": "^0.6.0", - "read-package-json-fast": "^3.0.2", - "shell-quote": "^1.7.3" - }, - "bin": { - "npm-run-all": "bin/npm-run-all/index.js", - "npm-run-all2": "bin/npm-run-all/index.js", - "run-p": "bin/run-p/index.js", - "run-s": "bin/run-s/index.js" + "path-key": "^3.0.0" }, "engines": { - "node": "^14.18.0 || ^16.13.0 || >=18.0.0", - "npm": ">= 8" - } - }, - "node_modules/npm-run-all2/node_modules/ansi-styles": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", - "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/npm-run-all2/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/npm-run-all2/node_modules/minimatch": { - "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" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "node": ">=8" } }, "node_modules/nth-check": { @@ -8208,9 +8194,9 @@ } }, "node_modules/p-throttle": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/p-throttle/-/p-throttle-6.1.0.tgz", - "integrity": "sha512-eQMdGTxk2+047La67wefUtt0tEHh7D+C8Jl7QXoFCuIiNYeQ9zWs2AZiJdIAs72rSXZ06t11me2bgalRNdy3SQ==", + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/p-throttle/-/p-throttle-6.2.0.tgz", + "integrity": "sha512-NCKkOVj6PZa6NiTmfvGilDdf6vO1rFCD3KDnkHko8dTOtkpk4cSR/VTAhhLMG9aiQ7/A9HYgEDNmxzf6hxzR3g==", "engines": { "node": ">=18" }, @@ -8350,18 +8336,6 @@ "url": "https://github.com/sponsors/jonschlinkert" } }, - "node_modules/pidtree": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.6.0.tgz", - "integrity": "sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==", - "dev": true, - "bin": { - "pidtree": "bin/pidtree.js" - }, - "engines": { - "node": ">=0.10" - } - }, "node_modules/pkg-up": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/pkg-up/-/pkg-up-3.1.0.tgz", @@ -8459,9 +8433,9 @@ } }, "node_modules/postcss-color-functional-notation": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/postcss-color-functional-notation/-/postcss-color-functional-notation-7.0.0.tgz", - "integrity": "sha512-WjOCE1FJb2xIeFvF40CISn9yUMtzwkgjdbjXmWjbrC1wAgQiB763h7bsip9piGtAkbeM5Pi9hVIDSmtbWrlqLw==", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/postcss-color-functional-notation/-/postcss-color-functional-notation-7.0.1.tgz", + "integrity": "sha512-8/wf01pTH3XHT37wre+E2GNcsttZ62PWSJ0DE66GO+Uzk+uyr9DH+V3cdJG+BqezCD/T5lBC1s5/t7Y12ps8QQ==", "dev": true, "funding": [ { @@ -8474,7 +8448,7 @@ } ], "dependencies": { - "@csstools/css-color-parser": "^3.0.0", + "@csstools/css-color-parser": "^3.0.1", "@csstools/css-parser-algorithms": "^3.0.0", "@csstools/css-tokenizer": "^3.0.0", "@csstools/postcss-progressive-custom-properties": "^4.0.0", @@ -8810,9 +8784,9 @@ } }, "node_modules/postcss-lab-function": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/postcss-lab-function/-/postcss-lab-function-7.0.0.tgz", - "integrity": "sha512-Qyrlog4fAJcbwiWHiwkpDLlSRnvk2dFYqygQ29sMbhCoq6B/Jtj89u89VFNaAatW8KkDDAeNzVvabK9NBD9hJA==", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/postcss-lab-function/-/postcss-lab-function-7.0.1.tgz", + "integrity": "sha512-G9ecsdU+TtdHJvaTrfbIyOa3iHHJMZXdvsLXJSN8IP4cfg3XraozacAt6P7xzaILIC3XPGMM149oKhf2tjPubg==", "dev": true, "funding": [ { @@ -8825,7 +8799,7 @@ } ], "dependencies": { - "@csstools/css-color-parser": "^3.0.0", + "@csstools/css-color-parser": "^3.0.1", "@csstools/css-parser-algorithms": "^3.0.0", "@csstools/css-tokenizer": "^3.0.0", "@csstools/postcss-progressive-custom-properties": "^4.0.0", @@ -8974,9 +8948,9 @@ } }, "node_modules/postcss-preset-env": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/postcss-preset-env/-/postcss-preset-env-10.0.0.tgz", - "integrity": "sha512-zoLkIGK30hkLhHVD6jNqcO6gDVDzyo10s42XG++Gsy9z6gk1X/UpI2Zn28ylGD9VnQSSdQMzuk535rRq2JmWkg==", + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/postcss-preset-env/-/postcss-preset-env-10.0.1.tgz", + "integrity": "sha512-I8m4pBJWcUmPLu1z8HySEiAROKIMA0nwUYCGr1gJOGFP9BdwPWPBSYvA2KGH0VjUZ8AAAvwwXXWnxHTWq3f7UQ==", "dev": true, "funding": [ { @@ -8990,18 +8964,18 @@ ], "dependencies": { "@csstools/postcss-cascade-layers": "^5.0.0", - "@csstools/postcss-color-function": "^4.0.0", - "@csstools/postcss-color-mix-function": "^3.0.0", + "@csstools/postcss-color-function": "^4.0.1", + "@csstools/postcss-color-mix-function": "^3.0.1", "@csstools/postcss-content-alt-text": "^2.0.0", "@csstools/postcss-exponential-functions": "^2.0.0", "@csstools/postcss-font-format-keywords": "^4.0.0", - "@csstools/postcss-gamut-mapping": "^2.0.0", - "@csstools/postcss-gradients-interpolation-method": "^5.0.0", - "@csstools/postcss-hwb-function": "^4.0.0", + "@csstools/postcss-gamut-mapping": "^2.0.1", + "@csstools/postcss-gradients-interpolation-method": "^5.0.1", + "@csstools/postcss-hwb-function": "^4.0.1", "@csstools/postcss-ic-unit": "^4.0.0", "@csstools/postcss-initial": "^2.0.0", "@csstools/postcss-is-pseudo-class": "^5.0.0", - "@csstools/postcss-light-dark-function": "^2.0.0", + "@csstools/postcss-light-dark-function": "^2.0.1", "@csstools/postcss-logical-float-and-clear": "^3.0.0", "@csstools/postcss-logical-overflow": "^2.0.0", "@csstools/postcss-logical-overscroll-behavior": "^2.0.0", @@ -9011,12 +8985,12 @@ "@csstools/postcss-media-queries-aspect-ratio-number-values": "^3.0.0", "@csstools/postcss-nested-calc": "^4.0.0", "@csstools/postcss-normalize-display-values": "^4.0.0", - "@csstools/postcss-oklab-function": "^4.0.0", + "@csstools/postcss-oklab-function": "^4.0.1", "@csstools/postcss-progressive-custom-properties": "^4.0.0", - "@csstools/postcss-relative-color-syntax": "^3.0.0", + "@csstools/postcss-relative-color-syntax": "^3.0.1", "@csstools/postcss-scope-pseudo-class": "^4.0.0", "@csstools/postcss-stepped-value-functions": "^4.0.0", - "@csstools/postcss-text-decoration-shorthand": "^4.0.0", + "@csstools/postcss-text-decoration-shorthand": "^4.0.1", "@csstools/postcss-trigonometric-functions": "^4.0.0", "@csstools/postcss-unset-value": "^4.0.0", "autoprefixer": "^10.4.19", @@ -9027,7 +9001,7 @@ "cssdb": "^8.1.0", "postcss-attribute-case-insensitive": "^7.0.0", "postcss-clamp": "^4.1.0", - "postcss-color-functional-notation": "^7.0.0", + "postcss-color-functional-notation": "^7.0.1", "postcss-color-hex-alpha": "^10.0.0", "postcss-color-rebeccapurple": "^10.0.0", "postcss-custom-media": "^11.0.0", @@ -9040,7 +9014,7 @@ "postcss-font-variant": "^5.0.0", "postcss-gap-properties": "^6.0.0", "postcss-image-set-function": "^7.0.0", - "postcss-lab-function": "^7.0.0", + "postcss-lab-function": "^7.0.1", "postcss-logical": "^8.0.0", "postcss-nesting": "^13.0.0", "postcss-opacity-percentage": "^2.0.0", @@ -9391,28 +9365,6 @@ "react-dom": ">=16.8.0" } }, - "node_modules/read-package-json-fast": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-3.0.2.tgz", - "integrity": "sha512-0J+Msgym3vrLOUB3hzQCuZHII0xkNGCtz/HJH9xZshwv9DbDwkw1KaE3gx/e2J5rpEY5rtOy6cyhKOPrkP7FZw==", - "dev": true, - "dependencies": { - "json-parse-even-better-errors": "^3.0.0", - "npm-normalize-package-bin": "^3.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/read-package-json-fast/node_modules/json-parse-even-better-errors": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.2.tgz", - "integrity": "sha512-fi0NG4bPjCHunUJffmLd0gxssIgkNmArMvis4iNah6Owg1MCJjWhEcDLmsK6iGkJq3tHwbDkTlce70/tmXN4cQ==", - "dev": true, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, "node_modules/readable-stream": { "version": "3.6.2", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", @@ -9791,15 +9743,6 @@ "node": ">=8" } }, - "node_modules/shell-quote": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.1.tgz", - "integrity": "sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/side-channel": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", @@ -10057,6 +10000,15 @@ "node": ">=10" } }, + "node_modules/strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, "node_modules/supports-color": { "version": "5.5.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", @@ -10598,13 +10550,13 @@ } }, "node_modules/vite": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.0.tgz", - "integrity": "sha512-5xokfMX0PIiwCMCMb9ZJcMyh5wbBun0zUzKib+L65vAZ8GY9ePZMXxFrHbr/Kyll2+LSCY7xtERPpxkBDKngwg==", + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.1.tgz", + "integrity": "sha512-1oE6yuNXssjrZdblI9AfBbHCC41nnyoVoEZxQnID6yvQZAFBzxxkqoFLtHUMkYunL8hwOLEjgTuxpkRxvba3kA==", "dev": true, "dependencies": { "esbuild": "^0.21.3", - "postcss": "^8.4.40", + "postcss": "^8.4.41", "rollup": "^4.13.0" }, "bin": { @@ -10717,6 +10669,43 @@ "integrity": "sha512-qgjh5pz75MdE9Kzs8J0kBwaCfifHV0ezRbB9rpGsIOxam+ilcGV7WOk91vFJXquzRmiKrFh3Hxlh0JJWAmXTbQ==", "dev": true }, + "node_modules/vite-plugin-run": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/vite-plugin-run/-/vite-plugin-run-0.5.2.tgz", + "integrity": "sha512-ZrbdZ2gNJwvW4MMQr6a4Udioq6+06VgBytviYi/hgRQnz3SCQAcRJu7QKqlIbH229/lNyYTdvkglottfkUlNyQ==", + "dev": true, + "dependencies": { + "@antfu/utils": "^0.7.6", + "debug": "^4.3.4", + "execa": "5.1", + "minimatch": "^9.0.3", + "picocolors": "^1.0.0" + } + }, + "node_modules/vite-plugin-run/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/vite-plugin-run/node_modules/minimatch": { + "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" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/wcwidth": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", diff --git a/package.json b/package.json index 4322159d..55818e9f 100644 --- a/package.json +++ b/package.json @@ -3,8 +3,7 @@ "version": "0.1.0", "type": "module", "scripts": { - "dev:vite": "vite", - "dev": "run-p dev:vite \"messages:extract:clean -- --watch\"", + "dev": "vite", "build": "vite build", "preview": "vite preview", "fetch-instances": "env $(cat .env.local | grep -v \"#\" | xargs) node scripts/fetch-instances-list.js", @@ -26,7 +25,6 @@ "@lingui/react": "~4.11.3", "@szhsin/react-menu": "~4.2.2", "compare-versions": "~6.1.1", - "dayjs": "~1.11.12", "fast-blurhash": "~1.1.4", "fast-equals": "~5.0.1", "fuse.js": "~7.0.0", @@ -38,7 +36,7 @@ "masto": "~6.8.0", "moize": "~6.1.6", "p-retry": "~6.2.0", - "p-throttle": "~6.1.0", + "p-throttle": "~6.2.0", "preact": "~10.23.2", "punycode": "~2.3.1", "react-hotkeys-hook": "~4.5.0", @@ -61,16 +59,16 @@ "@lingui/vite-plugin": "~4.11.3", "@preact/preset-vite": "~2.9.0", "babel-plugin-macros": "~3.1.0", - "npm-run-all2": "~6.2.2", "postcss": "~8.4.41", "postcss-dark-theme-class": "~1.3.0", - "postcss-preset-env": "~10.0.0", + "postcss-preset-env": "~10.0.1", "twitter-text": "~3.1.0", - "vite": "~5.4.0", + "vite": "~5.4.1", "vite-plugin-generate-file": "~0.2.0", "vite-plugin-html-config": "~1.0.11", "vite-plugin-pwa": "~0.20.1", "vite-plugin-remove-console": "~2.2.0", + "vite-plugin-run": "~0.5.2", "workbox-cacheable-response": "~7.1.0", "workbox-expiration": "~7.1.0", "workbox-routing": "~7.1.0", diff --git a/vite.config.js b/vite.config.js index 1a85a3e1..fc085f66 100644 --- a/vite.config.js +++ b/vite.config.js @@ -10,6 +10,7 @@ import generateFile from 'vite-plugin-generate-file'; import htmlPlugin from 'vite-plugin-html-config'; import { VitePWA } from 'vite-plugin-pwa'; import removeConsole from 'vite-plugin-remove-console'; +import { run } from 'vite-plugin-run'; const allowedEnvPrefixes = ['VITE_', 'PHANPY_']; const { NODE_ENV } = process.env; @@ -61,6 +62,16 @@ export default defineConfig({ }, }), lingui(), + run({ + silent: false, + input: [ + { + name: 'messages:extract:clean', + run: ['npm', 'run', 'messages:extract:clean'], + pattern: 'src/**/*.{js,jsx,ts,tsx}', + }, + ], + }), splitVendorChunkPlugin(), removeConsole({ includes: ['log', 'debug', 'info', 'warn', 'error'],