mirror of
https://github.com/github/task-lists-element
synced 2026-07-22 19:13:49 +00:00
No description
- TypeScript 68.5%
- JavaScript 26.4%
- Dockerfile 5.1%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
|
|
||
| .devcontainer | ||
| .github/workflows | ||
| examples | ||
| src | ||
| test | ||
| .eslintrc.json | ||
| .gitignore | ||
| CODEOWNERS | ||
| LICENSE | ||
| package-lock.json | ||
| package.json | ||
| README.md | ||
| rollup.config.js | ||
| tsconfig.json | ||
<task-lists> element
Drag and drop task list items.
Installation
$ npm install --save @github/task-lists-element
Usage
Script
Import as a module:
import '@github/task-lists-element'
With a script tag:
<script type="module" src="./node_modules/@github/task-lists-element/dist/task-lists-element.js">
Markup
<task-lists sortable>
<ul class="contains-task-list">
<li class="task-list-item">
<input type="checkbox" class="task-list-item-checkbox">
Hubot
</li>
<li class="task-list-item">
<input type="checkbox" class="task-list-item-checkbox">
Bender
</li>
</ul>
<ul class="contains-task-list">
<li class="task-list-item">
<input type="checkbox" class="task-list-item-checkbox">
BB-8
</li>
<li class="task-list-item">
<input type="checkbox" class="task-list-item-checkbox">
WALL-E
</li>
</ul>
</task-lists>
Events
const list = document.querySelector('task-lists')
list.addEventListener('task-lists-check', function(event) {
const {position, checked} = event.detail
console.log(position, checked)
})
list.addEventListener('task-lists-move', function(event) {
const {src, dst} = event.detail
console.log(src, dst)
})
Browser support
Browsers without native custom element support require a polyfill.
- Chrome
- Firefox
- Safari
- Microsoft Edge
Development
npm install
npm test
License
Distributed under the MIT license. See LICENSE for details.