JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 5553495
  • Score
    100M100P100Q268068F
  • License MIT

mdast extension to parse and serialize GFM task list items

Package Exports

  • mdast-util-gfm-task-list-item
  • mdast-util-gfm-task-list-item/from-markdown
  • mdast-util-gfm-task-list-item/to-markdown

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (mdast-util-gfm-task-list-item) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

mdast-util-gfm-task-list-item

Build Coverage Downloads Size Sponsors Backers Chat

Extension for mdast-util-from-markdown and/or mdast-util-to-markdown to support GitHub flavored markdown task list items in mdast. When parsing (from-markdown), must be combined with micromark-extension-gfm-task-list-item.

You probably shouldn’t use this package directly, but instead use remark-gfm with remark.

Install

npm:

npm install mdast-util-gfm-task-list-item

Use

Say we have the following file, example.md:

* [ ] To do
* [x] Done

1. Mixed…
2. [x] …messages

And our script, example.js, looks as follows:

var fs = require('fs')
var fromMarkdown = require('mdast-util-from-markdown')
var toMarkdown = require('mdast-util-to-markdown')
var syntax = require('micromark-extension-gfm-task-list-item')
var taskListItem = require('mdast-util-gfm-task-list-item')

var doc = fs.readFileSync('example.md')

var tree = fromMarkdown(doc, {
  extensions: [syntax],
  mdastExtensions: [taskListItem.fromMarkdown]
})

console.log(tree)

var out = toMarkdown(tree, {extensions: [taskListItem.toMarkdown]})

console.log(out)

Now, running node example yields (positional info removed for the sake of brevity):

{
 type: 'root',
 children: [
   {
     type: 'list',
     ordered: false,
     start: null,
     spread: false,
     children: [
       {
         type: 'listItem',
         spread: false,
         checked: false,
         children: [
           {type: 'paragraph', children: [{type: 'text', value: 'To do'}]}
         ]
       },
       {
         type: 'listItem',
         spread: false,
         checked: true,
         children: [
           {type: 'paragraph', children: [{type: 'text', value: 'Done'}]}
         ]
       }
     ]
   },
   {
     type: 'list',
     ordered: true,
     start: 1,
     spread: false,
     children: [
       {
         type: 'listItem',
         spread: false,
         checked: null,
         children: [
           {type: 'paragraph', children: [{type: 'text', value: 'Mixed…'}]}
         ]
       },
       {
         type: 'listItem',
         spread: false,
         checked: true,
         children: [
           {type: 'paragraph', children: [{type: 'text', value: '…messages'}]}
         ]
       }
     ]
   }
 ]
}
*   [ ] To do
*   [x] Done

1.  Mixed…
2.  [x] …messages

API

taskListItem.fromMarkdown

taskListItem.toMarkdown

Note: the separate extensions are also available at mdast-util-gfm-task-list-item/from-markdown and mdast-util-gfm-task-list-item/to-markdown.

Support task list items. The exports are extensions, respectively for mdast-util-from-markdown and mdast-util-to-markdown.

Contribute

See contributing.md in syntax-tree/.github for ways to get started. See support.md for ways to get help.

This project has a code of conduct. By interacting with this repository, organization, or community you agree to abide by its terms.

License

MIT © Titus Wormer