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.
Files changed (377) hide show
  1. package/README.md +1 -1
  2. package/example.js +14061 -13787
  3. package/lib/example/importer.js +5 -5
  4. package/lib/example/view/div/container/markdown.js +3 -3
  5. package/lib/example/view/div/preview.js +5 -1
  6. package/lib/example/view/textarea/parseTree/{markdown/outer.js → html.js} +17 -17
  7. package/lib/example/view/textarea/parseTree/markdown.js +49 -2
  8. package/lib/example/view/textarea/plainText.js +7 -2
  9. package/lib/example/view/xmp.js +7 -2
  10. package/lib/example/view.js +67 -104
  11. package/lib/index/match.js +6 -6
  12. package/lib/index.js +27 -15
  13. package/lib/map/className.js +60 -0
  14. package/lib/map/node/html.js +85 -0
  15. package/lib/map/node/markdown.js +73 -0
  16. package/lib/map/tagName.js +60 -0
  17. package/lib/markdown/bnf.js +2 -2
  18. package/lib/markdown/parser.js +10 -9
  19. package/lib/markdownStyle/entries.js +3 -3
  20. package/lib/mixins/node.js +24 -23
  21. package/lib/node/html/anchor.js +55 -11
  22. package/lib/node/html/blockLine.js +75 -9
  23. package/lib/node/html/division.js +135 -0
  24. package/lib/node/html/error.js +195 -0
  25. package/lib/node/html/{blockListingEnd.js → footnote.js} +20 -14
  26. package/lib/node/html/heading/index.js +128 -0
  27. package/lib/node/html/heading/primary.js +129 -0
  28. package/lib/node/{markdown/directive.js → html/heading/quaternary.js} +21 -21
  29. package/lib/node/html/heading/secondary.js +129 -0
  30. package/lib/node/html/heading/tertiary.js +129 -0
  31. package/lib/node/html/image.js +214 -0
  32. package/lib/node/html/indexList.js +128 -0
  33. package/lib/node/html/item/contents.js +128 -0
  34. package/lib/node/html/item/footnotes.js +128 -0
  35. package/lib/node/{markdown/indexItem.js → html/item/index.js} +36 -15
  36. package/lib/node/html/item/ordered.js +17 -2
  37. package/lib/node/html/item/unordered.js +128 -0
  38. package/lib/node/html/line.js +174 -0
  39. package/lib/node/html/{contentsLink.js → link/contents.js} +19 -4
  40. package/lib/node/html/link/email.js +229 -0
  41. package/lib/node/html/link/footnote.js +137 -0
  42. package/lib/node/html/link/hyper.js +229 -0
  43. package/lib/node/html/link/index.js +202 -0
  44. package/lib/node/html/list/contents.js +128 -0
  45. package/lib/node/html/list/footnotes.js +144 -0
  46. package/lib/node/html/list/ordered.js +128 -0
  47. package/lib/node/html/list/unordered.js +128 -0
  48. package/lib/node/html/{blockListing.js → listing/block.js} +18 -9
  49. package/lib/node/html/listing/inline.js +189 -0
  50. package/lib/node/html/pageNumber.js +170 -0
  51. package/lib/node/html/{className.js → paragraph.js} +26 -18
  52. package/lib/node/{markdown/nonsense.js → html/table.js} +22 -15
  53. package/lib/node/{markdown/blockListingEnd.js → html/tableBody.js} +22 -15
  54. package/lib/node/html/tableBodyCell.js +128 -0
  55. package/lib/node/html/tableBodyRow.js +128 -0
  56. package/lib/node/html/{blockListingStart.js → tableHead.js} +26 -18
  57. package/lib/node/html/tableHeadCell.js +128 -0
  58. package/lib/node/html/tableHeadRow.js +128 -0
  59. package/lib/node/html/text/block.js +128 -0
  60. package/lib/node/html/text/emphasised.js +128 -0
  61. package/lib/node/html/text/inline.js +196 -0
  62. package/lib/node/html/text/plain.js +128 -0
  63. package/lib/node/html/text/strong.js +128 -0
  64. package/lib/node/html/text/stronglyEmphasised.js +212 -0
  65. package/lib/node/html/text.js +141 -0
  66. package/lib/node/html/topmost.js +57 -10
  67. package/lib/node/html.js +130 -40
  68. package/lib/node/markdown/anchor.js +6 -22
  69. package/lib/node/markdown/{table.js → blockEnd.js} +10 -10
  70. package/lib/node/markdown/blockListing.js +4 -31
  71. package/lib/node/markdown/{blockListingStart.js → blockStart.js} +10 -24
  72. package/lib/node/markdown/className.js +2 -2
  73. package/lib/node/markdown/contentsItem.js +4 -4
  74. package/lib/node/markdown/contentsList.js +2 -10
  75. package/lib/node/markdown/directive/embee.js +13 -13
  76. package/lib/node/markdown/directive/include.js +13 -13
  77. package/lib/node/markdown/directive/pageNumber.js +13 -29
  78. package/lib/node/markdown/division.js +205 -254
  79. package/lib/node/markdown/emailLink.js +36 -98
  80. package/lib/node/markdown/emphasisedText.js +3 -54
  81. package/lib/node/markdown/error.js +9 -53
  82. package/lib/node/markdown/footnote.js +1 -15
  83. package/lib/node/markdown/footnoteLink.js +9 -32
  84. package/lib/node/markdown/footnotesList.js +1 -16
  85. package/lib/node/markdown/heading/primary.js +1 -2
  86. package/lib/node/markdown/heading/quaternary.js +1 -2
  87. package/lib/node/markdown/heading/secondary.js +1 -2
  88. package/lib/node/markdown/heading/tertiary.js +1 -2
  89. package/lib/node/markdown/heading.js +1 -13
  90. package/lib/node/markdown/hyperlink.js +44 -108
  91. package/lib/node/markdown/image.js +2 -63
  92. package/lib/node/markdown/indexLink.js +13 -87
  93. package/lib/node/markdown/indexList.js +2 -10
  94. package/lib/node/markdown/inlineListing.js +22 -56
  95. package/lib/node/markdown/inlineText.js +3 -21
  96. package/lib/node/markdown/item/ordered.js +6 -6
  97. package/lib/node/markdown/line.js +1 -74
  98. package/lib/node/markdown/path.js +7 -7
  99. package/lib/node/markdown/strongText.js +3 -54
  100. package/lib/node/markdown/stronglyEmphasisedText.js +3 -78
  101. package/lib/node/markdown/{tableCellDivider.js → text/block.js} +12 -12
  102. package/lib/node/markdown/{tableBody.js → text/plain.js} +12 -12
  103. package/lib/node/markdown/text.js +154 -0
  104. package/lib/node/markdown/topmost.js +191 -0
  105. package/lib/node/markdown.js +6 -229
  106. package/lib/queries.js +4 -45
  107. package/lib/ruleNames.js +34 -21
  108. package/lib/style/selector.js +11 -7
  109. package/lib/transform/contentsItem.js +134 -0
  110. package/lib/transform/contentsLink.js +115 -0
  111. package/lib/transform/contentsList.js +194 -0
  112. package/lib/{replacement/subDivision.js → transform/division.js} +33 -38
  113. package/lib/{replacement → transform}/embedDirective.js +14 -19
  114. package/lib/{replacement → transform}/footnote.js +18 -23
  115. package/lib/transform/footnotesItem.js +123 -0
  116. package/lib/transform/footnotesList.js +173 -0
  117. package/lib/{replacement → transform}/includeDirective.js +13 -18
  118. package/lib/transform/index.js +166 -0
  119. package/lib/{replacement → transform}/indexAnchor.js +13 -13
  120. package/lib/{replacement → transform}/indexHeading.js +13 -18
  121. package/lib/{replacement → transform}/indexItem.js +13 -18
  122. package/lib/transform/indexList.js +121 -0
  123. package/lib/{replacement → transform}/line.js +13 -18
  124. package/lib/{replacement → transform}/subDivision/contentsDirective.js +14 -14
  125. package/lib/transform/subDivision/embedDirectives.js +147 -0
  126. package/lib/{replacement → transform}/subDivision/footnote.js +14 -14
  127. package/lib/{replacement → transform}/subDivision/footnotesDirective.js +14 -14
  128. package/lib/transform/subDivision/includeDirectives.js +142 -0
  129. package/lib/{replacement → transform}/subDivision/indexDirective.js +14 -14
  130. package/lib/{replacement → transform}/subDivision/pageNumberDirective.js +14 -14
  131. package/lib/utilities/content.js +1 -61
  132. package/lib/utilities/entities.js +17 -0
  133. package/lib/utilities/entries.js +6 -6
  134. package/lib/utilities/html.js +67 -9
  135. package/lib/utilities/markdown.js +45 -0
  136. package/lib/utilities/parser.js +8 -2
  137. package/lib/utilities/query.js +2 -22
  138. package/package.json +2 -2
  139. package/src/example/importer.js +2 -4
  140. package/src/example/view/div/container/markdown.js +2 -2
  141. package/src/example/view/div/preview.js +6 -0
  142. package/src/example/view/textarea/parseTree/html.js +28 -0
  143. package/src/example/view/textarea/parseTree/markdown.js +19 -1
  144. package/src/example/view/textarea/plainText.js +9 -1
  145. package/src/example/view/xmp.js +9 -1
  146. package/src/example/view.js +84 -91
  147. package/src/index/match.js +6 -6
  148. package/src/index.js +6 -3
  149. package/src/map/className.js +16 -0
  150. package/src/map/node/html.js +136 -0
  151. package/src/map/node/markdown.js +125 -0
  152. package/src/map/tagName.js +16 -0
  153. package/src/markdown/bnf.js +85 -64
  154. package/src/markdown/parser.js +3 -1
  155. package/src/markdownStyle/entries.js +3 -3
  156. package/src/mixins/node.js +29 -34
  157. package/src/node/html/anchor.js +26 -5
  158. package/src/node/html/blockLine.js +58 -7
  159. package/src/node/html/division.js +15 -0
  160. package/src/node/html/error.js +64 -0
  161. package/src/node/html/footnote.js +17 -0
  162. package/src/node/html/heading/index.js +13 -0
  163. package/src/node/html/heading/primary.js +15 -0
  164. package/src/node/html/heading/quaternary.js +15 -0
  165. package/src/node/html/heading/secondary.js +15 -0
  166. package/src/node/html/heading/tertiary.js +15 -0
  167. package/src/node/html/image.js +107 -0
  168. package/src/node/html/indexList.js +13 -0
  169. package/src/node/html/item/contents.js +13 -0
  170. package/src/node/html/item/footnotes.js +13 -0
  171. package/src/node/{markdown/indexItem.js → html/item/index.js} +9 -3
  172. package/src/node/html/item/ordered.js +5 -1
  173. package/src/node/html/item/unordered.js +13 -0
  174. package/src/node/html/line.js +64 -0
  175. package/src/node/html/{contentsLink.js → link/contents.js} +7 -3
  176. package/src/node/html/link/email.js +96 -0
  177. package/src/node/html/link/footnote.js +33 -0
  178. package/src/node/html/link/hyper.js +96 -0
  179. package/src/node/html/link/index.js +72 -0
  180. package/src/node/html/list/contents.js +13 -0
  181. package/src/node/html/list/footnotes.js +27 -0
  182. package/src/node/html/list/ordered.js +13 -0
  183. package/src/node/html/list/unordered.js +13 -0
  184. package/src/node/html/{blockListing.js → listing/block.js} +5 -8
  185. package/src/node/html/listing/inline.js +61 -0
  186. package/src/node/html/pageNumber.js +46 -0
  187. package/src/node/html/paragraph.js +13 -0
  188. package/src/node/html/table.js +13 -0
  189. package/src/node/html/tableBody.js +13 -0
  190. package/src/node/html/tableBodyCell.js +13 -0
  191. package/src/node/html/tableBodyRow.js +13 -0
  192. package/src/node/html/tableHead.js +13 -0
  193. package/src/node/html/tableHeadCell.js +13 -0
  194. package/src/node/html/tableHeadRow.js +13 -0
  195. package/src/node/html/text/block.js +13 -0
  196. package/src/node/html/text/emphasised.js +13 -0
  197. package/src/node/html/text/inline.js +57 -0
  198. package/src/node/html/text/plain.js +13 -0
  199. package/src/node/html/text/strong.js +13 -0
  200. package/src/node/html/text/stronglyEmphasised.js +98 -0
  201. package/src/node/html/text.js +34 -0
  202. package/src/node/html/topmost.js +57 -8
  203. package/src/node/html.js +136 -53
  204. package/src/node/markdown/anchor.js +5 -25
  205. package/src/node/markdown/{table.js → blockEnd.js} +2 -2
  206. package/src/node/markdown/blockListing.js +4 -10
  207. package/src/node/markdown/{blockListingStart.js → blockStart.js} +4 -6
  208. package/src/node/markdown/className.js +2 -2
  209. package/src/node/markdown/contentsItem.js +4 -4
  210. package/src/node/markdown/contentsList.js +0 -6
  211. package/src/node/markdown/directive/embee.js +10 -10
  212. package/src/node/markdown/directive/include.js +10 -10
  213. package/src/node/markdown/directive/pageNumber.js +10 -29
  214. package/src/node/markdown/division.js +203 -260
  215. package/src/node/markdown/emailLink.js +41 -87
  216. package/src/node/markdown/emphasisedText.js +1 -40
  217. package/src/node/markdown/error.js +9 -40
  218. package/src/node/markdown/footnote.js +0 -12
  219. package/src/node/markdown/footnoteLink.js +8 -31
  220. package/src/node/markdown/footnotesList.js +0 -13
  221. package/src/node/markdown/heading/primary.js +0 -2
  222. package/src/node/markdown/heading/quaternary.js +0 -2
  223. package/src/node/markdown/heading/secondary.js +0 -2
  224. package/src/node/markdown/heading/tertiary.js +0 -2
  225. package/src/node/markdown/heading.js +0 -14
  226. package/src/node/markdown/hyperlink.js +41 -91
  227. package/src/node/markdown/image.js +1 -82
  228. package/src/node/markdown/indexLink.js +10 -69
  229. package/src/node/markdown/indexList.js +0 -6
  230. package/src/node/markdown/inlineListing.js +20 -40
  231. package/src/node/markdown/inlineText.js +1 -21
  232. package/src/node/markdown/item/ordered.js +3 -3
  233. package/src/node/markdown/line.js +0 -61
  234. package/src/node/markdown/path.js +5 -5
  235. package/src/node/markdown/strongText.js +1 -40
  236. package/src/node/markdown/stronglyEmphasisedText.js +1 -74
  237. package/src/node/markdown/text/block.js +7 -0
  238. package/src/node/markdown/text/plain.js +7 -0
  239. package/src/node/markdown/text.js +80 -0
  240. package/src/node/markdown/topmost.js +91 -0
  241. package/src/node/markdown.js +1 -200
  242. package/src/queries.js +6 -86
  243. package/src/ruleNames.js +16 -12
  244. package/src/style/selector.js +16 -10
  245. package/src/transform/contentsItem.js +55 -0
  246. package/src/{replacement → transform}/contentsLink.js +10 -9
  247. package/src/{replacement → transform}/contentsList.js +26 -26
  248. package/src/transform/division.js +41 -0
  249. package/src/{replacement → transform}/embedDirective.js +4 -4
  250. package/src/{replacement → transform}/footnote.js +7 -7
  251. package/src/transform/footnotesItem.js +25 -0
  252. package/src/transform/footnotesList.js +79 -0
  253. package/src/{replacement → transform}/includeDirective.js +4 -4
  254. package/src/transform/index.js +90 -0
  255. package/src/{replacement → transform}/indexAnchor.js +5 -4
  256. package/src/{replacement → transform}/indexHeading.js +4 -4
  257. package/src/{replacement → transform}/indexItem.js +4 -4
  258. package/src/transform/indexList.js +33 -0
  259. package/src/{replacement → transform}/line.js +4 -4
  260. package/src/transform/subDivision/contentsDirective.js +20 -0
  261. package/src/transform/subDivision/embedDirectives.js +52 -0
  262. package/src/{replacement → transform}/subDivision/footnote.js +5 -5
  263. package/src/transform/subDivision/footnotesDirective.js +20 -0
  264. package/src/transform/subDivision/includeDirectives.js +48 -0
  265. package/src/transform/subDivision/indexDirective.js +20 -0
  266. package/src/transform/subDivision/pageNumberDirective.js +20 -0
  267. package/src/utilities/content.js +0 -95
  268. package/src/utilities/entities.js +11 -0
  269. package/src/utilities/entries.js +3 -3
  270. package/src/utilities/html.js +69 -6
  271. package/src/utilities/markdown.js +32 -0
  272. package/src/utilities/parser.js +3 -2
  273. package/src/utilities/query.js +8 -28
  274. package/lib/classFromOuterNode.js +0 -30
  275. package/lib/elementMap.js +0 -218
  276. package/lib/example/view/textarea/parseTree/markdown/inner.js +0 -179
  277. package/lib/mixins/content.js +0 -21
  278. package/lib/mixins/element.js +0 -32
  279. package/lib/node/html/comma.js +0 -127
  280. package/lib/node/html/directive/pageNumber.js +0 -178
  281. package/lib/node/markdown/blockLine.js +0 -207
  282. package/lib/node/markdown/comma.js +0 -123
  283. package/lib/node/markdown/directive/contents.js +0 -107
  284. package/lib/node/markdown/directive/footnotes.js +0 -107
  285. package/lib/node/markdown/directive/ignore.js +0 -107
  286. package/lib/node/markdown/directive/index.js +0 -107
  287. package/lib/node/markdown/directives.js +0 -125
  288. package/lib/node/markdown/emptyTableCell.js +0 -122
  289. package/lib/node/markdown/endOfLine.js +0 -151
  290. package/lib/node/markdown/indexHeading.js +0 -107
  291. package/lib/node/markdown/item/unordered.js +0 -107
  292. package/lib/node/markdown/item.js +0 -107
  293. package/lib/node/markdown/orderedList.js +0 -107
  294. package/lib/node/markdown/plainText.js +0 -115
  295. package/lib/node/markdown/subDivision.js +0 -161
  296. package/lib/node/markdown/tableBodyCell.js +0 -128
  297. package/lib/node/markdown/tableBodyRow.js +0 -107
  298. package/lib/node/markdown/tableCell.js +0 -118
  299. package/lib/node/markdown/tableDivider.js +0 -107
  300. package/lib/node/markdown/tableHead.js +0 -107
  301. package/lib/node/markdown/tableHeadCell.js +0 -128
  302. package/lib/node/markdown/tableHeadRow.js +0 -107
  303. package/lib/node/markdown/unorderedList.js +0 -107
  304. package/lib/node/markdown/verticalSpace.js +0 -151
  305. package/lib/nodeMap.js +0 -98
  306. package/lib/replacement/contentsItem.js +0 -134
  307. package/lib/replacement/contentsLink.js +0 -115
  308. package/lib/replacement/contentsList.js +0 -194
  309. package/lib/replacement/footnotesItem.js +0 -123
  310. package/lib/replacement/footnotesList.js +0 -173
  311. package/lib/replacement/index.js +0 -166
  312. package/lib/replacement/indexList.js +0 -121
  313. package/lib/replacement/subDivision/embedDirectives.js +0 -143
  314. package/lib/replacement/subDivision/includeDirectives.js +0 -175
  315. package/lib/replacement.js +0 -262
  316. package/lib/ruleNameToClassMap.js +0 -44
  317. package/lib/utilities/childNodes.js +0 -127
  318. package/lib/utilities/processing.js +0 -106
  319. package/lib/utilities/replacement.js +0 -195
  320. package/src/classFromOuterNode.js +0 -20
  321. package/src/elementMap.js +0 -322
  322. package/src/example/view/textarea/parseTree/markdown/inner.js +0 -36
  323. package/src/example/view/textarea/parseTree/markdown/outer.js +0 -27
  324. package/src/mixins/content.js +0 -16
  325. package/src/mixins/element.js +0 -29
  326. package/src/node/html/blockListingEnd.js +0 -11
  327. package/src/node/html/blockListingStart.js +0 -11
  328. package/src/node/html/className.js +0 -11
  329. package/src/node/html/comma.js +0 -18
  330. package/src/node/html/directive/pageNumber.js +0 -55
  331. package/src/node/markdown/blockLine.js +0 -90
  332. package/src/node/markdown/blockListingEnd.js +0 -9
  333. package/src/node/markdown/comma.js +0 -23
  334. package/src/node/markdown/directive/contents.js +0 -7
  335. package/src/node/markdown/directive/footnotes.js +0 -7
  336. package/src/node/markdown/directive/ignore.js +0 -7
  337. package/src/node/markdown/directive/index.js +0 -7
  338. package/src/node/markdown/directive.js +0 -15
  339. package/src/node/markdown/directives.js +0 -25
  340. package/src/node/markdown/emptyTableCell.js +0 -19
  341. package/src/node/markdown/endOfLine.js +0 -39
  342. package/src/node/markdown/indexHeading.js +0 -7
  343. package/src/node/markdown/item/unordered.js +0 -7
  344. package/src/node/markdown/item.js +0 -7
  345. package/src/node/markdown/nonsense.js +0 -9
  346. package/src/node/markdown/orderedList.js +0 -7
  347. package/src/node/markdown/plainText.js +0 -13
  348. package/src/node/markdown/subDivision.js +0 -64
  349. package/src/node/markdown/tableBody.js +0 -7
  350. package/src/node/markdown/tableBodyCell.js +0 -29
  351. package/src/node/markdown/tableBodyRow.js +0 -7
  352. package/src/node/markdown/tableCell.js +0 -19
  353. package/src/node/markdown/tableCellDivider.js +0 -7
  354. package/src/node/markdown/tableDivider.js +0 -7
  355. package/src/node/markdown/tableHead.js +0 -7
  356. package/src/node/markdown/tableHeadCell.js +0 -29
  357. package/src/node/markdown/tableHeadRow.js +0 -7
  358. package/src/node/markdown/unorderedList.js +0 -7
  359. package/src/node/markdown/verticalSpace.js +0 -39
  360. package/src/nodeMap.js +0 -200
  361. package/src/replacement/contentsItem.js +0 -54
  362. package/src/replacement/footnotesItem.js +0 -24
  363. package/src/replacement/footnotesList.js +0 -78
  364. package/src/replacement/index.js +0 -89
  365. package/src/replacement/indexList.js +0 -32
  366. package/src/replacement/subDivision/contentsDirective.js +0 -20
  367. package/src/replacement/subDivision/embedDirectives.js +0 -52
  368. package/src/replacement/subDivision/footnotesDirective.js +0 -20
  369. package/src/replacement/subDivision/includeDirectives.js +0 -58
  370. package/src/replacement/subDivision/indexDirective.js +0 -20
  371. package/src/replacement/subDivision/pageNumberDirective.js +0 -20
  372. package/src/replacement/subDivision.js +0 -41
  373. package/src/replacement.js +0 -185
  374. package/src/ruleNameToClassMap.js +0 -38
  375. package/src/utilities/childNodes.js +0 -178
  376. package/src/utilities/processing.js +0 -122
  377. package/src/utilities/replacement.js +0 -169
