roosterjs-content-model-dom 0.16.0 → 0.18.0

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 (1025) hide show
  1. package/README.md +21 -66
  2. package/lib/config/defaultContentModelFormatMap.d.ts +1 -1
  3. package/lib/config/defaultContentModelFormatMap.js.map +1 -1
  4. package/lib/config/defaultHTMLStyleMap.d.ts +1 -1
  5. package/lib/config/defaultHTMLStyleMap.js.map +1 -1
  6. package/lib/domToModel/context/createDomToModelContext.d.ts +1 -1
  7. package/lib/domToModel/context/createDomToModelContext.js +2 -2
  8. package/lib/domToModel/context/createDomToModelContext.js.map +1 -1
  9. package/lib/domToModel/context/defaultProcessors.d.ts +1 -1
  10. package/lib/domToModel/context/defaultProcessors.js.map +1 -1
  11. package/lib/domToModel/domToContentModel.d.ts +2 -3
  12. package/lib/domToModel/domToContentModel.js +1 -1
  13. package/lib/domToModel/domToContentModel.js.map +1 -1
  14. package/lib/domToModel/processors/blockProcessor.d.ts +1 -1
  15. package/lib/domToModel/processors/blockProcessor.js.map +1 -1
  16. package/lib/domToModel/processors/brProcessor.d.ts +1 -1
  17. package/lib/domToModel/processors/brProcessor.js +3 -1
  18. package/lib/domToModel/processors/brProcessor.js.map +1 -1
  19. package/lib/domToModel/processors/childProcessor.d.ts +1 -1
  20. package/lib/domToModel/processors/childProcessor.js +4 -4
  21. package/lib/domToModel/processors/childProcessor.js.map +1 -1
  22. package/lib/domToModel/processors/codeProcessor.d.ts +1 -1
  23. package/lib/domToModel/processors/codeProcessor.js.map +1 -1
  24. package/lib/domToModel/processors/delimiterProcessor.d.ts +1 -1
  25. package/lib/domToModel/processors/delimiterProcessor.js.map +1 -1
  26. package/lib/domToModel/processors/elementProcessor.d.ts +1 -1
  27. package/lib/domToModel/processors/elementProcessor.js +3 -4
  28. package/lib/domToModel/processors/elementProcessor.js.map +1 -1
  29. package/lib/domToModel/processors/entityProcessor.d.ts +1 -1
  30. package/lib/domToModel/processors/entityProcessor.js +7 -7
  31. package/lib/domToModel/processors/entityProcessor.js.map +1 -1
  32. package/lib/domToModel/processors/fontProcessor.d.ts +1 -1
  33. package/lib/domToModel/processors/fontProcessor.js +1 -1
  34. package/lib/domToModel/processors/fontProcessor.js.map +1 -1
  35. package/lib/domToModel/processors/formatContainerProcessor.d.ts +1 -1
  36. package/lib/domToModel/processors/formatContainerProcessor.js +1 -3
  37. package/lib/domToModel/processors/formatContainerProcessor.js.map +1 -1
  38. package/lib/domToModel/processors/generalProcessor.d.ts +1 -1
  39. package/lib/domToModel/processors/generalProcessor.js +4 -4
  40. package/lib/domToModel/processors/generalProcessor.js.map +1 -1
  41. package/lib/domToModel/processors/headingProcessor.d.ts +1 -1
  42. package/lib/domToModel/processors/headingProcessor.js +2 -2
  43. package/lib/domToModel/processors/headingProcessor.js.map +1 -1
  44. package/lib/domToModel/processors/hrProcessor.d.ts +1 -1
  45. package/lib/domToModel/processors/hrProcessor.js.map +1 -1
  46. package/lib/domToModel/processors/imageProcessor.d.ts +1 -1
  47. package/lib/domToModel/processors/imageProcessor.js +4 -4
  48. package/lib/domToModel/processors/imageProcessor.js.map +1 -1
  49. package/lib/domToModel/processors/knownElementProcessor.d.ts +1 -1
  50. package/lib/domToModel/processors/knownElementProcessor.js +2 -2
  51. package/lib/domToModel/processors/knownElementProcessor.js.map +1 -1
  52. package/lib/domToModel/processors/linkProcessor.d.ts +1 -1
  53. package/lib/domToModel/processors/linkProcessor.js.map +1 -1
  54. package/lib/domToModel/processors/listItemProcessor.d.ts +1 -1
  55. package/lib/domToModel/processors/listItemProcessor.js +1 -1
  56. package/lib/domToModel/processors/listItemProcessor.js.map +1 -1
  57. package/lib/domToModel/processors/listProcessor.d.ts +1 -1
  58. package/lib/domToModel/processors/listProcessor.js +1 -12
  59. package/lib/domToModel/processors/listProcessor.js.map +1 -1
  60. package/lib/domToModel/processors/pProcessor.d.ts +1 -1
  61. package/lib/domToModel/processors/pProcessor.js.map +1 -1
  62. package/lib/domToModel/processors/tableProcessor.d.ts +1 -1
  63. package/lib/domToModel/processors/tableProcessor.js +15 -14
  64. package/lib/domToModel/processors/tableProcessor.js.map +1 -1
  65. package/lib/domToModel/processors/textProcessor.d.ts +1 -1
  66. package/lib/domToModel/processors/textProcessor.js +22 -21
  67. package/lib/domToModel/processors/textProcessor.js.map +1 -1
  68. package/lib/domToModel/utils/addSelectionMarker.d.ts +1 -1
  69. package/lib/domToModel/utils/addSelectionMarker.js.map +1 -1
  70. package/lib/domToModel/utils/areSameFormats.d.ts +1 -1
  71. package/lib/domToModel/utils/areSameFormats.js +3 -3
  72. package/lib/domToModel/utils/areSameFormats.js.map +1 -1
  73. package/lib/domToModel/utils/getDefaultStyle.d.ts +1 -3
  74. package/lib/domToModel/utils/getDefaultStyle.js +1 -2
  75. package/lib/domToModel/utils/getDefaultStyle.js.map +1 -1
  76. package/lib/domToModel/utils/getRegularSelectionOffsets.d.ts +1 -1
  77. package/lib/domToModel/utils/getRegularSelectionOffsets.js +1 -1
  78. package/lib/domToModel/utils/getRegularSelectionOffsets.js.map +1 -1
  79. package/lib/domToModel/utils/isBlockElement.d.ts +1 -3
  80. package/lib/domToModel/utils/isBlockElement.js +2 -3
  81. package/lib/domToModel/utils/isBlockElement.js.map +1 -1
  82. package/lib/domToModel/utils/parseFormat.d.ts +1 -1
  83. package/lib/domToModel/utils/parseFormat.js +1 -1
  84. package/lib/domToModel/utils/parseFormat.js.map +1 -1
  85. package/lib/domToModel/utils/stackFormat.d.ts +1 -1
  86. package/lib/domToModel/utils/stackFormat.js +2 -2
  87. package/lib/domToModel/utils/stackFormat.js.map +1 -1
  88. package/lib/domUtils/entityUtils.d.ts +23 -0
  89. package/lib/domUtils/entityUtils.js +78 -0
  90. package/lib/domUtils/entityUtils.js.map +1 -0
  91. package/lib/domUtils/getObjectKeys.d.ts +6 -0
  92. package/lib/domUtils/getObjectKeys.js +13 -0
  93. package/lib/domUtils/getObjectKeys.js.map +1 -0
  94. package/lib/domUtils/isElementOfType.d.ts +7 -0
  95. package/lib/domUtils/isElementOfType.js +15 -0
  96. package/lib/domUtils/isElementOfType.js.map +1 -0
  97. package/lib/domUtils/isNodeOfType.d.ts +9 -10
  98. package/lib/domUtils/isNodeOfType.js +1 -1
  99. package/lib/domUtils/isNodeOfType.js.map +1 -1
  100. package/lib/domUtils/metadata/updateMetadata.d.ts +1 -2
  101. package/lib/domUtils/metadata/updateMetadata.js +3 -3
  102. package/lib/domUtils/metadata/updateMetadata.js.map +1 -1
  103. package/lib/domUtils/metadata/validate.d.ts +9 -0
  104. package/lib/domUtils/metadata/validate.js +62 -0
  105. package/lib/domUtils/metadata/validate.js.map +1 -0
  106. package/lib/domUtils/moveChildNodes.d.ts +14 -0
  107. package/lib/domUtils/moveChildNodes.js +35 -0
  108. package/lib/domUtils/moveChildNodes.js.map +1 -0
  109. package/lib/domUtils/toArray.d.ts +27 -0
  110. package/lib/domUtils/toArray.js +7 -0
  111. package/lib/domUtils/toArray.js.map +1 -0
  112. package/lib/domUtils/unwrap.d.ts +6 -0
  113. package/lib/domUtils/unwrap.js +22 -0
  114. package/lib/domUtils/unwrap.js.map +1 -0
  115. package/lib/domUtils/wrap.d.ts +9 -0
  116. package/lib/domUtils/wrap.js +20 -0
  117. package/lib/domUtils/wrap.js.map +1 -0
  118. package/lib/formatHandlers/FormatHandler.d.ts +1 -1
  119. package/lib/formatHandlers/FormatHandler.js.map +1 -1
  120. package/lib/formatHandlers/block/directionFormatHandler.d.ts +2 -2
  121. package/lib/formatHandlers/block/directionFormatHandler.js.map +1 -1
  122. package/lib/formatHandlers/block/displayFormatHandler.d.ts +2 -2
  123. package/lib/formatHandlers/block/displayFormatHandler.js.map +1 -1
  124. package/lib/formatHandlers/block/htmlAlignFormatHandler.d.ts +2 -2
  125. package/lib/formatHandlers/block/htmlAlignFormatHandler.js.map +1 -1
  126. package/lib/formatHandlers/block/lineHeightFormatHandler.d.ts +2 -2
  127. package/lib/formatHandlers/block/lineHeightFormatHandler.js.map +1 -1
  128. package/lib/formatHandlers/block/marginFormatHandler.d.ts +2 -2
  129. package/lib/formatHandlers/block/marginFormatHandler.js.map +1 -1
  130. package/lib/formatHandlers/block/paddingFormatHandler.d.ts +2 -2
  131. package/lib/formatHandlers/block/paddingFormatHandler.js.map +1 -1
  132. package/lib/formatHandlers/block/textAlignFormatHandler.d.ts +2 -2
  133. package/lib/formatHandlers/block/textAlignFormatHandler.js.map +1 -1
  134. package/lib/formatHandlers/block/whiteSpaceFormatHandler.d.ts +2 -2
  135. package/lib/formatHandlers/block/whiteSpaceFormatHandler.js.map +1 -1
  136. package/lib/formatHandlers/common/backgroundColorFormatHandler.d.ts +2 -2
  137. package/lib/formatHandlers/common/backgroundColorFormatHandler.js.map +1 -1
  138. package/lib/formatHandlers/common/borderBoxFormatHandler.d.ts +2 -2
  139. package/lib/formatHandlers/common/borderBoxFormatHandler.js.map +1 -1
  140. package/lib/formatHandlers/common/borderFormatHandler.d.ts +2 -2
  141. package/lib/formatHandlers/common/borderFormatHandler.js.map +1 -1
  142. package/lib/formatHandlers/common/boxShadowFormatHandler.d.ts +2 -2
  143. package/lib/formatHandlers/common/boxShadowFormatHandler.js.map +1 -1
  144. package/lib/formatHandlers/common/datasetFormatHandler.d.ts +2 -2
  145. package/lib/formatHandlers/common/datasetFormatHandler.js +3 -3
  146. package/lib/formatHandlers/common/datasetFormatHandler.js.map +1 -1
  147. package/lib/formatHandlers/common/floatFormatHandler.d.ts +2 -2
  148. package/lib/formatHandlers/common/floatFormatHandler.js.map +1 -1
  149. package/lib/formatHandlers/common/idFormatHandler.d.ts +2 -2
  150. package/lib/formatHandlers/common/idFormatHandler.js.map +1 -1
  151. package/lib/formatHandlers/common/sizeFormatHandler.d.ts +2 -2
  152. package/lib/formatHandlers/common/sizeFormatHandler.js.map +1 -1
  153. package/lib/formatHandlers/common/verticalAlignFormatHandler.d.ts +2 -2
  154. package/lib/formatHandlers/common/verticalAlignFormatHandler.js.map +1 -1
  155. package/lib/formatHandlers/common/wordBreakFormatHandler.d.ts +2 -2
  156. package/lib/formatHandlers/common/wordBreakFormatHandler.js.map +1 -1
  157. package/lib/formatHandlers/defaultFormatHandlers.d.ts +1 -1
  158. package/lib/formatHandlers/defaultFormatHandlers.js +15 -13
  159. package/lib/formatHandlers/defaultFormatHandlers.js.map +1 -1
  160. package/lib/formatHandlers/entity/entityFormatHandler.d.ts +6 -0
  161. package/lib/formatHandlers/entity/entityFormatHandler.js +31 -0
  162. package/lib/formatHandlers/entity/entityFormatHandler.js.map +1 -0
  163. package/lib/formatHandlers/list/listItemThreadFormatHandler.d.ts +2 -2
  164. package/lib/formatHandlers/list/listItemThreadFormatHandler.js +5 -3
  165. package/lib/formatHandlers/list/listItemThreadFormatHandler.js.map +1 -1
  166. package/lib/formatHandlers/list/listLevelThreadFormatHandler.d.ts +2 -2
  167. package/lib/formatHandlers/list/listLevelThreadFormatHandler.js +6 -4
  168. package/lib/formatHandlers/list/listLevelThreadFormatHandler.js.map +1 -1
  169. package/lib/formatHandlers/list/listStyleFormatHandler.d.ts +6 -0
  170. package/lib/formatHandlers/list/{listStylePositionFormatHandler.js → listStyleFormatHandler.js} +10 -3
  171. package/lib/formatHandlers/list/listStyleFormatHandler.js.map +1 -0
  172. package/lib/formatHandlers/segment/boldFormatHandler.d.ts +2 -2
  173. package/lib/formatHandlers/segment/boldFormatHandler.js +2 -4
  174. package/lib/formatHandlers/segment/boldFormatHandler.js.map +1 -1
  175. package/lib/formatHandlers/segment/fontFamilyFormatHandler.d.ts +2 -2
  176. package/lib/formatHandlers/segment/fontFamilyFormatHandler.js.map +1 -1
  177. package/lib/formatHandlers/segment/fontSizeFormatHandler.d.ts +2 -2
  178. package/lib/formatHandlers/segment/fontSizeFormatHandler.js.map +1 -1
  179. package/lib/formatHandlers/segment/italicFormatHandler.d.ts +2 -2
  180. package/lib/formatHandlers/segment/italicFormatHandler.js +2 -4
  181. package/lib/formatHandlers/segment/italicFormatHandler.js.map +1 -1
  182. package/lib/formatHandlers/segment/letterSpacingFormatHandler.d.ts +2 -2
  183. package/lib/formatHandlers/segment/letterSpacingFormatHandler.js.map +1 -1
  184. package/lib/formatHandlers/segment/linkFormatHandler.d.ts +2 -2
  185. package/lib/formatHandlers/segment/linkFormatHandler.js +3 -3
  186. package/lib/formatHandlers/segment/linkFormatHandler.js.map +1 -1
  187. package/lib/formatHandlers/segment/strikeFormatHandler.d.ts +2 -2
  188. package/lib/formatHandlers/segment/strikeFormatHandler.js +2 -4
  189. package/lib/formatHandlers/segment/strikeFormatHandler.js.map +1 -1
  190. package/lib/formatHandlers/segment/superOrSubScriptFormatHandler.d.ts +2 -2
  191. package/lib/formatHandlers/segment/superOrSubScriptFormatHandler.js +2 -4
  192. package/lib/formatHandlers/segment/superOrSubScriptFormatHandler.js.map +1 -1
  193. package/lib/formatHandlers/segment/textColorFormatHandler.d.ts +2 -2
  194. package/lib/formatHandlers/segment/textColorFormatHandler.js.map +1 -1
  195. package/lib/formatHandlers/segment/underlineFormatHandler.d.ts +2 -2
  196. package/lib/formatHandlers/segment/underlineFormatHandler.js +2 -4
  197. package/lib/formatHandlers/segment/underlineFormatHandler.js.map +1 -1
  198. package/lib/formatHandlers/table/tableLayoutFormatHandler.d.ts +2 -2
  199. package/lib/formatHandlers/table/tableLayoutFormatHandler.js.map +1 -1
  200. package/lib/formatHandlers/table/tableSpacingFormatHandler.d.ts +2 -2
  201. package/lib/formatHandlers/table/tableSpacingFormatHandler.js.map +1 -1
  202. package/lib/formatHandlers/table/textColorOnTableCellFormatHandler.d.ts +2 -2
  203. package/lib/formatHandlers/table/textColorOnTableCellFormatHandler.js.map +1 -1
  204. package/lib/formatHandlers/utils/color.d.ts +3 -3
  205. package/lib/formatHandlers/utils/color.js +4 -27
  206. package/lib/formatHandlers/utils/color.js.map +1 -1
  207. package/lib/formatHandlers/utils/parseValueWithUnit.js +2 -2
  208. package/lib/formatHandlers/utils/parseValueWithUnit.js.map +1 -1
  209. package/lib/index.d.ts +7 -1
  210. package/lib/index.js +17 -3
  211. package/lib/index.js.map +1 -1
  212. package/lib/modelApi/block/setParagraphNotImplicit.d.ts +1 -1
  213. package/lib/modelApi/block/setParagraphNotImplicit.js.map +1 -1
  214. package/lib/modelApi/common/addDecorators.d.ts +1 -1
  215. package/lib/modelApi/common/addDecorators.js.map +1 -1
  216. package/lib/modelApi/common/addSegment.d.ts +3 -2
  217. package/lib/modelApi/common/addSegment.js +4 -11
  218. package/lib/modelApi/common/addSegment.js.map +1 -1
  219. package/lib/modelApi/common/applySegmentFormatToElement.d.ts +1 -1
  220. package/lib/modelApi/common/applySegmentFormatToElement.js.map +1 -1
  221. package/lib/modelApi/common/ensureParagraph.d.ts +7 -0
  222. package/lib/modelApi/common/ensureParagraph.js +23 -0
  223. package/lib/modelApi/common/ensureParagraph.js.map +1 -0
  224. package/lib/modelApi/common/isEmpty.d.ts +1 -1
  225. package/lib/modelApi/common/isEmpty.js.map +1 -1
  226. package/lib/modelApi/common/isGeneralSegment.d.ts +1 -1
  227. package/lib/modelApi/common/isGeneralSegment.js.map +1 -1
  228. package/lib/modelApi/common/isWhiteSpacePreserved.d.ts +1 -1
  229. package/lib/modelApi/common/isWhiteSpacePreserved.js.map +1 -1
  230. package/lib/modelApi/common/normalizeContentModel.d.ts +1 -1
  231. package/lib/modelApi/common/normalizeContentModel.js.map +1 -1
  232. package/lib/modelApi/common/normalizeParagraph.d.ts +1 -1
  233. package/lib/modelApi/common/normalizeParagraph.js.map +1 -1
  234. package/lib/modelApi/common/normalizeSegment.d.ts +1 -1
  235. package/lib/modelApi/common/normalizeSegment.js.map +1 -1
  236. package/lib/modelApi/common/unwrapBlock.d.ts +1 -1
  237. package/lib/modelApi/common/unwrapBlock.js.map +1 -1
  238. package/lib/modelApi/creators/createBr.d.ts +1 -1
  239. package/lib/modelApi/creators/createBr.js.map +1 -1
  240. package/lib/modelApi/creators/createContentModelDocument.d.ts +1 -1
  241. package/lib/modelApi/creators/createContentModelDocument.js.map +1 -1
  242. package/lib/modelApi/creators/createDivider.d.ts +1 -1
  243. package/lib/modelApi/creators/createDivider.js.map +1 -1
  244. package/lib/modelApi/creators/createEntity.d.ts +4 -4
  245. package/lib/modelApi/creators/createEntity.js +9 -6
  246. package/lib/modelApi/creators/createEntity.js.map +1 -1
  247. package/lib/modelApi/creators/createFormatContainer.d.ts +1 -1
  248. package/lib/modelApi/creators/createFormatContainer.js.map +1 -1
  249. package/lib/modelApi/creators/createGeneralBlock.d.ts +1 -1
  250. package/lib/modelApi/creators/createGeneralBlock.js.map +1 -1
  251. package/lib/modelApi/creators/createGeneralSegment.d.ts +1 -1
  252. package/lib/modelApi/creators/createGeneralSegment.js.map +1 -1
  253. package/lib/modelApi/creators/createImage.d.ts +1 -1
  254. package/lib/modelApi/creators/createImage.js.map +1 -1
  255. package/lib/modelApi/creators/createListItem.d.ts +1 -1
  256. package/lib/modelApi/creators/createListItem.js.map +1 -1
  257. package/lib/modelApi/creators/createListLevel.d.ts +1 -1
  258. package/lib/modelApi/creators/createListLevel.js.map +1 -1
  259. package/lib/modelApi/creators/createParagraphDecorator.d.ts +1 -1
  260. package/lib/modelApi/creators/createParagraphDecorator.js.map +1 -1
  261. package/lib/modelApi/creators/createSelectionMarker.d.ts +1 -1
  262. package/lib/modelApi/creators/createSelectionMarker.js.map +1 -1
  263. package/lib/modelApi/creators/createTable.d.ts +1 -1
  264. package/lib/modelApi/creators/createTable.js.map +1 -1
  265. package/lib/modelApi/creators/createTableCell.d.ts +1 -1
  266. package/lib/modelApi/creators/createTableCell.js.map +1 -1
  267. package/lib/modelApi/creators/createText.d.ts +1 -1
  268. package/lib/modelApi/creators/createText.js.map +1 -1
  269. package/lib/modelToDom/contentModelToDom.d.ts +2 -3
  270. package/lib/modelToDom/contentModelToDom.js +38 -33
  271. package/lib/modelToDom/contentModelToDom.js.map +1 -1
  272. package/lib/modelToDom/context/createModelToDomContext.d.ts +1 -1
  273. package/lib/modelToDom/context/createModelToDomContext.js +3 -2
  274. package/lib/modelToDom/context/createModelToDomContext.js.map +1 -1
  275. package/lib/modelToDom/context/defaultContentModelHandlers.d.ts +1 -1
  276. package/lib/modelToDom/context/defaultContentModelHandlers.js.map +1 -1
  277. package/lib/modelToDom/handlers/handleBlock.d.ts +1 -1
  278. package/lib/modelToDom/handlers/handleBlock.js.map +1 -1
  279. package/lib/modelToDom/handlers/handleBlockGroupChildren.d.ts +1 -1
  280. package/lib/modelToDom/handlers/handleBlockGroupChildren.js.map +1 -1
  281. package/lib/modelToDom/handlers/handleBr.d.ts +1 -1
  282. package/lib/modelToDom/handlers/handleBr.js.map +1 -1
  283. package/lib/modelToDom/handlers/handleDivider.d.ts +1 -1
  284. package/lib/modelToDom/handlers/handleDivider.js.map +1 -1
  285. package/lib/modelToDom/handlers/handleEntity.d.ts +1 -1
  286. package/lib/modelToDom/handlers/handleEntity.js +12 -30
  287. package/lib/modelToDom/handlers/handleEntity.js.map +1 -1
  288. package/lib/modelToDom/handlers/handleFormatContainer.d.ts +1 -1
  289. package/lib/modelToDom/handlers/handleFormatContainer.js.map +1 -1
  290. package/lib/modelToDom/handlers/handleGeneralModel.d.ts +1 -1
  291. package/lib/modelToDom/handlers/handleGeneralModel.js +3 -3
  292. package/lib/modelToDom/handlers/handleGeneralModel.js.map +1 -1
  293. package/lib/modelToDom/handlers/handleImage.d.ts +1 -1
  294. package/lib/modelToDom/handlers/handleImage.js +1 -0
  295. package/lib/modelToDom/handlers/handleImage.js.map +1 -1
  296. package/lib/modelToDom/handlers/handleList.d.ts +1 -1
  297. package/lib/modelToDom/handlers/handleList.js +8 -18
  298. package/lib/modelToDom/handlers/handleList.js.map +1 -1
  299. package/lib/modelToDom/handlers/handleListItem.d.ts +1 -1
  300. package/lib/modelToDom/handlers/handleListItem.js +8 -11
  301. package/lib/modelToDom/handlers/handleListItem.js.map +1 -1
  302. package/lib/modelToDom/handlers/handleParagraph.d.ts +1 -1
  303. package/lib/modelToDom/handlers/handleParagraph.js +15 -8
  304. package/lib/modelToDom/handlers/handleParagraph.js.map +1 -1
  305. package/lib/modelToDom/handlers/handleSegment.d.ts +1 -1
  306. package/lib/modelToDom/handlers/handleSegment.js.map +1 -1
  307. package/lib/modelToDom/handlers/handleSegmentDecorator.d.ts +1 -1
  308. package/lib/modelToDom/handlers/handleSegmentDecorator.js +22 -23
  309. package/lib/modelToDom/handlers/handleSegmentDecorator.js.map +1 -1
  310. package/lib/modelToDom/handlers/handleTable.d.ts +1 -1
  311. package/lib/modelToDom/handlers/handleTable.js +15 -11
  312. package/lib/modelToDom/handlers/handleTable.js.map +1 -1
  313. package/lib/modelToDom/handlers/handleText.d.ts +1 -1
  314. package/lib/modelToDom/handlers/handleText.js.map +1 -1
  315. package/lib/modelToDom/optimizers/mergeNode.js +2 -2
  316. package/lib/modelToDom/optimizers/mergeNode.js.map +1 -1
  317. package/lib/modelToDom/optimizers/optimize.js +2 -3
  318. package/lib/modelToDom/optimizers/optimize.js.map +1 -1
  319. package/lib/modelToDom/optimizers/removeUnnecessarySpan.js +1 -1
  320. package/lib/modelToDom/optimizers/removeUnnecessarySpan.js.map +1 -1
  321. package/lib/modelToDom/utils/applyFormat.d.ts +1 -1
  322. package/lib/modelToDom/utils/applyFormat.js.map +1 -1
  323. package/lib/modelToDom/utils/applyMetadata.d.ts +5 -0
  324. package/lib/modelToDom/utils/applyMetadata.js +17 -0
  325. package/lib/modelToDom/utils/applyMetadata.js.map +1 -0
  326. package/lib/modelToDom/utils/handleSegmentCommon.d.ts +1 -1
  327. package/lib/modelToDom/utils/handleSegmentCommon.js.map +1 -1
  328. package/lib/modelToDom/utils/reuseCachedElement.js +2 -6
  329. package/lib/modelToDom/utils/reuseCachedElement.js.map +1 -1
  330. package/lib/modelToDom/utils/stackFormat.d.ts +1 -1
  331. package/lib/modelToDom/utils/stackFormat.js.map +1 -1
  332. package/lib-amd/config/defaultContentModelFormatMap.d.ts +1 -1
  333. package/lib-amd/config/defaultContentModelFormatMap.js.map +1 -1
  334. package/lib-amd/config/defaultHTMLStyleMap.d.ts +1 -1
  335. package/lib-amd/config/defaultHTMLStyleMap.js.map +1 -1
  336. package/lib-amd/domToModel/context/createDomToModelContext.d.ts +1 -1
  337. package/lib-amd/domToModel/context/createDomToModelContext.js +2 -2
  338. package/lib-amd/domToModel/context/createDomToModelContext.js.map +1 -1
  339. package/lib-amd/domToModel/context/defaultProcessors.d.ts +1 -1
  340. package/lib-amd/domToModel/context/defaultProcessors.js.map +1 -1
  341. package/lib-amd/domToModel/domToContentModel.d.ts +2 -3
  342. package/lib-amd/domToModel/domToContentModel.js +1 -1
  343. package/lib-amd/domToModel/domToContentModel.js.map +1 -1
  344. package/lib-amd/domToModel/processors/blockProcessor.d.ts +1 -1
  345. package/lib-amd/domToModel/processors/blockProcessor.js.map +1 -1
  346. package/lib-amd/domToModel/processors/brProcessor.d.ts +1 -1
  347. package/lib-amd/domToModel/processors/brProcessor.js +3 -1
  348. package/lib-amd/domToModel/processors/brProcessor.js.map +1 -1
  349. package/lib-amd/domToModel/processors/childProcessor.d.ts +1 -1
  350. package/lib-amd/domToModel/processors/childProcessor.js +4 -4
  351. package/lib-amd/domToModel/processors/childProcessor.js.map +1 -1
  352. package/lib-amd/domToModel/processors/codeProcessor.d.ts +1 -1
  353. package/lib-amd/domToModel/processors/codeProcessor.js.map +1 -1
  354. package/lib-amd/domToModel/processors/delimiterProcessor.d.ts +1 -1
  355. package/lib-amd/domToModel/processors/delimiterProcessor.js.map +1 -1
  356. package/lib-amd/domToModel/processors/elementProcessor.d.ts +1 -1
  357. package/lib-amd/domToModel/processors/elementProcessor.js +3 -4
  358. package/lib-amd/domToModel/processors/elementProcessor.js.map +1 -1
  359. package/lib-amd/domToModel/processors/entityProcessor.d.ts +1 -1
  360. package/lib-amd/domToModel/processors/entityProcessor.js +7 -7
  361. package/lib-amd/domToModel/processors/entityProcessor.js.map +1 -1
  362. package/lib-amd/domToModel/processors/fontProcessor.d.ts +1 -1
  363. package/lib-amd/domToModel/processors/fontProcessor.js +1 -1
  364. package/lib-amd/domToModel/processors/fontProcessor.js.map +1 -1
  365. package/lib-amd/domToModel/processors/formatContainerProcessor.d.ts +1 -1
  366. package/lib-amd/domToModel/processors/formatContainerProcessor.js +1 -3
  367. package/lib-amd/domToModel/processors/formatContainerProcessor.js.map +1 -1
  368. package/lib-amd/domToModel/processors/generalProcessor.d.ts +1 -1
  369. package/lib-amd/domToModel/processors/generalProcessor.js +4 -4
  370. package/lib-amd/domToModel/processors/generalProcessor.js.map +1 -1
  371. package/lib-amd/domToModel/processors/headingProcessor.d.ts +1 -1
  372. package/lib-amd/domToModel/processors/headingProcessor.js +2 -2
  373. package/lib-amd/domToModel/processors/headingProcessor.js.map +1 -1
  374. package/lib-amd/domToModel/processors/hrProcessor.d.ts +1 -1
  375. package/lib-amd/domToModel/processors/hrProcessor.js.map +1 -1
  376. package/lib-amd/domToModel/processors/imageProcessor.d.ts +1 -1
  377. package/lib-amd/domToModel/processors/imageProcessor.js +4 -4
  378. package/lib-amd/domToModel/processors/imageProcessor.js.map +1 -1
  379. package/lib-amd/domToModel/processors/knownElementProcessor.d.ts +1 -1
  380. package/lib-amd/domToModel/processors/knownElementProcessor.js +2 -2
  381. package/lib-amd/domToModel/processors/knownElementProcessor.js.map +1 -1
  382. package/lib-amd/domToModel/processors/linkProcessor.d.ts +1 -1
  383. package/lib-amd/domToModel/processors/linkProcessor.js.map +1 -1
  384. package/lib-amd/domToModel/processors/listItemProcessor.d.ts +1 -1
  385. package/lib-amd/domToModel/processors/listItemProcessor.js +1 -1
  386. package/lib-amd/domToModel/processors/listItemProcessor.js.map +1 -1
  387. package/lib-amd/domToModel/processors/listProcessor.d.ts +1 -1
  388. package/lib-amd/domToModel/processors/listProcessor.js +2 -11
  389. package/lib-amd/domToModel/processors/listProcessor.js.map +1 -1
  390. package/lib-amd/domToModel/processors/pProcessor.d.ts +1 -1
  391. package/lib-amd/domToModel/processors/pProcessor.js.map +1 -1
  392. package/lib-amd/domToModel/processors/tableProcessor.d.ts +1 -1
  393. package/lib-amd/domToModel/processors/tableProcessor.js +14 -14
  394. package/lib-amd/domToModel/processors/tableProcessor.js.map +1 -1
  395. package/lib-amd/domToModel/processors/textProcessor.d.ts +1 -1
  396. package/lib-amd/domToModel/processors/textProcessor.js +22 -20
  397. package/lib-amd/domToModel/processors/textProcessor.js.map +1 -1
  398. package/lib-amd/domToModel/utils/addSelectionMarker.d.ts +1 -1
  399. package/lib-amd/domToModel/utils/addSelectionMarker.js.map +1 -1
  400. package/lib-amd/domToModel/utils/areSameFormats.d.ts +1 -1
  401. package/lib-amd/domToModel/utils/areSameFormats.js +3 -3
  402. package/lib-amd/domToModel/utils/areSameFormats.js.map +1 -1
  403. package/lib-amd/domToModel/utils/getDefaultStyle.d.ts +1 -3
  404. package/lib-amd/domToModel/utils/getDefaultStyle.js +1 -2
  405. package/lib-amd/domToModel/utils/getDefaultStyle.js.map +1 -1
  406. package/lib-amd/domToModel/utils/getRegularSelectionOffsets.d.ts +1 -1
  407. package/lib-amd/domToModel/utils/getRegularSelectionOffsets.js +1 -1
  408. package/lib-amd/domToModel/utils/getRegularSelectionOffsets.js.map +1 -1
  409. package/lib-amd/domToModel/utils/isBlockElement.d.ts +1 -3
  410. package/lib-amd/domToModel/utils/isBlockElement.js +2 -3
  411. package/lib-amd/domToModel/utils/isBlockElement.js.map +1 -1
  412. package/lib-amd/domToModel/utils/parseFormat.d.ts +1 -1
  413. package/lib-amd/domToModel/utils/parseFormat.js +1 -1
  414. package/lib-amd/domToModel/utils/parseFormat.js.map +1 -1
  415. package/lib-amd/domToModel/utils/stackFormat.d.ts +1 -1
  416. package/lib-amd/domToModel/utils/stackFormat.js +2 -2
  417. package/lib-amd/domToModel/utils/stackFormat.js.map +1 -1
  418. package/lib-amd/domUtils/entityUtils.d.ts +23 -0
  419. package/lib-amd/domUtils/entityUtils.js +78 -0
  420. package/lib-amd/domUtils/entityUtils.js.map +1 -0
  421. package/lib-amd/domUtils/getObjectKeys.d.ts +6 -0
  422. package/lib-amd/domUtils/getObjectKeys.js +15 -0
  423. package/lib-amd/domUtils/getObjectKeys.js.map +1 -0
  424. package/lib-amd/domUtils/isElementOfType.d.ts +7 -0
  425. package/lib-amd/domUtils/isElementOfType.js +17 -0
  426. package/lib-amd/domUtils/isElementOfType.js.map +1 -0
  427. package/lib-amd/domUtils/isNodeOfType.d.ts +9 -10
  428. package/lib-amd/domUtils/isNodeOfType.js +1 -1
  429. package/lib-amd/domUtils/isNodeOfType.js.map +1 -1
  430. package/lib-amd/domUtils/metadata/updateMetadata.d.ts +1 -2
  431. package/lib-amd/domUtils/metadata/updateMetadata.js +3 -3
  432. package/lib-amd/domUtils/metadata/updateMetadata.js.map +1 -1
  433. package/lib-amd/domUtils/metadata/validate.d.ts +9 -0
  434. package/lib-amd/domUtils/metadata/validate.js +63 -0
  435. package/lib-amd/domUtils/metadata/validate.js.map +1 -0
  436. package/lib-amd/domUtils/moveChildNodes.d.ts +14 -0
  437. package/lib-amd/domUtils/moveChildNodes.js +37 -0
  438. package/lib-amd/domUtils/moveChildNodes.js.map +1 -0
  439. package/lib-amd/domUtils/toArray.d.ts +27 -0
  440. package/lib-amd/domUtils/toArray.js +9 -0
  441. package/lib-amd/domUtils/toArray.js.map +1 -0
  442. package/lib-amd/domUtils/unwrap.d.ts +6 -0
  443. package/lib-amd/domUtils/unwrap.js +24 -0
  444. package/lib-amd/domUtils/unwrap.js.map +1 -0
  445. package/lib-amd/domUtils/wrap.d.ts +9 -0
  446. package/lib-amd/domUtils/wrap.js +22 -0
  447. package/lib-amd/domUtils/wrap.js.map +1 -0
  448. package/lib-amd/formatHandlers/FormatHandler.d.ts +1 -1
  449. package/lib-amd/formatHandlers/FormatHandler.js.map +1 -1
  450. package/lib-amd/formatHandlers/block/directionFormatHandler.d.ts +2 -2
  451. package/lib-amd/formatHandlers/block/directionFormatHandler.js.map +1 -1
  452. package/lib-amd/formatHandlers/block/displayFormatHandler.d.ts +2 -2
  453. package/lib-amd/formatHandlers/block/displayFormatHandler.js.map +1 -1
  454. package/lib-amd/formatHandlers/block/htmlAlignFormatHandler.d.ts +2 -2
  455. package/lib-amd/formatHandlers/block/htmlAlignFormatHandler.js.map +1 -1
  456. package/lib-amd/formatHandlers/block/lineHeightFormatHandler.d.ts +2 -2
  457. package/lib-amd/formatHandlers/block/lineHeightFormatHandler.js.map +1 -1
  458. package/lib-amd/formatHandlers/block/marginFormatHandler.d.ts +2 -2
  459. package/lib-amd/formatHandlers/block/marginFormatHandler.js.map +1 -1
  460. package/lib-amd/formatHandlers/block/paddingFormatHandler.d.ts +2 -2
  461. package/lib-amd/formatHandlers/block/paddingFormatHandler.js.map +1 -1
  462. package/lib-amd/formatHandlers/block/textAlignFormatHandler.d.ts +2 -2
  463. package/lib-amd/formatHandlers/block/textAlignFormatHandler.js.map +1 -1
  464. package/lib-amd/formatHandlers/block/whiteSpaceFormatHandler.d.ts +2 -2
  465. package/lib-amd/formatHandlers/block/whiteSpaceFormatHandler.js.map +1 -1
  466. package/lib-amd/formatHandlers/common/backgroundColorFormatHandler.d.ts +2 -2
  467. package/lib-amd/formatHandlers/common/backgroundColorFormatHandler.js.map +1 -1
  468. package/lib-amd/formatHandlers/common/borderBoxFormatHandler.d.ts +2 -2
  469. package/lib-amd/formatHandlers/common/borderBoxFormatHandler.js.map +1 -1
  470. package/lib-amd/formatHandlers/common/borderFormatHandler.d.ts +2 -2
  471. package/lib-amd/formatHandlers/common/borderFormatHandler.js.map +1 -1
  472. package/lib-amd/formatHandlers/common/boxShadowFormatHandler.d.ts +2 -2
  473. package/lib-amd/formatHandlers/common/boxShadowFormatHandler.js.map +1 -1
  474. package/lib-amd/formatHandlers/common/datasetFormatHandler.d.ts +2 -2
  475. package/lib-amd/formatHandlers/common/datasetFormatHandler.js +3 -3
  476. package/lib-amd/formatHandlers/common/datasetFormatHandler.js.map +1 -1
  477. package/lib-amd/formatHandlers/common/floatFormatHandler.d.ts +2 -2
  478. package/lib-amd/formatHandlers/common/floatFormatHandler.js.map +1 -1
  479. package/lib-amd/formatHandlers/common/idFormatHandler.d.ts +2 -2
  480. package/lib-amd/formatHandlers/common/idFormatHandler.js.map +1 -1
  481. package/lib-amd/formatHandlers/common/sizeFormatHandler.d.ts +2 -2
  482. package/lib-amd/formatHandlers/common/sizeFormatHandler.js.map +1 -1
  483. package/lib-amd/formatHandlers/common/verticalAlignFormatHandler.d.ts +2 -2
  484. package/lib-amd/formatHandlers/common/verticalAlignFormatHandler.js.map +1 -1
  485. package/lib-amd/formatHandlers/common/wordBreakFormatHandler.d.ts +2 -2
  486. package/lib-amd/formatHandlers/common/wordBreakFormatHandler.js.map +1 -1
  487. package/lib-amd/formatHandlers/defaultFormatHandlers.d.ts +1 -1
  488. package/lib-amd/formatHandlers/defaultFormatHandlers.js +13 -12
  489. package/lib-amd/formatHandlers/defaultFormatHandlers.js.map +1 -1
  490. package/lib-amd/formatHandlers/entity/entityFormatHandler.d.ts +6 -0
  491. package/lib-amd/formatHandlers/entity/entityFormatHandler.js +32 -0
  492. package/lib-amd/formatHandlers/entity/entityFormatHandler.js.map +1 -0
  493. package/lib-amd/formatHandlers/list/listItemThreadFormatHandler.d.ts +2 -2
  494. package/lib-amd/formatHandlers/list/listItemThreadFormatHandler.js +4 -3
  495. package/lib-amd/formatHandlers/list/listItemThreadFormatHandler.js.map +1 -1
  496. package/lib-amd/formatHandlers/list/listLevelThreadFormatHandler.d.ts +2 -2
  497. package/lib-amd/formatHandlers/list/listLevelThreadFormatHandler.js +6 -4
  498. package/lib-amd/formatHandlers/list/listLevelThreadFormatHandler.js.map +1 -1
  499. package/lib-amd/formatHandlers/list/listStyleFormatHandler.d.ts +6 -0
  500. package/lib-amd/formatHandlers/list/{listStylePositionFormatHandler.js → listStyleFormatHandler.js} +10 -3
  501. package/lib-amd/formatHandlers/list/listStyleFormatHandler.js.map +1 -0
  502. package/lib-amd/formatHandlers/segment/boldFormatHandler.d.ts +2 -2
  503. package/lib-amd/formatHandlers/segment/boldFormatHandler.js +2 -4
  504. package/lib-amd/formatHandlers/segment/boldFormatHandler.js.map +1 -1
  505. package/lib-amd/formatHandlers/segment/fontFamilyFormatHandler.d.ts +2 -2
  506. package/lib-amd/formatHandlers/segment/fontFamilyFormatHandler.js.map +1 -1
  507. package/lib-amd/formatHandlers/segment/fontSizeFormatHandler.d.ts +2 -2
  508. package/lib-amd/formatHandlers/segment/fontSizeFormatHandler.js.map +1 -1
  509. package/lib-amd/formatHandlers/segment/italicFormatHandler.d.ts +2 -2
  510. package/lib-amd/formatHandlers/segment/italicFormatHandler.js +2 -4
  511. package/lib-amd/formatHandlers/segment/italicFormatHandler.js.map +1 -1
  512. package/lib-amd/formatHandlers/segment/letterSpacingFormatHandler.d.ts +2 -2
  513. package/lib-amd/formatHandlers/segment/letterSpacingFormatHandler.js.map +1 -1
  514. package/lib-amd/formatHandlers/segment/linkFormatHandler.d.ts +2 -2
  515. package/lib-amd/formatHandlers/segment/linkFormatHandler.js +3 -3
  516. package/lib-amd/formatHandlers/segment/linkFormatHandler.js.map +1 -1
  517. package/lib-amd/formatHandlers/segment/strikeFormatHandler.d.ts +2 -2
  518. package/lib-amd/formatHandlers/segment/strikeFormatHandler.js +2 -4
  519. package/lib-amd/formatHandlers/segment/strikeFormatHandler.js.map +1 -1
  520. package/lib-amd/formatHandlers/segment/superOrSubScriptFormatHandler.d.ts +2 -2
  521. package/lib-amd/formatHandlers/segment/superOrSubScriptFormatHandler.js +2 -4
  522. package/lib-amd/formatHandlers/segment/superOrSubScriptFormatHandler.js.map +1 -1
  523. package/lib-amd/formatHandlers/segment/textColorFormatHandler.d.ts +2 -2
  524. package/lib-amd/formatHandlers/segment/textColorFormatHandler.js.map +1 -1
  525. package/lib-amd/formatHandlers/segment/underlineFormatHandler.d.ts +2 -2
  526. package/lib-amd/formatHandlers/segment/underlineFormatHandler.js +2 -4
  527. package/lib-amd/formatHandlers/segment/underlineFormatHandler.js.map +1 -1
  528. package/lib-amd/formatHandlers/table/tableLayoutFormatHandler.d.ts +2 -2
  529. package/lib-amd/formatHandlers/table/tableLayoutFormatHandler.js.map +1 -1
  530. package/lib-amd/formatHandlers/table/tableSpacingFormatHandler.d.ts +2 -2
  531. package/lib-amd/formatHandlers/table/tableSpacingFormatHandler.js.map +1 -1
  532. package/lib-amd/formatHandlers/table/textColorOnTableCellFormatHandler.d.ts +2 -2
  533. package/lib-amd/formatHandlers/table/textColorOnTableCellFormatHandler.js.map +1 -1
  534. package/lib-amd/formatHandlers/utils/color.d.ts +3 -3
  535. package/lib-amd/formatHandlers/utils/color.js +5 -27
  536. package/lib-amd/formatHandlers/utils/color.js.map +1 -1
  537. package/lib-amd/formatHandlers/utils/parseValueWithUnit.js +3 -2
  538. package/lib-amd/formatHandlers/utils/parseValueWithUnit.js.map +1 -1
  539. package/lib-amd/index.d.ts +7 -1
  540. package/lib-amd/index.js +10 -3
  541. package/lib-amd/index.js.map +1 -1
  542. package/lib-amd/modelApi/block/setParagraphNotImplicit.d.ts +1 -1
  543. package/lib-amd/modelApi/block/setParagraphNotImplicit.js.map +1 -1
  544. package/lib-amd/modelApi/common/addDecorators.d.ts +1 -1
  545. package/lib-amd/modelApi/common/addDecorators.js.map +1 -1
  546. package/lib-amd/modelApi/common/addSegment.d.ts +3 -2
  547. package/lib-amd/modelApi/common/addSegment.js +4 -10
  548. package/lib-amd/modelApi/common/addSegment.js.map +1 -1
  549. package/lib-amd/modelApi/common/applySegmentFormatToElement.d.ts +1 -1
  550. package/lib-amd/modelApi/common/applySegmentFormatToElement.js.map +1 -1
  551. package/lib-amd/modelApi/common/ensureParagraph.d.ts +7 -0
  552. package/lib-amd/modelApi/common/ensureParagraph.js +23 -0
  553. package/lib-amd/modelApi/common/ensureParagraph.js.map +1 -0
  554. package/lib-amd/modelApi/common/isEmpty.d.ts +1 -1
  555. package/lib-amd/modelApi/common/isEmpty.js.map +1 -1
  556. package/lib-amd/modelApi/common/isGeneralSegment.d.ts +1 -1
  557. package/lib-amd/modelApi/common/isGeneralSegment.js.map +1 -1
  558. package/lib-amd/modelApi/common/isWhiteSpacePreserved.d.ts +1 -1
  559. package/lib-amd/modelApi/common/isWhiteSpacePreserved.js.map +1 -1
  560. package/lib-amd/modelApi/common/normalizeContentModel.d.ts +1 -1
  561. package/lib-amd/modelApi/common/normalizeContentModel.js.map +1 -1
  562. package/lib-amd/modelApi/common/normalizeParagraph.d.ts +1 -1
  563. package/lib-amd/modelApi/common/normalizeParagraph.js.map +1 -1
  564. package/lib-amd/modelApi/common/normalizeSegment.d.ts +1 -1
  565. package/lib-amd/modelApi/common/normalizeSegment.js.map +1 -1
  566. package/lib-amd/modelApi/common/unwrapBlock.d.ts +1 -1
  567. package/lib-amd/modelApi/common/unwrapBlock.js.map +1 -1
  568. package/lib-amd/modelApi/creators/createBr.d.ts +1 -1
  569. package/lib-amd/modelApi/creators/createBr.js.map +1 -1
  570. package/lib-amd/modelApi/creators/createContentModelDocument.d.ts +1 -1
  571. package/lib-amd/modelApi/creators/createContentModelDocument.js.map +1 -1
  572. package/lib-amd/modelApi/creators/createDivider.d.ts +1 -1
  573. package/lib-amd/modelApi/creators/createDivider.js.map +1 -1
  574. package/lib-amd/modelApi/creators/createEntity.d.ts +4 -4
  575. package/lib-amd/modelApi/creators/createEntity.js +9 -6
  576. package/lib-amd/modelApi/creators/createEntity.js.map +1 -1
  577. package/lib-amd/modelApi/creators/createFormatContainer.d.ts +1 -1
  578. package/lib-amd/modelApi/creators/createFormatContainer.js.map +1 -1
  579. package/lib-amd/modelApi/creators/createGeneralBlock.d.ts +1 -1
  580. package/lib-amd/modelApi/creators/createGeneralBlock.js.map +1 -1
  581. package/lib-amd/modelApi/creators/createGeneralSegment.d.ts +1 -1
  582. package/lib-amd/modelApi/creators/createGeneralSegment.js.map +1 -1
  583. package/lib-amd/modelApi/creators/createImage.d.ts +1 -1
  584. package/lib-amd/modelApi/creators/createImage.js.map +1 -1
  585. package/lib-amd/modelApi/creators/createListItem.d.ts +1 -1
  586. package/lib-amd/modelApi/creators/createListItem.js.map +1 -1
  587. package/lib-amd/modelApi/creators/createListLevel.d.ts +1 -1
  588. package/lib-amd/modelApi/creators/createListLevel.js.map +1 -1
  589. package/lib-amd/modelApi/creators/createParagraphDecorator.d.ts +1 -1
  590. package/lib-amd/modelApi/creators/createParagraphDecorator.js.map +1 -1
  591. package/lib-amd/modelApi/creators/createSelectionMarker.d.ts +1 -1
  592. package/lib-amd/modelApi/creators/createSelectionMarker.js.map +1 -1
  593. package/lib-amd/modelApi/creators/createTable.d.ts +1 -1
  594. package/lib-amd/modelApi/creators/createTable.js.map +1 -1
  595. package/lib-amd/modelApi/creators/createTableCell.d.ts +1 -1
  596. package/lib-amd/modelApi/creators/createTableCell.js.map +1 -1
  597. package/lib-amd/modelApi/creators/createText.d.ts +1 -1
  598. package/lib-amd/modelApi/creators/createText.js.map +1 -1
  599. package/lib-amd/modelToDom/contentModelToDom.d.ts +2 -3
  600. package/lib-amd/modelToDom/contentModelToDom.js +38 -33
  601. package/lib-amd/modelToDom/contentModelToDom.js.map +1 -1
  602. package/lib-amd/modelToDom/context/createModelToDomContext.d.ts +1 -1
  603. package/lib-amd/modelToDom/context/createModelToDomContext.js +3 -2
  604. package/lib-amd/modelToDom/context/createModelToDomContext.js.map +1 -1
  605. package/lib-amd/modelToDom/context/defaultContentModelHandlers.d.ts +1 -1
  606. package/lib-amd/modelToDom/context/defaultContentModelHandlers.js.map +1 -1
  607. package/lib-amd/modelToDom/handlers/handleBlock.d.ts +1 -1
  608. package/lib-amd/modelToDom/handlers/handleBlock.js.map +1 -1
  609. package/lib-amd/modelToDom/handlers/handleBlockGroupChildren.d.ts +1 -1
  610. package/lib-amd/modelToDom/handlers/handleBlockGroupChildren.js.map +1 -1
  611. package/lib-amd/modelToDom/handlers/handleBr.d.ts +1 -1
  612. package/lib-amd/modelToDom/handlers/handleBr.js.map +1 -1
  613. package/lib-amd/modelToDom/handlers/handleDivider.d.ts +1 -1
  614. package/lib-amd/modelToDom/handlers/handleDivider.js.map +1 -1
  615. package/lib-amd/modelToDom/handlers/handleEntity.d.ts +1 -1
  616. package/lib-amd/modelToDom/handlers/handleEntity.js +10 -30
  617. package/lib-amd/modelToDom/handlers/handleEntity.js.map +1 -1
  618. package/lib-amd/modelToDom/handlers/handleFormatContainer.d.ts +1 -1
  619. package/lib-amd/modelToDom/handlers/handleFormatContainer.js.map +1 -1
  620. package/lib-amd/modelToDom/handlers/handleGeneralModel.d.ts +1 -1
  621. package/lib-amd/modelToDom/handlers/handleGeneralModel.js +3 -3
  622. package/lib-amd/modelToDom/handlers/handleGeneralModel.js.map +1 -1
  623. package/lib-amd/modelToDom/handlers/handleImage.d.ts +1 -1
  624. package/lib-amd/modelToDom/handlers/handleImage.js +1 -0
  625. package/lib-amd/modelToDom/handlers/handleImage.js.map +1 -1
  626. package/lib-amd/modelToDom/handlers/handleList.d.ts +1 -1
  627. package/lib-amd/modelToDom/handlers/handleList.js +8 -17
  628. package/lib-amd/modelToDom/handlers/handleList.js.map +1 -1
  629. package/lib-amd/modelToDom/handlers/handleListItem.d.ts +1 -1
  630. package/lib-amd/modelToDom/handlers/handleListItem.js +7 -9
  631. package/lib-amd/modelToDom/handlers/handleListItem.js.map +1 -1
  632. package/lib-amd/modelToDom/handlers/handleParagraph.d.ts +1 -1
  633. package/lib-amd/modelToDom/handlers/handleParagraph.js +14 -8
  634. package/lib-amd/modelToDom/handlers/handleParagraph.js.map +1 -1
  635. package/lib-amd/modelToDom/handlers/handleSegment.d.ts +1 -1
  636. package/lib-amd/modelToDom/handlers/handleSegment.js.map +1 -1
  637. package/lib-amd/modelToDom/handlers/handleSegmentDecorator.d.ts +1 -1
  638. package/lib-amd/modelToDom/handlers/handleSegmentDecorator.js +21 -23
  639. package/lib-amd/modelToDom/handlers/handleSegmentDecorator.js.map +1 -1
  640. package/lib-amd/modelToDom/handlers/handleTable.d.ts +1 -1
  641. package/lib-amd/modelToDom/handlers/handleTable.js +15 -11
  642. package/lib-amd/modelToDom/handlers/handleTable.js.map +1 -1
  643. package/lib-amd/modelToDom/handlers/handleText.d.ts +1 -1
  644. package/lib-amd/modelToDom/handlers/handleText.js.map +1 -1
  645. package/lib-amd/modelToDom/optimizers/mergeNode.js +2 -2
  646. package/lib-amd/modelToDom/optimizers/mergeNode.js.map +1 -1
  647. package/lib-amd/modelToDom/optimizers/optimize.js +2 -3
  648. package/lib-amd/modelToDom/optimizers/optimize.js.map +1 -1
  649. package/lib-amd/modelToDom/optimizers/removeUnnecessarySpan.js +1 -1
  650. package/lib-amd/modelToDom/optimizers/removeUnnecessarySpan.js.map +1 -1
  651. package/lib-amd/modelToDom/utils/applyFormat.d.ts +1 -1
  652. package/lib-amd/modelToDom/utils/applyFormat.js.map +1 -1
  653. package/lib-amd/modelToDom/utils/applyMetadata.d.ts +5 -0
  654. package/lib-amd/modelToDom/utils/applyMetadata.js +18 -0
  655. package/lib-amd/modelToDom/utils/applyMetadata.js.map +1 -0
  656. package/lib-amd/modelToDom/utils/handleSegmentCommon.d.ts +1 -1
  657. package/lib-amd/modelToDom/utils/handleSegmentCommon.js.map +1 -1
  658. package/lib-amd/modelToDom/utils/reuseCachedElement.js +2 -5
  659. package/lib-amd/modelToDom/utils/reuseCachedElement.js.map +1 -1
  660. package/lib-amd/modelToDom/utils/stackFormat.d.ts +1 -1
  661. package/lib-amd/modelToDom/utils/stackFormat.js.map +1 -1
  662. package/lib-mjs/config/defaultContentModelFormatMap.d.ts +1 -1
  663. package/lib-mjs/config/defaultContentModelFormatMap.js.map +1 -1
  664. package/lib-mjs/config/defaultHTMLStyleMap.d.ts +1 -1
  665. package/lib-mjs/config/defaultHTMLStyleMap.js.map +1 -1
  666. package/lib-mjs/domToModel/context/createDomToModelContext.d.ts +1 -1
  667. package/lib-mjs/domToModel/context/createDomToModelContext.js +1 -1
  668. package/lib-mjs/domToModel/context/createDomToModelContext.js.map +1 -1
  669. package/lib-mjs/domToModel/context/defaultProcessors.d.ts +1 -1
  670. package/lib-mjs/domToModel/context/defaultProcessors.js.map +1 -1
  671. package/lib-mjs/domToModel/domToContentModel.d.ts +2 -3
  672. package/lib-mjs/domToModel/domToContentModel.js +1 -1
  673. package/lib-mjs/domToModel/domToContentModel.js.map +1 -1
  674. package/lib-mjs/domToModel/processors/blockProcessor.d.ts +1 -1
  675. package/lib-mjs/domToModel/processors/blockProcessor.js.map +1 -1
  676. package/lib-mjs/domToModel/processors/brProcessor.d.ts +1 -1
  677. package/lib-mjs/domToModel/processors/brProcessor.js +3 -1
  678. package/lib-mjs/domToModel/processors/brProcessor.js.map +1 -1
  679. package/lib-mjs/domToModel/processors/childProcessor.d.ts +1 -1
  680. package/lib-mjs/domToModel/processors/childProcessor.js +4 -4
  681. package/lib-mjs/domToModel/processors/childProcessor.js.map +1 -1
  682. package/lib-mjs/domToModel/processors/codeProcessor.d.ts +1 -1
  683. package/lib-mjs/domToModel/processors/codeProcessor.js.map +1 -1
  684. package/lib-mjs/domToModel/processors/delimiterProcessor.d.ts +1 -1
  685. package/lib-mjs/domToModel/processors/delimiterProcessor.js.map +1 -1
  686. package/lib-mjs/domToModel/processors/elementProcessor.d.ts +1 -1
  687. package/lib-mjs/domToModel/processors/elementProcessor.js +3 -4
  688. package/lib-mjs/domToModel/processors/elementProcessor.js.map +1 -1
  689. package/lib-mjs/domToModel/processors/entityProcessor.d.ts +1 -1
  690. package/lib-mjs/domToModel/processors/entityProcessor.js +7 -7
  691. package/lib-mjs/domToModel/processors/entityProcessor.js.map +1 -1
  692. package/lib-mjs/domToModel/processors/fontProcessor.d.ts +1 -1
  693. package/lib-mjs/domToModel/processors/fontProcessor.js +1 -1
  694. package/lib-mjs/domToModel/processors/fontProcessor.js.map +1 -1
  695. package/lib-mjs/domToModel/processors/formatContainerProcessor.d.ts +1 -1
  696. package/lib-mjs/domToModel/processors/formatContainerProcessor.js +1 -3
  697. package/lib-mjs/domToModel/processors/formatContainerProcessor.js.map +1 -1
  698. package/lib-mjs/domToModel/processors/generalProcessor.d.ts +1 -1
  699. package/lib-mjs/domToModel/processors/generalProcessor.js +4 -4
  700. package/lib-mjs/domToModel/processors/generalProcessor.js.map +1 -1
  701. package/lib-mjs/domToModel/processors/headingProcessor.d.ts +1 -1
  702. package/lib-mjs/domToModel/processors/headingProcessor.js +1 -1
  703. package/lib-mjs/domToModel/processors/headingProcessor.js.map +1 -1
  704. package/lib-mjs/domToModel/processors/hrProcessor.d.ts +1 -1
  705. package/lib-mjs/domToModel/processors/hrProcessor.js.map +1 -1
  706. package/lib-mjs/domToModel/processors/imageProcessor.d.ts +1 -1
  707. package/lib-mjs/domToModel/processors/imageProcessor.js +4 -4
  708. package/lib-mjs/domToModel/processors/imageProcessor.js.map +1 -1
  709. package/lib-mjs/domToModel/processors/knownElementProcessor.d.ts +1 -1
  710. package/lib-mjs/domToModel/processors/knownElementProcessor.js +2 -2
  711. package/lib-mjs/domToModel/processors/knownElementProcessor.js.map +1 -1
  712. package/lib-mjs/domToModel/processors/linkProcessor.d.ts +1 -1
  713. package/lib-mjs/domToModel/processors/linkProcessor.js.map +1 -1
  714. package/lib-mjs/domToModel/processors/listItemProcessor.d.ts +1 -1
  715. package/lib-mjs/domToModel/processors/listItemProcessor.js +1 -1
  716. package/lib-mjs/domToModel/processors/listItemProcessor.js.map +1 -1
  717. package/lib-mjs/domToModel/processors/listProcessor.d.ts +1 -1
  718. package/lib-mjs/domToModel/processors/listProcessor.js +1 -12
  719. package/lib-mjs/domToModel/processors/listProcessor.js.map +1 -1
  720. package/lib-mjs/domToModel/processors/pProcessor.d.ts +1 -1
  721. package/lib-mjs/domToModel/processors/pProcessor.js.map +1 -1
  722. package/lib-mjs/domToModel/processors/tableProcessor.d.ts +1 -1
  723. package/lib-mjs/domToModel/processors/tableProcessor.js +15 -14
  724. package/lib-mjs/domToModel/processors/tableProcessor.js.map +1 -1
  725. package/lib-mjs/domToModel/processors/textProcessor.d.ts +1 -1
  726. package/lib-mjs/domToModel/processors/textProcessor.js +22 -21
  727. package/lib-mjs/domToModel/processors/textProcessor.js.map +1 -1
  728. package/lib-mjs/domToModel/utils/addSelectionMarker.d.ts +1 -1
  729. package/lib-mjs/domToModel/utils/addSelectionMarker.js.map +1 -1
  730. package/lib-mjs/domToModel/utils/areSameFormats.d.ts +1 -1
  731. package/lib-mjs/domToModel/utils/areSameFormats.js +1 -1
  732. package/lib-mjs/domToModel/utils/areSameFormats.js.map +1 -1
  733. package/lib-mjs/domToModel/utils/getDefaultStyle.d.ts +1 -3
  734. package/lib-mjs/domToModel/utils/getDefaultStyle.js +1 -2
  735. package/lib-mjs/domToModel/utils/getDefaultStyle.js.map +1 -1
  736. package/lib-mjs/domToModel/utils/getRegularSelectionOffsets.d.ts +1 -1
  737. package/lib-mjs/domToModel/utils/getRegularSelectionOffsets.js +1 -1
  738. package/lib-mjs/domToModel/utils/getRegularSelectionOffsets.js.map +1 -1
  739. package/lib-mjs/domToModel/utils/isBlockElement.d.ts +1 -3
  740. package/lib-mjs/domToModel/utils/isBlockElement.js +2 -3
  741. package/lib-mjs/domToModel/utils/isBlockElement.js.map +1 -1
  742. package/lib-mjs/domToModel/utils/parseFormat.d.ts +1 -1
  743. package/lib-mjs/domToModel/utils/parseFormat.js +1 -1
  744. package/lib-mjs/domToModel/utils/parseFormat.js.map +1 -1
  745. package/lib-mjs/domToModel/utils/stackFormat.d.ts +1 -1
  746. package/lib-mjs/domToModel/utils/stackFormat.js +1 -1
  747. package/lib-mjs/domToModel/utils/stackFormat.js.map +1 -1
  748. package/lib-mjs/domUtils/entityUtils.d.ts +23 -0
  749. package/lib-mjs/domUtils/entityUtils.js +70 -0
  750. package/lib-mjs/domUtils/entityUtils.js.map +1 -0
  751. package/lib-mjs/domUtils/getObjectKeys.d.ts +6 -0
  752. package/lib-mjs/domUtils/getObjectKeys.js +9 -0
  753. package/lib-mjs/domUtils/getObjectKeys.js.map +1 -0
  754. package/lib-mjs/domUtils/isElementOfType.d.ts +7 -0
  755. package/lib-mjs/domUtils/isElementOfType.js +11 -0
  756. package/lib-mjs/domUtils/isElementOfType.js.map +1 -0
  757. package/lib-mjs/domUtils/isNodeOfType.d.ts +9 -10
  758. package/lib-mjs/domUtils/isNodeOfType.js +1 -1
  759. package/lib-mjs/domUtils/isNodeOfType.js.map +1 -1
  760. package/lib-mjs/domUtils/metadata/updateMetadata.d.ts +1 -2
  761. package/lib-mjs/domUtils/metadata/updateMetadata.js +1 -1
  762. package/lib-mjs/domUtils/metadata/updateMetadata.js.map +1 -1
  763. package/lib-mjs/domUtils/metadata/validate.d.ts +9 -0
  764. package/lib-mjs/domUtils/metadata/validate.js +58 -0
  765. package/lib-mjs/domUtils/metadata/validate.js.map +1 -0
  766. package/lib-mjs/domUtils/moveChildNodes.d.ts +14 -0
  767. package/lib-mjs/domUtils/moveChildNodes.js +30 -0
  768. package/lib-mjs/domUtils/moveChildNodes.js.map +1 -0
  769. package/lib-mjs/domUtils/toArray.d.ts +27 -0
  770. package/lib-mjs/domUtils/toArray.js +4 -0
  771. package/lib-mjs/domUtils/toArray.js.map +1 -0
  772. package/lib-mjs/domUtils/unwrap.d.ts +6 -0
  773. package/lib-mjs/domUtils/unwrap.js +18 -0
  774. package/lib-mjs/domUtils/unwrap.js.map +1 -0
  775. package/lib-mjs/domUtils/wrap.d.ts +9 -0
  776. package/lib-mjs/domUtils/wrap.js +16 -0
  777. package/lib-mjs/domUtils/wrap.js.map +1 -0
  778. package/lib-mjs/formatHandlers/FormatHandler.d.ts +1 -1
  779. package/lib-mjs/formatHandlers/FormatHandler.js.map +1 -1
  780. package/lib-mjs/formatHandlers/block/directionFormatHandler.d.ts +2 -2
  781. package/lib-mjs/formatHandlers/block/directionFormatHandler.js.map +1 -1
  782. package/lib-mjs/formatHandlers/block/displayFormatHandler.d.ts +2 -2
  783. package/lib-mjs/formatHandlers/block/displayFormatHandler.js.map +1 -1
  784. package/lib-mjs/formatHandlers/block/htmlAlignFormatHandler.d.ts +2 -2
  785. package/lib-mjs/formatHandlers/block/htmlAlignFormatHandler.js.map +1 -1
  786. package/lib-mjs/formatHandlers/block/lineHeightFormatHandler.d.ts +2 -2
  787. package/lib-mjs/formatHandlers/block/lineHeightFormatHandler.js.map +1 -1
  788. package/lib-mjs/formatHandlers/block/marginFormatHandler.d.ts +2 -2
  789. package/lib-mjs/formatHandlers/block/marginFormatHandler.js.map +1 -1
  790. package/lib-mjs/formatHandlers/block/paddingFormatHandler.d.ts +2 -2
  791. package/lib-mjs/formatHandlers/block/paddingFormatHandler.js.map +1 -1
  792. package/lib-mjs/formatHandlers/block/textAlignFormatHandler.d.ts +2 -2
  793. package/lib-mjs/formatHandlers/block/textAlignFormatHandler.js.map +1 -1
  794. package/lib-mjs/formatHandlers/block/whiteSpaceFormatHandler.d.ts +2 -2
  795. package/lib-mjs/formatHandlers/block/whiteSpaceFormatHandler.js.map +1 -1
  796. package/lib-mjs/formatHandlers/common/backgroundColorFormatHandler.d.ts +2 -2
  797. package/lib-mjs/formatHandlers/common/backgroundColorFormatHandler.js.map +1 -1
  798. package/lib-mjs/formatHandlers/common/borderBoxFormatHandler.d.ts +2 -2
  799. package/lib-mjs/formatHandlers/common/borderBoxFormatHandler.js.map +1 -1
  800. package/lib-mjs/formatHandlers/common/borderFormatHandler.d.ts +2 -2
  801. package/lib-mjs/formatHandlers/common/borderFormatHandler.js.map +1 -1
  802. package/lib-mjs/formatHandlers/common/boxShadowFormatHandler.d.ts +2 -2
  803. package/lib-mjs/formatHandlers/common/boxShadowFormatHandler.js.map +1 -1
  804. package/lib-mjs/formatHandlers/common/datasetFormatHandler.d.ts +2 -2
  805. package/lib-mjs/formatHandlers/common/datasetFormatHandler.js +1 -1
  806. package/lib-mjs/formatHandlers/common/datasetFormatHandler.js.map +1 -1
  807. package/lib-mjs/formatHandlers/common/floatFormatHandler.d.ts +2 -2
  808. package/lib-mjs/formatHandlers/common/floatFormatHandler.js.map +1 -1
  809. package/lib-mjs/formatHandlers/common/idFormatHandler.d.ts +2 -2
  810. package/lib-mjs/formatHandlers/common/idFormatHandler.js.map +1 -1
  811. package/lib-mjs/formatHandlers/common/sizeFormatHandler.d.ts +2 -2
  812. package/lib-mjs/formatHandlers/common/sizeFormatHandler.js.map +1 -1
  813. package/lib-mjs/formatHandlers/common/verticalAlignFormatHandler.d.ts +2 -2
  814. package/lib-mjs/formatHandlers/common/verticalAlignFormatHandler.js.map +1 -1
  815. package/lib-mjs/formatHandlers/common/wordBreakFormatHandler.d.ts +2 -2
  816. package/lib-mjs/formatHandlers/common/wordBreakFormatHandler.js.map +1 -1
  817. package/lib-mjs/formatHandlers/defaultFormatHandlers.d.ts +1 -1
  818. package/lib-mjs/formatHandlers/defaultFormatHandlers.js +13 -11
  819. package/lib-mjs/formatHandlers/defaultFormatHandlers.js.map +1 -1
  820. package/lib-mjs/formatHandlers/entity/entityFormatHandler.d.ts +6 -0
  821. package/lib-mjs/formatHandlers/entity/entityFormatHandler.js +28 -0
  822. package/lib-mjs/formatHandlers/entity/entityFormatHandler.js.map +1 -0
  823. package/lib-mjs/formatHandlers/list/listItemThreadFormatHandler.d.ts +2 -2
  824. package/lib-mjs/formatHandlers/list/listItemThreadFormatHandler.js +5 -3
  825. package/lib-mjs/formatHandlers/list/listItemThreadFormatHandler.js.map +1 -1
  826. package/lib-mjs/formatHandlers/list/listLevelThreadFormatHandler.d.ts +2 -2
  827. package/lib-mjs/formatHandlers/list/listLevelThreadFormatHandler.js +6 -4
  828. package/lib-mjs/formatHandlers/list/listLevelThreadFormatHandler.js.map +1 -1
  829. package/lib-mjs/formatHandlers/list/listStyleFormatHandler.d.ts +6 -0
  830. package/lib-mjs/formatHandlers/list/{listStylePositionFormatHandler.js → listStyleFormatHandler.js} +9 -2
  831. package/lib-mjs/formatHandlers/list/listStyleFormatHandler.js.map +1 -0
  832. package/lib-mjs/formatHandlers/segment/boldFormatHandler.d.ts +2 -2
  833. package/lib-mjs/formatHandlers/segment/boldFormatHandler.js +2 -4
  834. package/lib-mjs/formatHandlers/segment/boldFormatHandler.js.map +1 -1
  835. package/lib-mjs/formatHandlers/segment/fontFamilyFormatHandler.d.ts +2 -2
  836. package/lib-mjs/formatHandlers/segment/fontFamilyFormatHandler.js.map +1 -1
  837. package/lib-mjs/formatHandlers/segment/fontSizeFormatHandler.d.ts +2 -2
  838. package/lib-mjs/formatHandlers/segment/fontSizeFormatHandler.js.map +1 -1
  839. package/lib-mjs/formatHandlers/segment/italicFormatHandler.d.ts +2 -2
  840. package/lib-mjs/formatHandlers/segment/italicFormatHandler.js +2 -4
  841. package/lib-mjs/formatHandlers/segment/italicFormatHandler.js.map +1 -1
  842. package/lib-mjs/formatHandlers/segment/letterSpacingFormatHandler.d.ts +2 -2
  843. package/lib-mjs/formatHandlers/segment/letterSpacingFormatHandler.js.map +1 -1
  844. package/lib-mjs/formatHandlers/segment/linkFormatHandler.d.ts +2 -2
  845. package/lib-mjs/formatHandlers/segment/linkFormatHandler.js +3 -3
  846. package/lib-mjs/formatHandlers/segment/linkFormatHandler.js.map +1 -1
  847. package/lib-mjs/formatHandlers/segment/strikeFormatHandler.d.ts +2 -2
  848. package/lib-mjs/formatHandlers/segment/strikeFormatHandler.js +2 -4
  849. package/lib-mjs/formatHandlers/segment/strikeFormatHandler.js.map +1 -1
  850. package/lib-mjs/formatHandlers/segment/superOrSubScriptFormatHandler.d.ts +2 -2
  851. package/lib-mjs/formatHandlers/segment/superOrSubScriptFormatHandler.js +2 -4
  852. package/lib-mjs/formatHandlers/segment/superOrSubScriptFormatHandler.js.map +1 -1
  853. package/lib-mjs/formatHandlers/segment/textColorFormatHandler.d.ts +2 -2
  854. package/lib-mjs/formatHandlers/segment/textColorFormatHandler.js.map +1 -1
  855. package/lib-mjs/formatHandlers/segment/underlineFormatHandler.d.ts +2 -2
  856. package/lib-mjs/formatHandlers/segment/underlineFormatHandler.js +2 -4
  857. package/lib-mjs/formatHandlers/segment/underlineFormatHandler.js.map +1 -1
  858. package/lib-mjs/formatHandlers/table/tableLayoutFormatHandler.d.ts +2 -2
  859. package/lib-mjs/formatHandlers/table/tableLayoutFormatHandler.js.map +1 -1
  860. package/lib-mjs/formatHandlers/table/tableSpacingFormatHandler.d.ts +2 -2
  861. package/lib-mjs/formatHandlers/table/tableSpacingFormatHandler.js.map +1 -1
  862. package/lib-mjs/formatHandlers/table/textColorOnTableCellFormatHandler.d.ts +2 -2
  863. package/lib-mjs/formatHandlers/table/textColorOnTableCellFormatHandler.js.map +1 -1
  864. package/lib-mjs/formatHandlers/utils/color.d.ts +3 -3
  865. package/lib-mjs/formatHandlers/utils/color.js +4 -27
  866. package/lib-mjs/formatHandlers/utils/color.js.map +1 -1
  867. package/lib-mjs/formatHandlers/utils/parseValueWithUnit.js +2 -2
  868. package/lib-mjs/formatHandlers/utils/parseValueWithUnit.js.map +1 -1
  869. package/lib-mjs/index.d.ts +7 -1
  870. package/lib-mjs/index.js +7 -1
  871. package/lib-mjs/index.js.map +1 -1
  872. package/lib-mjs/modelApi/block/setParagraphNotImplicit.d.ts +1 -1
  873. package/lib-mjs/modelApi/block/setParagraphNotImplicit.js.map +1 -1
  874. package/lib-mjs/modelApi/common/addDecorators.d.ts +1 -1
  875. package/lib-mjs/modelApi/common/addDecorators.js.map +1 -1
  876. package/lib-mjs/modelApi/common/addSegment.d.ts +3 -2
  877. package/lib-mjs/modelApi/common/addSegment.js +4 -11
  878. package/lib-mjs/modelApi/common/addSegment.js.map +1 -1
  879. package/lib-mjs/modelApi/common/applySegmentFormatToElement.d.ts +1 -1
  880. package/lib-mjs/modelApi/common/applySegmentFormatToElement.js.map +1 -1
  881. package/lib-mjs/modelApi/common/ensureParagraph.d.ts +7 -0
  882. package/lib-mjs/modelApi/common/ensureParagraph.js +19 -0
  883. package/lib-mjs/modelApi/common/ensureParagraph.js.map +1 -0
  884. package/lib-mjs/modelApi/common/isEmpty.d.ts +1 -1
  885. package/lib-mjs/modelApi/common/isEmpty.js.map +1 -1
  886. package/lib-mjs/modelApi/common/isGeneralSegment.d.ts +1 -1
  887. package/lib-mjs/modelApi/common/isGeneralSegment.js.map +1 -1
  888. package/lib-mjs/modelApi/common/isWhiteSpacePreserved.d.ts +1 -1
  889. package/lib-mjs/modelApi/common/isWhiteSpacePreserved.js.map +1 -1
  890. package/lib-mjs/modelApi/common/normalizeContentModel.d.ts +1 -1
  891. package/lib-mjs/modelApi/common/normalizeContentModel.js.map +1 -1
  892. package/lib-mjs/modelApi/common/normalizeParagraph.d.ts +1 -1
  893. package/lib-mjs/modelApi/common/normalizeParagraph.js.map +1 -1
  894. package/lib-mjs/modelApi/common/normalizeSegment.d.ts +1 -1
  895. package/lib-mjs/modelApi/common/normalizeSegment.js.map +1 -1
  896. package/lib-mjs/modelApi/common/unwrapBlock.d.ts +1 -1
  897. package/lib-mjs/modelApi/common/unwrapBlock.js.map +1 -1
  898. package/lib-mjs/modelApi/creators/createBr.d.ts +1 -1
  899. package/lib-mjs/modelApi/creators/createBr.js.map +1 -1
  900. package/lib-mjs/modelApi/creators/createContentModelDocument.d.ts +1 -1
  901. package/lib-mjs/modelApi/creators/createContentModelDocument.js.map +1 -1
  902. package/lib-mjs/modelApi/creators/createDivider.d.ts +1 -1
  903. package/lib-mjs/modelApi/creators/createDivider.js.map +1 -1
  904. package/lib-mjs/modelApi/creators/createEntity.d.ts +4 -4
  905. package/lib-mjs/modelApi/creators/createEntity.js +9 -6
  906. package/lib-mjs/modelApi/creators/createEntity.js.map +1 -1
  907. package/lib-mjs/modelApi/creators/createFormatContainer.d.ts +1 -1
  908. package/lib-mjs/modelApi/creators/createFormatContainer.js.map +1 -1
  909. package/lib-mjs/modelApi/creators/createGeneralBlock.d.ts +1 -1
  910. package/lib-mjs/modelApi/creators/createGeneralBlock.js.map +1 -1
  911. package/lib-mjs/modelApi/creators/createGeneralSegment.d.ts +1 -1
  912. package/lib-mjs/modelApi/creators/createGeneralSegment.js.map +1 -1
  913. package/lib-mjs/modelApi/creators/createImage.d.ts +1 -1
  914. package/lib-mjs/modelApi/creators/createImage.js.map +1 -1
  915. package/lib-mjs/modelApi/creators/createListItem.d.ts +1 -1
  916. package/lib-mjs/modelApi/creators/createListItem.js.map +1 -1
  917. package/lib-mjs/modelApi/creators/createListLevel.d.ts +1 -1
  918. package/lib-mjs/modelApi/creators/createListLevel.js.map +1 -1
  919. package/lib-mjs/modelApi/creators/createParagraphDecorator.d.ts +1 -1
  920. package/lib-mjs/modelApi/creators/createParagraphDecorator.js.map +1 -1
  921. package/lib-mjs/modelApi/creators/createSelectionMarker.d.ts +1 -1
  922. package/lib-mjs/modelApi/creators/createSelectionMarker.js.map +1 -1
  923. package/lib-mjs/modelApi/creators/createTable.d.ts +1 -1
  924. package/lib-mjs/modelApi/creators/createTable.js.map +1 -1
  925. package/lib-mjs/modelApi/creators/createTableCell.d.ts +1 -1
  926. package/lib-mjs/modelApi/creators/createTableCell.js.map +1 -1
  927. package/lib-mjs/modelApi/creators/createText.d.ts +1 -1
  928. package/lib-mjs/modelApi/creators/createText.js.map +1 -1
  929. package/lib-mjs/modelToDom/contentModelToDom.d.ts +2 -3
  930. package/lib-mjs/modelToDom/contentModelToDom.js +38 -33
  931. package/lib-mjs/modelToDom/contentModelToDom.js.map +1 -1
  932. package/lib-mjs/modelToDom/context/createModelToDomContext.d.ts +1 -1
  933. package/lib-mjs/modelToDom/context/createModelToDomContext.js +2 -1
  934. package/lib-mjs/modelToDom/context/createModelToDomContext.js.map +1 -1
  935. package/lib-mjs/modelToDom/context/defaultContentModelHandlers.d.ts +1 -1
  936. package/lib-mjs/modelToDom/context/defaultContentModelHandlers.js.map +1 -1
  937. package/lib-mjs/modelToDom/handlers/handleBlock.d.ts +1 -1
  938. package/lib-mjs/modelToDom/handlers/handleBlock.js.map +1 -1
  939. package/lib-mjs/modelToDom/handlers/handleBlockGroupChildren.d.ts +1 -1
  940. package/lib-mjs/modelToDom/handlers/handleBlockGroupChildren.js.map +1 -1
  941. package/lib-mjs/modelToDom/handlers/handleBr.d.ts +1 -1
  942. package/lib-mjs/modelToDom/handlers/handleBr.js.map +1 -1
  943. package/lib-mjs/modelToDom/handlers/handleDivider.d.ts +1 -1
  944. package/lib-mjs/modelToDom/handlers/handleDivider.js.map +1 -1
  945. package/lib-mjs/modelToDom/handlers/handleEntity.d.ts +1 -1
  946. package/lib-mjs/modelToDom/handlers/handleEntity.js +11 -29
  947. package/lib-mjs/modelToDom/handlers/handleEntity.js.map +1 -1
  948. package/lib-mjs/modelToDom/handlers/handleFormatContainer.d.ts +1 -1
  949. package/lib-mjs/modelToDom/handlers/handleFormatContainer.js.map +1 -1
  950. package/lib-mjs/modelToDom/handlers/handleGeneralModel.d.ts +1 -1
  951. package/lib-mjs/modelToDom/handlers/handleGeneralModel.js +3 -3
  952. package/lib-mjs/modelToDom/handlers/handleGeneralModel.js.map +1 -1
  953. package/lib-mjs/modelToDom/handlers/handleImage.d.ts +1 -1
  954. package/lib-mjs/modelToDom/handlers/handleImage.js +1 -0
  955. package/lib-mjs/modelToDom/handlers/handleImage.js.map +1 -1
  956. package/lib-mjs/modelToDom/handlers/handleList.d.ts +1 -1
  957. package/lib-mjs/modelToDom/handlers/handleList.js +8 -18
  958. package/lib-mjs/modelToDom/handlers/handleList.js.map +1 -1
  959. package/lib-mjs/modelToDom/handlers/handleListItem.d.ts +1 -1
  960. package/lib-mjs/modelToDom/handlers/handleListItem.js +7 -10
  961. package/lib-mjs/modelToDom/handlers/handleListItem.js.map +1 -1
  962. package/lib-mjs/modelToDom/handlers/handleParagraph.d.ts +1 -1
  963. package/lib-mjs/modelToDom/handlers/handleParagraph.js +13 -6
  964. package/lib-mjs/modelToDom/handlers/handleParagraph.js.map +1 -1
  965. package/lib-mjs/modelToDom/handlers/handleSegment.d.ts +1 -1
  966. package/lib-mjs/modelToDom/handlers/handleSegment.js.map +1 -1
  967. package/lib-mjs/modelToDom/handlers/handleSegmentDecorator.d.ts +1 -1
  968. package/lib-mjs/modelToDom/handlers/handleSegmentDecorator.js +22 -23
  969. package/lib-mjs/modelToDom/handlers/handleSegmentDecorator.js.map +1 -1
  970. package/lib-mjs/modelToDom/handlers/handleTable.d.ts +1 -1
  971. package/lib-mjs/modelToDom/handlers/handleTable.js +13 -9
  972. package/lib-mjs/modelToDom/handlers/handleTable.js.map +1 -1
  973. package/lib-mjs/modelToDom/handlers/handleText.d.ts +1 -1
  974. package/lib-mjs/modelToDom/handlers/handleText.js.map +1 -1
  975. package/lib-mjs/modelToDom/optimizers/mergeNode.js +2 -2
  976. package/lib-mjs/modelToDom/optimizers/mergeNode.js.map +1 -1
  977. package/lib-mjs/modelToDom/optimizers/optimize.js +2 -3
  978. package/lib-mjs/modelToDom/optimizers/optimize.js.map +1 -1
  979. package/lib-mjs/modelToDom/optimizers/removeUnnecessarySpan.js +1 -1
  980. package/lib-mjs/modelToDom/optimizers/removeUnnecessarySpan.js.map +1 -1
  981. package/lib-mjs/modelToDom/utils/applyFormat.d.ts +1 -1
  982. package/lib-mjs/modelToDom/utils/applyFormat.js.map +1 -1
  983. package/lib-mjs/modelToDom/utils/applyMetadata.d.ts +5 -0
  984. package/lib-mjs/modelToDom/utils/applyMetadata.js +13 -0
  985. package/lib-mjs/modelToDom/utils/applyMetadata.js.map +1 -0
  986. package/lib-mjs/modelToDom/utils/handleSegmentCommon.d.ts +1 -1
  987. package/lib-mjs/modelToDom/utils/handleSegmentCommon.js.map +1 -1
  988. package/lib-mjs/modelToDom/utils/reuseCachedElement.js +2 -6
  989. package/lib-mjs/modelToDom/utils/reuseCachedElement.js.map +1 -1
  990. package/lib-mjs/modelToDom/utils/stackFormat.d.ts +1 -1
  991. package/lib-mjs/modelToDom/utils/stackFormat.js.map +1 -1
  992. package/package.json +2 -4
  993. package/lib/domUtils/metadata/updateListMetadata.d.ts +0 -7
  994. package/lib/domUtils/metadata/updateListMetadata.js +0 -19
  995. package/lib/domUtils/metadata/updateListMetadata.js.map +0 -1
  996. package/lib/formatHandlers/list/listItemMetadataFormatHandler.d.ts +0 -11
  997. package/lib/formatHandlers/list/listItemMetadataFormatHandler.js +0 -102
  998. package/lib/formatHandlers/list/listItemMetadataFormatHandler.js.map +0 -1
  999. package/lib/formatHandlers/list/listLevelMetadataFormatHandler.d.ts +0 -15
  1000. package/lib/formatHandlers/list/listLevelMetadataFormatHandler.js +0 -88
  1001. package/lib/formatHandlers/list/listLevelMetadataFormatHandler.js.map +0 -1
  1002. package/lib/formatHandlers/list/listStylePositionFormatHandler.d.ts +0 -6
  1003. package/lib/formatHandlers/list/listStylePositionFormatHandler.js.map +0 -1
  1004. package/lib-amd/domUtils/metadata/updateListMetadata.d.ts +0 -7
  1005. package/lib-amd/domUtils/metadata/updateListMetadata.js +0 -19
  1006. package/lib-amd/domUtils/metadata/updateListMetadata.js.map +0 -1
  1007. package/lib-amd/formatHandlers/list/listItemMetadataFormatHandler.d.ts +0 -11
  1008. package/lib-amd/formatHandlers/list/listItemMetadataFormatHandler.js +0 -100
  1009. package/lib-amd/formatHandlers/list/listItemMetadataFormatHandler.js.map +0 -1
  1010. package/lib-amd/formatHandlers/list/listLevelMetadataFormatHandler.d.ts +0 -15
  1011. package/lib-amd/formatHandlers/list/listLevelMetadataFormatHandler.js +0 -89
  1012. package/lib-amd/formatHandlers/list/listLevelMetadataFormatHandler.js.map +0 -1
  1013. package/lib-amd/formatHandlers/list/listStylePositionFormatHandler.d.ts +0 -6
  1014. package/lib-amd/formatHandlers/list/listStylePositionFormatHandler.js.map +0 -1
  1015. package/lib-mjs/domUtils/metadata/updateListMetadata.d.ts +0 -7
  1016. package/lib-mjs/domUtils/metadata/updateListMetadata.js +0 -15
  1017. package/lib-mjs/domUtils/metadata/updateListMetadata.js.map +0 -1
  1018. package/lib-mjs/formatHandlers/list/listItemMetadataFormatHandler.d.ts +0 -11
  1019. package/lib-mjs/formatHandlers/list/listItemMetadataFormatHandler.js +0 -98
  1020. package/lib-mjs/formatHandlers/list/listItemMetadataFormatHandler.js.map +0 -1
  1021. package/lib-mjs/formatHandlers/list/listLevelMetadataFormatHandler.d.ts +0 -15
  1022. package/lib-mjs/formatHandlers/list/listLevelMetadataFormatHandler.js +0 -85
  1023. package/lib-mjs/formatHandlers/list/listLevelMetadataFormatHandler.js.map +0 -1
  1024. package/lib-mjs/formatHandlers/list/listStylePositionFormatHandler.d.ts +0 -6
  1025. package/lib-mjs/formatHandlers/list/listStylePositionFormatHandler.js.map +0 -1
