highmark-markdown 1.2.43 → 1.2.45

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.
@@ -4,45 +4,14 @@ import { Query } from "occam-query";
4
4
 
5
5
  import { nodeFromNodeAndQuery, nodesFromNodeAndQuery } from "../utilities/query";
6
6
 
7
- const indexDirectiveHTMLNodeQuery = Query.fromExpressionString("//indexDirective"),
8
- contentsDirectiveHTMLNodeQuery = Query.fromExpressionString("//contentsDirective"),
9
- footnotesDirectiveHTMLNodeQuery = Query.fromExpressionString("//footnotesDirective"),
10
- pageNumberDirectiveHTMLNodeQuery = Query.fromExpressionString("//pageNumberDirective"),
11
- htmlNodesQuery = Query.fromExpressionString("/division/*"),
12
- headingHTMLNodesQuery = Query.fromExpressionString("//primaryHeading|secondaryHeading|tertiaryHeading|tertiaryHeading"),
7
+ const headingHTMLNodesQuery = Query.fromExpressionString("//primaryHeading|secondaryHeading|tertiaryHeading|tertiaryHeading"),
13
8
  divisionHTMLNodesQuery = Query.fromExpressionString("/html/division"),
14
9
  footnoteHTMLNodesQuery = Query.fromExpressionString("//footnote"),
15
- footnoteLinkHTMLNodesQuery = Query.fromExpressionString("//footnoteLink");
16
-
17
- export function indexDirectiveHTMLNodeFromNode(node) {
18
- const indexDirectiveHTMLNode = nodeFromNodeAndQuery(node, indexDirectiveHTMLNodeQuery);
19
-
20
- return indexDirectiveHTMLNode;
21
- }
22
-
23
- export function contentsDirectiveHTMLNodeFromNode(node) {
24
- const contentsDirectiveHTMLNode = nodeFromNodeAndQuery(node, contentsDirectiveHTMLNodeQuery);
25
-
26
- return contentsDirectiveHTMLNode;
27
- }
28
-
29
- export function footnotesDirectiveHTMLNodeFromNode(node) {
30
- const footnotesDirectiveHTMLNode = nodeFromNodeAndQuery(node, footnotesDirectiveHTMLNodeQuery);
31
-
32
- return footnotesDirectiveHTMLNode;
33
- }
34
-
35
- export function pageNumberDirectiveHTMLNodeFromNode(node) {
36
- const pageNumberDirectiveHTMLNode = nodeFromNodeAndQuery(node, pageNumberDirectiveHTMLNodeQuery);
37
-
38
- return pageNumberDirectiveHTMLNode;
39
- }
40
-
41
- export function htmlNodesFromNode(node, htmlNodes = []) {
42
- nodesFromNodeAndQuery(node, htmlNodesQuery, htmlNodes);
43
-
44
- return htmlNodes;
45
- }
10
+ footnoteLinkHTMLNodesQuery = Query.fromExpressionString("//footnoteLink"),
11
+ indexDirectiveHTMLNodeQuery = Query.fromExpressionString("//indexDirective"),
12
+ contentsDirectiveHTMLNodeQuery = Query.fromExpressionString("//contentsDirective"),
13
+ footnotesDirectiveHTMLNodeQuery = Query.fromExpressionString("//footnotesDirective"),
14
+ pageNumberDirectiveHTMLNodeQuery = Query.fromExpressionString("//pageNumberDirective");
46
15
 
47
16
  export function headingHTMLNodesFromNode(node, headingHTMLNodes = []) {
48
17
  nodesFromNodeAndQuery(node, headingHTMLNodesQuery, headingHTMLNodes);
@@ -68,14 +37,37 @@ export function footnoteLinkHTMLNodesFromNode(node, footnoteLinkHTMLNodes = [])
68
37
  return footnoteLinkHTMLNodes;
69
38
  }
70
39
 