@@ -3,18 +3,19 @@
3
3
  import { arrayUtilities } from "necessary";
4
4
 
5
5
  import MarkdownNode from "../../node/markdown";
6
- import IndexReplacement from "../../replacement/index";
7
- import FootnoteReplacement from "../../replacement/footnote";
8
- import IndexAnchorReplacement from "../../replacement/indexAnchor";
9
- import ContentsListReplacement from "../../replacement/contentsList";
10
- import FootnotesListReplacement from "../../replacement/footnotesList";
11
- import FootnoteSubDivisionReplacement from "../../replacement/subDivision/footnote";
12
- import IndexDirectiveSubDivisionReplacement from "../../replacement/subDivision/indexDirective";
13
- import ContentsDirectiveSubDivisionReplacement from "../../replacement/subDivision/contentsDirective";
14
- import FootnotesDirectiveSubDivisionReplacement from "../../replacement/subDivision/footnotesDirective";
15
- import PageNumberDirectiveSubDivisionReplacement from "../../replacement/subDivision/pageNumberDirective";
16
-
17
- import { EMPTY_STRING } from "../../constants";
6
+ import IndexTransform from "../../transform/index";
7
+ import FootnoteTransform from "../../transform/footnote";
8
+ import IndexAnchorTransform from "../../transform/indexAnchor";
9
+ import ContentsListTransform from "../../transform/contentsList";
10
+ import FootnotesListTransform from "../../transform/footnotesList";
11
+ import FootnoteDivisionTransform from "../../transform/subDivision/footnote";
12
+ import EmbedDirectivesDivisionTransform from "../../transform/subDivision/embedDirectives";
13
+ import IncludeDirectivesDivisionTransform from "../../transform/subDivision/includeDirectives";
14
+ import IndexDirectiveDivisionTransform from "../../transform/subDivision/indexDirective";
15
+ import ContentsDirectiveDivisionTransform from "../../transform/subDivision/contentsDirective";
16
+ import FootnotesDirectiveDivisionTransform from "../../transform/subDivision/footnotesDirective";
17
+ import PageNumberDirectiveDivisionTransform from "../../transform/subDivision/pageNumberDirective";
18
+
18
19
  import { DIVISION_RULE_NAME } from "../../ruleNames";
