highmark-markdown 0.0.326 → 0.0.328
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/example.js +1135 -967
- package/lib/elementMap.js +8 -2
- package/lib/example/view.js +4 -4
- package/lib/markdown/bnf.js +2 -2
- package/lib/node/markdown/contentsLink.js +2 -16
- package/lib/node/markdown/footnote.js +3 -7
- package/lib/node/markdown/heading.js +1 -17
- package/lib/node/markdown/line.js +141 -0
- package/lib/node/markdown/listItem.js +2 -33
- package/lib/node/markdown/paragraph.js +2 -33
- package/lib/node/markdown/reference.js +134 -0
- package/lib/node/markdown/tableCell.js +2 -19
- package/lib/nodeMap.js +4 -2
- package/lib/ruleNames.js +11 -1
- package/lib/utilities/query.js +10 -10
- package/package.json +1 -1
- package/src/elementMap.js +11 -1
- package/src/example/view.js +7 -4
- package/src/markdown/bnf.js +19 -10
- package/src/node/markdown/contentsLink.js +1 -20
- package/src/node/markdown/footnote.js +3 -12
- package/src/node/markdown/heading.js +0 -23
- package/src/node/markdown/line.js +29 -0
- package/src/node/markdown/listItem.js +0 -37
- package/src/node/markdown/paragraph.js +0 -37
- package/src/node/markdown/reference.js +29 -0
- package/src/node/markdown/tableCell.js +0 -22
- package/src/nodeMap.js +7 -1
- package/src/ruleNames.js +4 -0
- package/src/utilities/query.js +8 -8
- package/lib/utilities/index.js +0 -28
- package/src/utilities/index.js +0 -13
package/lib/utilities/query.js
CHANGED
|
@@ -36,8 +36,8 @@ _export(exports, {
|
|
|
36
36
|
linkMarkdownNodesFromNode: function() {
|
|
37
37
|
return linkMarkdownNodesFromNode;
|
|
38
38
|
},
|
|
39
|
-
|
|
40
|
-
return
|
|
39
|
+
linkOrReferenceMarkdownNodesFromNode: function() {
|
|
40
|
+
return linkOrReferenceMarkdownNodesFromNode;
|
|
41
41
|
},
|
|
42
42
|
nodeQuery: function() {
|
|
43
43
|
return nodeQuery;
|
|
@@ -49,7 +49,7 @@ _export(exports, {
|
|
|
49
49
|
var _occamquery = require("occam-query");
|
|
50
50
|
var _necessary = require("necessary");
|
|
51
51
|
var first = _necessary.arrayUtilities.first, push = _necessary.arrayUtilities.push;
|
|
52
|
-
var linkMarkdownNodesQuery = _occamquery.Query.fromExpression("//link"), headingMarkdownNodesQuery = _occamquery.Query.fromExpression("//primaryHeading|secondaryHeading|tertiaryHeading|quaternaryHeading"), footnoteMarkdownNodesQuery = _occamquery.Query.fromExpression("//footnote"),
|
|
52
|
+
var linkMarkdownNodesQuery = _occamquery.Query.fromExpression("//link"), headingMarkdownNodesQuery = _occamquery.Query.fromExpression("//primaryHeading|secondaryHeading|tertiaryHeading|quaternaryHeading"), footnoteMarkdownNodesQuery = _occamquery.Query.fromExpression("//footnote"), embedDirectiveMarkdownNodesQuery = _occamquery.Query.fromExpression("//directives/embedDirective"), linkOrReferenceMarkdownNodesQuery = _occamquery.Query.fromExpression("//link|reference"), includeDirectiveMarkdownNodesQuery = _occamquery.Query.fromExpression("//directives/includeDirective"), ignoreDirectiveMarkdownNodeQuery = _occamquery.Query.fromExpression("//directives/ignoreDirective"), contentsDirectiveMarkdownNodeQuery = _occamquery.Query.fromExpression("//directives/contentsDirective"), footnotesDirectiveMarkdownNodeQuery = _occamquery.Query.fromExpression("//directives/footnotesDirective");
|
|
53
53
|
function nodeQuery(expression) {
|
|
54
54
|
var query = _occamquery.Query.fromExpression(expression);
|
|
55
55
|
return function(node) {
|
|
@@ -85,16 +85,16 @@ function footnoteMarkdownNodesFromNode(node) {
|
|
|
85
85
|
nodesFromNodeAndQuery(node, footnoteMarkdownNodesQuery, footnoteMarkdownNodes);
|
|
86
86
|
return footnoteMarkdownNodes;
|
|
87
87
|
}
|
|
88
|
-
function linkOrFootnoteMarkdownNodesFromNode(node) {
|
|
89
|
-
var linkOrFootnoteMarkdownNodes = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : [];
|
|
90
|
-
nodesFromNodeAndQuery(node, linkOrFootnoteMarkdownNodesQuery, linkOrFootnoteMarkdownNodes);
|
|
91
|
-
return linkOrFootnoteMarkdownNodes;
|
|
92
|
-
}
|
|
93
88
|
function embedDirectiveMarkdownNodesFromNode(node) {
|
|
94
89
|
var embedDirectiveMarkdownNodes = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : [];
|
|
95
90
|
nodesFromNodeAndQuery(node, embedDirectiveMarkdownNodesQuery, embedDirectiveMarkdownNodes);
|
|
96
91
|
return embedDirectiveMarkdownNodes;
|
|
97
92
|
}
|
|
93
|
+
function linkOrReferenceMarkdownNodesFromNode(node) {
|
|
94
|
+
var linkOrReferenceMarkdownNodes = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : [];
|
|
95
|
+
nodesFromNodeAndQuery(node, linkOrReferenceMarkdownNodesQuery, linkOrReferenceMarkdownNodes);
|
|
96
|
+
return linkOrReferenceMarkdownNodes;
|
|
97
|
+
}
|
|
98
98
|
function includeDirectiveMarkdownNodesFromNode(node) {
|
|
99
99
|
var includeDirectiveMarkdownNodes = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : [];
|
|
100
100
|
nodesFromNodeAndQuery(node, includeDirectiveMarkdownNodesQuery, includeDirectiveMarkdownNodes);
|
|
@@ -116,8 +116,8 @@ var _default = {
|
|
|
116
116
|
linkMarkdownNodesFromNode: linkMarkdownNodesFromNode,
|
|
117
117
|
headingMarkdownNodesFromNode: headingMarkdownNodesFromNode,
|
|
118
118
|
footnoteMarkdownNodesFromNode: footnoteMarkdownNodesFromNode,
|
|
119
|
-
linkOrFootnoteMarkdownNodesFromNode: linkOrFootnoteMarkdownNodesFromNode,
|
|
120
119
|
embedDirectiveMarkdownNodesFromNode: embedDirectiveMarkdownNodesFromNode,
|
|
120
|
+
linkOrReferenceMarkdownNodesFromNode: linkOrReferenceMarkdownNodesFromNode,
|
|
121
121
|
includeDirectiveMarkdownNodesFromNode: includeDirectiveMarkdownNodesFromNode,
|
|
122
122
|
ignoreDirectiveMarkdownNodeFromNode: ignoreDirectiveMarkdownNodeFromNode,
|
|
123
123
|
contentsDirectiveMarkdownNodeFromNode: contentsDirectiveMarkdownNodeFromNode,
|
|
@@ -139,4 +139,4 @@ function nodesFromNodeAndQuery(node, query, nodes) {
|
|
|
139
139
|
return nodes;
|
|
140
140
|
}
|
|
141
141
|
|
|
142
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvcXVlcnkuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IFF1ZXJ5IH0gZnJvbSBcIm9jY2FtLXF1ZXJ5XCI7XG5pbXBvcnQgeyBhcnJheVV0aWxpdGllcyB9IGZyb20gXCJuZWNlc3NhcnlcIjtcblxuY29uc3QgeyBmaXJzdCwgcHVzaCB9ID0gYXJyYXlVdGlsaXRpZXM7XG5cbmNvbnN0IGxpbmtNYXJrZG93bk5vZGVzUXVlcnkgPSBRdWVyeS5mcm9tRXhwcmVzc2lvbihcIi8vbGlua1wiKSxcbiAgICAgIGhlYWRpbmdNYXJrZG93bk5vZGVzUXVlcnkgPSBRdWVyeS5mcm9tRXhwcmVzc2lvbihcIi8vcHJpbWFyeUhlYWRpbmd8c2Vjb25kYXJ5SGVhZGluZ3x0ZXJ0aWFyeUhlYWRpbmd8cXVhdGVybmFyeUhlYWRpbmdcIiksXG4gICAgICBmb290bm90ZU1hcmtkb3duTm9kZXNRdWVyeSA9IFF1ZXJ5LmZyb21FeHByZXNzaW9uKFwiLy9mb290bm90ZVwiKSxcbiAgICAgIGxpbmtPckZvb3Rub3RlTWFya2Rvd25Ob2Rlc1F1ZXJ5ID0gUXVlcnkuZnJvbUV4cHJlc3Npb24oXCIvL2xpbmt8Zm9vdG5vdGVcIiksXG4gICAgICBlbWJlZERpcmVjdGl2ZU1hcmtkb3duTm9kZXNRdWVyeSA9IFF1ZXJ5LmZyb21FeHByZXNzaW9uKFwiLy9kaXJlY3RpdmVzL2VtYmVkRGlyZWN0aXZlXCIpLFxuICAgICAgaW5jbHVkZURpcmVjdGl2ZU1hcmtkb3duTm9kZXNRdWVyeSA9IFF1ZXJ5LmZyb21FeHByZXNzaW9uKFwiLy9kaXJlY3RpdmVzL2luY2x1ZGVEaXJlY3RpdmVcIiksXG4gICAgICBpZ25vcmVEaXJlY3RpdmVNYXJrZG93bk5vZGVRdWVyeSA9IFF1ZXJ5LmZyb21FeHByZXNzaW9uKFwiLy9kaXJlY3RpdmVzL2lnbm9yZURpcmVjdGl2ZVwiKSxcbiAgICAgIGNvbnRlbnRzRGlyZWN0aXZlTWFya2Rvd25Ob2RlUXVlcnkgPSBRdWVyeS5mcm9tRXhwcmVzc2lvbihcIi8vZGlyZWN0aXZlcy9jb250ZW50c0RpcmVjdGl2ZVwiKSxcbiAgICAgIGZvb3Rub3Rlc0RpcmVjdGl2ZU1hcmtkb3duTm9kZVF1ZXJ5ID0gUXVlcnkuZnJvbUV4cHJlc3Npb24oXCIvL2RpcmVjdGl2ZXMvZm9vdG5vdGVzRGlyZWN0aXZlXCIpO1xuXG5leHBvcnQgZnVuY3Rpb24gbm9kZVF1ZXJ5KGV4cHJlc3Npb24pIHtcbiAgY29uc3QgcXVlcnkgPSBRdWVyeS5mcm9tRXhwcmVzc2lvbihleHByZXNzaW9uKTtcblxuICByZXR1cm4gZnVuY3Rpb24obm9kZSkge1xuICAgIGNvbnN0IG5vZGVzID0gcXVlcnkuZXhlY3V0ZShub2RlKSxcbiAgICAgICAgICBub2Rlc0xlbmd0aCA9IG5vZGVzLmxlbmd0aDtcblxuICAgIGlmIChub2Rlc0xlbmd0aCA+IDApIHtcbiAgICAgIGNvbnN0IGZpcnN0Tm9kZSA9IGZpcnN0KG5vZGVzKTtcblxuICAgICAgbm9kZSA9IGZpcnN0Tm9kZTsgLy8vXG4gICAgfSBlbHNlIHtcbiAgICAgIG5vZGUgPSBudWxsO1xuICAgIH1cblxuICAgIHJldHVybiBub2RlO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBub2Rlc1F1ZXJ5KGV4cHJlc3Npb24pIHtcbiAgY29uc3QgcXVlcnkgPSBRdWVyeS5mcm9tRXhwcmVzc2lvbihleHByZXNzaW9uKTtcblxuICByZXR1cm4gZnVuY3Rpb24obm9kZSkge1xuICAgIGNvbnN0IG5vZGVzID0gcXVlcnkuZXhlY3V0ZShub2RlKTtcblxuICAgIHJldHVybiBub2RlcztcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gbGlua01hcmtkb3duTm9kZXNGcm9tTm9kZShub2RlLCBsaW5rTWFya2Rvd25Ob2RlcyA9IFtdKSB7XG4gIG5vZGVzRnJvbU5vZGVBbmRRdWVyeShub2RlLCBsaW5rTWFya2Rvd25Ob2Rlc1F1ZXJ5LCBsaW5rTWFya2Rvd25Ob2Rlcyk7XG5cbiAgcmV0dXJuIGxpbmtNYXJrZG93bk5vZGVzO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaGVhZGluZ01hcmtkb3duTm9kZXNGcm9tTm9kZShub2RlLCBoZWFkaW5nTWFya2Rvd25Ob2RlcyA9IFtdKSB7XG4gIG5vZGVzRnJvbU5vZGVBbmRRdWVyeShub2RlLCBoZWFkaW5nTWFya2Rvd25Ob2Rlc1F1ZXJ5LCBoZWFkaW5nTWFya2Rvd25Ob2Rlcyk7XG5cbiAgcmV0dXJuIGhlYWRpbmdNYXJrZG93bk5vZGVzO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZm9vdG5vdGVNYXJrZG93bk5vZGVzRnJvbU5vZGUobm9kZSwgZm9vdG5vdGVNYXJrZG93bk5vZGVzID0gW10pIHtcbiAgbm9kZXNGcm9tTm9kZUFuZFF1ZXJ5KG5vZGUsIGZvb3Rub3RlTWFya2Rvd25Ob2Rlc1F1ZXJ5LCBmb290bm90ZU1hcmtkb3duTm9kZXMpO1xuXG4gIHJldHVybiBmb290bm90ZU1hcmtkb3duTm9kZXM7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBsaW5rT3JGb290bm90ZU1hcmtkb3duTm9kZXNGcm9tTm9kZShub2RlLCBsaW5rT3JGb290bm90ZU1hcmtkb3duTm9kZXMgPSBbXSkge1xuICBub2Rlc0Zyb21Ob2RlQW5kUXVlcnkobm9kZSwgbGlua09yRm9vdG5vdGVNYXJrZG93bk5vZGVzUXVlcnksIGxpbmtPckZvb3Rub3RlTWFya2Rvd25Ob2Rlcyk7XG5cbiAgcmV0dXJuIGxpbmtPckZvb3Rub3RlTWFya2Rvd25Ob2Rlcztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGVtYmVkRGlyZWN0aXZlTWFya2Rvd25Ob2Rlc0Zyb21Ob2RlKG5vZGUsIGVtYmVkRGlyZWN0aXZlTWFya2Rvd25Ob2RlcyA9IFtdKSB7XG4gIG5vZGVzRnJvbU5vZGVBbmRRdWVyeShub2RlLCBlbWJlZERpcmVjdGl2ZU1hcmtkb3duTm9kZXNRdWVyeSwgZW1iZWREaXJlY3RpdmVNYXJrZG93bk5vZGVzKTtcblxuICByZXR1cm4gZW1iZWREaXJlY3RpdmVNYXJrZG93bk5vZGVzO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaW5jbHVkZURpcmVjdGl2ZU1hcmtkb3duTm9kZXNGcm9tTm9kZShub2RlLCBpbmNsdWRlRGlyZWN0aXZlTWFya2Rvd25Ob2RlcyA9IFtdKSB7XG4gIG5vZGVzRnJvbU5vZGVBbmRRdWVyeShub2RlLCBpbmNsdWRlRGlyZWN0aXZlTWFya2Rvd25Ob2Rlc1F1ZXJ5LCBpbmNsdWRlRGlyZWN0aXZlTWFya2Rvd25Ob2Rlcyk7XG5cbiAgcmV0dXJuIGluY2x1ZGVEaXJlY3RpdmVNYXJrZG93bk5vZGVzO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaWdub3JlRGlyZWN0aXZlTWFya2Rvd25Ob2RlRnJvbU5vZGUobm9kZSkge1xuICBjb25zdCBpZ25vcmVEaXJlY3RpdmVNYXJrZG93bk5vZGUgPSBub2RlRnJvbU5vZGVBbmRRdWVyeShub2RlLCBpZ25vcmVEaXJlY3RpdmVNYXJrZG93bk5vZGVRdWVyeSk7XG5cbiAgcmV0dXJuIGlnbm9yZURpcmVjdGl2ZU1hcmtkb3duTm9kZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNvbnRlbnRzRGlyZWN0aXZlTWFya2Rvd25Ob2RlRnJvbU5vZGUobm9kZSkge1xuICBjb25zdCBjb250ZW50c0RpcmVjdGl2ZU1hcmtkb3duTm9kZSA9IG5vZGVGcm9tTm9kZUFuZFF1ZXJ5KG5vZGUsIGNvbnRlbnRzRGlyZWN0aXZlTWFya2Rvd25Ob2RlUXVlcnkpO1xuXG4gIHJldHVybiBjb250ZW50c0RpcmVjdGl2ZU1hcmtkb3duTm9kZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZvb3Rub3Rlc0RpcmVjdGl2ZU1hcmtkb3duTm9kZUZyb21Ob2RlKG5vZGUpIHtcbiAgY29uc3QgZm9vdG5vdGVzRGlyZWN0aXZlTWFya2Rvd25Ob2RlID0gbm9kZUZyb21Ob2RlQW5kUXVlcnkobm9kZSwgZm9vdG5vdGVzRGlyZWN0aXZlTWFya2Rvd25Ob2RlUXVlcnkpO1xuXG4gIHJldHVybiBmb290bm90ZXNEaXJlY3RpdmVNYXJrZG93bk5vZGU7XG59XG5cbmV4cG9ydCBkZWZhdWx0IHtcbiAgbGlua01hcmtkb3duTm9kZXNGcm9tTm9kZSxcbiAgaGVhZGluZ01hcmtkb3duTm9kZXNGcm9tTm9kZSxcbiAgZm9vdG5vdGVNYXJrZG93bk5vZGVzRnJvbU5vZGUsXG4gIGxpbmtPckZvb3Rub3RlTWFya2Rvd25Ob2Rlc0Zyb21Ob2RlLFxuICBlbWJlZERpcmVjdGl2ZU1hcmtkb3duTm9kZXNGcm9tTm9kZSxcbiAgaW5jbHVkZURpcmVjdGl2ZU1hcmtkb3duTm9kZXNGcm9tTm9kZSxcbiAgaWdub3JlRGlyZWN0aXZlTWFya2Rvd25Ob2RlRnJvbU5vZGUsXG4gIGNvbnRlbnRzRGlyZWN0aXZlTWFya2Rvd25Ob2RlRnJvbU5vZGUsXG4gIGZvb3Rub3Rlc0RpcmVjdGl2ZU1hcmtkb3duTm9kZUZyb21Ob2RlXG59O1xuXG5mdW5jdGlvbiBub2RlRnJvbU5vZGVBbmRRdWVyeShub2RlLCBxdWVyeSkge1xuICBjb25zdCBxdWVyeU5vZGVzID0gcXVlcnkuZXhlY3V0ZShub2RlKSxcbiAgICAgICAgcXVlcnlOb2Rlc0xlbmd0aCA9IHF1ZXJ5Tm9kZXMubGVuZ3RoO1xuXG4gIGlmIChxdWVyeU5vZGVzTGVuZ3RoID09PSAwKSB7XG4gICAgbm9kZSA9IG51bGw7XG4gIH0gZWxzZSB7XG4gICAgY29uc3QgZmlyc3RRdWVyeU5vZGUgPSBmaXJzdChxdWVyeU5vZGVzKTtcblxuICAgIG5vZGUgPSBmaXJzdFF1ZXJ5Tm9kZTsgIC8vL1xuICB9XG5cbiAgcmV0dXJuIG5vZGU7XG59XG5cbmZ1bmN0aW9uIG5vZGVzRnJvbU5vZGVBbmRRdWVyeShub2RlLCBxdWVyeSwgbm9kZXMpIHtcbiAgY29uc3QgcXVlcnlOb2RlcyA9IHF1ZXJ5LmV4ZWN1dGUobm9kZSk7XG5cbiAgcHVzaChub2RlcywgcXVlcnlOb2Rlcyk7XG5cbiAgcmV0dXJuIG5vZGVzO1xufVxuIl0sIm5hbWVzIjpbImNvbnRlbnRzRGlyZWN0aXZlTWFya2Rvd25Ob2RlRnJvbU5vZGUiLCJlbWJlZERpcmVjdGl2ZU1hcmtkb3duTm9kZXNGcm9tTm9kZSIsImZvb3Rub3RlTWFya2Rvd25Ob2Rlc0Zyb21Ob2RlIiwiZm9vdG5vdGVzRGlyZWN0aXZlTWFya2Rvd25Ob2RlRnJvbU5vZGUiLCJoZWFkaW5nTWFya2Rvd25Ob2Rlc0Zyb21Ob2RlIiwiaWdub3JlRGlyZWN0aXZlTWFya2Rvd25Ob2RlRnJvbU5vZGUiLCJpbmNsdWRlRGlyZWN0aXZlTWFya2Rvd25Ob2Rlc0Zyb21Ob2RlIiwibGlua01hcmtkb3duTm9kZXNGcm9tTm9kZSIsImxpbmtPckZvb3Rub3RlTWFya2Rvd25Ob2Rlc0Zyb21Ob2RlIiwibm9kZVF1ZXJ5Iiwibm9kZXNRdWVyeSIsImZpcnN0IiwiYXJyYXlVdGlsaXRpZXMiLCJwdXNoIiwibGlua01hcmtkb3duTm9kZXNRdWVyeSIsIlF1ZXJ5IiwiZnJvbUV4cHJlc3Npb24iLCJoZWFkaW5nTWFya2Rvd25Ob2Rlc1F1ZXJ5IiwiZm9vdG5vdGVNYXJrZG93bk5vZGVzUXVlcnkiLCJsaW5rT3JGb290bm90ZU1hcmtkb3duTm9kZXNRdWVyeSIsImVtYmVkRGlyZWN0aXZlTWFya2Rvd25Ob2Rlc1F1ZXJ5IiwiaW5jbHVkZURpcmVjdGl2ZU1hcmtkb3duTm9kZXNRdWVyeSIsImlnbm9yZURpcmVjdGl2ZU1hcmtkb3duTm9kZVF1ZXJ5IiwiY29udGVudHNEaXJlY3RpdmVNYXJrZG93bk5vZGVRdWVyeSIsImZvb3Rub3Rlc0RpcmVjdGl2ZU1hcmtkb3duTm9kZVF1ZXJ5IiwiZXhwcmVzc2lvbiIsInF1ZXJ5Iiwibm9kZSIsIm5vZGVzIiwiZXhlY3V0ZSIsIm5vZGVzTGVuZ3RoIiwibGVuZ3RoIiwiZmlyc3ROb2RlIiwibGlua01hcmtkb3duTm9kZXMiLCJub2Rlc0Zyb21Ob2RlQW5kUXVlcnkiLCJoZWFkaW5nTWFya2Rvd25Ob2RlcyIsImZvb3Rub3RlTWFya2Rvd25Ob2RlcyIsImxpbmtPckZvb3Rub3RlTWFya2Rvd25Ob2RlcyIsImVtYmVkRGlyZWN0aXZlTWFya2Rvd25Ob2RlcyIsImluY2x1ZGVEaXJlY3RpdmVNYXJrZG93bk5vZGVzIiwiaWdub3JlRGlyZWN0aXZlTWFya2Rvd25Ob2RlIiwibm9kZUZyb21Ob2RlQW5kUXVlcnkiLCJjb250ZW50c0RpcmVjdGl2ZU1hcmtkb3duTm9kZSIsImZvb3Rub3Rlc0RpcmVjdGl2ZU1hcmtkb3duTm9kZSIsInF1ZXJ5Tm9kZXMiLCJxdWVyeU5vZGVzTGVuZ3RoIiwiZmlyc3RRdWVyeU5vZGUiXSwicmFuZ2VNYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OzsiLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O0lBd0ZnQkEscUNBQXFDO2VBQXJDQTs7SUFZaEIsT0FVRTtlQVZGOztJQTlCZ0JDLG1DQUFtQztlQUFuQ0E7O0lBWkFDLDZCQUE2QjtlQUE3QkE7O0lBb0NBQyxzQ0FBc0M7ZUFBdENBOztJQTFDQUMsNEJBQTRCO2VBQTVCQTs7SUE4QkFDLG1DQUFtQztlQUFuQ0E7O0lBTkFDLHFDQUFxQztlQUFyQ0E7O0lBOUJBQyx5QkFBeUI7ZUFBekJBOztJQWtCQUMsbUNBQW1DO2VBQW5DQTs7SUEvQ0FDLFNBQVM7ZUFBVEE7O0lBbUJBQyxVQUFVO2VBQVZBOzs7MEJBbENNO3lCQUNTO0FBRS9CLElBQVFDLFFBQWdCQyx5QkFBYyxDQUE5QkQsT0FBT0UsT0FBU0QseUJBQWMsQ0FBdkJDO0FBRWYsSUFBTUMseUJBQXlCQyxpQkFBSyxDQUFDQyxjQUFjLENBQUMsV0FDOUNDLDRCQUE0QkYsaUJBQUssQ0FBQ0MsY0FBYyxDQUFDLHdFQUNqREUsNkJBQTZCSCxpQkFBSyxDQUFDQyxjQUFjLENBQUMsZUFDbERHLG1DQUFtQ0osaUJBQUssQ0FBQ0MsY0FBYyxDQUFDLG9CQUN4REksbUNBQW1DTCxpQkFBSyxDQUFDQyxjQUFjLENBQUMsZ0NBQ3hESyxxQ0FBcUNOLGlC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
|
|
142
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvcXVlcnkuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IFF1ZXJ5IH0gZnJvbSBcIm9jY2FtLXF1ZXJ5XCI7XG5pbXBvcnQgeyBhcnJheVV0aWxpdGllcyB9IGZyb20gXCJuZWNlc3NhcnlcIjtcblxuY29uc3QgeyBmaXJzdCwgcHVzaCB9ID0gYXJyYXlVdGlsaXRpZXM7XG5cbmNvbnN0IGxpbmtNYXJrZG93bk5vZGVzUXVlcnkgPSBRdWVyeS5mcm9tRXhwcmVzc2lvbihcIi8vbGlua1wiKSxcbiAgICAgIGhlYWRpbmdNYXJrZG93bk5vZGVzUXVlcnkgPSBRdWVyeS5mcm9tRXhwcmVzc2lvbihcIi8vcHJpbWFyeUhlYWRpbmd8c2Vjb25kYXJ5SGVhZGluZ3x0ZXJ0aWFyeUhlYWRpbmd8cXVhdGVybmFyeUhlYWRpbmdcIiksXG4gICAgICBmb290bm90ZU1hcmtkb3duTm9kZXNRdWVyeSA9IFF1ZXJ5LmZyb21FeHByZXNzaW9uKFwiLy9mb290bm90ZVwiKSxcbiAgICAgIGVtYmVkRGlyZWN0aXZlTWFya2Rvd25Ob2Rlc1F1ZXJ5ID0gUXVlcnkuZnJvbUV4cHJlc3Npb24oXCIvL2RpcmVjdGl2ZXMvZW1iZWREaXJlY3RpdmVcIiksXG4gICAgICBsaW5rT3JSZWZlcmVuY2VNYXJrZG93bk5vZGVzUXVlcnkgPSBRdWVyeS5mcm9tRXhwcmVzc2lvbihcIi8vbGlua3xyZWZlcmVuY2VcIiksXG4gICAgICBpbmNsdWRlRGlyZWN0aXZlTWFya2Rvd25Ob2Rlc1F1ZXJ5ID0gUXVlcnkuZnJvbUV4cHJlc3Npb24oXCIvL2RpcmVjdGl2ZXMvaW5jbHVkZURpcmVjdGl2ZVwiKSxcbiAgICAgIGlnbm9yZURpcmVjdGl2ZU1hcmtkb3duTm9kZVF1ZXJ5ID0gUXVlcnkuZnJvbUV4cHJlc3Npb24oXCIvL2RpcmVjdGl2ZXMvaWdub3JlRGlyZWN0aXZlXCIpLFxuICAgICAgY29udGVudHNEaXJlY3RpdmVNYXJrZG93bk5vZGVRdWVyeSA9IFF1ZXJ5LmZyb21FeHByZXNzaW9uKFwiLy9kaXJlY3RpdmVzL2NvbnRlbnRzRGlyZWN0aXZlXCIpLFxuICAgICAgZm9vdG5vdGVzRGlyZWN0aXZlTWFya2Rvd25Ob2RlUXVlcnkgPSBRdWVyeS5mcm9tRXhwcmVzc2lvbihcIi8vZGlyZWN0aXZlcy9mb290bm90ZXNEaXJlY3RpdmVcIik7XG5cbmV4cG9ydCBmdW5jdGlvbiBub2RlUXVlcnkoZXhwcmVzc2lvbikge1xuICBjb25zdCBxdWVyeSA9IFF1ZXJ5LmZyb21FeHByZXNzaW9uKGV4cHJlc3Npb24pO1xuXG4gIHJldHVybiBmdW5jdGlvbihub2RlKSB7XG4gICAgY29uc3Qgbm9kZXMgPSBxdWVyeS5leGVjdXRlKG5vZGUpLFxuICAgICAgICAgIG5vZGVzTGVuZ3RoID0gbm9kZXMubGVuZ3RoO1xuXG4gICAgaWYgKG5vZGVzTGVuZ3RoID4gMCkge1xuICAgICAgY29uc3QgZmlyc3ROb2RlID0gZmlyc3Qobm9kZXMpO1xuXG4gICAgICBub2RlID0gZmlyc3ROb2RlOyAvLy9cbiAgICB9IGVsc2Uge1xuICAgICAgbm9kZSA9IG51bGw7XG4gICAgfVxuXG4gICAgcmV0dXJuIG5vZGU7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG5vZGVzUXVlcnkoZXhwcmVzc2lvbikge1xuICBjb25zdCBxdWVyeSA9IFF1ZXJ5LmZyb21FeHByZXNzaW9uKGV4cHJlc3Npb24pO1xuXG4gIHJldHVybiBmdW5jdGlvbihub2RlKSB7XG4gICAgY29uc3Qgbm9kZXMgPSBxdWVyeS5leGVjdXRlKG5vZGUpO1xuXG4gICAgcmV0dXJuIG5vZGVzO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBsaW5rTWFya2Rvd25Ob2Rlc0Zyb21Ob2RlKG5vZGUsIGxpbmtNYXJrZG93bk5vZGVzID0gW10pIHtcbiAgbm9kZXNGcm9tTm9kZUFuZFF1ZXJ5KG5vZGUsIGxpbmtNYXJrZG93bk5vZGVzUXVlcnksIGxpbmtNYXJrZG93bk5vZGVzKTtcblxuICByZXR1cm4gbGlua01hcmtkb3duTm9kZXM7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBoZWFkaW5nTWFya2Rvd25Ob2Rlc0Zyb21Ob2RlKG5vZGUsIGhlYWRpbmdNYXJrZG93bk5vZGVzID0gW10pIHtcbiAgbm9kZXNGcm9tTm9kZUFuZFF1ZXJ5KG5vZGUsIGhlYWRpbmdNYXJrZG93bk5vZGVzUXVlcnksIGhlYWRpbmdNYXJrZG93bk5vZGVzKTtcblxuICByZXR1cm4gaGVhZGluZ01hcmtkb3duTm9kZXM7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmb290bm90ZU1hcmtkb3duTm9kZXNGcm9tTm9kZShub2RlLCBmb290bm90ZU1hcmtkb3duTm9kZXMgPSBbXSkge1xuICBub2Rlc0Zyb21Ob2RlQW5kUXVlcnkobm9kZSwgZm9vdG5vdGVNYXJrZG93bk5vZGVzUXVlcnksIGZvb3Rub3RlTWFya2Rvd25Ob2Rlcyk7XG5cbiAgcmV0dXJuIGZvb3Rub3RlTWFya2Rvd25Ob2Rlcztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGVtYmVkRGlyZWN0aXZlTWFya2Rvd25Ob2Rlc0Zyb21Ob2RlKG5vZGUsIGVtYmVkRGlyZWN0aXZlTWFya2Rvd25Ob2RlcyA9IFtdKSB7XG4gIG5vZGVzRnJvbU5vZGVBbmRRdWVyeShub2RlLCBlbWJlZERpcmVjdGl2ZU1hcmtkb3duTm9kZXNRdWVyeSwgZW1iZWREaXJlY3RpdmVNYXJrZG93bk5vZGVzKTtcblxuICByZXR1cm4gZW1iZWREaXJlY3RpdmVNYXJrZG93bk5vZGVzO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbGlua09yUmVmZXJlbmNlTWFya2Rvd25Ob2Rlc0Zyb21Ob2RlKG5vZGUsIGxpbmtPclJlZmVyZW5jZU1hcmtkb3duTm9kZXMgPSBbXSkge1xuICBub2Rlc0Zyb21Ob2RlQW5kUXVlcnkobm9kZSwgbGlua09yUmVmZXJlbmNlTWFya2Rvd25Ob2Rlc1F1ZXJ5LCBsaW5rT3JSZWZlcmVuY2VNYXJrZG93bk5vZGVzKTtcblxuICByZXR1cm4gbGlua09yUmVmZXJlbmNlTWFya2Rvd25Ob2Rlcztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGluY2x1ZGVEaXJlY3RpdmVNYXJrZG93bk5vZGVzRnJvbU5vZGUobm9kZSwgaW5jbHVkZURpcmVjdGl2ZU1hcmtkb3duTm9kZXMgPSBbXSkge1xuICBub2Rlc0Zyb21Ob2RlQW5kUXVlcnkobm9kZSwgaW5jbHVkZURpcmVjdGl2ZU1hcmtkb3duTm9kZXNRdWVyeSwgaW5jbHVkZURpcmVjdGl2ZU1hcmtkb3duTm9kZXMpO1xuXG4gIHJldHVybiBpbmNsdWRlRGlyZWN0aXZlTWFya2Rvd25Ob2Rlcztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlnbm9yZURpcmVjdGl2ZU1hcmtkb3duTm9kZUZyb21Ob2RlKG5vZGUpIHtcbiAgY29uc3QgaWdub3JlRGlyZWN0aXZlTWFya2Rvd25Ob2RlID0gbm9kZUZyb21Ob2RlQW5kUXVlcnkobm9kZSwgaWdub3JlRGlyZWN0aXZlTWFya2Rvd25Ob2RlUXVlcnkpO1xuXG4gIHJldHVybiBpZ25vcmVEaXJlY3RpdmVNYXJrZG93bk5vZGU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjb250ZW50c0RpcmVjdGl2ZU1hcmtkb3duTm9kZUZyb21Ob2RlKG5vZGUpIHtcbiAgY29uc3QgY29udGVudHNEaXJlY3RpdmVNYXJrZG93bk5vZGUgPSBub2RlRnJvbU5vZGVBbmRRdWVyeShub2RlLCBjb250ZW50c0RpcmVjdGl2ZU1hcmtkb3duTm9kZVF1ZXJ5KTtcblxuICByZXR1cm4gY29udGVudHNEaXJlY3RpdmVNYXJrZG93bk5vZGU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmb290bm90ZXNEaXJlY3RpdmVNYXJrZG93bk5vZGVGcm9tTm9kZShub2RlKSB7XG4gIGNvbnN0IGZvb3Rub3Rlc0RpcmVjdGl2ZU1hcmtkb3duTm9kZSA9IG5vZGVGcm9tTm9kZUFuZFF1ZXJ5KG5vZGUsIGZvb3Rub3Rlc0RpcmVjdGl2ZU1hcmtkb3duTm9kZVF1ZXJ5KTtcblxuICByZXR1cm4gZm9vdG5vdGVzRGlyZWN0aXZlTWFya2Rvd25Ob2RlO1xufVxuXG5leHBvcnQgZGVmYXVsdCB7XG4gIGxpbmtNYXJrZG93bk5vZGVzRnJvbU5vZGUsXG4gIGhlYWRpbmdNYXJrZG93bk5vZGVzRnJvbU5vZGUsXG4gIGZvb3Rub3RlTWFya2Rvd25Ob2Rlc0Zyb21Ob2RlLFxuICBlbWJlZERpcmVjdGl2ZU1hcmtkb3duTm9kZXNGcm9tTm9kZSxcbiAgbGlua09yUmVmZXJlbmNlTWFya2Rvd25Ob2Rlc0Zyb21Ob2RlLFxuICBpbmNsdWRlRGlyZWN0aXZlTWFya2Rvd25Ob2Rlc0Zyb21Ob2RlLFxuICBpZ25vcmVEaXJlY3RpdmVNYXJrZG93bk5vZGVGcm9tTm9kZSxcbiAgY29udGVudHNEaXJlY3RpdmVNYXJrZG93bk5vZGVGcm9tTm9kZSxcbiAgZm9vdG5vdGVzRGlyZWN0aXZlTWFya2Rvd25Ob2RlRnJvbU5vZGVcbn07XG5cbmZ1bmN0aW9uIG5vZGVGcm9tTm9kZUFuZFF1ZXJ5KG5vZGUsIHF1ZXJ5KSB7XG4gIGNvbnN0IHF1ZXJ5Tm9kZXMgPSBxdWVyeS5leGVjdXRlKG5vZGUpLFxuICAgICAgICBxdWVyeU5vZGVzTGVuZ3RoID0gcXVlcnlOb2Rlcy5sZW5ndGg7XG5cbiAgaWYgKHF1ZXJ5Tm9kZXNMZW5ndGggPT09IDApIHtcbiAgICBub2RlID0gbnVsbDtcbiAgfSBlbHNlIHtcbiAgICBjb25zdCBmaXJzdFF1ZXJ5Tm9kZSA9IGZpcnN0KHF1ZXJ5Tm9kZXMpO1xuXG4gICAgbm9kZSA9IGZpcnN0UXVlcnlOb2RlOyAgLy8vXG4gIH1cblxuICByZXR1cm4gbm9kZTtcbn1cblxuZnVuY3Rpb24gbm9kZXNGcm9tTm9kZUFuZFF1ZXJ5KG5vZGUsIHF1ZXJ5LCBub2Rlcykge1xuICBjb25zdCBxdWVyeU5vZGVzID0gcXVlcnkuZXhlY3V0ZShub2RlKTtcblxuICBwdXNoKG5vZGVzLCBxdWVyeU5vZGVzKTtcblxuICByZXR1cm4gbm9kZXM7XG59XG4iXSwibmFtZXMiOlsiY29udGVudHNEaXJlY3RpdmVNYXJrZG93bk5vZGVGcm9tTm9kZSIsImVtYmVkRGlyZWN0aXZlTWFya2Rvd25Ob2Rlc0Zyb21Ob2RlIiwiZm9vdG5vdGVNYXJrZG93bk5vZGVzRnJvbU5vZGUiLCJmb290bm90ZXNEaXJlY3RpdmVNYXJrZG93bk5vZGVGcm9tTm9kZSIsImhlYWRpbmdNYXJrZG93bk5vZGVzRnJvbU5vZGUiLCJpZ25vcmVEaXJlY3RpdmVNYXJrZG93bk5vZGVGcm9tTm9kZSIsImluY2x1ZGVEaXJlY3RpdmVNYXJrZG93bk5vZGVzRnJvbU5vZGUiLCJsaW5rTWFya2Rvd25Ob2Rlc0Zyb21Ob2RlIiwibGlua09yUmVmZXJlbmNlTWFya2Rvd25Ob2Rlc0Zyb21Ob2RlIiwibm9kZVF1ZXJ5Iiwibm9kZXNRdWVyeSIsImZpcnN0IiwiYXJyYXlVdGlsaXRpZXMiLCJwdXNoIiwibGlua01hcmtkb3duTm9kZXNRdWVyeSIsIlF1ZXJ5IiwiZnJvbUV4cHJlc3Npb24iLCJoZWFkaW5nTWFya2Rvd25Ob2Rlc1F1ZXJ5IiwiZm9vdG5vdGVNYXJrZG93bk5vZGVzUXVlcnkiLCJlbWJlZERpcmVjdGl2ZU1hcmtkb3duTm9kZXNRdWVyeSIsImxpbmtPclJlZmVyZW5jZU1hcmtkb3duTm9kZXNRdWVyeSIsImluY2x1ZGVEaXJlY3RpdmVNYXJrZG93bk5vZGVzUXVlcnkiLCJpZ25vcmVEaXJlY3RpdmVNYXJrZG93bk5vZGVRdWVyeSIsImNvbnRlbnRzRGlyZWN0aXZlTWFya2Rvd25Ob2RlUXVlcnkiLCJmb290bm90ZXNEaXJlY3RpdmVNYXJrZG93bk5vZGVRdWVyeSIsImV4cHJlc3Npb24iLCJxdWVyeSIsIm5vZGUiLCJub2RlcyIsImV4ZWN1dGUiLCJub2Rlc0xlbmd0aCIsImxlbmd0aCIsImZpcnN0Tm9kZSIsImxpbmtNYXJrZG93bk5vZGVzIiwibm9kZXNGcm9tTm9kZUFuZFF1ZXJ5IiwiaGVhZGluZ01hcmtkb3duTm9kZXMiLCJmb290bm90ZU1hcmtkb3duTm9kZXMiLCJlbWJlZERpcmVjdGl2ZU1hcmtkb3duTm9kZXMiLCJsaW5rT3JSZWZlcmVuY2VNYXJrZG93bk5vZGVzIiwiaW5jbHVkZURpcmVjdGl2ZU1hcmtkb3duTm9kZXMiLCJpZ25vcmVEaXJlY3RpdmVNYXJrZG93bk5vZGUiLCJub2RlRnJvbU5vZGVBbmRRdWVyeSIsImNvbnRlbnRzRGlyZWN0aXZlTWFya2Rvd25Ob2RlIiwiZm9vdG5vdGVzRGlyZWN0aXZlTWFya2Rvd25Ob2RlIiwicXVlcnlOb2RlcyIsInF1ZXJ5Tm9kZXNMZW5ndGgiLCJmaXJzdFF1ZXJ5Tm9kZSJdLCJyYW5nZU1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OyIsIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7SUF3RmdCQSxxQ0FBcUM7ZUFBckNBOztJQVloQixPQVVFO2VBVkY7O0lBcENnQkMsbUNBQW1DO2VBQW5DQTs7SUFOQUMsNkJBQTZCO2VBQTdCQTs7SUFvQ0FDLHNDQUFzQztlQUF0Q0E7O0lBMUNBQyw0QkFBNEI7ZUFBNUJBOztJQThCQUMsbUNBQW1DO2VBQW5DQTs7SUFOQUMscUNBQXFDO2VBQXJDQTs7SUE5QkFDLHlCQUF5QjtlQUF6QkE7O0lBd0JBQyxvQ0FBb0M7ZUFBcENBOztJQXJEQUMsU0FBUztlQUFUQTs7SUFtQkFDLFVBQVU7ZUFBVkE7OzswQkFsQ007eUJBQ1M7QUFFL0IsSUFBUUMsUUFBZ0JDLHlCQUFjLENBQTlCRCxPQUFPRSxPQUFTRCx5QkFBYyxDQUF2QkM7QUFFZixJQUFNQyx5QkFBeUJDLGlCQUFLLENBQUNDLGNBQWMsQ0FBQyxXQUM5Q0MsNEJBQTRCRixpQkFBSyxDQUFDQyxjQUFjLENBQUMsd0VBQ2pERSw2QkFBNkJILGlCQUFLLENBQUNDLGNBQWMsQ0FBQyxlQUNsREcsbUNBQW1DSixpQkFBSyxDQUFDQyxjQUFjLENBQUMsZ0NBQ3hESSxvQ0FBb0NMLGlCQUFLLENBQUNDLGNBQWMsQ0FBQyxxQkFDekRL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
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "highmark-markdown",
|
|
3
3
|
"author": "James Smith",
|
|
4
|
-
"version": "0.0.
|
|
4
|
+
"version": "0.0.328",
|
|
5
5
|
"license": "MIT, Anti-996",
|
|
6
6
|
"homepage": "https://github.com/djalbat/highmark-markdown",
|
|
7
7
|
"description": "Highmark's Markdown and Markdown Style languages.",
|
package/src/elementMap.js
CHANGED
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import {
|
|
3
|
+
import { LINE_RULE_NAME,
|
|
4
|
+
LINK_RULE_NAME,
|
|
4
5
|
IMAGE_RULE_NAME,
|
|
5
6
|
TABLE_RULE_NAME,
|
|
6
7
|
ERROR_RULE_NAME,
|
|
7
8
|
ANCHOR_RULE_NAME,
|
|
8
9
|
DIVISION_RULE_NAME,
|
|
9
10
|
FOOTNOTE_RULE_NAME,
|
|
11
|
+
REFERENCE_RULE_NAME,
|
|
10
12
|
PARAGRAPH_RULE_NAME,
|
|
11
13
|
HYPERLINK_RULE_NAME,
|
|
12
14
|
TABLE_CELL_RULE_NAME,
|
|
@@ -52,6 +54,10 @@ import { LINK_RULE_NAME,
|
|
|
52
54
|
STRONGLY_EMPHASISED_TEXT_RULE_NAME } from "./ruleNames";
|
|
53
55
|
|
|
54
56
|
const elementMap = {
|
|
57
|
+
[LINE_RULE_NAME]: {
|
|
58
|
+
tagName: "span",
|
|
59
|
+
className: "line"
|
|
60
|
+
},
|
|
55
61
|
[LINK_RULE_NAME]: {
|
|
56
62
|
tagName: "a",
|
|
57
63
|
className: "link"
|
|
@@ -80,6 +86,10 @@ const elementMap = {
|
|
|
80
86
|
tagName: null,
|
|
81
87
|
className: null
|
|
82
88
|
},
|
|
89
|
+
[REFERENCE_RULE_NAME]: {
|
|
90
|
+
tagName: null,
|
|
91
|
+
className: null
|
|
92
|
+
},
|
|
83
93
|
[PARAGRAPH_RULE_NAME]: {
|
|
84
94
|
tagName: "p",
|
|
85
95
|
className: null
|
package/src/example/view.js
CHANGED
|
@@ -45,7 +45,9 @@ class View extends Element {
|
|
|
45
45
|
parser = markdownStyleParser, ///
|
|
46
46
|
content = markdownStyle, ///
|
|
47
47
|
tokens = lexer.tokenise(content),
|
|
48
|
-
|
|
48
|
+
startRule = parser.getStartRule(),
|
|
49
|
+
startOfContent = true,
|
|
50
|
+
node = parser.parse(tokens, startRule, startOfContent);
|
|
49
51
|
|
|
50
52
|
if (node !== null) {
|
|
51
53
|
const parseTree = node.asParseTree(tokens);
|
|
@@ -62,7 +64,9 @@ class View extends Element {
|
|
|
62
64
|
parser = markdownParser, ///
|
|
63
65
|
content = markdown, ///
|
|
64
66
|
tokens = lexer.tokenise(content),
|
|
65
|
-
|
|
67
|
+
startRule = parser.getStartRule(),
|
|
68
|
+
startOfContent = true,
|
|
69
|
+
node = parser.parse(tokens, startRule, startOfContent);
|
|
66
70
|
|
|
67
71
|
if (node !== null) {
|
|
68
72
|
const divisionMarkdownNode = node, ///
|
|
@@ -189,8 +193,7 @@ class View extends Element {
|
|
|
189
193
|
static initialMarkdownStyle = `min-height: initial;
|
|
190
194
|
`;
|
|
191
195
|
|
|
192
|
-
static initialMarkdown = `
|
|
193
|
-
[https://en.wikipedia.org/wiki/Backus-Naur_form](https://en.wikipedia.org/wiki/Backus%E2%80%93Naur_form)
|
|
196
|
+
static initialMarkdown = `Paragraph.
|
|
194
197
|
`;
|
|
195
198
|
|
|
196
199
|
static tagName = "div";
|
package/src/markdown/bnf.js
CHANGED
|
@@ -5,7 +5,10 @@ const bnf = `
|
|
|
5
5
|
division ::= ( subDivision | endOfLine | error )+ ;
|
|
6
6
|
|
|
7
7
|
|
|
8
|
-
subDivision ::= verticalSpace
|
|
8
|
+
subDivision ::= verticalSpace paragraph ;
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
subDivision_ ::= verticalSpace ( directives
|
|
9
12
|
|
|
10
13
|
| primaryHeading
|
|
11
14
|
|
|
@@ -60,22 +63,22 @@ const bnf = `
|
|
|
60
63
|
| footnotesDirective ) )* ;
|
|
61
64
|
|
|
62
65
|
|
|
63
|
-
primaryHeading ::= "#"
|
|
66
|
+
primaryHeading ::= "#" line ;
|
|
64
67
|
|
|
65
68
|
|
|
66
|
-
secondaryHeading ::= "##"
|
|
69
|
+
secondaryHeading ::= "##" line ;
|
|
67
70
|
|
|
68
71
|
|
|
69
|
-
tertiaryHeading ::= "###"
|
|
72
|
+
tertiaryHeading ::= "###" line ;
|
|
70
73
|
|
|
71
74
|
|
|
72
|
-
quaternaryHeading ::= "####"
|
|
75
|
+
quaternaryHeading ::= "####" line ;
|
|
73
76
|
|
|
74
77
|
|
|
75
78
|
table ::= tableHead endOfLine [dashes] endOfLine tableBody ;
|
|
76
79
|
|
|
77
80
|
|
|
78
|
-
footnote
|
|
81
|
+
footnote ::= reference paragraph ;
|
|
79
82
|
|
|
80
83
|
|
|
81
84
|
orderedList ::= orderedListItem ( endOfLine orderedListItem )* ;
|
|
@@ -87,7 +90,7 @@ const bnf = `
|
|
|
87
90
|
blockListing ::= blockListingStart endOfLine blockText endOfLine blockListingEnd ;
|
|
88
91
|
|
|
89
92
|
|
|
90
|
-
paragraph ::=
|
|
93
|
+
paragraph ::= line ( endOfLine line )* ;
|
|
91
94
|
|
|
92
95
|
|
|
93
96
|
embedDirective ::= "@embed" [path] ;
|
|
@@ -117,10 +120,10 @@ const bnf = `
|
|
|
117
120
|
tableBody ::= tableBodyRow ( endOfLine tableBodyRow )* ;
|
|
118
121
|
|
|
119
122
|
|
|
120
|
-
orderedListItem ::= [marker]
|
|
123
|
+
orderedListItem ::= [marker] line ( endOfLine line )* ;
|
|
121
124
|
|
|
122
125
|
|
|
123
|
-
unorderedListItem ::= [bullet]
|
|
126
|
+
unorderedListItem ::= [bullet] line ( endOfLine line )* ;
|
|
124
127
|
|
|
125
128
|
|
|
126
129
|
blockListingStart ::= [backticks] className? ;
|
|
@@ -144,7 +147,10 @@ const bnf = `
|
|
|
144
147
|
emptyTableCell ::= "." [vertical-bar];
|
|
145
148
|
|
|
146
149
|
|
|
147
|
-
tableCell ::=
|
|
150
|
+
tableCell ::= line [vertical-bar] ;
|
|
151
|
+
|
|
152
|
+
|
|
153
|
+
line ::= markedText+ ;
|
|
148
154
|
|
|
149
155
|
|
|
150
156
|
markedText ::= ( link
|
|
@@ -236,6 +242,9 @@ const bnf = `
|
|
|
236
242
|
anchor. ::= [identifier] ;
|
|
237
243
|
|
|
238
244
|
|
|
245
|
+
reference. ::= [reference] ;
|
|
246
|
+
|
|
247
|
+
|
|
239
248
|
className ::= <NO_WHITESPACE>[identifier] ;
|
|
240
249
|
|
|
241
250
|
`;
|
|
@@ -8,7 +8,7 @@ import ReplacementNodeAndTokens from "../../replacementNodeAndTokens";
|
|
|
8
8
|
import { HREF_ATTRIBUTE_NAME } from "../../attributeNames";
|
|
9
9
|
import { CONTENTS_LINK_RULE_NAME } from "../../ruleNames";
|
|
10
10
|
|
|
11
|
-
const {
|
|
11
|
+
const { push } = arrayUtilities;
|
|
12
12
|
|
|
13
13
|
export default class ContentsLinkMarkdownNode extends MarkdownNode {
|
|
14
14
|
constructor(ruleName, childNodes, opacity, precedence, domElement, tokens, identifier) {
|
|
@@ -41,25 +41,6 @@ export default class ContentsLinkMarkdownNode extends MarkdownNode {
|
|
|
41
41
|
return attributeValue;
|
|
42
42
|
}
|
|
43
43
|
|
|
44
|
-
childNodesAsHTML(indent, context) {
|
|
45
|
-
const childNodes = this.getChildNodes(),
|
|
46
|
-
lastChildNode = last(childNodes),
|
|
47
|
-
markedTextChildNode = lastChildNode, ///
|
|
48
|
-
markedTextChildNodeChildNodesHTML = markedTextChildNode.childNodesAsHTML(indent, context),
|
|
49
|
-
childNodesHTML = markedTextChildNodeChildNodesHTML;
|
|
50
|
-
|
|
51
|
-
return childNodesHTML;
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
createChildNodeDOMElements(context) {
|
|
55
|
-
const domElement = this.getDOMElement(),
|
|
56
|
-
childNodes = this.getChildNodes(),
|
|
57
|
-
lastChildNode = last(childNodes),
|
|
58
|
-
markedTextChildNode = lastChildNode; ///
|
|
59
|
-
|
|
60
|
-
markedTextChildNode.createChildNodeDOMElements(domElement, context);
|
|
61
|
-
}
|
|
62
|
-
|
|
63
44
|
clone() {
|
|
64
45
|
const tokens = this.tokens.map((token) => {
|
|
65
46
|
token = token.clone(); ///
|
|
@@ -4,26 +4,17 @@ import { arrayUtilities } from "necessary";
|
|
|
4
4
|
|
|
5
5
|
import MarkdownNode from "../../node/markdown";
|
|
6
6
|
|
|
7
|
-
const { first
|
|
7
|
+
const { first } = arrayUtilities;
|
|
8
8
|
|
|
9
9
|
export default class FootnoteMarkdownNode extends MarkdownNode {
|
|
10
10
|
identifier(context) {
|
|
11
11
|
const childNodes = this.getChildNodes(),
|
|
12
12
|
firstChildNode = first(childNodes),
|
|
13
|
-
|
|
14
|
-
identifier =
|
|
13
|
+
referenceMarkdownNode = firstChildNode, ///
|
|
14
|
+
identifier = referenceMarkdownNode.identifier(context);
|
|
15
15
|
|
|
16
16
|
return identifier;
|
|
17
17
|
}
|
|
18
18
|
|
|
19
19
|
static fromRuleNameChildNodesAndOpacity(ruleName, childNodes, opacity) { return MarkdownNode.fromRuleNameChildNodesAndOpacity(FootnoteMarkdownNode, ruleName, childNodes, opacity); }
|
|
20
20
|
}
|
|
21
|
-
|
|
22
|
-
function identifierFromReferenceTerminalNode(referenceTerminalNode) {
|
|
23
|
-
const content = referenceTerminalNode.getContent(),
|
|
24
|
-
matches = content.match(/\[\^([^\]]+)]:/),
|
|
25
|
-
secondMatch = second(matches),
|
|
26
|
-
identifier = secondMatch; ///
|
|
27
|
-
|
|
28
|
-
return identifier;
|
|
29
|
-
}
|
|
@@ -1,15 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import { arrayUtilities } from "necessary";
|
|
4
|
-
|
|
5
3
|
import MarkdownNode from "../../node/markdown";
|
|
6
4
|
import AnchorMarkdownNode from "../../node/markdown/anchor";
|
|
7
5
|
|
|
8
6
|
import { plainTextFromChildNodes } from "../../utilities/childNodes";
|
|
9
7
|
import { replaceSpacesWithHyphens, removedLeadingWhitespace, removeNonAlphabeticAndSpaceCharacters } from "../../utilities/string";
|
|
10
8
|
|
|
11
|
-
const { last } = arrayUtilities;
|
|
12
|
-
|
|
13
9
|
export default class HeadingMarkdownNode extends MarkdownNode {
|
|
14
10
|
getLevel() {
|
|
15
11
|
const { level } = this.constructor;
|
|
@@ -43,25 +39,6 @@ export default class HeadingMarkdownNode extends MarkdownNode {
|
|
|
43
39
|
return position;
|
|
44
40
|
}
|
|
45
41
|
|
|
46
|
-
childNodesAsHTML(indent, context) {
|
|
47
|
-
const childNodes = this.getChildNodes(),
|
|
48
|
-
lastChildNode = last(childNodes),
|
|
49
|
-
markedTextChildNode = lastChildNode, ///
|
|
50
|
-
markedTextChildNodeChildNodesHTML = markedTextChildNode.childNodesAsHTML(indent, context),
|
|
51
|
-
childNodesHTML = markedTextChildNodeChildNodesHTML;
|
|
52
|
-
|
|
53
|
-
return childNodesHTML;
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
createChildNodeDOMElements(context) {
|
|
57
|
-
const domElement = this.getDOMElement(),
|
|
58
|
-
childNodes = this.getChildNodes(),
|
|
59
|
-
lastChildNode = last(childNodes),
|
|
60
|
-
markedTextChildNode = lastChildNode; ///
|
|
61
|
-
|
|
62
|
-
markedTextChildNode.createChildNodeDOMElements(domElement, context);
|
|
63
|
-
}
|
|
64
|
-
|
|
65
42
|
static fromRuleNameChildNodesAndOpacity(Class, ruleName, childNodes, opacity) { return MarkdownNode.fromRuleNameChildNodesAndOpacity(Class, ruleName, childNodes, opacity); }
|
|
66
43
|
}
|
|
67
44
|
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import MarkdownNode from "../../node/markdown";
|
|
4
|
+
|
|
5
|
+
import { htmlFromChildNodes, domElementsFromChildNodes } from "../../utilities/childNodes";
|
|
6
|
+
|
|
7
|
+
export default class LineMarkdownNode extends MarkdownNode {
|
|
8
|
+
childNodesAsHTML(indent, context, leftTrimmed = false) {
|
|
9
|
+
const childNodes = this.getChildNodes(),
|
|
10
|
+
html = htmlFromChildNodes(childNodes, context, leftTrimmed);
|
|
11
|
+
|
|
12
|
+
return html;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
createChildNodeDOMElements(domElement, context, leftTrimmed = false) {
|
|
16
|
+
const childNodes = this.getChildNodes(),
|
|
17
|
+
domElements = domElementsFromChildNodes(childNodes, context, leftTrimmed),
|
|
18
|
+
parentDOMElement = domElement, ///
|
|
19
|
+
childNodeDOMElements = domElements; ///
|
|
20
|
+
|
|
21
|
+
childNodeDOMElements.forEach((childNodeDOMElement) => {
|
|
22
|
+
const domElement = childNodeDOMElement; ///
|
|
23
|
+
|
|
24
|
+
parentDOMElement.appendChild(domElement);
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
static fromRuleNameChildNodesAndOpacity(ruleName, childNodes, opacity) { return MarkdownNode.fromRuleNameChildNodesAndOpacity(LineMarkdownNode, ruleName, childNodes, opacity); }
|
|
29
|
+
}
|
|
@@ -2,43 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
import MarkdownNode from "../../node/markdown";
|
|
4
4
|
|
|
5
|
-
import { isIndexOdd } from "../../utilities/index";
|
|
6
|
-
import { EMPTY_STRING } from "../../constants";
|
|
7
|
-
|
|
8
5
|
export default class ListItemMarkdownNode extends MarkdownNode {
|
|
9
|
-
childNodesAsHTML(indent, context) {
|
|
10
|
-
let childNodesHTML = EMPTY_STRING;
|
|
11
|
-
|
|
12
|
-
const childNodes = this.getChildNodes();
|
|
13
|
-
|
|
14
|
-
childNodes.forEach((childNode, index) => {
|
|
15
|
-
const indexOdd = isIndexOdd(index);
|
|
16
|
-
|
|
17
|
-
if (indexOdd) {
|
|
18
|
-
const markedTextChildNode = childNode, ///
|
|
19
|
-
markedTextChildNodeChildNodesHTML = markedTextChildNode.childNodesAsHTML(indent, context);
|
|
20
|
-
|
|
21
|
-
childNodesHTML = `${childNodesHTML}${markedTextChildNodeChildNodesHTML}`;
|
|
22
|
-
}
|
|
23
|
-
});
|
|
24
|
-
|
|
25
|
-
return childNodesHTML;
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
createChildNodeDOMElements(context) {
|
|
29
|
-
const domElement = this.getDOMElement(),
|
|
30
|
-
childNodes = this.getChildNodes();
|
|
31
|
-
|
|
32
|
-
childNodes.forEach((childNode, index) => {
|
|
33
|
-
const indexOdd = isIndexOdd(index);
|
|
34
|
-
|
|
35
|
-
if (indexOdd) {
|
|
36
|
-
const markedTextChildNode = childNode; ///
|
|
37
|
-
|
|
38
|
-
markedTextChildNode.createChildNodeDOMElements(domElement, context);
|
|
39
|
-
}
|
|
40
|
-
});
|
|
41
|
-
}
|
|
42
|
-
|
|
43
6
|
static fromRuleNameChildNodesAndOpacity(Class, ruleName, childNodes, opacity) { return MarkdownNode.fromRuleNameChildNodesAndOpacity(Class, ruleName, childNodes, opacity); }
|
|
44
7
|
}
|
|
@@ -2,43 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
import MarkdownNode from "../../node/markdown";
|
|
4
4
|
|
|
5
|
-
import { isIndexEven } from "../../utilities/index";
|
|
6
|
-
import { EMPTY_STRING } from "../../constants";
|
|
7
|
-
|
|
8
5
|
export default class ParagraphMarkdownNode extends MarkdownNode {
|
|
9
|
-
childNodesAsHTML(indent, context) {
|
|
10
|
-
let childNodesHTML = EMPTY_STRING;
|
|
11
|
-
|
|
12
|
-
const childNodes = this.getChildNodes();
|
|
13
|
-
|
|
14
|
-
childNodes.forEach((childNode, index) => {
|
|
15
|
-
const indexEven = isIndexEven(index);
|
|
16
|
-
|
|
17
|
-
if (indexEven) {
|
|
18
|
-
const markedTextChildNode = childNode, ///
|
|
19
|
-
markedTextChildNodeChildNodesHTML = markedTextChildNode.childNodesAsHTML(indent, context);
|
|
20
|
-
|
|
21
|
-
childNodesHTML = `${childNodesHTML}${markedTextChildNodeChildNodesHTML}`;
|
|
22
|
-
}
|
|
23
|
-
});
|
|
24
|
-
|
|
25
|
-
return childNodesHTML;
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
createChildNodeDOMElements(context) {
|
|
29
|
-
const domElement = this.getDOMElement(),
|
|
30
|
-
childNodes = this.getChildNodes();
|
|
31
|
-
|
|
32
|
-
childNodes.forEach((childNode, index) => {
|
|
33
|
-
const indexEven = isIndexEven(index);
|
|
34
|
-
|
|
35
|
-
if (indexEven) {
|
|
36
|
-
const markedTextChildNode = childNode; ///
|
|
37
|
-
|
|
38
|
-
markedTextChildNode.createChildNodeDOMElements(domElement, context);
|
|
39
|
-
}
|
|
40
|
-
});
|
|
41
|
-
}
|
|
42
|
-
|
|
43
6
|
static fromRuleNameChildNodesAndOpacity(ruleName, childNodes, opacity) { return MarkdownNode.fromRuleNameChildNodesAndOpacity(ParagraphMarkdownNode, ruleName, childNodes, opacity); }
|
|
44
7
|
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { arrayUtilities } from "necessary";
|
|
4
|
+
|
|
5
|
+
import MarkdownNode from "../../node/markdown";
|
|
6
|
+
|
|
7
|
+
const { first, second } = arrayUtilities;
|
|
8
|
+
|
|
9
|
+
export default class ReferenceMarkdownNode extends MarkdownNode {
|
|
10
|
+
identifier(context) {
|
|
11
|
+
const childNodes = this.getChildNodes(),
|
|
12
|
+
firstChildNode = first(childNodes),
|
|
13
|
+
referenceTerminalNode = firstChildNode, ///
|
|
14
|
+
identifier = identifierFromReferenceTerminalNode(referenceTerminalNode);
|
|
15
|
+
|
|
16
|
+
return identifier;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
static fromRuleNameChildNodesAndOpacity(ruleName, childNodes, opacity) { return MarkdownNode.fromRuleNameChildNodesAndOpacity(ReferenceMarkdownNode, ruleName, childNodes, opacity); }
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
function identifierFromReferenceTerminalNode(referenceTerminalNode) {
|
|
23
|
+
const content = referenceTerminalNode.getContent(),
|
|
24
|
+
matches = content.match(/\[\^([^\]]+)]:/),
|
|
25
|
+
secondMatch = second(matches),
|
|
26
|
+
identifier = secondMatch; ///
|
|
27
|
+
|
|
28
|
+
return identifier;
|
|
29
|
+
}
|
|
@@ -1,29 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import { arrayUtilities } from "necessary";
|
|
4
|
-
|
|
5
3
|
import MarkdownNode from "../../node/markdown";
|
|
6
4
|
|
|
7
|
-
const { first } = arrayUtilities;
|
|
8
|
-
|
|
9
5
|
export default class TableCellMarkdownNode extends MarkdownNode {
|
|
10
|
-
childNodesAsHTML(indent, context) {
|
|
11
|
-
const childNodes = this.getChildNodes(),
|
|
12
|
-
firstChildNode = first(childNodes),
|
|
13
|
-
markedTextChildNode = firstChildNode, ///
|
|
14
|
-
markedTextChildNodeChildNodesHTML = markedTextChildNode.childNodesAsHTML(indent, context),
|
|
15
|
-
childNodesHTML = markedTextChildNodeChildNodesHTML; ///
|
|
16
|
-
|
|
17
|
-
return childNodesHTML;
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
createChildNodeDOMElements(domElement, context) {
|
|
21
|
-
const childNodes = this.getChildNodes(),
|
|
22
|
-
firstChildNode = first(childNodes),
|
|
23
|
-
markedTextChildNode = firstChildNode; ///
|
|
24
|
-
|
|
25
|
-
markedTextChildNode.createChildNodeDOMElements(domElement, context);
|
|
26
|
-
}
|
|
27
|
-
|
|
28
6
|
static fromRuleNameChildNodesAndOpacity(ruleName, childNodes, opacity) { return MarkdownNode.fromRuleNameChildNodesAndOpacity(TableCellMarkdownNode, ruleName, childNodes, opacity); }
|
|
29
7
|
}
|
package/src/nodeMap.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
import LineMarkdownNode from "./node/markdown/line";
|
|
3
4
|
import LinkMarkdownNode from "./node/markdown/link";
|
|
4
5
|
import ImageMarkdownNode from "./node/markdown/image";
|
|
5
6
|
import TableMarkdownNode from "./node/markdown/table";
|
|
@@ -7,6 +8,7 @@ import ErrorMarkdownNode from "./node/markdown/error";
|
|
|
7
8
|
import AnchorMarkdownNode from "./node/markdown/anchor";
|
|
8
9
|
import DivisionMarkdownNode from "./node/markdown/division";
|
|
9
10
|
import FootnoteMarkdownNode from "./node/markdown/footnote";
|
|
11
|
+
import ReferenceMarkdownNode from "./node/markdown/reference";
|
|
10
12
|
import ParagraphMarkdownNode from "./node/markdown/paragraph";
|
|
11
13
|
import HyperlinkMarkdownNode from "./node/markdown/hyperlink";
|
|
12
14
|
import TableCellMarkdownNode from "./node/markdown/tableCell";
|
|
@@ -50,13 +52,15 @@ import ContentsDirectiveMarkdownNode from "./node/markdown/directive/contents";
|
|
|
50
52
|
import FootnotesDirectiveMarkdownNode from "./node/markdown/directive/footnotes";
|
|
51
53
|
import StronglyEmphasisedTextMarkdownNode from "./node/markdown/stronglyEmphasisedText";
|
|
52
54
|
|
|
53
|
-
import {
|
|
55
|
+
import { LINE_RULE_NAME,
|
|
56
|
+
LINK_RULE_NAME,
|
|
54
57
|
IMAGE_RULE_NAME,
|
|
55
58
|
TABLE_RULE_NAME,
|
|
56
59
|
ERROR_RULE_NAME,
|
|
57
60
|
ANCHOR_RULE_NAME,
|
|
58
61
|
DIVISION_RULE_NAME,
|
|
59
62
|
FOOTNOTE_RULE_NAME,
|
|
63
|
+
REFERENCE_RULE_NAME,
|
|
60
64
|
PARAGRAPH_RULE_NAME,
|
|
61
65
|
HYPERLINK_RULE_NAME,
|
|
62
66
|
TABLE_CELL_RULE_NAME,
|
|
@@ -101,6 +105,7 @@ import { LINK_RULE_NAME,
|
|
|
101
105
|
STRONGLY_EMPHASISED_TEXT_RULE_NAME } from "./ruleNames";
|
|
102
106
|
|
|
103
107
|
const nodeMap = {
|
|
108
|
+
[LINE_RULE_NAME]: LineMarkdownNode,
|
|
104
109
|
[LINK_RULE_NAME]: LinkMarkdownNode,
|
|
105
110
|
[IMAGE_RULE_NAME]: ImageMarkdownNode,
|
|
106
111
|
[TABLE_RULE_NAME]: TableMarkdownNode,
|
|
@@ -108,6 +113,7 @@ const nodeMap = {
|
|
|
108
113
|
[ANCHOR_RULE_NAME]: AnchorMarkdownNode,
|
|
109
114
|
[DIVISION_RULE_NAME]: DivisionMarkdownNode,
|
|
110
115
|
[FOOTNOTE_RULE_NAME]: FootnoteMarkdownNode,
|
|
116
|
+
[REFERENCE_RULE_NAME]: ReferenceMarkdownNode,
|
|
111
117
|
[PARAGRAPH_RULE_NAME]: ParagraphMarkdownNode,
|
|
112
118
|
[HYPERLINK_RULE_NAME]: HyperlinkMarkdownNode,
|
|
113
119
|
[TABLE_CELL_RULE_NAME]: TableCellMarkdownNode,
|
package/src/ruleNames.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
export const LINE_RULE_NAME = "line";
|
|
3
4
|
export const LINK_RULE_NAME = "link";
|
|
4
5
|
export const IMAGE_RULE_NAME = "image";
|
|
5
6
|
export const TABLE_RULE_NAME = "table";
|
|
@@ -7,6 +8,7 @@ export const ERROR_RULE_NAME = "error";
|
|
|
7
8
|
export const ANCHOR_RULE_NAME = "anchor";
|
|
8
9
|
export const DIVISION_RULE_NAME = "division";
|
|
9
10
|
export const FOOTNOTE_RULE_NAME = "footnote";
|
|
11
|
+
export const REFERENCE_RULE_NAME = "reference";
|
|
10
12
|
export const PARAGRAPH_RULE_NAME = "paragraph";
|
|
11
13
|
export const HYPERLINK_RULE_NAME = "hyperlink";
|
|
12
14
|
export const TABLE_CELL_RULE_NAME = "tableCell";
|
|
@@ -54,6 +56,7 @@ export const FOOTNOTES_DIRECTIVE_RULE_NAME = "footnotesDirective";
|
|
|
54
56
|
export const STRONGLY_EMPHASISED_TEXT_RULE_NAME = "stronglyEmphasisedText";
|
|
55
57
|
|
|
56
58
|
const ruleNames = {
|
|
59
|
+
LINE_RULE_NAME,
|
|
57
60
|
LINK_RULE_NAME,
|
|
58
61
|
IMAGE_RULE_NAME,
|
|
59
62
|
TABLE_RULE_NAME,
|
|
@@ -61,6 +64,7 @@ const ruleNames = {
|
|
|
61
64
|
ANCHOR_RULE_NAME,
|
|
62
65
|
DIVISION_RULE_NAME,
|
|
63
66
|
FOOTNOTE_RULE_NAME,
|
|
67
|
+
REFERENCE_RULE_NAME,
|
|
64
68
|
PARAGRAPH_RULE_NAME,
|
|
65
69
|
HYPERLINK_RULE_NAME,
|
|
66
70
|
TABLE_CELL_RULE_NAME,
|