highmark-markdown 0.0.31 → 0.0.33
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 +0 -1
- package/example.js +79 -72
- package/lib/markdown/bnf.js +2 -2
- package/lib/node/markdown/anchor.js +2 -2
- package/lib/node/markdown/blockListing.js +5 -5
- package/lib/node/markdown/blockListingStart.js +4 -4
- package/lib/node/markdown/className.js +3 -3
- package/lib/node/markdown/{document.js → division.js} +24 -16
- package/lib/node/markdown/footnotesList.js +6 -6
- package/lib/node/markdown/hyperlink.js +2 -2
- package/lib/node/markdown/image.js +2 -2
- package/lib/node/markdown/link.js +2 -2
- package/lib/node/markdown/orderedList.js +2 -2
- package/lib/node/markdown.js +12 -12
- package/lib/nodeMap.js +3 -3
- package/lib/ruleNameToHTMLMap.js +3 -4
- package/lib/ruleNames.js +5 -5
- package/lib/utilities/link.js +5 -5
- package/package.json +1 -1
- package/src/markdown/bnf.js +1 -1
- package/src/node/markdown/anchor.js +1 -1
- package/src/node/markdown/blockListing.js +3 -3
- package/src/node/markdown/blockListingStart.js +2 -2
- package/src/node/markdown/className.js +1 -1
- package/src/node/markdown/{document.js → division.js} +16 -8
- package/src/node/markdown/footnotesList.js +4 -4
- package/src/node/markdown/hyperlink.js +1 -1
- package/src/node/markdown/image.js +1 -1
- package/src/node/markdown/link.js +1 -1
- package/src/node/markdown/orderedList.js +1 -1
- package/src/node/markdown.js +14 -14
- package/src/nodeMap.js +3 -3
- package/src/ruleNameToHTMLMap.js +4 -5
- package/src/ruleNames.js +2 -2
- package/src/utilities/link.js +4 -4
|
@@ -20,10 +20,10 @@ export default class FootnotesListMarkdownNode extends MarkdownNode {
|
|
|
20
20
|
return identifiers;
|
|
21
21
|
}
|
|
22
22
|
|
|
23
|
-
static
|
|
23
|
+
static fromDivisionMarkdownNode(divisionMarkdownNode, context) {
|
|
24
24
|
let footnotesListMarkdownNode = null;
|
|
25
25
|
|
|
26
|
-
const footnoteItemMarkdownNodes =
|
|
26
|
+
const footnoteItemMarkdownNodes = footnoteItemMarkdownNodesFromDivisionMarkdownNode(divisionMarkdownNode, context),
|
|
27
27
|
footnoteItemMarkdownNodesLength = footnoteItemMarkdownNodes.length;
|
|
28
28
|
|
|
29
29
|
if (footnoteItemMarkdownNodesLength > 0) {
|
|
@@ -38,9 +38,9 @@ export default class FootnotesListMarkdownNode extends MarkdownNode {
|
|
|
38
38
|
}
|
|
39
39
|
}
|
|
40
40
|
|
|
41
|
-
function
|
|
41
|
+
function footnoteItemMarkdownNodesFromDivisionMarkdownNode(divisionMarkdownNode, context) {
|
|
42
42
|
const footnoteItemMarkdownNodes = [],
|
|
43
|
-
node =
|
|
43
|
+
node = divisionMarkdownNode, ///
|
|
44
44
|
linkMarkdownNodes = linkMarkdownNodesFromNode(node),
|
|
45
45
|
footnoteMarkdownNodes = footnoteMarkdownNodesFromNode(node),
|
|
46
46
|
identifiers = footnoteMarkdownNodes.map((footnoteMarkdownNode) => {
|
|
@@ -9,7 +9,7 @@ import { START_ATTRIBUTE_NAME } from "../../attributeNames";
|
|
|
9
9
|
const { first } = arrayUtilities;
|
|
10
10
|
|
|
11
11
|
export default class OrderedListMarkdownNode extends MarkdownNode {
|
|
12
|
-
attributeName() {
|
|
12
|
+
attributeName(context) {
|
|
13
13
|
const attributeName = START_ATTRIBUTE_NAME;
|
|
14
14
|
|
|
15
15
|
return attributeName;
|
package/src/node/markdown.js
CHANGED
|
@@ -24,19 +24,19 @@ class MarkdownNode extends NonTerminalNode {
|
|
|
24
24
|
this.domElement = domElement;
|
|
25
25
|
}
|
|
26
26
|
|
|
27
|
-
|
|
27
|
+
tagName(context) {
|
|
28
28
|
const { tagName } = ruleNameToHTMLMap[this.ruleName];
|
|
29
29
|
|
|
30
30
|
return tagName;
|
|
31
31
|
}
|
|
32
32
|
|
|
33
|
-
|
|
33
|
+
className(context) {
|
|
34
34
|
const { className } = ruleNameToHTMLMap[this.ruleName];
|
|
35
35
|
|
|
36
36
|
return className;
|
|
37
37
|
}
|
|
38
38
|
|
|
39
|
-
attributeName() {
|
|
39
|
+
attributeName(context) {
|
|
40
40
|
const attributeName = null;
|
|
41
41
|
|
|
42
42
|
return attributeName;
|
|
@@ -55,7 +55,7 @@ class MarkdownNode extends NonTerminalNode {
|
|
|
55
55
|
indent = EMPTY_STRING;
|
|
56
56
|
}
|
|
57
57
|
|
|
58
|
-
const tagName = this.
|
|
58
|
+
const tagName = this.tagName(context);
|
|
59
59
|
|
|
60
60
|
let html = null;
|
|
61
61
|
|
|
@@ -88,16 +88,16 @@ ${indent}${closingTag}
|
|
|
88
88
|
}
|
|
89
89
|
|
|
90
90
|
closingTag(context) {
|
|
91
|
-
const tagName = this.
|
|
91
|
+
const tagName = this.tagName(context),
|
|
92
92
|
closingTag = `<\\${tagName}>`;
|
|
93
93
|
|
|
94
94
|
return closingTag;
|
|
95
95
|
}
|
|
96
96
|
|
|
97
97
|
startingTag(context) {
|
|
98
|
-
const tagName = this.
|
|
99
|
-
className = this.
|
|
100
|
-
attributeName = this.attributeName();
|
|
98
|
+
const tagName = this.tagName(context),
|
|
99
|
+
className = this.className(context),
|
|
100
|
+
attributeName = this.attributeName(context);
|
|
101
101
|
|
|
102
102
|
let classHTML = EMPTY_STRING,
|
|
103
103
|
attributeHTML = EMPTY_STRING;
|
|
@@ -118,9 +118,9 @@ ${indent}${closingTag}
|
|
|
118
118
|
}
|
|
119
119
|
|
|
120
120
|
selfClosingTag(context) {
|
|
121
|
-
const tagName = this.
|
|
122
|
-
className = this.
|
|
123
|
-
attributeName = this.attributeName();
|
|
121
|
+
const tagName = this.tagName(context),
|
|
122
|
+
className = this.className(context),
|
|
123
|
+
attributeName = this.attributeName(context);
|
|
124
124
|
|
|
125
125
|
let classHTML = EMPTY_STRING,
|
|
126
126
|
attributeHTML = EMPTY_STRING;
|
|
@@ -172,15 +172,15 @@ ${indent}${closingTag}
|
|
|
172
172
|
createDOMElement(context) {
|
|
173
173
|
let domElement = null;
|
|
174
174
|
|
|
175
|
-
const tagName = this.
|
|
175
|
+
const tagName = this.tagName(context);
|
|
176
176
|
|
|
177
177
|
if (tagName !== null) {
|
|
178
178
|
domElement = document.createElement(tagName);
|
|
179
179
|
|
|
180
180
|
this.setDOMElement(domElement);
|
|
181
181
|
|
|
182
|
-
const className = this.
|
|
183
|
-
attributeName = this.attributeName();
|
|
182
|
+
const className = this.className(context),
|
|
183
|
+
attributeName = this.attributeName(context);
|
|
184
184
|
|
|
185
185
|
if (className !== null) {
|
|
186
186
|
Object.assign(domElement, {
|
package/src/nodeMap.js
CHANGED
|
@@ -8,7 +8,7 @@ import ImageMarkdownNode from "./node/markdown/image";
|
|
|
8
8
|
import TableMarkdownNode from "./node/markdown/table";
|
|
9
9
|
import ErrorMarkdownNode from "./node/markdown/error";
|
|
10
10
|
import AnchorMarkdownNode from "./node/markdown/anchor";
|
|
11
|
-
import
|
|
11
|
+
import DivisionMarkdownNode from "./node/markdown/division";
|
|
12
12
|
import FootnoteMarkdownNode from "./node/markdown/footnote";
|
|
13
13
|
import ReferenceMarkdownNode from "./node/markdown/reference";
|
|
14
14
|
import ParagraphMarkdownNode from "./node/markdown/paragraph";
|
|
@@ -54,8 +54,8 @@ import { URL_RULE_NAME,
|
|
|
54
54
|
TABLE_RULE_NAME,
|
|
55
55
|
ERROR_RULE_NAME,
|
|
56
56
|
ANCHOR_RULE_NAME,
|
|
57
|
-
DOCUMENT_RULE_NAME,
|
|
58
57
|
FOOTNOTE_RULE_NAME,
|
|
58
|
+
DIVISION_RULE_NAME,
|
|
59
59
|
REFERENCE_RULE_NAME,
|
|
60
60
|
PARAGRAPH_RULE_NAME,
|
|
61
61
|
HYPERLINK_RULE_NAME,
|
|
@@ -101,8 +101,8 @@ const nodeMap = {
|
|
|
101
101
|
[TABLE_RULE_NAME]: TableMarkdownNode,
|
|
102
102
|
[ERROR_RULE_NAME]: ErrorMarkdownNode,
|
|
103
103
|
[ANCHOR_RULE_NAME]: AnchorMarkdownNode,
|
|
104
|
-
[DOCUMENT_RULE_NAME]: DocumentMarkdownNode,
|
|
105
104
|
[FOOTNOTE_RULE_NAME]: FootnoteMarkdownNode,
|
|
105
|
+
[DIVISION_RULE_NAME]: DivisionMarkdownNode,
|
|
106
106
|
[REFERENCE_RULE_NAME]: ReferenceMarkdownNode,
|
|
107
107
|
[PARAGRAPH_RULE_NAME]: ParagraphMarkdownNode,
|
|
108
108
|
[HYPERLINK_RULE_NAME]: HyperlinkMarkdownNode,
|
package/src/ruleNameToHTMLMap.js
CHANGED
|
@@ -8,8 +8,8 @@ import { URL_RULE_NAME,
|
|
|
8
8
|
TABLE_RULE_NAME,
|
|
9
9
|
ERROR_RULE_NAME,
|
|
10
10
|
ANCHOR_RULE_NAME,
|
|
11
|
-
DOCUMENT_RULE_NAME,
|
|
12
11
|
FOOTNOTE_RULE_NAME,
|
|
12
|
+
DIVISION_RULE_NAME,
|
|
13
13
|
REFERENCE_RULE_NAME,
|
|
14
14
|
PARAGRAPH_RULE_NAME,
|
|
15
15
|
HYPERLINK_RULE_NAME,
|
|
@@ -78,14 +78,13 @@ const ruleNameToHTMLMap = {
|
|
|
78
78
|
tagName: "a",
|
|
79
79
|
className: "anchor"
|
|
80
80
|
},
|
|
81
|
-
[DOCUMENT_RULE_NAME]: {
|
|
82
|
-
tagName: "section",
|
|
83
|
-
className: "document"
|
|
84
|
-
},
|
|
85
81
|
[FOOTNOTE_RULE_NAME]: {
|
|
86
82
|
tagName: null,
|
|
87
83
|
className: null
|
|
88
84
|
},
|
|
85
|
+
[DIVISION_RULE_NAME]: {
|
|
86
|
+
tagName: "div"
|
|
87
|
+
},
|
|
89
88
|
[REFERENCE_RULE_NAME]: {
|
|
90
89
|
tagName: null,
|
|
91
90
|
className: null
|
package/src/ruleNames.js
CHANGED
|
@@ -8,8 +8,8 @@ export const IMAGE_RULE_NAME = "image";
|
|
|
8
8
|
export const TABLE_RULE_NAME = "table";
|
|
9
9
|
export const ERROR_RULE_NAME = "error";
|
|
10
10
|
export const ANCHOR_RULE_NAME = "anchor";
|
|
11
|
-
export const DOCUMENT_RULE_NAME = "document";
|
|
12
11
|
export const FOOTNOTE_RULE_NAME = "footnote";
|
|
12
|
+
export const DIVISION_RULE_NAME = "division";
|
|
13
13
|
export const REFERENCE_RULE_NAME = "reference";
|
|
14
14
|
export const PARAGRAPH_RULE_NAME = "paragraph";
|
|
15
15
|
export const HYPERLINK_RULE_NAME = "hyperlink";
|
|
@@ -55,8 +55,8 @@ const ruleNames = {
|
|
|
55
55
|
TABLE_RULE_NAME,
|
|
56
56
|
ERROR_RULE_NAME,
|
|
57
57
|
ANCHOR_RULE_NAME,
|
|
58
|
-
DOCUMENT_RULE_NAME,
|
|
59
58
|
FOOTNOTE_RULE_NAME,
|
|
59
|
+
DIVISION_RULE_NAME,
|
|
60
60
|
REFERENCE_RULE_NAME,
|
|
61
61
|
PARAGRAPH_RULE_NAME,
|
|
62
62
|
HYPERLINK_RULE_NAME,
|
package/src/utilities/link.js
CHANGED
|
@@ -8,11 +8,11 @@ import { linkMarkdownNodesFromNode } from "../utilities/query";
|
|
|
8
8
|
|
|
9
9
|
const { strlen, indexOf } = stringUtilities;
|
|
10
10
|
|
|
11
|
-
export function renumberLinkMarkdownNodesHTML(childNodesHTML,
|
|
11
|
+
export function renumberLinkMarkdownNodesHTML(childNodesHTML, divisionMarkdownNode, footnotesListMarkdownNode, context) {
|
|
12
12
|
let number = 1;
|
|
13
13
|
|
|
14
14
|
const identifiers = footnotesListMarkdownNode.identifiers(),
|
|
15
|
-
linkMarkdownNodes = linkMarkdownNodesFromNode(
|
|
15
|
+
linkMarkdownNodes = linkMarkdownNodesFromNode(divisionMarkdownNode);
|
|
16
16
|
|
|
17
17
|
linkMarkdownNodes.forEach((linkMarkdownNode) => {
|
|
18
18
|
const indent = null,
|
|
@@ -38,11 +38,11 @@ export function renumberLinkMarkdownNodesHTML(childNodesHTML, documentMarkdownNo
|
|
|
38
38
|
return childNodesHTML;
|
|
39
39
|
}
|
|
40
40
|
|
|
41
|
-
export function renumberLinkMarkdownNodes(
|
|
41
|
+
export function renumberLinkMarkdownNodes(divisionMarkdownNode, footnotesListMarkdownNode, context) {
|
|
42
42
|
let number = 1;
|
|
43
43
|
|
|
44
44
|
const identifiers = footnotesListMarkdownNode.identifiers(),
|
|
45
|
-
linkMarkdownNodes = linkMarkdownNodesFromNode(
|
|
45
|
+
linkMarkdownNodes = linkMarkdownNodesFromNode(divisionMarkdownNode);
|
|
46
46
|
|
|
47
47
|
linkMarkdownNodes.forEach((linkMarkdownNode) => {
|
|
48
48
|
const identifier = linkMarkdownNode.identifier(context),
|