19
20
  import { renumberFootnoteLinkMarkdownNodes } from "../../utilities/footnotes";
20
21
  import { subDivisionMarkdownNodesFromNode, ignoreDirectiveMarkdownNodeFromNode, pageNumberDirectiveMarkdownNodeFromNode } from "../../utilities/query";
@@ -22,24 +23,26 @@ import { subDivisionMarkdownNodesFromNode, ignoreDirectiveMarkdownNodeFromNode,
22
23
  const { clear, filter } = arrayUtilities;
23
24
 
24
25
  export default class DivisionMarkdownNode extends MarkdownNode {
25
- constructor(ruleName, childNodes, precedence, opacity, domElement, divisionClassName) {
26
- super(ruleName, childNodes, precedence, opacity, domElement);
27
-
28
- this.divisionClassName = divisionClassName;
29
- }
26
+ resolveIncludes(context) {
27
+ const divisionMarkdownNode = this, ///
28
+ includeDirectivesDivisionTransform = IncludeDirectivesDivisionTransform.fromDivisionMarkdownNode(divisionMarkdownNode, context);
30
29
 
31
- getDivisionClassName() {
32
- return this.divisionClassName;
30
+ if (includeDirectivesDivisionTransform !== null) {
31
+ includeDirectivesDivisionTransform.removeDivisionMarkdownNode(divisionMarkdownNode, context);
32
+ }
33
33
  }
34
34
 
35
- setDivisionClassName(divisionClassName) {
36
- this.divisionClassName = divisionClassName;
37
- }
35
+ resolveEmbeddings(divisionMarkdownNode, context) {
36
+ const divisionMarkdownNode = this, ///
37
+ embedDirectivesDivisionTransform = EmbedDirectivesDivisionTransform.fromDivisionMarkdownNode(divisionMarkdownNode, context);
38
38
 
39
- isDivisionMarkdownNode() {
40
- const divisionMarkdownNode = true;
39
+ if (embedDirectivesDivisionTransform !== null) {
40
+ const subDivisionMarkdownNodes = embedDirectivesDivisionTransform.replaceDivisionMarkdownNode(divisionMarkdownNode, context);
41
41
 
42
- return divisionMarkdownNode;
42
+ subDivisionMarkdownNodes.forEach((subDivisionMarkdownNode) => {
43
+ subDivisionMarkdownNode.resolveEmbeddings(divisionMarkdownNode, context);
44
+ });
45
+ }
43
46
  }
44
47
 
45
48
  className(context) {
@@ -56,191 +59,173 @@ export default class DivisionMarkdownNode extends MarkdownNode {
56
59
  return ignored;
57
60
  }
58
61
 
59
- getPageNumber() {
60
- let pageNumber = null;
61
-
62
- const pageNumberDirectiveMarkdownNode = this.findPageNumberDirectiveMarkdownNode();
63
-
64
- if (pageNumberDirectiveMarkdownNode !== null) {
65
- pageNumber = pageNumberDirectiveMarkdownNode.getPageNumber();
66
- }
67
-
68
- return pageNumber;
69
- }
70
-
71
- setPageNumber(pageNumber) {
72
- const pageNumberDirectiveMarkdownNode = this.findPageNumberDirectiveMarkdownNode();
73
-
74
- if (pageNumberDirectiveMarkdownNode !== null) {
75
- pageNumberDirectiveMarkdownNode.setPageNumber(pageNumber);
76
- }
77
- }
78
-
79
- paginate(markdownNodes, context) {
80
- const footnotesDirectiveSubDivisionReplacement = this.removeSubDivisionMarkdownNode(FootnotesDirectiveSubDivisionReplacement, context),
81
- pageNumberDirectiveSubDivisionReplacement = this.removeSubDivisionMarkdownNode(PageNumberDirectiveSubDivisionReplacement, context),
82
- subDivisionReplacements = [
83
- footnotesDirectiveSubDivisionReplacement,
84
- pageNumberDirectiveSubDivisionReplacement
85
- ];
86
-
87
- filter(subDivisionReplacements, (subDivisionReplacement) => {
88
- if (subDivisionReplacement !== null) {
89
- return true;
90
- }
91
- });
92
-
93
- const { linesPerPage } = context,
94
- paginatedChildNodes = [];
95
-
96
- let { pageNumber } = context,
97
- totalLines = 0;
98
-
99
- this.forEachChildNode((childNode) => {
100
- const lines = childNode.lines(context);
101
-
102
- if ((totalLines + lines) > linesPerPage) {
103
- paginateDivisionMarkdownNode(paginatedChildNodes, subDivisionReplacements, this.divisionClassName, markdownNodes, pageNumber, context);
104
-
105
- pageNumber++;
106
-
107
- totalLines = 0;
108
-
109
- clear(paginatedChildNodes);
110
- }
111
-
112
- const paginatedChildNode = childNode; ///
113
-
114
- paginatedChildNodes.push(paginatedChildNode);
115
-
116
- totalLines += lines;
117
- });
118
-
119
- if (totalLines > 0) {
120
- paginateDivisionMarkdownNode(paginatedChildNodes, subDivisionReplacements, this.divisionClassName, markdownNodes, pageNumber, context);
121
-
122
- pageNumber++;
123
- }
124
-
125
- Object.assign(context, {
126
- pageNumber
127
- });
128
- }
129
-
130
- createIndex(divisionMarkdownNodes, context) {
131
- let indexCreated = false;
132
-
133
- const indexDirectiveSubDivisionReplacement = this.findSubDivisionReplacement(IndexDirectiveSubDivisionReplacement, context);
134
-
135
- if (indexDirectiveSubDivisionReplacement !== null) {
136
- const divisionMarkdownNode = this, ///
137
- indexReplacement = IndexReplacement.fromDivisionMarkdownNodesAndDivisionMarkdownNode(divisionMarkdownNodes, divisionMarkdownNode, context);
138
-
139
- if (indexReplacement !== null) {
140
- indexReplacement.replaceIndexDirectiveSubdivisionReplacement(indexDirectiveSubDivisionReplacement, divisionMarkdownNode, context);
141
-
142
- indexCreated = true;
143
- }
144
- }
145
-
146
- return indexCreated;
147
- }
148
-
149
- createContents(divisionMarkdownNodes, context) {
150
- let contentsCreated = false;
151
-
152
- const contentsDirectiveSubDivisionReplacement = this.findSubDivisionReplacement(ContentsDirectiveSubDivisionReplacement, context);
153
-
154
- if (contentsDirectiveSubDivisionReplacement !== null) {
155
- const divisionMarkdownNode = this, ///
156
- contentsListReplacement = ContentsListReplacement.fromDivisionMarkdownNodesAndDivisionMarkdownNode(divisionMarkdownNodes, divisionMarkdownNode, context);
157
-
158
- if (contentsListReplacement !== null) {
159
- contentsListReplacement.replaceContentsDirectiveSubdivisionReplacement(contentsDirectiveSubDivisionReplacement, divisionMarkdownNode, context);
160
-
161
- contentsCreated = true;
162
- }
163
- }
164
-
165
- return contentsCreated;
166
- }
167
-
168
- createFootnotes(footnoteReplacementMap, context) {
169
- const footnotesDirectiveSubDivisionReplacement = this.findSubDivisionReplacement(FootnotesDirectiveSubDivisionReplacement, context);
170
-
171
- if (footnotesDirectiveSubDivisionReplacement !== null) {
172
- const divisionMarkdownNode = this, ///
173
- footnotesListSubDivisionReplacement = FootnotesListReplacement.fromDivisionMarkdownNodeAndFootnoteReplacementMap(divisionMarkdownNode, footnoteReplacementMap, context);
174
-
175
- if (footnotesListSubDivisionReplacement !== null) {
176
- footnotesListSubDivisionReplacement.replaceFootnotesDirectiveSubDivisionReplacement(footnotesDirectiveSubDivisionReplacement, divisionMarkdownNode, context);
177
- }
178
-
179
- renumberFootnoteLinkMarkdownNodes(divisionMarkdownNode, footnoteReplacementMap, context);
180
- }
181
- }
182
-
183
- prepareFootnotes(footnoteReplacementMap, context) {
184
- const footnoteSubDivisionReplacements = this.removeSubDivisionMarkdownNodes(FootnoteSubDivisionReplacement, context);
185
-
186
- footnoteSubDivisionReplacements.forEach((footnoteSubDivisionReplacement) => {
187
- const footnoteReplacement = FootnoteReplacement.fromFootnoteSubDivisionReplacement(footnoteSubDivisionReplacement),
188
- identifier = footnoteSubDivisionReplacement.identifier(context);
189
-
190
- footnoteReplacementMap[identifier] = footnoteReplacement;
191
- });
192
- }
193
-
194
- resolveIncludes(context) {
195
- const divisionMarkdownNode = this, ///
196
- subDivisionMarkdownNodes = this.findSubDivisionMarkdownNodes();
197
-
198
- subDivisionMarkdownNodes.forEach((subDivisionMarkdownNode) => {
199
- subDivisionMarkdownNode.resolveIncludes(divisionMarkdownNode, context);
200
- });
201
- }
202
-
203
- resolveEmbeddings(context) {
204
- const divisionMarkdownNode = this, ///
205
- subDivisionMarkdownNodes = this.findSubDivisionMarkdownNodes();
206
-
207
- subDivisionMarkdownNodes.forEach((subDivisionMarkdownNode) => {
208
- subDivisionMarkdownNode.resolveEmbeddings(divisionMarkdownNode, context);
209
- });
210
- }
211
-
212
- findSubDivisionReplacement(SubDivisionReplacement, context) {
213
- let subDivisionReplacement = null;
214
-
215
- const subDivisionMarkdownNodes = this.findSubDivisionMarkdownNodes();
62
+ // getPageNumber() {
63
+ // let pageNumber = null;
64
+ //
65
+ // const pageNumberDirectiveMarkdownNode = this.findPageNumberDirectiveMarkdownNode();
66
+ //
67
+ // if (pageNumberDirectiveMarkdownNode !== null) {
68
+ // pageNumber = pageNumberDirectiveMarkdownNode.getPageNumber();
69
+ // }
70
+ //
71
+ // return pageNumber;
72
+ // }
73
+ //
74
+ // setPageNumber(pageNumber) {
75
+ // const pageNumberDirectiveMarkdownNode = this.findPageNumberDirectiveMarkdownNode();
76
+ //
77
+ // if (pageNumberDirectiveMarkdownNode !== null) {
78
+ // pageNumberDirectiveMarkdownNode.setPageNumber(pageNumber);
79
+ // }
80
+ // }
81
+ //
82
+ // paginate(markdownNodes, context) {
83
+ // const footnotesDirectiveDivisionTransform = this.removeDivisionMarkdownNode(FootnotesDirectiveDivisionTransform, context),
84
+ // pageNumberDirectiveDivisionTransform = this.removeDivisionMarkdownNode(PageNumberDirectiveDivisionTransform, context),
85
+ // subDivisionTransforms = [
86
+ // footnotesDirectiveDivisionTransform,
87
+ // pageNumberDirectiveDivisionTransform
88
+ // ];
89
+ //
90
+ // filter(subDivisionTransforms, (subDivisionTransform) => {
91
+ // if (subDivisionTransform !== null) {
92
+ // return true;
93
+ // }
94
+ // });
95
+ //
96
+ // const { linesPerPage } = context,
97
+ // paginatedChildNodes = [];
98
+ //
99
+ // let { pageNumber } = context,
100
+ // totalLines = 0;
101
+ //
102
+ // this.forEachChildNode((childNode) => {
103
+ // const lines = childNode.lines(context);
104
+ //
105
+ // if ((totalLines + lines) > linesPerPage) {
106
+ // paginateDivisionMarkdownNode(paginatedChildNodes, subDivisionTransforms, this.divisionClassName, markdownNodes, pageNumber, context);
107
+ //
108
+ // pageNumber++;
109
+ //
110
+ // totalLines = 0;
111
+ //
112
+ // clear(paginatedChildNodes);
113
+ // }
114
+ //
115
+ // const paginatedChildNode = childNode; ///
116
+ //
117
+ // paginatedChildNodes.push(paginatedChildNode);
118
+ //
119
+ // totalLines += lines;
120
+ // });
121
+ //
122
+ // if (totalLines > 0) {
123
+ // paginateDivisionMarkdownNode(paginatedChildNodes, subDivisionTransforms, this.divisionClassName, markdownNodes, pageNumber, context);
124
+ //
125
+ // pageNumber++;
126
+ // }
127
+ //
128
+ // Object.assign(context, {
129
+ // pageNumber
130
+ // });
131
+ // }
132
+ //
133
+ // createIndex(divisionMarkdownNodes, context) {
134
+ // let indexCreated = false;
135
+ //
136
+ // const indexDirectiveDivisionTransform = this.findDivisionTransform(IndexDirectiveDivisionTransform, context);
137
+ //
138
+ // if (indexDirectiveDivisionTransform !== null) {
139
+ // const divisionMarkdownNode = this, ///
140
+ // indexTransform = IndexTransform.fromDivisionMarkdownNodesAndDivisionMarkdownNode(divisionMarkdownNodes, divisionMarkdownNode, context);
141
+ //
142
+ // if (indexTransform !== null) {
143
+ // indexTransform.replaceIndexDirectiveSubdivisionTransform(indexDirectiveDivisionTransform, divisionMarkdownNode, context);
144
+ //
145
+ // indexCreated = true;
146
+ // }
147
+ // }
148
+ //
149
+ // return indexCreated;
150
+ // }
151
+ //
152
+ // createContents(divisionMarkdownNodes, context) {
153
+ // let contentsCreated = false;
154
+ //
155
+ // const contentsDirectiveDivisionTransform = this.findDivisionTransform(ContentsDirectiveDivisionTransform, context);
156
+ //
157
+ // if (contentsDirectiveDivisionTransform !== null) {
158
+ // const divisionMarkdownNode = this, ///
159
+ // contentsListTransform = ContentsListTransform.fromDivisionMarkdownNodesAndDivisionMarkdownNode(divisionMarkdownNodes, divisionMarkdownNode, context);
160
+ //
161
+ // if (contentsListTransform !== null) {
162
+ // contentsListTransform.replaceContentsDirectiveSubdivisionTransform(contentsDirectiveDivisionTransform, divisionMarkdownNode, context);
163
+ //
164
+ // contentsCreated = true;
165
+ // }
166
+ // }
167
+ //
168
+ // return contentsCreated;
169
+ // }
170
+ //
171
+ // createFootnotes(footnoteTransformMap, context) {
172
+ // const footnotesDirectiveDivisionTransform = this.findDivisionTransform(FootnotesDirectiveDivisionTransform, context);
173
+ //
174
+ // if (footnotesDirectiveDivisionTransform !== null) {
175
+ // const divisionMarkdownNode = this, ///
176
+ // footnotesListDivisionTransform = FootnotesListTransform.fromDivisionMarkdownNodeAndFootnoteTransformMap(divisionMarkdownNode, footnoteTransformMap, context);
177
+ //
178
+ // if (footnotesListDivisionTransform !== null) {
179
+ // footnotesListDivisionTransform.replaceFootnotesDirectiveDivisionTransform(footnotesDirectiveDivisionTransform, divisionMarkdownNode, context);
180
+ // }
181
+ //
182
+ // renumberFootnoteLinkMarkdownNodes(divisionMarkdownNode, footnoteTransformMap, context);
183
+ // }
184
+ // }
185
+ //
186
+ // prepareFootnotes(footnoteTransformMap, context) {
187
+ // const footnoteDivisionTransforms = this.removeDivisionMarkdownNodes(FootnoteDivisionTransform, context);
188
+ //
189
+ // footnoteDivisionTransforms.forEach((footnoteDivisionTransform) => {
190
+ // const footnoteTransform = FootnoteTransform.fromFootnoteDivisionTransform(footnoteDivisionTransform),
191
+ // identifier = footnoteDivisionTransform.identifier(context);
192
+ //
193
+ // footnoteTransformMap[identifier] = footnoteTransform;
194
+ // });
195
+ // }
196
+
197
+ findDivisionTransform(DivisionTransform, context) {
198
+ let subDivisionTransform = null;
199
+
200
+ const subDivisionMarkdownNodes = this.findDivisionMarkdownNodes();
216
201
 
217
202
  subDivisionMarkdownNodes.some((subDivisionMarkdownNode) => {
218
- subDivisionReplacement = SubDivisionReplacement.fromSubDivisionMarkdownNode(subDivisionMarkdownNode, context);
203
+ subDivisionTransform = DivisionTransform.fromDivisionMarkdownNode(subDivisionMarkdownNode, context);
219
204
 
220
- if (subDivisionReplacement !== null) {
205
+ if (subDivisionTransform !== null) {
221
206
  return true;
222
207
  }
223
208
  });
224
209
 
225
- return subDivisionReplacement;
210
+ return subDivisionTransform;
226
211
  }
227
212
 
228
- findSubDivisionReplacements(SubDivisionReplacement, context) {
229
- const subDivisionMarkdownNodes = this.findSubDivisionMarkdownNodes(),
230
- subDivisionReplacements = subDivisionMarkdownNodes.reduce((subDivisionReplacements, subDivisionMarkdownNode) => {
231
- const subDivisionReplacement = SubDivisionReplacement.fromSubDivisionMarkdownNode(subDivisionMarkdownNode, context);
213
+ findDivisionTransforms(DivisionTransform, context) {
214
+ const subDivisionMarkdownNodes = this.findDivisionMarkdownNodes(),
215
+ subDivisionTransforms = subDivisionMarkdownNodes.reduce((subDivisionTransforms, subDivisionMarkdownNode) => {
216
+ const subDivisionTransform = DivisionTransform.fromDivisionMarkdownNode(subDivisionMarkdownNode, context);
232
217
 
233
- if (subDivisionReplacement !== null) {
234
- subDivisionReplacements.push(subDivisionReplacement);
218
+ if (subDivisionTransform !== null) {
219
+ subDivisionTransforms.push(subDivisionTransform);
235
220
  }
236
221
 
237
- return subDivisionReplacements;
222
+ return subDivisionTransforms;
238
223
  }, []);
239
224
 
240
- return subDivisionReplacements;
225
+ return subDivisionTransforms;
241
226
  }
242
227
 
243
- findSubDivisionMarkdownNodes() {
228
+ findDivisionMarkdownNodes() {
244
229
  const node = this, ///
245
230
  subDivisionMarkdownNodes = subDivisionMarkdownNodesFromNode(node);
246
231
 
@@ -250,7 +235,7 @@ export default class DivisionMarkdownNode extends MarkdownNode {
250
235
  findPageNumberDirectiveMarkdownNode() {
251
236
  let pageNumberDirectiveMarkdownNode = null;
252
237
 
253
- const subDivisionMarkdownNodes = this.findSubDivisionMarkdownNodes();
238
+ const subDivisionMarkdownNodes = this.findDivisionMarkdownNodes();
254
239
 
255
240
  subDivisionMarkdownNodes.some((subDivisionMarkdownNode) => {
256
241
  const node = subDivisionMarkdownNode; ///
@@ -265,97 +250,55 @@ export default class DivisionMarkdownNode extends MarkdownNode {
265
250
  return pageNumberDirectiveMarkdownNode;
266
251
  }
267
252
 
268
- removeSubDivisionMarkdownNode(SubDivisionReplacement, context) {
253
+ removeDivisionMarkdownNode(DivisionTransform, context) {
269
254
  const divisionMarkdownNode = this, //
270
- subDivisionReplacement = this.findSubDivisionReplacement(SubDivisionReplacement, context);
255
+ subDivisionTransform = this.findDivisionTransform(DivisionTransform, context);
271
256
 
272
- if (subDivisionReplacement !== null) {
273
- subDivisionReplacement.removeFromDivisionMarkdownNode(divisionMarkdownNode, context);
257
+ if (subDivisionTransform !== null) {
258
+ subDivisionTransform.removeFromDivisionMarkdownNode(divisionMarkdownNode, context);
274
259
  }
275
260
 
276
- return subDivisionReplacement;
261
+ return subDivisionTransform;
277
262
  }
278
263
 
279
- removeSubDivisionMarkdownNodes(SubDivisionReplacement, context) {
264
+ removeDivisionMarkdownNodes(DivisionTransform, context) {
280
265
  const divisionMarkdownNode = this, //
281
- subDivisionReplacements = this.findSubDivisionReplacements(SubDivisionReplacement, context);
266
+ subDivisionTransforms = this.findDivisionTransforms(DivisionTransform, context);
282
267
 
283
- subDivisionReplacements.forEach((subDivisionReplacement) => {
284
- subDivisionReplacement.removeFromDivisionMarkdownNode(divisionMarkdownNode, context);
268
+ subDivisionTransforms.forEach((subDivisionTransform) => {
269
+ subDivisionTransform.removeFromDivisionMarkdownNode(divisionMarkdownNode, context);
285
270
  });
286
271
 
287
- return subDivisionReplacements;
272
+ return subDivisionTransforms;
288
273
  }
289
274
 
290
- createFootnotesListReplacement(footnoteReplacementMap, context) {
291
- const footnoteSubDivisionReplacements = this.findSubDivisionReplacements(FootnoteSubDivisionReplacement, context);
275
+ createFootnotesListTransform(footnoteTransformMap, context) {
276
+ const footnoteDivisionTransforms = this.findDivisionTransforms(FootnoteDivisionTransform, context);
292
277
 
293
- footnoteSubDivisionReplacements.forEach((footnoteSubDivisionReplacement) => {
294
- const footnoteReplacement = FootnoteReplacement.fromFootnoteSubDivisionReplacement(footnoteSubDivisionReplacement),
295
- identifier = footnoteSubDivisionReplacement.identifier(context);
278
+ footnoteDivisionTransforms.forEach((footnoteDivisionTransform) => {
279
+ const footnoteTransform = FootnoteTransform.fromFootnoteDivisionTransform(footnoteDivisionTransform),
280
+ identifier = footnoteDivisionTransform.identifier(context);
296
281
 
297
- footnoteReplacementMap[identifier] = footnoteReplacement;
282
+ footnoteTransformMap[identifier] = footnoteTransform;
298
283
  });
299
284
 
300
285
  const divisionMarkdownNode = this, ///
301
- footnotesListSubDivisionReplacement = FootnotesListReplacement.fromDivisionMarkdownNodeAndFootnoteReplacementMap(divisionMarkdownNode, footnoteReplacementMap, context);
302
-
303
- return footnotesListSubDivisionReplacement;
304
- }
305
-
306
- asHTML(context) {
307
- let html = null;
308
-
309
- const indent = EMPTY_STRING,
310
- childNodesHTML = this.childNodesAsHTML(indent, context);
286
+ footnotesListDivisionTransform = FootnotesListTransform.fromDivisionMarkdownNodeAndFootnoteTransformMap(divisionMarkdownNode, footnoteTransformMap, context);
311
287
 
312
- if (childNodesHTML !== null) {
313
- const startingTag = this.startingTag(context),
314
- closingTag = this.closingTag(context);
315
-
316
- html = `${indent}${startingTag}
317
- ${childNodesHTML}${indent}${closingTag}
318
- `;
319
- }
320
-
321
- return html;
288
+ return footnotesListDivisionTransform;
322
289
  }
323
290
 
324
291
  clone() { return super.clone(this.divisionClassName); }
325
292
 
326
- static fromRuleNameChildNodesAndOpacity(ruleName, childNodes, opacity) {
327
- const divisionClassName = null,
328
- divisionMarkdownNode = MarkdownNode.fromRuleNameChildNodesAndOpacity(DivisionMarkdownNode, ruleName, childNodes, opacity, divisionClassName);
329
-
330
- return divisionMarkdownNode;
331
- }
332
-
333
- static fromPaginatedChildNodesSubDivisionReplacementsAndDivisionClassName(paginatedChildNodes, subDivisionReplacements, divisionClassName, context) {
334
- const ruleName = DIVISION_RULE_NAME,
335
- childNodes = [
336
- ...paginatedChildNodes
337
- ],
338
- opacity = null,
339
- divisionMarkdownNode = DivisionMarkdownNode.fromRuleNameChildNodesAndOpacity(ruleName, childNodes, opacity);
340
-
341
- divisionMarkdownNode.setDivisionClassName(divisionClassName);
342
-
343
- subDivisionReplacements.forEach((subDivisionReplacement) => {
344
- subDivisionReplacement = subDivisionReplacement.clone(); ///
345
-
346
- subDivisionReplacement.appendToDivisionMarkdownNode(divisionMarkdownNode, context);
347
- });
348
-
349
- return divisionMarkdownNode;
350
- }
293
+ static fromRuleNameChildNodesAndOpacity(ruleName, childNodes, opacity) { return MarkdownNode.fromRuleNameChildNodesAndOpacity(DivisionMarkdownNode, ruleName, childNodes, opacity); }
351
294
  }
352
295
 
353
- function paginateDivisionMarkdownNode(paginatedChildNodes, subDivisionReplacements, divisionClassName, markdownNodes, pageNumber, context) {
296
+ function paginateDivisionMarkdownNode(paginatedChildNodes, subDivisionTransforms, divisionClassName, markdownNodes, pageNumber, context) {
354
297
  let markdownNode;
355
298
 
356
- const indexAnchorReplacement = IndexAnchorReplacement.fromPageNumber(pageNumber, context),
357
- divisionMarkdownNode = DivisionMarkdownNode.fromPaginatedChildNodesSubDivisionReplacementsAndDivisionClassName(paginatedChildNodes, subDivisionReplacements, divisionClassName, context),
358
- anchorMarkdownNode = indexAnchorReplacement.getAnchorMarkdownNode();
299
+ const indexAnchorTransform = IndexAnchorTransform.fromPageNumber(pageNumber, context),
300
+ divisionMarkdownNode = DivisionMarkdownNode.fromPaginatedChildNodesDivisionTransformsAndDivisionClassName(paginatedChildNodes, subDivisionTransforms, divisionClassName, context),
301
+ anchorMarkdownNode = indexAnchorTransform.getAnchorMarkdownNode();
359
302
 
360
303
  divisionMarkdownNode.setPageNumber(pageNumber);
361
304