package/README.md CHANGED
@@ -128,81 +128,36 @@ In order to run the code below, you may also need to install [webpack](https://w
128
128
 
129
129
  ### A quick start
130
130
 
131
- 1. Create `editor.htm` contains a DIV with some styles, and a reference to a
132
- .js file:
131
+ 1. Create `editor.htm` which contains a DIV with some styles, buttons to handle some click events and a reference to rooster.js (update with the path to your rooster.js file):
133
132
 
134
133
  ```html
135
134
  <html>
136
135
  <body>
137
- <div
138
- id="editorDiv"
139
- style="width: 500px; height: 300px; overflow: auto;
140
- border: solid 1px black"
141
- ></div>
142
- <script src="editor.js"></script>
143
- </body>
144
- </html>
145
- ```
146
-
147
- 2. Create `source.js` to import roosterjs and create an editor:
148
-
149
- ```javascript
150
- var roosterjs = require('roosterjs');
151
- var editorDiv = document.getElementById('editorDiv');
152
- var editor = roosterjs.createEditor(editorDiv);
153
- editor.setContent('Welcome to <b>RoosterJs</b>!');
154
- ```
155
-
156
- 3. Compile the javascript file using webpack:
157
-
158
- `webpack source.js editor.js`
159
-
160
- 4. Navigate to editor.htm, you will see a editor shown in the page.
161
-
162
- ### Add some format buttons
163
-
164
- 1. Add some buttons into `editor.htm`:
165
-
166
- ```html
167
- <html>
168
- <body>
169
- <div
170
- id="editorDiv"
171
- style="width: 500px; height: 300px; overflow: auto;
172
- border: solid 1px black"
173
- ></div>
136
+ <div style="width: 500px; height: 400px; border: solid 1px black" id="contentDiv"></div>
174
137
  <button id="buttonB">B</button> <button id="buttonI">I</button>
175
138
  <button id="buttonU">U</button>
176
- <script src="editor.js"></script>
139
+ <script src="rooster.js"></script>
140
+ <script>
141
+ var contentDiv = document.getElementById('contentDiv');
142
+ var editor = roosterjs.createEditor(contentDiv);
143
+
144
+ editor.setContent('Welcome to <b>RoosterJs</b>!');
145
+ document.getElementById('buttonB').addEventListener('click', function () {
146
+ roosterjs.toggleBold(editor);
147
+ });
148
+ document.getElementById('buttonI').addEventListener('click', function () {
149
+ roosterjs.toggleItalic(editor);
150
+ });
151
+ document.getElementById('buttonU').addEventListener('click', function () {
152
+ roosterjs.toggleUnderline(editor);
153
+ });
154
+ </script>
177
155
  </body>
178
156
  </html>
179
157
  ```
180
158
 
181
- 2. Add code to `source.js` to handle click event of the buttons:
182
-
183
- ```javascript
184
- var roosterjs = require('roosterjs');
185
- var editorDiv = document.getElementById('editorDiv');
186
- var editor = roosterjs.createEditor(editorDiv);
187
- editor.setContent('Welcome to <b>RoosterJs</b>!');
188
-
189
- document.getElementById('buttonB').addEventListener('click', function () {
190
- roosterjs.toggleBold(editor);
191
- });
192
- document.getElementById('buttonI').addEventListener('click', function () {
193
- roosterjs.toggleItalic(editor);
194
- });
195
- document.getElementById('buttonU').addEventListener('click', function () {
196
- roosterjs.toggleUnderline(editor);
197
- });
198
- ```
199
-
200
- 3. Compile the javascript file using webpack:
201
-
202
- `webpack source.js editor.js`
203
-
204
- 4. Navigate to editor.htm, you will see buttons with bold, italic, underline
205
- actions in the page.
159
+ 2. Navigate to editor.htm, you will see a editor shown in the page which includes buttons with bold, italic, underline
160
+ actions.
206
161
 
207
162
  ## Sample code
208
163
 
@@ -292,7 +247,7 @@ Currently we have very few external dependencies. Before adding any new dependen
292
247
  If you still feel a new dependency is required after checking these questions, we can review it and
293
248
  finally decide whether we should add the new dependency.
294
249
 
295
- For build time dependencies, it is more flexable to add new dependencies since it won't increase runtime
250
+ For build time dependencies, it is more flexible to add new dependencies since it won't increase runtime
296
251
  code size or dependencies.
297
252
 
298
253
  ## More documentation
@@ -1,4 +1,4 @@
1
- import { DefaultImplicitFormatMap } from 'roosterjs-content-model-types';
1
+ import type { DefaultImplicitFormatMap } from 'roosterjs-content-model-types';
2
2
  /**
3
3
  * @internal
4
4
  * A map from tag name to its default implicit formats
@@ -1 +1 @@
1
- {"version":3,"file":"defaultContentModelFormatMap.js","sourceRoot":"","sources":["../../../../packages-content-model/roosterjs-content-model-dom/lib/config/defaultContentModelFormatMap.ts"],"names":[],"mappings":";;;AAEA;;;GAGG;AACU,QAAA,4BAA4B,GAA6B;IAClE,CAAC,EAAE;QACC,SAAS,EAAE,IAAI;KAClB;IACD,UAAU,EAAE;QACR,SAAS,EAAE,KAAK;QAChB,YAAY,EAAE,KAAK;QACnB,UAAU,EAAE,MAAM;QAClB,WAAW,EAAE,MAAM;KACtB;IACD,IAAI,EAAE;QACF,UAAU,EAAE,WAAW;KAC1B;IACD,EAAE,EAAE;QACA,UAAU,EAAE,MAAM;QAClB,QAAQ,EAAE,KAAK;KAClB;IACD,EAAE,EAAE;QACA,UAAU,EAAE,MAAM;QAClB,QAAQ,EAAE,OAAO;KACpB;IACD,EAAE,EAAE;QACA,UAAU,EAAE,MAAM;QAClB,QAAQ,EAAE,QAAQ;KACrB;IACD,EAAE,EAAE;QACA,UAAU,EAAE,MAAM;QAClB,QAAQ,EAAE,KAAK,EAAE,wFAAwF;KAC5G;IACD,EAAE,EAAE;QACA,UAAU,EAAE,MAAM;QAClB,QAAQ,EAAE,QAAQ;KACrB;IACD,EAAE,EAAE;QACA,UAAU,EAAE,MAAM;QAClB,QAAQ,EAAE,QAAQ;KACrB;IACD,CAAC,EAAE;QACC,SAAS,EAAE,KAAK;QAChB,YAAY,EAAE,KAAK;KACtB;IACD,GAAG,EAAE;QACD,UAAU,EAAE,WAAW;QACvB,UAAU,EAAE,KAAK;QACjB,SAAS,EAAE,KAAK;QAChB,YAAY,EAAE,KAAK;KACtB;CACJ,CAAC","sourcesContent":["import { DefaultImplicitFormatMap } from 'roosterjs-content-model-types';\n\n/**\n * @internal\n * A map from tag name to its default implicit formats\n */\nexport const defaultContentModelFormatMap: DefaultImplicitFormatMap = {\n a: {\n underline: true,\n },\n blockquote: {\n marginTop: '1em',\n marginBottom: '1em',\n marginLeft: '40px',\n marginRight: '40px',\n },\n code: {\n fontFamily: 'monospace',\n },\n h1: {\n fontWeight: 'bold',\n fontSize: '2em',\n },\n h2: {\n fontWeight: 'bold',\n fontSize: '1.5em',\n },\n h3: {\n fontWeight: 'bold',\n fontSize: '1.17em',\n },\n h4: {\n fontWeight: 'bold',\n fontSize: '1em', // Set this default value here to overwrite existing font size when change heading level\n },\n h5: {\n fontWeight: 'bold',\n fontSize: '0.83em',\n },\n h6: {\n fontWeight: 'bold',\n fontSize: '0.67em',\n },\n p: {\n marginTop: '1em',\n marginBottom: '1em',\n },\n pre: {\n fontFamily: 'monospace',\n whiteSpace: 'pre',\n marginTop: '1em',\n marginBottom: '1em',\n },\n};\n"]}
1
+ {"version":3,"file":"defaultContentModelFormatMap.js","sourceRoot":"","sources":["../../../../packages-content-model/roosterjs-content-model-dom/lib/config/defaultContentModelFormatMap.ts"],"names":[],"mappings":";;;AAEA;;;GAGG;AACU,QAAA,4BAA4B,GAA6B;IAClE,CAAC,EAAE;QACC,SAAS,EAAE,IAAI;KAClB;IACD,UAAU,EAAE;QACR,SAAS,EAAE,KAAK;QAChB,YAAY,EAAE,KAAK;QACnB,UAAU,EAAE,MAAM;QAClB,WAAW,EAAE,MAAM;KACtB;IACD,IAAI,EAAE;QACF,UAAU,EAAE,WAAW;KAC1B;IACD,EAAE,EAAE;QACA,UAAU,EAAE,MAAM;QAClB,QAAQ,EAAE,KAAK;KAClB;IACD,EAAE,EAAE;QACA,UAAU,EAAE,MAAM;QAClB,QAAQ,EAAE,OAAO;KACpB;IACD,EAAE,EAAE;QACA,UAAU,EAAE,MAAM;QAClB,QAAQ,EAAE,QAAQ;KACrB;IACD,EAAE,EAAE;QACA,UAAU,EAAE,MAAM;QAClB,QAAQ,EAAE,KAAK,EAAE,wFAAwF;KAC5G;IACD,EAAE,EAAE;QACA,UAAU,EAAE,MAAM;QAClB,QAAQ,EAAE,QAAQ;KACrB;IACD,EAAE,EAAE;QACA,UAAU,EAAE,MAAM;QAClB,QAAQ,EAAE,QAAQ;KACrB;IACD,CAAC,EAAE;QACC,SAAS,EAAE,KAAK;QAChB,YAAY,EAAE,KAAK;KACtB;IACD,GAAG,EAAE;QACD,UAAU,EAAE,WAAW;QACvB,UAAU,EAAE,KAAK;QACjB,SAAS,EAAE,KAAK;QAChB,YAAY,EAAE,KAAK;KACtB;CACJ,CAAC","sourcesContent":["import type { DefaultImplicitFormatMap } from 'roosterjs-content-model-types';\n\n/**\n * @internal\n * A map from tag name to its default implicit formats\n */\nexport const defaultContentModelFormatMap: DefaultImplicitFormatMap = {\n a: {\n underline: true,\n },\n blockquote: {\n marginTop: '1em',\n marginBottom: '1em',\n marginLeft: '40px',\n marginRight: '40px',\n },\n code: {\n fontFamily: 'monospace',\n },\n h1: {\n fontWeight: 'bold',\n fontSize: '2em',\n },\n h2: {\n fontWeight: 'bold',\n fontSize: '1.5em',\n },\n h3: {\n fontWeight: 'bold',\n fontSize: '1.17em',\n },\n h4: {\n fontWeight: 'bold',\n fontSize: '1em', // Set this default value here to overwrite existing font size when change heading level\n },\n h5: {\n fontWeight: 'bold',\n fontSize: '0.83em',\n },\n h6: {\n fontWeight: 'bold',\n fontSize: '0.67em',\n },\n p: {\n marginTop: '1em',\n marginBottom: '1em',\n },\n pre: {\n fontFamily: 'monospace',\n whiteSpace: 'pre',\n marginTop: '1em',\n marginBottom: '1em',\n },\n};\n"]}
@@ -1,4 +1,4 @@
1
- import { DefaultStyleMap } from 'roosterjs-content-model-types';
1
+ import type { DefaultStyleMap } from 'roosterjs-content-model-types';
2
2
  /**
3
3
  * @internal
4
4
  */
@@ -1 +1 @@
1
- {"version":3,"file":"defaultHTMLStyleMap.js","sourceRoot":"","sources":["../../../../packages-content-model/roosterjs-content-model-dom/lib/config/defaultHTMLStyleMap.ts"],"names":[],"mappings":";;;AAEA,IAAM,YAAY,GAAiC;IAC/C,OAAO,EAAE,OAAO;CACnB,CAAC;AAEF;;GAEG;AACU,QAAA,mBAAmB,GAAoB;IAChD,OAAO,EAAE,YAAY;IACrB,OAAO,EAAE,YAAY;IACrB,KAAK,EAAE,YAAY;IACnB,CAAC,EAAE;QACC,UAAU,EAAE,MAAM;KACrB;IACD,UAAU,EAAE;QACR,OAAO,EAAE,OAAO;QAChB,SAAS,EAAE,KAAK;QAChB,YAAY,EAAE,KAAK;QACnB,UAAU,EAAE,MAAM;QAClB,WAAW,EAAE,MAAM;KACtB;IACD,EAAE,EAAE,YAAY;IAChB,MAAM,EAAE;QACJ,OAAO,EAAE,OAAO;QAChB,SAAS,EAAE,QAAQ;KACtB;IACD,EAAE,EAAE,YAAY;IAChB,GAAG,EAAE,YAAY;IACjB,EAAE,EAAE,YAAY;IAChB,EAAE,EAAE,YAAY;IAChB,EAAE,EAAE;QACA,SAAS,EAAE,QAAQ;KACtB;IACD,QAAQ,EAAE,YAAY;IACtB,UAAU,EAAE,YAAY;IACxB,MAAM,EAAE,YAAY;IACpB,MAAM,EAAE,YAAY;IACpB,IAAI,EAAE,YAAY;IAClB,EAAE,EAAE;QACA,OAAO,EAAE,OAAO;QAChB,UAAU,EAAE,MAAM;QAClB,QAAQ,EAAE,KAAK;KAClB;IACD,EAAE,EAAE;QACA,OAAO,EAAE,OAAO;QAChB,UAAU,EAAE,MAAM;QAClB,QAAQ,EAAE,OAAO;KACpB;IACD,EAAE,EAAE;QACA,OAAO,EAAE,OAAO;QAChB,UAAU,EAAE,MAAM;QAClB,QAAQ,EAAE,QAAQ;KACrB;IACD,EAAE,EAAE;QACA,OAAO,EAAE,OAAO;QAChB,UAAU,EAAE,MAAM;KACrB;IACD,EAAE,EAAE;QACA,OAAO,EAAE,OAAO;QAChB,UAAU,EAAE,MAAM;QAClB,QAAQ,EAAE,QAAQ;KACrB;IACD,EAAE,EAAE;QACA,OAAO,EAAE,OAAO;QAChB,UAAU,EAAE,MAAM;QAClB,QAAQ,EAAE,QAAQ;KACrB;IACD,MAAM,EAAE,YAAY;IACpB,EAAE,EAAE,YAAY;IAChB,CAAC,EAAE;QACC,SAAS,EAAE,QAAQ;KACtB;IACD,EAAE,EAAE;QACA,OAAO,EAAE,WAAW;KACvB;IACD,IAAI,EAAE,YAAY;IAClB,GAAG,EAAE,YAAY;IACjB,EAAE,EAAE,YAAY;IAChB,CAAC,EAAE;QACC,OAAO,EAAE,OAAO;QAChB,SAAS,EAAE,KAAK;QAChB,YAAY,EAAE,KAAK;KACtB;IACD,GAAG,EAAE;QACD,OAAO,EAAE,OAAO;QAChB,UAAU,EAAE,WAAW;QACvB,UAAU,EAAE,KAAK;QACjB,SAAS,EAAE,KAAK;QAChB,YAAY,EAAE,KAAK;KACtB;IACD,CAAC,EAAE;QACC,cAAc,EAAE,cAAc;KACjC;IACD,OAAO,EAAE,YAAY;IACrB,MAAM,EAAE;QACJ,cAAc,EAAE,cAAc;KACjC;IACD,MAAM,EAAE;QACJ,UAAU,EAAE,MAAM;KACrB;IACD,GAAG,EAAE;QACD,aAAa,EAAE,KAAK;QACpB,QAAQ,EAAE,SAAS;KACtB;IACD,GAAG,EAAE;QACD,aAAa,EAAE,OAAO;QACtB,QAAQ,EAAE,SAAS;KACtB;IACD,KAAK,EAAE;QACH,OAAO,EAAE,OAAO;QAChB,SAAS,EAAE,YAAY;KAC1B;IACD,EAAE,EAAE;QACA,OAAO,EAAE,YAAY;KACxB;IACD,EAAE,EAAE;QACA,OAAO,EAAE,YAAY;KACxB;IACD,CAAC,EAAE;QACC,cAAc,EAAE,WAAW;KAC9B;IACD,EAAE,EAAE,YAAY;CACnB,CAAC","sourcesContent":["import { DefaultStyleMap } from 'roosterjs-content-model-types';\n\nconst blockElement: Partial<CSSStyleDeclaration> = {\n display: 'block',\n};\n\n/**\n * @internal\n */\nexport const defaultHTMLStyleMap: DefaultStyleMap = {\n address: blockElement,\n article: blockElement,\n aside: blockElement,\n b: {\n fontWeight: 'bold',\n },\n blockquote: {\n display: 'block',\n marginTop: '1em',\n marginBottom: '1em',\n marginLeft: '40px',\n marginRight: '40px',\n },\n br: blockElement,\n center: {\n display: 'block',\n textAlign: 'center',\n },\n dd: blockElement,\n div: blockElement,\n dl: blockElement,\n dt: blockElement,\n em: {\n fontStyle: 'italic',\n },\n fieldset: blockElement,\n figcaption: blockElement,\n figure: blockElement,\n footer: blockElement,\n form: blockElement,\n h1: {\n display: 'block',\n fontWeight: 'bold',\n fontSize: '2em',\n },\n h2: {\n display: 'block',\n fontWeight: 'bold',\n fontSize: '1.5em',\n },\n h3: {\n display: 'block',\n fontWeight: 'bold',\n fontSize: '1.17em',\n },\n h4: {\n display: 'block',\n fontWeight: 'bold',\n },\n h5: {\n display: 'block',\n fontWeight: 'bold',\n fontSize: '0.83em',\n },\n h6: {\n display: 'block',\n fontWeight: 'bold',\n fontSize: '0.67em',\n },\n header: blockElement,\n hr: blockElement,\n i: {\n fontStyle: 'italic',\n },\n li: {\n display: 'list-item',\n },\n main: blockElement,\n nav: blockElement,\n ol: blockElement,\n p: {\n display: 'block',\n marginTop: '1em',\n marginBottom: '1em',\n },\n pre: {\n display: 'block',\n fontFamily: 'monospace',\n whiteSpace: 'pre',\n marginTop: '1em',\n marginBottom: '1em',\n },\n s: {\n textDecoration: 'line-through',\n },\n section: blockElement,\n strike: {\n textDecoration: 'line-through',\n },\n strong: {\n fontWeight: 'bold',\n },\n sub: {\n verticalAlign: 'sub',\n fontSize: 'smaller',\n },\n sup: {\n verticalAlign: 'super',\n fontSize: 'smaller',\n },\n table: {\n display: 'table',\n boxSizing: 'border-box',\n },\n td: {\n display: 'table-cell',\n },\n th: {\n display: 'table-cell',\n },\n u: {\n textDecoration: 'underline',\n },\n ul: blockElement,\n};\n"]}
1
+ {"version":3,"file":"defaultHTMLStyleMap.js","sourceRoot":"","sources":["../../../../packages-content-model/roosterjs-content-model-dom/lib/config/defaultHTMLStyleMap.ts"],"names":[],"mappings":";;;AAEA,IAAM,YAAY,GAAiC;IAC/C,OAAO,EAAE,OAAO;CACnB,CAAC;AAEF;;GAEG;AACU,QAAA,mBAAmB,GAAoB;IAChD,OAAO,EAAE,YAAY;IACrB,OAAO,EAAE,YAAY;IACrB,KAAK,EAAE,YAAY;IACnB,CAAC,EAAE;QACC,UAAU,EAAE,MAAM;KACrB;IACD,UAAU,EAAE;QACR,OAAO,EAAE,OAAO;QAChB,SAAS,EAAE,KAAK;QAChB,YAAY,EAAE,KAAK;QACnB,UAAU,EAAE,MAAM;QAClB,WAAW,EAAE,MAAM;KACtB;IACD,EAAE,EAAE,YAAY;IAChB,MAAM,EAAE;QACJ,OAAO,EAAE,OAAO;QAChB,SAAS,EAAE,QAAQ;KACtB;IACD,EAAE,EAAE,YAAY;IAChB,GAAG,EAAE,YAAY;IACjB,EAAE,EAAE,YAAY;IAChB,EAAE,EAAE,YAAY;IAChB,EAAE,EAAE;QACA,SAAS,EAAE,QAAQ;KACtB;IACD,QAAQ,EAAE,YAAY;IACtB,UAAU,EAAE,YAAY;IACxB,MAAM,EAAE,YAAY;IACpB,MAAM,EAAE,YAAY;IACpB,IAAI,EAAE,YAAY;IAClB,EAAE,EAAE;QACA,OAAO,EAAE,OAAO;QAChB,UAAU,EAAE,MAAM;QAClB,QAAQ,EAAE,KAAK;KAClB;IACD,EAAE,EAAE;QACA,OAAO,EAAE,OAAO;QAChB,UAAU,EAAE,MAAM;QAClB,QAAQ,EAAE,OAAO;KACpB;IACD,EAAE,EAAE;QACA,OAAO,EAAE,OAAO;QAChB,UAAU,EAAE,MAAM;QAClB,QAAQ,EAAE,QAAQ;KACrB;IACD,EAAE,EAAE;QACA,OAAO,EAAE,OAAO;QAChB,UAAU,EAAE,MAAM;KACrB;IACD,EAAE,EAAE;QACA,OAAO,EAAE,OAAO;QAChB,UAAU,EAAE,MAAM;QAClB,QAAQ,EAAE,QAAQ;KACrB;IACD,EAAE,EAAE;QACA,OAAO,EAAE,OAAO;QAChB,UAAU,EAAE,MAAM;QAClB,QAAQ,EAAE,QAAQ;KACrB;IACD,MAAM,EAAE,YAAY;IACpB,EAAE,EAAE,YAAY;IAChB,CAAC,EAAE;QACC,SAAS,EAAE,QAAQ;KACtB;IACD,EAAE,EAAE;QACA,OAAO,EAAE,WAAW;KACvB;IACD,IAAI,EAAE,YAAY;IAClB,GAAG,EAAE,YAAY;IACjB,EAAE,EAAE,YAAY;IAChB,CAAC,EAAE;QACC,OAAO,EAAE,OAAO;QAChB,SAAS,EAAE,KAAK;QAChB,YAAY,EAAE,KAAK;KACtB;IACD,GAAG,EAAE;QACD,OAAO,EAAE,OAAO;QAChB,UAAU,EAAE,WAAW;QACvB,UAAU,EAAE,KAAK;QACjB,SAAS,EAAE,KAAK;QAChB,YAAY,EAAE,KAAK;KACtB;IACD,CAAC,EAAE;QACC,cAAc,EAAE,cAAc;KACjC;IACD,OAAO,EAAE,YAAY;IACrB,MAAM,EAAE;QACJ,cAAc,EAAE,cAAc;KACjC;IACD,MAAM,EAAE;QACJ,UAAU,EAAE,MAAM;KACrB;IACD,GAAG,EAAE;QACD,aAAa,EAAE,KAAK;QACpB,QAAQ,EAAE,SAAS;KACtB;IACD,GAAG,EAAE;QACD,aAAa,EAAE,OAAO;QACtB,QAAQ,EAAE,SAAS;KACtB;IACD,KAAK,EAAE;QACH,OAAO,EAAE,OAAO;QAChB,SAAS,EAAE,YAAY;KAC1B;IACD,EAAE,EAAE;QACA,OAAO,EAAE,YAAY;KACxB;IACD,EAAE,EAAE;QACA,OAAO,EAAE,YAAY;KACxB;IACD,CAAC,EAAE;QACC,cAAc,EAAE,WAAW;KAC9B;IACD,EAAE,EAAE,YAAY;CACnB,CAAC","sourcesContent":["import type { DefaultStyleMap } from 'roosterjs-content-model-types';\n\nconst blockElement: Partial<CSSStyleDeclaration> = {\n display: 'block',\n};\n\n/**\n * @internal\n */\nexport const defaultHTMLStyleMap: DefaultStyleMap = {\n address: blockElement,\n article: blockElement,\n aside: blockElement,\n b: {\n fontWeight: 'bold',\n },\n blockquote: {\n display: 'block',\n marginTop: '1em',\n marginBottom: '1em',\n marginLeft: '40px',\n marginRight: '40px',\n },\n br: blockElement,\n center: {\n display: 'block',\n textAlign: 'center',\n },\n dd: blockElement,\n div: blockElement,\n dl: blockElement,\n dt: blockElement,\n em: {\n fontStyle: 'italic',\n },\n fieldset: blockElement,\n figcaption: blockElement,\n figure: blockElement,\n footer: blockElement,\n form: blockElement,\n h1: {\n display: 'block',\n fontWeight: 'bold',\n fontSize: '2em',\n },\n h2: {\n display: 'block',\n fontWeight: 'bold',\n fontSize: '1.5em',\n },\n h3: {\n display: 'block',\n fontWeight: 'bold',\n fontSize: '1.17em',\n },\n h4: {\n display: 'block',\n fontWeight: 'bold',\n },\n h5: {\n display: 'block',\n fontWeight: 'bold',\n fontSize: '0.83em',\n },\n h6: {\n display: 'block',\n fontWeight: 'bold',\n fontSize: '0.67em',\n },\n header: blockElement,\n hr: blockElement,\n i: {\n fontStyle: 'italic',\n },\n li: {\n display: 'list-item',\n },\n main: blockElement,\n nav: blockElement,\n ol: blockElement,\n p: {\n display: 'block',\n marginTop: '1em',\n marginBottom: '1em',\n },\n pre: {\n display: 'block',\n fontFamily: 'monospace',\n whiteSpace: 'pre',\n marginTop: '1em',\n marginBottom: '1em',\n },\n s: {\n textDecoration: 'line-through',\n },\n section: blockElement,\n strike: {\n textDecoration: 'line-through',\n },\n strong: {\n fontWeight: 'bold',\n },\n sub: {\n verticalAlign: 'sub',\n fontSize: 'smaller',\n },\n sup: {\n verticalAlign: 'super',\n fontSize: 'smaller',\n },\n table: {\n display: 'table',\n boxSizing: 'border-box',\n },\n td: {\n display: 'table-cell',\n },\n th: {\n display: 'table-cell',\n },\n u: {\n textDecoration: 'underline',\n },\n ul: blockElement,\n};\n"]}
@@ -1,4 +1,4 @@
1
- import { DomToModelContext, DomToModelOption, DomToModelSettings, EditorContext, FormatParsers, FormatParsersPerCategory } from 'roosterjs-content-model-types';
1
+ import type { DomToModelContext, DomToModelOption, DomToModelSettings, EditorContext, FormatParsers, FormatParsersPerCategory } from 'roosterjs-content-model-types';
2
2
  /**
3
3
  * Create context object for DOM to Content Model conversion
4
4
  * @param editorContext Context of editor
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.buildFormatParsers = exports.createDomToModelConfig = exports.createDomToModelContextWithConfig = exports.createDomToModelContext = void 0;
4
4
  var tslib_1 = require("tslib");
5
5
  var defaultProcessors_1 = require("./defaultProcessors");
6
- var roosterjs_editor_dom_1 = require("roosterjs-editor-dom");
6
+ var getObjectKeys_1 = require("../../domUtils/getObjectKeys");
7
7
  var defaultFormatHandlers_1 = require("../../formatHandlers/defaultFormatHandlers");
8
8
  /**
9
9
  * Create context object for DOM to Content Model conversion
@@ -81,7 +81,7 @@ function buildFormatParsers(overrides, additionalParsersArray) {
81
81
  if (overrides === void 0) { overrides = []; }
82
82
  if (additionalParsersArray === void 0) { additionalParsersArray = []; }
83
83
  var combinedOverrides = Object.assign.apply(Object, (0, tslib_1.__spreadArray)([{}], (0, tslib_1.__read)(overrides), false));
84
- return (0, roosterjs_editor_dom_1.getObjectKeys)(defaultFormatHandlers_1.defaultFormatKeysPerCategory).reduce(function (result, key) {
84
+ return (0, getObjectKeys_1.getObjectKeys)(defaultFormatHandlers_1.defaultFormatKeysPerCategory).reduce(function (result, key) {
85
85
  var _a;
86
86
  var value = (_a = defaultFormatHandlers_1.defaultFormatKeysPerCategory[key]
87
87
  .map(function (formatKey) {
@@ -1 +1 @@
1
- {"version":3,"file":"createDomToModelContext.js","sourceRoot":"","sources":["../../../../../packages-content-model/roosterjs-content-model-dom/lib/domToModel/context/createDomToModelContext.ts"],"names":[],"mappings":";;;;AAAA,yDAA0D;AAC1D,6DAAqD;AACrD,oFAGoD;AAepD;;;;GAIG;AACH,SAAgB,uBAAuB,CACnC,aAA6B;IAC7B,iBAA4C;SAA5C,UAA4C,EAA5C,qBAA4C,EAA5C,IAA4C;QAA5C,gCAA4C;;IAE5C,OAAO,iCAAiC,CAAC,sBAAsB,CAAC,OAAO,CAAC,EAAE,aAAa,CAAC,CAAC;AAC7F,CAAC;AALD,0DAKC;AAED;;;;GAIG;AACH,SAAgB,iCAAiC,CAC7C,MAA0B,EAC1B,aAA6B;IAE7B,OAAO,MAAM,CAAC,MAAM,CAChB,EAAE,EACF,aAAa,EACb,gCAAgC,EAAE,EAClC,6BAA6B,CAAC,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,SAAS,CAAC,EACvD,gCAAgC,EAAE,EAClC,MAAM,CACT,CAAC;AACN,CAAC;AAZD,8EAYC;AAED,SAAS,gCAAgC;IACrC,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC;AACpC,CAAC;AAED,SAAS,6BAA6B,CAAC,SAAmB;IACtD,IAAM,WAAW,GAA4B,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAEnF,OAAO;QACH,WAAW,aAAA;QACX,aAAa,EAAE,EAAE;QAEjB,UAAU,EAAE;YACR,MAAM,EAAE,EAAE;YACV,gBAAgB,EAAE,EAAE;SACvB;KACJ,CAAC;AACN,CAAC;AAED,SAAS,gCAAgC;IACrC,OAAO;QACH,IAAI,EAAE;YACF,MAAM,EAAE,EAAE;YACV,OAAO,EAAE,EAAE;SACd;QACD,IAAI,EAAE;YACF,MAAM,EAAE,EAAE;SACb;QACD,cAAc,EAAE;YACZ,MAAM,EAAE,EAAE;YACV,OAAO,EAAE,EAAE;SACd;KACJ,CAAC;AACN,CAAC;AAED;;;GAGG;AACH,SAAgB,sBAAsB,CAClC,OAAyC;IAEzC,OAAO;QACH,iBAAiB,EAAE,MAAM,CAAC,MAAM,OAAb,MAAM,8BACrB,EAAE;YACF,uCAAmB,uBAChB,OAAO,CAAC,GAAG,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,iBAAiB,EAApB,CAAoB,CAAC,UAC5C;QACD,aAAa,EAAE,kBAAkB,CAC7B,OAAO,CAAC,GAAG,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,oBAAoB,EAAvB,CAAuB,CAAC,EACzC,OAAO,CAAC,GAAG,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,uBAAuB,EAA1B,CAA0B,CAAC,CAC/C;QACD,wBAAwB,EAAE,uCAAmB;QAC7C,oBAAoB,8CAAA;KACvB,CAAC;AACN,CAAC;AAhBD,wDAgBC;AAED;;;;;;GAMG;AACH,SAAgB,kBAAkB,CAC9B,SAAsD,EACtD,sBAA8E;IAD9E,0BAAA,EAAA,cAAsD;IACtD,uCAAA,EAAA,2BAA8E;IAE9E,IAAM,iBAAiB,GAAG,MAAM,CAAC,MAAM,OAAb,MAAM,8BAAQ,EAAE,uBAAK,SAAS,UAAC,CAAC;IAE1D,OAAO,IAAA,oCAAa,EAAC,oDAA4B,CAAC,CAAC,MAAM,CAAC,UAAC,MAAM,EAAE,GAAG;;QAClE,IAAM,KAAK,GAAG,CAAA,KAAA,oDAA4B,CAAC,GAAG,CAAC;aAC1C,GAAG,CACA,UAAA,SAAS;YACL,OAAA,CAAC,iBAAiB,CAAC,SAAS,CAAC,KAAK,SAAS;gBACvC,CAAC,CAAC,4CAAoB,CAAC,SAAS,CAAC;gBACjC,CAAC,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAsB;QAFxD,CAEwD,CAC/D,CAAA;aACA,MAAM,8DACA,sBAAsB,CAAC,GAAG,CACzB,UAAA,OAAO,YAAI,OAAA,CAAC,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAG,GAAG,CAAC,mCAAI,EAAE,CAAwB,CAAA,EAAA,CAC3D,UACJ,CAAC;QAEN,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;QAEpB,OAAO,MAAM,CAAC;IAClB,CAAC,EAAE,EAA8B,CAAC,CAAC;AACvC,CAAC;AAxBD,gDAwBC","sourcesContent":["import { defaultProcessorMap } from './defaultProcessors';\nimport { getObjectKeys } from 'roosterjs-editor-dom';\nimport {\n defaultFormatKeysPerCategory,\n defaultFormatParsers,\n} from '../../formatHandlers/defaultFormatHandlers';\nimport {\n ContentModelBlockFormat,\n DomToModelContext,\n DomToModelDecoratorContext,\n DomToModelFormatContext,\n DomToModelOption,\n DomToModelSelectionContext,\n DomToModelSettings,\n EditorContext,\n FormatParser,\n FormatParsers,\n FormatParsersPerCategory,\n} from 'roosterjs-content-model-types';\n\n/**\n * Create context object for DOM to Content Model conversion\n * @param editorContext Context of editor\n * @param options Option array to customize the DOM to Model conversion behavior\n */\nexport function createDomToModelContext(\n editorContext?: EditorContext,\n ...options: (DomToModelOption | undefined)[]\n): DomToModelContext {\n return createDomToModelContextWithConfig(createDomToModelConfig(options), editorContext);\n}\n\n/**\n * Create context object for DOM to Content Model conversion with an existing configure\n * @param config A full config object to define how to convert DOM tree to Content Model\n * @param editorContext Context of editor\n */\nexport function createDomToModelContextWithConfig(\n config: DomToModelSettings,\n editorContext?: EditorContext\n) {\n return Object.assign(\n {},\n editorContext,\n createDomToModelSelectionContext(),\n createDomToModelFormatContext(editorContext?.isRootRtl),\n createDomToModelDecoratorContext(),\n config\n );\n}\n\nfunction createDomToModelSelectionContext(): DomToModelSelectionContext {\n return { isInSelection: false };\n}\n\nfunction createDomToModelFormatContext(isRootRtl?: boolean): DomToModelFormatContext {\n const blockFormat: ContentModelBlockFormat = isRootRtl ? { direction: 'rtl' } : {};\n\n return {\n blockFormat,\n segmentFormat: {},\n\n listFormat: {\n levels: [],\n threadItemCounts: [],\n },\n };\n}\n\nfunction createDomToModelDecoratorContext(): DomToModelDecoratorContext {\n return {\n link: {\n format: {},\n dataset: {},\n },\n code: {\n format: {},\n },\n blockDecorator: {\n format: {},\n tagName: '',\n },\n };\n}\n\n/**\n * Create Dom to Content Model Config object\n * @param options All customizations of content model creation\n */\nexport function createDomToModelConfig(\n options: (DomToModelOption | undefined)[]\n): DomToModelSettings {\n return {\n elementProcessors: Object.assign(\n {},\n defaultProcessorMap,\n ...options.map(x => x?.processorOverride)\n ),\n formatParsers: buildFormatParsers(\n options.map(x => x?.formatParserOverride),\n options.map(x => x?.additionalFormatParsers)\n ),\n defaultElementProcessors: defaultProcessorMap,\n defaultFormatParsers,\n };\n}\n\n/**\n * @internal Export for test only\n * Build format parsers used by DOM to Content Model conversion\n * @param override\n * @param additionalParsersArray\n * @returns\n */\nexport function buildFormatParsers(\n overrides: (Partial<FormatParsers> | undefined)[] = [],\n additionalParsersArray: (Partial<FormatParsersPerCategory> | undefined)[] = []\n): FormatParsersPerCategory {\n const combinedOverrides = Object.assign({}, ...overrides);\n\n return getObjectKeys(defaultFormatKeysPerCategory).reduce((result, key) => {\n const value = defaultFormatKeysPerCategory[key]\n .map(\n formatKey =>\n (combinedOverrides[formatKey] === undefined\n ? defaultFormatParsers[formatKey]\n : combinedOverrides[formatKey]) as FormatParser<any>\n )\n .concat(\n ...additionalParsersArray.map(\n parsers => (parsers?.[key] ?? []) as FormatParser<any>[]\n )\n );\n\n result[key] = value;\n\n return result;\n }, {} as FormatParsersPerCategory);\n}\n"]}
1
+ {"version":3,"file":"createDomToModelContext.js","sourceRoot":"","sources":["../../../../../packages-content-model/roosterjs-content-model-dom/lib/domToModel/context/createDomToModelContext.ts"],"names":[],"mappings":";;;;AAAA,yDAA0D;AAC1D,8DAA6D;AAC7D,oFAGoD;AAepD;;;;GAIG;AACH,SAAgB,uBAAuB,CACnC,aAA6B;IAC7B,iBAA4C;SAA5C,UAA4C,EAA5C,qBAA4C,EAA5C,IAA4C;QAA5C,gCAA4C;;IAE5C,OAAO,iCAAiC,CAAC,sBAAsB,CAAC,OAAO,CAAC,EAAE,aAAa,CAAC,CAAC;AAC7F,CAAC;AALD,0DAKC;AAED;;;;GAIG;AACH,SAAgB,iCAAiC,CAC7C,MAA0B,EAC1B,aAA6B;IAE7B,OAAO,MAAM,CAAC,MAAM,CAChB,EAAE,EACF,aAAa,EACb,gCAAgC,EAAE,EAClC,6BAA6B,CAAC,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,SAAS,CAAC,EACvD,gCAAgC,EAAE,EAClC,MAAM,CACT,CAAC;AACN,CAAC;AAZD,8EAYC;AAED,SAAS,gCAAgC;IACrC,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC;AACpC,CAAC;AAED,SAAS,6BAA6B,CAAC,SAAmB;IACtD,IAAM,WAAW,GAA4B,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAEnF,OAAO;QACH,WAAW,aAAA;QACX,aAAa,EAAE,EAAE;QAEjB,UAAU,EAAE;YACR,MAAM,EAAE,EAAE;YACV,gBAAgB,EAAE,EAAE;SACvB;KACJ,CAAC;AACN,CAAC;AAED,SAAS,gCAAgC;IACrC,OAAO;QACH,IAAI,EAAE;YACF,MAAM,EAAE,EAAE;YACV,OAAO,EAAE,EAAE;SACd;QACD,IAAI,EAAE;YACF,MAAM,EAAE,EAAE;SACb;QACD,cAAc,EAAE;YACZ,MAAM,EAAE,EAAE;YACV,OAAO,EAAE,EAAE;SACd;KACJ,CAAC;AACN,CAAC;AAED;;;GAGG;AACH,SAAgB,sBAAsB,CAClC,OAAyC;IAEzC,OAAO;QACH,iBAAiB,EAAE,MAAM,CAAC,MAAM,OAAb,MAAM,8BACrB,EAAE;YACF,uCAAmB,uBAChB,OAAO,CAAC,GAAG,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,iBAAiB,EAApB,CAAoB,CAAC,UAC5C;QACD,aAAa,EAAE,kBAAkB,CAC7B,OAAO,CAAC,GAAG,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,oBAAoB,EAAvB,CAAuB,CAAC,EACzC,OAAO,CAAC,GAAG,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,uBAAuB,EAA1B,CAA0B,CAAC,CAC/C;QACD,wBAAwB,EAAE,uCAAmB;QAC7C,oBAAoB,8CAAA;KACvB,CAAC;AACN,CAAC;AAhBD,wDAgBC;AAED;;;;;;GAMG;AACH,SAAgB,kBAAkB,CAC9B,SAAsD,EACtD,sBAA8E;IAD9E,0BAAA,EAAA,cAAsD;IACtD,uCAAA,EAAA,2BAA8E;IAE9E,IAAM,iBAAiB,GAAG,MAAM,CAAC,MAAM,OAAb,MAAM,8BAAQ,EAAE,uBAAK,SAAS,UAAC,CAAC;IAE1D,OAAO,IAAA,6BAAa,EAAC,oDAA4B,CAAC,CAAC,MAAM,CAAC,UAAC,MAAM,EAAE,GAAG;;QAClE,IAAM,KAAK,GAAG,CAAA,KAAA,oDAA4B,CAAC,GAAG,CAAC;aAC1C,GAAG,CACA,UAAA,SAAS;YACL,OAAA,CAAC,iBAAiB,CAAC,SAAS,CAAC,KAAK,SAAS;gBACvC,CAAC,CAAC,4CAAoB,CAAC,SAAS,CAAC;gBACjC,CAAC,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAsB;QAFxD,CAEwD,CAC/D,CAAA;aACA,MAAM,8DACA,sBAAsB,CAAC,GAAG,CACzB,UAAA,OAAO,YAAI,OAAA,CAAC,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAG,GAAG,CAAC,mCAAI,EAAE,CAAwB,CAAA,EAAA,CAC3D,UACJ,CAAC;QAEN,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;QAEpB,OAAO,MAAM,CAAC;IAClB,CAAC,EAAE,EAA8B,CAAC,CAAC;AACvC,CAAC;AAxBD,gDAwBC","sourcesContent":["import { defaultProcessorMap } from './defaultProcessors';\nimport { getObjectKeys } from '../../domUtils/getObjectKeys';\nimport {\n defaultFormatKeysPerCategory,\n defaultFormatParsers,\n} from '../../formatHandlers/defaultFormatHandlers';\nimport type {\n ContentModelBlockFormat,\n DomToModelContext,\n DomToModelDecoratorContext,\n DomToModelFormatContext,\n DomToModelOption,\n DomToModelSelectionContext,\n DomToModelSettings,\n EditorContext,\n FormatParser,\n FormatParsers,\n FormatParsersPerCategory,\n} from 'roosterjs-content-model-types';\n\n/**\n * Create context object for DOM to Content Model conversion\n * @param editorContext Context of editor\n * @param options Option array to customize the DOM to Model conversion behavior\n */\nexport function createDomToModelContext(\n editorContext?: EditorContext,\n ...options: (DomToModelOption | undefined)[]\n): DomToModelContext {\n return createDomToModelContextWithConfig(createDomToModelConfig(options), editorContext);\n}\n\n/**\n * Create context object for DOM to Content Model conversion with an existing configure\n * @param config A full config object to define how to convert DOM tree to Content Model\n * @param editorContext Context of editor\n */\nexport function createDomToModelContextWithConfig(\n config: DomToModelSettings,\n editorContext?: EditorContext\n) {\n return Object.assign(\n {},\n editorContext,\n createDomToModelSelectionContext(),\n createDomToModelFormatContext(editorContext?.isRootRtl),\n createDomToModelDecoratorContext(),\n config\n );\n}\n\nfunction createDomToModelSelectionContext(): DomToModelSelectionContext {\n return { isInSelection: false };\n}\n\nfunction createDomToModelFormatContext(isRootRtl?: boolean): DomToModelFormatContext {\n const blockFormat: ContentModelBlockFormat = isRootRtl ? { direction: 'rtl' } : {};\n\n return {\n blockFormat,\n segmentFormat: {},\n\n listFormat: {\n levels: [],\n threadItemCounts: [],\n },\n };\n}\n\nfunction createDomToModelDecoratorContext(): DomToModelDecoratorContext {\n return {\n link: {\n format: {},\n dataset: {},\n },\n code: {\n format: {},\n },\n blockDecorator: {\n format: {},\n tagName: '',\n },\n };\n}\n\n/**\n * Create Dom to Content Model Config object\n * @param options All customizations of content model creation\n */\nexport function createDomToModelConfig(\n options: (DomToModelOption | undefined)[]\n): DomToModelSettings {\n return {\n elementProcessors: Object.assign(\n {},\n defaultProcessorMap,\n ...options.map(x => x?.processorOverride)\n ),\n formatParsers: buildFormatParsers(\n options.map(x => x?.formatParserOverride),\n options.map(x => x?.additionalFormatParsers)\n ),\n defaultElementProcessors: defaultProcessorMap,\n defaultFormatParsers,\n };\n}\n\n/**\n * @internal Export for test only\n * Build format parsers used by DOM to Content Model conversion\n * @param override\n * @param additionalParsersArray\n * @returns\n */\nexport function buildFormatParsers(\n overrides: (Partial<FormatParsers> | undefined)[] = [],\n additionalParsersArray: (Partial<FormatParsersPerCategory> | undefined)[] = []\n): FormatParsersPerCategory {\n const combinedOverrides = Object.assign({}, ...overrides);\n\n return getObjectKeys(defaultFormatKeysPerCategory).reduce((result, key) => {\n const value = defaultFormatKeysPerCategory[key]\n .map(\n formatKey =>\n (combinedOverrides[formatKey] === undefined\n ? defaultFormatParsers[formatKey]\n : combinedOverrides[formatKey]) as FormatParser<any>\n )\n .concat(\n ...additionalParsersArray.map(\n parsers => (parsers?.[key] ?? []) as FormatParser<any>[]\n )\n );\n\n result[key] = value;\n\n return result;\n }, {} as FormatParsersPerCategory);\n}\n"]}
@@ -1,4 +1,4 @@
1
- import { ElementProcessorMap } from 'roosterjs-content-model-types';
1
+ import type { ElementProcessorMap } from 'roosterjs-content-model-types';
2
2
  /**
3
3
  * @internal
4
4
  */
@@ -1 +1 @@
1
- {"version":3,"file":"defaultProcessors.js","sourceRoot":"","sources":["../../../../../packages-content-model/roosterjs-content-model-dom/lib/domToModel/context/defaultProcessors.ts"],"names":[],"mappings":";;;AAAA,yDAAwD;AACxD,+DAA8D;AAC9D,6DAA4D;AAC5D,uEAAsE;AACtE,mEAAkE;AAElE,iEAAgE;AAChE,6DAA4D;AAC5D,mFAAkF;AAClF,mEAAkE;AAClE,mEAAkE;AAClE,yDAAwD;AACxD,+DAA8D;AAC9D,6EAA4E;AAC5E,6DAA4D;AAC5D,qEAAoE;AACpE,6DAA4D;AAC5D,uDAAsD;AACtD,+DAA8D;AAC9D,6DAA4D;AAE5D;;GAEG;AACU,QAAA,mBAAmB,GAAwB;IACpD,CAAC,EAAE,6BAAa;IAChB,CAAC,EAAE,6CAAqB;IACxB,UAAU,EAAE,6CAAqB;IACjC,EAAE,EAAE,yBAAW;IACf,IAAI,EAAE,6BAAa;IACnB,GAAG,EAAE,6CAAqB;IAC1B,EAAE,EAAE,6CAAqB;IACzB,IAAI,EAAE,6BAAa;IACnB,CAAC,EAAE,6CAAqB;IACxB,GAAG,EAAE,+BAAc;IACnB,EAAE,EAAE,mCAAgB;IACpB,EAAE,EAAE,mCAAgB;IACpB,EAAE,EAAE,mCAAgB;IACpB,EAAE,EAAE,mCAAgB;IACpB,EAAE,EAAE,mCAAgB;IACpB,EAAE,EAAE,mCAAgB;IACpB,EAAE,EAAE,yBAAW;IACf,EAAE,EAAE,qCAAiB;IACrB,EAAE,EAAE,6BAAa;IACjB,CAAC,EAAE,uBAAU;IACb,GAAG,EAAE,mDAAwB;IAC7B,CAAC,EAAE,6CAAqB;IACxB,OAAO,EAAE,6CAAqB;IAC9B,IAAI,EAAE,6CAAqB;IAC3B,MAAM,EAAE,6CAAqB;IAC7B,MAAM,EAAE,6CAAqB;IAC7B,GAAG,EAAE,6CAAqB;IAC1B,GAAG,EAAE,6CAAqB;IAC1B,KAAK,EAAE,+BAAc;IACrB,CAAC,EAAE,6CAAqB;IACxB,EAAE,EAAE,6BAAa;IAEjB,GAAG,EAAE,mCAAgB;IACrB,OAAO,EAAE,6BAAa;IACtB,OAAO,EAAE,mCAAgB;IACzB,MAAM,EAAE,iCAAe;IACvB,KAAK,EAAE,+BAAc;IACrB,SAAS,EAAE,uCAAkB;CAChC,CAAC","sourcesContent":["import { brProcessor } from '../processors/brProcessor';\nimport { childProcessor } from '../processors/childProcessor';\nimport { codeProcessor } from '../processors/codeProcessor';\nimport { delimiterProcessor } from '../processors/delimiterProcessor';\nimport { elementProcessor } from '../processors/elementProcessor';\nimport { ElementProcessorMap } from 'roosterjs-content-model-types';\nimport { entityProcessor } from '../processors/entityProcessor';\nimport { fontProcessor } from '../processors/fontProcessor';\nimport { formatContainerProcessor } from '../processors/formatContainerProcessor';\nimport { generalProcessor } from '../processors/generalProcessor';\nimport { headingProcessor } from '../processors/headingProcessor';\nimport { hrProcessor } from '../processors/hrProcessor';\nimport { imageProcessor } from '../processors/imageProcessor';\nimport { knownElementProcessor } from '../processors/knownElementProcessor';\nimport { linkProcessor } from '../processors/linkProcessor';\nimport { listItemProcessor } from '../processors/listItemProcessor';\nimport { listProcessor } from '../processors/listProcessor';\nimport { pProcessor } from '../processors/pProcessor';\nimport { tableProcessor } from '../processors/tableProcessor';\nimport { textProcessor } from '../processors/textProcessor';\n\n/**\n * @internal\n */\nexport const defaultProcessorMap: ElementProcessorMap = {\n a: linkProcessor,\n b: knownElementProcessor,\n blockquote: knownElementProcessor,\n br: brProcessor,\n code: codeProcessor,\n div: knownElementProcessor,\n em: knownElementProcessor,\n font: fontProcessor,\n i: knownElementProcessor,\n img: imageProcessor,\n h1: headingProcessor,\n h2: headingProcessor,\n h3: headingProcessor,\n h4: headingProcessor,\n h5: headingProcessor,\n h6: headingProcessor,\n hr: hrProcessor,\n li: listItemProcessor,\n ol: listProcessor,\n p: pProcessor,\n pre: formatContainerProcessor,\n s: knownElementProcessor,\n section: knownElementProcessor,\n span: knownElementProcessor,\n strike: knownElementProcessor,\n strong: knownElementProcessor,\n sub: knownElementProcessor,\n sup: knownElementProcessor,\n table: tableProcessor,\n u: knownElementProcessor,\n ul: listProcessor,\n\n '*': generalProcessor,\n '#text': textProcessor,\n element: elementProcessor,\n entity: entityProcessor,\n child: childProcessor,\n delimiter: delimiterProcessor,\n};\n"]}
1
+ {"version":3,"file":"defaultProcessors.js","sourceRoot":"","sources":["../../../../../packages-content-model/roosterjs-content-model-dom/lib/domToModel/context/defaultProcessors.ts"],"names":[],"mappings":";;;AAAA,yDAAwD;AACxD,+DAA8D;AAC9D,6DAA4D;AAC5D,uEAAsE;AACtE,mEAAkE;AAClE,iEAAgE;AAChE,6DAA4D;AAC5D,mFAAkF;AAClF,mEAAkE;AAClE,mEAAkE;AAClE,yDAAwD;AACxD,+DAA8D;AAC9D,6EAA4E;AAC5E,6DAA4D;AAC5D,qEAAoE;AACpE,6DAA4D;AAC5D,uDAAsD;AACtD,+DAA8D;AAC9D,6DAA4D;AAG5D;;GAEG;AACU,QAAA,mBAAmB,GAAwB;IACpD,CAAC,EAAE,6BAAa;IAChB,CAAC,EAAE,6CAAqB;IACxB,UAAU,EAAE,6CAAqB;IACjC,EAAE,EAAE,yBAAW;IACf,IAAI,EAAE,6BAAa;IACnB,GAAG,EAAE,6CAAqB;IAC1B,EAAE,EAAE,6CAAqB;IACzB,IAAI,EAAE,6BAAa;IACnB,CAAC,EAAE,6CAAqB;IACxB,GAAG,EAAE,+BAAc;IACnB,EAAE,EAAE,mCAAgB;IACpB,EAAE,EAAE,mCAAgB;IACpB,EAAE,EAAE,mCAAgB;IACpB,EAAE,EAAE,mCAAgB;IACpB,EAAE,EAAE,mCAAgB;IACpB,EAAE,EAAE,mCAAgB;IACpB,EAAE,EAAE,yBAAW;IACf,EAAE,EAAE,qCAAiB;IACrB,EAAE,EAAE,6BAAa;IACjB,CAAC,EAAE,uBAAU;IACb,GAAG,EAAE,mDAAwB;IAC7B,CAAC,EAAE,6CAAqB;IACxB,OAAO,EAAE,6CAAqB;IAC9B,IAAI,EAAE,6CAAqB;IAC3B,MAAM,EAAE,6CAAqB;IAC7B,MAAM,EAAE,6CAAqB;IAC7B,GAAG,EAAE,6CAAqB;IAC1B,GAAG,EAAE,6CAAqB;IAC1B,KAAK,EAAE,+BAAc;IACrB,CAAC,EAAE,6CAAqB;IACxB,EAAE,EAAE,6BAAa;IAEjB,GAAG,EAAE,mCAAgB;IACrB,OAAO,EAAE,6BAAa;IACtB,OAAO,EAAE,mCAAgB;IACzB,MAAM,EAAE,iCAAe;IACvB,KAAK,EAAE,+BAAc;IACrB,SAAS,EAAE,uCAAkB;CAChC,CAAC","sourcesContent":["import { brProcessor } from '../processors/brProcessor';\nimport { childProcessor } from '../processors/childProcessor';\nimport { codeProcessor } from '../processors/codeProcessor';\nimport { delimiterProcessor } from '../processors/delimiterProcessor';\nimport { elementProcessor } from '../processors/elementProcessor';\nimport { entityProcessor } from '../processors/entityProcessor';\nimport { fontProcessor } from '../processors/fontProcessor';\nimport { formatContainerProcessor } from '../processors/formatContainerProcessor';\nimport { generalProcessor } from '../processors/generalProcessor';\nimport { headingProcessor } from '../processors/headingProcessor';\nimport { hrProcessor } from '../processors/hrProcessor';\nimport { imageProcessor } from '../processors/imageProcessor';\nimport { knownElementProcessor } from '../processors/knownElementProcessor';\nimport { linkProcessor } from '../processors/linkProcessor';\nimport { listItemProcessor } from '../processors/listItemProcessor';\nimport { listProcessor } from '../processors/listProcessor';\nimport { pProcessor } from '../processors/pProcessor';\nimport { tableProcessor } from '../processors/tableProcessor';\nimport { textProcessor } from '../processors/textProcessor';\nimport type { ElementProcessorMap } from 'roosterjs-content-model-types';\n\n/**\n * @internal\n */\nexport const defaultProcessorMap: ElementProcessorMap = {\n a: linkProcessor,\n b: knownElementProcessor,\n blockquote: knownElementProcessor,\n br: brProcessor,\n code: codeProcessor,\n div: knownElementProcessor,\n em: knownElementProcessor,\n font: fontProcessor,\n i: knownElementProcessor,\n img: imageProcessor,\n h1: headingProcessor,\n h2: headingProcessor,\n h3: headingProcessor,\n h4: headingProcessor,\n h5: headingProcessor,\n h6: headingProcessor,\n hr: hrProcessor,\n li: listItemProcessor,\n ol: listProcessor,\n p: pProcessor,\n pre: formatContainerProcessor,\n s: knownElementProcessor,\n section: knownElementProcessor,\n span: knownElementProcessor,\n strike: knownElementProcessor,\n strong: knownElementProcessor,\n sub: knownElementProcessor,\n sup: knownElementProcessor,\n table: tableProcessor,\n u: knownElementProcessor,\n ul: listProcessor,\n\n '*': generalProcessor,\n '#text': textProcessor,\n element: elementProcessor,\n entity: entityProcessor,\n child: childProcessor,\n delimiter: delimiterProcessor,\n};\n"]}
@@ -1,5 +1,4 @@
1
- import { ContentModelDocument, DomToModelContext } from 'roosterjs-content-model-types';
2
- import { SelectionRangeEx } from 'roosterjs-editor-types';
1
+ import type { ContentModelDocument, DOMSelection, DomToModelContext } from 'roosterjs-content-model-types';
3
2
  /**
4
3
  * Create Content Model from DOM tree in this editor
5
4
  * @param root Root element of DOM tree to create Content Model from
@@ -7,4 +6,4 @@ import { SelectionRangeEx } from 'roosterjs-editor-types';
7
6
  * @param selection Selection that already exists in content
8
7
  * @returns A ContentModelDocument object that contains all the models created from the give root element
9
8
  */
10
- export declare function domToContentModel(root: HTMLElement | DocumentFragment, context: DomToModelContext, selection?: SelectionRangeEx): ContentModelDocument;
9
+ export declare function domToContentModel(root: HTMLElement | DocumentFragment, context: DomToModelContext, selection?: DOMSelection): ContentModelDocument;
@@ -12,7 +12,7 @@ var normalizeContentModel_1 = require("../modelApi/common/normalizeContentModel"
12
12
  */
13
13
  function domToContentModel(root, context, selection) {
14
14
  var model = (0, createContentModelDocument_1.createContentModelDocument)(context.defaultFormat);
15
- context.rangeEx = selection;
15
+ context.selection = selection;
16
16
  context.elementProcessors.child(model, root, context);
17
17
  (0, normalizeContentModel_1.normalizeContentModel)(model);
18
18
  return model;
@@ -1 +1 @@
1
- {"version":3,"file":"domToContentModel.js","sourceRoot":"","sources":["../../../../packages-content-model/roosterjs-content-model-dom/lib/domToModel/domToContentModel.ts"],"names":[],"mappings":";;;AACA,8FAA6F;AAC7F,kFAAiF;AAGjF;;;;;;GAMG;AACH,SAAgB,iBAAiB,CAC7B,IAAoC,EACpC,OAA0B,EAC1B,SAA4B;IAE5B,IAAM,KAAK,GAAG,IAAA,uDAA0B,EAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IAEhE,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC;IAC5B,OAAO,CAAC,iBAAiB,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAEtD,IAAA,6CAAqB,EAAC,KAAK,CAAC,CAAC;IAE7B,OAAO,KAAK,CAAC;AACjB,CAAC;AAbD,8CAaC","sourcesContent":["import { ContentModelDocument, DomToModelContext } from 'roosterjs-content-model-types';\nimport { createContentModelDocument } from '../modelApi/creators/createContentModelDocument';\nimport { normalizeContentModel } from '../modelApi/common/normalizeContentModel';\nimport { SelectionRangeEx } from 'roosterjs-editor-types';\n\n/**\n * Create Content Model from DOM tree in this editor\n * @param root Root element of DOM tree to create Content Model from\n * @param context Context object for DOM to Content Model conversion\n * @param selection Selection that already exists in content\n * @returns A ContentModelDocument object that contains all the models created from the give root element\n */\nexport function domToContentModel(\n root: HTMLElement | DocumentFragment,\n context: DomToModelContext,\n selection?: SelectionRangeEx\n): ContentModelDocument {\n const model = createContentModelDocument(context.defaultFormat);\n\n context.rangeEx = selection;\n context.elementProcessors.child(model, root, context);\n\n normalizeContentModel(model);\n\n return model;\n}\n"]}
1
+ {"version":3,"file":"domToContentModel.js","sourceRoot":"","sources":["../../../../packages-content-model/roosterjs-content-model-dom/lib/domToModel/domToContentModel.ts"],"names":[],"mappings":";;;AAAA,8FAA6F;AAC7F,kFAAiF;AAOjF;;;;;;GAMG;AACH,SAAgB,iBAAiB,CAC7B,IAAoC,EACpC,OAA0B,EAC1B,SAAwB;IAExB,IAAM,KAAK,GAAG,IAAA,uDAA0B,EAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IAEhE,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC;IAC9B,OAAO,CAAC,iBAAiB,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAEtD,IAAA,6CAAqB,EAAC,KAAK,CAAC,CAAC;IAE7B,OAAO,KAAK,CAAC;AACjB,CAAC;AAbD,8CAaC","sourcesContent":["import { createContentModelDocument } from '../modelApi/creators/createContentModelDocument';\nimport { normalizeContentModel } from '../modelApi/common/normalizeContentModel';\nimport type {\n ContentModelDocument,\n DOMSelection,\n DomToModelContext,\n} from 'roosterjs-content-model-types';\n\n/**\n * Create Content Model from DOM tree in this editor\n * @param root Root element of DOM tree to create Content Model from\n * @param context Context object for DOM to Content Model conversion\n * @param selection Selection that already exists in content\n * @returns A ContentModelDocument object that contains all the models created from the give root element\n */\nexport function domToContentModel(\n root: HTMLElement | DocumentFragment,\n context: DomToModelContext,\n selection?: DOMSelection\n): ContentModelDocument {\n const model = createContentModelDocument(context.defaultFormat);\n\n context.selection = selection;\n context.elementProcessors.child(model, root, context);\n\n normalizeContentModel(model);\n\n return model;\n}\n"]}
@@ -1,4 +1,4 @@
1
- import { ContentModelBlockGroup, ContentModelSegmentFormat, DomToModelContext } from 'roosterjs-content-model-types';
1
+ import type { ContentModelBlockGroup, ContentModelSegmentFormat, DomToModelContext } from 'roosterjs-content-model-types';
2
2
  /**
3
3
  * @internal
4
4
  */
@@ -1 +1 @@
1
- {"version":3,"file":"blockProcessor.js","sourceRoot":"","sources":["../../../../../packages-content-model/roosterjs-content-model-dom/lib/domToModel/processors/blockProcessor.ts"],"names":[],"mappings":";;;;AAAA,2DAA0D;AAC1D,uEAA2D;AAC3D,2EAA0E;AAC1E,oDAAmD;AAOnD,IAAM,oBAAoB,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;AAE3C;;GAEG;AACH,SAAgB,cAAc,CAC1B,KAA6B,EAC7B,OAAoB,EACpB,OAA0B,EAC1B,aAAyC;IAEzC,IAAM,SAAS,GAAG,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC;IACtF,IAAM,kBAAkB,GAAG,oBAAoB,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAE9E,IAAA,yBAAW,EAAC,OAAO,EAAE,OAAO,CAAC,aAAa,CAAC,KAAK,EAAE,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IAEhF,IAAM,WAAW,6BAAQ,OAAO,CAAC,WAAW,CAAE,CAAC;IAE/C,IAAA,yBAAW,EAAC,OAAO,EAAE,OAAO,CAAC,aAAa,CAAC,SAAS,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;IAE5E,wCAAa,CAAC,OAAO,CAAC,UAAA,KAAK;QACvB,IAAI,WAAW,CAAC,KAAK,CAAC,EAAE;YACpB,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;SACnD;IACL,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,kBAAkB,EAAE;QACrB,IAAM,SAAS,GAAG,IAAA,iCAAe,EAC7B,KAAK,CAAC,cAAc,EACpB,WAAW,EACX,aAAa,EACb,SAAS,CACZ,CAAC;QAEF,IAAA,mBAAQ,EAAC,KAAK,EAAE,SAAS,CAAC,CAAC;KAC9B;IAED,OAAO,CAAC,iBAAiB,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AAC7D,CAAC;AAjCD,wCAiCC","sourcesContent":["import { addBlock } from '../../modelApi/common/addBlock';\nimport { ContextStyles } from './formatContainerProcessor';\nimport { createParagraph } from '../../modelApi/creators/createParagraph';\nimport { parseFormat } from '../utils/parseFormat';\nimport {\n ContentModelBlockGroup,\n ContentModelSegmentFormat,\n DomToModelContext,\n} from 'roosterjs-content-model-types';\n\nconst SegmentDecoratorTags = ['A', 'CODE'];\n\n/**\n * @internal\n */\nexport function blockProcessor(\n group: ContentModelBlockGroup,\n element: HTMLElement,\n context: DomToModelContext,\n segmentFormat?: ContentModelSegmentFormat\n) {\n const decorator = context.blockDecorator.tagName ? context.blockDecorator : undefined;\n const isSegmentDecorator = SegmentDecoratorTags.indexOf(element.tagName) >= 0;\n\n parseFormat(element, context.formatParsers.block, context.blockFormat, context);\n\n const blockFormat = { ...context.blockFormat };\n\n parseFormat(element, context.formatParsers.container, blockFormat, context);\n\n ContextStyles.forEach(style => {\n if (blockFormat[style]) {\n context.blockFormat[style] = blockFormat[style];\n }\n });\n\n if (!isSegmentDecorator) {\n const paragraph = createParagraph(\n false /*isImplicit*/,\n blockFormat,\n segmentFormat,\n decorator\n );\n\n addBlock(group, paragraph);\n }\n\n context.elementProcessors.child(group, element, context);\n}\n"]}
1
+ {"version":3,"file":"blockProcessor.js","sourceRoot":"","sources":["../../../../../packages-content-model/roosterjs-content-model-dom/lib/domToModel/processors/blockProcessor.ts"],"names":[],"mappings":";;;;AAAA,2DAA0D;AAC1D,uEAA2D;AAC3D,2EAA0E;AAC1E,oDAAmD;AAOnD,IAAM,oBAAoB,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;AAE3C;;GAEG;AACH,SAAgB,cAAc,CAC1B,KAA6B,EAC7B,OAAoB,EACpB,OAA0B,EAC1B,aAAyC;IAEzC,IAAM,SAAS,GAAG,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC;IACtF,IAAM,kBAAkB,GAAG,oBAAoB,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAE9E,IAAA,yBAAW,EAAC,OAAO,EAAE,OAAO,CAAC,aAAa,CAAC,KAAK,EAAE,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IAEhF,IAAM,WAAW,6BAAQ,OAAO,CAAC,WAAW,CAAE,CAAC;IAE/C,IAAA,yBAAW,EAAC,OAAO,EAAE,OAAO,CAAC,aAAa,CAAC,SAAS,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;IAE5E,wCAAa,CAAC,OAAO,CAAC,UAAA,KAAK;QACvB,IAAI,WAAW,CAAC,KAAK,CAAC,EAAE;YACpB,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;SACnD;IACL,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,kBAAkB,EAAE;QACrB,IAAM,SAAS,GAAG,IAAA,iCAAe,EAC7B,KAAK,CAAC,cAAc,EACpB,WAAW,EACX,aAAa,EACb,SAAS,CACZ,CAAC;QAEF,IAAA,mBAAQ,EAAC,KAAK,EAAE,SAAS,CAAC,CAAC;KAC9B;IAED,OAAO,CAAC,iBAAiB,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AAC7D,CAAC;AAjCD,wCAiCC","sourcesContent":["import { addBlock } from '../../modelApi/common/addBlock';\nimport { ContextStyles } from './formatContainerProcessor';\nimport { createParagraph } from '../../modelApi/creators/createParagraph';\nimport { parseFormat } from '../utils/parseFormat';\nimport type {\n ContentModelBlockGroup,\n ContentModelSegmentFormat,\n DomToModelContext,\n} from 'roosterjs-content-model-types';\n\nconst SegmentDecoratorTags = ['A', 'CODE'];\n\n/**\n * @internal\n */\nexport function blockProcessor(\n group: ContentModelBlockGroup,\n element: HTMLElement,\n context: DomToModelContext,\n segmentFormat?: ContentModelSegmentFormat\n) {\n const decorator = context.blockDecorator.tagName ? context.blockDecorator : undefined;\n const isSegmentDecorator = SegmentDecoratorTags.indexOf(element.tagName) >= 0;\n\n parseFormat(element, context.formatParsers.block, context.blockFormat, context);\n\n const blockFormat = { ...context.blockFormat };\n\n parseFormat(element, context.formatParsers.container, blockFormat, context);\n\n ContextStyles.forEach(style => {\n if (blockFormat[style]) {\n context.blockFormat[style] = blockFormat[style];\n }\n });\n\n if (!isSegmentDecorator) {\n const paragraph = createParagraph(\n false /*isImplicit*/,\n blockFormat,\n segmentFormat,\n decorator\n );\n\n addBlock(group, paragraph);\n }\n\n context.elementProcessors.child(group, element, context);\n}\n"]}
@@ -1,4 +1,4 @@
1
- import { ElementProcessor } from 'roosterjs-content-model-types';
1
+ import type { ElementProcessor } from 'roosterjs-content-model-types';
2
2
  /**
3
3
  * @internal
4
4
  */
@@ -7,11 +7,13 @@ var createBr_1 = require("../../modelApi/creators/createBr");
7
7
  * @internal
8
8
  */
9
9
  var brProcessor = function (group, element, context) {
10
+ var _a;
10
11
  var br = (0, createBr_1.createBr)(context.segmentFormat);
11
12
  if (context.isInSelection) {
12
13
  br.isSelected = true;
13
14
  }
14
- (0, addSegment_1.addSegment)(group, br, context.blockFormat);
15
+ var paragraph = (0, addSegment_1.addSegment)(group, br, context.blockFormat);
16
+ (_a = context.domIndexer) === null || _a === void 0 ? void 0 : _a.onSegment(element, paragraph, [br]);
15
17
  };
16
18
  exports.brProcessor = brProcessor;
17
19
  //# sourceMappingURL=brProcessor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"brProcessor.js","sourceRoot":"","sources":["../../../../../packages-content-model/roosterjs-content-model-dom/lib/domToModel/processors/brProcessor.ts"],"names":[],"mappings":";;;AAAA,+DAA8D;AAC9D,6DAA4D;AAG5D;;GAEG;AACI,IAAM,WAAW,GAAoC,UAAC,KAAK,EAAE,OAAO,EAAE,OAAO;IAChF,IAAM,EAAE,GAAG,IAAA,mBAAQ,EAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IAE3C,IAAI,OAAO,CAAC,aAAa,EAAE;QACvB,EAAE,CAAC,UAAU,GAAG,IAAI,CAAC;KACxB;IAED,IAAA,uBAAU,EAAC,KAAK,EAAE,EAAE,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;AAC/C,CAAC,CAAC;AARW,QAAA,WAAW,eAQtB","sourcesContent":["import { addSegment } from '../../modelApi/common/addSegment';\nimport { createBr } from '../../modelApi/creators/createBr';\nimport { ElementProcessor } from 'roosterjs-content-model-types';\n\n/**\n * @internal\n */\nexport const brProcessor: ElementProcessor<HTMLBRElement> = (group, element, context) => {\n const br = createBr(context.segmentFormat);\n\n if (context.isInSelection) {\n br.isSelected = true;\n }\n\n addSegment(group, br, context.blockFormat);\n};\n"]}
1
+ {"version":3,"file":"brProcessor.js","sourceRoot":"","sources":["../../../../../packages-content-model/roosterjs-content-model-dom/lib/domToModel/processors/brProcessor.ts"],"names":[],"mappings":";;;AAAA,+DAA8D;AAC9D,6DAA4D;AAG5D;;GAEG;AACI,IAAM,WAAW,GAAoC,UAAC,KAAK,EAAE,OAAO,EAAE,OAAO;;IAChF,IAAM,EAAE,GAAG,IAAA,mBAAQ,EAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IAE3C,IAAI,OAAO,CAAC,aAAa,EAAE;QACvB,EAAE,CAAC,UAAU,GAAG,IAAI,CAAC;KACxB;IAED,IAAM,SAAS,GAAG,IAAA,uBAAU,EAAC,KAAK,EAAE,EAAE,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;IAC7D,MAAA,OAAO,CAAC,UAAU,0CAAE,SAAS,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAC5D,CAAC,CAAC;AATW,QAAA,WAAW,eAStB","sourcesContent":["import { addSegment } from '../../modelApi/common/addSegment';\nimport { createBr } from '../../modelApi/creators/createBr';\nimport type { ElementProcessor } from 'roosterjs-content-model-types';\n\n/**\n * @internal\n */\nexport const brProcessor: ElementProcessor<HTMLBRElement> = (group, element, context) => {\n const br = createBr(context.segmentFormat);\n\n if (context.isInSelection) {\n br.isSelected = true;\n }\n\n const paragraph = addSegment(group, br, context.blockFormat);\n context.domIndexer?.onSegment(element, paragraph, [br]);\n};\n"]}
@@ -1,4 +1,4 @@
1
- import { ContentModelBlockGroup, DomToModelContext, ElementProcessor } from 'roosterjs-content-model-types';
1
+ import type { ContentModelBlockGroup, DomToModelContext, ElementProcessor } from 'roosterjs-content-model-types';
2
2
  /**
3
3
  * Content Model Element Processor for child elements
4
4
  * @param group The parent block group
@@ -30,10 +30,10 @@ exports.childProcessor = childProcessor;
30
30
  *
31
31
  */
32
32
  function processChildNode(group, child, context) {
33
- if ((0, isNodeOfType_1.isNodeOfType)(child, 1 /* Element */) && child.style.display != 'none') {
33
+ if ((0, isNodeOfType_1.isNodeOfType)(child, 'ELEMENT_NODE') && child.style.display != 'none') {
34
34
  context.elementProcessors.element(group, child, context);
35
35
  }
36
- else if ((0, isNodeOfType_1.isNodeOfType)(child, 3 /* Text */)) {
36
+ else if ((0, isNodeOfType_1.isNodeOfType)(child, 'TEXT_NODE')) {
37
37
  context.elementProcessors['#text'](group, child, context);
38
38
  }
39
39
  }
@@ -52,8 +52,8 @@ function handleRegularSelection(index, context, group, nodeStartOffset, nodeEndO
52
52
  context.isInSelection = true;
53
53
  (0, addSelectionMarker_1.addSelectionMarker)(group, context);
54
54
  }
55
- if (index == nodeEndOffset && ((_a = context.rangeEx) === null || _a === void 0 ? void 0 : _a.type) == 0 /* Normal */) {
56
- if (!context.rangeEx.areAllCollapsed) {
55
+ if (index == nodeEndOffset && ((_a = context.selection) === null || _a === void 0 ? void 0 : _a.type) == 'range') {
56
+ if (!context.selection.range.collapsed) {
57
57
  (0, addSelectionMarker_1.addSelectionMarker)(group, context);
58
58
  }
59
59
  context.isInSelection = false;
@@ -1 +1 @@
1
- {"version":3,"file":"childProcessor.js","sourceRoot":"","sources":["../../../../../packages-content-model/roosterjs-content-model-dom/lib/domToModel/processors/childProcessor.ts"],"names":[],"mappings":";;;;AAAA,kEAAiE;AACjE,kFAAiF;AACjF,4DAA2D;AAQ3D;;;;;GAKG;AACI,IAAM,cAAc,GAAiC,UACxD,KAA6B,EAC7B,MAAkB,EAClB,OAA0B;IAEpB,IAAA,KAAA,oBAAmC,IAAA,uDAA0B,EAAC,OAAO,EAAE,MAAM,CAAC,IAAA,EAA7E,eAAe,QAAA,EAAE,aAAa,QAA+C,CAAC;IACrF,IAAI,KAAK,GAAG,CAAC,CAAC;IAEd,KAAK,IAAI,KAAK,GAAG,MAAM,CAAC,UAAU,EAAE,KAAK,EAAE,KAAK,GAAG,KAAK,CAAC,WAAW,EAAE;QAClE,sBAAsB,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,aAAa,CAAC,CAAC;QAE9E,gBAAgB,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;QAExC,KAAK,EAAE,CAAC;KACX;IAED,sBAAsB,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,aAAa,CAAC,CAAC;AAClF,CAAC,CAAC;AAjBW,QAAA,cAAc,kBAiBzB;AAEF;;;;;;GAMG;AACH,SAAgB,gBAAgB,CAC5B,KAA6B,EAC7B,KAAW,EACX,OAA0B;IAE1B,IAAI,IAAA,2BAAY,EAAC,KAAK,kBAAmB,IAAI,KAAK,CAAC,KAAK,CAAC,OAAO,IAAI,MAAM,EAAE;QACxE,OAAO,CAAC,iBAAiB,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;KAC5D;SAAM,IAAI,IAAA,2BAAY,EAAC,KAAK,eAAgB,EAAE;QAC3C,OAAO,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;KAC7D;AACL,CAAC;AAVD,4CAUC;AAED;;;;;;;GAOG;AACH,SAAgB,sBAAsB,CAClC,KAAa,EACb,OAA0B,EAC1B,KAA6B,EAC7B,eAAuB,EACvB,aAAqB;;IAErB,IAAI,KAAK,IAAI,eAAe,EAAE;QAC1B,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;QAE7B,IAAA,uCAAkB,EAAC,KAAK,EAAE,OAAO,CAAC,CAAC;KACtC;IAED,IAAI,KAAK,IAAI,aAAa,IAAI,CAAA,MAAA,OAAO,CAAC,OAAO,0CAAE,IAAI,mBAA8B,EAAE;QAC/E,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,eAAe,EAAE;YAClC,IAAA,uCAAkB,EAAC,KAAK,EAAE,OAAO,CAAC,CAAC;SACtC;QACD,OAAO,CAAC,aAAa,GAAG,KAAK,CAAC;KACjC;AACL,CAAC;AAnBD,wDAmBC","sourcesContent":["import { addSelectionMarker } from '../utils/addSelectionMarker';\nimport { getRegularSelectionOffsets } from '../utils/getRegularSelectionOffsets';\nimport { isNodeOfType } from '../../domUtils/isNodeOfType';\nimport { NodeType, SelectionRangeTypes } from 'roosterjs-editor-types';\nimport {\n ContentModelBlockGroup,\n DomToModelContext,\n ElementProcessor,\n} from 'roosterjs-content-model-types';\n\n/**\n * Content Model Element Processor for child elements\n * @param group The parent block group\n * @param parent Parent DOM node to process\n * @param context DOM to Content Model context\n */\nexport const childProcessor: ElementProcessor<ParentNode> = (\n group: ContentModelBlockGroup,\n parent: ParentNode,\n context: DomToModelContext\n) => {\n const [nodeStartOffset, nodeEndOffset] = getRegularSelectionOffsets(context, parent);\n let index = 0;\n\n for (let child = parent.firstChild; child; child = child.nextSibling) {\n handleRegularSelection(index, context, group, nodeStartOffset, nodeEndOffset);\n\n processChildNode(group, child, context);\n\n index++;\n }\n\n handleRegularSelection(index, context, group, nodeStartOffset, nodeEndOffset);\n};\n\n/**\n * Helper function for processing child node\n * @param group The parent block group\n * @param parent Parent DOM node to process\n * @param context DOM to Content Model context\n *\n */\nexport function processChildNode(\n group: ContentModelBlockGroup,\n child: Node,\n context: DomToModelContext\n) {\n if (isNodeOfType(child, NodeType.Element) && child.style.display != 'none') {\n context.elementProcessors.element(group, child, context);\n } else if (isNodeOfType(child, NodeType.Text)) {\n context.elementProcessors['#text'](group, child, context);\n }\n}\n\n/**\n * Helper function to handle regular (range based) selection when process child node\n * @param index Index of current child node in its parent\n * @param context DOM to Content Model context\n * @param group The parent block group\n * @param nodeStartOffset Start offset of current regular selection\n * @param nodeEndOffset End offset of current regular selection\n */\nexport function handleRegularSelection(\n index: number,\n context: DomToModelContext,\n group: ContentModelBlockGroup,\n nodeStartOffset: number,\n nodeEndOffset: number\n) {\n if (index == nodeStartOffset) {\n context.isInSelection = true;\n\n addSelectionMarker(group, context);\n }\n\n if (index == nodeEndOffset && context.rangeEx?.type == SelectionRangeTypes.Normal) {\n if (!context.rangeEx.areAllCollapsed) {\n addSelectionMarker(group, context);\n }\n context.isInSelection = false;\n }\n}\n"]}
1
+ {"version":3,"file":"childProcessor.js","sourceRoot":"","sources":["../../../../../packages-content-model/roosterjs-content-model-dom/lib/domToModel/processors/childProcessor.ts"],"names":[],"mappings":";;;;AAAA,kEAAiE;AACjE,kFAAiF;AACjF,4DAA2D;AAO3D;;;;;GAKG;AACI,IAAM,cAAc,GAAiC,UACxD,KAA6B,EAC7B,MAAkB,EAClB,OAA0B;IAEpB,IAAA,KAAA,oBAAmC,IAAA,uDAA0B,EAAC,OAAO,EAAE,MAAM,CAAC,IAAA,EAA7E,eAAe,QAAA,EAAE,aAAa,QAA+C,CAAC;IACrF,IAAI,KAAK,GAAG,CAAC,CAAC;IAEd,KAAK,IAAI,KAAK,GAAG,MAAM,CAAC,UAAU,EAAE,KAAK,EAAE,KAAK,GAAG,KAAK,CAAC,WAAW,EAAE;QAClE,sBAAsB,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,aAAa,CAAC,CAAC;QAE9E,gBAAgB,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;QAExC,KAAK,EAAE,CAAC;KACX;IAED,sBAAsB,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,aAAa,CAAC,CAAC;AAClF,CAAC,CAAC;AAjBW,QAAA,cAAc,kBAiBzB;AAEF;;;;;;GAMG;AACH,SAAgB,gBAAgB,CAC5B,KAA6B,EAC7B,KAAW,EACX,OAA0B;IAE1B,IAAI,IAAA,2BAAY,EAAC,KAAK,EAAE,cAAc,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,OAAO,IAAI,MAAM,EAAE;QACtE,OAAO,CAAC,iBAAiB,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;KAC5D;SAAM,IAAI,IAAA,2BAAY,EAAC,KAAK,EAAE,WAAW,CAAC,EAAE;QACzC,OAAO,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;KAC7D;AACL,CAAC;AAVD,4CAUC;AAED;;;;;;;GAOG;AACH,SAAgB,sBAAsB,CAClC,KAAa,EACb,OAA0B,EAC1B,KAA6B,EAC7B,eAAuB,EACvB,aAAqB;;IAErB,IAAI,KAAK,IAAI,eAAe,EAAE;QAC1B,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;QAE7B,IAAA,uCAAkB,EAAC,KAAK,EAAE,OAAO,CAAC,CAAC;KACtC;IAED,IAAI,KAAK,IAAI,aAAa,IAAI,CAAA,MAAA,OAAO,CAAC,SAAS,0CAAE,IAAI,KAAI,OAAO,EAAE;QAC9D,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,SAAS,EAAE;YACpC,IAAA,uCAAkB,EAAC,KAAK,EAAE,OAAO,CAAC,CAAC;SACtC;QACD,OAAO,CAAC,aAAa,GAAG,KAAK,CAAC;KACjC;AACL,CAAC;AAnBD,wDAmBC","sourcesContent":["import { addSelectionMarker } from '../utils/addSelectionMarker';\nimport { getRegularSelectionOffsets } from '../utils/getRegularSelectionOffsets';\nimport { isNodeOfType } from '../../domUtils/isNodeOfType';\nimport type {\n ContentModelBlockGroup,\n DomToModelContext,\n ElementProcessor,\n} from 'roosterjs-content-model-types';\n\n/**\n * Content Model Element Processor for child elements\n * @param group The parent block group\n * @param parent Parent DOM node to process\n * @param context DOM to Content Model context\n */\nexport const childProcessor: ElementProcessor<ParentNode> = (\n group: ContentModelBlockGroup,\n parent: ParentNode,\n context: DomToModelContext\n) => {\n const [nodeStartOffset, nodeEndOffset] = getRegularSelectionOffsets(context, parent);\n let index = 0;\n\n for (let child = parent.firstChild; child; child = child.nextSibling) {\n handleRegularSelection(index, context, group, nodeStartOffset, nodeEndOffset);\n\n processChildNode(group, child, context);\n\n index++;\n }\n\n handleRegularSelection(index, context, group, nodeStartOffset, nodeEndOffset);\n};\n\n/**\n * Helper function for processing child node\n * @param group The parent block group\n * @param parent Parent DOM node to process\n * @param context DOM to Content Model context\n *\n */\nexport function processChildNode(\n group: ContentModelBlockGroup,\n child: Node,\n context: DomToModelContext\n) {\n if (isNodeOfType(child, 'ELEMENT_NODE') && child.style.display != 'none') {\n context.elementProcessors.element(group, child, context);\n } else if (isNodeOfType(child, 'TEXT_NODE')) {\n context.elementProcessors['#text'](group, child, context);\n }\n}\n\n/**\n * Helper function to handle regular (range based) selection when process child node\n * @param index Index of current child node in its parent\n * @param context DOM to Content Model context\n * @param group The parent block group\n * @param nodeStartOffset Start offset of current regular selection\n * @param nodeEndOffset End offset of current regular selection\n */\nexport function handleRegularSelection(\n index: number,\n context: DomToModelContext,\n group: ContentModelBlockGroup,\n nodeStartOffset: number,\n nodeEndOffset: number\n) {\n if (index == nodeStartOffset) {\n context.isInSelection = true;\n\n addSelectionMarker(group, context);\n }\n\n if (index == nodeEndOffset && context.selection?.type == 'range') {\n if (!context.selection.range.collapsed) {\n addSelectionMarker(group, context);\n }\n context.isInSelection = false;\n }\n}\n"]}
@@ -1,4 +1,4 @@
1
- import { ElementProcessor } from 'roosterjs-content-model-types';
1
+ import type { ElementProcessor } from 'roosterjs-content-model-types';
2
2
  /**
3
3
  * @internal
4
4
  */
@@ -1 +1 @@
1
- {"version":3,"file":"codeProcessor.js","sourceRoot":"","sources":["../../../../../packages-content-model/roosterjs-content-model-dom/lib/domToModel/processors/codeProcessor.ts"],"names":[],"mappings":";;;AACA,iEAAgE;AAChE,oDAAmD;AACnD,oDAAmD;AAEnD;;GAEG;AACI,IAAM,aAAa,GAAkC,UAAC,KAAK,EAAE,OAAO,EAAE,OAAO;IAChF,IAAA,yBAAW,EAAC,OAAO,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,EAAE;QAC1C,IAAA,yBAAW,EAAC,OAAO,EAAE,OAAO,CAAC,aAAa,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAE/E,IAAA,6CAAqB,EAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;AACP,CAAC,CAAC;AANW,QAAA,aAAa,iBAMxB","sourcesContent":["import { ElementProcessor } from 'roosterjs-content-model-types';\nimport { knownElementProcessor } from './knownElementProcessor';\nimport { parseFormat } from '../utils/parseFormat';\nimport { stackFormat } from '../utils/stackFormat';\n\n/**\n * @internal\n */\nexport const codeProcessor: ElementProcessor<HTMLElement> = (group, element, context) => {\n stackFormat(context, { code: 'codeDefault' }, () => {\n parseFormat(element, context.formatParsers.code, context.code.format, context);\n\n knownElementProcessor(group, element, context);\n });\n};\n"]}
1
+ {"version":3,"file":"codeProcessor.js","sourceRoot":"","sources":["../../../../../packages-content-model/roosterjs-content-model-dom/lib/domToModel/processors/codeProcessor.ts"],"names":[],"mappings":";;;AAAA,iEAAgE;AAChE,oDAAmD;AACnD,oDAAmD;AAGnD;;GAEG;AACI,IAAM,aAAa,GAAkC,UAAC,KAAK,EAAE,OAAO,EAAE,OAAO;IAChF,IAAA,yBAAW,EAAC,OAAO,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,EAAE;QAC1C,IAAA,yBAAW,EAAC,OAAO,EAAE,OAAO,CAAC,aAAa,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAE/E,IAAA,6CAAqB,EAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;AACP,CAAC,CAAC;AANW,QAAA,aAAa,iBAMxB","sourcesContent":["import { knownElementProcessor } from './knownElementProcessor';\nimport { parseFormat } from '../utils/parseFormat';\nimport { stackFormat } from '../utils/stackFormat';\nimport type { ElementProcessor } from 'roosterjs-content-model-types';\n\n/**\n * @internal\n */\nexport const codeProcessor: ElementProcessor<HTMLElement> = (group, element, context) => {\n stackFormat(context, { code: 'codeDefault' }, () => {\n parseFormat(element, context.formatParsers.code, context.code.format, context);\n\n knownElementProcessor(group, element, context);\n });\n};\n"]}
@@ -1,4 +1,4 @@
1
- import { ElementProcessor } from 'roosterjs-content-model-types';
1
+ import type { ElementProcessor } from 'roosterjs-content-model-types';
2
2
  /**
3
3
  * @internal
4
4
  * @param group
@@ -1 +1 @@
1
- {"version":3,"file":"delimiterProcessor.js","sourceRoot":"","sources":["../../../../../packages-content-model/roosterjs-content-model-dom/lib/domToModel/processors/delimiterProcessor.ts"],"names":[],"mappings":";;;;AACA,kFAAiF;AACjF,mDAA0D;AAE1D;;;;;GAKG;AACI,IAAM,kBAAkB,GAA2B,UAAC,KAAK,EAAE,OAAO,EAAE,OAAO;IAC9E,IAAI,KAAK,GAAG,CAAC,CAAC;IACR,IAAA,KAAA,oBAAmC,IAAA,uDAA0B,EAAC,OAAO,EAAE,OAAO,CAAC,IAAA,EAA9E,eAAe,QAAA,EAAE,aAAa,QAAgD,CAAC;IAEtF,KAAK,IAAI,KAAK,GAAG,OAAO,CAAC,UAAU,EAAE,KAAK,EAAE,KAAK,GAAG,KAAK,CAAC,WAAW,EAAE;QACnE,IAAA,uCAAsB,EAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,aAAa,CAAC,CAAC;QAE9E,IAAA,0BAAkB,EAAC,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;QAC1C,KAAK,EAAE,CAAC;KACX;IAED,IAAA,uCAAsB,EAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,aAAa,CAAC,CAAC;AAClF,CAAC,CAAC;AAZW,QAAA,kBAAkB,sBAY7B","sourcesContent":["import { ElementProcessor } from 'roosterjs-content-model-types';\nimport { getRegularSelectionOffsets } from '../utils/getRegularSelectionOffsets';\nimport { handleRegularSelection } from './childProcessor';\n\n/**\n * @internal\n * @param group\n * @param element\n * @param context\n */\nexport const delimiterProcessor: ElementProcessor<Node> = (group, element, context) => {\n let index = 0;\n const [nodeStartOffset, nodeEndOffset] = getRegularSelectionOffsets(context, element);\n\n for (let child = element.firstChild; child; child = child.nextSibling) {\n handleRegularSelection(index, context, group, nodeStartOffset, nodeEndOffset);\n\n delimiterProcessor(group, child, context);\n index++;\n }\n\n handleRegularSelection(index, context, group, nodeStartOffset, nodeEndOffset);\n};\n"]}
1
+ {"version":3,"file":"delimiterProcessor.js","sourceRoot":"","sources":["../../../../../packages-content-model/roosterjs-content-model-dom/lib/domToModel/processors/delimiterProcessor.ts"],"names":[],"mappings":";;;;AAAA,kFAAiF;AACjF,mDAA0D;AAG1D;;;;;GAKG;AACI,IAAM,kBAAkB,GAA2B,UAAC,KAAK,EAAE,OAAO,EAAE,OAAO;IAC9E,IAAI,KAAK,GAAG,CAAC,CAAC;IACR,IAAA,KAAA,oBAAmC,IAAA,uDAA0B,EAAC,OAAO,EAAE,OAAO,CAAC,IAAA,EAA9E,eAAe,QAAA,EAAE,aAAa,QAAgD,CAAC;IAEtF,KAAK,IAAI,KAAK,GAAG,OAAO,CAAC,UAAU,EAAE,KAAK,EAAE,KAAK,GAAG,KAAK,CAAC,WAAW,EAAE;QACnE,IAAA,uCAAsB,EAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,aAAa,CAAC,CAAC;QAE9E,IAAA,0BAAkB,EAAC,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;QAC1C,KAAK,EAAE,CAAC;KACX;IAED,IAAA,uCAAsB,EAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,aAAa,CAAC,CAAC;AAClF,CAAC,CAAC;AAZW,QAAA,kBAAkB,sBAY7B","sourcesContent":["import { getRegularSelectionOffsets } from '../utils/getRegularSelectionOffsets';\nimport { handleRegularSelection } from './childProcessor';\nimport type { ElementProcessor } from 'roosterjs-content-model-types';\n\n/**\n * @internal\n * @param group\n * @param element\n * @param context\n */\nexport const delimiterProcessor: ElementProcessor<Node> = (group, element, context) => {\n let index = 0;\n const [nodeStartOffset, nodeEndOffset] = getRegularSelectionOffsets(context, element);\n\n for (let child = element.firstChild; child; child = child.nextSibling) {\n handleRegularSelection(index, context, group, nodeStartOffset, nodeEndOffset);\n\n delimiterProcessor(group, child, context);\n index++;\n }\n\n handleRegularSelection(index, context, group, nodeStartOffset, nodeEndOffset);\n};\n"]}
@@ -1,4 +1,4 @@
1
- import { ElementProcessor } from 'roosterjs-content-model-types';
1
+ import type { ElementProcessor } from 'roosterjs-content-model-types';
2
2
  /**
3
3
  * @internal
4
4
  * @param group
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.elementProcessor = void 0;
4
- var roosterjs_editor_dom_1 = require("roosterjs-editor-dom");
4
+ var entityUtils_1 = require("../../domUtils/entityUtils");
5
5
  /**
6
6
  * @internal
7
7
  * @param group
@@ -19,12 +19,11 @@ var elementProcessor = function (group, element, context) {
19
19
  };
20
20
  exports.elementProcessor = elementProcessor;
21
21
  function tryGetProcessorForEntity(element, context) {
22
- return (element.className && (0, roosterjs_editor_dom_1.getEntityFromElement)(element)) ||
23
- element.contentEditable == 'false' // For readonly element, treat as an entity
22
+ return (0, entityUtils_1.isEntityElement)(element) || element.contentEditable == 'false' // For readonly element, treat as an entity
24
23
  ? context.elementProcessors.entity
25
24
  : null;
26
25
  }
27
26
  function tryGetProcessorForDelimiter(element, context) {
28
- return (0, roosterjs_editor_dom_1.getDelimiterFromElement)(element) ? context.elementProcessors.delimiter : null;
27
+ return (0, entityUtils_1.isEntityDelimiter)(element) ? context.elementProcessors.delimiter : null;
29
28
  }
30
29
  //# sourceMappingURL=elementProcessor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"elementProcessor.js","sourceRoot":"","sources":["../../../../../packages-content-model/roosterjs-content-model-dom/lib/domToModel/processors/elementProcessor.ts"],"names":[],"mappings":";;;AAAA,6DAAqF;AAOrF;;;;;GAKG;AACI,IAAM,gBAAgB,GAAkC,UAAC,KAAK,EAAE,OAAO,EAAE,OAAO;IACnF,IAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,WAAW,EAA+B,CAAC;IAC3E,IAAM,SAAS,GAAG,CAAC,wBAAwB,CAAC,OAAO,EAAE,OAAO,CAAC;QACzD,2BAA2B,CAAC,OAAO,EAAE,OAAO,CAAC;QAC7C,OAAO,CAAC,iBAAiB,CAAC,OAAO,CAAC;QAClC,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,iBAAiB,CAAC,KAAK,CAAC;QAC9D,OAAO,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAA2B,CAAC;IAC9D,SAAS,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AACvC,CAAC,CAAC;AARW,QAAA,gBAAgB,oBAQ3B;AAEF,SAAS,wBAAwB,CAAC,OAAoB,EAAE,OAA0B;IAC9E,OAAO,CAAC,OAAO,CAAC,SAAS,IAAI,IAAA,2CAAoB,EAAC,OAAO,CAAC,CAAC;QACvD,OAAO,CAAC,eAAe,IAAI,OAAO,CAAC,2CAA2C;QAC9E,CAAC,CAAC,OAAO,CAAC,iBAAiB,CAAC,MAAM;QAClC,CAAC,CAAC,IAAI,CAAC;AACf,CAAC;AAED,SAAS,2BAA2B,CAAC,OAAa,EAAE,OAA0B;IAC1E,OAAO,IAAA,8CAAuB,EAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC;AACzF,CAAC","sourcesContent":["import { getDelimiterFromElement, getEntityFromElement } from 'roosterjs-editor-dom';\nimport {\n DomToModelContext,\n ElementProcessor,\n ElementProcessorMap,\n} from 'roosterjs-content-model-types';\n\n/**\n * @internal\n * @param group\n * @param element\n * @param context\n */\nexport const elementProcessor: ElementProcessor<HTMLElement> = (group, element, context) => {\n const tagName = element.tagName.toLowerCase() as keyof ElementProcessorMap;\n const processor = (tryGetProcessorForEntity(element, context) ||\n tryGetProcessorForDelimiter(element, context) ||\n context.elementProcessors[tagName] ||\n (tagName.indexOf(':') >= 0 && context.elementProcessors.child) ||\n context.elementProcessors['*']) as ElementProcessor<Node>;\n processor(group, element, context);\n};\n\nfunction tryGetProcessorForEntity(element: HTMLElement, context: DomToModelContext) {\n return (element.className && getEntityFromElement(element)) ||\n element.contentEditable == 'false' // For readonly element, treat as an entity\n ? context.elementProcessors.entity\n : null;\n}\n\nfunction tryGetProcessorForDelimiter(element: Node, context: DomToModelContext) {\n return getDelimiterFromElement(element) ? context.elementProcessors.delimiter : null;\n}\n"]}
1
+ {"version":3,"file":"elementProcessor.js","sourceRoot":"","sources":["../../../../../packages-content-model/roosterjs-content-model-dom/lib/domToModel/processors/elementProcessor.ts"],"names":[],"mappings":";;;AAAA,0DAAgF;AAOhF;;;;;GAKG;AACI,IAAM,gBAAgB,GAAkC,UAAC,KAAK,EAAE,OAAO,EAAE,OAAO;IACnF,IAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,WAAW,EAA+B,CAAC;IAC3E,IAAM,SAAS,GAAG,CAAC,wBAAwB,CAAC,OAAO,EAAE,OAAO,CAAC;QACzD,2BAA2B,CAAC,OAAO,EAAE,OAAO,CAAC;QAC7C,OAAO,CAAC,iBAAiB,CAAC,OAAO,CAAC;QAClC,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,iBAAiB,CAAC,KAAK,CAAC;QAC9D,OAAO,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAA2B,CAAC;IAC9D,SAAS,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AACvC,CAAC,CAAC;AARW,QAAA,gBAAgB,oBAQ3B;AAEF,SAAS,wBAAwB,CAAC,OAAoB,EAAE,OAA0B;IAC9E,OAAO,IAAA,6BAAe,EAAC,OAAO,CAAC,IAAI,OAAO,CAAC,eAAe,IAAI,OAAO,CAAC,2CAA2C;QAC7G,CAAC,CAAC,OAAO,CAAC,iBAAiB,CAAC,MAAM;QAClC,CAAC,CAAC,IAAI,CAAC;AACf,CAAC;AAED,SAAS,2BAA2B,CAAC,OAAoB,EAAE,OAA0B;IACjF,OAAO,IAAA,+BAAiB,EAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC;AACnF,CAAC","sourcesContent":["import { isEntityDelimiter, isEntityElement } from '../../domUtils/entityUtils';\nimport type {\n DomToModelContext,\n ElementProcessor,\n ElementProcessorMap,\n} from 'roosterjs-content-model-types';\n\n/**\n * @internal\n * @param group\n * @param element\n * @param context\n */\nexport const elementProcessor: ElementProcessor<HTMLElement> = (group, element, context) => {\n const tagName = element.tagName.toLowerCase() as keyof ElementProcessorMap;\n const processor = (tryGetProcessorForEntity(element, context) ||\n tryGetProcessorForDelimiter(element, context) ||\n context.elementProcessors[tagName] ||\n (tagName.indexOf(':') >= 0 && context.elementProcessors.child) ||\n context.elementProcessors['*']) as ElementProcessor<Node>;\n processor(group, element, context);\n};\n\nfunction tryGetProcessorForEntity(element: HTMLElement, context: DomToModelContext) {\n return isEntityElement(element) || element.contentEditable == 'false' // For readonly element, treat as an entity\n ? context.elementProcessors.entity\n : null;\n}\n\nfunction tryGetProcessorForDelimiter(element: HTMLElement, context: DomToModelContext) {\n return isEntityDelimiter(element) ? context.elementProcessors.delimiter : null;\n}\n"]}
@@ -1,4 +1,4 @@
1
- import { ElementProcessor } from 'roosterjs-content-model-types';
1
+ import type { ElementProcessor } from 'roosterjs-content-model-types';
2
2
  /**
3
3
  * Content Model Element Processor for entity
4
4
  * @param group The parent block group
@@ -4,8 +4,8 @@ exports.entityProcessor = void 0;
4
4
  var addBlock_1 = require("../../modelApi/common/addBlock");
5
5
  var addSegment_1 = require("../../modelApi/common/addSegment");
6
6
  var createEntity_1 = require("../../modelApi/creators/createEntity");
7
- var roosterjs_editor_dom_1 = require("roosterjs-editor-dom");
8
7
  var isBlockElement_1 = require("../utils/isBlockElement");
8
+ var parseFormat_1 = require("../utils/parseFormat");
9
9
  var stackFormat_1 = require("../utils/stackFormat");
10
10
  /**
11
11
  * Content Model Element Processor for entity
@@ -14,12 +14,11 @@ var stackFormat_1 = require("../utils/stackFormat");
14
14
  * @param context DOM to Content Model context
15
15
  */
16
16
  var entityProcessor = function (group, element, context) {
17
- var entity = (0, roosterjs_editor_dom_1.getEntityFromElement)(element);
18
- // In Content Model we also treat read only element as an entity since we cannot edit it
19
- var _a = entity || { isReadonly: true }, id = _a.id, type = _a.type, isReadonly = _a.isReadonly;
20
- var isBlockEntity = (0, isBlockElement_1.isBlockElement)(element, context);
17
+ var isBlockEntity = (0, isBlockElement_1.isBlockElement)(element);
21
18
  (0, stackFormat_1.stackFormat)(context, { segment: isBlockEntity ? 'empty' : undefined, paragraph: 'empty' }, function () {
22
- var entityModel = (0, createEntity_1.createEntity)(element, isReadonly, type, context.segmentFormat, id);
19
+ var _a;
20
+ var entityModel = (0, createEntity_1.createEntity)(element, true /*isReadonly*/, context.segmentFormat);
21
+ (0, parseFormat_1.parseFormat)(element, context.formatParsers.entity, entityModel.entityFormat, context);
23
22
  // TODO: Need to handle selection for editable entity
24
23
  if (context.isInSelection) {
25
24
  entityModel.isSelected = true;
@@ -28,7 +27,8 @@ var entityProcessor = function (group, element, context) {
28
27
  (0, addBlock_1.addBlock)(group, entityModel);
29
28
  }
30
29
  else {
31
- (0, addSegment_1.addSegment)(group, entityModel);
30
+ var paragraph = (0, addSegment_1.addSegment)(group, entityModel);
31
+ (_a = context.domIndexer) === null || _a === void 0 ? void 0 : _a.onSegment(element, paragraph, [entityModel]);
32
32
  }
33
33
  });
34
34
  };
@@ -1 +1 @@
1
- {"version":3,"file":"entityProcessor.js","sourceRoot":"","sources":["../../../../../packages-content-model/roosterjs-content-model-dom/lib/domToModel/processors/entityProcessor.ts"],"names":[],"mappings":";;;AAAA,2DAA0D;AAC1D,+DAA8D;AAC9D,qEAAoE;AAEpE,6DAA4D;AAC5D,0DAAyD;AACzD,oDAAmD;AAEnD;;;;;GAKG;AACI,IAAM,eAAe,GAAkC,UAAC,KAAK,EAAE,OAAO,EAAE,OAAO;IAClF,IAAM,MAAM,GAAG,IAAA,2CAAoB,EAAC,OAAO,CAAC,CAAC;IAE7C,wFAAwF;IAClF,IAAA,KAA2B,MAAM,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,EAAvD,EAAE,QAAA,EAAE,IAAI,UAAA,EAAE,UAAU,gBAAmC,CAAC;IAChE,IAAM,aAAa,GAAG,IAAA,+BAAc,EAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAEvD,IAAA,yBAAW,EACP,OAAO,EACP,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,EACpE;QACI,IAAM,WAAW,GAAG,IAAA,2BAAY,EAAC,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;QAEvF,qDAAqD;QACrD,IAAI,OAAO,CAAC,aAAa,EAAE;YACvB,WAAW,CAAC,UAAU,GAAG,IAAI,CAAC;SACjC;QAED,IAAI,aAAa,EAAE;YACf,IAAA,mBAAQ,EAAC,KAAK,EAAE,WAAW,CAAC,CAAC;SAChC;aAAM;YACH,IAAA,uBAAU,EAAC,KAAK,EAAE,WAAW,CAAC,CAAC;SAClC;IACL,CAAC,CACJ,CAAC;AACN,CAAC,CAAC;AAzBW,QAAA,eAAe,mBAyB1B","sourcesContent":["import { addBlock } from '../../modelApi/common/addBlock';\nimport { addSegment } from '../../modelApi/common/addSegment';\nimport { createEntity } from '../../modelApi/creators/createEntity';\nimport { ElementProcessor } from 'roosterjs-content-model-types';\nimport { getEntityFromElement } from 'roosterjs-editor-dom';\nimport { isBlockElement } from '../utils/isBlockElement';\nimport { stackFormat } from '../utils/stackFormat';\n\n/**\n * Content Model Element Processor for entity\n * @param group The parent block group\n * @param parent Parent DOM node to process\n * @param context DOM to Content Model context\n */\nexport const entityProcessor: ElementProcessor<HTMLElement> = (group, element, context) => {\n const entity = getEntityFromElement(element);\n\n // In Content Model we also treat read only element as an entity since we cannot edit it\n const { id, type, isReadonly } = entity || { isReadonly: true };\n const isBlockEntity = isBlockElement(element, context);\n\n stackFormat(\n context,\n { segment: isBlockEntity ? 'empty' : undefined, paragraph: 'empty' },\n () => {\n const entityModel = createEntity(element, isReadonly, type, context.segmentFormat, id);\n\n // TODO: Need to handle selection for editable entity\n if (context.isInSelection) {\n entityModel.isSelected = true;\n }\n\n if (isBlockEntity) {\n addBlock(group, entityModel);\n } else {\n addSegment(group, entityModel);\n }\n }\n );\n};\n"]}
1
+ {"version":3,"file":"entityProcessor.js","sourceRoot":"","sources":["../../../../../packages-content-model/roosterjs-content-model-dom/lib/domToModel/processors/entityProcessor.ts"],"names":[],"mappings":";;;AAAA,2DAA0D;AAC1D,+DAA8D;AAC9D,qEAAoE;AACpE,0DAAyD;AACzD,oDAAmD;AACnD,oDAAmD;AAGnD;;;;;GAKG;AACI,IAAM,eAAe,GAAkC,UAAC,KAAK,EAAE,OAAO,EAAE,OAAO;IAClF,IAAM,aAAa,GAAG,IAAA,+BAAc,EAAC,OAAO,CAAC,CAAC;IAE9C,IAAA,yBAAW,EACP,OAAO,EACP,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,EACpE;;QACI,IAAM,WAAW,GAAG,IAAA,2BAAY,EAAC,OAAO,EAAE,IAAI,CAAC,cAAc,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;QAEtF,IAAA,yBAAW,EAAC,OAAO,EAAE,OAAO,CAAC,aAAa,CAAC,MAAM,EAAE,WAAW,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QAEtF,qDAAqD;QACrD,IAAI,OAAO,CAAC,aAAa,EAAE;YACvB,WAAW,CAAC,UAAU,GAAG,IAAI,CAAC;SACjC;QAED,IAAI,aAAa,EAAE;YACf,IAAA,mBAAQ,EAAC,KAAK,EAAE,WAAW,CAAC,CAAC;SAChC;aAAM;YACH,IAAM,SAAS,GAAG,IAAA,uBAAU,EAAC,KAAK,EAAE,WAAW,CAAC,CAAC;YACjD,MAAA,OAAO,CAAC,UAAU,0CAAE,SAAS,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;SACpE;IACL,CAAC,CACJ,CAAC;AACN,CAAC,CAAC;AAxBW,QAAA,eAAe,mBAwB1B","sourcesContent":["import { addBlock } from '../../modelApi/common/addBlock';\nimport { addSegment } from '../../modelApi/common/addSegment';\nimport { createEntity } from '../../modelApi/creators/createEntity';\nimport { isBlockElement } from '../utils/isBlockElement';\nimport { parseFormat } from '../utils/parseFormat';\nimport { stackFormat } from '../utils/stackFormat';\nimport type { ElementProcessor } from 'roosterjs-content-model-types';\n\n/**\n * Content Model Element Processor for entity\n * @param group The parent block group\n * @param parent Parent DOM node to process\n * @param context DOM to Content Model context\n */\nexport const entityProcessor: ElementProcessor<HTMLElement> = (group, element, context) => {\n const isBlockEntity = isBlockElement(element);\n\n stackFormat(\n context,\n { segment: isBlockEntity ? 'empty' : undefined, paragraph: 'empty' },\n () => {\n const entityModel = createEntity(element, true /*isReadonly*/, context.segmentFormat);\n\n parseFormat(element, context.formatParsers.entity, entityModel.entityFormat, context);\n\n // TODO: Need to handle selection for editable entity\n if (context.isInSelection) {\n entityModel.isSelected = true;\n }\n\n if (isBlockEntity) {\n addBlock(group, entityModel);\n } else {\n const paragraph = addSegment(group, entityModel);\n context.domIndexer?.onSegment(element, paragraph, [entityModel]);\n }\n }\n );\n};\n"]}
@@ -1,4 +1,4 @@
1
- import { ElementProcessor } from 'roosterjs-content-model-types';
1
+ import type { ElementProcessor } from 'roosterjs-content-model-types';
2
2
  /**
3
3
  * @internal
4
4
  */
@@ -25,7 +25,7 @@ function getFontSize(size) {
25
25
  */
26
26
  var fontProcessor = function (group, element, context) {
27
27
  (0, stackFormat_1.stackFormat)(context, {
28
- segment: (0, isBlockElement_1.isBlockElement)(element, context) ? 'shallowCloneForBlock' : 'shallowClone',
28
+ segment: (0, isBlockElement_1.isBlockElement)(element) ? 'shallowCloneForBlock' : 'shallowClone',
29
29
  }, function () {
30
30
  var fontFamily = element.getAttribute('face');
31
31
  var fontSize = getFontSize(element.getAttribute('size'));
@@ -1 +1 @@
1
- {"version":3,"file":"fontProcessor.js","sourceRoot":"","sources":["../../../../../packages-content-model/roosterjs-content-model-dom/lib/domToModel/processors/fontProcessor.ts"],"names":[],"mappings":";;;AACA,0DAAyD;AACzD,oDAAmD;AACnD,oDAAmD;AAEnD,IAAM,SAAS,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAE3E,SAAS,WAAW,CAAC,IAAmB;IACpC,IAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;IAErC,IAAI,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE;QACvB,OAAO,SAAS,CAAC;KACpB;SAAM,IAAI,OAAO,GAAG,CAAC,EAAE;QACpB,OAAO,SAAS,CAAC,CAAC,CAAC,CAAC;KACvB;SAAM,IAAI,OAAO,GAAG,SAAS,CAAC,MAAM,EAAE;QACnC,OAAO,SAAS,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;KAC1C;SAAM;QACH,OAAO,SAAS,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;KACjC;AACL,CAAC;AAED;;GAEG;AACI,IAAM,aAAa,GAAsC,UAAC,KAAK,EAAE,OAAO,EAAE,OAAO;IACpF,IAAA,yBAAW,EACP,OAAO,EACP;QACI,OAAO,EAAE,IAAA,+BAAc,EAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,cAAc;KACtF,EACD;QACI,IAAM,UAAU,GAAG,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QAChD,IAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC;QAC3D,IAAM,SAAS,GAAG,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QAChD,IAAM,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;QAErC,IAAI,UAAU,EAAE;YACZ,MAAM,CAAC,UAAU,GAAG,UAAU,CAAC;SAClC;QAED,IAAI,QAAQ,EAAE;YACV,MAAM,CAAC,QAAQ,GAAG,QAAQ,CAAC;SAC9B;QAED,IAAI,SAAS,EAAE;YACX,MAAM,CAAC,SAAS,GAAG,SAAS,CAAC;SAChC;QAED,IAAA,yBAAW,EAAC,OAAO,EAAE,OAAO,CAAC,aAAa,CAAC,OAAO,EAAE,OAAO,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;QAEpF,OAAO,CAAC,iBAAiB,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAC7D,CAAC,CACJ,CAAC;AACN,CAAC,CAAC;AA7BW,QAAA,aAAa,iBA6BxB","sourcesContent":["import { ElementProcessor } from 'roosterjs-content-model-types';\nimport { isBlockElement } from '../utils/isBlockElement';\nimport { parseFormat } from '../utils/parseFormat';\nimport { stackFormat } from '../utils/stackFormat';\n\nconst FontSizes = ['10px', '13px', '16px', '18px', '24px', '32px', '48px'];\n\nfunction getFontSize(size: string | null) {\n const intSize = parseInt(size || '');\n\n if (Number.isNaN(intSize)) {\n return undefined;\n } else if (intSize < 1) {\n return FontSizes[0];\n } else if (intSize > FontSizes.length) {\n return FontSizes[FontSizes.length - 1];\n } else {\n return FontSizes[intSize - 1];\n }\n}\n\n/**\n * @internal\n */\nexport const fontProcessor: ElementProcessor<HTMLFontElement> = (group, element, context) => {\n stackFormat(\n context,\n {\n segment: isBlockElement(element, context) ? 'shallowCloneForBlock' : 'shallowClone',\n },\n () => {\n const fontFamily = element.getAttribute('face');\n const fontSize = getFontSize(element.getAttribute('size'));\n const textColor = element.getAttribute('color');\n const format = context.segmentFormat;\n\n if (fontFamily) {\n format.fontFamily = fontFamily;\n }\n\n if (fontSize) {\n format.fontSize = fontSize;\n }\n\n if (textColor) {\n format.textColor = textColor;\n }\n\n parseFormat(element, context.formatParsers.segment, context.segmentFormat, context);\n\n context.elementProcessors.child(group, element, context);\n }\n );\n};\n"]}
1
+ {"version":3,"file":"fontProcessor.js","sourceRoot":"","sources":["../../../../../packages-content-model/roosterjs-content-model-dom/lib/domToModel/processors/fontProcessor.ts"],"names":[],"mappings":";;;AAAA,0DAAyD;AACzD,oDAAmD;AACnD,oDAAmD;AAGnD,IAAM,SAAS,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAE3E,SAAS,WAAW,CAAC,IAAmB;IACpC,IAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;IAErC,IAAI,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE;QACvB,OAAO,SAAS,CAAC;KACpB;SAAM,IAAI,OAAO,GAAG,CAAC,EAAE;QACpB,OAAO,SAAS,CAAC,CAAC,CAAC,CAAC;KACvB;SAAM,IAAI,OAAO,GAAG,SAAS,CAAC,MAAM,EAAE;QACnC,OAAO,SAAS,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;KAC1C;SAAM;QACH,OAAO,SAAS,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;KACjC;AACL,CAAC;AAED;;GAEG;AACI,IAAM,aAAa,GAAsC,UAAC,KAAK,EAAE,OAAO,EAAE,OAAO;IACpF,IAAA,yBAAW,EACP,OAAO,EACP;QACI,OAAO,EAAE,IAAA,+BAAc,EAAC,OAAO,CAAC,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,cAAc;KAC7E,EACD;QACI,IAAM,UAAU,GAAG,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QAChD,IAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC;QAC3D,IAAM,SAAS,GAAG,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QAChD,IAAM,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;QAErC,IAAI,UAAU,EAAE;YACZ,MAAM,CAAC,UAAU,GAAG,UAAU,CAAC;SAClC;QAED,IAAI,QAAQ,EAAE;YACV,MAAM,CAAC,QAAQ,GAAG,QAAQ,CAAC;SAC9B;QAED,IAAI,SAAS,EAAE;YACX,MAAM,CAAC,SAAS,GAAG,SAAS,CAAC;SAChC;QAED,IAAA,yBAAW,EAAC,OAAO,EAAE,OAAO,CAAC,aAAa,CAAC,OAAO,EAAE,OAAO,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;QAEpF,OAAO,CAAC,iBAAiB,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAC7D,CAAC,CACJ,CAAC;AACN,CAAC,CAAC;AA7BW,QAAA,aAAa,iBA6BxB","sourcesContent":["import { isBlockElement } from '../utils/isBlockElement';\nimport { parseFormat } from '../utils/parseFormat';\nimport { stackFormat } from '../utils/stackFormat';\nimport type { ElementProcessor } from 'roosterjs-content-model-types';\n\nconst FontSizes = ['10px', '13px', '16px', '18px', '24px', '32px', '48px'];\n\nfunction getFontSize(size: string | null) {\n const intSize = parseInt(size || '');\n\n if (Number.isNaN(intSize)) {\n return undefined;\n } else if (intSize < 1) {\n return FontSizes[0];\n } else if (intSize > FontSizes.length) {\n return FontSizes[FontSizes.length - 1];\n } else {\n return FontSizes[intSize - 1];\n }\n}\n\n/**\n * @internal\n */\nexport const fontProcessor: ElementProcessor<HTMLFontElement> = (group, element, context) => {\n stackFormat(\n context,\n {\n segment: isBlockElement(element) ? 'shallowCloneForBlock' : 'shallowClone',\n },\n () => {\n const fontFamily = element.getAttribute('face');\n const fontSize = getFontSize(element.getAttribute('size'));\n const textColor = element.getAttribute('color');\n const format = context.segmentFormat;\n\n if (fontFamily) {\n format.fontFamily = fontFamily;\n }\n\n if (fontSize) {\n format.fontSize = fontSize;\n }\n\n if (textColor) {\n format.textColor = textColor;\n }\n\n parseFormat(element, context.formatParsers.segment, context.segmentFormat, context);\n\n context.elementProcessors.child(group, element, context);\n }\n );\n};\n"]}