highmark-markdown 0.0.403 → 0.0.405
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 +49 -22
- package/lib/example/view.js +5 -4
- package/lib/markdown/bnf.js +2 -2
- package/lib/node/markdown/division.js +4 -4
- package/lib/node/markdown.js +4 -4
- package/lib/replacement/subDivision/pageNumberDirective.js +33 -2
- package/lib/replacement/subDivision.js +4 -11
- package/package.json +1 -1
- package/src/example/view.js +12 -6
- package/src/markdown/bnf.js +1 -9
- package/src/node/markdown/division.js +5 -5
- package/src/node/markdown.js +2 -2
- package/src/replacement/subDivision/pageNumberDirective.js +6 -0
- package/src/replacement/subDivision.js +3 -8
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.405",
|
|
5
5
|
"license": "MIT, Anti-996",
|
|
6
6
|
"homepage": "https://github.com/djalbat/highmark-markdown",
|
|
7
7
|
"description": "Highmark's Markdown and Markdown Style languages.",
|
package/src/example/view.js
CHANGED
|
@@ -17,7 +17,7 @@ import MarkdownContainerDiv from "./view/div/container/markdown";
|
|
|
17
17
|
import MarkdownStyleContainerDiv from "./view/div/container/markdownStyle";
|
|
18
18
|
|
|
19
19
|
import { postprocess } from "../utilities/markdown";
|
|
20
|
-
import {
|
|
20
|
+
import { CONTENTS_DEPTH, CHARACTERS_PER_LINE, INTRODUCTION_CLASS_NAME } from "./constants";
|
|
21
21
|
|
|
22
22
|
const markdownLexer = MarkdownLexer.fromNothing(),
|
|
23
23
|
markdownParser = MarkdownParser.fromNothing(),
|
|
@@ -86,9 +86,11 @@ class View extends Element {
|
|
|
86
86
|
divisionMarkdownNode.setDivisionClassName(divisionClassName);
|
|
87
87
|
|
|
88
88
|
const charactersPerLine = CHARACTERS_PER_LINE,
|
|
89
|
+
contentsDepth = CONTENTS_DEPTH,
|
|
89
90
|
context = {
|
|
90
91
|
tokens,
|
|
91
92
|
importer,
|
|
93
|
+
contentsDepth,
|
|
92
94
|
charactersPerLine
|
|
93
95
|
},
|
|
94
96
|
divisionMarkdownNodes = postprocess(divisionMarkdownNode, context);
|
|
@@ -254,13 +256,15 @@ class View extends Element {
|
|
|
254
256
|
className: "view"
|
|
255
257
|
};
|
|
256
258
|
|
|
257
|
-
static initialMarkdown =
|
|
259
|
+
static initialMarkdown = `## Contents
|
|
258
260
|
|
|
259
|
-
|
|
261
|
+
@contents
|
|
262
|
+
|
|
263
|
+
@include introduction.md
|
|
260
264
|
|
|
261
|
-
@embed introduction.md
|
|
262
|
-
|
|
263
265
|
@footnotes
|
|
266
|
+
|
|
267
|
+
@pageNumber
|
|
264
268
|
`;
|
|
265
269
|
|
|
266
270
|
static initialMarkdownStyle = `width: 100%;
|
|
@@ -277,7 +281,9 @@ export default withStyle(View)`
|
|
|
277
281
|
`;
|
|
278
282
|
|
|
279
283
|
function importer(filePath, context) {
|
|
280
|
-
const content =
|
|
284
|
+
const content = `# Introduction
|
|
285
|
+
|
|
286
|
+
Florence [^florence].
|
|
281
287
|
|
|
282
288
|
[^florence]: Florence footnote.
|
|
283
289
|
`,
|
package/src/markdown/bnf.js
CHANGED
|
@@ -49,15 +49,7 @@ const bnf = `
|
|
|
49
49
|
|
|
50
50
|
| footnotesDirective
|
|
51
51
|
|
|
52
|
-
| (
|
|
53
|
-
|
|
54
|
-
( embedDirective
|
|
55
|
-
|
|
56
|
-
| includeDirective ) ( endOfLine ( embedDirective
|
|
57
|
-
|
|
58
|
-
| includeDirective ) )*
|
|
59
|
-
|
|
60
|
-
)
|
|
52
|
+
| ( embedDirective | includeDirective ) ( endOfLine ( embedDirective | includeDirective ) )*
|
|
61
53
|
|
|
62
54
|
;
|
|
63
55
|
|
|
@@ -155,7 +155,7 @@ export default class DivisionMarkdownNode extends MarkdownNode {
|
|
|
155
155
|
|
|
156
156
|
if (importedReplacement !== null) {
|
|
157
157
|
const childNode = embedDirectiveMarkdownNode, ///
|
|
158
|
-
parentNode = this.
|
|
158
|
+
parentNode = this.retrieveParentNode(childNode);
|
|
159
159
|
|
|
160
160
|
importedReplacement.replaceEmbedDirectiveMarkdownNode(embedDirectiveMarkdownNode, parentNode, context);
|
|
161
161
|
}
|
|
@@ -201,22 +201,22 @@ export default class DivisionMarkdownNode extends MarkdownNode {
|
|
|
201
201
|
}
|
|
202
202
|
|
|
203
203
|
removeSubDivisionMarkdownNode(SubDivisionReplacement, context) {
|
|
204
|
-
const divisionMarkdownNode = this,
|
|
204
|
+
const divisionMarkdownNode = this, //
|
|
205
205
|
subDivisionReplacement = this.findSubDivisionReplacement(SubDivisionReplacement, context);
|
|
206
206
|
|
|
207
207
|
if (subDivisionReplacement !== null) {
|
|
208
|
-
subDivisionReplacement.
|
|
208
|
+
subDivisionReplacement.removeFromMarkdownNode(divisionMarkdownNode, context);
|
|
209
209
|
}
|
|
210
210
|
|
|
211
211
|
return subDivisionReplacement;
|
|
212
212
|
}
|
|
213
213
|
|
|
214
214
|
removeSubDivisionMarkdownNodes(SubDivisionReplacement, context) {
|
|
215
|
-
const divisionMarkdownNode = this,
|
|
215
|
+
const divisionMarkdownNode = this, //
|
|
216
216
|
subDivisionReplacements = this.findSubDivisionReplacements(SubDivisionReplacement, context);
|
|
217
217
|
|
|
218
218
|
subDivisionReplacements.forEach((subDivisionReplacement) => {
|
|
219
|
-
subDivisionReplacement.
|
|
219
|
+
subDivisionReplacement.removeFromMarkdownNode(divisionMarkdownNode, context);
|
|
220
220
|
});
|
|
221
221
|
|
|
222
222
|
return subDivisionReplacements;
|
package/src/node/markdown.js
CHANGED
|
@@ -132,7 +132,7 @@ class MarkdownNode extends NonTerminalNode {
|
|
|
132
132
|
});
|
|
133
133
|
}
|
|
134
134
|
|
|
135
|
-
|
|
135
|
+
retrieveParentNode(childNode, node = this) {
|
|
136
136
|
let parentNode = null;
|
|
137
137
|
|
|
138
138
|
const nodeNonTerminalNode = node.isNonTerminalNode();
|
|
@@ -148,7 +148,7 @@ class MarkdownNode extends NonTerminalNode {
|
|
|
148
148
|
const nodes = childNodes; ///
|
|
149
149
|
|
|
150
150
|
nodes.some((node) => {
|
|
151
|
-
parentNode = this.
|
|
151
|
+
parentNode = this.retrieveParentNode(childNode, node);
|
|
152
152
|
|
|
153
153
|
if (parentNode !== null) {
|
|
154
154
|
return true;
|
|
@@ -5,6 +5,12 @@ import SubDivisionReplacement from "../../replacement/subDivision";
|
|
|
5
5
|
import { pageNumberDirectiveMarkdownNodeFromNode } from "../../utilities/query";
|
|
6
6
|
|
|
7
7
|
export default class PageNumberDirectiveSubDivisionReplacement extends SubDivisionReplacement {
|
|
8
|
+
appendToDivisionMarkdownNode(divisionMarkdownNode, context) {
|
|
9
|
+
const parentNode = divisionMarkdownNode; ///
|
|
10
|
+
|
|
11
|
+
super.appendTo(parentNode, context);
|
|
12
|
+
}
|
|
13
|
+
|
|
8
14
|
static fromSubDivisionMarkdownNode(subDivisionMarkdownNode, context) {
|
|
9
15
|
let pageNumberDirectiveSubDivisionReplacement = null;
|
|
10
16
|
|
|
@@ -13,14 +13,9 @@ export default class SubDivisionReplacement extends Replacement {
|
|
|
13
13
|
return this.removedNode;
|
|
14
14
|
}
|
|
15
15
|
|
|
16
|
-
|
|
17
|
-
const
|
|
18
|
-
|
|
19
|
-
super.appendTo(parentNode, context);
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
removeFromDivisionMarkdownNode(divisionMarkdownNode, context) {
|
|
23
|
-
const parentNode = divisionMarkdownNode; ///
|
|
16
|
+
removeFromMarkdownNode(divisionMarkdownNode, context) {
|
|
17
|
+
const childNode = this.removedNode, ///
|
|
18
|
+
parentNode = divisionMarkdownNode.retrieveParentNode(childNode);
|
|
24
19
|
|
|
25
20
|
super.removeFrom(this.removedNode, parentNode, context);
|
|
26
21
|
}
|