remark-slate
Advanced tools
Comparing version 0.8.0 to 0.9.0
49
index.js
'use strict'; | ||
var extend = require('xtend'); | ||
var merge = require('merge'); | ||
@@ -15,5 +15,8 @@ module.exports = plugin; | ||
module.exports.transform = transform; | ||
module.exports.nodeTypes = nodeTypes; | ||
function transform(node, opts) { | ||
var settings = opts || {}; | ||
var userTypes = settings.nodeTypes || {}; | ||
var types = merge.recursive(nodeTypes, userTypes); | ||
@@ -26,3 +29,3 @@ var parentNode = node.parentNode || null; | ||
return transform( | ||
extend(c, { | ||
merge(c, { | ||
parentNode: node, | ||
@@ -39,3 +42,3 @@ ordered: node.ordered || false, | ||
return { | ||
type: depthToHeading[node.depth], | ||
type: types.heading[node.depth], | ||
children: children, | ||
@@ -45,3 +48,3 @@ }; | ||
return { | ||
type: node.ordered ? 'ol_list' : 'ul_list', | ||
type: node.ordered ? types.ol_list : types.ul_list, | ||
children: children, | ||
@@ -51,14 +54,14 @@ }; | ||
return { | ||
type: 'list_item', | ||
type: types.listItem, | ||
children: children, | ||
}; | ||
case 'emphasis': | ||
return extend(forceLeafNode(children), { italic: true }); | ||
return merge(forceLeafNode(children), { italic: true }); | ||
case 'strong': | ||
return extend(forceLeafNode(children), { bold: true }); | ||
return merge(forceLeafNode(children), { bold: true }); | ||
case 'delete': | ||
return extend(forceLeafNode(children), { strikeThrough: true }); | ||
return merge(forceLeafNode(children), { strikeThrough: true }); | ||
case 'paragraph': | ||
return { | ||
type: node.type, | ||
type: types.paragraph, | ||
children: children, | ||
@@ -68,3 +71,3 @@ }; | ||
return { | ||
type: node.type, | ||
type: types.link, | ||
link: node.url, | ||
@@ -75,3 +78,3 @@ children: children, | ||
return { | ||
type: 'block_quote', | ||
type: types.block_quote, | ||
children: children, | ||
@@ -83,3 +86,3 @@ }; | ||
return { | ||
type: 'paragraph', | ||
type: types.paragraph, | ||
children: [{ text: '' }], | ||
@@ -101,9 +104,17 @@ }; | ||
var depthToHeading = { | ||
1: 'heading_one', | ||
2: 'heading_two', | ||
3: 'heading_three', | ||
4: 'heading_four', | ||
5: 'heading_five', | ||
6: 'heading_six', | ||
var nodeTypes = { | ||
paragraph: 'paragraph', | ||
block_quote: 'block_quote', | ||
link: 'link', | ||
ul_list: 'ul_list', | ||
ol_list: 'ol_list', | ||
listItem: 'list_item', | ||
heading: { | ||
1: 'heading_one', | ||
2: 'heading_two', | ||
3: 'heading_three', | ||
4: 'heading_four', | ||
5: 'heading_five', | ||
6: 'heading_three', | ||
}, | ||
}; |
{ | ||
"name": "remark-slate", | ||
"version": "0.8.0", | ||
"version": "0.9.0", | ||
"description": "remark plugin to compile Markdown to a slate compatible object", | ||
@@ -21,3 +21,4 @@ "license": "MIT", | ||
"contributors": [ | ||
"Jack Hanford <jackhanford@gmail.com> (https://jackhanford.com)" | ||
"Jack Hanford <jackhanford@gmail.com> (https://jackhanford.com)", | ||
"Horacio Herrera <hi@horacioh.com> (https://horacioh.com)" | ||
], | ||
@@ -28,3 +29,3 @@ "files": [ | ||
"dependencies": { | ||
"xtend": "^4.0.2" | ||
"merge": "^1.2.1" | ||
}, | ||
@@ -31,0 +32,0 @@ "devDependencies": { |
9068
99
+ Addedmerge@^1.2.1
+ Addedmerge@1.2.1(transitive)
- Removedxtend@^4.0.2
- Removedxtend@4.0.2(transitive)