highmark-markdown 1.0.173 → 1.0.174
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/README.md +1 -1
- package/example.js +14061 -13787
- package/lib/example/importer.js +5 -5
- package/lib/example/view/div/container/markdown.js +3 -3
- package/lib/example/view/div/preview.js +5 -1
- package/lib/example/view/textarea/parseTree/{markdown/outer.js → html.js} +17 -17
- package/lib/example/view/textarea/parseTree/markdown.js +49 -2
- package/lib/example/view/textarea/plainText.js +7 -2
- package/lib/example/view/xmp.js +7 -2
- package/lib/example/view.js +67 -104
- package/lib/index/match.js +6 -6
- package/lib/index.js +27 -15
- package/lib/map/className.js +60 -0
- package/lib/map/node/html.js +85 -0
- package/lib/map/node/markdown.js +73 -0
- package/lib/map/tagName.js +60 -0
- package/lib/markdown/bnf.js +2 -2
- package/lib/markdown/parser.js +10 -9
- package/lib/markdownStyle/entries.js +3 -3
- package/lib/mixins/node.js +24 -23
- package/lib/node/html/anchor.js +55 -11
- package/lib/node/html/blockLine.js +75 -9
- package/lib/node/html/division.js +135 -0
- package/lib/node/html/error.js +195 -0
- package/lib/node/html/{blockListingEnd.js → footnote.js} +20 -14
- package/lib/node/html/heading/index.js +128 -0
- package/lib/node/html/heading/primary.js +129 -0
- package/lib/node/{markdown/directive.js → html/heading/quaternary.js} +21 -21
- package/lib/node/html/heading/secondary.js +129 -0
- package/lib/node/html/heading/tertiary.js +129 -0
- package/lib/node/html/image.js +214 -0
- package/lib/node/html/indexList.js +128 -0
- package/lib/node/html/item/contents.js +128 -0
- package/lib/node/html/item/footnotes.js +128 -0
- package/lib/node/{markdown/indexItem.js → html/item/index.js} +36 -15
- package/lib/node/html/item/ordered.js +17 -2
- package/lib/node/html/item/unordered.js +128 -0
- package/lib/node/html/line.js +174 -0
- package/lib/node/html/{contentsLink.js → link/contents.js} +19 -4
- package/lib/node/html/link/email.js +229 -0
- package/lib/node/html/link/footnote.js +137 -0
- package/lib/node/html/link/hyper.js +229 -0
- package/lib/node/html/link/index.js +202 -0
- package/lib/node/html/list/contents.js +128 -0
- package/lib/node/html/list/footnotes.js +144 -0
- package/lib/node/html/list/ordered.js +128 -0
- package/lib/node/html/list/unordered.js +128 -0
- package/lib/node/html/{blockListing.js → listing/block.js} +18 -9
- package/lib/node/html/listing/inline.js +189 -0
- package/lib/node/html/pageNumber.js +170 -0
- package/lib/node/html/{className.js → paragraph.js} +26 -18
- package/lib/node/{markdown/nonsense.js → html/table.js} +22 -15
- package/lib/node/{markdown/blockListingEnd.js → html/tableBody.js} +22 -15
- package/lib/node/html/tableBodyCell.js +128 -0
- package/lib/node/html/tableBodyRow.js +128 -0
- package/lib/node/html/{blockListingStart.js → tableHead.js} +26 -18
- package/lib/node/html/tableHeadCell.js +128 -0
- package/lib/node/html/tableHeadRow.js +128 -0
- package/lib/node/html/text/block.js +128 -0
- package/lib/node/html/text/emphasised.js +128 -0
- package/lib/node/html/text/inline.js +196 -0
- package/lib/node/html/text/plain.js +128 -0
- package/lib/node/html/text/strong.js +128 -0
- package/lib/node/html/text/stronglyEmphasised.js +212 -0
- package/lib/node/html/text.js +141 -0
- package/lib/node/html/topmost.js +57 -10
- package/lib/node/html.js +130 -40
- package/lib/node/markdown/anchor.js +6 -22
- package/lib/node/markdown/{table.js → blockEnd.js} +10 -10
- package/lib/node/markdown/blockListing.js +4 -31
- package/lib/node/markdown/{blockListingStart.js → blockStart.js} +10 -24
- package/lib/node/markdown/className.js +2 -2
- package/lib/node/markdown/contentsItem.js +4 -4
- package/lib/node/markdown/contentsList.js +2 -10
- package/lib/node/markdown/directive/embee.js +13 -13
- package/lib/node/markdown/directive/include.js +13 -13
- package/lib/node/markdown/directive/pageNumber.js +13 -29
- package/lib/node/markdown/division.js +205 -254
- package/lib/node/markdown/emailLink.js +36 -98
- package/lib/node/markdown/emphasisedText.js +3 -54
- package/lib/node/markdown/error.js +9 -53
- package/lib/node/markdown/footnote.js +1 -15
- package/lib/node/markdown/footnoteLink.js +9 -32
- package/lib/node/markdown/footnotesList.js +1 -16
- package/lib/node/markdown/heading/primary.js +1 -2
- package/lib/node/markdown/heading/quaternary.js +1 -2
- package/lib/node/markdown/heading/secondary.js +1 -2
- package/lib/node/markdown/heading/tertiary.js +1 -2
- package/lib/node/markdown/heading.js +1 -13
- package/lib/node/markdown/hyperlink.js +44 -108
- package/lib/node/markdown/image.js +2 -63
- package/lib/node/markdown/indexLink.js +13 -87
- package/lib/node/markdown/indexList.js +2 -10
- package/lib/node/markdown/inlineListing.js +22 -56
- package/lib/node/markdown/inlineText.js +3 -21
- package/lib/node/markdown/item/ordered.js +6 -6
- package/lib/node/markdown/line.js +1 -74
- package/lib/node/markdown/path.js +7 -7
- package/lib/node/markdown/strongText.js +3 -54
- package/lib/node/markdown/stronglyEmphasisedText.js +3 -78
- package/lib/node/markdown/{tableCellDivider.js → text/block.js} +12 -12
- package/lib/node/markdown/{tableBody.js → text/plain.js} +12 -12
- package/lib/node/markdown/text.js +154 -0
- package/lib/node/markdown/topmost.js +191 -0
- package/lib/node/markdown.js +6 -229
- package/lib/queries.js +4 -45
- package/lib/ruleNames.js +34 -21
- package/lib/style/selector.js +11 -7
- package/lib/transform/contentsItem.js +134 -0
- package/lib/transform/contentsLink.js +115 -0
- package/lib/transform/contentsList.js +194 -0
- package/lib/{replacement/subDivision.js → transform/division.js} +33 -38
- package/lib/{replacement → transform}/embedDirective.js +14 -19
- package/lib/{replacement → transform}/footnote.js +18 -23
- package/lib/transform/footnotesItem.js +123 -0
- package/lib/transform/footnotesList.js +173 -0
- package/lib/{replacement → transform}/includeDirective.js +13 -18
- package/lib/transform/index.js +166 -0
- package/lib/{replacement → transform}/indexAnchor.js +13 -13
- package/lib/{replacement → transform}/indexHeading.js +13 -18
- package/lib/{replacement → transform}/indexItem.js +13 -18
- package/lib/transform/indexList.js +121 -0
- package/lib/{replacement → transform}/line.js +13 -18
- package/lib/{replacement → transform}/subDivision/contentsDirective.js +14 -14
- package/lib/transform/subDivision/embedDirectives.js +147 -0
- package/lib/{replacement → transform}/subDivision/footnote.js +14 -14
- package/lib/{replacement → transform}/subDivision/footnotesDirective.js +14 -14
- package/lib/transform/subDivision/includeDirectives.js +142 -0
- package/lib/{replacement → transform}/subDivision/indexDirective.js +14 -14
- package/lib/{replacement → transform}/subDivision/pageNumberDirective.js +14 -14
- package/lib/utilities/content.js +1 -61
- package/lib/utilities/entities.js +17 -0
- package/lib/utilities/entries.js +6 -6
- package/lib/utilities/html.js +67 -9
- package/lib/utilities/markdown.js +45 -0
- package/lib/utilities/parser.js +8 -2
- package/lib/utilities/query.js +2 -22
- package/package.json +2 -2
- package/src/example/importer.js +2 -4
- package/src/example/view/div/container/markdown.js +2 -2
- package/src/example/view/div/preview.js +6 -0
- package/src/example/view/textarea/parseTree/html.js +28 -0
- package/src/example/view/textarea/parseTree/markdown.js +19 -1
- package/src/example/view/textarea/plainText.js +9 -1
- package/src/example/view/xmp.js +9 -1
- package/src/example/view.js +84 -91
- package/src/index/match.js +6 -6
- package/src/index.js +6 -3
- package/src/map/className.js +16 -0
- package/src/map/node/html.js +136 -0
- package/src/map/node/markdown.js +125 -0
- package/src/map/tagName.js +16 -0
- package/src/markdown/bnf.js +85 -64
- package/src/markdown/parser.js +3 -1
- package/src/markdownStyle/entries.js +3 -3
- package/src/mixins/node.js +29 -34
- package/src/node/html/anchor.js +26 -5
- package/src/node/html/blockLine.js +58 -7
- package/src/node/html/division.js +15 -0
- package/src/node/html/error.js +64 -0
- package/src/node/html/footnote.js +17 -0
- package/src/node/html/heading/index.js +13 -0
- package/src/node/html/heading/primary.js +15 -0
- package/src/node/html/heading/quaternary.js +15 -0
- package/src/node/html/heading/secondary.js +15 -0
- package/src/node/html/heading/tertiary.js +15 -0
- package/src/node/html/image.js +107 -0
- package/src/node/html/indexList.js +13 -0
- package/src/node/html/item/contents.js +13 -0
- package/src/node/html/item/footnotes.js +13 -0
- package/src/node/{markdown/indexItem.js → html/item/index.js} +9 -3
- package/src/node/html/item/ordered.js +5 -1
- package/src/node/html/item/unordered.js +13 -0
- package/src/node/html/line.js +64 -0
- package/src/node/html/{contentsLink.js → link/contents.js} +7 -3
- package/src/node/html/link/email.js +96 -0
- package/src/node/html/link/footnote.js +33 -0
- package/src/node/html/link/hyper.js +96 -0
- package/src/node/html/link/index.js +72 -0
- package/src/node/html/list/contents.js +13 -0
- package/src/node/html/list/footnotes.js +27 -0
- package/src/node/html/list/ordered.js +13 -0
- package/src/node/html/list/unordered.js +13 -0
- package/src/node/html/{blockListing.js → listing/block.js} +5 -8
- package/src/node/html/listing/inline.js +61 -0
- package/src/node/html/pageNumber.js +46 -0
- package/src/node/html/paragraph.js +13 -0
- package/src/node/html/table.js +13 -0
- package/src/node/html/tableBody.js +13 -0
- package/src/node/html/tableBodyCell.js +13 -0
- package/src/node/html/tableBodyRow.js +13 -0
- package/src/node/html/tableHead.js +13 -0
- package/src/node/html/tableHeadCell.js +13 -0
- package/src/node/html/tableHeadRow.js +13 -0
- package/src/node/html/text/block.js +13 -0
- package/src/node/html/text/emphasised.js +13 -0
- package/src/node/html/text/inline.js +57 -0
- package/src/node/html/text/plain.js +13 -0
- package/src/node/html/text/strong.js +13 -0
- package/src/node/html/text/stronglyEmphasised.js +98 -0
- package/src/node/html/text.js +34 -0
- package/src/node/html/topmost.js +57 -8
- package/src/node/html.js +136 -53
- package/src/node/markdown/anchor.js +5 -25
- package/src/node/markdown/{table.js → blockEnd.js} +2 -2
- package/src/node/markdown/blockListing.js +4 -10
- package/src/node/markdown/{blockListingStart.js → blockStart.js} +4 -6
- package/src/node/markdown/className.js +2 -2
- package/src/node/markdown/contentsItem.js +4 -4
- package/src/node/markdown/contentsList.js +0 -6
- package/src/node/markdown/directive/embee.js +10 -10
- package/src/node/markdown/directive/include.js +10 -10
- package/src/node/markdown/directive/pageNumber.js +10 -29
- package/src/node/markdown/division.js +203 -260
- package/src/node/markdown/emailLink.js +41 -87
- package/src/node/markdown/emphasisedText.js +1 -40
- package/src/node/markdown/error.js +9 -40
- package/src/node/markdown/footnote.js +0 -12
- package/src/node/markdown/footnoteLink.js +8 -31
- package/src/node/markdown/footnotesList.js +0 -13
- package/src/node/markdown/heading/primary.js +0 -2
- package/src/node/markdown/heading/quaternary.js +0 -2
- package/src/node/markdown/heading/secondary.js +0 -2
- package/src/node/markdown/heading/tertiary.js +0 -2
- package/src/node/markdown/heading.js +0 -14
- package/src/node/markdown/hyperlink.js +41 -91
- package/src/node/markdown/image.js +1 -82
- package/src/node/markdown/indexLink.js +10 -69
- package/src/node/markdown/indexList.js +0 -6
- package/src/node/markdown/inlineListing.js +20 -40
- package/src/node/markdown/inlineText.js +1 -21
- package/src/node/markdown/item/ordered.js +3 -3
- package/src/node/markdown/line.js +0 -61
- package/src/node/markdown/path.js +5 -5
- package/src/node/markdown/strongText.js +1 -40
- package/src/node/markdown/stronglyEmphasisedText.js +1 -74
- package/src/node/markdown/text/block.js +7 -0
- package/src/node/markdown/text/plain.js +7 -0
- package/src/node/markdown/text.js +80 -0
- package/src/node/markdown/topmost.js +91 -0
- package/src/node/markdown.js +1 -200
- package/src/queries.js +6 -86
- package/src/ruleNames.js +16 -12
- package/src/style/selector.js +16 -10
- package/src/transform/contentsItem.js +55 -0
- package/src/{replacement → transform}/contentsLink.js +10 -9
- package/src/{replacement → transform}/contentsList.js +26 -26
- package/src/transform/division.js +41 -0
- package/src/{replacement → transform}/embedDirective.js +4 -4
- package/src/{replacement → transform}/footnote.js +7 -7
- package/src/transform/footnotesItem.js +25 -0
- package/src/transform/footnotesList.js +79 -0
- package/src/{replacement → transform}/includeDirective.js +4 -4
- package/src/transform/index.js +90 -0
- package/src/{replacement → transform}/indexAnchor.js +5 -4
- package/src/{replacement → transform}/indexHeading.js +4 -4
- package/src/{replacement → transform}/indexItem.js +4 -4
- package/src/transform/indexList.js +33 -0
- package/src/{replacement → transform}/line.js +4 -4
- package/src/transform/subDivision/contentsDirective.js +20 -0
- package/src/transform/subDivision/embedDirectives.js +52 -0
- package/src/{replacement → transform}/subDivision/footnote.js +5 -5
- package/src/transform/subDivision/footnotesDirective.js +20 -0
- package/src/transform/subDivision/includeDirectives.js +48 -0
- package/src/transform/subDivision/indexDirective.js +20 -0
- package/src/transform/subDivision/pageNumberDirective.js +20 -0
- package/src/utilities/content.js +0 -95
- package/src/utilities/entities.js +11 -0
- package/src/utilities/entries.js +3 -3
- package/src/utilities/html.js +69 -6
- package/src/utilities/markdown.js +32 -0
- package/src/utilities/parser.js +3 -2
- package/src/utilities/query.js +8 -28
- package/lib/classFromOuterNode.js +0 -30
- package/lib/elementMap.js +0 -218
- package/lib/example/view/textarea/parseTree/markdown/inner.js +0 -179
- package/lib/mixins/content.js +0 -21
- package/lib/mixins/element.js +0 -32
- package/lib/node/html/comma.js +0 -127
- package/lib/node/html/directive/pageNumber.js +0 -178
- package/lib/node/markdown/blockLine.js +0 -207
- package/lib/node/markdown/comma.js +0 -123
- package/lib/node/markdown/directive/contents.js +0 -107
- package/lib/node/markdown/directive/footnotes.js +0 -107
- package/lib/node/markdown/directive/ignore.js +0 -107
- package/lib/node/markdown/directive/index.js +0 -107
- package/lib/node/markdown/directives.js +0 -125
- package/lib/node/markdown/emptyTableCell.js +0 -122
- package/lib/node/markdown/endOfLine.js +0 -151
- package/lib/node/markdown/indexHeading.js +0 -107
- package/lib/node/markdown/item/unordered.js +0 -107
- package/lib/node/markdown/item.js +0 -107
- package/lib/node/markdown/orderedList.js +0 -107
- package/lib/node/markdown/plainText.js +0 -115
- package/lib/node/markdown/subDivision.js +0 -161
- package/lib/node/markdown/tableBodyCell.js +0 -128
- package/lib/node/markdown/tableBodyRow.js +0 -107
- package/lib/node/markdown/tableCell.js +0 -118
- package/lib/node/markdown/tableDivider.js +0 -107
- package/lib/node/markdown/tableHead.js +0 -107
- package/lib/node/markdown/tableHeadCell.js +0 -128
- package/lib/node/markdown/tableHeadRow.js +0 -107
- package/lib/node/markdown/unorderedList.js +0 -107
- package/lib/node/markdown/verticalSpace.js +0 -151
- package/lib/nodeMap.js +0 -98
- package/lib/replacement/contentsItem.js +0 -134
- package/lib/replacement/contentsLink.js +0 -115
- package/lib/replacement/contentsList.js +0 -194
- package/lib/replacement/footnotesItem.js +0 -123
- package/lib/replacement/footnotesList.js +0 -173
- package/lib/replacement/index.js +0 -166
- package/lib/replacement/indexList.js +0 -121
- package/lib/replacement/subDivision/embedDirectives.js +0 -143
- package/lib/replacement/subDivision/includeDirectives.js +0 -175
- package/lib/replacement.js +0 -262
- package/lib/ruleNameToClassMap.js +0 -44
- package/lib/utilities/childNodes.js +0 -127
- package/lib/utilities/processing.js +0 -106
- package/lib/utilities/replacement.js +0 -195
- package/src/classFromOuterNode.js +0 -20
- package/src/elementMap.js +0 -322
- package/src/example/view/textarea/parseTree/markdown/inner.js +0 -36
- package/src/example/view/textarea/parseTree/markdown/outer.js +0 -27
- package/src/mixins/content.js +0 -16
- package/src/mixins/element.js +0 -29
- package/src/node/html/blockListingEnd.js +0 -11
- package/src/node/html/blockListingStart.js +0 -11
- package/src/node/html/className.js +0 -11
- package/src/node/html/comma.js +0 -18
- package/src/node/html/directive/pageNumber.js +0 -55
- package/src/node/markdown/blockLine.js +0 -90
- package/src/node/markdown/blockListingEnd.js +0 -9
- package/src/node/markdown/comma.js +0 -23
- package/src/node/markdown/directive/contents.js +0 -7
- package/src/node/markdown/directive/footnotes.js +0 -7
- package/src/node/markdown/directive/ignore.js +0 -7
- package/src/node/markdown/directive/index.js +0 -7
- package/src/node/markdown/directive.js +0 -15
- package/src/node/markdown/directives.js +0 -25
- package/src/node/markdown/emptyTableCell.js +0 -19
- package/src/node/markdown/endOfLine.js +0 -39
- package/src/node/markdown/indexHeading.js +0 -7
- package/src/node/markdown/item/unordered.js +0 -7
- package/src/node/markdown/item.js +0 -7
- package/src/node/markdown/nonsense.js +0 -9
- package/src/node/markdown/orderedList.js +0 -7
- package/src/node/markdown/plainText.js +0 -13
- package/src/node/markdown/subDivision.js +0 -64
- package/src/node/markdown/tableBody.js +0 -7
- package/src/node/markdown/tableBodyCell.js +0 -29
- package/src/node/markdown/tableBodyRow.js +0 -7
- package/src/node/markdown/tableCell.js +0 -19
- package/src/node/markdown/tableCellDivider.js +0 -7
- package/src/node/markdown/tableDivider.js +0 -7
- package/src/node/markdown/tableHead.js +0 -7
- package/src/node/markdown/tableHeadCell.js +0 -29
- package/src/node/markdown/tableHeadRow.js +0 -7
- package/src/node/markdown/unorderedList.js +0 -7
- package/src/node/markdown/verticalSpace.js +0 -39
- package/src/nodeMap.js +0 -200
- package/src/replacement/contentsItem.js +0 -54
- package/src/replacement/footnotesItem.js +0 -24
- package/src/replacement/footnotesList.js +0 -78
- package/src/replacement/index.js +0 -89
- package/src/replacement/indexList.js +0 -32
- package/src/replacement/subDivision/contentsDirective.js +0 -20
- package/src/replacement/subDivision/embedDirectives.js +0 -52
- package/src/replacement/subDivision/footnotesDirective.js +0 -20
- package/src/replacement/subDivision/includeDirectives.js +0 -58
- package/src/replacement/subDivision/indexDirective.js +0 -20
- package/src/replacement/subDivision/pageNumberDirective.js +0 -20
- package/src/replacement/subDivision.js +0 -41
- package/src/replacement.js +0 -185
- package/src/ruleNameToClassMap.js +0 -38
- package/src/utilities/childNodes.js +0 -178
- package/src/utilities/processing.js +0 -122
- package/src/utilities/replacement.js +0 -169
|
@@ -1,9 +1,27 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
import withStyle from "easy-with-style"; ///
|
|
4
|
+
|
|
3
5
|
import ParseTreeTextarea from "../../textarea/parseTree";
|
|
4
6
|
|
|
5
|
-
|
|
7
|
+
class MarkdownParseTreeTextarea extends ParseTreeTextarea {
|
|
8
|
+
parentContext() {
|
|
9
|
+
const clearMarkdownParseTreeTextarea = this.clear.bind(this), ///
|
|
10
|
+
updateMarkdownParseTreeTextarea = this.update.bind(this); ///
|
|
11
|
+
|
|
12
|
+
return ({
|
|
13
|
+
clearMarkdownParseTreeTextarea,
|
|
14
|
+
updateMarkdownParseTreeTextarea
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
|
|
6
18
|
static defaultProperties = {
|
|
7
19
|
className: "markdown"
|
|
8
20
|
};
|
|
9
21
|
}
|
|
22
|
+
|
|
23
|
+
export default withStyle(MarkdownParseTreeTextarea)`
|
|
24
|
+
|
|
25
|
+
flex: 1;
|
|
26
|
+
|
|
27
|
+
`;
|
|
@@ -19,7 +19,15 @@ class PlainTextTextarea extends Textarea {
|
|
|
19
19
|
this.setPlainText(plainText);
|
|
20
20
|
}
|
|
21
21
|
|
|
22
|
-
update(
|
|
22
|
+
update(topmostHTMLNode, context) {
|
|
23
|
+
const whitespaceTokenIndex = -1;
|
|
24
|
+
|
|
25
|
+
Object.assign(context, {
|
|
26
|
+
whitespaceTokenIndex
|
|
27
|
+
});
|
|
28
|
+
|
|
29
|
+
const plainText = topmostHTMLNode.asPlainText(context);
|
|
30
|
+
|
|
23
31
|
this.setPlainText(plainText);
|
|
24
32
|
}
|
|
25
33
|
|
package/src/example/view/xmp.js
CHANGED
|
@@ -7,7 +7,15 @@ import { Element } from "easy";
|
|
|
7
7
|
import { EMPTY_STRING } from "../constants";
|
|
8
8
|
|
|
9
9
|
class XMP extends Element {
|
|
10
|
-
update(
|
|
10
|
+
update(topmostHTMLNode, context) {
|
|
11
|
+
const whitespaceTokenIndex = -1;
|
|
12
|
+
|
|
13
|
+
Object.assign(context, {
|
|
14
|
+
whitespaceTokenIndex
|
|
15
|
+
});
|
|
16
|
+
|
|
17
|
+
const html = topmostHTMLNode.asHTML(context);
|
|
18
|
+
|
|
11
19
|
this.html(html);
|
|
12
20
|
}
|
|
13
21
|
|
package/src/example/view.js
CHANGED
|
@@ -3,32 +3,23 @@
|
|
|
3
3
|
import withStyle from "easy-with-style"; ///
|
|
4
4
|
|
|
5
5
|
import { Element } from "easy";
|
|
6
|
-
import { nodeUtilities } from "occam-dom";
|
|
7
6
|
import { RowsDiv, ColumnDiv, ColumnsDiv, VerticalSplitterDiv } from "easy-layout";
|
|
8
7
|
import { MarkdownLexer, MarkdownParser, MarkdownStyleLexer, MarkdownStyleParser } from "../index";
|
|
9
8
|
|
|
10
|
-
import queries from "../queries";
|
|
11
|
-
import importer from "./importer";
|
|
12
|
-
import indexOptions from "./indexOptions";
|
|
13
9
|
import PageButtonsDiv from "./view/div/pageButtons";
|
|
14
10
|
import LeftSizeableDiv from "./view/div/sizeable/left";
|
|
15
11
|
import CSSContainerDiv from "./view/div/container/css";
|
|
12
|
+
import TopmostHTMLNode from "../node/html/topmost";
|
|
16
13
|
import HTMLContainerDiv from "./view/div/container/html";
|
|
17
14
|
import LeftTabButtonsDiv from "./view/div/tabButtons/left";
|
|
18
15
|
import RightTabButtonsDiv from "./view/div/tabButtons/right";
|
|
19
|
-
import ClassFromOuterNode from "../classFromOuterNode";
|
|
20
16
|
import PreviewContainerDiv from "./view/div/container/preview";
|
|
21
17
|
import MarkdownContainerDiv from "./view/div/container/markdown";
|
|
22
18
|
import PlainTextContainerDiv from "./view/div/container/plainText";
|
|
19
|
+
import HTMLParseTreeTextarea from "./view/textarea/parseTree/html";
|
|
23
20
|
import MarkdownStyleContainerDiv from "./view/div/container/markdownStyle";
|
|
24
|
-
import InnerMarkdownParseTreeTextarea from "./view/textarea/parseTree/markdown/inner";
|
|
25
21
|
|
|
26
|
-
import {
|
|
27
|
-
import { nodesFromNodeAndQueries } from "../utilities/query";
|
|
28
|
-
import { LINES_PER_PAGE, CONTENTS_DEPTH, CHARACTERS_PER_LINE } from "./constants";
|
|
29
|
-
import { postprocess, divisionMarkdownNodesFromMarkdownNodes } from "../utilities/processing";
|
|
30
|
-
|
|
31
|
-
const { topmostNodeFromOuterNodes } = nodeUtilities;
|
|
22
|
+
import { importer, initialMarkdown } from "./importer";
|
|
32
23
|
|
|
33
24
|
const markdownLexer = MarkdownLexer.fromNothing(),
|
|
34
25
|
markdownParser = MarkdownParser.fromNothing(),
|
|
@@ -71,44 +62,40 @@ class View extends Element {
|
|
|
71
62
|
}
|
|
72
63
|
|
|
73
64
|
update() {
|
|
74
|
-
this.updateMarkdown();
|
|
75
65
|
this.updateMarkdownStyle();
|
|
66
|
+
this.updateMarkdown();
|
|
67
|
+
this.updatePage();
|
|
76
68
|
}
|
|
77
69
|
|
|
78
70
|
clearPage() {
|
|
79
71
|
this.clearXMP();
|
|
80
|
-
|
|
81
72
|
this.clearPreviewDiv();
|
|
82
|
-
|
|
83
|
-
this.clearInnerMarkdownParseTreeTextarea();
|
|
73
|
+
this.clearHTMLParseTreeTextarea();
|
|
84
74
|
}
|
|
85
75
|
|
|
86
|
-
updatePage(index) {
|
|
87
|
-
const
|
|
88
|
-
|
|
89
|
-
|
|
76
|
+
updatePage(index = 0) {
|
|
77
|
+
const tokens = this.getTokens(),
|
|
78
|
+
topmostMarkdownNode = this.getTopmostMarkdownNode(),
|
|
79
|
+
divisionMarkdownNode = topmostMarkdownNode.getDivisionMarkdownNodeAt(index),
|
|
80
|
+
topmostHTMLNode = TopmostHTMLNode.fromDivisionMarkdownNode(divisionMarkdownNode),
|
|
90
81
|
context = {
|
|
91
|
-
tokens
|
|
92
|
-
|
|
93
|
-
|
|
82
|
+
tokens,
|
|
83
|
+
pathToURL
|
|
84
|
+
};
|
|
94
85
|
|
|
95
|
-
|
|
96
|
-
nodes = nodesFromNodeAndQueries(node, queries),
|
|
97
|
-
topmostHTMLNode = topmostNodeFromOuterNodes(ClassFromOuterNode, nodes),
|
|
98
|
-
parseTree = topmostHTMLNode.asParseTree(),
|
|
99
|
-
html = topmostHTMLNode.asHTML(context),
|
|
100
|
-
plainText = divisionMarkdownNode.asPlainText(context),
|
|
101
|
-
innerMarkdownParseTree = parseTree; ///
|
|
86
|
+
this.updateXMP(topmostHTMLNode, context);
|
|
102
87
|
|
|
103
|
-
this.
|
|
88
|
+
this.updatePreviewDiv(topmostHTMLNode, context);
|
|
104
89
|
|
|
105
|
-
this.
|
|
90
|
+
this.updatePlainTextTextarea(topmostHTMLNode, context);
|
|
106
91
|
|
|
107
|
-
|
|
92
|
+
const length = null,
|
|
93
|
+
parseTree = topmostHTMLNode.asParseTree(),
|
|
94
|
+
htmlParseTree = parseTree; ///
|
|
108
95
|
|
|
109
|
-
this.
|
|
96
|
+
this.updatePageButtonsDiv(length, index);
|
|
110
97
|
|
|
111
|
-
this.
|
|
98
|
+
this.updateHTMLParseTreeTextarea(htmlParseTree);
|
|
112
99
|
}
|
|
113
100
|
|
|
114
101
|
updateMarkdown() {
|
|
@@ -116,58 +103,41 @@ class View extends Element {
|
|
|
116
103
|
lexer = markdownLexer, ///
|
|
117
104
|
parser = markdownParser, ///
|
|
118
105
|
content = markdown, ///
|
|
119
|
-
startRule = parser.getStartRule(),
|
|
120
106
|
tokens = lexer.tokenise(content),
|
|
121
|
-
node = parser.parse(tokens
|
|
107
|
+
node = parser.parse(tokens);
|
|
122
108
|
|
|
123
|
-
|
|
109
|
+
if (node === null) {
|
|
110
|
+
this.resetTokens();
|
|
124
111
|
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
contentsDepth = CONTENTS_DEPTH,
|
|
129
|
-
linesPerPage = LINES_PER_PAGE,
|
|
130
|
-
context = {
|
|
131
|
-
tokens,
|
|
132
|
-
importer,
|
|
133
|
-
indexOptions,
|
|
134
|
-
linesPerPage,
|
|
135
|
-
contentsDepth,
|
|
136
|
-
nodeFromTokens,
|
|
137
|
-
tokensFromContent,
|
|
138
|
-
charactersPerLine
|
|
139
|
-
},
|
|
140
|
-
markdownNodes = postprocess(divisionMarkdownNode, context),
|
|
141
|
-
divisionMarkdownNodes = divisionMarkdownNodesFromMarkdownNodes(markdownNodes);
|
|
142
|
-
|
|
143
|
-
this.setDivisionMarkdownNodes(divisionMarkdownNodes);
|
|
144
|
-
|
|
145
|
-
const parseTree = divisionMarkdownNode.asParseTree(tokens),
|
|
146
|
-
outerMarkdownParseTree = parseTree; ///
|
|
147
|
-
|
|
148
|
-
this.updateOuterMarkdownParseTreeTextarea(outerMarkdownParseTree);
|
|
149
|
-
|
|
150
|
-
const index = 0,
|
|
151
|
-
length = divisionMarkdownNodes.length;
|
|
152
|
-
|
|
153
|
-
if (length > 0) {
|
|
154
|
-
this.updatePage(index);
|
|
155
|
-
|
|
156
|
-
this.updatePageButtonsDiv(length);
|
|
157
|
-
}
|
|
158
|
-
} else {
|
|
159
|
-
this.clearPage();
|
|
112
|
+
this.resetTopmostMarkdownNode();
|
|
113
|
+
|
|
114
|
+
this.clearMarkdownParseTreeTextarea();
|
|
160
115
|
|
|
161
116
|
this.clearPageButtonsDiv();
|
|
162
117
|
|
|
163
|
-
this.
|
|
118
|
+
this.clearPage();
|
|
119
|
+
|
|
120
|
+
return;
|
|
121
|
+
}
|
|
164
122
|
|
|
165
|
-
|
|
123
|
+
const topmostMarkdownNode = node, ///
|
|
124
|
+
context = {
|
|
125
|
+
tokens,
|
|
126
|
+
importer,
|
|
127
|
+
nodeFromTokens,
|
|
128
|
+
tokensFromContent
|
|
129
|
+
};
|
|
166
130
|
|
|
167
|
-
|
|
131
|
+
topmostMarkdownNode.resolve(context);
|
|
168
132
|
|
|
169
|
-
|
|
170
|
-
|
|
133
|
+
const parseTree = topmostMarkdownNode.asParseTree(tokens),
|
|
134
|
+
markdownParseTree = parseTree; ///
|
|
135
|
+
|
|
136
|
+
this.setTokens(tokens);
|
|
137
|
+
|
|
138
|
+
this.setTopmostMarkdownNode(topmostMarkdownNode);
|
|
139
|
+
|
|
140
|
+
this.updateMarkdownParseTreeTextarea(markdownParseTree);
|
|
171
141
|
}
|
|
172
142
|
|
|
173
143
|
updateMarkdownStyle() {
|
|
@@ -231,16 +201,28 @@ class View extends Element {
|
|
|
231
201
|
this.hidePlainTextContainerDiv();
|
|
232
202
|
}
|
|
233
203
|
|
|
204
|
+
resetTokens() {
|
|
205
|
+
const tokens = null;
|
|
206
|
+
|
|
207
|
+
this.setTokens(tokens);
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
resetTopmostMarkdownNode() {
|
|
211
|
+
const topmostMarkdownNode = null;
|
|
212
|
+
|
|
213
|
+
this.setTopmostMarkdownNode(topmostMarkdownNode);
|
|
214
|
+
}
|
|
215
|
+
|
|
234
216
|
getTokens() {
|
|
235
217
|
const { tokens } = this.getState();
|
|
236
218
|
|
|
237
219
|
return tokens;
|
|
238
220
|
}
|
|
239
221
|
|
|
240
|
-
|
|
241
|
-
const {
|
|
222
|
+
getTopmostMarkdownNode() {
|
|
223
|
+
const { topmostMarkdownNode } = this.getState();
|
|
242
224
|
|
|
243
|
-
return
|
|
225
|
+
return topmostMarkdownNode;
|
|
244
226
|
}
|
|
245
227
|
|
|
246
228
|
setTokens(tokens) {
|
|
@@ -249,19 +231,19 @@ class View extends Element {
|
|
|
249
231
|
});
|
|
250
232
|
}
|
|
251
233
|
|
|
252
|
-
|
|
234
|
+
setTopmostMarkdownNode(topmostMarkdownNode) {
|
|
253
235
|
this.updateState({
|
|
254
|
-
|
|
236
|
+
topmostMarkdownNode
|
|
255
237
|
});
|
|
256
238
|
}
|
|
257
239
|
|
|
258
240
|
setInitialState() {
|
|
259
241
|
const tokens = null,
|
|
260
|
-
|
|
242
|
+
topmostMarkdownNode = null;
|
|
261
243
|
|
|
262
244
|
this.setState({
|
|
263
245
|
tokens,
|
|
264
|
-
|
|
246
|
+
topmostMarkdownNode
|
|
265
247
|
});
|
|
266
248
|
}
|
|
267
249
|
|
|
@@ -287,7 +269,7 @@ class View extends Element {
|
|
|
287
269
|
<HTMLContainerDiv/>
|
|
288
270
|
<PreviewContainerDiv/>
|
|
289
271
|
<PlainTextContainerDiv/>
|
|
290
|
-
<
|
|
272
|
+
<HTMLParseTreeTextarea/>
|
|
291
273
|
</RowsDiv>
|
|
292
274
|
</ColumnDiv>
|
|
293
275
|
</ColumnsDiv>
|
|
@@ -313,13 +295,18 @@ class View extends Element {
|
|
|
313
295
|
this.css();
|
|
314
296
|
}
|
|
315
297
|
|
|
316
|
-
static initialMarkdown =
|
|
298
|
+
static initialMarkdown = initialMarkdown;
|
|
317
299
|
|
|
318
300
|
static initialMarkdownStyle = `width: 100%;
|
|
319
|
-
height:
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
301
|
+
height: 100%;
|
|
302
|
+
font-size: 2rem;
|
|
303
|
+
|
|
304
|
+
blockListing {
|
|
305
|
+
colour: white;
|
|
306
|
+
text-align: left;
|
|
307
|
+
font-family: monospace;
|
|
308
|
+
background-colour: black;
|
|
309
|
+
}
|
|
323
310
|
`;
|
|
324
311
|
|
|
325
312
|
static tagName = "div";
|
|
@@ -354,3 +341,9 @@ function nodeFromTokens(tokens, startRuleName = null) {
|
|
|
354
341
|
|
|
355
342
|
return node;
|
|
356
343
|
}
|
|
344
|
+
|
|
345
|
+
function pathToURL(path) {
|
|
346
|
+
const url = `https://static.djalbat.com/${path}`;
|
|
347
|
+
|
|
348
|
+
return url;
|
|
349
|
+
}
|
package/src/index/match.js
CHANGED
|
@@ -3,9 +3,9 @@
|
|
|
3
3
|
import { UNDERSCORE, GLOBAL_FLAG, SINGLE_SPACE } from "../constants";
|
|
4
4
|
|
|
5
5
|
export default class IndexMatch {
|
|
6
|
-
constructor(regularExpression,
|
|
6
|
+
constructor(regularExpression, transform) {
|
|
7
7
|
this.regularExpression = regularExpression;
|
|
8
|
-
this.
|
|
8
|
+
this.transform = transform;
|
|
9
9
|
}
|
|
10
10
|
|
|
11
11
|
getRegularExpression() {
|
|
@@ -13,11 +13,11 @@ export default class IndexMatch {
|
|
|
13
13
|
}
|
|
14
14
|
|
|
15
15
|
getReplacement() {
|
|
16
|
-
return this.
|
|
16
|
+
return this.transform;
|
|
17
17
|
}
|
|
18
18
|
|
|
19
19
|
replace(plainText) {
|
|
20
|
-
plainText = plainText.replace(this.regularExpression, this.
|
|
20
|
+
plainText = plainText.replace(this.regularExpression, this.transform); ///
|
|
21
21
|
|
|
22
22
|
return plainText;
|
|
23
23
|
}
|
|
@@ -30,8 +30,8 @@ export default class IndexMatch {
|
|
|
30
30
|
|
|
31
31
|
static fromPhrase(phrase) {
|
|
32
32
|
const regularExpression = new RegExp(phrase, GLOBAL_FLAG),
|
|
33
|
-
|
|
34
|
-
indexMatch = new IndexMatch(regularExpression,
|
|
33
|
+
transform = phrase.replace(/\s/g, UNDERSCORE),
|
|
34
|
+
indexMatch = new IndexMatch(regularExpression, transform);
|
|
35
35
|
|
|
36
36
|
return indexMatch;
|
|
37
37
|
}
|
package/src/index.js
CHANGED
|
@@ -6,15 +6,18 @@ export { default as MarkdownStyleLexer } from "./markdownStyle/lexer";
|
|
|
6
6
|
export { default as MarkdownStyleParser } from "./markdownStyle/parser";
|
|
7
7
|
|
|
8
8
|
export { default as cssUtilities } from "./utilities/css";
|
|
9
|
+
export { default as htmlUtilities } from "./utilities/html";
|
|
9
10
|
export { default as queryUtilities } from "./utilities/query";
|
|
11
|
+
export { default as markdownUtilities } from "./utilities/markdown";
|
|
10
12
|
export { default as footnotesUtilities } from "./utilities/footnotes";
|
|
11
|
-
export { default as processingUtilities } from "./utilities/processing";
|
|
12
13
|
|
|
13
|
-
export { default as nodeMap } from "./nodeMap";
|
|
14
14
|
export { default as ruleNames } from "./ruleNames";
|
|
15
15
|
export { default as tokenTypes } from "./tokenTypes";
|
|
16
|
-
export { default as
|
|
16
|
+
export { default as tagNameMap } from "./map/tagName";
|
|
17
|
+
export { default as htmlNodeMap } from "./map/node/html";
|
|
18
|
+
export { default as classNameMap } from "./map/className";
|
|
17
19
|
export { default as MarkdownNode } from "./node/markdown";
|
|
20
|
+
export { default as markdownNodeMap } from "./map/node/markdown";
|
|
18
21
|
export { default as MarkdownStyleElement } from "./styleElement/markdown";
|
|
19
22
|
export { default as defaultMarkdownStyle } from "./defaultMarkdownStyle";
|
|
20
23
|
export { default as DefaultMarkdownStyleElement } from "./styleElement/markdown/default";
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import htmlNodeMap from "../map/node/html";
|
|
4
|
+
|
|
5
|
+
import { ruleNames } from "../map/node/html";
|
|
6
|
+
|
|
7
|
+
const classNameMap = {};
|
|
8
|
+
|
|
9
|
+
ruleNames.forEach((ruleName) => {
|
|
10
|
+
const Class = htmlNodeMap[ruleName],
|
|
11
|
+
{ className } = Class;
|
|
12
|
+
|
|
13
|
+
classNameMap[ruleName] = className;
|
|
14
|
+
});
|
|
15
|
+
|
|
16
|
+
export default classNameMap;
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import LineHTMLNode from "../../node/html/line";
|
|
4
|
+
import ErrorHTMLNode from "../../node/html/error";
|
|
5
|
+
import ImageHTMLNode from "../../node/html/image";
|
|
6
|
+
import TableHTMLNode from "../../node/html/table";
|
|
7
|
+
import AnchorHTMLNode from "../../node/html/anchor";
|
|
8
|
+
import DivisionHTMLNode from "../../node/html/division";
|
|
9
|
+
import ParagraphHTMLNode from "../../node/html/paragraph";
|
|
10
|
+
import TableHeadHTMLNode from "../../node/html/tableHead";
|
|
11
|
+
import TableBodyHTMLNode from "../../node/html/tableBody";
|
|
12
|
+
import HyperlinkHTMLNode from "../../node/html/link/hyper";
|
|
13
|
+
import IndexItemHTMLNode from "../../node/html/item";
|
|
14
|
+
import IndexLinkHTMLNode from "../../node/html/link";
|
|
15
|
+
import IndexListHTMLNode from "../../node/html/indexList";
|
|
16
|
+
import EmailLinkHTMLNode from "../../node/html/link/email";
|
|
17
|
+
import BlockLineHTMLNode from "../../node/html/blockLine";
|
|
18
|
+
import PlainTextHTMLNode from "../../node/html/text/plain";
|
|
19
|
+
import BlockTextHTMLNode from "../../node/html/text/block";
|
|
20
|
+
import StrongTextHTMLNode from "../../node/html/text/strong";
|
|
21
|
+
import InlineTextHTMLNode from "../../node/html/text/inline";
|
|
22
|
+
import OrderedItemHTMLNode from "../../node/html/item/ordered";
|
|
23
|
+
import OrderedListHTMLNode from "../../node/html/list/ordered";
|
|
24
|
+
import ContentsItemHTMLNode from "../../node/html/item/contents";
|
|
25
|
+
import ContentsListHTMLNode from "../../node/html/list/contents";
|
|
26
|
+
import ContentsLinkHTMLNode from "../../node/html/link/contents";
|
|
27
|
+
import BlockListingHTMLNode from "../../node/html/listing/block";
|
|
28
|
+
import IndexHeadingHTMLNode from "../../node/html/heading";
|
|
29
|
+
import FootnoteLinkHTMLNode from "../../node/html/link/footnote";
|
|
30
|
+
import TableHeadRowHTMLNode from "../../node/html/tableHeadRow";
|
|
31
|
+
import TableBodyRowHTMLNode from "../../node/html/tableBodyRow";
|
|
32
|
+
import InlineListingHTMLNode from "../../node/html/listing/inline";
|
|
33
|
+
import FootnotesItemHTMLNode from "../../node/html/item/footnotes";
|
|
34
|
+
import FootnotesListHTMLNode from "../../node/html/list/footnotes";
|
|
35
|
+
import TableHeadCellHTMLNode from "../../node/html/tableHeadCell";
|
|
36
|
+
import TableBodyCellHTMLNode from "../../node/html/tableBodyCell";
|
|
37
|
+
import UnorderedItemHTMLNode from "../../node/html/item/unordered";
|
|
38
|
+
import UnorderedListHTMLNode from "../../node/html/list/unordered";
|
|
39
|
+
import PrimaryHeadingHTMLNode from "../../node/html/heading/primary";
|
|
40
|
+
import EmphasisedTextHTMLNode from "../../node/html/text/emphasised";
|
|
41
|
+
import TertiaryHeadingHTMLNode from "../../node/html/heading/tertiary";
|
|
42
|
+
import SecondaryHeadingHTMLNode from "../../node/html/heading/secondary";
|
|
43
|
+
import QuaternaryHeadingHTMLNode from "../../node/html/heading/quaternary";
|
|
44
|
+
import StronglyEmphasisedTextHTMLNode from "../../node/html/text/stronglyEmphasised";
|
|
45
|
+
|
|
46
|
+
import { LINE_RULE_NAME,
|
|
47
|
+
ERROR_RULE_NAME,
|
|
48
|
+
IMAGE_RULE_NAME,
|
|
49
|
+
TABLE_RULE_NAME,
|
|
50
|
+
ANCHOR_RULE_NAME,
|
|
51
|
+
DIVISION_RULE_NAME,
|
|
52
|
+
PARAGRAPH_RULE_NAME,
|
|
53
|
+
HYPERLINK_RULE_NAME,
|
|
54
|
+
TABLE_HEAD_RULE_NAME,
|
|
55
|
+
TABLE_BODY_RULE_NAME,
|
|
56
|
+
INDEX_ITEM_RULE_NAME,
|
|
57
|
+
INDEX_LINK_RULE_NAME,
|
|
58
|
+
INDEX_LIST_RULE_NAME,
|
|
59
|
+
EMAIL_LINK_RULE_NAME,
|
|
60
|
+
BLOCK_LINE_RULE_NAME,
|
|
61
|
+
PLAIN_TEXT_RULE_NAME,
|
|
62
|
+
BLOCK_TEXT_RULE_NAME,
|
|
63
|
+
STRONG_TEXT_RULE_NAME,
|
|
64
|
+
INLINE_TEXT_RULE_NAME,
|
|
65
|
+
ORDERED_ITEM_RULE_NAME,
|
|
66
|
+
ORDERED_LIST_RULE_NAME,
|
|
67
|
+
CONTENTS_ITEM_RULE_NAME,
|
|
68
|
+
CONTENTS_LIST_RULE_NAME,
|
|
69
|
+
CONTENTS_LINK_RULE_NAME,
|
|
70
|
+
INDEX_HEADING_RULE_NAME,
|
|
71
|
+
BLOCK_LISTING_RULE_NAME,
|
|
72
|
+
FOOTNOTE_LINK_RULE_NAME,
|
|
73
|
+
TABLE_HEAD_ROW_RULE_NAME,
|
|
74
|
+
TABLE_BODY_ROW_RULE_NAME,
|
|
75
|
+
INLINE_LISTING_RULE_NAME,
|
|
76
|
+
FOOTNOTES_ITEM_RULE_NAME,
|
|
77
|
+
FOOTNOTES_LIST_RULE_NAME,
|
|
78
|
+
UNORDERED_ITEM_RULE_NAME,
|
|
79
|
+
UNORDERED_LIST_RULE_NAME,
|
|
80
|
+
TABLE_HEAD_CELL_RULE_NAME,
|
|
81
|
+
TABLE_BODY_CELL_RULE_NAME,
|
|
82
|
+
EMPHASISED_TEXT_RULE_NAME,
|
|
83
|
+
PRIMARY_HEADING_RULE_NAME,
|
|
84
|
+
TERTIARY_HEADING_RULE_NAME,
|
|
85
|
+
SECONDARY_HEADING_RULE_NAME,
|
|
86
|
+
QUATERNARY_HEADING_RULE_NAME,
|
|
87
|
+
STRONGLY_EMPHASISED_TEXT_RULE_NAME } from "../../ruleNames";
|
|
88
|
+
|
|
89
|
+
const htmlNodeMap = {
|
|
90
|
+
[LINE_RULE_NAME]: LineHTMLNode,
|
|
91
|
+
[ERROR_RULE_NAME]: ErrorHTMLNode,
|
|
92
|
+
[IMAGE_RULE_NAME]: ImageHTMLNode,
|
|
93
|
+
[TABLE_RULE_NAME]: TableHTMLNode,
|
|
94
|
+
[ANCHOR_RULE_NAME]: AnchorHTMLNode,
|
|
95
|
+
[DIVISION_RULE_NAME]: DivisionHTMLNode,
|
|
96
|
+
[PARAGRAPH_RULE_NAME]: ParagraphHTMLNode,
|
|
97
|
+
[HYPERLINK_RULE_NAME]: HyperlinkHTMLNode,
|
|
98
|
+
[TABLE_HEAD_RULE_NAME]: TableHeadHTMLNode,
|
|
99
|
+
[TABLE_BODY_RULE_NAME]: TableBodyHTMLNode,
|
|
100
|
+
[INDEX_ITEM_RULE_NAME]: IndexItemHTMLNode,
|
|
101
|
+
[INDEX_LINK_RULE_NAME]: IndexLinkHTMLNode,
|
|
102
|
+
[INDEX_LIST_RULE_NAME]: IndexListHTMLNode,
|
|
103
|
+
[EMAIL_LINK_RULE_NAME]: EmailLinkHTMLNode,
|
|
104
|
+
[BLOCK_LINE_RULE_NAME]: BlockLineHTMLNode,
|
|
105
|
+
[PLAIN_TEXT_RULE_NAME]: PlainTextHTMLNode,
|
|
106
|
+
[BLOCK_TEXT_RULE_NAME]: BlockTextHTMLNode,
|
|
107
|
+
[STRONG_TEXT_RULE_NAME]: StrongTextHTMLNode,
|
|
108
|
+
[INLINE_TEXT_RULE_NAME]: InlineTextHTMLNode,
|
|
109
|
+
[ORDERED_ITEM_RULE_NAME]: OrderedItemHTMLNode,
|
|
110
|
+
[ORDERED_LIST_RULE_NAME]: OrderedListHTMLNode,
|
|
111
|
+
[CONTENTS_ITEM_RULE_NAME]: ContentsItemHTMLNode,
|
|
112
|
+
[CONTENTS_LIST_RULE_NAME]: ContentsListHTMLNode,
|
|
113
|
+
[CONTENTS_LINK_RULE_NAME]: ContentsLinkHTMLNode,
|
|
114
|
+
[INDEX_HEADING_RULE_NAME]: IndexHeadingHTMLNode,
|
|
115
|
+
[BLOCK_LISTING_RULE_NAME]: BlockListingHTMLNode,
|
|
116
|
+
[FOOTNOTE_LINK_RULE_NAME]: FootnoteLinkHTMLNode,
|
|
117
|
+
[TABLE_HEAD_ROW_RULE_NAME]: TableHeadRowHTMLNode,
|
|
118
|
+
[TABLE_BODY_ROW_RULE_NAME]: TableBodyRowHTMLNode,
|
|
119
|
+
[INLINE_LISTING_RULE_NAME]: InlineListingHTMLNode,
|
|
120
|
+
[FOOTNOTES_ITEM_RULE_NAME]: FootnotesItemHTMLNode,
|
|
121
|
+
[FOOTNOTES_LIST_RULE_NAME]: FootnotesListHTMLNode,
|
|
122
|
+
[UNORDERED_ITEM_RULE_NAME]: UnorderedItemHTMLNode,
|
|
123
|
+
[UNORDERED_LIST_RULE_NAME]: UnorderedListHTMLNode,
|
|
124
|
+
[TABLE_HEAD_CELL_RULE_NAME]: TableHeadCellHTMLNode,
|
|
125
|
+
[TABLE_BODY_CELL_RULE_NAME]: TableBodyCellHTMLNode,
|
|
126
|
+
[EMPHASISED_TEXT_RULE_NAME]: EmphasisedTextHTMLNode,
|
|
127
|
+
[PRIMARY_HEADING_RULE_NAME]: PrimaryHeadingHTMLNode,
|
|
128
|
+
[TERTIARY_HEADING_RULE_NAME]: TertiaryHeadingHTMLNode,
|
|
129
|
+
[SECONDARY_HEADING_RULE_NAME]: SecondaryHeadingHTMLNode,
|
|
130
|
+
[QUATERNARY_HEADING_RULE_NAME]: QuaternaryHeadingHTMLNode,
|
|
131
|
+
[STRONGLY_EMPHASISED_TEXT_RULE_NAME]: StronglyEmphasisedTextHTMLNode
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
export const ruleNames = Object.keys(htmlNodeMap);
|
|
135
|
+
|
|
136
|
+
export default htmlNodeMap;
|