rehype-minify-json-script

rehype plugin to minify `script` elements with a JSON body

Usage no npm install needed!

<script type="module">
  import rehypeMinifyJsonScript from 'https://cdn.skypack.dev/rehype-minify-json-script';
</script>

README

rehype-minify-json-script

Build Coverage Downloads Size Sponsors Backers Chat

Minify script elements with a JSON body.

Install

This package is ESM only: Node 12+ is needed to use it and it must be importeded instead of requiredd.

npm:

npm install rehype-minify-json-script

This package exports no identifiers. The default export is rehypeMinifyJsonScript

Use

On the API:

 import {unified} from 'unified'
 import rehypeParse from 'rehype-parse'
+import rehypeMinifyJsonScript from 'rehype-minify-json-script'
 import rehypeStringify from 'rehype-stringify'

 unified()
   .use(rehypeParse)
+  .use(rehypeMinifyJsonScript)
   .use(rehypeStringify)
   .process('<span>some html</span>', function (err, file) {
     console.error(report(err || file))
     console.log(String(file))
   })

On the CLI:

rehype input.html --use minify-json-script --output output.html

Example

In
<script type="application/ld+json">
{
  "@context": {
    "name": "http://xmlns.com/foaf/0.1/name",
    "@id": "http://me.example.com",
    "@type": "Person",
    "name": "John Smith",
    "homepage": "http://www.example.com/"
  }
}
</script>
Out
<script type="application/ld+json">{"@context":{"name":"John Smith","@id":"http://me.example.com","@type":"Person","homepage":"http://www.example.com/"}}</script>

Contribute

See contributing.md in rehypejs/.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