40
+ export function indexDirectiveHTMLNodeFromNode(node) {
41
+ const indexDirectiveHTMLNode = nodeFromNodeAndQuery(node, indexDirectiveHTMLNodeQuery);
42
+
43
+ return indexDirectiveHTMLNode;
44
+ }
45
+
46
+ export function contentsDirectiveHTMLNodeFromNode(node) {
47
+ const contentsDirectiveHTMLNode = nodeFromNodeAndQuery(node, contentsDirectiveHTMLNodeQuery);
48
+
49
+ return contentsDirectiveHTMLNode;
50
+ }
51
+
52
+ export function footnotesDirectiveHTMLNodeFromNode(node) {
53
+ const footnotesDirectiveHTMLNode = nodeFromNodeAndQuery(node, footnotesDirectiveHTMLNodeQuery);
54
+
55
+ return footnotesDirectiveHTMLNode;
56
+ }
57
+
58
+ export function pageNumberDirectiveHTMLNodeFromNode(node) {
59
+ const pageNumberDirectiveHTMLNode = nodeFromNodeAndQuery(node, pageNumberDirectiveHTMLNodeQuery);
60
+
61
+ return pageNumberDirectiveHTMLNode;
62
+ }
63
+
71
64
  export default {
72
- indexDirectiveHTMLNodeFromNode,
73
- contentsDirectiveHTMLNodeFromNode,
74
- footnotesDirectiveHTMLNodeFromNode,
75
- pageNumberDirectiveHTMLNodeFromNode,
76
- htmlNodesFromNode,
77
65
  headingHTMLNodesFromNode,
78
66
  divisionHTMLNodesFromNode,
79
67
  footnoteHTMLNodesFromNode,
80
- footnoteLinkHTMLNodesFromNode
68
+ footnoteLinkHTMLNodesFromNode,
69
+ indexDirectiveHTMLNodeFromNode,
70
+ contentsDirectiveHTMLNodeFromNode,
71
+ footnotesDirectiveHTMLNodeFromNode,
72
+ pageNumberDirectiveHTMLNodeFromNode
81
73
  };
