highmark-markdown 0.0.426 → 0.0.430
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 +4002 -1871
- package/lib/constants.js +17 -1
- package/lib/defaultMarkdownStyle.js +2 -2
- package/lib/elementMap.js +20 -5
- package/lib/example/importer.js +5 -5
- package/lib/example/indexOptions.js +143 -0
- package/lib/example/view/div/sizeable/right.js +2 -2
- package/lib/example/view.js +14 -2
- package/lib/example.js +3 -3
- package/lib/index/phraseMatcher.js +76 -0
- package/lib/markdown/bnf.js +2 -2
- package/lib/markdown/lexer.js +11 -11
- package/lib/markdown/parser.js +12 -12
- package/lib/node/markdown/anchor.js +15 -8
- package/lib/node/markdown/comma.js +144 -0
- package/lib/node/markdown/contentsLink.js +3 -2
- package/lib/node/markdown/contentsList.js +10 -2
- package/lib/node/markdown/directive/index.js +120 -0
- package/lib/node/markdown/directive.js +10 -2
- package/lib/node/markdown/division.js +49 -9
- package/lib/node/markdown/{link.js → footnoteLink.js} +14 -13
- package/lib/node/markdown/footnotesItem.js +5 -12
- package/lib/node/markdown/heading.js +10 -2
- package/lib/node/markdown/indexItem.js +120 -0
- package/lib/node/markdown/indexLink.js +168 -0
- package/lib/node/markdown/indexList.js +138 -0
- package/lib/node/markdown/line.js +16 -2
- package/lib/node/markdown/subDivision.js +21 -2
- package/lib/node/markdown/verticalSpace.js +12 -1
- package/lib/node/markdown.js +32 -2
- package/lib/nodeMap.js +8 -3
- package/lib/prepends.js +26 -0
- package/lib/replacement/contentsList.js +3 -2
- package/lib/replacement/footnotesList.js +8 -8
- package/lib/replacement/indexItem.js +131 -0
- package/lib/replacement/indexList.js +166 -0
- package/lib/replacement/subDivision/footnotesDirective.js +2 -33
- package/lib/replacement/subDivision/indexAnchor.js +124 -0
- package/lib/replacement/subDivision/indexDirective.js +126 -0
- package/lib/replacement/subDivision/pageNumberDirective.js +2 -33
- package/lib/replacement/subDivision.js +15 -1
- package/lib/replacement.js +22 -45
- package/lib/ruleNames.js +31 -6
- package/lib/styleElement/markdown/default.js +4 -4
- package/lib/styleElement/markdown.js +3 -3
- package/lib/utilities/footnotes.js +10 -10
- package/lib/utilities/index.js +246 -0
- package/lib/utilities/object.js +59 -0
- package/lib/utilities/processing.js +10 -1
- package/lib/utilities/query.js +26 -18
- package/lib/utilities/replacement.js +67 -1
- package/package.json +3 -3
- package/src/constants.js +4 -0
- package/src/defaultMarkdownStyle.js +13 -1
- package/src/elementMap.js +30 -5
- package/src/example/importer.js +21 -5
- package/src/example/indexOptions.js +134 -0
- package/src/example/view/div/sizeable/right.js +1 -1
- package/src/example/view.js +20 -1
- package/src/example.js +2 -2
- package/src/index/phraseMatcher.js +38 -0
- package/src/markdown/bnf.js +21 -5
- package/src/markdown/lexer.js +10 -10
- package/src/markdown/parser.js +12 -12
- package/src/node/markdown/anchor.js +11 -6
- package/src/node/markdown/comma.js +32 -0
- package/src/node/markdown/contentsLink.js +3 -1
- package/src/node/markdown/contentsList.js +6 -0
- package/src/node/markdown/directive/index.js +7 -0
- package/src/node/markdown/directive.js +6 -0
- package/src/node/markdown/division.js +60 -9
- package/src/node/markdown/{link.js → footnoteLink.js} +7 -5
- package/src/node/markdown/footnotesItem.js +4 -11
- package/src/node/markdown/heading.js +11 -2
- package/src/node/markdown/indexItem.js +7 -0
- package/src/node/markdown/indexLink.js +63 -0
- package/src/node/markdown/indexList.js +34 -0
- package/src/node/markdown/line.js +15 -2
- package/src/node/markdown/subDivision.js +25 -2
- package/src/node/markdown/verticalSpace.js +15 -0
- package/src/node/markdown.js +44 -2
- package/src/nodeMap.js +18 -3
- package/src/prepends.js +5 -0
- package/src/replacement/contentsList.js +3 -1
- package/src/replacement/footnotesList.js +9 -7
- package/src/replacement/indexItem.js +28 -0
- package/src/replacement/indexList.js +45 -0
- package/src/replacement/subDivision/footnotesDirective.js +0 -6
- package/src/replacement/subDivision/indexAnchor.js +20 -0
- package/src/replacement/subDivision/indexDirective.js +20 -0
- package/src/replacement/subDivision/pageNumberDirective.js +0 -6
- package/src/replacement/subDivision.js +12 -0
- package/src/replacement.js +41 -68
- package/src/ruleNames.js +12 -2
- package/src/styleElement/markdown/default.js +2 -2
- package/src/styleElement/markdown.js +1 -1
- package/src/utilities/footnotes.js +8 -8
- package/src/utilities/index.js +335 -0
- package/src/utilities/object.js +50 -0
- package/src/utilities/processing.js +12 -0
- package/src/utilities/query.js +21 -13
- package/src/utilities/replacement.js +81 -0
|
@@ -24,6 +24,18 @@ _export(exports, {
|
|
|
24
24
|
appendTokens: function() {
|
|
25
25
|
return appendTokens;
|
|
26
26
|
},
|
|
27
|
+
clonedTokensFromNodeAndTokens: function() {
|
|
28
|
+
return clonedTokensFromNodeAndTokens;
|
|
29
|
+
},
|
|
30
|
+
overwriteClonedNodeTokens: function() {
|
|
31
|
+
return overwriteClonedNodeTokens;
|
|
32
|
+
},
|
|
33
|
+
prependNode: function() {
|
|
34
|
+
return prependNode;
|
|
35
|
+
},
|
|
36
|
+
prependTokens: function() {
|
|
37
|
+
return prependTokens;
|
|
38
|
+
},
|
|
27
39
|
removeNode: function() {
|
|
28
40
|
return removeNode;
|
|
29
41
|
},
|
|
@@ -72,6 +84,10 @@ function appendNode(appendedNode, parentNode) {
|
|
|
72
84
|
var appendedChildNode = appendedNode; ///
|
|
73
85
|
parentNode.appendChildNode(appendedChildNode);
|
|
74
86
|
}
|
|
87
|
+
function prependNode(prependedNode, parentNode) {
|
|
88
|
+
var prependedChildNode = prependedNode; ///
|
|
89
|
+
parentNode.prependChildNode(prependedChildNode);
|
|
90
|
+
}
|
|
75
91
|
function removeNode(removedNode, parentNode) {
|
|
76
92
|
var removedChildNode = removedNode; ///
|
|
77
93
|
parentNode.removeChildNode(removedChildNode);
|
|
@@ -100,6 +116,14 @@ function appendTokens(appendedTokens, parentNode, tokens) {
|
|
|
100
116
|
deleteCount
|
|
101
117
|
].concat(_to_consumable_array(appendedTokens)));
|
|
102
118
|
}
|
|
119
|
+
function prependTokens(prependedTokens, parentNode, tokens) {
|
|
120
|
+
var _tokens;
|
|
121
|
+
var node = parentNode, firstSignificantTokenIndex = node.getFirstSignificantTokenIndex(tokens), start = firstSignificantTokenIndex, deleteCount = 0;
|
|
122
|
+
(_tokens = tokens).splice.apply(_tokens, [
|
|
123
|
+
start,
|
|
124
|
+
deleteCount
|
|
125
|
+
].concat(_to_consumable_array(prependedTokens)));
|
|
126
|
+
}
|
|
103
127
|
function removeTokens(removedNode, tokens) {
|
|
104
128
|
var node = removedNode, firstSignificantTokenIndex = node.getFirstSignificantTokenIndex(tokens), lastSignificantTokenIndex = node.getLastSignificantTokenIndex(tokens), start = firstSignificantTokenIndex, end = lastSignificantTokenIndex + 1, deleteCount = end - start;
|
|
105
129
|
tokens.splice(start, deleteCount);
|
|
@@ -124,5 +148,47 @@ function addTokensAfter(existingNode, addedTokens, tokens) {
|
|
|
124
148
|
deleteCount
|
|
125
149
|
].concat(_to_consumable_array(addedTokens)));
|
|
126
150
|
}
|
|
151
|
+
function overwriteClonedNodeTokens(clonedNode, clonedTokens, tokens) {
|
|
152
|
+
var offset = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : 0;
|
|
153
|
+
var node = clonedNode; ///
|
|
154
|
+
overwriteNodeTokens(node, clonedTokens, tokens, offset);
|
|
155
|
+
}
|
|
156
|
+
function clonedTokensFromNodeAndTokens(node, tokens) {
|
|
157
|
+
var firstSignificantTokenIndex = node.getFirstSignificantTokenIndex(tokens), lastSignificantTokenIndex = node.getLastSignificantTokenIndex(tokens), start = firstSignificantTokenIndex, end = lastSignificantTokenIndex + 1;
|
|
158
|
+
tokens = tokens.slice(start, end); ///
|
|
159
|
+
var clonedTokens = tokens.map(function(token) {
|
|
160
|
+
var clonedToken = token.clone();
|
|
161
|
+
return clonedToken;
|
|
162
|
+
});
|
|
163
|
+
return clonedTokens;
|
|
164
|
+
}
|
|
165
|
+
function overwriteNodeTokens(node, clonedTokens, tokens, offset) {
|
|
166
|
+
var nodeTerminalNode = node.isTerminalNode();
|
|
167
|
+
if (nodeTerminalNode) {
|
|
168
|
+
var terminalNode = node; ///
|
|
169
|
+
overwriteTerminalNodeTokens(terminalNode, clonedTokens, tokens, offset);
|
|
170
|
+
} else {
|
|
171
|
+
var nonTerminalNode = node; ///
|
|
172
|
+
overwriteNonTerminalNodeTokens(nonTerminalNode, clonedTokens, tokens, offset);
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
function overwriteTerminalNodeTokens(terminalNode, clonedTokens, tokens, offset) {
|
|
176
|
+
var index, significantToken;
|
|
177
|
+
significantToken = terminalNode.getSignificantToken();
|
|
178
|
+
if (significantToken !== null) {
|
|
179
|
+
index = tokens.indexOf(significantToken);
|
|
180
|
+
index -= offset;
|
|
181
|
+
var clonedToken = clonedTokens[index];
|
|
182
|
+
significantToken = clonedToken; ///
|
|
183
|
+
terminalNode.setSignificantToken(significantToken);
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
function overwriteNonTerminalNodeTokens(nonTerminalNode, clonedTokens, tokens, offset) {
|
|
187
|
+
var childNodes = nonTerminalNode.getChildNodes();
|
|
188
|
+
childNodes.forEach(function(childNode) {
|
|
189
|
+
var clonedNode = childNode; ///
|
|
190
|
+
overwriteNodeTokens(clonedNode, clonedTokens, tokens, offset);
|
|
191
|
+
});
|
|
192
|
+
}
|
|
127
193
|
|
|
128
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvcmVwbGFjZW1lbnQuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmV4cG9ydCBmdW5jdGlvbiBhcHBlbmROb2RlKGFwcGVuZGVkTm9kZSwgcGFyZW50Tm9kZSkge1xuICBjb25zdCBhcHBlbmRlZENoaWxkTm9kZSA9IGFwcGVuZGVkTm9kZTsgIC8vL1xuXG4gIHBhcmVudE5vZGUuYXBwZW5kQ2hpbGROb2RlKGFwcGVuZGVkQ2hpbGROb2RlKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJlbW92ZU5vZGUocmVtb3ZlZE5vZGUsIHBhcmVudE5vZGUpIHtcbiAgY29uc3QgcmVtb3ZlZENoaWxkTm9kZSA9IHJlbW92ZWROb2RlOyAvLy9cblxuICBwYXJlbnROb2RlLnJlbW92ZUNoaWxkTm9kZShyZW1vdmVkQ2hpbGROb2RlKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJlbW92ZU5vZGVzKHJlbW92ZWROb2RlcywgcGFyZW50Tm9kZSkge1xuICBjb25zdCByZW1vdmVkQ2hpbGROb2RlcyA9IHJlbW92ZWROb2RlczsgLy8vXG5cbiAgcGFyZW50Tm9kZS5yZW1vdmVDaGlsZE5vZGVzKHJlbW92ZWRDaGlsZE5vZGVzKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJlcGxhY2VOb2RlKHJlcGxhY2VtZW50Tm9kZSwgcmVwbGFjZWROb2RlLCBwYXJlbnROb2RlKSB7XG4gIGNvbnN0IHJlcGxhY2VkQ2hpbGROb2RlID0gcmVwbGFjZWROb2RlLCAgLy8vXG4gICAgICAgIHJlcGxhY2VtZW50Q2hpbGROb2RlID0gcmVwbGFjZW1lbnROb2RlOyAvLy9cblxuICBwYXJlbnROb2RlLnJlcGxhY2VDaGlsZE5vZGUocmVwbGFjZWRDaGlsZE5vZGUsIHJlcGxhY2VtZW50Q2hpbGROb2RlKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJlcGxhY2VOb2RlcyhyZXBsYWNlbWVudE5vZGVzLCByZXBsYWNlZE5vZGUsIHBhcmVudE5vZGUpIHtcbiAgY29uc3QgcmVwbGFjZWRDaGlsZE5vZGUgPSByZXBsYWNlZE5vZGUsICAvLy9cbiAgICAgICAgcmVwbGFjZW1lbnRDaGlsZE5vZGVzID0gcmVwbGFjZW1lbnROb2RlczsgLy8vXG5cbiAgcGFyZW50Tm9kZS5yZXBsYWNlQ2hpbGROb2RlcyhyZXBsYWNlZENoaWxkTm9kZSwgcmVwbGFjZW1lbnRDaGlsZE5vZGVzKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGFkZE5vZGVzQWZ0ZXIoZXhpc3RpbmdOb2RlLCBhZGRlZE5vZGVzLCBwYXJlbnROb2RlKSB7XG4gIGNvbnN0IGV4aXN0aW5nQ2hpbGROb2RlID0gZXhpc3RpbmdOb2RlLCAvLy9cbiAgICAgICAgYWRkZWRDaGlsZE5vZGVzID0gYWRkZWROb2RlczsgLy8vXG5cbiAgcGFyZW50Tm9kZS5hZGRDaGlsZE5vZGVzQWZ0ZXIoZXhpc3RpbmdDaGlsZE5vZGUsIGFkZGVkQ2hpbGROb2Rlcyk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBhcHBlbmRUb2tlbnMoYXBwZW5kZWRUb2tlbnMsIHBhcmVudE5vZGUsIHRva2Vucykge1xuICBjb25zdCBub2RlID0gcGFyZW50Tm9kZSwgLy8vXG4gICAgICAgIGxhc3RTaWduaWZpY2FudFRva2VuSW5kZXggPSBub2RlLmdldExhc3RTaWduaWZpY2FudFRva2VuSW5kZXgodG9rZW5zKSxcbiAgICAgICAgc3RhcnQgPSBsYXN0U2lnbmlmaWNhbnRUb2tlbkluZGV4ICsgMSxcbiAgICAgICAgZGVsZXRlQ291bnQgPSAwO1xuXG4gIHRva2Vucy5zcGxpY2Uoc3RhcnQsIGRlbGV0ZUNvdW50LCAuLi5hcHBlbmRlZFRva2Vucyk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiByZW1vdmVUb2tlbnMocmVtb3ZlZE5vZGUsIHRva2Vucykge1xuICBjb25zdCBub2RlID0gcmVtb3ZlZE5vZGUsICAvLy9cbiAgICAgICAgZmlyc3RTaWduaWZpY2FudFRva2VuSW5kZXggPSBub2RlLmdldEZpcnN0U2lnbmlmaWNhbnRUb2tlbkluZGV4KHRva2VucyksXG4gICAgICAgIGxhc3RTaWduaWZpY2FudFRva2VuSW5kZXggPSBub2RlLmdldExhc3RTaWduaWZpY2FudFRva2VuSW5kZXgodG9rZW5zKSxcbiAgICAgICAgc3RhcnQgPSBmaXJzdFNpZ25pZmljYW50VG9rZW5JbmRleCwgLy8vXG4gICAgICAgIGVuZCA9IGxhc3RTaWduaWZpY2FudFRva2VuSW5kZXggKyAxLFxuICAgICAgICBkZWxldGVDb3VudCA9IGVuZCAtIHN0YXJ0O1xuXG4gIHRva2Vucy5zcGxpY2Uoc3RhcnQsIGRlbGV0ZUNvdW50KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJlcGxhY2VUb2tlbnMocmVwbGFjZW1lbnRUb2tlbnMsIHJlcGxhY2VkTm9kZSwgdG9rZW5zKSB7XG4gIGNvbnN0IG5vZGUgPSByZXBsYWNlZE5vZGUsICAvLy9cbiAgICAgICAgZmlyc3RTaWduaWZpY2FudFRva2VuSW5kZXggPSBub2RlLmdldEZpcnN0U2lnbmlmaWNhbnRUb2tlbkluZGV4KHRva2VucyksXG4gICAgICAgIGxhc3RTaWduaWZpY2FudFRva2VuSW5kZXggPSBub2RlLmdldExhc3RTaWduaWZpY2FudFRva2VuSW5kZXgodG9rZW5zKSxcbiAgICAgICAgc3RhcnQgPSBmaXJzdFNpZ25pZmljYW50VG9rZW5JbmRleCwgLy8vXG4gICAgICAgIGVuZCA9IGxhc3RTaWduaWZpY2FudFRva2VuSW5kZXggKyAxLFxuICAgICAgICBkZWxldGVDb3VudCA9IGVuZCAtIHN0YXJ0O1xuXG4gIHRva2Vucy5zcGxpY2Uoc3RhcnQsIGRlbGV0ZUNvdW50LCAuLi5yZXBsYWNlbWVudFRva2Vucyk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBhZGROb2RlQWZ0ZXIoZXhpc3RpbmdOb2RlLCBhZGRlZE5vZGUsIHBhcmVudE5vZGUpIHtcbiAgY29uc3QgZXhpc3RpbmdDaGlsZE5vZGUgPSBleGlzdGluZ05vZGUsIC8vL1xuICAgICAgICBhZGRlZENoaWxkTm9kZSA9IGFkZGVkTm9kZTsgLy8vXG5cbiAgcGFyZW50Tm9kZS5hcHBlbmRDaGlsZE5vZGVBZnRlcihleGlzdGluZ0NoaWxkTm9kZSwgYWRkZWRDaGlsZE5vZGUpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gYWRkVG9rZW5zQWZ0ZXIoZXhpc3RpbmdOb2RlLCBhZGRlZFRva2VucywgdG9rZW5zKSB7XG4gIGNvbnN0IG5vZGUgPSBleGlzdGluZ05vZGUsICAvLy9cbiAgICAgICAgbGFzdFNpZ25pZmljYW50VG9rZW5JbmRleCA9IG5vZGUuZ2V0TGFzdFNpZ25pZmljYW50VG9rZW5JbmRleCh0b2tlbnMpLFxuICAgICAgICBzdGFydCA9IGxhc3RTaWduaWZpY2FudFRva2VuSW5kZXggKyAxLFxuICAgICAgICBkZWxldGVDb3VudCA9IDA7XG5cbiAgdG9rZW5zLnNwbGljZShzdGFydCwgZGVsZXRlQ291bnQsIC4uLmFkZGVkVG9rZW5zKTtcbn1cbiJdLCJuYW1lcyI6WyJhZGROb2RlQWZ0ZXIiLCJhZGROb2Rlc0FmdGVyIiwiYWRkVG9rZW5zQWZ0ZXIiLCJhcHBlbmROb2RlIiwiYXBwZW5kVG9rZW5zIiwicmVtb3ZlTm9kZSIsInJlbW92ZU5vZGVzIiwicmVtb3ZlVG9rZW5zIiwicmVwbGFjZU5vZGUiLCJyZXBsYWNlTm9kZXMiLCJyZXBsYWNlVG9rZW5zIiwiYXBwZW5kZWROb2RlIiwicGFyZW50Tm9kZSIsImFwcGVuZGVkQ2hpbGROb2RlIiwiYXBwZW5kQ2hpbGROb2RlIiwicmVtb3ZlZE5vZGUiLCJyZW1vdmVkQ2hpbGROb2RlIiwicmVtb3ZlQ2hpbGROb2RlIiwicmVtb3ZlZE5vZGVzIiwicmVtb3ZlZENoaWxkTm9kZXMiLCJyZW1vdmVDaGlsZE5vZGVzIiwicmVwbGFjZW1lbnROb2RlIiwicmVwbGFjZWROb2RlIiwicmVwbGFjZWRDaGlsZE5vZGUiLCJyZXBsYWNlbWVudENoaWxkTm9kZSIsInJlcGxhY2VDaGlsZE5vZGUiLCJyZXBsYWNlbWVudE5vZGVzIiwicmVwbGFjZW1lbnRDaGlsZE5vZGVzIiwicmVwbGFjZUNoaWxkTm9kZXMiLCJleGlzdGluZ05vZGUiLCJhZGRlZE5vZGVzIiwiZXhpc3RpbmdDaGlsZE5vZGUiLCJhZGRlZENoaWxkTm9kZXMiLCJhZGRDaGlsZE5vZGVzQWZ0ZXIiLCJhcHBlbmRlZFRva2VucyIsInRva2VucyIsIm5vZGUiLCJsYXN0U2lnbmlmaWNhbnRUb2tlbkluZGV4IiwiZ2V0TGFzdFNpZ25pZmljYW50VG9rZW5JbmRleCIsInN0YXJ0IiwiZGVsZXRlQ291bnQiLCJzcGxpY2UiLCJmaXJzdFNpZ25pZmljYW50VG9rZW5JbmRleCIsImdldEZpcnN0U2lnbmlmaWNhbnRUb2tlbkluZGV4IiwiZW5kIiwicmVwbGFjZW1lbnRUb2tlbnMiLCJhZGRlZE5vZGUiLCJhZGRlZENoaWxkTm9kZSIsImFwcGVuZENoaWxkTm9kZUFmdGVyIiwiYWRkZWRUb2tlbnMiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7OztJQXdFZ0JBLFlBQVk7ZUFBWkE7O0lBdENBQyxhQUFhO2VBQWJBOztJQTZDQUMsY0FBYztlQUFkQTs7SUE3RUFDLFVBQVU7ZUFBVkE7O0lBdUNBQyxZQUFZO2VBQVpBOztJQWpDQUMsVUFBVTtlQUFWQTs7SUFNQUMsV0FBVztlQUFYQTs7SUFvQ0FDLFlBQVk7ZUFBWkE7O0lBOUJBQyxXQUFXO2VBQVhBOztJQU9BQyxZQUFZO2VBQVpBOztJQWtDQUMsYUFBYTtlQUFiQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQTNEVCxTQUFTUCxXQUFXUSxZQUFZLEVBQUVDLFVBQVU7SUFDakQsSUFBTUMsb0JBQW9CRixjQUFlLEdBQUc7SUFFNUNDLFdBQVdFLGVBQWUsQ0FBQ0Q7QUFDN0I7QUFFTyxTQUFTUixXQUFXVSxXQUFXLEVBQUVILFVBQVU7SUFDaEQsSUFBTUksbUJBQW1CRCxhQUFhLEdBQUc7SUFFekNILFdBQVdLLGVBQWUsQ0FBQ0Q7QUFDN0I7QUFFTyxTQUFTVixZQUFZWSxZQUFZLEVBQUVOLFVBQVU7SUFDbEQsSUFBTU8sb0JBQW9CRCxjQUFjLEdBQUc7SUFFM0NOLFdBQVdRLGdCQUFnQixDQUFD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
|
|
194
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvcmVwbGFjZW1lbnQuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmV4cG9ydCBmdW5jdGlvbiBhcHBlbmROb2RlKGFwcGVuZGVkTm9kZSwgcGFyZW50Tm9kZSkge1xuICBjb25zdCBhcHBlbmRlZENoaWxkTm9kZSA9IGFwcGVuZGVkTm9kZTsgIC8vL1xuXG4gIHBhcmVudE5vZGUuYXBwZW5kQ2hpbGROb2RlKGFwcGVuZGVkQ2hpbGROb2RlKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHByZXBlbmROb2RlKHByZXBlbmRlZE5vZGUsIHBhcmVudE5vZGUpIHtcbiAgY29uc3QgcHJlcGVuZGVkQ2hpbGROb2RlID0gcHJlcGVuZGVkTm9kZTsgIC8vL1xuXG4gIHBhcmVudE5vZGUucHJlcGVuZENoaWxkTm9kZShwcmVwZW5kZWRDaGlsZE5vZGUpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcmVtb3ZlTm9kZShyZW1vdmVkTm9kZSwgcGFyZW50Tm9kZSkge1xuICBjb25zdCByZW1vdmVkQ2hpbGROb2RlID0gcmVtb3ZlZE5vZGU7IC8vL1xuXG4gIHBhcmVudE5vZGUucmVtb3ZlQ2hpbGROb2RlKHJlbW92ZWRDaGlsZE5vZGUpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcmVtb3ZlTm9kZXMocmVtb3ZlZE5vZGVzLCBwYXJlbnROb2RlKSB7XG4gIGNvbnN0IHJlbW92ZWRDaGlsZE5vZGVzID0gcmVtb3ZlZE5vZGVzOyAvLy9cblxuICBwYXJlbnROb2RlLnJlbW92ZUNoaWxkTm9kZXMocmVtb3ZlZENoaWxkTm9kZXMpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcmVwbGFjZU5vZGUocmVwbGFjZW1lbnROb2RlLCByZXBsYWNlZE5vZGUsIHBhcmVudE5vZGUpIHtcbiAgY29uc3QgcmVwbGFjZWRDaGlsZE5vZGUgPSByZXBsYWNlZE5vZGUsICAvLy9cbiAgICAgICAgcmVwbGFjZW1lbnRDaGlsZE5vZGUgPSByZXBsYWNlbWVudE5vZGU7IC8vL1xuXG4gIHBhcmVudE5vZGUucmVwbGFjZUNoaWxkTm9kZShyZXBsYWNlZENoaWxkTm9kZSwgcmVwbGFjZW1lbnRDaGlsZE5vZGUpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcmVwbGFjZU5vZGVzKHJlcGxhY2VtZW50Tm9kZXMsIHJlcGxhY2VkTm9kZSwgcGFyZW50Tm9kZSkge1xuICBjb25zdCByZXBsYWNlZENoaWxkTm9kZSA9IHJlcGxhY2VkTm9kZSwgIC8vL1xuICAgICAgICByZXBsYWNlbWVudENoaWxkTm9kZXMgPSByZXBsYWNlbWVudE5vZGVzOyAvLy9cblxuICBwYXJlbnROb2RlLnJlcGxhY2VDaGlsZE5vZGVzKHJlcGxhY2VkQ2hpbGROb2RlLCByZXBsYWNlbWVudENoaWxkTm9kZXMpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gYWRkTm9kZXNBZnRlcihleGlzdGluZ05vZGUsIGFkZGVkTm9kZXMsIHBhcmVudE5vZGUpIHtcbiAgY29uc3QgZXhpc3RpbmdDaGlsZE5vZGUgPSBleGlzdGluZ05vZGUsIC8vL1xuICAgICAgICBhZGRlZENoaWxkTm9kZXMgPSBhZGRlZE5vZGVzOyAvLy9cblxuICBwYXJlbnROb2RlLmFkZENoaWxkTm9kZXNBZnRlcihleGlzdGluZ0NoaWxkTm9kZSwgYWRkZWRDaGlsZE5vZGVzKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGFwcGVuZFRva2VucyhhcHBlbmRlZFRva2VucywgcGFyZW50Tm9kZSwgdG9rZW5zKSB7XG4gIGNvbnN0IG5vZGUgPSBwYXJlbnROb2RlLCAvLy9cbiAgICAgICAgbGFzdFNpZ25pZmljYW50VG9rZW5JbmRleCA9IG5vZGUuZ2V0TGFzdFNpZ25pZmljYW50VG9rZW5JbmRleCh0b2tlbnMpLFxuICAgICAgICBzdGFydCA9IGxhc3RTaWduaWZpY2FudFRva2VuSW5kZXggKyAxLFxuICAgICAgICBkZWxldGVDb3VudCA9IDA7XG5cbiAgdG9rZW5zLnNwbGljZShzdGFydCwgZGVsZXRlQ291bnQsIC4uLmFwcGVuZGVkVG9rZW5zKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHByZXBlbmRUb2tlbnMocHJlcGVuZGVkVG9rZW5zLCBwYXJlbnROb2RlLCB0b2tlbnMpIHtcbiAgY29uc3Qgbm9kZSA9IHBhcmVudE5vZGUsIC8vL1xuICAgICAgICBmaXJzdFNpZ25pZmljYW50VG9rZW5JbmRleCA9IG5vZGUuZ2V0Rmlyc3RTaWduaWZpY2FudFRva2VuSW5kZXgodG9rZW5zKSxcbiAgICAgICAgc3RhcnQgPSBmaXJzdFNpZ25pZmljYW50VG9rZW5JbmRleCxcbiAgICAgICAgZGVsZXRlQ291bnQgPSAwO1xuXG4gIHRva2Vucy5zcGxpY2Uoc3RhcnQsIGRlbGV0ZUNvdW50LCAuLi5wcmVwZW5kZWRUb2tlbnMpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcmVtb3ZlVG9rZW5zKHJlbW92ZWROb2RlLCB0b2tlbnMpIHtcbiAgY29uc3Qgbm9kZSA9IHJlbW92ZWROb2RlLCAgLy8vXG4gICAgICAgIGZpcnN0U2lnbmlmaWNhbnRUb2tlbkluZGV4ID0gbm9kZS5nZXRGaXJzdFNpZ25pZmljYW50VG9rZW5JbmRleCh0b2tlbnMpLFxuICAgICAgICBsYXN0U2lnbmlmaWNhbnRUb2tlbkluZGV4ID0gbm9kZS5nZXRMYXN0U2lnbmlmaWNhbnRUb2tlbkluZGV4KHRva2VucyksXG4gICAgICAgIHN0YXJ0ID0gZmlyc3RTaWduaWZpY2FudFRva2VuSW5kZXgsIC8vL1xuICAgICAgICBlbmQgPSBsYXN0U2lnbmlmaWNhbnRUb2tlbkluZGV4ICsgMSxcbiAgICAgICAgZGVsZXRlQ291bnQgPSBlbmQgLSBzdGFydDtcblxuICB0b2tlbnMuc3BsaWNlKHN0YXJ0LCBkZWxldGVDb3VudCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiByZXBsYWNlVG9rZW5zKHJlcGxhY2VtZW50VG9rZW5zLCByZXBsYWNlZE5vZGUsIHRva2Vucykge1xuICBjb25zdCBub2RlID0gcmVwbGFjZWROb2RlLCAgLy8vXG4gICAgICAgIGZpcnN0U2lnbmlmaWNhbnRUb2tlbkluZGV4ID0gbm9kZS5nZXRGaXJzdFNpZ25pZmljYW50VG9rZW5JbmRleCh0b2tlbnMpLFxuICAgICAgICBsYXN0U2lnbmlmaWNhbnRUb2tlbkluZGV4ID0gbm9kZS5nZXRMYXN0U2lnbmlmaWNhbnRUb2tlbkluZGV4KHRva2VucyksXG4gICAgICAgIHN0YXJ0ID0gZmlyc3RTaWduaWZpY2FudFRva2VuSW5kZXgsIC8vL1xuICAgICAgICBlbmQgPSBsYXN0U2lnbmlmaWNhbnRUb2tlbkluZGV4ICsgMSxcbiAgICAgICAgZGVsZXRlQ291bnQgPSBlbmQgLSBzdGFydDtcblxuICB0b2tlbnMuc3BsaWNlKHN0YXJ0LCBkZWxldGVDb3VudCwgLi4ucmVwbGFjZW1lbnRUb2tlbnMpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gYWRkTm9kZUFmdGVyKGV4aXN0aW5nTm9kZSwgYWRkZWROb2RlLCBwYXJlbnROb2RlKSB7XG4gIGNvbnN0IGV4aXN0aW5nQ2hpbGROb2RlID0gZXhpc3RpbmdOb2RlLCAvLy9cbiAgICAgICAgYWRkZWRDaGlsZE5vZGUgPSBhZGRlZE5vZGU7IC8vL1xuXG4gIHBhcmVudE5vZGUuYXBwZW5kQ2hpbGROb2RlQWZ0ZXIoZXhpc3RpbmdDaGlsZE5vZGUsIGFkZGVkQ2hpbGROb2RlKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGFkZFRva2Vuc0FmdGVyKGV4aXN0aW5nTm9kZSwgYWRkZWRUb2tlbnMsIHRva2Vucykge1xuICBjb25zdCBub2RlID0gZXhpc3RpbmdOb2RlLCAgLy8vXG4gICAgICAgIGxhc3RTaWduaWZpY2FudFRva2VuSW5kZXggPSBub2RlLmdldExhc3RTaWduaWZpY2FudFRva2VuSW5kZXgodG9rZW5zKSxcbiAgICAgICAgc3RhcnQgPSBsYXN0U2lnbmlmaWNhbnRUb2tlbkluZGV4ICsgMSxcbiAgICAgICAgZGVsZXRlQ291bnQgPSAwO1xuXG4gIHRva2Vucy5zcGxpY2Uoc3RhcnQsIGRlbGV0ZUNvdW50LCAuLi5hZGRlZFRva2Vucyk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBvdmVyd3JpdGVDbG9uZWROb2RlVG9rZW5zKGNsb25lZE5vZGUsIGNsb25lZFRva2VucywgdG9rZW5zLCBvZmZzZXQgPSAwKSB7XG4gIGNvbnN0IG5vZGUgPSBjbG9uZWROb2RlOyAgLy8vXG5cbiAgb3ZlcndyaXRlTm9kZVRva2Vucyhub2RlLCBjbG9uZWRUb2tlbnMsIHRva2Vucywgb2Zmc2V0KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNsb25lZFRva2Vuc0Zyb21Ob2RlQW5kVG9rZW5zKG5vZGUsIHRva2Vucykge1xuICBjb25zdCBmaXJzdFNpZ25pZmljYW50VG9rZW5JbmRleCA9IG5vZGUuZ2V0Rmlyc3RTaWduaWZpY2FudFRva2VuSW5kZXgodG9rZW5zKSxcbiAgICAgICAgbGFzdFNpZ25pZmljYW50VG9rZW5JbmRleCA9IG5vZGUuZ2V0TGFzdFNpZ25pZmljYW50VG9rZW5JbmRleCh0b2tlbnMpLFxuICAgICAgICBzdGFydCA9IGZpcnN0U2lnbmlmaWNhbnRUb2tlbkluZGV4LCAgLy8vXG4gICAgICAgIGVuZCA9IGxhc3RTaWduaWZpY2FudFRva2VuSW5kZXggKyAxO1xuXG4gIHRva2VucyA9IHRva2Vucy5zbGljZShzdGFydCwgZW5kKTsgIC8vL1xuXG4gIGNvbnN0IGNsb25lZFRva2VucyA9IHRva2Vucy5tYXAoKHRva2VuKSA9PiB7ICAvLy9cbiAgICBjb25zdCBjbG9uZWRUb2tlbiA9IHRva2VuLmNsb25lKCk7XG5cbiAgICByZXR1cm4gY2xvbmVkVG9rZW47XG4gIH0pO1xuXG4gIHJldHVybiBjbG9uZWRUb2tlbnM7XG59XG5cbmZ1bmN0aW9uIG92ZXJ3cml0ZU5vZGVUb2tlbnMobm9kZSwgY2xvbmVkVG9rZW5zLCB0b2tlbnMsIG9mZnNldCkge1xuICBjb25zdCBub2RlVGVybWluYWxOb2RlID0gbm9kZS5pc1Rlcm1pbmFsTm9kZSgpO1xuXG4gIGlmIChub2RlVGVybWluYWxOb2RlKSB7XG4gICAgY29uc3QgdGVybWluYWxOb2RlID0gbm9kZTsgIC8vL1xuXG4gICAgb3ZlcndyaXRlVGVybWluYWxOb2RlVG9rZW5zKHRlcm1pbmFsTm9kZSwgY2xvbmVkVG9rZW5zLCB0b2tlbnMsIG9mZnNldCk7XG4gIH0gZWxzZSB7XG4gICAgY29uc3Qgbm9uVGVybWluYWxOb2RlID0gbm9kZTsgIC8vL1xuXG4gICAgb3ZlcndyaXRlTm9uVGVybWluYWxOb2RlVG9rZW5zKG5vblRlcm1pbmFsTm9kZSwgY2xvbmVkVG9rZW5zLCB0b2tlbnMsIG9mZnNldCk7XG4gIH1cbn1cblxuZnVuY3Rpb24gb3ZlcndyaXRlVGVybWluYWxOb2RlVG9rZW5zKHRlcm1pbmFsTm9kZSwgY2xvbmVkVG9rZW5zLCB0b2tlbnMsIG9mZnNldCkge1xuICBsZXQgaW5kZXgsXG4gICAgICBzaWduaWZpY2FudFRva2VuO1xuXG4gIHNpZ25pZmljYW50VG9rZW4gPSB0ZXJtaW5hbE5vZGUuZ2V0U2lnbmlmaWNhbnRUb2tlbigpO1xuXG4gIGlmIChzaWduaWZpY2FudFRva2VuICE9PSBudWxsKSB7XG4gICAgaW5kZXggPSB0b2tlbnMuaW5kZXhPZihzaWduaWZpY2FudFRva2VuKTtcblxuICAgIGluZGV4IC09IG9mZnNldDtcblxuICAgIGNvbnN0IGNsb25lZFRva2VuID0gY2xvbmVkVG9rZW5zW2luZGV4XTtcblxuICAgIHNpZ25pZmljYW50VG9rZW4gPSBjbG9uZWRUb2tlbjsgIC8vL1xuXG4gICAgdGVybWluYWxOb2RlLnNldFNpZ25pZmljYW50VG9rZW4oc2lnbmlmaWNhbnRUb2tlbik7XG4gIH1cbn1cblxuZnVuY3Rpb24gb3ZlcndyaXRlTm9uVGVybWluYWxOb2RlVG9rZW5zKG5vblRlcm1pbmFsTm9kZSwgY2xvbmVkVG9rZW5zLCB0b2tlbnMsIG9mZnNldCkge1xuICBjb25zdCBjaGlsZE5vZGVzID0gbm9uVGVybWluYWxOb2RlLmdldENoaWxkTm9kZXMoKTtcblxuICBjaGlsZE5vZGVzLmZvckVhY2goKGNoaWxkTm9kZSkgPT4ge1xuICAgIGNvbnN0IGNsb25lZE5vZGUgPSBjaGlsZE5vZGU7IC8vL1xuXG4gICAgb3ZlcndyaXRlTm9kZVRva2VucyhjbG9uZWROb2RlLCBjbG9uZWRUb2tlbnMsIHRva2Vucywgb2Zmc2V0KTtcbiAgfSk7XG59XG4iXSwibmFtZXMiOlsiYWRkTm9kZUFmdGVyIiwiYWRkTm9kZXNBZnRlciIsImFkZFRva2Vuc0FmdGVyIiwiYXBwZW5kTm9kZSIsImFwcGVuZFRva2VucyIsImNsb25lZFRva2Vuc0Zyb21Ob2RlQW5kVG9rZW5zIiwib3ZlcndyaXRlQ2xvbmVkTm9kZVRva2VucyIsInByZXBlbmROb2RlIiwicHJlcGVuZFRva2VucyIsInJlbW92ZU5vZGUiLCJyZW1vdmVOb2RlcyIsInJlbW92ZVRva2VucyIsInJlcGxhY2VOb2RlIiwicmVwbGFjZU5vZGVzIiwicmVwbGFjZVRva2VucyIsImFwcGVuZGVkTm9kZSIsInBhcmVudE5vZGUiLCJhcHBlbmRlZENoaWxkTm9kZSIsImFwcGVuZENoaWxkTm9kZSIsInByZXBlbmRlZE5vZGUiLCJwcmVwZW5kZWRDaGlsZE5vZGUiLCJwcmVwZW5kQ2hpbGROb2RlIiwicmVtb3ZlZE5vZGUiLCJyZW1vdmVkQ2hpbGROb2RlIiwicmVtb3ZlQ2hpbGROb2RlIiwicmVtb3ZlZE5vZGVzIiwicmVtb3ZlZENoaWxkTm9kZXMiLCJyZW1vdmVDaGlsZE5vZGVzIiwicmVwbGFjZW1lbnROb2RlIiwicmVwbGFjZWROb2RlIiwicmVwbGFjZWRDaGlsZE5vZGUiLCJyZXBsYWNlbWVudENoaWxkTm9kZSIsInJlcGxhY2VDaGlsZE5vZGUiLCJyZXBsYWNlbWVudE5vZGVzIiwicmVwbGFjZW1lbnRDaGlsZE5vZGVzIiwicmVwbGFjZUNoaWxkTm9kZXMiLCJleGlzdGluZ05vZGUiLCJhZGRlZE5vZGVzIiwiZXhpc3RpbmdDaGlsZE5vZGUiLCJhZGRlZENoaWxkTm9kZXMiLCJhZGRDaGlsZE5vZGVzQWZ0ZXIiLCJhcHBlbmRlZFRva2VucyIsInRva2VucyIsIm5vZGUiLCJsYXN0U2lnbmlmaWNhbnRUb2tlbkluZGV4IiwiZ2V0TGFzdFNpZ25pZmljYW50VG9rZW5JbmRleCIsInN0YXJ0IiwiZGVsZXRlQ291bnQiLCJzcGxpY2UiLCJwcmVwZW5kZWRUb2tlbnMiLCJmaXJzdFNpZ25pZmljYW50VG9rZW5JbmRleCIsImdldEZpcnN0U2lnbmlmaWNhbnRUb2tlbkluZGV4IiwiZW5kIiwicmVwbGFjZW1lbnRUb2tlbnMiLCJhZGRlZE5vZGUiLCJhZGRlZENoaWxkTm9kZSIsImFwcGVuZENoaWxkTm9kZUFmdGVyIiwiYWRkZWRUb2tlbnMiLCJjbG9uZWROb2RlIiwiY2xvbmVkVG9rZW5zIiwib2Zmc2V0Iiwib3ZlcndyaXRlTm9kZVRva2VucyIsInNsaWNlIiwibWFwIiwidG9rZW4iLCJjbG9uZWRUb2tlbiIsImNsb25lIiwibm9kZVRlcm1pbmFsTm9kZSIsImlzVGVybWluYWxOb2RlIiwidGVybWluYWxOb2RlIiwib3ZlcndyaXRlVGVybWluYWxOb2RlVG9rZW5zIiwibm9uVGVybWluYWxOb2RlIiwib3ZlcndyaXRlTm9uVGVybWluYWxOb2RlVG9rZW5zIiwiaW5kZXgiLCJzaWduaWZpY2FudFRva2VuIiwiZ2V0U2lnbmlmaWNhbnRUb2tlbiIsImluZGV4T2YiLCJzZXRTaWduaWZpY2FudFRva2VuIiwiY2hpbGROb2RlcyIsImdldENoaWxkTm9kZXMiLCJmb3JFYWNoIiwiY2hpbGROb2RlIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7SUF1RmdCQSxZQUFZO2VBQVpBOztJQS9DQUMsYUFBYTtlQUFiQTs7SUFzREFDLGNBQWM7ZUFBZEE7O0lBNUZBQyxVQUFVO2VBQVZBOztJQTZDQUMsWUFBWTtlQUFaQTs7SUE4REFDLDZCQUE2QjtlQUE3QkE7O0lBTkFDLHlCQUF5QjtlQUF6QkE7O0lBL0ZBQyxXQUFXO2VBQVhBOztJQWdEQUMsYUFBYTtlQUFiQTs7SUExQ0FDLFVBQVU7ZUFBVkE7O0lBTUFDLFdBQVc7ZUFBWEE7O0lBNkNBQyxZQUFZO2VBQVpBOztJQXZDQUMsV0FBVztlQUFYQTs7SUFPQUMsWUFBWTtlQUFaQTs7SUEyQ0FDLGFBQWE7ZUFBYkE7Ozs7Ozs7Ozs7Ozs7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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.430",
|
|
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.",
|
|
@@ -11,9 +11,9 @@
|
|
|
11
11
|
},
|
|
12
12
|
"dependencies": {
|
|
13
13
|
"necessary": "^14.0.1",
|
|
14
|
-
"occam-grammars": "^1.0.
|
|
14
|
+
"occam-grammars": "^1.0.662",
|
|
15
15
|
"occam-lexers": "^22.0.44",
|
|
16
|
-
"occam-parsers": "^22.0.
|
|
16
|
+
"occam-parsers": "^22.0.72",
|
|
17
17
|
"occam-query": "^3.1.174"
|
|
18
18
|
},
|
|
19
19
|
"devDependencies": {
|
package/src/constants.js
CHANGED
|
@@ -2,7 +2,11 @@
|
|
|
2
2
|
|
|
3
3
|
export const HEAD = "head";
|
|
4
4
|
export const STYLE = "style";
|
|
5
|
+
export const COMMA = ",";
|
|
5
6
|
export const COLOUR = "color"; ///
|
|
6
7
|
export const HYPHEN = "-";
|
|
8
|
+
export const UNDERSCORE = "_";
|
|
9
|
+
export const GLOBAL_FLAG = "g";
|
|
7
10
|
export const EMPTY_STRING = "";
|
|
11
|
+
export const SINGLE_SPACE = " ";
|
|
8
12
|
export const CARRIAGE_RETURN = "\n";
|
|
@@ -110,7 +110,7 @@ inlineListing {
|
|
|
110
110
|
padding: 0 3pt 0 3pt;
|
|
111
111
|
}
|
|
112
112
|
|
|
113
|
-
|
|
113
|
+
footnoteLink {
|
|
114
114
|
font-size: 9pt;
|
|
115
115
|
line-height: 13pt;
|
|
116
116
|
margin-left: 3pt;
|
|
@@ -178,6 +178,18 @@ footnotesItem {
|
|
|
178
178
|
}
|
|
179
179
|
}
|
|
180
180
|
|
|
181
|
+
indexList {
|
|
182
|
+
list-style-type: none;
|
|
183
|
+
}
|
|
184
|
+
|
|
185
|
+
indexItem {
|
|
186
|
+
margin-left: 0;
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
indexLink {
|
|
190
|
+
margin-left: 3pt;
|
|
191
|
+
}
|
|
192
|
+
|
|
181
193
|
pageNumber {
|
|
182
194
|
left: 0;
|
|
183
195
|
width: 100%;
|
package/src/elementMap.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
import { LINE_RULE_NAME,
|
|
4
|
-
|
|
4
|
+
COMMA_RULE_NAME,
|
|
5
5
|
IMAGE_RULE_NAME,
|
|
6
6
|
TABLE_RULE_NAME,
|
|
7
7
|
ERROR_RULE_NAME,
|
|
@@ -11,6 +11,9 @@ import { LINE_RULE_NAME,
|
|
|
11
11
|
REFERENCE_RULE_NAME,
|
|
12
12
|
PARAGRAPH_RULE_NAME,
|
|
13
13
|
HYPERLINK_RULE_NAME,
|
|
14
|
+
INDEX_LIST_RULE_NAME,
|
|
15
|
+
INDEX_ITEM_RULE_NAME,
|
|
16
|
+
INDEX_LINK_RULE_NAME,
|
|
14
17
|
TABLE_CELL_RULE_NAME,
|
|
15
18
|
TABLE_HEAD_RULE_NAME,
|
|
16
19
|
TABLE_BODY_RULE_NAME,
|
|
@@ -28,6 +31,7 @@ import { LINE_RULE_NAME,
|
|
|
28
31
|
CONTENTS_LINK_RULE_NAME,
|
|
29
32
|
CONTENTS_ITEM_RULE_NAME,
|
|
30
33
|
CONTENTS_LIST_RULE_NAME,
|
|
34
|
+
FOOTNOTE_LINK_RULE_NAME,
|
|
31
35
|
TABLE_HEAD_ROW_RULE_NAME,
|
|
32
36
|
TABLE_BODY_ROW_RULE_NAME,
|
|
33
37
|
INLINE_LISTING_RULE_NAME,
|
|
@@ -38,6 +42,7 @@ import { LINE_RULE_NAME,
|
|
|
38
42
|
TABLE_BODY_CELL_RULE_NAME,
|
|
39
43
|
EMPHASISED_TEXT_RULE_NAME,
|
|
40
44
|
PRIMARY_HEADING_RULE_NAME,
|
|
45
|
+
INDEX_DIRECTIVE_RULE_NAME,
|
|
41
46
|
EMBED_DIRECTIVE_RULE_NAME,
|
|
42
47
|
TERTIARY_HEADING_RULE_NAME,
|
|
43
48
|
IGNORE_DIRECTIVE_RULE_NAME,
|
|
@@ -58,9 +63,9 @@ const elementMap = {
|
|
|
58
63
|
tagName: "span",
|
|
59
64
|
className: "line"
|
|
60
65
|
},
|
|
61
|
-
[
|
|
62
|
-
tagName:
|
|
63
|
-
className:
|
|
66
|
+
[COMMA_RULE_NAME]: {
|
|
67
|
+
tagName: null,
|
|
68
|
+
className: null
|
|
64
69
|
},
|
|
65
70
|
[IMAGE_RULE_NAME]: {
|
|
66
71
|
tagName: "img",
|
|
@@ -98,6 +103,18 @@ const elementMap = {
|
|
|
98
103
|
tagName: "a",
|
|
99
104
|
className: "hyperlink"
|
|
100
105
|
},
|
|
106
|
+
[INDEX_LIST_RULE_NAME] : {
|
|
107
|
+
tagName: "ul",
|
|
108
|
+
className: "index"
|
|
109
|
+
},
|
|
110
|
+
[INDEX_ITEM_RULE_NAME] : {
|
|
111
|
+
tagName: "li",
|
|
112
|
+
className: "index"
|
|
113
|
+
},
|
|
114
|
+
[INDEX_LINK_RULE_NAME] : {
|
|
115
|
+
tagName: "a",
|
|
116
|
+
className: "index"
|
|
117
|
+
},
|
|
101
118
|
[TABLE_CELL_RULE_NAME]: {
|
|
102
119
|
tagName: null,
|
|
103
120
|
className: null
|
|
@@ -156,7 +173,7 @@ const elementMap = {
|
|
|
156
173
|
},
|
|
157
174
|
[CONTENTS_LINK_RULE_NAME]: {
|
|
158
175
|
tagName: "a",
|
|
159
|
-
className: "contents"
|
|
176
|
+
className: "contents-link"
|
|
160
177
|
},
|
|
161
178
|
[CONTENTS_ITEM_RULE_NAME]: {
|
|
162
179
|
tagName: "li",
|
|
@@ -166,6 +183,10 @@ const elementMap = {
|
|
|
166
183
|
tagName: "ul",
|
|
167
184
|
className: "contents"
|
|
168
185
|
},
|
|
186
|
+
[FOOTNOTE_LINK_RULE_NAME]: {
|
|
187
|
+
tagName: "a",
|
|
188
|
+
className: "footnote-link"
|
|
189
|
+
},
|
|
169
190
|
[TABLE_HEAD_ROW_RULE_NAME]: {
|
|
170
191
|
tagName: "tr",
|
|
171
192
|
className: null
|
|
@@ -206,6 +227,10 @@ const elementMap = {
|
|
|
206
227
|
tagName: "h1",
|
|
207
228
|
className: null
|
|
208
229
|
},
|
|
230
|
+
[INDEX_DIRECTIVE_RULE_NAME]: {
|
|
231
|
+
tagName: null,
|
|
232
|
+
className: null
|
|
233
|
+
},
|
|
209
234
|
[EMBED_DIRECTIVE_RULE_NAME]: {
|
|
210
235
|
tagName: null,
|
|
211
236
|
className: null
|
package/src/example/importer.js
CHANGED
|
@@ -33,7 +33,8 @@ function classNameFromFilePath(filePath) {
|
|
|
33
33
|
return className;
|
|
34
34
|
}
|
|
35
35
|
|
|
36
|
-
const
|
|
36
|
+
const INDEX_PATH = "index.md",
|
|
37
|
+
CONTENT_PATH = "content.md",
|
|
37
38
|
CONTENTS_PATH = "contents.md",
|
|
38
39
|
HALF_TITLE_PATH = "half-title.md",
|
|
39
40
|
FRONT_MATTER_PATH = "front-matter.md",
|
|
@@ -45,9 +46,15 @@ const CONTENT_PATH = "content.md",
|
|
|
45
46
|
export const defaultContent = `@ignore
|
|
46
47
|
|
|
47
48
|
@include ${FRONT_MATTER_PATH}
|
|
48
|
-
@include ${CONTENT_PATH}
|
|
49
|
+
@include ${CONTENT_PATH}
|
|
50
|
+
@include ${INDEX_PATH}
|
|
51
|
+
`;
|
|
49
52
|
|
|
50
|
-
const
|
|
53
|
+
const indexContent = `## Index
|
|
54
|
+
|
|
55
|
+
@index`,
|
|
56
|
+
|
|
57
|
+
contentContent = `@ignore
|
|
51
58
|
|
|
52
59
|
@include ${INTRODUCTION_PATH}
|
|
53
60
|
@include ${GETTING_STARTED_PATH}`,
|
|
@@ -82,7 +89,7 @@ This book explains how this is possible.
|
|
|
82
89
|
gettingStartedContent = `# Getting started
|
|
83
90
|
|
|
84
91
|
Another short paragraph with a reference to a footnote[^occam].
|
|
85
|
-
|
|
92
|
+
|
|
86
93
|
[^occam]: The word Occam is used somewhat nebulously here.
|
|
87
94
|
It is most often associated with Occam's IDE but in fact it encompasses a range of software and services.
|
|
88
95
|
This book explains these divers parts and there is a companion book, called The Foundations of Symbolic Reasoning, that covers the underlying theory.
|
|
@@ -99,10 +106,19 @@ This book explains these divers parts and there is a companion book, called The
|
|
|
99
106
|
|
|
100
107
|
installingTheCLIContent = `## Installing the CLI`,
|
|
101
108
|
|
|
102
|
-
gettingToGripsWithTheIDEIContent = `## Getting to grips with the IDE
|
|
109
|
+
gettingToGripsWithTheIDEIContent = `## Getting to grips with the IDE
|
|
110
|
+
|
|
111
|
+
* An unordered list to test...
|
|
112
|
+
* ...the indexing.
|
|
113
|
+
|
|
114
|
+
1. As well as an...
|
|
115
|
+
2. ...ordered list.
|
|
116
|
+
|
|
117
|
+
`;
|
|
103
118
|
|
|
104
119
|
const contentMap = {
|
|
105
120
|
|
|
121
|
+
[INDEX_PATH]: indexContent,
|
|
106
122
|
[CONTENT_PATH]: contentContent,
|
|
107
123
|
[CONTENTS_PATH]: contentsContent,
|
|
108
124
|
[HALF_TITLE_PATH]: halfTitleContent,
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
const indexOptions = {
|
|
4
|
+
"phrases": [
|
|
5
|
+
"symbolic reasoning"
|
|
6
|
+
],
|
|
7
|
+
"plurals": [
|
|
8
|
+
"grammar",
|
|
9
|
+
"language(s)"
|
|
10
|
+
],
|
|
11
|
+
"acronyms": [
|
|
12
|
+
"CLI",
|
|
13
|
+
],
|
|
14
|
+
"properNouns": [
|
|
15
|
+
"Occam"
|
|
16
|
+
],
|
|
17
|
+
"ignoredWords": [
|
|
18
|
+
"a",
|
|
19
|
+
"all",
|
|
20
|
+
"also",
|
|
21
|
+
"an",
|
|
22
|
+
"and",
|
|
23
|
+
"another",
|
|
24
|
+
"approach",
|
|
25
|
+
"apt",
|
|
26
|
+
"are",
|
|
27
|
+
"as",
|
|
28
|
+
"associated",
|
|
29
|
+
"at",
|
|
30
|
+
"between",
|
|
31
|
+
"boils",
|
|
32
|
+
"book",
|
|
33
|
+
"but",
|
|
34
|
+
"called",
|
|
35
|
+
"cannot",
|
|
36
|
+
"companion",
|
|
37
|
+
"considerable",
|
|
38
|
+
"contents",
|
|
39
|
+
"controlled",
|
|
40
|
+
"covers",
|
|
41
|
+
"day",
|
|
42
|
+
"detail",
|
|
43
|
+
"detailed",
|
|
44
|
+
"distinguish",
|
|
45
|
+
"divers",
|
|
46
|
+
"down",
|
|
47
|
+
"encompasses",
|
|
48
|
+
"end",
|
|
49
|
+
"expert",
|
|
50
|
+
"explains",
|
|
51
|
+
"explanation",
|
|
52
|
+
"explanations",
|
|
53
|
+
"fact",
|
|
54
|
+
"florence",
|
|
55
|
+
"footnote",
|
|
56
|
+
"former",
|
|
57
|
+
"foundations",
|
|
58
|
+
"future",
|
|
59
|
+
"getting",
|
|
60
|
+
"goes",
|
|
61
|
+
"grips",
|
|
62
|
+
"has",
|
|
63
|
+
"have",
|
|
64
|
+
"here",
|
|
65
|
+
"how",
|
|
66
|
+
"i",
|
|
67
|
+
"ide",
|
|
68
|
+
"in",
|
|
69
|
+
"indeed",
|
|
70
|
+
"index",
|
|
71
|
+
"indexing",
|
|
72
|
+
"into",
|
|
73
|
+
"introduction",
|
|
74
|
+
"is",
|
|
75
|
+
"it",
|
|
76
|
+
"its",
|
|
77
|
+
"largely",
|
|
78
|
+
"least",
|
|
79
|
+
"limits",
|
|
80
|
+
"list",
|
|
81
|
+
"make",
|
|
82
|
+
"more",
|
|
83
|
+
"most",
|
|
84
|
+
"natural",
|
|
85
|
+
"near",
|
|
86
|
+
"nebulously",
|
|
87
|
+
"need",
|
|
88
|
+
"not",
|
|
89
|
+
"of",
|
|
90
|
+
"often",
|
|
91
|
+
"on",
|
|
92
|
+
"ordered",
|
|
93
|
+
"originally",
|
|
94
|
+
"own",
|
|
95
|
+
"paragraph",
|
|
96
|
+
"parts",
|
|
97
|
+
"possible",
|
|
98
|
+
"provide",
|
|
99
|
+
"purpose",
|
|
100
|
+
"range",
|
|
101
|
+
"reference",
|
|
102
|
+
"s",
|
|
103
|
+
"seemed",
|
|
104
|
+
"services",
|
|
105
|
+
"short",
|
|
106
|
+
"some",
|
|
107
|
+
"somewhat",
|
|
108
|
+
"started",
|
|
109
|
+
"subject",
|
|
110
|
+
"support",
|
|
111
|
+
"system",
|
|
112
|
+
"test",
|
|
113
|
+
"that",
|
|
114
|
+
"the",
|
|
115
|
+
"there",
|
|
116
|
+
"these",
|
|
117
|
+
"this",
|
|
118
|
+
"to",
|
|
119
|
+
"tried",
|
|
120
|
+
"underlying",
|
|
121
|
+
"unordered",
|
|
122
|
+
"use",
|
|
123
|
+
"useable",
|
|
124
|
+
"used",
|
|
125
|
+
"was",
|
|
126
|
+
"well",
|
|
127
|
+
"which",
|
|
128
|
+
"will",
|
|
129
|
+
"with",
|
|
130
|
+
"word"
|
|
131
|
+
]
|
|
132
|
+
};
|
|
133
|
+
|
|
134
|
+
export default indexOptions;
|
package/src/example/view.js
CHANGED
|
@@ -11,6 +11,7 @@ import importer from "./importer";
|
|
|
11
11
|
import PreviewDiv from "./view/div/preview";
|
|
12
12
|
import SubHeading from "./view/subHeading";
|
|
13
13
|
import CSSTextarea from "./view/textarea/css";
|
|
14
|
+
import indexOptions from "./indexOptions";
|
|
14
15
|
import TabButtonsDiv from "./view/div/tabButtons";
|
|
15
16
|
import LeftSizeableDiv from "./view/div/sizeable/left";
|
|
16
17
|
import RightSizeableDiv from "./view/div/sizeable/right";
|
|
@@ -89,9 +90,12 @@ class View extends Element {
|
|
|
89
90
|
context = {
|
|
90
91
|
tokens,
|
|
91
92
|
importer,
|
|
93
|
+
indexOptions,
|
|
92
94
|
linesPerPage,
|
|
93
95
|
contentsDepth,
|
|
94
|
-
charactersPerLine
|
|
96
|
+
charactersPerLine,
|
|
97
|
+
tokensFromContent,
|
|
98
|
+
nodeFromTokensAndStartRuleName
|
|
95
99
|
},
|
|
96
100
|
divisionMarkdownNodes = postprocess(divisionMarkdownNode, context);
|
|
97
101
|
|
|
@@ -270,3 +274,18 @@ export default withStyle(View)`
|
|
|
270
274
|
padding: 1rem;
|
|
271
275
|
|
|
272
276
|
`;
|
|
277
|
+
|
|
278
|
+
function tokensFromContent(content) {
|
|
279
|
+
const tokens = markdownLexer.tokenise(content);
|
|
280
|
+
|
|
281
|
+
return tokens;
|
|
282
|
+
}
|
|
283
|
+
|
|
284
|
+
function nodeFromTokensAndStartRuleName(tokens, startRuleName) {
|
|
285
|
+
const ruleMap = markdownParser.getRuleMap(),
|
|
286
|
+
startRule = ruleMap[startRuleName],
|
|
287
|
+
startOfContent = true,
|
|
288
|
+
node = markdownParser.parse(tokens, startRule, startOfContent);
|
|
289
|
+
|
|
290
|
+
return node;
|
|
291
|
+
}
|
package/src/example.js
CHANGED
|
@@ -15,9 +15,9 @@ const { renderStyles } = withStyle;
|
|
|
15
15
|
|
|
16
16
|
const selectorsString = PREVIEWED_DIV_SELECTORS_STRING;
|
|
17
17
|
|
|
18
|
-
DefaultMarkdownStyleElement.
|
|
18
|
+
DefaultMarkdownStyleElement.fromSelectorsString(selectorsString);
|
|
19
19
|
|
|
20
|
-
const markdownStyleElement = MarkdownStyleElement.
|
|
20
|
+
const markdownStyleElement = MarkdownStyleElement.fromSelectorsString(selectorsString);
|
|
21
21
|
|
|
22
22
|
renderStyles();
|
|
23
23
|
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { UNDERSCORE, GLOBAL_FLAG, SINGLE_SPACE } from "../constants";
|
|
4
|
+
|
|
5
|
+
export default class PhraseMatcher {
|
|
6
|
+
constructor(regularExpression, replacement) {
|
|
7
|
+
this.regularExpression = regularExpression;
|
|
8
|
+
this.replacement = replacement;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
getRegularExpression() {
|
|
12
|
+
return this.regularExpression;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
getReplacement() {
|
|
16
|
+
return this.replacement;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
replace(plainText) {
|
|
20
|
+
plainText = plainText.replace(this.regularExpression, this.replacement); ///
|
|
21
|
+
|
|
22
|
+
return plainText;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
static revert(entry) {
|
|
26
|
+
entry = entry.replace(/_/g, SINGLE_SPACE);
|
|
27
|
+
|
|
28
|
+
return entry;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
static fromPhrase(phrase) {
|
|
32
|
+
const regularExpression = new RegExp(phrase, GLOBAL_FLAG),
|
|
33
|
+
replacement = phrase.replace(/\s/g, UNDERSCORE),
|
|
34
|
+
phraseMatcher = new PhraseMatcher(regularExpression, replacement);
|
|
35
|
+
|
|
36
|
+
return phraseMatcher;
|
|
37
|
+
}
|
|
38
|
+
}
|
package/src/markdown/bnf.js
CHANGED
|
@@ -43,6 +43,8 @@ const bnf = `
|
|
|
43
43
|
|
|
44
44
|
directives ::= pageNumber
|
|
45
45
|
|
|
46
|
+
| indexDirective
|
|
47
|
+
|
|
46
48
|
| ignoreDirective
|
|
47
49
|
|
|
48
50
|
| contentsDirective
|
|
@@ -92,6 +94,9 @@ const bnf = `
|
|
|
92
94
|
embedDirective ::= "@embed" [path] ;
|
|
93
95
|
|
|
94
96
|
|
|
97
|
+
indexDirective ::= "@index" ;
|
|
98
|
+
|
|
99
|
+
|
|
95
100
|
ignoreDirective ::= "@ignore" ;
|
|
96
101
|
|
|
97
102
|
|
|
@@ -148,7 +153,7 @@ const bnf = `
|
|
|
148
153
|
tableCell ::= line [vertical-bar] ;
|
|
149
154
|
|
|
150
155
|
|
|
151
|
-
line. ::= (
|
|
156
|
+
line. ::= ( footnoteLink
|
|
152
157
|
|
|
153
158
|
| emailLink
|
|
154
159
|
|
|
@@ -167,7 +172,7 @@ const bnf = `
|
|
|
167
172
|
| plainText )+ ;
|
|
168
173
|
|
|
169
174
|
|
|
170
|
-
|
|
175
|
+
footnoteLink. ::= [link] ;
|
|
171
176
|
|
|
172
177
|
|
|
173
178
|
emailLink. ::= "[" inlineText... "]"<NO_WHITESPACE>"(" [email-address] ")"
|
|
@@ -234,9 +239,6 @@ const bnf = `
|
|
|
234
239
|
|
|
235
240
|
|
|
236
241
|
className ::= <NO_WHITESPACE>[identifier] ;
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
anchor. ::= ε ;
|
|
240
242
|
|
|
241
243
|
|
|
242
244
|
contentsList ::= contentsItem+ ;
|
|
@@ -258,6 +260,20 @@ const bnf = `
|
|
|
258
260
|
footnotesItem ::= anchor paragraph ;
|
|
259
261
|
|
|
260
262
|
|
|
263
|
+
indexList ::= indexItem+ ;
|
|
264
|
+
|
|
265
|
+
|
|
266
|
+
indexItem ::= line... indexLink ( comma indexLink )* ;
|
|
267
|
+
|
|
268
|
+
|
|
269
|
+
indexLink ::= [number] ;
|
|
270
|
+
|
|
271
|
+
|
|
272
|
+
comma. ::= "," ;
|
|
273
|
+
|
|
274
|
+
|
|
275
|
+
anchor. ::= ε ;
|
|
276
|
+
|
|
261
277
|
`;
|
|
262
278
|
|
|
263
279
|
export default bnf;
|
package/src/markdown/lexer.js
CHANGED
|
@@ -28,16 +28,6 @@ export default class MarkdownLexer extends CommonLexer {
|
|
|
28
28
|
|
|
29
29
|
static DoublyQuotedStringLiteralToken = null;
|
|
30
30
|
|
|
31
|
-
static fromNothing(Class) {
|
|
32
|
-
if (Class === undefined) {
|
|
33
|
-
Class = MarkdownLexer; ///
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
const markdownLexer = CommonLexer.fromNothing(Class);
|
|
37
|
-
|
|
38
|
-
return markdownLexer;
|
|
39
|
-
}
|
|
40
|
-
|
|
41
31
|
static fromRules(Class, rules) {
|
|
42
32
|
if (rules === undefined) {
|
|
43
33
|
rules = Class; ///
|
|
@@ -61,4 +51,14 @@ export default class MarkdownLexer extends CommonLexer {
|
|
|
61
51
|
|
|
62
52
|
return markdownLexer;
|
|
63
53
|
}
|
|
54
|
+
|
|
55
|
+
static fromNothing(Class) {
|
|
56
|
+
if (Class === undefined) {
|
|
57
|
+
Class = MarkdownLexer; ///
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
const markdownLexer = CommonLexer.fromNothing(Class);
|
|
61
|
+
|
|
62
|
+
return markdownLexer;
|
|
63
|
+
}
|
|
64
64
|
}
|