highmark-markdown 1.0.176 → 1.0.178
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 +2834 -6275
- package/lib/example/importer.js +2 -2
- package/lib/example/view/div/preview.js +19 -19
- package/lib/example/view/textarea/plainText.js +3 -3
- package/lib/example/view/xmp.js +3 -3
- package/lib/example/view.js +7 -7
- package/lib/index.js +5 -1
- package/lib/map/className.js +4 -45
- package/lib/map/node/html.js +16 -9
- package/lib/map/node/markdown.js +13 -12
- package/lib/map/tagName.js +4 -45
- package/lib/markdown/bnf.js +2 -2
- package/lib/mixins/node.js +1 -11
- package/lib/node/html/{indexList.js → list/index.js} +2 -2
- package/lib/node/html/listing/inline.js +7 -1
- package/lib/node/html/topmost.js +21 -39
- package/lib/node/html.js +15 -1
- package/lib/node/markdown/directive/embee.js +28 -21
- package/lib/node/markdown/directive/include.js +28 -23
- package/lib/node/markdown/division.js +82 -249
- package/lib/node/markdown/{footnotesItem.js → item/footnotes.js} +5 -5
- package/lib/node/markdown/{contentsLink.js → link/contents.js} +3 -3
- package/lib/node/markdown/{emailLink.js → link/email.js} +3 -3
- package/lib/node/markdown/{footnoteLink.js → link/footnote.js} +3 -3
- package/lib/node/markdown/{indexLink.js → link/index.js} +2 -2
- package/lib/node/markdown/{contentsList.js → list/contents.js} +3 -3
- package/lib/node/markdown/{footnotesList.js → list/footnotes.js} +3 -3
- package/lib/node/markdown/{indexList.js → list/index.js} +3 -3
- package/lib/node/markdown/{blockListing.js → listng/block.js} +2 -2
- package/lib/node/markdown/{inlineListing.js → listng/inline.js} +21 -23
- package/lib/node/markdown/subDivision.js +144 -0
- package/lib/node/markdown/topmost.js +32 -65
- package/lib/queries.js +4 -3
- package/lib/ruleNames.js +16 -6
- package/lib/transform/{subDivision/contentsDirective.js → contentsDirective.js} +5 -6
- package/lib/transform/contentsLink.js +3 -3
- package/lib/transform/contentsList.js +7 -8
- package/lib/transform/footnote.js +2 -3
- package/lib/transform/{subDivision/footnote.js → footnoteIdentifier.js} +6 -7
- package/lib/transform/{subDivision/footnotesDirective.js → footnotesDirective.js} +5 -6
- package/lib/transform/footnotesItem.js +3 -3
- package/lib/transform/footnotesList.js +4 -5
- package/lib/transform/{subDivision/indexDirective.js → indexDirective.js} +5 -6
- package/lib/transform/indexList.js +3 -3
- package/lib/transform/markdown/directive/embed.js +134 -0
- package/lib/transform/markdown/directive/ignore.js +134 -0
- package/lib/transform/{embedDirective.js → markdown/directive/include.js} +20 -22
- package/lib/transform/markdown/subDivision.js +140 -0
- package/lib/transform/{subDivision/pageNumberDirective.js → pageNumberDirective.js} +5 -6
- package/lib/utilities/dom.js +62 -0
- package/lib/utilities/footnotes.js +4 -5
- package/lib/utilities/html.js +135 -51
- package/lib/utilities/index.js +5 -5
- package/lib/utilities/markdown.js +66 -22
- package/lib/utilities/query.js +17 -99
- package/package.json +4 -4
- package/src/example/importer.js +0 -1
- package/src/example/view/div/preview.js +16 -16
- package/src/example/view/textarea/plainText.js +2 -2
- package/src/example/view/xmp.js +3 -2
- package/src/example/view.js +9 -8
- package/src/index.js +1 -0
- package/src/map/className.js +3 -6
- package/src/map/node/html.js +18 -6
- package/src/map/node/markdown.js +15 -12
- package/src/map/tagName.js +3 -6
- package/src/markdown/bnf.js +33 -32
- package/src/mixins/node.js +0 -11
- package/src/node/html/{indexList.js → list/index.js} +1 -1
- package/src/node/html/listing/inline.js +2 -0
- package/src/node/html/topmost.js +16 -47
- package/src/node/html.js +12 -0
- package/src/node/markdown/directive/embee.js +37 -25
- package/src/node/markdown/directive/include.js +36 -27
- package/src/node/markdown/division.js +153 -136
- package/src/node/markdown/{footnotesItem.js → item/footnotes.js} +4 -4
- package/src/node/markdown/{contentsLink.js → link/contents.js} +2 -2
- package/src/node/markdown/{emailLink.js → link/email.js} +2 -2
- package/src/node/markdown/{footnoteLink.js → link/footnote.js} +2 -2
- package/src/node/markdown/{indexLink.js → link/index.js} +1 -1
- package/src/node/markdown/{contentsList.js → list/contents.js} +2 -2
- package/src/node/markdown/{footnotesList.js → list/footnotes.js} +2 -2
- package/src/node/markdown/{indexList.js → list/index.js} +2 -2
- package/src/node/markdown/{blockListing.js → listng/block.js} +1 -1
- package/src/node/markdown/listng/inline.js +28 -0
- package/src/node/markdown/subDivision.js +58 -0
- package/src/node/markdown/topmost.js +34 -64
- package/src/queries.js +5 -3
- package/src/ruleNames.js +6 -2
- package/src/transform/{subDivision/contentsDirective.js → contentsDirective.js} +1 -3
- package/src/transform/contentsLink.js +1 -1
- package/src/transform/contentsList.js +1 -2
- package/src/transform/footnote.js +0 -2
- package/src/transform/{subDivision/footnote.js → footnoteIdentifier.js} +1 -3
- package/src/transform/{subDivision/footnotesDirective.js → footnotesDirective.js} +1 -3
- package/src/transform/footnotesItem.js +1 -1
- package/src/transform/footnotesList.js +1 -3
- package/src/transform/{subDivision/indexDirective.js → indexDirective.js} +1 -3
- package/src/transform/indexList.js +1 -1
- package/src/transform/markdown/directive/embed.js +19 -0
- package/src/transform/markdown/directive/ignore.js +19 -0
- package/src/transform/markdown/directive/include.js +29 -0
- package/src/transform/markdown/subDivision.js +25 -0
- package/src/transform/{subDivision/pageNumberDirective.js → pageNumberDirective.js} +1 -3
- package/src/utilities/dom.js +58 -0
- package/src/utilities/footnotes.js +1 -3
- package/src/utilities/html.js +122 -52
- package/src/utilities/index.js +4 -4
- package/src/utilities/markdown.js +57 -17
- package/src/utilities/query.js +12 -94
- package/lib/transform/division.js +0 -193
- package/lib/transform/includeDirective.js +0 -158
- package/lib/transform/subDivision/embedDirectives.js +0 -147
- package/lib/transform/subDivision/includeDirectives.js +0 -142
- package/src/node/markdown/inlineListing.js +0 -28
- package/src/transform/division.js +0 -41
- package/src/transform/embedDirective.js +0 -34
- package/src/transform/includeDirective.js +0 -49
- package/src/transform/subDivision/embedDirectives.js +0 -52
- package/src/transform/subDivision/includeDirectives.js +0 -48
package/src/utilities/html.js
CHANGED
|
@@ -1,74 +1,144 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
// const footnoteReplacementMap = prepareFootnotes(divisionMarkdownNodes, context),
|
|
8
|
-
// markdownNodes = paginate(divisionMarkdownNodes, context);
|
|
9
|
-
//
|
|
10
|
-
// divisionMarkdownNodes = divisionMarkdownNodesFromMarkdownNodes(markdownNodes); ///
|
|
11
|
-
//
|
|
12
|
-
// createFootnotes(divisionMarkdownNodes, footnoteReplacementMap, context);
|
|
13
|
-
//
|
|
14
|
-
// createContents(divisionMarkdownNodes, context);
|
|
15
|
-
//
|
|
16
|
-
// createIndex(divisionMarkdownNodes, context);
|
|
17
|
-
}
|
|
3
|
+
import { Query } from "occam-query";
|
|
4
|
+
|
|
5
|
+
import { nodeFromNodeAndQuery, nodesFromNodeAndQuery } from "../utilities/query";
|
|
18
6
|
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
7
|
+
const footnoteHTMLNodeQuery = Query.fromExpressionString("/division/footnote"),
|
|
8
|
+
ignoreDirectiveHTMLNodeQuery = Query.fromExpressionString("/division/subDivision/directives/ignoreDirective"),
|
|
9
|
+
contentsDirectiveHTMLNodeQuery = Query.fromExpressionString("/division/subDivision/directives/contentsDirective"),
|
|
10
|
+
footnotesDirectiveHTMLNodeQuery = Query.fromExpressionString("/division/subDivision/directives/footnotesDirective"),
|
|
11
|
+
pageNumberDirectiveHTMLNodeQuery = Query.fromExpressionString("//directives/pageNumber"), ///
|
|
12
|
+
headingHTMLNodesQuery = Query.fromExpressionString("/division/primaryHeading|secondaryHeading|tertiaryHeading|quaternaryHeading"), ///
|
|
13
|
+
divisionHTMLNodesQuery = Query.fromExpressionString("/html/division"), ///
|
|
14
|
+
footnotesHTMLNodesQuery = Query.fromExpressionString("//footnote|footnoteLink|footnotesDirective"), ///
|
|
15
|
+
footnoteLinkHTMLNodesQuery = Query.fromExpressionString("//footnoteLink");
|
|
22
16
|
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
});
|
|
17
|
+
export function footnoteHTMLNodeFromNode(node) {
|
|
18
|
+
const footnoteHTMLNode = nodeFromNodeAndQuery(node, footnoteHTMLNodeQuery);
|
|
26
19
|
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
});
|
|
20
|
+
return footnoteHTMLNode;
|
|
21
|
+
}
|
|
30
22
|
|
|
31
|
-
|
|
23
|
+
export function contentsDirectiveHTMLNodeFromNode(node) {
|
|
24
|
+
const contentsDirectiveHTMLNode = nodeFromNodeAndQuery(node, contentsDirectiveHTMLNodeQuery);
|
|
32
25
|
|
|
33
|
-
return
|
|
26
|
+
return contentsDirectiveHTMLNode;
|
|
34
27
|
}
|
|
35
28
|
|
|
36
|
-
function
|
|
37
|
-
|
|
38
|
-
const indexCreated = divisionMarkdownNode.createIndex(divisionMarkdownNodes, context);
|
|
29
|
+
export function footnotesDirectiveHTMLNodeFromNode(node) {
|
|
30
|
+
const footnotesDirectiveHTMLNode = nodeFromNodeAndQuery(node, footnotesDirectiveHTMLNodeQuery);
|
|
39
31
|
|
|
40
|
-
|
|
41
|
-
return true;
|
|
42
|
-
}
|
|
43
|
-
});
|
|
32
|
+
return footnotesDirectiveHTMLNode;
|
|
44
33
|
}
|
|
45
34
|
|
|
46
|
-
function
|
|
47
|
-
|
|
48
|
-
const contentsCreated = divisionMarkdownNode.createContents(divisionMarkdownNodes, context);
|
|
35
|
+
export function pageNumberDirectiveHTMLNodeFromNode(node) {
|
|
36
|
+
const pageNumberDirectiveHTMLNode = nodeFromNodeAndQuery(node, pageNumberDirectiveHTMLNodeQuery);
|
|
49
37
|
|
|
50
|
-
|
|
51
|
-
return true;
|
|
52
|
-
}
|
|
53
|
-
});
|
|
38
|
+
return pageNumberDirectiveHTMLNode;
|
|
54
39
|
}
|
|
55
40
|
|
|
56
|
-
function
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
41
|
+
export function headingHTMLNodesFromNode(node, headingHTMLNodes = []) {
|
|
42
|
+
nodesFromNodeAndQuery(node, headingHTMLNodesQuery, headingHTMLNodes);
|
|
43
|
+
|
|
44
|
+
return headingHTMLNodes;
|
|
60
45
|
}
|
|
61
46
|
|
|
62
|
-
function
|
|
63
|
-
|
|
47
|
+
export function divisionHTMLNodesFromNode(node, divisionHTMLNodes = []) {
|
|
48
|
+
nodesFromNodeAndQuery(node, divisionHTMLNodesQuery, divisionHTMLNodes);
|
|
49
|
+
|
|
50
|
+
return divisionHTMLNodes;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
export function footnotesHTMLNodesFromNode(node, footnotesHTMLNodes = []) {
|
|
54
|
+
nodesFromNodeAndQuery(node, footnotesHTMLNodesQuery, footnotesHTMLNodes);
|
|
55
|
+
|
|
56
|
+
return footnotesHTMLNodes;
|
|
57
|
+
}
|
|
64
58
|
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
});
|
|
59
|
+
export function footnoteLinkHTMLNodesFromNode(node, linkHTMLNodes = []) {
|
|
60
|
+
nodesFromNodeAndQuery(node, footnoteLinkHTMLNodesQuery, linkHTMLNodes);
|
|
68
61
|
|
|
69
|
-
return
|
|
62
|
+
return linkHTMLNodes;
|
|
70
63
|
}
|
|
71
64
|
|
|
72
65
|
export default {
|
|
73
|
-
|
|
74
|
-
|
|
66
|
+
footnoteHTMLNodeFromNode,
|
|
67
|
+
contentsDirectiveHTMLNodeFromNode,
|
|
68
|
+
footnotesDirectiveHTMLNodeFromNode,
|
|
69
|
+
pageNumberDirectiveHTMLNodeFromNode,
|
|
70
|
+
headingHTMLNodesFromNode,
|
|
71
|
+
divisionHTMLNodesFromNode,
|
|
72
|
+
footnotesHTMLNodesFromNode,
|
|
73
|
+
footnoteLinkHTMLNodesFromNode
|
|
74
|
+
};
|
|
75
|
+
|
|
76
|
+
// export function postProcess(divisionHTMLNodes, context) {
|
|
77
|
+
// const footnoteReplacementMap = prepareFootnotes(divisionHTMLNodes, context),
|
|
78
|
+
// markdownNodes = paginate(divisionHTMLNodes, context);
|
|
79
|
+
//
|
|
80
|
+
// divisionHTMLNodes = divisionHTMLNodesFromHTMLNodes(markdownNodes); ///
|
|
81
|
+
//
|
|
82
|
+
// createFootnotes(divisionHTMLNodes, footnoteReplacementMap, context);
|
|
83
|
+
//
|
|
84
|
+
// createContents(divisionHTMLNodes, context);
|
|
85
|
+
//
|
|
86
|
+
// createIndex(divisionHTMLNodes, context);
|
|
87
|
+
// }
|
|
88
|
+
//
|
|
89
|
+
// function paginate(divisionHTMLNodes, context) {
|
|
90
|
+
// const pageNumber = 1,
|
|
91
|
+
// markdownNOdes = [];
|
|
92
|
+
//
|
|
93
|
+
// Object.assign(context, {
|
|
94
|
+
// pageNumber
|
|
95
|
+
// });
|
|
96
|
+
//
|
|
97
|
+
// divisionHTMLNodes.forEach((divisionHTMLNode) => {
|
|
98
|
+
// divisionHTMLNode.paginate(markdownNOdes, context);
|
|
99
|
+
// });
|
|
100
|
+
//
|
|
101
|
+
// delete context.pageNumber;
|
|
102
|
+
//
|
|
103
|
+
// return markdownNOdes;
|
|
104
|
+
// }
|
|
105
|
+
//
|
|
106
|
+
// function createIndex(divisionHTMLNodes, context) {
|
|
107
|
+
// divisionHTMLNodes.some((divisionHTMLNode) => {
|
|
108
|
+
// const indexCreated = divisionHTMLNode.createIndex(divisionHTMLNodes, context);
|
|
109
|
+
//
|
|
110
|
+
// if (indexCreated) {
|
|
111
|
+
// return true;
|
|
112
|
+
// }
|
|
113
|
+
// });
|
|
114
|
+
// }
|
|
115
|
+
//
|
|
116
|
+
// function createContents(divisionHTMLNodes, context) {
|
|
117
|
+
// divisionHTMLNodes.some((divisionHTMLNode) => {
|
|
118
|
+
// const contentsCreated = divisionHTMLNode.createContents(divisionHTMLNodes, context);
|
|
119
|
+
//
|
|
120
|
+
// if (contentsCreated) {
|
|
121
|
+
// return true;
|
|
122
|
+
// }
|
|
123
|
+
// });
|
|
124
|
+
// }
|
|
125
|
+
//
|
|
126
|
+
// function createFootnotes(divisionHTMLNodes, footnoteReplacementMap, context) {
|
|
127
|
+
// divisionHTMLNodes.forEach((divisionHTMLNode) => {
|
|
128
|
+
// divisionHTMLNode.createFootnotes(footnoteReplacementMap, context);
|
|
129
|
+
// });
|
|
130
|
+
// }
|
|
131
|
+
//
|
|
132
|
+
// function prepareFootnotes(divisionHTMLNodes, context) {
|
|
133
|
+
// const footnoteReplacementMap = {};
|
|
134
|
+
//
|
|
135
|
+
// divisionHTMLNodes.forEach((divisionHTMLNode) => {
|
|
136
|
+
// divisionHTMLNode.prepareFootnotes(footnoteReplacementMap, context);
|
|
137
|
+
// });
|
|
138
|
+
//
|
|
139
|
+
// return footnoteReplacementMap;
|
|
140
|
+
// }
|
|
141
|
+
//
|
|
142
|
+
// export default {
|
|
143
|
+
// postProcess
|
|
144
|
+
// }
|
package/src/utilities/index.js
CHANGED
|
@@ -124,8 +124,8 @@ function adjustProperNouns(indexMap, context) {
|
|
|
124
124
|
});
|
|
125
125
|
|
|
126
126
|
mapKeys(indexMap, (wordOrPhrase) => {
|
|
127
|
-
const index = lowerCaseProperNouns.findIndex((
|
|
128
|
-
if (
|
|
127
|
+
const index = lowerCaseProperNouns.findIndex((lowerCaseProperName) => {
|
|
128
|
+
if (lowerCaseProperName === wordOrPhrase) {
|
|
129
129
|
return true;
|
|
130
130
|
}
|
|
131
131
|
});
|
|
@@ -163,8 +163,8 @@ function adjustAcronyms(indexMap, context) {
|
|
|
163
163
|
});
|
|
164
164
|
|
|
165
165
|
mapKeys(indexMap, (wordOrPhrase) => {
|
|
166
|
-
const index = lowerCaseAcronyms.findIndex((
|
|
167
|
-
if (
|
|
166
|
+
const index = lowerCaseAcronyms.findIndex((lowerCaseProperName) => {
|
|
167
|
+
if (lowerCaseProperName === wordOrPhrase) {
|
|
168
168
|
return true;
|
|
169
169
|
}
|
|
170
170
|
});
|
|
@@ -1,32 +1,72 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
const divisionMarkdownNodes = [];
|
|
3
|
+
import { Query } from "occam-query";
|
|
5
4
|
|
|
6
|
-
|
|
7
|
-
divisionMarkdownNodes
|
|
8
|
-
});
|
|
5
|
+
import { nodeFromNodeAndQuery, nodesFromNodeAndQuery } from "../utilities/query";
|
|
9
6
|
|
|
10
|
-
|
|
7
|
+
const divisionMarkdownNodeQuery = Query.fromExpressionString("/markdown/division"),
|
|
8
|
+
subDivisionMarkdownNodeQuery = Query.fromExpressionString("/division/subDivision"),
|
|
9
|
+
indexDirectiveMarkdownNodeQuery = Query.fromExpressionString("/division/subDivision/directives/indexDirective"),
|
|
10
|
+
ignoreDirectiveMarkdownNodeQuery = Query.fromExpressionString("/division/subDivision/directives/ignoreDirective"),
|
|
11
|
+
divisionMarkdownNodesQuery = Query.fromExpressionString("/markdown/division"),
|
|
12
|
+
subDivisionMarkdownNodesQuery = Query.fromExpressionString("/division/subDivision"),
|
|
13
|
+
embedDirectiveMarkdownNodesQuery = Query.fromExpressionString("/subDivision/directives/embedDirective"),
|
|
14
|
+
includeDirectiveMarkdownNodesQuery = Query.fromExpressionString("/division/subDivision/directives/includeDirective");
|
|
11
15
|
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
}
|
|
16
|
+
export function divisionMarkdownNodeFromNode(node) {
|
|
17
|
+
const divisionMarkdownNode = nodeFromNodeAndQuery(node, divisionMarkdownNodeQuery);
|
|
15
18
|
|
|
16
|
-
divisionMarkdownNode
|
|
19
|
+
return divisionMarkdownNode;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
export function subDivisionMarkdownNodeFromNode(node) {
|
|
23
|
+
const subDivisionMarkdownNode = nodeFromNodeAndQuery(node, subDivisionMarkdownNodeQuery);
|
|
24
|
+
|
|
25
|
+
return subDivisionMarkdownNode;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
export function indexDirectiveMarkdownNodeFromNode(node) {
|
|
29
|
+
const indexDirectiveMarkdownNode = nodeFromNodeAndQuery(node, indexDirectiveMarkdownNodeQuery);
|
|
17
30
|
|
|
18
|
-
|
|
31
|
+
return indexDirectiveMarkdownNode;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
export function ignoreDirectiveMarkdownNodeFromNode(node) {
|
|
35
|
+
const ignoreDirectiveMarkdownNode = nodeFromNodeAndQuery(node, ignoreDirectiveMarkdownNodeQuery);
|
|
36
|
+
|
|
37
|
+
return ignoreDirectiveMarkdownNode;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
export function divisionMarkdownNodesFromNode(node, divisionMarkdownNodes = []) {
|
|
41
|
+
nodesFromNodeAndQuery(node, divisionMarkdownNodesQuery, divisionMarkdownNodes);
|
|
19
42
|
|
|
20
43
|
return divisionMarkdownNodes;
|
|
21
44
|
}
|
|
22
45
|
|
|
23
|
-
export function
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
46
|
+
export function subDivisionMarkdownNodesFromNode(node, subDivisionMarkdownNodes = []) {
|
|
47
|
+
nodesFromNodeAndQuery(node, subDivisionMarkdownNodesQuery, subDivisionMarkdownNodes);
|
|
48
|
+
|
|
49
|
+
return subDivisionMarkdownNodes;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
export function embedDirectiveMarkdownNodesFromNode(node, embedDirectiveMarkdownNodes = []) {
|
|
53
|
+
nodesFromNodeAndQuery(node, embedDirectiveMarkdownNodesQuery, embedDirectiveMarkdownNodes);
|
|
54
|
+
|
|
55
|
+
return embedDirectiveMarkdownNodes;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
export function includeDirectiveMarkdownNodesFromNode(node, includeDirectiveMarkdownNodes = []) {
|
|
59
|
+
nodesFromNodeAndQuery(node, includeDirectiveMarkdownNodesQuery, includeDirectiveMarkdownNodes);
|
|
60
|
+
|
|
61
|
+
return includeDirectiveMarkdownNodes;
|
|
27
62
|
}
|
|
28
63
|
|
|
29
64
|
export default {
|
|
30
|
-
|
|
31
|
-
|
|
65
|
+
divisionMarkdownNodeFromNode,
|
|
66
|
+
subDivisionMarkdownNodeFromNode,
|
|
67
|
+
indexDirectiveMarkdownNodeFromNode,
|
|
68
|
+
ignoreDirectiveMarkdownNodeFromNode,
|
|
69
|
+
divisionMarkdownNodesFromNode,
|
|
70
|
+
embedDirectiveMarkdownNodesFromNode,
|
|
71
|
+
includeDirectiveMarkdownNodesFromNode
|
|
32
72
|
};
|
package/src/utilities/query.js
CHANGED
|
@@ -5,18 +5,6 @@ import { arrayUtilities } from "necessary";
|
|
|
5
5
|
|
|
6
6
|
const { push } = arrayUtilities;
|
|
7
7
|
|
|
8
|
-
const footnoteMarkdownNodeQuery = Query.fromExpressionString("/division/footnote"),
|
|
9
|
-
indexDirectiveMarkdownNodeQuery = Query.fromExpressionString("/division/directives/indexDirective"),
|
|
10
|
-
ignoreDirectiveMarkdownNodeQuery = Query.fromExpressionString("/division/directives/ignoreDirective"),
|
|
11
|
-
contentsDirectiveMarkdownNodeQuery = Query.fromExpressionString("/division/directives/contentsDirective"),
|
|
12
|
-
footnotesDirectiveMarkdownNodeQuery = Query.fromExpressionString("/division/directives/footnotesDirective"),
|
|
13
|
-
pageNumberDirectiveMarkdownNodeQuery = Query.fromExpressionString("//directives/pageNumber"), ///
|
|
14
|
-
headingMarkdownNodesQuery = Query.fromExpressionString("/division/primaryHeading|secondaryHeading|tertiaryHeading|quaternaryHeading"), ///
|
|
15
|
-
footnotesMarkdownNodesQuery = Query.fromExpressionString("//footnote|footnoteLink|footnotesDirective"), ///
|
|
16
|
-
footnoteLinkMarkdownNodesQuery = Query.fromExpressionString("//footnoteLink"),
|
|
17
|
-
embedDirectiveMarkdownNodesQuery = Query.fromExpressionString("/division/directives/embedDirective"),
|
|
18
|
-
includeDirectiveMarkdownNodesQuery = Query.fromExpressionString("/division/directives/includeDirective");
|
|
19
|
-
|
|
20
8
|
export function nodeQuery(expression) {
|
|
21
9
|
const query = Query.fromExpressionString(expression);
|
|
22
10
|
|
|
@@ -39,87 +27,7 @@ export function nodesQuery(expression) {
|
|
|
39
27
|
}
|
|
40
28
|
}
|
|
41
29
|
|
|
42
|
-
export function
|
|
43
|
-
const footnoteMarkdownNode = nodeFromNodeAndQuery(node, footnoteMarkdownNodeQuery);
|
|
44
|
-
|
|
45
|
-
return footnoteMarkdownNode;
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
export function indexDirectiveMarkdownNodeFromNode(node) {
|
|
49
|
-
const indexDirectiveMarkdownNode = nodeFromNodeAndQuery(node, indexDirectiveMarkdownNodeQuery);
|
|
50
|
-
|
|
51
|
-
return indexDirectiveMarkdownNode;
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
export function ignoreDirectiveMarkdownNodeFromNode(node) {
|
|
55
|
-
const ignoreDirectiveMarkdownNode = nodeFromNodeAndQuery(node, ignoreDirectiveMarkdownNodeQuery);
|
|
56
|
-
|
|
57
|
-
return ignoreDirectiveMarkdownNode;
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
export function contentsDirectiveMarkdownNodeFromNode(node) {
|
|
61
|
-
const contentsDirectiveMarkdownNode = nodeFromNodeAndQuery(node, contentsDirectiveMarkdownNodeQuery);
|
|
62
|
-
|
|
63
|
-
return contentsDirectiveMarkdownNode;
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
export function footnotesDirectiveMarkdownNodeFromNode(node) {
|
|
67
|
-
const footnotesDirectiveMarkdownNode = nodeFromNodeAndQuery(node, footnotesDirectiveMarkdownNodeQuery);
|
|
68
|
-
|
|
69
|
-
return footnotesDirectiveMarkdownNode;
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
export function pageNumberDirectiveMarkdownNodeFromNode(node) {
|
|
73
|
-
const pageNumberDirectiveMarkdownNode = nodeFromNodeAndQuery(node, pageNumberDirectiveMarkdownNodeQuery);
|
|
74
|
-
|
|
75
|
-
return pageNumberDirectiveMarkdownNode;
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
export function headingMarkdownNodesFromNode(node, headingMarkdownNodes = []) {
|
|
79
|
-
nodesFromNodeAndQuery(node, headingMarkdownNodesQuery, headingMarkdownNodes);
|
|
80
|
-
|
|
81
|
-
return headingMarkdownNodes;
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
export function footnotesMarkdownNodesFromNode(node, footnotesMarkdownNodes = []) {
|
|
85
|
-
nodesFromNodeAndQuery(node, footnotesMarkdownNodesQuery, footnotesMarkdownNodes);
|
|
86
|
-
|
|
87
|
-
return footnotesMarkdownNodes;
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
export function footnoteLinkMarkdownNodesFromNode(node, linkMarkdownNodes = []) {
|
|
91
|
-
nodesFromNodeAndQuery(node, footnoteLinkMarkdownNodesQuery, linkMarkdownNodes);
|
|
92
|
-
|
|
93
|
-
return linkMarkdownNodes;
|
|
94
|
-
}
|
|
95
|
-
|
|
96
|
-
export function embedDirectiveMarkdownNodesFromNode(node, embedDirectiveMarkdownNodes = []) {
|
|
97
|
-
nodesFromNodeAndQuery(node, embedDirectiveMarkdownNodesQuery, embedDirectiveMarkdownNodes);
|
|
98
|
-
|
|
99
|
-
return embedDirectiveMarkdownNodes;
|
|
100
|
-
}
|
|
101
|
-
|
|
102
|
-
export function includeDirectiveMarkdownNodesFromNode(node, includeDirectiveMarkdownNodes = []) {
|
|
103
|
-
nodesFromNodeAndQuery(node, includeDirectiveMarkdownNodesQuery, includeDirectiveMarkdownNodes);
|
|
104
|
-
|
|
105
|
-
return includeDirectiveMarkdownNodes;
|
|
106
|
-
}
|
|
107
|
-
|
|
108
|
-
export default {
|
|
109
|
-
footnoteMarkdownNodeFromNode,
|
|
110
|
-
indexDirectiveMarkdownNodeFromNode,
|
|
111
|
-
ignoreDirectiveMarkdownNodeFromNode,
|
|
112
|
-
contentsDirectiveMarkdownNodeFromNode,
|
|
113
|
-
footnotesDirectiveMarkdownNodeFromNode,
|
|
114
|
-
pageNumberDirectiveMarkdownNodeFromNode,
|
|
115
|
-
headingMarkdownNodesFromNode,
|
|
116
|
-
footnotesMarkdownNodesFromNode,
|
|
117
|
-
footnoteLinkMarkdownNodesFromNode,
|
|
118
|
-
embedDirectiveMarkdownNodesFromNode,
|
|
119
|
-
includeDirectiveMarkdownNodesFromNode
|
|
120
|
-
};
|
|
121
|
-
|
|
122
|
-
function nodeFromNodeAndQuery(node, query) {
|
|
30
|
+
export function nodeFromNodeAndQuery(node, query) {
|
|
123
31
|
const queryNodes = query.execute(node),
|
|
124
32
|
queryNode = queryNodes.shift() || null;
|
|
125
33
|
|
|
@@ -128,10 +36,20 @@ function nodeFromNodeAndQuery(node, query) {
|
|
|
128
36
|
return node;
|
|
129
37
|
}
|
|
130
38
|
|
|
131
|
-
function nodesFromNodeAndQuery(node, query, nodes) {
|
|
39
|
+
export function nodesFromNodeAndQuery(node, query, nodes) {
|
|
132
40
|
const queryNodes = query.execute(node);
|
|
133
41
|
|
|
134
42
|
push(nodes, queryNodes);
|
|
135
43
|
|
|
136
44
|
return nodes;
|
|
137
45
|
}
|
|
46
|
+
|
|
47
|
+
export function nodesFromNodeAndQueries(node, queries, nodes = []) {
|
|
48
|
+
queries.forEach((query) => {
|
|
49
|
+
const queryNodes = query.execute(node);
|
|
50
|
+
|
|
51
|
+
push(nodes, queryNodes);
|
|
52
|
+
});
|
|
53
|
+
|
|
54
|
+
return nodes;
|
|
55
|
+
}
|
|
@@ -1,193 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
Object.defineProperty(exports, "default", {
|
|
6
|
-
enumerable: true,
|
|
7
|
-
get: function() {
|
|
8
|
-
return DivisionTransform;
|
|
9
|
-
}
|
|
10
|
-
});
|
|
11
|
-
var _occamdom = require("occam-dom");
|
|
12
|
-
function _array_like_to_array(arr, len) {
|
|
13
|
-
if (len == null || len > arr.length) len = arr.length;
|
|
14
|
-
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
15
|
-
return arr2;
|
|
16
|
-
}
|
|
17
|
-
function _array_without_holes(arr) {
|
|
18
|
-
if (Array.isArray(arr)) return _array_like_to_array(arr);
|
|
19
|
-
}
|
|
20
|
-
function _assert_this_initialized(self) {
|
|
21
|
-
if (self === void 0) {
|
|
22
|
-
throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
|
|
23
|
-
}
|
|
24
|
-
return self;
|
|
25
|
-
}
|
|
26
|
-
function _call_super(_this, derived, args) {
|
|
27
|
-
derived = _get_prototype_of(derived);
|
|
28
|
-
return _possible_constructor_return(_this, _is_native_reflect_construct() ? Reflect.construct(derived, args || [], _get_prototype_of(_this).constructor) : derived.apply(_this, args));
|
|
29
|
-
}
|
|
30
|
-
function _class_call_check(instance, Constructor) {
|
|
31
|
-
if (!(instance instanceof Constructor)) {
|
|
32
|
-
throw new TypeError("Cannot call a class as a function");
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
function _defineProperties(target, props) {
|
|
36
|
-
for(var i = 0; i < props.length; i++){
|
|
37
|
-
var descriptor = props[i];
|
|
38
|
-
descriptor.enumerable = descriptor.enumerable || false;
|
|
39
|
-
descriptor.configurable = true;
|
|
40
|
-
if ("value" in descriptor) descriptor.writable = true;
|
|
41
|
-
Object.defineProperty(target, descriptor.key, descriptor);
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
function _create_class(Constructor, protoProps, staticProps) {
|
|
45
|
-
if (protoProps) _defineProperties(Constructor.prototype, protoProps);
|
|
46
|
-
if (staticProps) _defineProperties(Constructor, staticProps);
|
|
47
|
-
return Constructor;
|
|
48
|
-
}
|
|
49
|
-
function _get(target, property, receiver) {
|
|
50
|
-
if (typeof Reflect !== "undefined" && Reflect.get) {
|
|
51
|
-
_get = Reflect.get;
|
|
52
|
-
} else {
|
|
53
|
-
_get = function get(target, property, receiver) {
|
|
54
|
-
var base = _super_prop_base(target, property);
|
|
55
|
-
if (!base) return;
|
|
56
|
-
var desc = Object.getOwnPropertyDescriptor(base, property);
|
|
57
|
-
if (desc.get) {
|
|
58
|
-
return desc.get.call(receiver || target);
|
|
59
|
-
}
|
|
60
|
-
return desc.value;
|
|
61
|
-
};
|
|
62
|
-
}
|
|
63
|
-
return _get(target, property, receiver || target);
|
|
64
|
-
}
|
|
65
|
-
function _get_prototype_of(o) {
|
|
66
|
-
_get_prototype_of = Object.setPrototypeOf ? Object.getPrototypeOf : function getPrototypeOf(o) {
|
|
67
|
-
return o.__proto__ || Object.getPrototypeOf(o);
|
|
68
|
-
};
|
|
69
|
-
return _get_prototype_of(o);
|
|
70
|
-
}
|
|
71
|
-
function _inherits(subClass, superClass) {
|
|
72
|
-
if (typeof superClass !== "function" && superClass !== null) {
|
|
73
|
-
throw new TypeError("Super expression must either be null or a function");
|
|
74
|
-
}
|
|
75
|
-
subClass.prototype = Object.create(superClass && superClass.prototype, {
|
|
76
|
-
constructor: {
|
|
77
|
-
value: subClass,
|
|
78
|
-
writable: true,
|
|
79
|
-
configurable: true
|
|
80
|
-
}
|
|
81
|
-
});
|
|
82
|
-
if (superClass) _set_prototype_of(subClass, superClass);
|
|
83
|
-
}
|
|
84
|
-
function _iterable_to_array(iter) {
|
|
85
|
-
if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
|
|
86
|
-
}
|
|
87
|
-
function _non_iterable_spread() {
|
|
88
|
-
throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
89
|
-
}
|
|
90
|
-
function _possible_constructor_return(self, call) {
|
|
91
|
-
if (call && (_type_of(call) === "object" || typeof call === "function")) {
|
|
92
|
-
return call;
|
|
93
|
-
}
|
|
94
|
-
return _assert_this_initialized(self);
|
|
95
|
-
}
|
|
96
|
-
function _set_prototype_of(o, p) {
|
|
97
|
-
_set_prototype_of = Object.setPrototypeOf || function setPrototypeOf(o, p) {
|
|
98
|
-
o.__proto__ = p;
|
|
99
|
-
return o;
|
|
100
|
-
};
|
|
101
|
-
return _set_prototype_of(o, p);
|
|
102
|
-
}
|
|
103
|
-
function _super_prop_base(object, property) {
|
|
104
|
-
while(!Object.prototype.hasOwnProperty.call(object, property)){
|
|
105
|
-
object = _get_prototype_of(object);
|
|
106
|
-
if (object === null) break;
|
|
107
|
-
}
|
|
108
|
-
return object;
|
|
109
|
-
}
|
|
110
|
-
function _to_consumable_array(arr) {
|
|
111
|
-
return _array_without_holes(arr) || _iterable_to_array(arr) || _unsupported_iterable_to_array(arr) || _non_iterable_spread();
|
|
112
|
-
}
|
|
113
|
-
function _type_of(obj) {
|
|
114
|
-
"@swc/helpers - typeof";
|
|
115
|
-
return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
|
|
116
|
-
}
|
|
117
|
-
function _unsupported_iterable_to_array(o, minLen) {
|
|
118
|
-
if (!o) return;
|
|
119
|
-
if (typeof o === "string") return _array_like_to_array(o, minLen);
|
|
120
|
-
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
121
|
-
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
122
|
-
if (n === "Map" || n === "Set") return Array.from(n);
|
|
123
|
-
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
|
|
124
|
-
}
|
|
125
|
-
function _is_native_reflect_construct() {
|
|
126
|
-
try {
|
|
127
|
-
var result = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
|
|
128
|
-
} catch (_) {}
|
|
129
|
-
return (_is_native_reflect_construct = function() {
|
|
130
|
-
return !!result;
|
|
131
|
-
})();
|
|
132
|
-
}
|
|
133
|
-
var DivisionTransform = /*#__PURE__*/ function(Transform) {
|
|
134
|
-
_inherits(DivisionTransform, Transform);
|
|
135
|
-
function DivisionTransform(node, tokens, divisionMarkdownNode) {
|
|
136
|
-
_class_call_check(this, DivisionTransform);
|
|
137
|
-
var _this;
|
|
138
|
-
_this = _call_super(this, DivisionTransform, [
|
|
139
|
-
node,
|
|
140
|
-
tokens
|
|
141
|
-
]);
|
|
142
|
-
_this.divisionMarkdownNode = divisionMarkdownNode;
|
|
143
|
-
return _this;
|
|
144
|
-
}
|
|
145
|
-
_create_class(DivisionTransform, [
|
|
146
|
-
{
|
|
147
|
-
key: "getDivisionMarkdownNode",
|
|
148
|
-
value: function getDivisionMarkdownNode() {
|
|
149
|
-
return this.divisionMarkdownNode;
|
|
150
|
-
}
|
|
151
|
-
},
|
|
152
|
-
{
|
|
153
|
-
key: "appendToTopmostMarkdownNode",
|
|
154
|
-
value: function appendToTopmostMarkdownNode(topmostMarkdownNode, context) {
|
|
155
|
-
var parentNode = topmostMarkdownNode; ///
|
|
156
|
-
_get(_get_prototype_of(DivisionTransform.prototype), "appendTo", this).call(this, parentNode, context);
|
|
157
|
-
}
|
|
158
|
-
},
|
|
159
|
-
{
|
|
160
|
-
key: "prependToTopmostMarkdownNode",
|
|
161
|
-
value: function prependToTopmostMarkdownNode(topmostMarkdownNode, context) {
|
|
162
|
-
var parentNode = topmostMarkdownNode; ///
|
|
163
|
-
_get(_get_prototype_of(DivisionTransform.prototype), "prependTo", this).call(this, parentNode, context);
|
|
164
|
-
}
|
|
165
|
-
},
|
|
166
|
-
{
|
|
167
|
-
key: "removeFromTopmostMarkdownNode",
|
|
168
|
-
value: function removeFromTopmostMarkdownNode(topmostMarkdownNode, context) {
|
|
169
|
-
var removedNode = this.divisionMarkdownNode, parentNode = topmostMarkdownNode;
|
|
170
|
-
_get(_get_prototype_of(DivisionTransform.prototype), "removeFrom", this).call(this, removedNode, parentNode, context);
|
|
171
|
-
}
|
|
172
|
-
}
|
|
173
|
-
], [
|
|
174
|
-
{
|
|
175
|
-
key: "fromDivisionMarkdownNode",
|
|
176
|
-
value: function fromDivisionMarkdownNode(Class, divisionMarkdownNode) {
|
|
177
|
-
for(var _len = arguments.length, remainingArguments = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++){
|
|
178
|
-
remainingArguments[_key - 2] = arguments[_key];
|
|
179
|
-
}
|
|
180
|
-
var _Transform;
|
|
181
|
-
var node = divisionMarkdownNode, divisionTransform = (_Transform = _occamdom.Transform).fromNode.apply(_Transform, [
|
|
182
|
-
Class,
|
|
183
|
-
node,
|
|
184
|
-
divisionMarkdownNode
|
|
185
|
-
].concat(_to_consumable_array(remainingArguments)));
|
|
186
|
-
return divisionTransform;
|
|
187
|
-
}
|
|
188
|
-
}
|
|
189
|
-
]);
|
|
190
|
-
return DivisionTransform;
|
|
191
|
-
}(_occamdom.Transform);
|
|
192
|
-
|
|
193
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90cmFuc2Zvcm0vZGl2aXNpb24uanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IFRyYW5zZm9ybSB9IGZyb20gXCJvY2NhbS1kb21cIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgRGl2aXNpb25UcmFuc2Zvcm0gZXh0ZW5kcyBUcmFuc2Zvcm0ge1xuICBjb25zdHJ1Y3Rvcihub2RlLCB0b2tlbnMsIGRpdmlzaW9uTWFya2Rvd25Ob2RlKSB7XG4gICAgc3VwZXIobm9kZSwgdG9rZW5zKTtcblxuICAgIHRoaXMuZGl2aXNpb25NYXJrZG93bk5vZGUgPSBkaXZpc2lvbk1hcmtkb3duTm9kZTtcbiAgfVxuXG4gIGdldERpdmlzaW9uTWFya2Rvd25Ob2RlKCkge1xuICAgIHJldHVybiB0aGlzLmRpdmlzaW9uTWFya2Rvd25Ob2RlO1xuICB9XG5cbiAgYXBwZW5kVG9Ub3Btb3N0TWFya2Rvd25Ob2RlKHRvcG1vc3RNYXJrZG93bk5vZGUsIGNvbnRleHQpIHtcbiAgICBjb25zdCBwYXJlbnROb2RlID0gdG9wbW9zdE1hcmtkb3duTm9kZTsgIC8vL1xuXG4gICAgc3VwZXIuYXBwZW5kVG8ocGFyZW50Tm9kZSwgY29udGV4dCk7XG4gIH1cblxuICBwcmVwZW5kVG9Ub3Btb3N0TWFya2Rvd25Ob2RlKHRvcG1vc3RNYXJrZG93bk5vZGUsIGNvbnRleHQpIHtcbiAgICBjb25zdCBwYXJlbnROb2RlID0gdG9wbW9zdE1hcmtkb3duTm9kZTsgIC8vL1xuXG4gICAgc3VwZXIucHJlcGVuZFRvKHBhcmVudE5vZGUsIGNvbnRleHQpO1xuICB9XG5cbiAgcmVtb3ZlRnJvbVRvcG1vc3RNYXJrZG93bk5vZGUodG9wbW9zdE1hcmtkb3duTm9kZSwgY29udGV4dCkge1xuICAgIGNvbnN0IHJlbW92ZWROb2RlID0gdGhpcy5kaXZpc2lvbk1hcmtkb3duTm9kZSwgLy8vXG4gICAgICAgICAgcGFyZW50Tm9kZSA9IHRvcG1vc3RNYXJrZG93bk5vZGU7XG5cbiAgICBzdXBlci5yZW1vdmVGcm9tKHJlbW92ZWROb2RlLCBwYXJlbnROb2RlLCBjb250ZXh0KTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tRGl2aXNpb25NYXJrZG93bk5vZGUoQ2xhc3MsIGRpdmlzaW9uTWFya2Rvd25Ob2RlLCAuLi5yZW1haW5pbmdBcmd1bWVudHMpIHtcbiAgICBjb25zdCBub2RlID0gZGl2aXNpb25NYXJrZG93bk5vZGUsIC8vL1xuICAgICAgICAgIGRpdmlzaW9uVHJhbnNmb3JtID0gVHJhbnNmb3JtLmZyb21Ob2RlKENsYXNzLCBub2RlLCBkaXZpc2lvbk1hcmtkb3duTm9kZSwgLi4ucmVtYWluaW5nQXJndW1lbnRzKTtcblxuICAgIHJldHVybiBkaXZpc2lvblRyYW5zZm9ybTtcbiAgfVxufVxuIl0sIm5hbWVzIjpbIkRpdmlzaW9uVHJhbnNmb3JtIiwibm9kZSIsInRva2VucyIsImRpdmlzaW9uTWFya2Rvd25Ob2RlIiwiZ2V0RGl2aXNpb25NYXJrZG93bk5vZGUiLCJhcHBlbmRUb1RvcG1vc3RNYXJrZG93bk5vZGUiLCJ0b3Btb3N0TWFya2Rvd25Ob2RlIiwiY29udGV4dCIsInBhcmVudE5vZGUiLCJhcHBlbmRUbyIsInByZXBlbmRUb1RvcG1vc3RNYXJrZG93bk5vZGUiLCJwcmVwZW5kVG8iLCJyZW1vdmVGcm9tVG9wbW9zdE1hcmtkb3duTm9kZSIsInJlbW92ZWROb2RlIiwicmVtb3ZlRnJvbSIsImZyb21EaXZpc2lvbk1hcmtkb3duTm9kZSIsIkNsYXNzIiwicmVtYWluaW5nQXJndW1lbnRzIiwiVHJhbnNmb3JtIiwiZGl2aXNpb25UcmFuc2Zvcm0iLCJmcm9tTm9kZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7ZUFJcUJBOzs7d0JBRks7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRVgsSUFBQSxBQUFNQSxrQ0FBTjtjQUFNQTthQUFBQSxrQkFDUEMsSUFBSSxFQUFFQyxNQUFNLEVBQUVDLG9CQUFvQjtnQ0FEM0JIOztnQkFFakIsa0JBRmlCQTtZQUVYQztZQUFNQzs7UUFFWixNQUFLQyxvQkFBb0IsR0FBR0E7OztrQkFKWEg7O1lBT25CSSxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNELG9CQUFvQjtZQUNsQzs7O1lBRUFFLEtBQUFBO21CQUFBQSxTQUFBQSw0QkFBNEJDLG1CQUFtQixFQUFFQyxPQUFPO2dCQUN0RCxJQUFNQyxhQUFhRixxQkFBc0IsR0FBRztnQkFFNUMsdUJBZGlCTiw4QkFjWFMsWUFBTixJQUFLLGFBQVVELFlBQVlEO1lBQzdCOzs7WUFFQUcsS0FBQUE7bUJBQUFBLFNBQUFBLDZCQUE2QkosbUJBQW1CLEVBQUVDLE9BQU87Z0JBQ3ZELElBQU1DLGFBQWFGLHFCQUFzQixHQUFHO2dCQUU1Qyx1QkFwQmlCTiw4QkFvQlhXLGFBQU4sSUFBSyxhQUFXSCxZQUFZRDtZQUM5Qjs7O1lBRUFLLEtBQUFBO21CQUFBQSxTQUFBQSw4QkFBOEJOLG1CQUFtQixFQUFFQyxPQUFPO2dCQUN4RCxJQUFNTSxjQUFjLElBQUksQ0FBQ1Ysb0JBQW9CLEVBQ3ZDSyxhQUFhRjtnQkFFbkIsdUJBM0JpQk4sOEJBMkJYYyxjQUFOLElBQUssYUFBWUQsYUFBYUwsWUFBWUQ7WUFDNUM7Ozs7WUFFT1EsS0FBQUE7bUJBQVAsU0FBT0EseUJBQXlCQyxLQUFLLEVBQUViLG9CQUFvQjtnQkFBRSxJQUFBLElBQUEsT0FBQSxVQUFBLFFBQUEsQUFBR2MscUJBQUgsVUFBQSxPQUFBLElBQUEsT0FBQSxRQUFBLE9BQUEsR0FBQSxPQUFBLE1BQUE7b0JBQUdBLG1CQUFILE9BQUEsS0FBQSxTQUFBLENBQUEsS0FBcUI7O29CQUV0REM7Z0JBRDFCLElBQU1qQixPQUFPRSxzQkFDUGdCLG9CQUFvQkQsQ0FBQUEsYUFBQUEsbUJBQVMsRUFBQ0UsUUFBUSxPQUFsQkYsWUFBQUE7b0JBQW1CRjtvQkFBT2Y7b0JBQU1FO2lCQUE0QyxDQUE1RWUsT0FBc0QscUJBQUdEO2dCQUVuRixPQUFPRTtZQUNUOzs7V0FuQ21CbkI7RUFBMEJrQixtQkFBUyJ9
|