@@ -48,7 +48,7 @@ function createIndexMap(indexDirectiveHTMLNode, divisionHTMLNodes, context) {
48
48
  const divisionHTMLNodeAncestorOfIndexDirectiveHTMLNode = isAncestorOf(divisionHTMLNode, indexDirectiveHTMLNode);
49
49
 
50
50
  if (!divisionHTMLNodeAncestorOfIndexDirectiveHTMLNode) {
51
- const pageNumber = divisionHTMLNode.pageNumber();
51
+ const pageNumber = divisionHTMLNode.pageNumber(context);
52
52
 
53
53
  if (pageNumber !== null) {
54
54
  const plainText = divisionHTMLNode.asPlainText(context),
@@ -1,121 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- function _export(target, all) {
6
- for(var name in all)Object.defineProperty(target, name, {
7
- enumerable: true,
8
- get: Object.getOwnPropertyDescriptor(all, name).get
9
- });
10
- }
11
- _export(exports, {
12
- get groupHTMLNodes () {
13
- return groupHTMLNodes;
14
- },
15
- get paginateGroupedHTMLNodes () {
16
- return paginateGroupedHTMLNodes;
17
- },
18
- get removeHTMLNodes () {
19
- return removeHTMLNodes;
20
- }
21
- });
22
- var _html = /*#__PURE__*/ _interop_require_default(require("../transform/html"));
23
- var _footnote = /*#__PURE__*/ _interop_require_default(require("../node/html/footnote"));
24
- var _html1 = require("../utilities/html");
25
- var _constants = require("../constants");
26
- function _array_like_to_array(arr, len) {
27
- if (len == null || len > arr.length) len = arr.length;
28
- for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
29
- return arr2;
30
- }
31
- function _array_without_holes(arr) {
32
- if (Array.isArray(arr)) return _array_like_to_array(arr);
33
- }
34
- function _instanceof(left, right) {
35
- if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
36
- return !!right[Symbol.hasInstance](left);
37
- } else {
38
- return left instanceof right;
39
- }
40
- }
41
- function _interop_require_default(obj) {
42
- return obj && obj.__esModule ? obj : {
43
- default: obj
44
- };
45
- }
46
- function _iterable_to_array(iter) {
47
- if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
48
- }
49
- function _non_iterable_spread() {
50
- throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
51
- }
52
- function _to_consumable_array(arr) {
53
- return _array_without_holes(arr) || _iterable_to_array(arr) || _unsupported_iterable_to_array(arr) || _non_iterable_spread();
54
- }
55
- function _unsupported_iterable_to_array(o, minLen) {
56
- if (!o) return;
57
- if (typeof o === "string") return _array_like_to_array(o, minLen);
58
- var n = Object.prototype.toString.call(o).slice(8, -1);
59
- if (n === "Object" && o.constructor) n = o.constructor.name;
60
- if (n === "Map" || n === "Set") return Array.from(n);
61
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
62
- }
63
- function groupHTMLNodes(htmlNodes) {
64
- var groupedHTMLNodesArray = [];
65
- var groupedHTMLNodes = [];
66
- htmlNodes.forEach(function(htmlNode) {
67
- var htmlNodeFootnoteHTMLNode = _instanceof(htmlNode, _footnote.default);
68
- if (!htmlNodeFootnoteHTMLNode) {
69
- var groupedHTMLNodeLength = groupedHTMLNodes.length;
70
- if (groupedHTMLNodeLength > 0) {
71
- groupedHTMLNodesArray.push(groupedHTMLNodes);
72
- groupedHTMLNodes = [];
73
- }
74
- }
75
- var groupedHTMLNode = htmlNode; ///
76
- groupedHTMLNodes.push(groupedHTMLNode);
77
- });
78
- var groupedHTMLNodeLength = groupedHTMLNodes.length;
79
- if (groupedHTMLNodeLength > 0) {
80
- groupedHTMLNodesArray.push(groupedHTMLNodes);
81
- }
82
- return groupedHTMLNodesArray;
83
- }
84
- function removeHTMLNodes(node) {
85
- var htmlNodes = (0, _html1.htmlNodesFromNode)(node);
86
- htmlNodes.forEach(function(htmlNode) {
87
- var htmlTransform = _html.default.fromHTMLNode(htmlNode);
88
- htmlTransform.remove();
89
- });
90
- return htmlNodes;
91
- }
92
- function paginateGroupedHTMLNodes(groupedHTMLNodesArray, context) {
93
- var paginatedHTMLNodesArray = [];
94
- var _context_maximumPageLines = context.maximumPageLines, maximumPageLines = _context_maximumPageLines === void 0 ? _constants.DEFAULT_MAXIMUM_PAGE_LINES : _context_maximumPageLines;
95
- var pageLines = 0, paginatedHTMLNodes = [];
96
- groupedHTMLNodesArray.forEach(function(groupedHTMLNodes) {
97
- var _paginatedHTMLNodes;
98
- var groupedLines = groupedHTMLNodes.reduce(function(groupedLines, groupedHTMLNode) {
99
- var lines = groupedHTMLNode.lines(context);
100
- groupedLines += lines;
101
- return groupedLines;
102
- }, 0);
103
- var paginatedHTMLNodesLength = paginatedHTMLNodes.length;
104
- if (paginatedHTMLNodesLength > 0) {
105
- if (pageLines + groupedLines > maximumPageLines) {
106
- paginatedHTMLNodesArray.push(paginatedHTMLNodes);
107
- pageLines = 0;
108
- paginatedHTMLNodes = [];
109
- }
110
- }
111
- (_paginatedHTMLNodes = paginatedHTMLNodes).push.apply(_paginatedHTMLNodes, _to_consumable_array(groupedHTMLNodes));
112
- pageLines += groupedLines;
113
- });
114
- var paginatedHTMLNodesLength = paginatedHTMLNodes.length;
115
- if (paginatedHTMLNodesLength > 0) {
116
- paginatedHTMLNodesArray.push(paginatedHTMLNodes);
117
- }
118
- return paginatedHTMLNodesArray;
119
- }
120
-
121
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvZGl2aXNpb24uanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBIVE1MVHJhbnNmb3JtIGZyb20gXCIuLi90cmFuc2Zvcm0vaHRtbFwiO1xuaW1wb3J0IEZvb3Rub3RlSFRNTE5vZGUgZnJvbSBcIi4uL25vZGUvaHRtbC9mb290bm90ZVwiO1xuXG5pbXBvcnQgeyBodG1sTm9kZXNGcm9tTm9kZSB9IGZyb20gXCIuLi91dGlsaXRpZXMvaHRtbFwiO1xuaW1wb3J0IHsgREVGQVVMVF9NQVhJTVVNX1BBR0VfTElORVMgfSBmcm9tIFwiLi4vY29uc3RhbnRzXCI7XG5cbmV4cG9ydCBmdW5jdGlvbiBncm91cEhUTUxOb2RlcyhodG1sTm9kZXMpIHtcbiAgY29uc3QgZ3JvdXBlZEhUTUxOb2Rlc0FycmF5ID0gW107XG5cbiAgbGV0IGdyb3VwZWRIVE1MTm9kZXMgPSBbXTtcblxuICBodG1sTm9kZXMuZm9yRWFjaCgoaHRtbE5vZGUpID0+IHtcbiAgICBjb25zdCBodG1sTm9kZUZvb3Rub3RlSFRNTE5vZGUgPSAoaHRtbE5vZGUgaW5zdGFuY2VvZiBGb290bm90ZUhUTUxOb2RlKTtcblxuICAgIGlmICghaHRtbE5vZGVGb290bm90ZUhUTUxOb2RlKSB7XG4gICAgICBjb25zdCBncm91cGVkSFRNTE5vZGVMZW5ndGggPSBncm91cGVkSFRNTE5vZGVzLmxlbmd0aDtcblxuICAgICAgaWYgKGdyb3VwZWRIVE1MTm9kZUxlbmd0aCA+IDApIHtcbiAgICAgICAgZ3JvdXBlZEhUTUxOb2Rlc0FycmF5LnB1c2goZ3JvdXBlZEhUTUxOb2Rlcyk7XG5cbiAgICAgICAgZ3JvdXBlZEhUTUxOb2RlcyA9IFtdO1xuICAgICAgfVxuICAgIH1cblxuICAgIGNvbnN0IGdyb3VwZWRIVE1MTm9kZSA9IGh0bWxOb2RlOyAvLy9cblxuICAgIGdyb3VwZWRIVE1MTm9kZXMucHVzaChncm91cGVkSFRNTE5vZGUpO1xuICB9KTtcblxuICBjb25zdCBncm91cGVkSFRNTE5vZGVMZW5ndGggPSBncm91cGVkSFRNTE5vZGVzLmxlbmd0aDtcblxuICBpZiAoZ3JvdXBlZEhUTUxOb2RlTGVuZ3RoID4gMCkge1xuICAgIGdyb3VwZWRIVE1MTm9kZXNBcnJheS5wdXNoKGdyb3VwZWRIVE1MTm9kZXMpO1xuICB9XG5cbiAgcmV0dXJuIGdyb3VwZWRIVE1MTm9kZXNBcnJheTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJlbW92ZUhUTUxOb2Rlcyhub2RlKSB7XG4gIGNvbnN0IGh0bWxOb2RlcyA9IGh0bWxOb2Rlc0Zyb21Ob2RlKG5vZGUpO1xuXG4gIGh0bWxOb2Rlcy5mb3JFYWNoKChodG1sTm9kZSkgPT4ge1xuICAgIGNvbnN0IGh0bWxUcmFuc2Zvcm0gPSBIVE1MVHJhbnNmb3JtLmZyb21IVE1MTm9kZShodG1sTm9kZSk7XG5cbiAgICBodG1sVHJhbnNmb3JtLnJlbW92ZSgpO1xuICB9KTtcblxuICByZXR1cm4gaHRtbE5vZGVzO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcGFnaW5hdGVHcm91cGVkSFRNTE5vZGVzKGdyb3VwZWRIVE1MTm9kZXNBcnJheSwgY29udGV4dCkge1xuICBjb25zdCBwYWdpbmF0ZWRIVE1MTm9kZXNBcnJheSA9IFtdO1xuXG4gIGNvbnN0IHsgbWF4aW11bVBhZ2VMaW5lcyA9IERFRkFVTFRfTUFYSU1VTV9QQUdFX0xJTkVTIH0gPSBjb250ZXh0O1xuXG4gIGxldCBwYWdlTGluZXMgPSAwLFxuICAgICAgcGFnaW5hdGVkSFRNTE5vZGVzID0gW107XG5cbiAgZ3JvdXBlZEhUTUxOb2Rlc0FycmF5LmZvckVhY2goKGdyb3VwZWRIVE1MTm9kZXMpID0+IHtcbiAgICBjb25zdCBncm91cGVkTGluZXMgPSBncm91cGVkSFRNTE5vZGVzLnJlZHVjZSgoZ3JvdXBlZExpbmVzLCBncm91cGVkSFRNTE5vZGUpID0+IHtcbiAgICAgIGNvbnN0IGxpbmVzID0gZ3JvdXBlZEhUTUxOb2RlLmxpbmVzKGNvbnRleHQpO1xuXG4gICAgICBncm91cGVkTGluZXMgKz0gbGluZXM7XG5cbiAgICAgIHJldHVybiBncm91cGVkTGluZXM7XG4gICAgfSwgMCk7XG5cbiAgICBjb25zdCBwYWdpbmF0ZWRIVE1MTm9kZXNMZW5ndGggPSBwYWdpbmF0ZWRIVE1MTm9kZXMubGVuZ3RoO1xuXG4gICAgaWYgKHBhZ2luYXRlZEhUTUxOb2Rlc0xlbmd0aCA+IDApIHtcbiAgICAgIGlmIChwYWdlTGluZXMgKyBncm91cGVkTGluZXMgPiBtYXhpbXVtUGFnZUxpbmVzKSB7XG4gICAgICAgIHBhZ2luYXRlZEhUTUxOb2Rlc0FycmF5LnB1c2gocGFnaW5hdGVkSFRNTE5vZGVzKTtcblxuICAgICAgICBwYWdlTGluZXMgPSAwO1xuXG4gICAgICAgIHBhZ2luYXRlZEhUTUxOb2RlcyA9IFtdO1xuICAgICAgfVxuICAgIH1cblxuICAgIHBhZ2luYXRlZEhUTUxOb2Rlcy5wdXNoKC4uLmdyb3VwZWRIVE1MTm9kZXMpO1xuXG4gICAgcGFnZUxpbmVzICs9IGdyb3VwZWRMaW5lcztcbiAgfSk7XG5cbiAgY29uc3QgcGFnaW5hdGVkSFRNTE5vZGVzTGVuZ3RoID0gcGFnaW5hdGVkSFRNTE5vZGVzLmxlbmd0aDtcblxuICBpZiAocGFnaW5hdGVkSFRNTE5vZGVzTGVuZ3RoID4gMCkge1xuICAgIHBhZ2luYXRlZEhUTUxOb2Rlc0FycmF5LnB1c2gocGFnaW5hdGVkSFRNTE5vZGVzKTtcbiAgfVxuXG4gIHJldHVybiBwYWdpbmF0ZWRIVE1MTm9kZXNBcnJheTtcbn1cbiJdLCJuYW1lcyI6WyJncm91cEhUTUxOb2RlcyIsInBhZ2luYXRlR3JvdXBlZEhUTUxOb2RlcyIsInJlbW92ZUhUTUxOb2RlcyIsImh0bWxOb2RlcyIsImdyb3VwZWRIVE1MTm9kZXNBcnJheSIsImdyb3VwZWRIVE1MTm9kZXMiLCJmb3JFYWNoIiwiaHRtbE5vZGUiLCJodG1sTm9kZUZvb3Rub3RlSFRNTE5vZGUiLCJGb290bm90ZUhUTUxOb2RlIiwiZ3JvdXBlZEhUTUxOb2RlTGVuZ3RoIiwibGVuZ3RoIiwicHVzaCIsImdyb3VwZWRIVE1MTm9kZSIsIm5vZGUiLCJodG1sTm9kZXNGcm9tTm9kZSIsImh0bWxUcmFuc2Zvcm0iLCJIVE1MVHJhbnNmb3JtIiwiZnJvbUhUTUxOb2RlIiwicmVtb3ZlIiwiY29udGV4dCIsInBhZ2luYXRlZEhUTUxOb2Rlc0FycmF5IiwibWF4aW11bVBhZ2VMaW5lcyIsIkRFRkFVTFRfTUFYSU1VTV9QQUdFX0xJTkVTIiwicGFnZUxpbmVzIiwicGFnaW5hdGVkSFRNTE5vZGVzIiwiZ3JvdXBlZExpbmVzIiwicmVkdWNlIiwibGluZXMiLCJwYWdpbmF0ZWRIVE1MTm9kZXNMZW5ndGgiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7OztRQVFnQkE7ZUFBQUE7O1FBNENBQztlQUFBQTs7UUFaQUM7ZUFBQUE7OzsyREF0Q1U7K0RBQ0c7cUJBRUs7eUJBQ1M7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRXBDLFNBQVNGLGVBQWVHLFNBQVM7SUFDdEMsSUFBTUMsd0JBQXdCLEVBQUU7SUFFaEMsSUFBSUMsbUJBQW1CLEVBQUU7SUFFekJGLFVBQVVHLE9BQU8sQ0FBQyxTQUFDQztRQUNqQixJQUFNQywyQkFBNEJELEFBQVEsWUFBUkEsVUFBb0JFLGlCQUFnQjtRQUV0RSxJQUFJLENBQUNELDBCQUEwQjtZQUM3QixJQUFNRSx3QkFBd0JMLGlCQUFpQk0sTUFBTTtZQUVyRCxJQUFJRCx3QkFBd0IsR0FBRztnQkFDN0JOLHNCQUFzQlEsSUFBSSxDQUFDUDtnQkFFM0JBLG1CQUFtQixFQUFFO1lBQ3ZCO1FBQ0Y7UUFFQSxJQUFNUSxrQkFBa0JOLFVBQVUsR0FBRztRQUVyQ0YsaUJBQWlCTyxJQUFJLENBQUNDO0lBQ3hCO0lBRUEsSUFBTUgsd0JBQXdCTCxpQkFBaUJNLE1BQU07SUFFckQsSUFBSUQsd0JBQXdCLEdBQUc7UUFDN0JOLHNCQUFzQlEsSUFBSSxDQUFDUDtJQUM3QjtJQUVBLE9BQU9EO0FBQ1Q7QUFFTyxTQUFTRixnQkFBZ0JZLElBQUk7SUFDbEMsSUFBTVgsWUFBWVksSUFBQUEsd0JBQWlCLEVBQUNEO0lBRXBDWCxVQUFVRyxPQUFPLENBQUMsU0FBQ0M7UUFDakIsSUFBTVMsZ0JBQWdCQyxhQUFhLENBQUNDLFlBQVksQ0FBQ1g7UUFFakRTLGNBQWNHLE1BQU07SUFDdEI7SUFFQSxPQUFPaEI7QUFDVDtBQUVPLFNBQVNGLHlCQUF5QkcscUJBQXFCLEVBQUVnQixPQUFPO0lBQ3JFLElBQU1DLDBCQUEwQixFQUFFO0lBRWxDLGdDQUEwREQsUUFBbERFLGtCQUFBQSwwREFBbUJDLHFDQUEwQjtJQUVyRCxJQUFJQyxZQUFZLEdBQ1pDLHFCQUFxQixFQUFFO0lBRTNCckIsc0JBQXNCRSxPQUFPLENBQUMsU0FBQ0Q7WUFxQjdCb0I7UUFwQkEsSUFBTUMsZUFBZXJCLGlCQUFpQnNCLE1BQU0sQ0FBQyxTQUFDRCxjQUFjYjtZQUMxRCxJQUFNZSxRQUFRZixnQkFBZ0JlLEtBQUssQ0FBQ1I7WUFFcENNLGdCQUFnQkU7WUFFaEIsT0FBT0Y7UUFDVCxHQUFHO1FBRUgsSUFBTUcsMkJBQTJCSixtQkFBbUJkLE1BQU07UUFFMUQsSUFBSWtCLDJCQUEyQixHQUFHO1lBQ2hDLElBQUlMLFlBQVlFLGVBQWVKLGtCQUFrQjtnQkFDL0NELHdCQUF3QlQsSUFBSSxDQUFDYTtnQkFFN0JELFlBQVk7Z0JBRVpDLHFCQUFxQixFQUFFO1lBQ3pCO1FBQ0Y7UUFFQUEsQ0FBQUEsc0JBQUFBLG9CQUFtQmIsSUFBSSxPQUF2QmEscUJBQXdCLHFCQUFHcEI7UUFFM0JtQixhQUFhRTtJQUNmO0lBRUEsSUFBTUcsMkJBQTJCSixtQkFBbUJkLE1BQU07SUFFMUQsSUFBSWtCLDJCQUEyQixHQUFHO1FBQ2hDUix3QkFBd0JULElBQUksQ0FBQ2E7SUFDL0I7SUFFQSxPQUFPSjtBQUNUIn0=
@@ -1,94 +0,0 @@
1
- "use strict";
2
-
3
- import HTMLTransform from "../transform/html";
4
- import FootnoteHTMLNode from "../node/html/footnote";
5
-
6
- import { htmlNodesFromNode } from "../utilities/html";
7
- import { DEFAULT_MAXIMUM_PAGE_LINES } from "../constants";
8
-
9
- export function groupHTMLNodes(htmlNodes) {
10
- const groupedHTMLNodesArray = [];
11
-
12
- let groupedHTMLNodes = [];
13
-
14
- htmlNodes.forEach((htmlNode) => {
15
- const htmlNodeFootnoteHTMLNode = (htmlNode instanceof FootnoteHTMLNode);
16
-
17
- if (!htmlNodeFootnoteHTMLNode) {
18
- const groupedHTMLNodeLength = groupedHTMLNodes.length;
19
-
20
- if (groupedHTMLNodeLength > 0) {
21
- groupedHTMLNodesArray.push(groupedHTMLNodes);
22
-
23
- groupedHTMLNodes = [];
24
- }
25
- }
26
-
27
- const groupedHTMLNode = htmlNode; ///
28
-
29
- groupedHTMLNodes.push(groupedHTMLNode);
30
- });
31
-
32
- const groupedHTMLNodeLength = groupedHTMLNodes.length;
33
-
34
- if (groupedHTMLNodeLength > 0) {
35
- groupedHTMLNodesArray.push(groupedHTMLNodes);
36
- }
37
-
38
- return groupedHTMLNodesArray;
39
- }
40
-
41
- export function removeHTMLNodes(node) {
42
- const htmlNodes = htmlNodesFromNode(node);
43
-
44
- htmlNodes.forEach((htmlNode) => {
45
- const htmlTransform = HTMLTransform.fromHTMLNode(htmlNode);
46
-
47
- htmlTransform.remove();
48
- });
49
-
50
- return htmlNodes;
51
- }
52
-
53
- export function paginateGroupedHTMLNodes(groupedHTMLNodesArray, context) {
54
- const paginatedHTMLNodesArray = [];
55
-
56
- const { maximumPageLines = DEFAULT_MAXIMUM_PAGE_LINES } = context;
57
-
58
- let pageLines = 0,
59
- paginatedHTMLNodes = [];
60
-
61
- groupedHTMLNodesArray.forEach((groupedHTMLNodes) => {
62
- const groupedLines = groupedHTMLNodes.reduce((groupedLines, groupedHTMLNode) => {
63
- const lines = groupedHTMLNode.lines(context);
64
-
65
- groupedLines += lines;
66
-
67
- return groupedLines;
68
- }, 0);
69
-
70
- const paginatedHTMLNodesLength = paginatedHTMLNodes.length;
71
-
72
- if (paginatedHTMLNodesLength > 0) {
73
- if (pageLines + groupedLines > maximumPageLines) {
74
- paginatedHTMLNodesArray.push(paginatedHTMLNodes);
75
-
76
- pageLines = 0;
77
-
78
- paginatedHTMLNodes = [];
79
- }
80
- }
81
-
82
- paginatedHTMLNodes.push(...groupedHTMLNodes);
83
-
84
- pageLines += groupedLines;
85
- });
86
-
87
- const paginatedHTMLNodesLength = paginatedHTMLNodes.length;
88
-
89
- if (paginatedHTMLNodesLength > 0) {
90
- paginatedHTMLNodesArray.push(paginatedHTMLNodes);
91
- }
92
-
93
- return paginatedHTMLNodesArray;
94
- }