diff --git a/package-lock.json b/package-lock.json index 83268dfa..eddb0bc6 100644 --- a/package-lock.json +++ b/package-lock.json @@ -31,23 +31,23 @@ "@radix-ui/react-toggle": "^1.1.18", "@radix-ui/react-toggle-group": "^1.1.19", "@radix-ui/react-tooltip": "^1.2.16", - "@tanstack/react-virtual": "^3.14.10", - "@upstash/redis": "^1.38.3", + "@tanstack/react-virtual": "^3.14.11", + "@upstash/redis": "^1.38.4", "class-variance-authority": "^0.7.1", "clsx": "^2.1.1", "cmdk": "^1.1.1", "defuddle": "^0.19.3", "dexie": "^4.4.5", - "dompurify": "^3.4.14", + "dompurify": "^3.4.15", "feedsmith": "^2.9.6", "hash-wasm": "^4.12.0", - "hono": "^4.13.5", - "lucide-react": "^1.39.0", - "marked": "^18.0.11", + "hono": "^4.13.7", + "lucide-react": "^1.43.0", + "marked": "^18.0.12", "next-themes": "^0.4.6", "react": "^19.2.8", "react-dom": "^19.2.8", - "react-resizable-panels": "^4.12.3", + "react-resizable-panels": "^4.12.4", "react-router": "^8.3.1", "sonner": "^2.0.8", "stripe": "^22.6.1", @@ -57,24 +57,24 @@ "zustand": "^5.0.15" }, "devDependencies": { - "@playwright/test": "^1.62.1", + "@playwright/test": "^1.63.0", "@tailwindcss/typography": "^0.5.20", "@tailwindcss/vite": "^4.3.3", "@testing-library/jest-dom": "^7.0.1", "@testing-library/react": "^16.3.3", "@testing-library/user-event": "^14.6.7", - "@types/chrome": "^0.2.8", - "@types/node": "^26.4.1", + "@types/chrome": "^0.2.9", + "@types/node": "^26.5.0", "@types/react": "^19.2.18", - "@types/react-dom": "^19.2.5", + "@types/react-dom": "^19.2.7", "@vitejs/plugin-react": "^6.1.1", "@vitest/coverage-v8": "^4.1.11", "fake-indexeddb": "^6.2.5", - "happy-dom": "^20.13.2", + "happy-dom": "^20.14.0", "husky": "^9.1.7", - "lint-staged": "^17.4.1", + "lint-staged": "^17.5.0", "rollup-plugin-visualizer": "^7.1.1", - "shadcn": "^4.20.0", + "shadcn": "^4.21.0", "tailwindcss": "^4.1.18", "tw-animate-css": "^1.4.0", "typescript": "^7.0.2", @@ -1414,13 +1414,13 @@ } }, "node_modules/@playwright/test": { - "version": "1.62.1", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.62.1.tgz", - "integrity": "sha512-DTcUc8qii+cpHvtOwggMtBRMjKZHXYWdw8syRYu2vtzuq4Wxphqq4NfCs5Zt44L6mA8rfDfj+PHnxFc/FeK6mQ==", + "version": "1.63.0", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.63.0.tgz", + "integrity": "sha512-oxMK4vllB9RK5NQ2l1pq1IfOf2AvnEuj/vYGDj0H2nMtmtZpKtCwt/l00GEO6xjGfpBNAvjovvYdCm50dRQkpQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "playwright": "1.62.1" + "playwright": "1.63.0" }, "bin": { "playwright": "cli.js" @@ -3048,12 +3048,12 @@ } }, "node_modules/@tanstack/react-virtual": { - "version": "3.14.10", - "resolved": "https://registry.npmjs.org/@tanstack/react-virtual/-/react-virtual-3.14.10.tgz", - "integrity": "sha512-SRyoUbdFMRHuYXMijV5H4ZarQWpXkj3iANq8OFre+pybeVap8ZJjZ3Nz9bVjx4d8PfobVUQUdKyyyHYk3E+djw==", + "version": "3.14.11", + "resolved": "https://registry.npmjs.org/@tanstack/react-virtual/-/react-virtual-3.14.11.tgz", + "integrity": "sha512-SStWf8bYdTgAquYqG4Pi2+d1XimQKoCIJ94H3jsm0D6UA0yqffvWuvUzrrQ4idewFWq8BSPpahnmLVosJIAs6g==", "license": "MIT", "dependencies": { - "@tanstack/virtual-core": "3.17.8" + "@tanstack/virtual-core": "3.17.9" }, "funding": { "type": "github", @@ -3065,9 +3065,9 @@ } }, "node_modules/@tanstack/virtual-core": { - "version": "3.17.8", - "resolved": "https://registry.npmjs.org/@tanstack/virtual-core/-/virtual-core-3.17.8.tgz", - "integrity": "sha512-BfEvehNpOT75r5Ksc5xW6NZuXujTfb7nlSEyVu4XHG3gdxNg1KqXruWbDewXOUaUYIo4oRbSfkjIajz4MAT8tA==", + "version": "3.17.9", + "resolved": "https://registry.npmjs.org/@tanstack/virtual-core/-/virtual-core-3.17.9.tgz", + "integrity": "sha512-M8Bzy7CCMvUjRiuoHVH9mRjyUVczRs8v8RcUEphLFGc445ZP4KQ15Y1sLqhQqJi/HgGJrxfCHnEnIX0x9mVrBg==", "license": "MIT", "funding": { "type": "github", @@ -3205,9 +3205,9 @@ } }, "node_modules/@types/chrome": { - "version": "0.2.8", - "resolved": "https://registry.npmjs.org/@types/chrome/-/chrome-0.2.8.tgz", - "integrity": "sha512-dznDYMiJUyuc7b+78PxnWhaGOonmbX/OmcWu7NE42sg/yTLJMYnJ7Uah40SLPNFiCh8reqcthk7vOva2+MSvzw==", + "version": "0.2.9", + "resolved": "https://registry.npmjs.org/@types/chrome/-/chrome-0.2.9.tgz", + "integrity": "sha512-6rXrDPkkWv4D2Q23HqT+iED4voODU5CpOSc2VFgKyecSFItuEsIBvz9CY6jUQ3dd+Q7zo1bnCE9pKRMtkYut5g==", "dev": true, "license": "MIT", "dependencies": { @@ -3254,13 +3254,13 @@ "license": "MIT" }, "node_modules/@types/node": { - "version": "26.4.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-26.4.1.tgz", - "integrity": "sha512-k97ENvZWtvA6yqz5/FS6a7duDgOPEeOQOc2iKS/nY6mX6qJUKtLnWzQS+Xj6tXweyj6ZcTAK2Qecetnvi9nCLA==", + "version": "26.5.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-26.5.0.tgz", + "integrity": "sha512-dVSGpriSoCgz8WnDNTuSSuSv1PC/ALXihO4ulRZt7Md8k9mlbdin3lGOcDE8SnWOgf513ByWlXd7BK4azmyg/A==", "devOptional": true, "license": "MIT", "dependencies": { - "undici-types": "~8.3.0" + "undici-types": "~8.9.0" } }, "node_modules/@types/react": { @@ -3274,9 +3274,9 @@ } }, "node_modules/@types/react-dom": { - "version": "19.2.5", - "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-19.2.5.tgz", - "integrity": "sha512-fMPwH9v7r/pp43yUd2/Mbiex5KouJwwR3dzHkhLREUC6764VyDsqxhAxv6OFEYR1RhjOyD1naqba8ECDBe7ZQg==", + "version": "19.2.7", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-19.2.7.tgz", + "integrity": "sha512-I8bPpDLcHBv1qiIiXDCy71Rt8eQDKJP0sMSWJphDdAcdqiJ1sGpZamavoEIRZmYzjia9LuEb2HlYdDpmoENpvQ==", "devOptional": true, "license": "MIT", "peerDependencies": { @@ -3655,9 +3655,9 @@ } }, "node_modules/@upstash/redis": { - "version": "1.38.3", - "resolved": "https://registry.npmjs.org/@upstash/redis/-/redis-1.38.3.tgz", - "integrity": "sha512-vtS0BonQHU6kDSWvHTISh+LOuLIEk+jeMXebv20CDJ/aHGOG085SGa8OpI+I+Ow8WgPFhqH23XG8kQ2LXXRnag==", + "version": "1.38.4", + "resolved": "https://registry.npmjs.org/@upstash/redis/-/redis-1.38.4.tgz", + "integrity": "sha512-ZX69mKReun/yieyHYLoBg0eSiF6hjCQjd8zUKkJ5eCHehDV6P8S8oZOHxGSfkH1spfOhGZk0EGerBrfUsXow8g==", "license": "MIT", "dependencies": { "uncrypto": "^0.1.3" @@ -4425,6 +4425,19 @@ "react-dom": "^18 || ^19 || ^19.0.0-rc" } }, + "node_modules/cn": { + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/cn/-/cn-0.2.6.tgz", + "integrity": "sha512-+i4L0zUGgRcEnhsxueVrP7iBGxBx5iD0WOTYg1MwFEu2ZyCmH5Ov2V1cul2Ht5UchRQQgftCf4be/RxspuW6QQ==", + "dev": true, + "license": "MIT", + "bin": { + "cn": "bin/cn.mjs" + }, + "engines": { + "node": ">=20" + } + }, "node_modules/code-block-writer": { "version": "13.0.3", "resolved": "https://registry.npmjs.org/code-block-writer/-/code-block-writer-13.0.3.tgz", @@ -4834,9 +4847,9 @@ } }, "node_modules/dompurify": { - "version": "3.4.14", - "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.4.14.tgz", - "integrity": "sha512-dVoH9z+MY+C9IilgGCk3YfFqjLi3fChm2OiKJMzh6axrJ5qwxqWaZamgmHrpv22CN/KdbZJuGEGgfQoL00LTdg==", + "version": "3.4.15", + "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.4.15.tgz", + "integrity": "sha512-EUBjM+B+lkDE41iE82DDSCfkoPGfXx8IxFxPMjNzm/Uk4xDet77rTN9wqlxlVg71kK7XGuUMv6wUxJUwwv+Xyw==", "license": "(MPL-2.0 OR Apache-2.0)", "optionalDependencies": { "@types/trusted-types": "^2.0.7" @@ -5445,21 +5458,6 @@ "node": ">=14.14" } }, - "node_modules/fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "dev": true, - "hasInstallScript": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, "node_modules/function-bind": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", @@ -5618,9 +5616,9 @@ "license": "ISC" }, "node_modules/happy-dom": { - "version": "20.13.2", - "resolved": "https://registry.npmjs.org/happy-dom/-/happy-dom-20.13.2.tgz", - "integrity": "sha512-VC9HoEaT3Jf3K/1g/GjMYGAZCCg+ULgGVcXJlAeSzdTj8mIoPJRp14KVclP5gpUcF/kauuaVB2ri2/WxXbl4vg==", + "version": "20.14.0", + "resolved": "https://registry.npmjs.org/happy-dom/-/happy-dom-20.14.0.tgz", + "integrity": "sha512-4bRh1KzRvKDnFNTlLhzT1RZTpkKhQbQDl9j+7GXszWsvuspYdo29k6OHRf4PwiM6oLb8r/pMWeYiJjkfod5AvQ==", "dev": true, "license": "MIT", "dependencies": { @@ -5679,9 +5677,9 @@ } }, "node_modules/hono": { - "version": "4.13.5", - "resolved": "https://registry.npmjs.org/hono/-/hono-4.13.5.tgz", - "integrity": "sha512-O6+/eCYRkzzzy0rPWwKLiGBR1nFuUPZynnwjxN1MBA62NNqbT0wQEzQyK2gSO5yDIDB336sXQleAhOHrzlYyKw==", + "version": "4.13.7", + "resolved": "https://registry.npmjs.org/hono/-/hono-4.13.7.tgz", + "integrity": "sha512-c8/gF9ac8Y78/agExVocyLevgR+JlpNB444Py0FSX8pJoPdYUfUzRcXtYEYGwt6l19qIlVZPN5Mfsw9jFShmQQ==", "license": "MIT", "engines": { "node": ">=16.9.0" @@ -6541,15 +6539,15 @@ "optional": true }, "node_modules/lint-staged": { - "version": "17.4.1", - "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-17.4.1.tgz", - "integrity": "sha512-FmJeudcalbSfg1du+JCfvi5vS6Qt08KgbfLWiHinbef+2JJwUZwAWVoaO1AcJVUTWPfk0t30PMQNwPAeCzYQ+Q==", + "version": "17.5.0", + "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-17.5.0.tgz", + "integrity": "sha512-ah2qsNtvKP1+Ak4rAvEEIvcXDLjjbr/xmxCvlequxqEOFYk0qINcZcRxD3Ic8wRn7/oQ8+wC9s0DfDrdMVCRFg==", "dev": true, "license": "MIT", "dependencies": { "picomatch": "^4.0.7", "string-argv": "^0.3.2", - "tinyexec": "^1.3.0" + "tinyexec": "^1.3.1" }, "bin": { "lint-staged": "bin/lint-staged.js" @@ -6618,9 +6616,9 @@ } }, "node_modules/lucide-react": { - "version": "1.39.0", - "resolved": "https://registry.npmjs.org/lucide-react/-/lucide-react-1.39.0.tgz", - "integrity": "sha512-y8nXoEwvqqIsF927NBWXODa4bfMrcUeEb/9sgpwFqg0gUjgn3j5Hznk+v7STmPgZ2iQ11JKlbQGdFRuTOwvYkA==", + "version": "1.43.0", + "resolved": "https://registry.npmjs.org/lucide-react/-/lucide-react-1.43.0.tgz", + "integrity": "sha512-ubtnda1fVK5ky0PNEpOmB0wiwhpZUyJiol4K14KCm+QKvuCkfUu54Et/rIjyupJpwiJ5Hg+BLQE86/GEsS+IgQ==", "license": "ISC", "peerDependencies": { "react": "^16.5.1 || ^17.0.0 || ^18.0.0 || ^19.0.0" @@ -6676,9 +6674,9 @@ } }, "node_modules/marked": { - "version": "18.0.11", - "resolved": "https://registry.npmjs.org/marked/-/marked-18.0.11.tgz", - "integrity": "sha512-HnslJfsZkRPBDJRHvVtAaWlZHEpSu7u8LgQuJCELjRKuWR+hpq4A7sLq3p8HaI9ypVoXDXxV34CsQJEe1+J5Aw==", + "version": "18.0.12", + "resolved": "https://registry.npmjs.org/marked/-/marked-18.0.12.tgz", + "integrity": "sha512-LEm4ga2YeI2T3GVHj9b0BaDPPk93LLTHMFeMyQbNIzPxc8vCI0y/scy0ZA6z6lXKyT9j9Nhl/OC6ZYKYGuFScA==", "license": "MIT", "bin": { "marked": "bin/marked.js" @@ -7195,28 +7193,25 @@ } }, "node_modules/playwright": { - "version": "1.62.1", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.62.1.tgz", - "integrity": "sha512-0M+L3LAD8/nm554LOla9Ayx0j0tmFZ0FBcoQ7F1VuVHpM/XpiC8RcDzBQB8W5+hA8L22THxELzeF+2WcUzvcLg==", + "version": "1.63.0", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.63.0.tgz", + "integrity": "sha512-+7ziBLidS4NaNCdt57SUDT+wYmmd5fmiQejUic/kb+YsYSCPyOOE9sebzMjNmQrsnNpDJqd4WHvV/8lfKfUDUg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "playwright-core": "1.62.1" + "playwright-core": "1.63.0" }, "bin": { "playwright": "cli.js" }, "engines": { "node": ">=20" - }, - "optionalDependencies": { - "fsevents": "2.3.2" } }, "node_modules/playwright-core": { - "version": "1.62.1", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.62.1.tgz", - "integrity": "sha512-wPYSwEBJY9GHraISXqyqtx0na0LpO3XEX7jNDhntbex7tzUS7kLnZsOlFruFJB4Hi/rhDMjXGqHewDZ68nYZVw==", + "version": "1.63.0", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.63.0.tgz", + "integrity": "sha512-rYCsBF/M5HjUch52bbtVONEFjv6Xu8sm8h72dNlR5bzIE1fvC/bxgspzkjSfU+MweEMmPM8KJebG6nnyxo5mCg==", "dev": true, "license": "Apache-2.0", "bin": { @@ -7493,9 +7488,9 @@ } }, "node_modules/react-resizable-panels": { - "version": "4.12.3", - "resolved": "https://registry.npmjs.org/react-resizable-panels/-/react-resizable-panels-4.12.3.tgz", - "integrity": "sha512-GHMJWnDXui/3RX4bT+cgBP+N3N2nkwcoZATr/2xLFpqQQe7TlBrE0cGM0dUa9ceT7A90tUrSRsiqgRG+g0/2AA==", + "version": "4.12.4", + "resolved": "https://registry.npmjs.org/react-resizable-panels/-/react-resizable-panels-4.12.4.tgz", + "integrity": "sha512-SOsSj4e9U7vxL15MbgTfl35IO4vxSW4Xb0b1gtJVbRPWv7FOezcgOA00Mi0jP8XqC3y7jOQxpsGs/9zLKHPitA==", "license": "MIT", "peerDependencies": { "react": "^18.0.0 || ^19.0.0", @@ -7884,9 +7879,9 @@ "license": "ISC" }, "node_modules/shadcn": { - "version": "4.20.0", - "resolved": "https://registry.npmjs.org/shadcn/-/shadcn-4.20.0.tgz", - "integrity": "sha512-oC9OXB6uTc9YdgdjvICRcqp1QMp9fue8i9FsFKJylE9D5SAj4IQvYGnGFJuHSedzuyec0KEup6co1skefiKxpQ==", + "version": "4.21.0", + "resolved": "https://registry.npmjs.org/shadcn/-/shadcn-4.21.0.tgz", + "integrity": "sha512-UU2mFNusW8C5rvadKdH69vERYZqUlOOlXBcf0MYhYLdTGP6DPti7X4qovCu+RTfCqsAgq/T+YfE0Vnttxh9aiw==", "dev": true, "license": "MIT", "dependencies": { @@ -7898,6 +7893,7 @@ "@modelcontextprotocol/sdk": "^1.26.0", "@types/validate-npm-package-name": "^4.0.2", "browserslist": "^4.26.2", + "cn": "^0.2.4", "commander": "^14.0.0", "cosmiconfig": "^9.0.0", "dedent": "^1.6.0", @@ -7916,7 +7912,6 @@ "recast": "^0.23.11", "socks": "^2.8.8", "stringify-object": "^5.0.0", - "tailwind-merge": "^3.0.1", "ts-morph": "^26.0.0", "tsconfig-paths": "^4.2.0", "undici": "^7.27.2", @@ -8508,9 +8503,9 @@ "license": "MIT" }, "node_modules/tinyexec": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/tinyexec/-/tinyexec-1.3.0.tgz", - "integrity": "sha512-QKAl9m8gWWGHV8jZcPeym6j+XULi6tOf1mT83WYJ4Lk2ytW/uwAWkrP0uFsdoYMdueVJ0qs26wZ+23xeB4ibNQ==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/tinyexec/-/tinyexec-1.3.1.tgz", + "integrity": "sha512-GCvB3aoys96IuDFBMcTB46JOR6mdMtAToqwiW8JlWhsoh1mhHi/xn9ss/Dg7N555GiJyEt2qzoG/NHCwM6h1EA==", "dev": true, "license": "MIT", "engines": { @@ -8778,9 +8773,9 @@ } }, "node_modules/undici-types": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-8.3.0.tgz", - "integrity": "sha512-j375ScV60dom+YkPFIfTLcOiPxkN/buHz5GobjLhixFuANaNs3C9l4GmrWqejgXWJ7BbJcFYpTEUkS1Ge8bpZQ==", + "version": "8.9.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-8.9.0.tgz", + "integrity": "sha512-KTDyRTYX8sWmKXAikPHHSyc63CRPETMctyjKFupcC6OBLXT3xsN0e9aF7m+mIXutFWpUXuedtowG7iLOzp0kQg==", "devOptional": true, "license": "MIT" }, diff --git a/package.json b/package.json index ecc5db6d..0a9216ad 100644 --- a/package.json +++ b/package.json @@ -25,24 +25,24 @@ "build:feed": "node scripts/release/build-feed.mjs" }, "devDependencies": { - "@playwright/test": "^1.62.1", + "@playwright/test": "^1.63.0", "@tailwindcss/typography": "^0.5.20", "@tailwindcss/vite": "^4.3.3", "@testing-library/jest-dom": "^7.0.1", "@testing-library/react": "^16.3.3", "@testing-library/user-event": "^14.6.7", - "@types/chrome": "^0.2.8", - "@types/node": "^26.4.1", + "@types/chrome": "^0.2.9", + "@types/node": "^26.5.0", "@types/react": "^19.2.18", - "@types/react-dom": "^19.2.5", + "@types/react-dom": "^19.2.7", "@vitejs/plugin-react": "^6.1.1", "@vitest/coverage-v8": "^4.1.11", "fake-indexeddb": "^6.2.5", - "happy-dom": "^20.13.2", + "happy-dom": "^20.14.0", "husky": "^9.1.7", - "lint-staged": "^17.4.1", + "lint-staged": "^17.5.0", "rollup-plugin-visualizer": "^7.1.1", - "shadcn": "^4.20.0", + "shadcn": "^4.21.0", "tailwindcss": "^4.1.18", "tw-animate-css": "^1.4.0", "typescript": "^7.0.2", @@ -70,23 +70,23 @@ "@radix-ui/react-toggle": "^1.1.18", "@radix-ui/react-toggle-group": "^1.1.19", "@radix-ui/react-tooltip": "^1.2.16", - "@tanstack/react-virtual": "^3.14.10", - "@upstash/redis": "^1.38.3", + "@tanstack/react-virtual": "^3.14.11", + "@upstash/redis": "^1.38.4", "class-variance-authority": "^0.7.1", "clsx": "^2.1.1", "cmdk": "^1.1.1", "defuddle": "^0.19.3", "dexie": "^4.4.5", - "dompurify": "^3.4.14", + "dompurify": "^3.4.15", "feedsmith": "^2.9.6", "hash-wasm": "^4.12.0", - "hono": "^4.13.5", - "lucide-react": "^1.39.0", - "marked": "^18.0.11", + "hono": "^4.13.7", + "lucide-react": "^1.43.0", + "marked": "^18.0.12", "next-themes": "^0.4.6", "react": "^19.2.8", "react-dom": "^19.2.8", - "react-resizable-panels": "^4.12.3", + "react-resizable-panels": "^4.12.4", "react-router": "^8.3.1", "sonner": "^2.0.8", "stripe": "^22.6.1",