{"_id":"@clevertask/kanban-board-ui","_rev":"15-1f5bdf108ea15dbe1ceb1ce00ba0761b","name":"@clevertask/kanban-board-ui","dist-tags":{"latest":"0.0.14"},"versions":{"0.0.0":{"name":"@clevertask/kanban-board-ui","version":"0.0.0","_id":"@clevertask/kanban-board-ui@0.0.0","maintainers":[{"name":"gonzalo-novak","email":"roberto.pinon@proton.me"}],"dist":{"shasum":"cd5cab0fa619ec355702ed70fbb299e0230807c0","tarball":"https://registry.npmjs.org/@clevertask/kanban-board-ui/-/kanban-board-ui-0.0.0.tgz","fileCount":25,"integrity":"sha512-vvs7OGoFnpF2nOYjGiuib2o2eE2YXmiWS9AU0fF2npKasYCtueZlXYEEC2xyQaImJmogJesGf9BfkuDlJL3ByQ==","signatures":[{"sig":"MEQCIEEj6453fBCNndMRZBi4/lKQ5a6IwvqQ/mpWNj2Q1E/HAiBEtHo/Rxsc2vlipIrgQvvLbvpTNAYzNa+Y0ixOcOaP1g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":922740},"main":"./dist/kanban-board-ui.js","type":"module","types":"./dist/index.d.ts","gitHead":"38745af6d30dd728d45c7db3856f8eb034d1d910","scripts":{"dev":"vite","lint":"eslint .","build":"rm -rf dist && tsc -b && vite build","preview":"vite preview","prepublishOnly":"npm run build"},"_npmUser":{"name":"gonzalo-novak","email":"roberto.pinon@proton.me"},"_npmVersion":"10.8.2","description":"A React component for rendering and managing a kanban board with drag-and-drop functionality. This is built on top of the [kanban board Component from the dnd-kit library](https://master--5fc05e08a4a65d0021ae0bf2.chromatic.com/?path=/story/presets-sortabl","directories":{},"_nodeVersion":"22.8.0","dependencies":{"react":"^18.3.1","react-dom":"^18.3.1","classnames":"^2.5.1","@dnd-kit/core":"^6.1.0","@dnd-kit/sortable":"^8.0.0","@dnd-kit/utilities":"^3.2.2","@radix-ui/react-icons":"^1.3.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.4.9","eslint":"^9.13.0","globals":"^15.11.0","@eslint/js":"^9.13.0","typescript":"~5.6.2","@types/node":"^22.9.0","@types/react":"^18.3.11","vite-plugin-dts":"^4.3.0","@types/react-dom":"^18.3.1","typescript-eslint":"^8.10.0","@vitejs/plugin-react-swc":"^3.5.0","eslint-plugin-react-hooks":"^5.0.0","eslint-plugin-react-refresh":"^0.4.13"},"_npmOperationalInternal":{"tmp":"tmp/kanban-board-ui_0.0.0_1731046023499_0.3795244615201916","host":"s3://npm-registry-packages"}},"0.0.1":{"name":"@clevertask/kanban-board-ui","version":"0.0.1","author":{"name":"CleverTask"},"license":"MIT","_id":"@clevertask/kanban-board-ui@0.0.1","maintainers":[{"name":"gonzalo-novak","email":"roberto.pinon@proton.me"}],"dist":{"shasum":"73b1be4105cfe0f017bc0dd5b349b9e16341f7d6","tarball":"https://registry.npmjs.org/@clevertask/kanban-board-ui/-/kanban-board-ui-0.0.1.tgz","fileCount":25,"integrity":"sha512-Py1xL69pu8jihjgdQbWT0pJ5grP9HcjL+79BY1ZPGwKJRwq7PD2Eg20OUIpFQlkO26MJ8FjLvWMjO2vUPjFdtQ==","signatures":[{"sig":"MEUCIGKQSuNktfP/rgVtHab5WCoSUxiKS5ExpAxnIGv8TNoNAiEAmJIo0HUHUEYqm7iGPxT6rHq05pBc/KHc45s3id6PbQc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":927363},"main":"./dist/kanban-board-ui.js","type":"module","types":"./dist/index.d.ts","gitHead":"46ea994ad65299277a98632a1434ace2c0c52f81","scripts":{"dev":"vite","lint":"eslint .","build":"rm -rf dist && tsc -b && vite build","preview":"vite preview","prepublishOnly":"npm run build"},"_npmUser":{"name":"gonzalo-novak","email":"roberto.pinon@proton.me"},"_npmVersion":"10.9.2","description":"A React component for rendering and managing a kanban board with drag-and-drop functionality. This is built on top of the [kanban board Component from the dnd-kit library](https://master--5fc05e08a4a65d0021ae0bf2.chromatic.com/?path=/story/presets-sortabl","directories":{},"_nodeVersion":"22.14.0","dependencies":{"react":"^19.1.0","react-dom":"^19.1.0","classnames":"^2.5.1","@dnd-kit/core":"^6.3.1","@dnd-kit/sortable":"^10.0.0","@dnd-kit/utilities":"^3.2.2","@radix-ui/react-icons":"^1.3.2"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.2.3","eslint":"^9.23.0","globals":"^15.15.0","@eslint/js":"^9.23.0","typescript":"^5.8.2","@types/node":"^22.13.14","@types/react":"^18.3.20","vite-plugin-dts":"^4.5.3","@types/react-dom":"^18.3.5","typescript-eslint":"^8.28.0","@vitejs/plugin-react-swc":"^3.8.1","eslint-plugin-react-hooks":"^5.2.0","eslint-plugin-react-refresh":"^0.4.19"},"_npmOperationalInternal":{"tmp":"tmp/kanban-board-ui_0.0.1_1743290838712_0.21176666976921443","host":"s3://npm-registry-packages-npm-production"}},"0.0.2":{"name":"@clevertask/kanban-board-ui","version":"0.0.2","author":{"name":"CleverTask"},"license":"MIT","_id":"@clevertask/kanban-board-ui@0.0.2","maintainers":[{"name":"gonzalo-novak","email":"roberto.pinon@proton.me"}],"dist":{"shasum":"4151fea454f08b530c012f01e9d8d56630319ec6","tarball":"https://registry.npmjs.org/@clevertask/kanban-board-ui/-/kanban-board-ui-0.0.2.tgz","fileCount":25,"integrity":"sha512-BfFMka9tUG+zw3UruFg8g3yFTPO7JPMTiu5PtBEzMQKiPeID0MjZAwnLLFOD3ifP1oqVvVGY8eOtsAVreXidjw==","signatures":[{"sig":"MEUCIQCNjvUuXAUNiUj+HiP8mYqUO15letby4En9U3neqTr3/wIgfjgLVmxShxyvD45UKB1vuNvWSqF0ZePiL9TmusbB3lg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":927362},"main":"./dist/kanban-board-ui.js","type":"module","types":"./dist/index.d.ts","gitHead":"5fcf5fa5642e693a99b7a00a651f8c059588df65","scripts":{"dev":"vite","lint":"eslint .","build":"rm -rf dist && tsc -b && vite build","preview":"vite preview","prepublishOnly":"npm run build"},"_npmUser":{"name":"gonzalo-novak","email":"roberto.pinon@proton.me"},"_npmVersion":"10.9.2","description":"A React component for rendering and managing a kanban board with drag-and-drop functionality. This is built on top of the [kanban board Component from the dnd-kit library](https://master--5fc05e08a4a65d0021ae0bf2.chromatic.com/?path=/story/presets-sortabl","directories":{},"_nodeVersion":"22.14.0","dependencies":{"react":"^19.1.0","react-dom":"^19.1.0","classnames":"^2.5.1","@dnd-kit/core":"^6.3.1","@dnd-kit/sortable":"^10.0.0","@dnd-kit/utilities":"^3.2.2","@radix-ui/react-icons":"^1.3.2"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.2.4","eslint":"^9.23.0","globals":"^15.15.0","@eslint/js":"^9.23.0","typescript":"^5.8.2","@types/node":"^22.14.0","@types/react":"^18.3.20","vite-plugin-dts":"^4.5.3","@types/react-dom":"^18.3.6","typescript-eslint":"^8.29.0","@vitejs/plugin-react-swc":"^3.8.1","eslint-plugin-react-hooks":"^5.2.0","eslint-plugin-react-refresh":"^0.4.19"},"_npmOperationalInternal":{"tmp":"tmp/kanban-board-ui_0.0.2_1743665859408_0.10310455230694782","host":"s3://npm-registry-packages-npm-production"}},"0.0.3":{"name":"@clevertask/kanban-board-ui","version":"0.0.3","author":{"name":"CleverTask"},"license":"MIT","_id":"@clevertask/kanban-board-ui@0.0.3","maintainers":[{"name":"gonzalo-novak","email":"roberto.pinon@proton.me"}],"dist":{"shasum":"1d8a069851869e51f01c877737e41fdcadf2c98b","tarball":"https://registry.npmjs.org/@clevertask/kanban-board-ui/-/kanban-board-ui-0.0.3.tgz","fileCount":25,"integrity":"sha512-O7ToUMWzA6o4QP/9qqL68xgdXR6GYEkasV34pYQyAymxh5HXdPcPIFsEm620B+f/0xWZUnsFn3AE8pSJW0kBKQ==","signatures":[{"sig":"MEQCIBHLwsc/CRe1g6bImRcib05bDLw0q28orm6ZZk0xv84bAiBpqyKrRjKd14Eb8zNJIMzZHDGU2VvPRXVbJUGb/kHP9A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":932676},"main":"./dist/kanban-board-ui.js","type":"module","types":"./dist/index.d.ts","gitHead":"9cdce7b66fd4c55f80d39cfb37e125e189d30dd0","scripts":{"dev":"vite","lint":"eslint .","build":"rm -rf dist && vite build","preview":"vite preview","prepublishOnly":"npm run build"},"_npmUser":{"name":"gonzalo-novak","email":"roberto.pinon@proton.me"},"_npmVersion":"10.9.2","description":"A React component for rendering and managing a kanban board with drag-and-drop functionality. Built on top of [dnd-kit](https://github.com/clauderic/dnd-kit), this component offers a flexible and extensible API for building modern kanban boards.","directories":{},"_nodeVersion":"22.14.0","dependencies":{"react":"^19.1.0","react-dom":"^19.1.0","classnames":"^2.5.1","@dnd-kit/core":"^6.3.1","@dnd-kit/sortable":"^10.0.0","@dnd-kit/utilities":"^3.2.2","@radix-ui/react-icons":"^1.3.2"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.3.2","eslint":"^9.25.1","globals":"^15.15.0","@eslint/js":"^9.23.0","typescript":"^5.8.3","@types/node":"^22.14.1","@types/react":"^18.3.20","vite-plugin-dts":"^4.5.3","@types/react-dom":"^18.3.6","typescript-eslint":"^8.31.0","@vitejs/plugin-react-swc":"^3.9.0","eslint-plugin-react-hooks":"^5.2.0","eslint-plugin-react-refresh":"^0.4.20"},"_npmOperationalInternal":{"tmp":"tmp/kanban-board-ui_0.0.3_1745394972338_0.9844560826969158","host":"s3://npm-registry-packages-npm-production"}},"0.0.4":{"name":"@clevertask/kanban-board-ui","version":"0.0.4","author":{"name":"CleverTask"},"license":"MIT","_id":"@clevertask/kanban-board-ui@0.0.4","maintainers":[{"name":"gonzalo-novak","email":"roberto.pinon@proton.me"}],"homepage":"https://github.com/clevertask/kanban-board-ui#readme","bugs":{"url":"https://github.com/clevertask/kanban-board-ui/issues"},"dist":{"shasum":"0854d8cc3512dcd4ba0a804e30f82ab701fba64a","tarball":"https://registry.npmjs.org/@clevertask/kanban-board-ui/-/kanban-board-ui-0.0.4.tgz","fileCount":25,"integrity":"sha512-vEGeczs4Fl/GM/9TVuEcjAuwKIkpCWvu3Hz0M0QzyG9tQqPV7zCpWZopeZYCu8K3dJLq+3cK8exF9U0HuCVqCw==","signatures":[{"sig":"MEUCIQCCQWMR5Z4YQbST8dWE/4sbrNZfiqya4QTDiyPaGVUITwIgUOWjJCzYDxP0wh6n5JRcKGNtXJI5sArNmPIj5RyQJWE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@clevertask%2fkanban-board-ui@0.0.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":935642},"main":"./dist/kanban-board-ui.js","type":"module","_from":"file:clevertask-kanban-board-ui-0.0.4.tgz","types":"./dist/index.d.ts","scripts":{"dev":"vite","lint":"eslint .","build":"rm -rf dist && vite build","preview":"vite preview"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7d3f060d-2b41-411a-bc12-9cb5d6fb1afa"}},"_resolved":"/tmp/e5f42d81ae4357afac533db8004d67ca/clevertask-kanban-board-ui-0.0.4.tgz","_integrity":"sha512-vEGeczs4Fl/GM/9TVuEcjAuwKIkpCWvu3Hz0M0QzyG9tQqPV7zCpWZopeZYCu8K3dJLq+3cK8exF9U0HuCVqCw==","repository":{"url":"git+https://github.com/clevertask/kanban-board-ui.git","type":"git"},"_npmVersion":"11.6.2","description":"A React component for rendering and managing a kanban board with drag-and-drop functionality. Built on top of [dnd-kit](https://github.com/clauderic/dnd-kit), this component offers a flexible and extensible API for building modern kanban boards.","directories":{},"_nodeVersion":"24.13.0","dependencies":{"react":"^19.2.4","react-dom":"^19.2.4","classnames":"^2.5.1","@dnd-kit/core":"^6.3.1","@dnd-kit/sortable":"^10.0.0","@dnd-kit/utilities":"^3.2.2","@radix-ui/react-icons":"^1.3.2"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.4.1","eslint":"^9.39.2","globals":"^15.15.0","@eslint/js":"^9.39.2","typescript":"^5.9.3","@types/node":"^22.19.7","@types/react":"^18.3.27","vite-plugin-dts":"^4.5.4","@types/react-dom":"^18.3.7","typescript-eslint":"^8.54.0","@vitejs/plugin-react-swc":"^3.11.0","eslint-plugin-react-hooks":"^5.2.0","eslint-plugin-react-refresh":"^0.4.26"},"_npmOperationalInternal":{"tmp":"tmp/kanban-board-ui_0.0.4_1770078231240_0.29924104354243286","host":"s3://npm-registry-packages-npm-production"}},"0.0.5":{"name":"@clevertask/kanban-board-ui","version":"0.0.5","author":{"name":"CleverTask"},"license":"MIT","_id":"@clevertask/kanban-board-ui@0.0.5","maintainers":[{"name":"gonzalo-novak","email":"roberto.pinon@proton.me"}],"homepage":"https://github.com/clevertask/kanban-board-ui#readme","bugs":{"url":"https://github.com/clevertask/kanban-board-ui/issues"},"dist":{"shasum":"8b7ccf3824902a9ddc33014a4f5b44691a7b5bf2","tarball":"https://registry.npmjs.org/@clevertask/kanban-board-ui/-/kanban-board-ui-0.0.5.tgz","fileCount":40,"integrity":"sha512-EnKBuPII4dTjIXxYXjtwTUxmLsYhEHidczWbvTI5NFwyzcOiZxavdw5/JLB3IpPUEc2oSRsHyqyXjL5fsiik3A==","signatures":[{"sig":"MEUCIHKp81eVJyd2mxN9IjMwNEsPXw/FyWZDT4EP1j9L/YpeAiEAk/FCUNOoE79j/1Bm3ooV3PW9Xor7PKeX+7VDb5UW+XU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@clevertask%2fkanban-board-ui@0.0.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":965879},"main":"./dist/kanban-board-ui.js","type":"module","_from":"file:clevertask-kanban-board-ui-0.0.5.tgz","types":"./dist/index.d.ts","scripts":{"dev":"vite","lint":"eslint .","build":"rm -rf dist && vite build && tsc -p tsconfig.types.json --noCheck","preview":"vite preview"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7d3f060d-2b41-411a-bc12-9cb5d6fb1afa"}},"_resolved":"/tmp/2e032e416dac36097c48ac861e722fcd/clevertask-kanban-board-ui-0.0.5.tgz","_integrity":"sha512-EnKBuPII4dTjIXxYXjtwTUxmLsYhEHidczWbvTI5NFwyzcOiZxavdw5/JLB3IpPUEc2oSRsHyqyXjL5fsiik3A==","repository":{"url":"git+https://github.com/clevertask/kanban-board-ui.git","type":"git"},"_npmVersion":"11.9.0","description":"A React component for rendering and managing a kanban board with drag-and-drop functionality. Built on top of [dnd-kit](https://github.com/clauderic/dnd-kit), this component offers a flexible and extensible API for building modern kanban boards.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"classnames":"^2.5.1","@dnd-kit/core":"^6.3.1","@dnd-kit/sortable":"^10.0.0","@dnd-kit/utilities":"^3.2.2","@radix-ui/react-icons":"^1.3.2"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^7.3.1","eslint":"^9.39.4","globals":"^17.4.0","@eslint/js":"^9.39.4","typescript":"~5.9.3","@types/node":"^24.12.0","@types/react":"^19.2.14","@types/react-dom":"^19.2.3","typescript-eslint":"^8.56.1","@vitejs/plugin-react":"^5.1.4","eslint-plugin-react-hooks":"^7.0.1","eslint-plugin-react-refresh":"^0.5.2"},"peerDependencies":{"react":">=18.3.1 <20.0.0","react-dom":">=18.3.1 <20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/kanban-board-ui_0.0.5_1773127544671_0.9098139953334126","host":"s3://npm-registry-packages-npm-production"}},"0.0.6":{"name":"@clevertask/kanban-board-ui","version":"0.0.6","author":{"name":"CleverTask"},"license":"MIT","_id":"@clevertask/kanban-board-ui@0.0.6","maintainers":[{"name":"gonzalo-novak","email":"roberto.pinon@proton.me"}],"homepage":"https://github.com/clevertask/kanban-board-ui#readme","bugs":{"url":"https://github.com/clevertask/kanban-board-ui/issues"},"dist":{"shasum":"378d121080d7619cddbe111c4088bd9f1fa08144","tarball":"https://registry.npmjs.org/@clevertask/kanban-board-ui/-/kanban-board-ui-0.0.6.tgz","fileCount":40,"integrity":"sha512-tF5RTrbu3r/ZrGy2dqaR65wjaFBfJeRpGNWzvitn0UkeS+Xj1XxwCOakPVTprlZj9I1jp2VjbW6+rq1OGO8inA==","signatures":[{"sig":"MEUCIEG3mr9b3EJweiDJhyIsNrH/lRxBApm/rZJQlHi1FxGVAiEA/6u3ZzhSCImBjrVtvxi0/NoLLd8CzSyZLnouqgYDkCU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@clevertask%2fkanban-board-ui@0.0.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":975575},"main":"./dist/kanban-board-ui.js","type":"module","_from":"file:clevertask-kanban-board-ui-0.0.6.tgz","types":"./dist/index.d.ts","scripts":{"dev":"vite","fmt":"oxfmt","lint":"eslint .","build":"rm -rf dist && vite build && tsc -p tsconfig.types.json --noCheck","preview":"vite preview","fmt:check":"oxfmt --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7d3f060d-2b41-411a-bc12-9cb5d6fb1afa"}},"_resolved":"/tmp/f96dcf021fa1f808f1034399282f92ea/clevertask-kanban-board-ui-0.0.6.tgz","_integrity":"sha512-tF5RTrbu3r/ZrGy2dqaR65wjaFBfJeRpGNWzvitn0UkeS+Xj1XxwCOakPVTprlZj9I1jp2VjbW6+rq1OGO8inA==","repository":{"url":"git+https://github.com/clevertask/kanban-board-ui.git","type":"git"},"_npmVersion":"11.9.0","description":"A React component for rendering and managing a kanban board with drag-and-drop functionality. Built on top of [dnd-kit](https://github.com/clauderic/dnd-kit), this component offers a flexible and extensible API for building modern kanban boards.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"classnames":"^2.5.1","@dnd-kit/core":"^6.3.1","@dnd-kit/sortable":"^10.0.0","@dnd-kit/utilities":"^3.2.2","@radix-ui/react-icons":"^1.3.2"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^7.3.1","oxfmt":"^0.37.0","eslint":"^9.39.4","globals":"^17.4.0","@eslint/js":"^9.39.4","typescript":"~5.9.3","@types/node":"^24.12.0","@types/react":"^19.2.14","@types/react-dom":"^19.2.3","typescript-eslint":"^8.57.1","@vitejs/plugin-react":"^5.2.0","eslint-plugin-react-hooks":"^7.0.1","eslint-plugin-react-refresh":"^0.5.2"},"peerDependencies":{"react":">=18.3.1 <20.0.0","react-dom":">=18.3.1 <20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/kanban-board-ui_0.0.6_1773966597389_0.9819695123312575","host":"s3://npm-registry-packages-npm-production"}},"0.0.7":{"name":"@clevertask/kanban-board-ui","version":"0.0.7","author":{"name":"CleverTask"},"license":"MIT","_id":"@clevertask/kanban-board-ui@0.0.7","maintainers":[{"name":"gonzalo-novak","email":"roberto.pinon@proton.me"}],"homepage":"https://github.com/clevertask/kanban-board-ui#readme","bugs":{"url":"https://github.com/clevertask/kanban-board-ui/issues"},"dist":{"shasum":"b7d9d7ec39e73106ce8f4ac981539378ab1cce6e","tarball":"https://registry.npmjs.org/@clevertask/kanban-board-ui/-/kanban-board-ui-0.0.7.tgz","fileCount":40,"integrity":"sha512-YYuSeDVvr4cwDpCdeOgeOUa0jhC5oGmPXVWSNsURxk/rpYWVQ+LmLcnoAV5EBJjHEAC15vSpYJ3zWcZsK822vQ==","signatures":[{"sig":"MEQCIH6nKS9z6EdPTnsZimSIT3nKv8kxsmnl6FEhB8gCgYMaAiAvx1s+9yrdkg9kB9TiBtT/nW9nELZbOhTzOWRrH6IgTA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@clevertask%2fkanban-board-ui@0.0.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":918326},"main":"./dist/kanban-board-ui.js","type":"module","_from":"file:clevertask-kanban-board-ui-0.0.7.tgz","types":"./dist/index.d.ts","scripts":{"dev":"vite","fmt":"oxfmt","lint":"eslint .","build":"rm -rf dist && vite build && tsc -p tsconfig.types.json --noCheck","preview":"vite preview","fmt:check":"oxfmt --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7d3f060d-2b41-411a-bc12-9cb5d6fb1afa"}},"_resolved":"/tmp/68be4a01c258c2ba8afb2b0271bbc75c/clevertask-kanban-board-ui-0.0.7.tgz","_integrity":"sha512-YYuSeDVvr4cwDpCdeOgeOUa0jhC5oGmPXVWSNsURxk/rpYWVQ+LmLcnoAV5EBJjHEAC15vSpYJ3zWcZsK822vQ==","repository":{"url":"git+https://github.com/clevertask/kanban-board-ui.git","type":"git"},"_npmVersion":"11.11.0","description":"A React component for rendering and managing a kanban board with drag-and-drop functionality. Built on top of [dnd-kit](https://github.com/clauderic/dnd-kit), this component offers a flexible and extensible API for building modern kanban boards.","directories":{},"_nodeVersion":"24.14.1","dependencies":{"classnames":"^2.5.1","@dnd-kit/core":"^6.3.1","@dnd-kit/sortable":"^10.0.0","@dnd-kit/utilities":"^3.2.2","@radix-ui/react-icons":"^1.3.2"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^8.0.8","oxfmt":"^0.42.0","eslint":"^10.2.0","globals":"^17.5.0","@eslint/js":"^10.0.1","typescript":"~6.0.2","@types/node":"^25.6.0","@types/react":"^19.2.14","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.2","@vitejs/plugin-react":"^6.0.1","eslint-plugin-react-hooks":"^7.0.1","eslint-plugin-react-refresh":"^0.5.2"},"peerDependencies":{"react":">=18.3.1 <20.0.0","react-dom":">=18.3.1 <20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/kanban-board-ui_0.0.7_1776232705905_0.6488944585450946","host":"s3://npm-registry-packages-npm-production"}},"0.0.8":{"name":"@clevertask/kanban-board-ui","version":"0.0.8","author":{"name":"CleverTask"},"license":"MIT","_id":"@clevertask/kanban-board-ui@0.0.8","maintainers":[{"name":"gonzalo-novak","email":"roberto.pinon@proton.me"}],"homepage":"https://github.com/clevertask/kanban-board-ui#readme","bugs":{"url":"https://github.com/clevertask/kanban-board-ui/issues"},"dist":{"shasum":"d511046bb51b156496f8ab6c3d88c41ba19ca793","tarball":"https://registry.npmjs.org/@clevertask/kanban-board-ui/-/kanban-board-ui-0.0.8.tgz","fileCount":40,"integrity":"sha512-4zEs/6jrujSgLa8lkHZWtek8wHwdZFl2P6eLJv2nznO6LGtmbKReGR0p7Uxoc4Lx1uLkZNFYre/0cmV4KmQQcg==","signatures":[{"sig":"MEQCID57gHMZrkfherEwZyVBqiavYFgCJ+4ICD1HBogmkPqKAiBIiqRrS7fILorAvIqOl2UYelNSshjhLYZ+jDE0OxhlZA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@clevertask%2fkanban-board-ui@0.0.8","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":919873},"main":"./dist/kanban-board-ui.js","type":"module","_from":"file:clevertask-kanban-board-ui-0.0.8.tgz","types":"./dist/index.d.ts","scripts":{"dev":"vite","fmt":"oxfmt","lint":"eslint .","build":"rm -rf dist && vite build && tsc -p tsconfig.types.json --noCheck","preview":"vite preview","fmt:check":"oxfmt --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7d3f060d-2b41-411a-bc12-9cb5d6fb1afa"}},"_resolved":"/tmp/f2f15b0790bdab9d227113d398cf4991/clevertask-kanban-board-ui-0.0.8.tgz","_integrity":"sha512-4zEs/6jrujSgLa8lkHZWtek8wHwdZFl2P6eLJv2nznO6LGtmbKReGR0p7Uxoc4Lx1uLkZNFYre/0cmV4KmQQcg==","repository":{"url":"git+https://github.com/clevertask/kanban-board-ui.git","type":"git"},"_npmVersion":"11.11.0","description":"A React component for rendering and managing a kanban board with drag-and-drop functionality. Built on top of [dnd-kit](https://github.com/clauderic/dnd-kit), this component offers a flexible and extensible API for building modern kanban boards.","directories":{},"_nodeVersion":"24.14.1","dependencies":{"classnames":"^2.5.1","@dnd-kit/core":"^6.3.1","@dnd-kit/sortable":"^10.0.0","@dnd-kit/utilities":"^3.2.2","@radix-ui/react-icons":"^1.3.2"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^8.0.8","oxfmt":"^0.42.0","eslint":"^10.2.0","globals":"^17.5.0","@eslint/js":"^10.0.1","typescript":"~6.0.2","@types/node":"^25.6.0","@types/react":"^19.2.14","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.2","@vitejs/plugin-react":"^6.0.1","eslint-plugin-react-hooks":"^7.0.1","eslint-plugin-react-refresh":"^0.5.2"},"peerDependencies":{"react":">=18.3.1 <20.0.0","react-dom":">=18.3.1 <20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/kanban-board-ui_0.0.8_1776291968502_0.6266137267381802","host":"s3://npm-registry-packages-npm-production"}},"0.0.9":{"name":"@clevertask/kanban-board-ui","version":"0.0.9","author":"CleverTask","license":"MIT","_id":"@clevertask/kanban-board-ui@0.0.9","maintainers":[{"name":"gonzalo-novak","email":"roberto.pinon@proton.me"}],"homepage":"https://github.com/clevertask/kanban-board-ui#readme","bugs":{"url":"https://github.com/clevertask/kanban-board-ui/issues"},"dist":{"shasum":"fe903954f1462c29644d7028b45fdd4dbce49e45","tarball":"https://registry.npmjs.org/@clevertask/kanban-board-ui/-/kanban-board-ui-0.0.9.tgz","fileCount":40,"integrity":"sha512-ySOA3/6L2pn9PPyvKFUcjAESBiozw6nI8nTNvC1mMAMIC/G1TlwIeEWLMuK5zwT08K7jHYLFYwDQ+wQDux/oVA==","signatures":[{"sig":"MEUCIQDPfgtqKw/MwE57EjqqIwfZ3TXX2fDqa0Da/2xQwuVDAAIgG8+erEFpRS6fbHkM5eUYoJuyByIKhPpfvKAMnctFnCE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@clevertask%2fkanban-board-ui@0.0.9","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":924427},"main":"./dist/kanban-board-ui.js","type":"module","types":"./dist/index.d.ts","scripts":{"dev":"vite","fmt":"oxfmt","lint":"eslint .","build":"rm -rf dist && vite build && tsc -p tsconfig.types.json --noCheck","preview":"vite preview","fmt:check":"oxfmt --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7d3f060d-2b41-411a-bc12-9cb5d6fb1afa"}},"repository":{"url":"git+https://github.com/clevertask/kanban-board-ui","type":"git"},"directories":{},"_nodeVersion":"24.16.0","dependencies":{"classnames":"^2.5.1","@dnd-kit/core":"^6.3.1","@dnd-kit/sortable":"^10.0.0","@dnd-kit/utilities":"^3.2.2","@radix-ui/react-icons":"^1.3.2"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^8.0.8","oxfmt":"^0.42.0","eslint":"^10.2.0","globals":"^17.5.0","@eslint/js":"^10.0.1","typescript":"~6.0.2","@types/node":"^25.6.0","@types/react":"^19.2.14","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.2","@vitejs/plugin-react":"^6.0.1","eslint-plugin-react-hooks":"^7.0.1","eslint-plugin-react-refresh":"^0.5.2"},"peerDependencies":{"react":">=18.3.1 <20.0.0","react-dom":">=18.3.1 <20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/kanban-board-ui_0.0.9_1781680042945_0.9919165183703729","host":"s3://npm-registry-packages-npm-production"}},"0.0.10":{"name":"@clevertask/kanban-board-ui","version":"0.0.10","author":"CleverTask","license":"MIT","_id":"@clevertask/kanban-board-ui@0.0.10","maintainers":[{"name":"gonzalo-novak","email":"roberto.pinon@proton.me"}],"homepage":"https://github.com/clevertask/kanban-board-ui#readme","bugs":{"url":"https://github.com/clevertask/kanban-board-ui/issues"},"dist":{"shasum":"b7335d8023797121e044df5dfda62c60c153356d","tarball":"https://registry.npmjs.org/@clevertask/kanban-board-ui/-/kanban-board-ui-0.0.10.tgz","fileCount":55,"integrity":"sha512-1tQq+ZdRL1X9AE7vfq/cytZz6nEbyaQaugnHUEcDbJwhlXoJCjWjaaj/VsKm28l3w5+e+kDr+rDl0vjtkO0XvQ==","signatures":[{"sig":"MEYCIQC8k0SV755UzzXiLd5ImaHuRo/qV8NoIwNJpKAaJ3C1TAIhANasCKyBXD4FLIOzAaUr8NIWBtUguNs0oNrI28DgyJG7","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@clevertask%2fkanban-board-ui@0.0.10","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1286435},"main":"./dist/kanban-board-ui.js","type":"module","types":"./dist/src/index.d.ts","exports":{".":{"types":"./dist/src/index.d.ts","default":"./dist/kanban-board-ui.js"},"./e2e":{"types":"./dist/e2e/utils/index.d.ts","default":"./dist/e2e/index.js"}},"scripts":{"dev":"vite","e2e":"playwright test","fmt":"oxfmt","lint":"eslint .","build":"rm -rf dist && vite build && vite build -c vite.test.config.ts && tsc -p tsconfig.types.json --noCheck","e2e:dev":"playwright test --ui","preview":"vite preview","fmt:check":"oxfmt --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7d3f060d-2b41-411a-bc12-9cb5d6fb1afa"}},"repository":{"url":"git+https://github.com/clevertask/kanban-board-ui","type":"git"},"directories":{},"_nodeVersion":"24.16.0","dependencies":{"classnames":"^2.5.1","@dnd-kit/dom":"^0.5.0","@dnd-kit/react":"^0.5.0","@dnd-kit/helpers":"^0.5.0","@dnd-kit/abstract":"^0.5.0","@radix-ui/react-icons":"^1.3.2"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^8.0.8","oxfmt":"^0.42.0","eslint":"^10.2.0","globals":"^17.5.0","@eslint/js":"^10.0.1","typescript":"~6.0.2","@types/node":"^25.6.0","@types/react":"^19.2.14","@playwright/test":"^1.60.0","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.2","@vitejs/plugin-react":"^6.0.1","eslint-plugin-react-hooks":"^7.0.1","eslint-plugin-react-refresh":"^0.5.2"},"peerDependencies":{"react":">=18.3.1 <20.0.0","react-dom":">=18.3.1 <20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/kanban-board-ui_0.0.10_1782095851589_0.35606691394210666","host":"s3://npm-registry-packages-npm-production"}},"0.0.11":{"name":"@clevertask/kanban-board-ui","version":"0.0.11","author":"CleverTask","license":"MIT","_id":"@clevertask/kanban-board-ui@0.0.11","maintainers":[{"name":"gonzalo-novak","email":"roberto.pinon@proton.me"}],"homepage":"https://github.com/clevertask/kanban-board-ui#readme","bugs":{"url":"https://github.com/clevertask/kanban-board-ui/issues"},"dist":{"shasum":"6a482548fba89ddbfc63ea417f3231a807512ee5","tarball":"https://registry.npmjs.org/@clevertask/kanban-board-ui/-/kanban-board-ui-0.0.11.tgz","fileCount":55,"integrity":"sha512-/sAw17Xqe0QypjwFpd6VWU5920RxYiB2CoGDiB164WHhDX4C9manKdkTPiCEHv0ltzGEHg23aQDTpDLIoC6E9A==","signatures":[{"sig":"MEYCIQCkggnSEaLPXnMsCIv1N2mNgzopSiTiPhEDbhoVStb4BgIhAIxDI69wSVF6FtxAJ4/Xrw/RaU+zVgstenGY1+lgJ2cO","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@clevertask%2fkanban-board-ui@0.0.11","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1289057},"main":"./dist/kanban-board-ui.js","type":"module","types":"./dist/src/index.d.ts","exports":{".":{"types":"./dist/src/index.d.ts","default":"./dist/kanban-board-ui.js"},"./e2e":{"types":"./dist/e2e/utils/index.d.ts","default":"./dist/e2e/index.js"}},"scripts":{"dev":"vite","e2e":"playwright test","fmt":"oxfmt","lint":"eslint .","build":"rm -rf dist && vite build && vite build -c vite.test.config.ts && tsc -p tsconfig.types.json --noCheck","e2e:dev":"playwright test --ui","preview":"vite preview","fmt:check":"oxfmt --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7d3f060d-2b41-411a-bc12-9cb5d6fb1afa"}},"repository":{"url":"git+https://github.com/clevertask/kanban-board-ui","type":"git"},"directories":{},"_nodeVersion":"24.16.0","dependencies":{"classnames":"^2.5.1","@dnd-kit/dom":"^0.5.0","@dnd-kit/react":"^0.5.0","@dnd-kit/helpers":"^0.5.0","@dnd-kit/abstract":"^0.5.0","@radix-ui/react-icons":"^1.3.2"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^8.0.8","oxfmt":"^0.42.0","eslint":"^10.2.0","globals":"^17.5.0","@eslint/js":"^10.0.1","typescript":"~6.0.2","@types/node":"^25.6.0","@types/react":"^19.2.14","@playwright/test":"^1.60.0","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.2","@vitejs/plugin-react":"^6.0.1","eslint-plugin-react-hooks":"^7.0.1","eslint-plugin-react-refresh":"^0.5.2"},"peerDependencies":{"react":">=18.3.1 <20.0.0","react-dom":">=18.3.1 <20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/kanban-board-ui_0.0.11_1782182755780_0.7402734006805107","host":"s3://npm-registry-packages-npm-production"}},"0.0.12":{"name":"@clevertask/kanban-board-ui","version":"0.0.12","author":"CleverTask","license":"MIT","_id":"@clevertask/kanban-board-ui@0.0.12","maintainers":[{"name":"gonzalo-novak","email":"roberto.pinon@proton.me"}],"homepage":"https://github.com/clevertask/kanban-board-ui#readme","bugs":{"url":"https://github.com/clevertask/kanban-board-ui/issues"},"dist":{"shasum":"548e7af137eaae6dea148d4a99e681dd8e781b52","tarball":"https://registry.npmjs.org/@clevertask/kanban-board-ui/-/kanban-board-ui-0.0.12.tgz","fileCount":55,"integrity":"sha512-y95g6yAss5YkwTEhN1CNOliqbzIJBtG+P+Bi6c3B2yyIcHQi52+aysfSie0p5LulG2LHgNbfJO0mKjVdH3V39A==","signatures":[{"sig":"MEUCIHGEaLsSdQ/0RlovCdXZtjU0uVN2rkUD9+2BOZQZngLJAiEArK0KgKtFxyes+w8SRxo84MWrCdcbJxzjYkMAk17IAT4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@clevertask%2fkanban-board-ui@0.0.12","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1290609},"main":"./dist/kanban-board-ui.js","type":"module","types":"./dist/src/index.d.ts","exports":{".":{"types":"./dist/src/index.d.ts","default":"./dist/kanban-board-ui.js"},"./e2e":{"types":"./dist/e2e/utils/index.d.ts","default":"./dist/e2e/index.js"}},"scripts":{"dev":"vite","e2e":"playwright test","fmt":"oxfmt","lint":"eslint .","build":"rm -rf dist && vite build && vite build -c vite.test.config.ts && tsc -p tsconfig.types.json --noCheck","e2e:dev":"playwright test --ui","preview":"vite preview","fmt:check":"oxfmt --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7d3f060d-2b41-411a-bc12-9cb5d6fb1afa"}},"repository":{"url":"git+https://github.com/clevertask/kanban-board-ui","type":"git"},"directories":{},"_nodeVersion":"24.16.0","dependencies":{"classnames":"^2.5.1","@dnd-kit/dom":"^0.5.0","@dnd-kit/react":"^0.5.0","@dnd-kit/helpers":"^0.5.0","@dnd-kit/abstract":"^0.5.0","@radix-ui/react-icons":"^1.3.2"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^8.0.8","oxfmt":"^0.42.0","eslint":"^10.2.0","globals":"^17.5.0","@eslint/js":"^10.0.1","typescript":"~6.0.2","@types/node":"^25.6.0","@types/react":"^19.2.14","@playwright/test":"^1.60.0","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.2","@vitejs/plugin-react":"^6.0.1","eslint-plugin-react-hooks":"^7.0.1","eslint-plugin-react-refresh":"^0.5.2"},"peerDependencies":{"react":">=18.3.1 <20.0.0","react-dom":">=18.3.1 <20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/kanban-board-ui_0.0.12_1782268529058_0.40962042286732436","host":"s3://npm-registry-packages-npm-production"}},"0.0.13":{"name":"@clevertask/kanban-board-ui","version":"0.0.13","author":"CleverTask","license":"MIT","_id":"@clevertask/kanban-board-ui@0.0.13","maintainers":[{"name":"gonzalo-novak","email":"roberto.pinon@proton.me"}],"homepage":"https://github.com/clevertask/kanban-board-ui#readme","bugs":{"url":"https://github.com/clevertask/kanban-board-ui/issues"},"dist":{"shasum":"500463ec3166147a4528703261b7ee04a236b3fc","tarball":"https://registry.npmjs.org/@clevertask/kanban-board-ui/-/kanban-board-ui-0.0.13.tgz","fileCount":55,"integrity":"sha512-3/4KYLwz7qKfS5LjfvTR3K/kBS/Rs+X8AJeKJOWbSQuyfl8Wc6lMvXVAdLMVsaNcQUK5+1BRMGocC0bV8NqJRA==","signatures":[{"sig":"MEUCIQCmfypSv8zFe1NsK02BmlzHFtASPq+MQ2LIb8XiIJbVMwIgMgzNwz32PRcNp0iK43vKavt6KaSpYzRlEFqQLEIHQbI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@clevertask%2fkanban-board-ui@0.0.13","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1292630},"main":"./dist/kanban-board-ui.js","type":"module","types":"./dist/src/index.d.ts","exports":{".":{"types":"./dist/src/index.d.ts","default":"./dist/kanban-board-ui.js"},"./e2e":{"types":"./dist/e2e/utils/index.d.ts","default":"./dist/e2e/index.js"}},"scripts":{"dev":"vite","e2e":"playwright test","fmt":"oxfmt","lint":"eslint .","build":"rm -rf dist && vite build && vite build -c vite.test.config.ts && tsc -p tsconfig.types.json --noCheck","e2e:dev":"playwright test --ui","preview":"vite preview","fmt:check":"oxfmt --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7d3f060d-2b41-411a-bc12-9cb5d6fb1afa"}},"repository":{"url":"git+https://github.com/clevertask/kanban-board-ui","type":"git"},"directories":{},"_nodeVersion":"24.18.0","dependencies":{"classnames":"^2.5.1","@dnd-kit/dom":"^0.5.0","@dnd-kit/react":"^0.5.0","@dnd-kit/helpers":"^0.5.0","@dnd-kit/abstract":"^0.5.0","@radix-ui/react-icons":"^1.3.2"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^8.0.8","oxfmt":"^0.42.0","eslint":"^10.2.0","globals":"^17.5.0","@eslint/js":"^10.0.1","typescript":"~6.0.2","@types/node":"^25.6.0","@types/react":"^19.2.14","@playwright/test":"^1.60.0","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.2","@vitejs/plugin-react":"^6.0.1","eslint-plugin-react-hooks":"^7.0.1","eslint-plugin-react-refresh":"^0.5.2"},"peerDependencies":{"react":">=18.3.1 <20.0.0","react-dom":">=18.3.1 <20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/kanban-board-ui_0.0.13_1783796165903_0.9856825020960034","host":"s3://npm-registry-packages-npm-production"}},"0.0.14":{"name":"@clevertask/kanban-board-ui","version":"0.0.14","homepage":"https://github.com/clevertask/kanban-board-ui#readme","bugs":{"url":"https://github.com/clevertask/kanban-board-ui/issues"},"license":"MIT","author":"CleverTask","repository":{"type":"git","url":"git+https://github.com/clevertask/kanban-board-ui"},"type":"module","main":"./dist/kanban-board-ui.js","types":"./dist/src/index.d.ts","exports":{".":{"types":"./dist/src/index.d.ts","default":"./dist/kanban-board-ui.js"},"./e2e":{"types":"./dist/e2e/utils/index.d.ts","default":"./dist/e2e/index.js"}},"dependencies":{"@dnd-kit/abstract":"^0.5.0","@dnd-kit/dom":"^0.5.0","@dnd-kit/helpers":"^0.5.0","@dnd-kit/react":"^0.5.0","@radix-ui/react-icons":"^1.3.2","classnames":"^2.5.1"},"devDependencies":{"@eslint/js":"^10.0.1","@playwright/test":"^1.60.0","@types/node":"^25.6.0","@types/react":"^19.2.14","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^6.0.1","eslint":"^10.2.0","eslint-plugin-react-hooks":"^7.0.1","eslint-plugin-react-refresh":"^0.5.2","globals":"^17.5.0","oxfmt":"^0.42.0","typescript":"~6.0.2","typescript-eslint":"^8.58.2","vite":"^8.0.8"},"peerDependencies":{"react":">=18.3.1 <20.0.0","react-dom":">=18.3.1 <20.0.0"},"scripts":{"dev":"vite","e2e":"playwright test","e2e:dev":"playwright test --ui","build":"rm -rf dist && vite build && vite build -c vite.test.config.ts && tsc -p tsconfig.types.json --noCheck","lint":"eslint .","fmt":"oxfmt","fmt:check":"oxfmt --check","preview":"vite preview"},"_nodeVersion":"24.18.0","_id":"@clevertask/kanban-board-ui@0.0.14","dist":{"integrity":"sha512-N3LCvSr/1wDi2xUlFaRVW1TP0+cIk90fy9QFO+j6zm5Ys+3rZ4ihRCMyECUZw7wBjuAMSRdYDtKFzHhMQOEG0Q==","shasum":"d5308df41dd990ab47d44a65fc754819e4ea2758","tarball":"https://registry.npmjs.org/@clevertask/kanban-board-ui/-/kanban-board-ui-0.0.14.tgz","fileCount":55,"unpackedSize":1287761,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@clevertask%2fkanban-board-ui@0.0.14","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQDbRtIJnyO8+fkP3CGdhsHaNFj0mPiU1bou2DXMz18jOQIhAMQnxcEkvf7jptuFXvqLlsKc0Ege3sQJ2YCmqfKqhrP8"}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7d3f060d-2b41-411a-bc12-9cb5d6fb1afa"}},"directories":{},"maintainers":[{"name":"gonzalo-novak","email":"roberto.pinon@proton.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/kanban-board-ui_0.0.14_1784751873124_0.10290355822808506"},"_hasShrinkwrap":false}},"time":{"created":"2024-11-08T06:07:03.335Z","modified":"2026-07-22T20:24:33.618Z","0.0.0":"2024-11-08T06:07:03.790Z","0.0.1":"2025-03-29T23:27:18.910Z","0.0.2":"2025-04-03T07:37:39.886Z","0.0.3":"2025-04-23T07:56:12.573Z","0.0.4":"2026-02-03T00:23:51.489Z","0.0.5":"2026-03-10T07:25:44.859Z","0.0.6":"2026-03-20T00:29:57.576Z","0.0.7":"2026-04-15T05:58:26.118Z","0.0.8":"2026-04-15T22:26:08.646Z","0.0.9":"2026-06-17T07:07:23.090Z","0.0.10":"2026-06-22T02:37:31.731Z","0.0.11":"2026-06-23T02:45:55.949Z","0.0.12":"2026-06-24T02:35:29.192Z","0.0.13":"2026-07-11T18:56:06.067Z","0.0.14":"2026-07-22T20:24:33.299Z"},"bugs":{"url":"https://github.com/clevertask/kanban-board-ui/issues"},"author":"CleverTask","license":"MIT","homepage":"https://github.com/clevertask/kanban-board-ui#readme","repository":{"type":"git","url":"git+https://github.com/clevertask/kanban-board-ui"},"maintainers":[{"name":"gonzalo-novak","email":"roberto.pinon@proton.me"}],"readme":"# @clevertask/kanban-board-ui\n\nA React component for rendering and managing a kanban board with drag-and-drop functionality. Built on top of [dnd-kit](https://github.com/clauderic/dnd-kit), this component offers a flexible and extensible API for building modern kanban boards.\n\n---\n\n## Table of Contents\n\n- [Installation](#installation)\n- [Usage](#usage)\n- [Experimental Drag Activation Constraints](#experimental-drag-activation-constraints)\n- [Custom Components](#custom-components)\n  - [Custom Item Rendering (`renderItem`)](#custom-item-rendering-renderitem)\n  - [Custom Column Rendering (`renderColumn`)](#custom-column-rendering-rendercolumn)\n- [Props](#props)\n- [Helper Functions](#helper-functions)\n  - [updateColumnItems](#updatecolumnitems)\n  - [removeColumnItem](#removecolumnitem)\n  - [removeColumn](#removecolumn)\n  - [updateColumnName](#updatecolumnname)\n  - [moveItemToColumn](#moveitemtocolumn)\n  - [moveItemBefore](#moveitembefore)\n  - [moveItemAfter](#moveitemafter)\n  - [moveColumnBefore](#movecolumnbefore)\n  - [moveColumnAfter](#movecolumnafter)\n- [Roadmap](#roadmap)\n- [Release Process](#release-process)\n- [License](#license)\n\n---\n\n## Installation\n\n```bash\nnpm install @clevertask/kanban-board-ui\n```\n\n---\n\n## Usage\n\n```tsx\nimport \"@clevertask/kanban-board-ui/dist/style.css\";\nimport React, { useState } from \"react\";\nimport { KanbanBoard, Columns } from \"@clevertask/kanban-board-ui\";\n\nfunction App() {\n  const [columns, setColumns] = useState<Columns>([\n    {\n      id: \"1\",\n      name: \"To Do\",\n      items: [{ id: \"1.1\", name: \"Task A\" }],\n    },\n    {\n      id: \"2\",\n      name: \"In Progress\",\n      items: [{ id: \"2.1\", name: \"Task B\" }],\n    },\n  ]);\n\n  return (\n    <KanbanBoard\n      columns={columns}\n      setColumns={setColumns}\n      dragOverlayPortalContainer={document.getElementById(\"app-theme-portal-root\")}\n      onItemClick={(itemId) => console.log(\"Clicked\", itemId)}\n    />\n  );\n}\n```\n\nUse `dragOverlayPortalContainer` when your custom `renderItem` or `renderColumn` relies on styles or CSS variables from a specific app subtree, such as a Radix `Theme` wrapper. When omitted, the drag overlay is portaled to `document.body`.\n\n---\n\n## Experimental Drag Activation Constraints\n\n`dragActivationConstraints` lets consumers tune when mouse and touch drags become active.\nThe prop is optional. When it is omitted, the board uses dnd-kit's default pointer and keyboard sensors without package-owned timing or distance values.\n\nWhen the prop is provided, `mouse` and `touch` values are translated into dnd-kit's modern `PointerActivationConstraints`. If `mouse` or `touch` is omitted or set to `null`, that input type keeps dnd-kit's default pointer behavior.\n\n```tsx\n<KanbanBoard\n  columns={columns}\n  setColumns={setColumns}\n  dragActivationConstraints={{\n    mouse: { distance: 8 },\n    touch: { delay: 260, tolerance: 10 },\n  }}\n  onItemMove={handleItemMove}\n/>\n```\n\n```tsx\n<KanbanBoard\n  columns={columns}\n  setColumns={setColumns}\n  dragActivationConstraints={{\n    mouse: null,\n  }}\n  onItemMove={handleItemMove}\n/>\n```\n\nThis API is experimental and remains as a compatibility layer while consumers evaluate the modern dnd-kit pointer behavior.\n\n---\n\n## Custom Components\n\nYou can fully customize how both **items** and **columns** are rendered using the `renderItem` and `renderColumn` props.\n\n### Custom Item Rendering (`renderItem`)\n\n```tsx\n<KanbanBoard\n  columns={columns}\n  setColumns={setColumns}\n  renderItem={({ item, dragging, dragListeners, ref, styleLayout }) => (\n    <li\n      ref={ref}\n      style={{\n        padding: \"16px\",\n        marginTop: \"1rem\",\n        backgroundColor: dragging ? \"#f0f0f0\" : \"#fff\",\n        border: \"1px solid #ccc\",\n        borderRadius: \"24px\",\n        ...styleLayout,\n      }}\n    >\n      <strong>{item.name}</strong>\n      <button>Click me</button>\n      <div {...dragListeners} style={{ cursor: \"grab\" }}>\n        Drag from here\n      </div>\n    </li>\n  )}\n/>\n```\n\n### Custom Column Rendering (`renderColumn`)\n\n```tsx\n<KanbanBoard\n  columns={columns}\n  setColumns={setColumns}\n  renderColumn={(props) => (\n    <div\n      ref={props.ref}\n      style={{\n        padding: \"1rem\",\n        width: \"22rem\",\n        outline: \"1px solid red\",\n        backgroundColor: \"#fafafa\",\n        ...props.style,\n      }}\n    >\n      <button {...props.listeners}>Drag me!</button>\n      <h3>{props.label}</h3>\n      {props.children}\n    </div>\n  )}\n/>\n```\n\n### Extending Item Types\n\nYou can extend the default item structure using generics. This allows you to pass custom metadata or fields to each item and access them inside your custom `renderItem` function.\n\n#### Example: Adding Metadata to Items\n\n```tsx\nconst [columns, setColumns] = useState<Columns<{ metadata?: { foo: string } }>>([\n  {\n    id: \"1\",\n    name: \"To Do\",\n    items: [{ id: \"1.1\", name: \"Task A\" }],\n  },\n  {\n    id: \"2\",\n    name: \"In Progress\",\n    items: [{ id: \"2.1\", name: \"Task B\", metadata: { foo: \"🔥\" } }],\n  },\n]);\n```\n\nThen in your `renderItem`:\n\n```tsx\nrenderItem={({ item }) => (\n  <div>\n    <strong>{item.name}</strong>\n    <span>{item.metadata?.foo}</span>\n  </div>\n)}\n```\n\n#### Example: Adding Metadata to Columns **(experimental)**\n\nCurrently, the `metadata` property for Columns accepts `any` value. We plan to fix that type in the future. So, we consider the `metadata` prop for Columns experimental\n\n```tsx\nconst [columns, setColumns] = useState<Columns<{ metadata?: { foo: string } }>>([\n  {\n    id: \"1\",\n    name: \"To Do\",\n    items: [{ id: \"1.1\", name: \"Task A\" }],\n    metadata: { statusId: 37 }\n  },\n  {\n    id: \"2\",\n    name: \"In Progress\",\n    items: [{ id: \"2.1\", name: \"Task B\"],\n    metadata: { statusId: 31 }\n  },\n]);\n```\n\n---\n\n## Props\n\n| Prop                         | Type                                                                                                                                                                                                      | Default          | Description                                                                                                                                                                                           |\n| ---------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| `columns`                    | `Columns`                                                                                                                                                                                                 | **Required**     | An array of column objects to be rendered on the Kanban board. Each column includes its `id`, `name`, and `items` array.                                                                              |\n| `setColumns`                 | `React.Dispatch<React.SetStateAction<Columns>>`                                                                                                                                                           | **Required**     | A callback function triggered when the columns array changes, allowing the parent component to manage state updates.                                                                                  |\n| `columnDragDisabled`         | `boolean`                                                                                                                                                                                                 | `false`          | Prevents columns from being dragged while keeping them available as drop targets.                                                                                                                     |\n| `itemDragDisabled`           | `boolean`                                                                                                                                                                                                 | `false`          | Prevents items from being dragged while keeping them available as drop targets.                                                                                                                       |\n| `onItemClick`                | `(itemId: UniqueIdentifier) => void`                                                                                                                                                                      | `undefined`      | Callback triggered when an item on the Kanban board is clicked. Typically used to display a modal or additional item details.                                                                         |\n| `onAddColumn`                | `(item: TOnAddColumnArgs) => void`                                                                                                                                                                        | `undefined`      | Callback triggered when a new column is added. Provides information about the added item (if applicable) or triggers an action when the drop zone is clicked.                                         |\n| `onColumnMove`               | `(result: { columnId: UniqueIdentifier; newIndex: number; previousColumnId: UniqueIdentifier \\| null; nextColumnId: UniqueIdentifier \\| null; }) => void`                                                 | `undefined`      | Callback triggered when a column is moved to a new position. Provides the column's `id`, its new index, and the adjacent columns after the move.                                                      |\n| `onItemMove`                 | `(result: MovedItemState) => void`                                                                                                                                                                        | `undefined`      | Callback triggered when an item is moved to another column or its position changes within the same column. `result` can include optional `beforeItemId` and `afterItemId` for neighbor-aware ranking. |\n| `onColumnEdit`               | `(columnId: UniqueIdentifier): void`                                                                                                                                                                      | `undefined`      | Callback triggered when a column is clicked for editing. Provides the column's `id`.                                                                                                                  |\n| `renderItem`                 | `({ item, ... }) => React.ReactElement`                                                                                                                                                                   | `undefined`      | Custom render function for items. Gives full control over layout, styling, and drag handle behavior.                                                                                                  |\n| `renderColumn`               | `({ id, label, ... }) => React.ReactElement`                                                                                                                                                              | `undefined`      | Custom render function for columns. Allows full control over column layout, including drag handle and header.                                                                                         |\n| `dragOverlayPortalContainer` | `Element \\| DocumentFragment \\| null`                                                                                                                                                                     | `document.body`  | Optional DOM container for the drag overlay portal. Useful when custom rendered items or columns must stay inside a themed or styled subtree.                                                         |\n| `dragActivationConstraints`  | `{ mouse?: { distance: number; tolerance?: number } \\| { delay: number; tolerance: number } \\| null; touch?: { distance: number; tolerance?: number } \\| { delay: number; tolerance: number } \\| null; }` | dnd-kit defaults | Experimental compatibility layer for mouse and touch pointer activation constraints. Omit the prop to use dnd-kit defaults, or pass values to override a pointer type.                                |\n\n---\n\n## Helper Functions\n\n> Experimental: `moveItemToColumn`, `moveItemBefore`, `moveItemAfter`, and their `result` payload are still experimental and may change in future releases.\n\n### `updateColumnItems`\n\n```ts\nupdateColumnItems(columns, columnId, updateFn);\n```\n\nUpdates the items in a specific column.\n\n### `removeColumnItem`\n\n```ts\nremoveColumnItem(columns, columnId, itemId);\n```\n\nRemoves an item from a specific column.\n\n### `removeColumn`\n\n```ts\nremoveColumn(columns, columnId);\n```\n\nRemoves a column by its ID.\n\n### `updateColumnName`\n\n```ts\nupdateColumnName(columns, columnId, newName);\n```\n\nUpdates a column's name.\n\n### `moveItemToColumn`\n\n```ts\nconst { columns: nextColumns, result } = moveItemToColumn(\n  columns,\n  itemId,\n  targetColumnId,\n  targetIndex?,\n);\n```\n\nMoves an item to a target column. If `targetIndex` is omitted, the item is appended at the end.\nReturns:\n\n- `columns`: updated columns state.\n- `result`: a `MovedItemState` payload (or `null` if no movement happened), including optional `beforeItemId` and `afterItemId` neighbor references.\n\n### `moveItemBefore`\n\n```ts\nconst { columns: nextColumns, result } = moveItemBefore(columns, sourceItemId, targetItemId);\n```\n\nMoves an item before another item. Works within the same column or across columns.\nReturns:\n\n- `columns`: updated columns state.\n- `result`: a `MovedItemState` payload (or `null` if no movement happened), including optional `beforeItemId` and `afterItemId` neighbor references.\n\n### `moveItemAfter`\n\n```ts\nconst { columns: nextColumns, result } = moveItemAfter(columns, sourceItemId, targetItemId);\n```\n\nMoves an item after another item. Works within the same column or across columns.\nReturns:\n\n- `columns`: updated columns state.\n- `result`: a `MovedItemState` payload (or `null` if no movement happened), including optional `beforeItemId` and `afterItemId` neighbor references.\n\n> Note: `moveItemBefore` and `moveItemAfter` assume item IDs are unique across the whole board.\n\n### `moveColumnBefore`\n\n```ts\nconst { columns: nextColumns, result } = moveColumnBefore(columns, sourceColumnId, targetColumnId);\n```\n\nMoves a column before another column.\nReturns:\n\n- `columns`: updated columns state.\n- `result`: column move payload (or `null` if no movement happened), including `columnId`, `newIndex`, and `previousColumnId`/`nextColumnId` neighbor references.\n\n### `moveColumnAfter`\n\n```ts\nconst { columns: nextColumns, result } = moveColumnAfter(columns, sourceColumnId, targetColumnId);\n```\n\nMoves a column after another column.\nReturns:\n\n- `columns`: updated columns state.\n- `result`: column move payload (or `null` if no movement happened), including `columnId`, `newIndex`, and `previousColumnId`/`nextColumnId` neighbor references.\n\n---\n\n## Roadmap\n\nWe're constantly working to improve `@clevertask/kanban-board-ui`. Here's what’s coming next:\n\n- **Virtualization**: Improve performance for large boards.\n- **Drag multiple items**: Enable selecting and dragging multiple items at once.\n- **API Example**: Provide a full-stack example with backend integration.\n- **E2E tests**: Ensure long-term stability and confidence in updates.\n- **User personalization**: Let users configure card layouts and visible fields.\n\n## License\n\nMIT\n","readmeFilename":""}