From aa0d3ee85f8efb4ff31fad23e6351278ebb6d9bd Mon Sep 17 00:00:00 2001 From: Titus Wormer <tituswormer@gmail.com> Date: Thu, 23 Feb 2017 22:53:22 +0100 Subject: [PATCH] Update for rehype@4.0.0 --- index.js | 2 +- package.json | 8 +-- readme.md | 15 ++-- test.js | 194 ++++++++++++++++++++++++++++++++------------------- 4 files changed, 137 insertions(+), 82 deletions(-) diff --git a/index.js b/index.js index 28a359d..65bb04d 100644 --- a/index.js +++ b/index.js @@ -6,7 +6,7 @@ var toString = require('hast-util-to-string'); module.exports = attacher; -function attacher(origin, options) { +function attacher(options) { var settings = options || {}; var detect = settings.subset !== false; var prefix = settings.prefix; diff --git a/package.json b/package.json index 56932ed..04b0346 100644 --- a/package.json +++ b/package.json @@ -28,9 +28,9 @@ "browserify": "^14.1.0", "esmangle": "^1.0.1", "nyc": "^10.0.0", - "rehype": "^3.0.0", - "remark-cli": "^2.1.0", - "remark-preset-wooorm": "^1.0.0", + "rehype": "^4.0.0", + "remark-cli": "^3.0.0", + "remark-preset-wooorm": "^2.0.0", "tape": "^4.0.0", "unist-util-inspect": "^4.0.0", "xo": "^0.17.1" @@ -58,6 +58,6 @@ ] }, "remarkConfig": { - "presets": "wooorm" + "plugins": ["preset-wooorm"] } } diff --git a/readme.md b/readme.md index c10e4c4..14d28fa 100644 --- a/readme.md +++ b/readme.md @@ -16,12 +16,15 @@ npm install rehype-highlight var rehype = require('rehype'); var highlight = require('rehype-highlight'); -var file = rehype().use(highlight).process([ - '<h1>Hello World!</h1>', - '', - '<pre><code class="language-js">var name = "World";', - 'console.warn("Hello, " + name + "!")</code></pre>' -].join('\n'), {fragment: true}); +var file = rehype() + .data('settings', {fragment: true}) + .use(highlight) + .processSync([ + '<h1>Hello World!</h1>', + '', + '<pre><code class="language-js">var name = "World";', + 'console.warn("Hello, " + name + "!")</code></pre>' + ].join('\n')); console.log(String(file)); ``` diff --git a/test.js b/test.js index 50a95cc..7283d81 100644 --- a/test.js +++ b/test.js @@ -6,11 +6,15 @@ var highlight = require('./index.js'); test('highlight()', function (t) { t.equal( - rehype().use(highlight).process([ - '<h1>Hello World!</h1>', - '', - '<pre><code></code></pre>' - ].join('\n'), {fragment: true}).toString(), + rehype() + .data('settings', {fragment: true}) + .use(highlight) + .processSync([ + '<h1>Hello World!</h1>', + '', + '<pre><code></code></pre>' + ].join('\n')) + .toString(), [ '<h1>Hello World!</h1>', '', @@ -20,11 +24,15 @@ test('highlight()', function (t) { ); t.equal( - rehype().use(highlight).process([ - '<h1>Hello World!</h1>', - '', - '<pre><code>"use strict";</code></pre>' - ].join('\n'), {fragment: true}).toString(), + rehype() + .data('settings', {fragment: true}) + .use(highlight) + .processSync([ + '<h1>Hello World!</h1>', + '', + '<pre><code>"use strict";</code></pre>' + ].join('\n')) + .toString(), [ '<h1>Hello World!</h1>', '', @@ -34,11 +42,15 @@ test('highlight()', function (t) { ); t.equal( - rehype().use(highlight, {subset: ['applescript']}).process([ - '<h1>Hello World!</h1>', - '', - '<pre><code>"use strict";</code></pre>' - ].join('\n'), {fragment: true}).toString(), + rehype() + .data('settings', {fragment: true}) + .use(highlight, {subset: ['applescript']}) + .processSync([ + '<h1>Hello World!</h1>', + '', + '<pre><code>"use strict";</code></pre>' + ].join('\n')) + .toString(), [ '<h1>Hello World!</h1>', '', @@ -48,11 +60,15 @@ test('highlight()', function (t) { ); t.equal( - rehype().use(highlight, {subset: false}).process([ - '<h1>Hello World!</h1>', - '', - '<pre><code>"use strict";</code></pre>' - ].join('\n'), {fragment: true}).toString(), + rehype() + .data('settings', {fragment: true}) + .use(highlight, {subset: false}) + .processSync([ + '<h1>Hello World!</h1>', + '', + '<pre><code>"use strict";</code></pre>' + ].join('\n')) + .toString(), [ '<h1>Hello World!</h1>', '', @@ -62,11 +78,15 @@ test('highlight()', function (t) { ); t.equal( - rehype().use(highlight, {prefix: 'foo'}).process([ - '<h1>Hello World!</h1>', - '', - '<pre><code>"use strict";</code></pre>' - ].join('\n'), {fragment: true}).toString(), + rehype() + .data('settings', {fragment: true}) + .use(highlight, {prefix: 'foo'}) + .processSync([ + '<h1>Hello World!</h1>', + '', + '<pre><code>"use strict";</code></pre>' + ].join('\n')) + .toString(), [ '<h1>Hello World!</h1>', '', @@ -76,11 +96,15 @@ test('highlight()', function (t) { ); t.equal( - rehype().use(highlight, {prefix: 'foo-'}).process([ - '<h1>Hello World!</h1>', - '', - '<pre><code>"use strict";</code></pre>' - ].join('\n'), {fragment: true}).toString(), + rehype() + .data('settings', {fragment: true}) + .use(highlight, {prefix: 'foo-'}) + .processSync([ + '<h1>Hello World!</h1>', + '', + '<pre><code>"use strict";</code></pre>' + ].join('\n')) + .toString(), [ '<h1>Hello World!</h1>', '', @@ -90,12 +114,16 @@ test('highlight()', function (t) { ); t.equal( - rehype().use(highlight).process([ - '<h1>Hello World!</h1>', - '', - '<pre><code class="lang-js">var name = "World";', - 'console.log("Hello, " + name + "!")</code></pre>' - ].join('\n'), {fragment: true}).toString(), + rehype() + .data('settings', {fragment: true}) + .use(highlight) + .processSync([ + '<h1>Hello World!</h1>', + '', + '<pre><code class="lang-js">var name = "World";', + 'console.log("Hello, " + name + "!")</code></pre>' + ].join('\n')) + .toString(), [ '<h1>Hello World!</h1>', '', @@ -106,12 +134,16 @@ test('highlight()', function (t) { ); t.equal( - rehype().use(highlight).process([ - '<h1>Hello World!</h1>', - '', - '<pre><code class="language-js">var name = "World";', - 'console.log("Hello, " + name + "!")</code></pre>' - ].join('\n'), {fragment: true}).toString(), + rehype() + .data('settings', {fragment: true}) + .use(highlight) + .processSync([ + '<h1>Hello World!</h1>', + '', + '<pre><code class="language-js">var name = "World";', + 'console.log("Hello, " + name + "!")</code></pre>' + ].join('\n')) + .toString(), [ '<h1>Hello World!</h1>', '', @@ -122,12 +154,16 @@ test('highlight()', function (t) { ); t.equal( - rehype().use(highlight).process([ - '<h1>Hello World!</h1>', - '', - '<pre><code class="language-javascript">var name = "World";', - 'console.log("Hello, " + name + "!")</code></pre>' - ].join('\n'), {fragment: true}).toString(), + rehype() + .data('settings', {fragment: true}) + .use(highlight) + .processSync([ + '<h1>Hello World!</h1>', + '', + '<pre><code class="language-javascript">var name = "World";', + 'console.log("Hello, " + name + "!")</code></pre>' + ].join('\n')) + .toString(), [ '<h1>Hello World!</h1>', '', @@ -138,12 +174,16 @@ test('highlight()', function (t) { ); t.equal( - rehype().use(highlight).process([ - '<h1>Hello World!</h1>', - '', - '<pre><code class="no-highlight">var name = "World";', - 'console.log("Hello, " + name + "!")</code></pre>' - ].join('\n'), {fragment: true}).toString(), + rehype() + .data('settings', {fragment: true}) + .use(highlight) + .processSync([ + '<h1>Hello World!</h1>', + '', + '<pre><code class="no-highlight">var name = "World";', + 'console.log("Hello, " + name + "!")</code></pre>' + ].join('\n')) + .toString(), [ '<h1>Hello World!</h1>', '', @@ -154,12 +194,16 @@ test('highlight()', function (t) { ); t.equal( - rehype().use(highlight).process([ - '<h1>Hello World!</h1>', - '', - '<pre><code class="nohighlight">var name = "World";', - 'console.log("Hello, " + name + "!")</code></pre>' - ].join('\n'), {fragment: true}).toString(), + rehype() + .data('settings', {fragment: true}) + .use(highlight) + .processSync([ + '<h1>Hello World!</h1>', + '', + '<pre><code class="nohighlight">var name = "World";', + 'console.log("Hello, " + name + "!")</code></pre>' + ].join('\n')) + .toString(), [ '<h1>Hello World!</h1>', '', @@ -170,12 +214,16 @@ test('highlight()', function (t) { ); t.equal( - rehype().use(highlight).process([ - '<h1>Hello World!</h1>', - '', - '<pre><code class="hljs lang-js"><span class="hljs-keyword">var</span> name = <span class="hljs-string">"World"</span>;', - '<span class="hljs-built_in">console</span>.log(<span class="hljs-string">"Hello, "</span> + name + <span class="hljs-string">"!"</span>)</code></pre>' - ].join('\n'), {fragment: true}).toString(), + rehype() + .data('settings', {fragment: true}) + .use(highlight) + .processSync([ + '<h1>Hello World!</h1>', + '', + '<pre><code class="hljs lang-js"><span class="hljs-keyword">var</span> name = <span class="hljs-string">"World"</span>;', + '<span class="hljs-built_in">console</span>.log(<span class="hljs-string">"Hello, "</span> + name + <span class="hljs-string">"!"</span>)</code></pre>' + ].join('\n')) + .toString(), [ '<h1>Hello World!</h1>', '', @@ -186,11 +234,15 @@ test('highlight()', function (t) { ); t.equal( - rehype().use(highlight).process([ - '<h1>Hello World!</h1>', - '', - '<pre><code><!--TODO-->"use strict";</code></pre>' - ].join('\n'), {fragment: true}).toString(), + rehype() + .data('settings', {fragment: true}) + .use(highlight) + .processSync([ + '<h1>Hello World!</h1>', + '', + '<pre><code><!--TODO-->"use strict";</code></pre>' + ].join('\n')) + .toString(), [ '<h1>Hello World!</h1>', '',