@foxycape/core 1.1.5 → 1.1.7

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 (516) hide show
  1. package/README.MD +0 -2
  2. package/README.zh.md +0 -2
  3. package/dist/ReaderHub.cjs +1 -0
  4. package/dist/ReaderHub.d.ts +20 -0
  5. package/dist/ReaderHub.mjs +59 -0
  6. package/dist/kernal/ContentRange.d.ts +1 -0
  7. package/dist/kernal/Context.cjs +1 -1
  8. package/dist/kernal/Context.mjs +13 -8
  9. package/dist/kernal/EventNames.cjs +1 -1
  10. package/dist/kernal/EventNames.d.ts +2 -0
  11. package/dist/kernal/EventNames.mjs +6 -0
  12. package/dist/kernal/FileLoader.cjs +1 -1
  13. package/dist/kernal/FileLoader.d.ts +3 -11
  14. package/dist/kernal/FileLoader.mjs +27 -22
  15. package/dist/kernal/JsonConvert.cjs +1 -1
  16. package/dist/kernal/JsonConvert.d.ts +0 -1
  17. package/dist/kernal/JsonConvert.mjs +17 -25
  18. package/dist/kernal/LifecycleHooks.d.ts +2 -1
  19. package/dist/kernal/Metadata.cjs +1 -1
  20. package/dist/kernal/Metadata.d.ts +34 -0
  21. package/dist/kernal/Metadata.mjs +47 -2
  22. package/dist/kernal/OpenOptions.d.ts +1 -0
  23. package/dist/kernal/Options.cjs +1 -1
  24. package/dist/kernal/Options.d.ts +2 -12
  25. package/dist/kernal/Options.mjs +1 -13
  26. package/dist/kernal/OptionsProvider.cjs +1 -1
  27. package/dist/kernal/OptionsProvider.d.ts +0 -2
  28. package/dist/kernal/OptionsProvider.mjs +6 -14
  29. package/dist/kernal/Reader.cjs +1 -1
  30. package/dist/kernal/Reader.d.ts +13 -12
  31. package/dist/kernal/Reader.mjs +119 -89
  32. package/dist/kernal/Theme.cjs +1 -1
  33. package/dist/kernal/Theme.mjs +1 -1
  34. package/dist/kernal/common/url.cjs +1 -1
  35. package/dist/kernal/common/url.d.ts +2 -0
  36. package/dist/kernal/common/url.mjs +2 -2
  37. package/dist/kernal/common/uuid.cjs +1 -1
  38. package/dist/kernal/common/uuid.mjs +7 -7
  39. package/dist/kernal/common/xxh64.cjs +1 -0
  40. package/dist/kernal/common/xxh64.d.ts +1 -0
  41. package/dist/kernal/common/xxh64.mjs +30 -0
  42. package/dist/kernal/crypto/MD5.cjs +1 -1
  43. package/dist/kernal/crypto/MD5.d.ts +0 -1
  44. package/dist/kernal/crypto/MD5.mjs +8 -9
  45. package/dist/kernal/crypto/WebCrypto.cjs +1 -1
  46. package/dist/kernal/crypto/WebCrypto.mjs +38 -35
  47. package/dist/kernal/deepClone/buffer.cjs +1 -1
  48. package/dist/kernal/deepClone/buffer.d.ts +8 -2
  49. package/dist/kernal/deepClone/buffer.mjs +1 -5
  50. package/dist/kernal/device/IDevice.d.ts +8 -2
  51. package/dist/kernal/device/WebBrowser.cjs +1 -1
  52. package/dist/kernal/device/WebBrowser.d.ts +12 -6
  53. package/dist/kernal/device/WebBrowser.mjs +70 -6
  54. package/dist/kernal/hostViewport.cjs +1 -0
  55. package/dist/kernal/hostViewport.d.ts +16 -0
  56. package/dist/kernal/hostViewport.mjs +44 -0
  57. package/dist/kernal/html/events.cjs +1 -1
  58. package/dist/kernal/html/events.mjs +35 -34
  59. package/dist/kernal/html/finder.cjs +1 -1
  60. package/dist/kernal/html/finder.d.ts +6 -2
  61. package/dist/kernal/html/finder.mjs +62 -51
  62. package/dist/kernal/html/geometry.cjs +1 -1
  63. package/dist/kernal/html/geometry.d.ts +26 -1
  64. package/dist/kernal/html/geometry.mjs +182 -121
  65. package/dist/kernal/html/manipulator.cjs +1 -1
  66. package/dist/kernal/html/manipulator.d.ts +1 -3
  67. package/dist/kernal/html/manipulator.mjs +34 -59
  68. package/dist/kernal/html/parser.cjs +1 -1
  69. package/dist/kernal/html/parser.mjs +3 -3
  70. package/dist/kernal/html/position.cjs +1 -1
  71. package/dist/kernal/html/position.d.ts +0 -18
  72. package/dist/kernal/html/position.mjs +2 -141
  73. package/dist/kernal/html/realm.cjs +1 -0
  74. package/dist/kernal/html/realm.d.ts +7 -0
  75. package/dist/kernal/html/realm.mjs +8 -0
  76. package/dist/kernal/html/selection.cjs +1 -1
  77. package/dist/kernal/html/selection.d.ts +1 -0
  78. package/dist/kernal/html/selection.mjs +33 -12
  79. package/dist/kernal/html/text.cjs +1 -1
  80. package/dist/kernal/html/text.d.ts +4 -3
  81. package/dist/kernal/html/text.mjs +24 -21
  82. package/dist/kernal/html/translationAnchor.cjs +1 -0
  83. package/dist/kernal/html/translationAnchor.d.ts +3 -0
  84. package/dist/kernal/html/translationAnchor.mjs +71 -0
  85. package/dist/kernal/i18n/DefaultLocale.cjs +1 -1
  86. package/dist/kernal/i18n/DefaultLocale.d.ts +2 -2
  87. package/dist/kernal/i18n/DefaultLocale.mjs +7 -12
  88. package/dist/kernal/i18n/ILocale.d.ts +0 -1
  89. package/dist/kernal/i18n/applyNamed.cjs +1 -0
  90. package/dist/kernal/i18n/applyNamed.d.ts +1 -0
  91. package/dist/kernal/i18n/applyNamed.mjs +9 -0
  92. package/dist/kernal/i18n/textDirection.cjs +1 -0
  93. package/dist/kernal/i18n/textDirection.d.ts +6 -0
  94. package/dist/kernal/i18n/textDirection.mjs +7 -0
  95. package/dist/kernal/index.cjs +1 -1
  96. package/dist/kernal/index.d.ts +6 -5
  97. package/dist/kernal/index.mjs +50 -45
  98. package/dist/kernal/mark/IHighlighter.cjs +1 -0
  99. package/dist/kernal/mark/IHighlighter.d.ts +43 -0
  100. package/dist/kernal/mark/IHighlighter.mjs +13 -0
  101. package/dist/kernal/mark/Mark.cjs +1 -1
  102. package/dist/kernal/mark/Mark.d.ts +33 -4
  103. package/dist/kernal/mark/Mark.mjs +43 -6
  104. package/dist/kernal/mark/index.cjs +1 -1
  105. package/dist/kernal/mark/index.d.ts +2 -0
  106. package/dist/kernal/mark/index.mjs +6 -3
  107. package/dist/kernal/mark/overlay.cjs +1 -0
  108. package/dist/kernal/mark/overlay.d.ts +31 -0
  109. package/dist/kernal/mark/overlay.mjs +102 -0
  110. package/dist/kernal/mark/types.cjs +1 -0
  111. package/dist/kernal/mark/types.d.ts +11 -2
  112. package/dist/kernal/mark/types.mjs +4 -0
  113. package/dist/kernal/navigator/INavigator.d.ts +3 -2
  114. package/dist/kernal/network/HttpClient.cjs +1 -1
  115. package/dist/kernal/network/HttpClient.mjs +80 -56
  116. package/dist/kernal/pipelines/FileLoadPipeline.cjs +1 -1
  117. package/dist/kernal/pipelines/FileLoadPipeline.mjs +55 -56
  118. package/dist/kernal/pipelines/InputFormatter.cjs +1 -1
  119. package/dist/kernal/pipelines/InputFormatter.mjs +43 -41
  120. package/dist/kernal/pipelines/metadata.cjs +1 -1
  121. package/dist/kernal/pipelines/metadata.d.ts +2 -1
  122. package/dist/kernal/pipelines/metadata.mjs +21 -30
  123. package/dist/kernal/plugins/keyboard/KeyboardPageTurning.cjs +1 -1
  124. package/dist/kernal/plugins/keyboard/KeyboardPageTurning.mjs +7 -6
  125. package/dist/kernal/plugins/mouse/WheelPageTurning.cjs +1 -1
  126. package/dist/kernal/plugins/mouse/WheelPageTurning.mjs +12 -11
  127. package/dist/kernal/progress/Progress.cjs +1 -1
  128. package/dist/kernal/progress/Progress.d.ts +5 -3
  129. package/dist/kernal/progress/Progress.mjs +2 -2
  130. package/dist/kernal/progress/userChangedProgress.cjs +1 -0
  131. package/dist/kernal/progress/userChangedProgress.d.ts +9 -0
  132. package/dist/kernal/progress/userChangedProgress.mjs +11 -0
  133. package/dist/kernal/screen/BrowserFullscreen.cjs +1 -0
  134. package/dist/kernal/screen/BrowserFullscreen.d.ts +9 -0
  135. package/dist/kernal/screen/BrowserFullscreen.mjs +47 -0
  136. package/dist/kernal/screen/IFullscreen.d.ts +6 -0
  137. package/dist/kernal/services/ServiceCollection.cjs +1 -1
  138. package/dist/kernal/services/ServiceCollection.d.ts +4 -6
  139. package/dist/kernal/services/ServiceCollection.mjs +18 -9
  140. package/dist/kernal/services/docLoadLayer/HtmlLoadLayer.cjs +2 -2
  141. package/dist/kernal/services/docLoadLayer/HtmlLoadLayer.d.ts +4 -2
  142. package/dist/kernal/services/docLoadLayer/HtmlLoadLayer.mjs +31 -23
  143. package/dist/kernal/services/fileUrlParser/DefaultFileUrlParser.cjs +1 -1
  144. package/dist/kernal/services/fileUrlParser/DefaultFileUrlParser.mjs +52 -51
  145. package/dist/kernal/services/fileUrlParser/IFileUrlParser.d.ts +0 -1
  146. package/dist/kernal/services/font/IFontProvider.cjs +1 -1
  147. package/dist/kernal/services/font/IFontProvider.d.ts +3 -0
  148. package/dist/kernal/services/font/IFontProvider.mjs +1 -1
  149. package/dist/kernal/services/internalUrlBuilder/DefaultInternalUrlBuilder.cjs +1 -1
  150. package/dist/kernal/services/internalUrlBuilder/DefaultInternalUrlBuilder.mjs +8 -8
  151. package/dist/kernal/services/loading/DefaultLoading.cjs +1 -1
  152. package/dist/kernal/services/loading/DefaultLoading.d.ts +4 -0
  153. package/dist/kernal/services/loading/DefaultLoading.mjs +23 -24
  154. package/dist/kernal/services/text/splitter.cjs +1 -1
  155. package/dist/kernal/services/text/splitter.mjs +3 -3
  156. package/dist/kernal/types.d.ts +0 -5
  157. package/dist/kernal/web/BrowserCapabilities.cjs +1 -1
  158. package/dist/kernal/web/BrowserCapabilities.d.ts +0 -9
  159. package/dist/kernal/web/BrowserCapabilities.mjs +0 -49
  160. package/dist/kernal/{Debounce.mjs → web/debounce.mjs} +1 -1
  161. package/dist/kernal/web/scheduler.cjs +1 -0
  162. package/dist/kernal/web/scheduler.d.ts +3 -0
  163. package/dist/kernal/web/scheduler.mjs +7 -0
  164. package/dist/mediaTypes/base/fileParser/BaseFileParser.cjs +1 -1
  165. package/dist/mediaTypes/base/fileParser/BaseFileParser.mjs +59 -59
  166. package/dist/mediaTypes/html/DefaultHtmlSymbolMeasure.cjs +1 -0
  167. package/dist/mediaTypes/html/DefaultHtmlSymbolMeasure.d.ts +13 -0
  168. package/dist/mediaTypes/html/DefaultHtmlSymbolMeasure.mjs +109 -0
  169. package/dist/mediaTypes/html/HtmlOptions.cjs +1 -1
  170. package/dist/mediaTypes/html/HtmlOptions.d.ts +6 -12
  171. package/dist/mediaTypes/html/HtmlOptions.mjs +3 -14
  172. package/dist/mediaTypes/html/HtmlSettings.cjs +1 -1
  173. package/dist/mediaTypes/html/HtmlSettings.d.ts +16 -1
  174. package/dist/mediaTypes/html/HtmlSettings.mjs +46 -1
  175. package/dist/mediaTypes/html/IHtmlContentNormalizer.cjs +1 -0
  176. package/dist/mediaTypes/html/IHtmlContentNormalizer.d.ts +4 -0
  177. package/dist/mediaTypes/html/IHtmlContentNormalizer.mjs +4 -0
  178. package/dist/mediaTypes/html/IHtmlSymbolMeasure.d.ts +11 -0
  179. package/dist/mediaTypes/html/NoopHtmlContentNormalizer.cjs +1 -0
  180. package/dist/mediaTypes/html/NoopHtmlContentNormalizer.d.ts +5 -0
  181. package/dist/mediaTypes/html/NoopHtmlContentNormalizer.mjs +8 -0
  182. package/dist/mediaTypes/html/fileParser/HtmlFileParser.cjs +1 -1
  183. package/dist/mediaTypes/html/fileParser/HtmlFileParser.d.ts +5 -1
  184. package/dist/mediaTypes/html/fileParser/HtmlFileParser.mjs +15 -18
  185. package/dist/mediaTypes/html/fileParser/HtmlTextDocument.cjs +1 -1
  186. package/dist/mediaTypes/html/fileParser/HtmlTextDocument.mjs +25 -25
  187. package/dist/mediaTypes/html/fileParser/IHtmlFileParser.cjs +1 -0
  188. package/dist/mediaTypes/html/fileParser/IHtmlFileParser.d.ts +7 -3
  189. package/dist/mediaTypes/html/fileParser/IHtmlFileParser.mjs +4 -0
  190. package/dist/mediaTypes/html/renderer/HtmlRenderer.cjs +1 -1
  191. package/dist/mediaTypes/html/renderer/HtmlRenderer.d.ts +7 -1
  192. package/dist/mediaTypes/html/renderer/HtmlRenderer.mjs +65 -41
  193. package/dist/mediaTypes/html/renderer/IHtmlDocument.d.ts +6 -2
  194. package/dist/mediaTypes/html/renderer/IHtmlDocumentsProvider.d.ts +5 -0
  195. package/dist/mediaTypes/html/renderer/IHtmlRenderer.d.ts +3 -0
  196. package/dist/mediaTypes/html/renderer/document/HtmlDocument.cjs +1 -1
  197. package/dist/mediaTypes/html/renderer/document/HtmlDocument.d.ts +29 -6
  198. package/dist/mediaTypes/html/renderer/document/HtmlDocument.mjs +233 -86
  199. package/dist/mediaTypes/html/renderer/document/HtmlDocumentResizeObserver.cjs +1 -1
  200. package/dist/mediaTypes/html/renderer/document/HtmlDocumentResizeObserver.d.ts +8 -0
  201. package/dist/mediaTypes/html/renderer/document/HtmlDocumentResizeObserver.mjs +41 -5
  202. package/dist/mediaTypes/html/renderer/document/HtmlPageCalculator.cjs +1 -1
  203. package/dist/mediaTypes/html/renderer/document/HtmlPageCalculator.d.ts +2 -4
  204. package/dist/mediaTypes/html/renderer/document/HtmlPageCalculator.mjs +22 -59
  205. package/dist/mediaTypes/html/renderer/document/HtmlSymbolCalclator.cjs +1 -1
  206. package/dist/mediaTypes/html/renderer/document/HtmlSymbolCalclator.d.ts +3 -5
  207. package/dist/mediaTypes/html/renderer/document/HtmlSymbolCalclator.mjs +7 -25
  208. package/dist/mediaTypes/html/renderer/documents/HtmlContainerBuilder.cjs +1 -1
  209. package/dist/mediaTypes/html/renderer/documents/HtmlContainerBuilder.d.ts +0 -2
  210. package/dist/mediaTypes/html/renderer/documents/HtmlContainerBuilder.mjs +18 -42
  211. package/dist/mediaTypes/html/renderer/documents/HtmlDocumentsIntersectionObserver.cjs +1 -1
  212. package/dist/mediaTypes/html/renderer/documents/HtmlDocumentsIntersectionObserver.d.ts +2 -0
  213. package/dist/mediaTypes/html/renderer/documents/HtmlDocumentsIntersectionObserver.mjs +17 -4
  214. package/dist/mediaTypes/html/renderer/documents/HtmlDocumentsPreloader.cjs +1 -1
  215. package/dist/mediaTypes/html/renderer/documents/HtmlDocumentsPreloader.d.ts +16 -1
  216. package/dist/mediaTypes/html/renderer/documents/HtmlDocumentsPreloader.mjs +128 -54
  217. package/dist/mediaTypes/html/renderer/documents/HtmlDocumentsProvider.cjs +1 -1
  218. package/dist/mediaTypes/html/renderer/documents/HtmlDocumentsProvider.d.ts +26 -3
  219. package/dist/mediaTypes/html/renderer/documents/HtmlDocumentsProvider.mjs +227 -101
  220. package/dist/mediaTypes/html/renderer/documents/HtmlDocumentsResizeObserver.cjs +1 -1
  221. package/dist/mediaTypes/html/renderer/documents/HtmlDocumentsResizeObserver.d.ts +2 -0
  222. package/dist/mediaTypes/html/renderer/documents/HtmlDocumentsResizeObserver.mjs +45 -25
  223. package/dist/mediaTypes/html/renderer/documents/documentHiddenState.cjs +1 -0
  224. package/dist/mediaTypes/html/renderer/documents/documentHiddenState.d.ts +6 -0
  225. package/dist/mediaTypes/html/renderer/documents/documentHiddenState.mjs +6 -0
  226. package/dist/mediaTypes/html/renderer/documents/preloadNeighbors.cjs +1 -0
  227. package/dist/mediaTypes/html/renderer/documents/preloadNeighbors.d.ts +2 -0
  228. package/dist/mediaTypes/html/renderer/documents/preloadNeighbors.mjs +13 -0
  229. package/dist/mediaTypes/html/renderer/documents/wrapperVisibility.cjs +1 -0
  230. package/dist/mediaTypes/html/renderer/documents/wrapperVisibility.d.ts +11 -0
  231. package/dist/mediaTypes/html/renderer/documents/wrapperVisibility.mjs +8 -0
  232. package/dist/mediaTypes/html/renderer/html/HtmlContentProcessor.cjs +1 -1
  233. package/dist/mediaTypes/html/renderer/html/HtmlContentProcessor.mjs +62 -62
  234. package/dist/mediaTypes/html/renderer/html/template.cjs +1 -1
  235. package/dist/mediaTypes/html/renderer/html/template.d.ts +3 -1
  236. package/dist/mediaTypes/html/renderer/html/template.mjs +9 -9
  237. package/dist/mediaTypes/html/renderer/image/HtmlImageLoader.cjs +1 -1
  238. package/dist/mediaTypes/html/renderer/image/HtmlImageLoader.d.ts +22 -12
  239. package/dist/mediaTypes/html/renderer/image/HtmlImageLoader.mjs +380 -270
  240. package/dist/mediaTypes/html/renderer/image/HtmlImageObserver.cjs +1 -1
  241. package/dist/mediaTypes/html/renderer/image/HtmlImageObserver.mjs +27 -27
  242. package/dist/mediaTypes/html/renderer/image/IHtmlImageLoader.d.ts +8 -0
  243. package/dist/mediaTypes/html/renderer/image/error-image.cjs +1 -1
  244. package/dist/mediaTypes/html/renderer/image/error-image.mjs +1 -1
  245. package/dist/mediaTypes/html/renderer/image/htmlImageFitStyles.cjs +1 -0
  246. package/dist/mediaTypes/html/renderer/image/htmlImageFitStyles.d.ts +10 -0
  247. package/dist/mediaTypes/html/renderer/image/htmlImageFitStyles.mjs +15 -0
  248. package/dist/mediaTypes/html/renderer/image/htmlImagePlaceholderUrl.cjs +1 -0
  249. package/dist/mediaTypes/html/renderer/image/htmlImagePlaceholderUrl.d.ts +2 -0
  250. package/dist/mediaTypes/html/renderer/image/htmlImagePlaceholderUrl.mjs +12 -0
  251. package/dist/mediaTypes/html/renderer/layout/HtmlRendererLayout.cjs +1 -1
  252. package/dist/mediaTypes/html/renderer/layout/HtmlRendererLayout.d.ts +6 -10
  253. package/dist/mediaTypes/html/renderer/layout/HtmlRendererLayout.mjs +71 -62
  254. package/dist/mediaTypes/html/renderer/layout/HtmlRendererViewport.cjs +1 -1
  255. package/dist/mediaTypes/html/renderer/layout/HtmlRendererViewport.d.ts +4 -1
  256. package/dist/mediaTypes/html/renderer/layout/HtmlRendererViewport.mjs +113 -68
  257. package/dist/mediaTypes/html/renderer/layout/IHtmlRendererLayout.d.ts +8 -3
  258. package/dist/mediaTypes/html/renderer/layout/ViewportCssVariableNames.cjs +1 -1
  259. package/dist/mediaTypes/html/renderer/layout/ViewportCssVariableNames.d.ts +5 -1
  260. package/dist/mediaTypes/html/renderer/layout/ViewportCssVariableNames.mjs +15 -3
  261. package/dist/mediaTypes/html/renderer/layout/applyLayoutClasses.cjs +1 -0
  262. package/dist/mediaTypes/html/renderer/layout/applyLayoutClasses.d.ts +8 -0
  263. package/dist/mediaTypes/html/renderer/layout/applyLayoutClasses.mjs +28 -0
  264. package/dist/mediaTypes/html/renderer/layout/css/document-content-page-horizontal-tb-ltr.cjs +30 -0
  265. package/dist/mediaTypes/html/renderer/layout/css/document-content-page-horizontal-tb-ltr.mjs +4 -0
  266. package/dist/mediaTypes/html/renderer/layout/css/document-content-page-horizontal-tb-rtl.cjs +31 -0
  267. package/dist/mediaTypes/html/renderer/layout/css/document-content-page-horizontal-tb-rtl.mjs +4 -0
  268. package/dist/mediaTypes/html/renderer/layout/css/document-content-page-vertical-lr-ltr.cjs +30 -0
  269. package/dist/mediaTypes/html/renderer/layout/css/document-content-page-vertical-lr-ltr.mjs +4 -0
  270. package/dist/mediaTypes/html/renderer/layout/css/document-content-page-vertical-lr-rtl.cjs +30 -0
  271. package/dist/mediaTypes/html/renderer/layout/css/document-content-page-vertical-lr-rtl.mjs +4 -0
  272. package/dist/mediaTypes/html/renderer/layout/css/document-content-page-vertical-rl-ltr.cjs +30 -0
  273. package/dist/mediaTypes/html/renderer/layout/css/document-content-page-vertical-rl-ltr.mjs +4 -0
  274. package/dist/mediaTypes/html/renderer/layout/css/document-content-page-vertical-rl-rtl.cjs +30 -0
  275. package/dist/mediaTypes/html/renderer/layout/css/document-content-page-vertical-rl-rtl.mjs +4 -0
  276. package/dist/mediaTypes/html/renderer/layout/css/document-content-scroll-horizontal-tb-rtl.cjs +6 -0
  277. package/dist/mediaTypes/html/renderer/layout/css/document-content-scroll-horizontal-tb-rtl.mjs +4 -0
  278. package/dist/mediaTypes/html/renderer/layout/css/document-content-scroll-vertical-lr-ltr.cjs +10 -0
  279. package/dist/mediaTypes/html/renderer/layout/css/document-content-scroll-vertical-lr-ltr.mjs +4 -0
  280. package/dist/mediaTypes/html/renderer/layout/css/document-content-scroll-vertical-lr-rtl.cjs +10 -0
  281. package/dist/mediaTypes/html/renderer/layout/css/document-content-scroll-vertical-lr-rtl.mjs +4 -0
  282. package/dist/mediaTypes/html/renderer/layout/css/document-content-scroll-vertical-rl-ltr.cjs +10 -0
  283. package/dist/mediaTypes/html/renderer/layout/css/document-content-scroll-vertical-rl-ltr.mjs +4 -0
  284. package/dist/mediaTypes/html/renderer/layout/css/document-content-scroll-vertical-rl-rtl.cjs +10 -0
  285. package/dist/mediaTypes/html/renderer/layout/css/document-content-scroll-vertical-rl-rtl.mjs +4 -0
  286. package/dist/mediaTypes/html/renderer/layout/css/document-default.cjs +19 -0
  287. package/dist/mediaTypes/html/renderer/layout/css/document-default.mjs +4 -0
  288. package/dist/mediaTypes/html/renderer/layout/css/hostLayoutCss.cjs +3 -0
  289. package/dist/mediaTypes/html/renderer/layout/css/hostLayoutCss.d.ts +2 -0
  290. package/dist/mediaTypes/html/renderer/layout/css/hostLayoutCss.mjs +56 -0
  291. package/dist/mediaTypes/html/renderer/layout/css/renderer-default.cjs +64 -0
  292. package/dist/mediaTypes/html/renderer/layout/css/renderer-default.mjs +4 -0
  293. package/dist/mediaTypes/html/renderer/layout/css/renderer-layout-page-horizontal-tb-ltr.cjs +33 -0
  294. package/dist/mediaTypes/html/renderer/layout/css/renderer-layout-page-horizontal-tb-ltr.mjs +4 -0
  295. package/dist/mediaTypes/html/renderer/layout/css/renderer-layout-page-horizontal-tb-rtl.cjs +33 -0
  296. package/dist/mediaTypes/html/renderer/layout/css/renderer-layout-page-horizontal-tb-rtl.mjs +4 -0
  297. package/dist/mediaTypes/html/renderer/layout/css/renderer-layout-page-vertical-lr-ltr.cjs +47 -0
  298. package/dist/mediaTypes/html/renderer/layout/css/renderer-layout-page-vertical-lr-ltr.mjs +4 -0
  299. package/dist/mediaTypes/html/renderer/layout/css/renderer-layout-page-vertical-lr-rtl.cjs +47 -0
  300. package/dist/mediaTypes/html/renderer/layout/css/renderer-layout-page-vertical-lr-rtl.mjs +4 -0
  301. package/dist/mediaTypes/html/renderer/layout/css/renderer-layout-page-vertical-rl-ltr.cjs +46 -0
  302. package/dist/mediaTypes/html/renderer/layout/css/renderer-layout-page-vertical-rl-ltr.mjs +4 -0
  303. package/dist/mediaTypes/html/renderer/layout/css/renderer-layout-page-vertical-rl-rtl.cjs +46 -0
  304. package/dist/mediaTypes/html/renderer/layout/css/renderer-layout-page-vertical-rl-rtl.mjs +4 -0
  305. package/dist/mediaTypes/html/renderer/layout/css/renderer-layout-scroll-horizontal-tb-rtl.cjs +7 -0
  306. package/dist/mediaTypes/html/renderer/layout/css/renderer-layout-scroll-horizontal-tb-rtl.mjs +4 -0
  307. package/dist/mediaTypes/html/renderer/layout/css/renderer-layout-scroll-vertical-lr-ltr.cjs +28 -0
  308. package/dist/mediaTypes/html/renderer/layout/css/renderer-layout-scroll-vertical-lr-ltr.mjs +4 -0
  309. package/dist/mediaTypes/html/renderer/layout/css/renderer-layout-scroll-vertical-lr-rtl.cjs +28 -0
  310. package/dist/mediaTypes/html/renderer/layout/css/renderer-layout-scroll-vertical-lr-rtl.mjs +4 -0
  311. package/dist/mediaTypes/html/renderer/layout/css/renderer-layout-scroll-vertical-rl-ltr.cjs +28 -0
  312. package/dist/mediaTypes/html/renderer/layout/css/renderer-layout-scroll-vertical-rl-ltr.mjs +4 -0
  313. package/dist/mediaTypes/html/renderer/layout/css/renderer-layout-scroll-vertical-rl-rtl.cjs +28 -0
  314. package/dist/mediaTypes/html/renderer/layout/css/renderer-layout-scroll-vertical-rl-rtl.mjs +4 -0
  315. package/dist/mediaTypes/html/renderer/layout/css/root-direction.cjs +8 -0
  316. package/dist/mediaTypes/html/renderer/layout/css/root-direction.mjs +4 -0
  317. package/dist/mediaTypes/html/renderer/layout/geometry/ILayoutGeometry.d.ts +128 -0
  318. package/dist/mediaTypes/html/renderer/layout/geometry/formatTranslate3d.cjs +1 -0
  319. package/dist/mediaTypes/html/renderer/layout/geometry/formatTranslate3d.d.ts +4 -0
  320. package/dist/mediaTypes/html/renderer/layout/geometry/formatTranslate3d.mjs +7 -0
  321. package/dist/mediaTypes/html/renderer/layout/geometry/getLayoutOffsetLeft.cjs +1 -0
  322. package/dist/mediaTypes/html/renderer/layout/geometry/getLayoutOffsetLeft.d.ts +1 -0
  323. package/dist/mediaTypes/html/renderer/layout/geometry/getLayoutOffsetLeft.mjs +13 -0
  324. package/dist/mediaTypes/html/renderer/layout/geometry/index.cjs +1 -0
  325. package/dist/mediaTypes/html/renderer/layout/geometry/index.d.ts +18 -0
  326. package/dist/mediaTypes/html/renderer/layout/geometry/index.mjs +30 -0
  327. package/dist/mediaTypes/html/renderer/layout/geometry/pageHorizontalTbLtr.cjs +1 -0
  328. package/dist/mediaTypes/html/renderer/layout/geometry/pageHorizontalTbLtr.d.ts +3 -0
  329. package/dist/mediaTypes/html/renderer/layout/geometry/pageHorizontalTbLtr.mjs +71 -0
  330. package/dist/mediaTypes/html/renderer/layout/geometry/pageHorizontalTbRtl.cjs +1 -0
  331. package/dist/mediaTypes/html/renderer/layout/geometry/pageHorizontalTbRtl.d.ts +3 -0
  332. package/dist/mediaTypes/html/renderer/layout/geometry/pageHorizontalTbRtl.mjs +74 -0
  333. package/dist/mediaTypes/html/renderer/layout/geometry/pageVerticalLrLtr.cjs +1 -0
  334. package/dist/mediaTypes/html/renderer/layout/geometry/pageVerticalLrLtr.d.ts +3 -0
  335. package/dist/mediaTypes/html/renderer/layout/geometry/pageVerticalLrLtr.mjs +71 -0
  336. package/dist/mediaTypes/html/renderer/layout/geometry/pageVerticalLrRtl.cjs +1 -0
  337. package/dist/mediaTypes/html/renderer/layout/geometry/pageVerticalLrRtl.d.ts +3 -0
  338. package/dist/mediaTypes/html/renderer/layout/geometry/pageVerticalLrRtl.mjs +71 -0
  339. package/dist/mediaTypes/html/renderer/layout/geometry/pageVerticalRlLtr.cjs +1 -0
  340. package/dist/mediaTypes/html/renderer/layout/geometry/pageVerticalRlLtr.d.ts +3 -0
  341. package/dist/mediaTypes/html/renderer/layout/geometry/pageVerticalRlLtr.mjs +71 -0
  342. package/dist/mediaTypes/html/renderer/layout/geometry/pageVerticalRlRtl.cjs +1 -0
  343. package/dist/mediaTypes/html/renderer/layout/geometry/pageVerticalRlRtl.d.ts +3 -0
  344. package/dist/mediaTypes/html/renderer/layout/geometry/pageVerticalRlRtl.mjs +71 -0
  345. package/dist/mediaTypes/html/renderer/layout/geometry/restoreLayoutState.cjs +1 -0
  346. package/dist/mediaTypes/html/renderer/layout/geometry/restoreLayoutState.d.ts +41 -0
  347. package/dist/mediaTypes/html/renderer/layout/geometry/restoreLayoutState.mjs +53 -0
  348. package/dist/mediaTypes/html/renderer/layout/geometry/scrollHorizontalTbLtr.cjs +1 -0
  349. package/dist/mediaTypes/html/renderer/layout/geometry/scrollHorizontalTbLtr.d.ts +3 -0
  350. package/dist/mediaTypes/html/renderer/layout/geometry/scrollHorizontalTbLtr.mjs +71 -0
  351. package/dist/mediaTypes/html/renderer/layout/geometry/scrollHorizontalTbRtl.cjs +1 -0
  352. package/dist/mediaTypes/html/renderer/layout/geometry/scrollHorizontalTbRtl.d.ts +3 -0
  353. package/dist/mediaTypes/html/renderer/layout/geometry/scrollHorizontalTbRtl.mjs +74 -0
  354. package/dist/mediaTypes/html/renderer/layout/geometry/scrollVerticalLrLtr.cjs +1 -0
  355. package/dist/mediaTypes/html/renderer/layout/geometry/scrollVerticalLrLtr.d.ts +3 -0
  356. package/dist/mediaTypes/html/renderer/layout/geometry/scrollVerticalLrLtr.mjs +71 -0
  357. package/dist/mediaTypes/html/renderer/layout/geometry/scrollVerticalLrRtl.cjs +1 -0
  358. package/dist/mediaTypes/html/renderer/layout/geometry/scrollVerticalLrRtl.d.ts +3 -0
  359. package/dist/mediaTypes/html/renderer/layout/geometry/scrollVerticalLrRtl.mjs +71 -0
  360. package/dist/mediaTypes/html/renderer/layout/geometry/scrollVerticalRlLtr.cjs +1 -0
  361. package/dist/mediaTypes/html/renderer/layout/geometry/scrollVerticalRlLtr.d.ts +3 -0
  362. package/dist/mediaTypes/html/renderer/layout/geometry/scrollVerticalRlLtr.mjs +74 -0
  363. package/dist/mediaTypes/html/renderer/layout/geometry/scrollVerticalRlRtl.cjs +1 -0
  364. package/dist/mediaTypes/html/renderer/layout/geometry/scrollVerticalRlRtl.d.ts +3 -0
  365. package/dist/mediaTypes/html/renderer/layout/geometry/scrollVerticalRlRtl.mjs +74 -0
  366. package/dist/mediaTypes/html/renderer/layout/layoutRouteIds.cjs +1 -0
  367. package/dist/mediaTypes/html/renderer/layout/layoutRouteIds.d.ts +10 -0
  368. package/dist/mediaTypes/html/renderer/layout/layoutRouteIds.mjs +17 -0
  369. package/dist/mediaTypes/html/renderer/layout/pageStripRouteChange.cjs +1 -0
  370. package/dist/mediaTypes/html/renderer/layout/pageStripRouteChange.d.ts +6 -0
  371. package/dist/mediaTypes/html/renderer/layout/pageStripRouteChange.mjs +24 -0
  372. package/dist/mediaTypes/html/renderer/layout/resolveContentWrapperMinWidth.cjs +1 -0
  373. package/dist/mediaTypes/html/renderer/layout/resolveContentWrapperMinWidth.d.ts +9 -0
  374. package/dist/mediaTypes/html/renderer/layout/resolveContentWrapperMinWidth.mjs +4 -0
  375. package/dist/mediaTypes/html/renderer/layout/resolveLayoutRoute.cjs +1 -0
  376. package/dist/mediaTypes/html/renderer/layout/resolveLayoutRoute.d.ts +11 -0
  377. package/dist/mediaTypes/html/renderer/layout/resolveLayoutRoute.mjs +9 -0
  378. package/dist/mediaTypes/html/renderer/location/HtmlElementLocator.cjs +1 -1
  379. package/dist/mediaTypes/html/renderer/location/HtmlElementLocator.mjs +32 -34
  380. package/dist/mediaTypes/html/renderer/location/HtmlLayoutStatePreserver.cjs +1 -0
  381. package/dist/mediaTypes/html/renderer/location/HtmlLayoutStatePreserver.d.ts +23 -0
  382. package/dist/mediaTypes/html/renderer/location/HtmlLayoutStatePreserver.mjs +164 -0
  383. package/dist/mediaTypes/html/renderer/location/remapStoredPageNumber.cjs +1 -0
  384. package/dist/mediaTypes/html/renderer/location/remapStoredPageNumber.d.ts +4 -0
  385. package/dist/mediaTypes/html/renderer/location/remapStoredPageNumber.mjs +13 -0
  386. package/dist/mediaTypes/html/renderer/location/scrollActivity.cjs +1 -0
  387. package/dist/mediaTypes/html/renderer/location/scrollActivity.d.ts +14 -0
  388. package/dist/mediaTypes/html/renderer/location/scrollActivity.mjs +18 -0
  389. package/dist/mediaTypes/html/renderer/navigator/HtmlCoreNavigator.cjs +1 -1
  390. package/dist/mediaTypes/html/renderer/navigator/HtmlCoreNavigator.mjs +2 -2
  391. package/dist/mediaTypes/html/renderer/navigator/HtmlNavPointNavigator.cjs +1 -1
  392. package/dist/mediaTypes/html/renderer/navigator/HtmlNavPointNavigator.mjs +3 -3
  393. package/dist/mediaTypes/html/renderer/navigator/HtmlNavPointProvider.cjs +1 -1
  394. package/dist/mediaTypes/html/renderer/navigator/HtmlNavPointProvider.mjs +55 -59
  395. package/dist/mediaTypes/html/renderer/navigator/HtmlPagingNavigator.cjs +1 -1
  396. package/dist/mediaTypes/html/renderer/navigator/HtmlPagingNavigator.d.ts +1 -0
  397. package/dist/mediaTypes/html/renderer/navigator/HtmlPagingNavigator.mjs +40 -39
  398. package/dist/mediaTypes/html/renderer/progress/HtmlProgressTracker.cjs +1 -1
  399. package/dist/mediaTypes/html/renderer/progress/HtmlProgressTracker.d.ts +2 -1
  400. package/dist/mediaTypes/html/renderer/progress/HtmlProgressTracker.mjs +36 -24
  401. package/dist/mediaTypes/html/renderer/style/ContentCssVariables.cjs +1 -1
  402. package/dist/mediaTypes/html/renderer/style/ContentCssVariables.d.ts +4 -0
  403. package/dist/mediaTypes/html/renderer/style/ContentCssVariables.mjs +19 -1
  404. package/dist/mediaTypes/html/renderer/style/ContentLayoutCssVariableNames.cjs +1 -1
  405. package/dist/mediaTypes/html/renderer/style/ContentLayoutCssVariableNames.d.ts +3 -0
  406. package/dist/mediaTypes/html/renderer/style/ContentLayoutCssVariableNames.mjs +9 -0
  407. package/dist/mediaTypes/html/renderer/style/HtmlStyleProvider.cjs +1 -1
  408. package/dist/mediaTypes/html/renderer/style/HtmlStyleProvider.d.ts +3 -0
  409. package/dist/mediaTypes/html/renderer/style/HtmlStyleProvider.mjs +28 -16
  410. package/dist/mediaTypes/html/renderer/style/HtmlThemeApplier.cjs +1 -1
  411. package/dist/mediaTypes/html/renderer/style/HtmlThemeApplier.d.ts +2 -0
  412. package/dist/mediaTypes/html/renderer/style/HtmlThemeApplier.mjs +39 -34
  413. package/dist/mediaTypes/html/renderer/style/ILanguageHighlighter.cjs +0 -0
  414. package/dist/mediaTypes/html/renderer/style/ILanguageHighlighter.d.ts +6 -0
  415. package/dist/mediaTypes/html/renderer/style/ILanguageHighlighter.mjs +0 -0
  416. package/dist/mediaTypes/html/renderer/style/LanguageHighlighter.cjs +1 -0
  417. package/dist/mediaTypes/html/renderer/style/LanguageHighlighter.d.ts +18 -0
  418. package/dist/mediaTypes/html/renderer/style/LanguageHighlighter.mjs +52 -0
  419. package/dist/mediaTypes/html/renderer/style/html-content.cjs +38 -7
  420. package/dist/mediaTypes/html/renderer/style/html-content.mjs +1 -1
  421. package/dist/mediaTypes/pdf/ensurePdfWebWorker.cjs +1 -1
  422. package/dist/mediaTypes/pdf/ensurePdfWebWorker.mjs +6 -13
  423. package/dist/mediaTypes/pdf/fileParser/PdfFileParser.cjs +1 -1
  424. package/dist/mediaTypes/pdf/fileParser/PdfFileParser.d.ts +5 -4
  425. package/dist/mediaTypes/pdf/fileParser/PdfFileParser.mjs +7 -3
  426. package/dist/mediaTypes/pdf/fileParser/PdfPasswordProvider.cjs +1 -1
  427. package/dist/mediaTypes/pdf/fileParser/PdfPasswordProvider.d.ts +4 -4
  428. package/dist/mediaTypes/pdf/fileParser/PdfPasswordProvider.mjs +24 -14
  429. package/dist/mediaTypes/pdf/highlighter/PdfHighlightConstants.cjs +1 -0
  430. package/dist/mediaTypes/pdf/highlighter/PdfHighlightConstants.d.ts +6 -0
  431. package/dist/mediaTypes/pdf/highlighter/PdfHighlightConstants.mjs +4 -0
  432. package/dist/mediaTypes/pdf/highlighter/pdfHighlightStyles.cjs +1 -0
  433. package/dist/mediaTypes/pdf/highlighter/pdfHighlightStyles.d.ts +10 -0
  434. package/dist/mediaTypes/pdf/highlighter/pdfHighlightStyles.mjs +33 -0
  435. package/dist/mediaTypes/pdf/loadPdfDocument.cjs +1 -1
  436. package/dist/mediaTypes/pdf/loadPdfDocument.mjs +18 -19
  437. package/dist/mediaTypes/pdf/renderer/IPdfRenderer.d.ts +2 -0
  438. package/dist/mediaTypes/pdf/renderer/MultiPdfViewer.mjs +1 -1
  439. package/dist/mediaTypes/pdf/renderer/PdfCoreNavigator.cjs +1 -1
  440. package/dist/mediaTypes/pdf/renderer/PdfCoreNavigator.mjs +2 -2
  441. package/dist/mediaTypes/pdf/renderer/PdfCssVariableNames.cjs +1 -1
  442. package/dist/mediaTypes/pdf/renderer/PdfCssVariableNames.d.ts +0 -1
  443. package/dist/mediaTypes/pdf/renderer/PdfCssVariableNames.mjs +0 -3
  444. package/dist/mediaTypes/pdf/renderer/PdfDocument.cjs +1 -1
  445. package/dist/mediaTypes/pdf/renderer/PdfDocument.mjs +3 -3
  446. package/dist/mediaTypes/pdf/renderer/PdfNavPointNavigator.cjs +1 -1
  447. package/dist/mediaTypes/pdf/renderer/PdfNavPointNavigator.mjs +3 -3
  448. package/dist/mediaTypes/pdf/renderer/PdfPagingNavigator.cjs +1 -1
  449. package/dist/mediaTypes/pdf/renderer/PdfPagingNavigator.d.ts +3 -3
  450. package/dist/mediaTypes/pdf/renderer/PdfPagingNavigator.mjs +20 -19
  451. package/dist/mediaTypes/pdf/renderer/PdfRenderer.cjs +1 -1
  452. package/dist/mediaTypes/pdf/renderer/PdfRenderer.d.ts +1 -0
  453. package/dist/mediaTypes/pdf/renderer/PdfRenderer.mjs +20 -20
  454. package/dist/mediaTypes/pdf/renderer/PdfSvgBuilder.cjs +1 -1
  455. package/dist/mediaTypes/pdf/renderer/PdfSvgBuilder.mjs +51 -50
  456. package/dist/mediaTypes/pdf/renderer/documents/PdfDocumentsProvider.cjs +2 -2
  457. package/dist/mediaTypes/pdf/renderer/documents/PdfDocumentsProvider.mjs +55 -56
  458. package/dist/mediaTypes/pdf/renderer/documents/resolvePdfLocationPageNumber.cjs +1 -0
  459. package/dist/mediaTypes/pdf/renderer/documents/resolvePdfLocationPageNumber.d.ts +3 -0
  460. package/dist/mediaTypes/pdf/renderer/documents/resolvePdfLocationPageNumber.mjs +12 -0
  461. package/dist/mediaTypes/pdf/renderer/input/PdfViewerEvents.cjs +1 -1
  462. package/dist/mediaTypes/pdf/renderer/input/PdfViewerEvents.d.ts +4 -0
  463. package/dist/mediaTypes/pdf/renderer/input/PdfViewerEvents.mjs +24 -5
  464. package/dist/mediaTypes/pdf/renderer/layout/PdfRendererViewport.cjs +1 -1
  465. package/dist/mediaTypes/pdf/renderer/layout/PdfRendererViewport.mjs +32 -32
  466. package/dist/mediaTypes/pdf/renderer/progress/PdfProgressTracker.cjs +1 -1
  467. package/dist/mediaTypes/pdf/renderer/progress/PdfProgressTracker.mjs +1 -1
  468. package/dist/mediaTypes/pdf/renderer/style/PdfThemeApplier.cjs +4 -4
  469. package/dist/mediaTypes/pdf/renderer/style/PdfThemeApplier.mjs +5 -5
  470. package/dist/mediaTypes/pdf/shared/geometry/index.cjs +1 -1
  471. package/dist/mediaTypes/pdf/shared/geometry/index.mjs +2 -2
  472. package/dist/mediaTypes/pdf/shared/geometry/selectionToFixedContentRange.cjs +1 -1
  473. package/dist/mediaTypes/pdf/shared/geometry/selectionToFixedContentRange.d.ts +14 -4
  474. package/dist/mediaTypes/pdf/shared/geometry/selectionToFixedContentRange.mjs +56 -24
  475. package/dist/mediaTypes/pdf/shared/text/pageText.cjs +2 -2
  476. package/dist/mediaTypes/pdf/shared/text/pageText.d.ts +14 -0
  477. package/dist/mediaTypes/pdf/shared/text/pageText.mjs +139 -47
  478. package/dist/node_modules/highlight.js/styles/github-dark.cjs +118 -0
  479. package/dist/node_modules/highlight.js/styles/github-dark.mjs +4 -0
  480. package/dist/node_modules/highlight.js/styles/github.cjs +118 -0
  481. package/dist/node_modules/highlight.js/styles/github.mjs +4 -0
  482. package/dist/pdfjs/package.json +1 -0
  483. package/global.d.ts +3 -1
  484. package/package.json +11 -5
  485. package/types.d.ts +48 -13
  486. package/dist/kernal/device/IEnvironment.d.ts +0 -5
  487. package/dist/kernal/device/IPlatform.d.ts +0 -7
  488. package/dist/kernal/device/WebEnvironment.cjs +0 -1
  489. package/dist/kernal/device/WebEnvironment.d.ts +0 -7
  490. package/dist/kernal/device/WebEnvironment.mjs +0 -22
  491. package/dist/kernal/device/WebPlatform.cjs +0 -1
  492. package/dist/kernal/device/WebPlatform.d.ts +0 -12
  493. package/dist/kernal/device/WebPlatform.mjs +0 -49
  494. package/dist/kernal/progress/IReadingProgressStore.d.ts +0 -7
  495. package/dist/kernal/progress/ReadingProgressStore.cjs +0 -1
  496. package/dist/kernal/progress/ReadingProgressStore.d.ts +0 -12
  497. package/dist/kernal/progress/ReadingProgressStore.mjs +0 -17
  498. package/dist/kernal/storage/IStorage.cjs +0 -1
  499. package/dist/kernal/storage/IStorage.d.ts +0 -21
  500. package/dist/kernal/storage/IStorage.mjs +0 -4
  501. package/dist/kernal/storage/WebStorage.cjs +0 -1
  502. package/dist/kernal/storage/WebStorage.d.ts +0 -31
  503. package/dist/kernal/storage/WebStorage.mjs +0 -165
  504. package/dist/mediaTypes/adjacent.cjs +0 -1
  505. package/dist/mediaTypes/adjacent.d.ts +0 -5
  506. package/dist/mediaTypes/adjacent.mjs +0 -42
  507. package/dist/mediaTypes/html/renderer/image/placeholder.cjs +0 -1
  508. package/dist/mediaTypes/html/renderer/image/placeholder.mjs +0 -4
  509. /package/dist/kernal/{device/IEnvironment.cjs → screen/IFullscreen.cjs} +0 -0
  510. /package/dist/kernal/{device/IEnvironment.mjs → screen/IFullscreen.mjs} +0 -0
  511. /package/dist/kernal/{Debounce.cjs → web/debounce.cjs} +0 -0
  512. /package/dist/kernal/{Debounce.d.ts → web/debounce.d.ts} +0 -0
  513. /package/dist/{kernal/device/IPlatform.cjs → mediaTypes/html/IHtmlSymbolMeasure.cjs} +0 -0
  514. /package/dist/{kernal/device/IPlatform.mjs → mediaTypes/html/IHtmlSymbolMeasure.mjs} +0 -0
  515. /package/dist/{kernal/progress/IReadingProgressStore.cjs → mediaTypes/html/renderer/layout/geometry/ILayoutGeometry.cjs} +0 -0
  516. /package/dist/{kernal/progress/IReadingProgressStore.mjs → mediaTypes/html/renderer/layout/geometry/ILayoutGeometry.mjs} +0 -0
@@ -1,6 +1,18 @@
1
1
  import { findLastNode as e } from "./finder.mjs";
2
+ import { createRange as t, getTextOffsetInElement as n } from "./selection.mjs";
2
3
  //#region kernal/html/geometry.ts
3
- var t = (t) => {
4
+ var r = (e) => !!e && typeof e == "object" && !("tagName" in e) && "commonAncestorContainer" in e, i = (e) => {
5
+ let t = e.getClientRects();
6
+ for (let e = 0; e < t.length; e++) {
7
+ let n = t[e];
8
+ if (n.height > 0 || n.width > 0) return n;
9
+ }
10
+ return e.getBoundingClientRect();
11
+ }, a = (e) => r(e) ? i(e) : e.getBoundingClientRect(), o = (e) => {
12
+ if (!r(e)) return e;
13
+ let t = e.startContainer;
14
+ return t.nodeType === Node.ELEMENT_NODE ? t : t.parentElement;
15
+ }, s = (t) => {
4
16
  let n, r, i, a = [], o, s, c;
5
17
  if (Array.isArray(t)) {
6
18
  if (c = "elements", o = t[0], s = t[t.length - 1], n = o.ownerDocument, r = n.defaultView, t.length > 1) {
@@ -60,14 +72,30 @@ var t = (t) => {
60
72
  baseType: c,
61
73
  baseRects: a
62
74
  };
63
- }, n = {
75
+ }, c = {
64
76
  left: -1e5,
65
77
  top: -1e5,
66
78
  visible: !1
67
- }, r = (e, t) => {
79
+ }, l = (e, t) => {
80
+ let n = e.target?.ownerDocument;
81
+ if (!n) return c;
82
+ let r = n.defaultView, i = e.clientX, a = e.clientY, o = t.ownerDocument.defaultView;
83
+ for (; o != r;) {
84
+ let e = r?.frameElement, t = e?.ownerDocument?.defaultView;
85
+ if (!t) break;
86
+ r = t;
87
+ let n = e.getBoundingClientRect();
88
+ i += n.left, a += n.top;
89
+ }
90
+ return o == r ? {
91
+ left: i,
92
+ top: a,
93
+ visible: !0
94
+ } : c;
95
+ }, u = (e, t) => {
68
96
  let n = e.left + e.width, r = e.top + e.height, i = t.left + t.width, a = t.top + t.height;
69
97
  return t.left >= e.left && t.top >= e.top && i <= n && a <= r;
70
- }, i = (e, t) => {
98
+ }, d = (e, t) => {
71
99
  let n = e.left + e.width, r = e.top + e.height, i = t.left + t.width, a = t.top + t.height, o = Math.max(e.left, t.left), s = Math.max(e.top, t.top), c = Math.min(n, i), l = Math.min(r, a), u = c - o, d = l - s;
72
100
  return u <= 0 || d <= 0 ? null : {
73
101
  left: o,
@@ -75,7 +103,7 @@ var t = (t) => {
75
103
  width: u,
76
104
  height: d
77
105
  };
78
- }, a = (e) => e.reduce((e, t) => {
106
+ }, f = (e) => e.reduce((e, t) => {
79
107
  let n = Math.min(e.left, t.left), r = Math.min(e.top, t.top), i = Math.max(e.left + e.width, t.left + t.width), a = Math.max(e.top + e.height, t.top + t.height);
80
108
  return {
81
109
  left: n,
@@ -83,118 +111,108 @@ var t = (t) => {
83
111
  width: i - n,
84
112
  height: a - r
85
113
  };
86
- }), o = (e, n) => {
87
- let { baseWindow: r, baseRects: i } = t(e), a = i.map((e) => ({
114
+ }), p = (e, t) => {
115
+ let { baseWindow: n, baseRects: r } = s(e), i = r.map((e) => ({
88
116
  left: e.left,
89
117
  top: e.top,
90
118
  width: e.width,
91
119
  height: e.height
92
120
  }));
93
- for (; n != r;) {
94
- let e = r.frameElement, t = e?.ownerDocument?.defaultView;
121
+ for (; t != n;) {
122
+ let e = n?.frameElement, t = e?.ownerDocument?.defaultView;
95
123
  if (!t) break;
96
- r = t;
97
- let n = e.getBoundingClientRect();
98
- a.forEach((e) => {
99
- e.left += n.left, e.top += n.top;
124
+ n = t;
125
+ let r = e.getBoundingClientRect();
126
+ i.forEach((e) => {
127
+ e.left += r.left, e.top += r.top;
100
128
  });
101
129
  }
102
- return n == r ? {
103
- normalizedRects: a,
130
+ return t == n ? {
131
+ normalizedRects: i,
104
132
  inSameWindow: !0
105
133
  } : {
106
134
  normalizedRects: [],
107
135
  inSameWindow: !1
108
136
  };
109
- }, s = (e, t, n = !0) => {
110
- let o = e.filter((e) => r(t, e));
111
- if (o.length > 0) return a(o);
137
+ }, m = (e) => e.width * e.height, h = (e) => {
138
+ let t = e[0], n = m(t);
139
+ for (let r = 1; r < e.length; r++) {
140
+ let i = m(e[r]);
141
+ i > n && (t = e[r], n = i);
142
+ }
143
+ return t;
144
+ }, g = (e) => {
145
+ if (e.length === 1) return e[0];
146
+ let t = f(e), n = Math.max(...e.map((e) => e.width));
147
+ return t.width > n * 2 + 24 ? h(e) : t;
148
+ }, _ = (e, t, n = !0) => {
149
+ let r = e.filter((e) => e.width >= 1 && e.height >= 1), i = r.filter((e) => u(t, e));
150
+ if (i.length > 0) return g(i);
112
151
  if (!n) return null;
113
- let s = [];
114
- for (let n of e) {
115
- let e = i(t, n);
116
- e && (e.width * e.height < 4 || s.push({
117
- clipped: e,
118
- origArea: n.width * n.height
152
+ let a = [];
153
+ for (let e of r) {
154
+ let n = d(t, e);
155
+ n && (n.width * n.height < 4 || a.push({
156
+ clipped: n,
157
+ origArea: e.width * e.height
119
158
  }));
120
159
  }
121
- return s.length === 0 ? null : (s.sort((e, t) => {
160
+ return a.length === 0 ? null : (a.sort((e, t) => {
122
161
  let n = e.clipped.width * e.clipped.height, r = t.clipped.width * t.clipped.height;
123
162
  return r === n ? t.origArea - e.origArea : r - n;
124
- }), s[0].clipped);
125
- }, c = (e) => ({
163
+ }), a[0].clipped);
164
+ }, v = (e) => ({
126
165
  left: e.left,
127
166
  top: e.top,
128
167
  width: e.width,
129
168
  height: e.height
130
- }), l = (e, t) => t ? {
169
+ }), y = (e, t) => t ? {
131
170
  left: e.left + (t.left ?? 0),
132
171
  top: e.top + (t.top ?? 0),
133
172
  width: e.width - (t.left ?? 0) - (t.right ?? 0),
134
173
  height: e.height - (t.top ?? 0) - (t.bottom ?? 0)
135
- } : e, u = (e, t, n, r = "bottom", i = 5) => {
136
- let a = n.getBoundingClientRect(), o = a.width, s = a.height, c = t.left + t.width, l = t.top + t.height, u = e.top + e.height - l, d = t.top - e.top, f = s + i, p = e.left, m = e.left + e.width;
137
- if (r === "right") {
138
- let e = c + i, n = m - o - i;
139
- e > n && (e = n);
140
- let r = t.top + t.height / 2 - s / 2;
141
- return {
142
- left: e,
143
- top: r,
144
- visible: !0
145
- };
146
- }
147
- let h = t.left + t.width / 2 - o / 2, g;
148
- g = h < p + i ? p + i : h + o > m - i ? m - o - i : h;
149
- let _ = r === "top";
150
- if (u >= f && d >= f) {
151
- let e = _ ? t.top - s - i : l + i;
152
- return {
153
- left: g,
154
- top: e,
155
- visible: !0
156
- };
157
- }
158
- if (u >= f) return {
159
- left: g,
160
- top: l + i,
161
- visible: !0
162
- };
163
- if (d >= f) return {
164
- left: g,
165
- top: t.top - s - i,
174
+ } : e, b = (e, t, n) => n < t ? t : Math.min(Math.max(e, t), n), x = (e, t, n, r = "bottom", i = 5) => {
175
+ let a = n.getBoundingClientRect(), o = a.width, s = a.height;
176
+ if (o < 1 || s < 1) return c;
177
+ let l = t.left + t.width, u = t.top + t.height, d = e.top + e.height, f = d - u, p = t.top - e.top, m = s + i, h = e.left, g = e.left + e.width, _ = e.top, v = h + i, y = g - o - i, x = _ + i, S = d - s - i;
178
+ if (r === "right") return {
179
+ left: b(l + i, v, y),
180
+ top: b(t.top + t.height / 2 - s / 2, x, S),
166
181
  visible: !0
167
182
  };
168
- let v = t.top + t.height / 2;
169
- return {
170
- left: g,
171
- top: v - s / 2,
183
+ let C = b(t.left + t.width / 2 - o / 2, v, y), w = r === "top", T;
184
+ return T = f >= m && p >= m ? w ? t.top - s - i : u + i : f >= m ? u + i : p >= m ? t.top - s - i : t.top + t.height / 2 - s / 2, {
185
+ left: C,
186
+ top: b(T, x, S),
172
187
  visible: !0
173
188
  };
174
- }, d = (e, t, r, i, a) => {
175
- if (!r || !t) return n;
176
- let d = r.ownerDocument.defaultView, f = o(t, d);
177
- if (!f?.inSameWindow) return n;
178
- let p = l(c(e.getBoundingClientRect()), a), m = s(f.normalizedRects, p, !0);
179
- return m ? u(p, m, r, i ?? "bottom") : n;
180
- }, f = (e, t, r, i) => {
181
- if (!t) return n;
182
- let a = o(t, r);
183
- if (!a?.inSameWindow) return n;
184
- let u = a.normalizedRects, d = l(c(e.getBoundingClientRect()), i);
185
- (i?.left != null || i?.right != null || i?.top != null || i?.bottom != null) && (u = u.map((e) => ({
186
- left: e.left + (i?.left ?? 0),
187
- top: e.top + (i?.top ?? 0),
188
- width: e.width - (i?.left ?? 0) - (i?.right ?? 0),
189
- height: e.height - (i?.top ?? 0) - (i?.bottom ?? 0)
189
+ }, S = (e, t, n, r, i) => {
190
+ if (!n || !t) return c;
191
+ let a = n.ownerDocument.defaultView, o = p(t, a);
192
+ if (!o?.inSameWindow) return c;
193
+ let s = y(v(e.getBoundingClientRect()), i), l = _(o.normalizedRects, s, !0);
194
+ return l ? {
195
+ ...x(s, l, n, r ?? "bottom"),
196
+ baseRect: l
197
+ } : c;
198
+ }, C = (e, t, n, r) => {
199
+ if (!t) return c;
200
+ let i = p(t, n);
201
+ if (!i?.inSameWindow) return c;
202
+ let a = i.normalizedRects, o = y(v(e.getBoundingClientRect()), r);
203
+ (r?.left != null || r?.right != null || r?.top != null || r?.bottom != null) && (a = a.map((e) => ({
204
+ left: e.left + (r?.left ?? 0),
205
+ top: e.top + (r?.top ?? 0),
206
+ width: e.width - (r?.left ?? 0) - (r?.right ?? 0),
207
+ height: e.height - (r?.top ?? 0) - (r?.bottom ?? 0)
190
208
  })));
191
- let f = s(u, d, !1);
192
- return f ? {
193
- left: f.left,
194
- top: f.top,
209
+ let s = _(a, o, !1);
210
+ return s ? {
211
+ left: s.left,
212
+ top: s.top,
195
213
  visible: !0
196
- } : n;
197
- }, p = (e, t, n, r) => {
214
+ } : c;
215
+ }, w = (e, t, n, r) => {
198
216
  let i = r.innerWidth, a = r.innerHeight;
199
217
  if (e.left < 0 || Math.floor(e.right) > i) {
200
218
  if (e.left >= 0) {
@@ -236,38 +254,25 @@ var t = (t) => {
236
254
  }
237
255
  }
238
256
  return e;
239
- }, m = (e, r, i, a, o) => {
240
- if (!i || !r) return n;
241
- let s = {
242
- top: 50,
243
- bottom: 50
244
- }, f = a ?? "bottom";
245
- if (o == "page") {
246
- let { firstBaseNode: a, lastBaseNode: o, baseWindow: d, baseBoundingRect: m } = t(r), h = d.innerWidth, g = d.innerHeight, _ = Math.round(m.left);
247
- if (m.right < 0 || _ > h || m.bottom < 0 || m.top > g) return n;
248
- m = p(m, a, o, d);
249
- let v = m.left, y = m.top, b = i.ownerDocument.defaultView;
250
- for (; b != d;) {
251
- let e = d.frameElement, t = e?.ownerDocument?.defaultView;
252
- if (!t) break;
253
- d = t;
254
- let n = e.getBoundingClientRect();
255
- v += n.left, y += n.top;
256
- }
257
- return b == d ? u(l(c(e.getBoundingClientRect()), s), {
258
- left: v,
259
- top: y,
260
- width: m.width,
261
- height: m.height
262
- }, i, f) : n;
257
+ }, T = {
258
+ top: 8,
259
+ bottom: 8,
260
+ left: 8,
261
+ right: 8
262
+ }, E = (e, t, n, r, i, a = T) => {
263
+ if (!n || !t) return c;
264
+ let o = r ?? "bottom";
265
+ if (i == "page") {
266
+ let { baseWindow: r, baseBoundingRect: i } = s(t), l = r.innerWidth, u = r.innerHeight, d = Math.round(i.left);
267
+ return i.right < 0 || d > l || i.bottom < 0 || i.top > u ? c : S(e, t, n, o, a);
263
268
  }
264
- return d(e, r, i, f, s);
265
- }, h = (e, t) => t.left >= e.left && t.top >= e.top && t.right <= e.right && t.bottom <= e.bottom, g = (e, t) => t.right > e.left && t.left < e.right && t.top < e.bottom && t.bottom > e.top, _ = (e) => e == "vertical-lr" || e == "vertical-rl", v = (e) => ({
269
+ return S(e, t, n, o, a);
270
+ }, D = (e, t) => t.left >= e.left && t.top >= e.top && t.right <= e.right && t.bottom <= e.bottom, O = (e, t) => t.right > e.left && t.left < e.right && t.top < e.bottom && t.bottom > e.top, k = (e) => e == "vertical-lr" || e == "vertical-rl", A = (e) => ({
266
271
  left: e.left,
267
272
  top: e.top,
268
273
  right: e.right,
269
274
  bottom: e.bottom
270
- }), y = (e, t, n) => _(n) ? n == "vertical-rl" ? e.left >= t.right || e.bottom <= t.top : e.right <= t.left || e.bottom <= t.top : e.bottom <= t.top || e.right <= t.left, b = (e, t, n) => _(n) ? n == "vertical-rl" ? e.right <= t.left || e.top >= t.bottom : e.left >= t.right || e.top >= t.bottom : e.top >= t.bottom || e.left >= t.right, x = (e, t) => {
275
+ }), j = (e, t, n) => k(n) ? n == "vertical-rl" ? e.left >= t.right || e.bottom <= t.top : e.right <= t.left || e.bottom <= t.top : e.bottom <= t.top || e.right <= t.left, M = (e, t, n) => k(n) ? n == "vertical-rl" ? e.right <= t.left || e.top >= t.bottom : e.left >= t.right || e.top >= t.bottom : e.top >= t.bottom || e.left >= t.right, N = (e, t) => {
271
276
  let n = {
272
277
  left: 0,
273
278
  top: 0,
@@ -296,24 +301,24 @@ var t = (t) => {
296
301
  right: s,
297
302
  bottom: c
298
303
  };
299
- }, S = (e, t, n) => {
304
+ }, P = (e, t, n) => {
300
305
  if (!e.length) return [];
301
- let r = n?.writingMode, i = n?.fullVisible ?? !1, a = n?.missStreakToStop ?? 8, o = (e) => i ? h(t, e) : g(t, e), s = 0, c = e.length;
306
+ let r = n?.writingMode, i = n?.fullVisible ?? !1, a = n?.missStreakToStop ?? 8, o = (e) => i ? D(t, e) : O(t, e), s = 0, c = e.length;
302
307
  for (; s < c;) {
303
308
  let n = s + c >> 1;
304
- y(v(e[n].getBoundingClientRect()), t, r) ? s = n + 1 : c = n;
309
+ j(A(e[n].getBoundingClientRect()), t, r) ? s = n + 1 : c = n;
305
310
  }
306
311
  let l = [], u = 0, d = !1;
307
312
  for (let n = s; n < e.length; n++) {
308
- let i = v(e[n].getBoundingClientRect());
313
+ let i = A(e[n].getBoundingClientRect());
309
314
  if (o(i)) {
310
315
  l.push(e[n]), d = !0, u = 0;
311
316
  continue;
312
317
  }
313
- if (d && b(i, t, r) && (u++, u >= a)) break;
318
+ if (d && M(i, t, r) && (u++, u >= a)) break;
314
319
  }
315
320
  return l;
316
- }, C = (e, t, n) => {
321
+ }, F = (e, t, n) => {
317
322
  if (e.caretRangeFromPoint) return e.caretRangeFromPoint(t, n);
318
323
  if (e.caretPositionFromPoint) {
319
324
  let r = e.caretPositionFromPoint(t, n);
@@ -323,7 +328,63 @@ var t = (t) => {
323
328
  }
324
329
  }
325
330
  return null;
326
- }, w = (e) => {
331
+ }, I = /* @__PURE__ */ new Set([
332
+ "img",
333
+ "image",
334
+ "svg",
335
+ "video",
336
+ "audio",
337
+ "canvas",
338
+ "iframe"
339
+ ]), L = (e) => {
340
+ let t = e.textContent ?? "";
341
+ for (let e = 0; e < t.length; e++) {
342
+ let n = t.charCodeAt(e);
343
+ if (n != 32 && n != 9 && n != 10 && n != 13 && n != 160) return !0;
344
+ }
345
+ return !1;
346
+ }, R = (e) => {
347
+ let t = e.tagName?.toLowerCase();
348
+ return t && I.has(t) ? !0 : !L(e);
349
+ }, z = (e, t) => t == "vertical-rl" ? {
350
+ x: Math.max(e.left, e.right - 1),
351
+ y: e.top + 1
352
+ } : {
353
+ x: e.left + 1,
354
+ y: e.top + 1
355
+ }, B = (e) => e.width === 0 && e.height === 0, V = (e, t) => e === t || e.contains(t), H = (e, n, r) => {
356
+ let a = Math.min(n + 1, r);
357
+ if (n < 0 || n >= r) return;
358
+ let o = t(e, e, n, a);
359
+ if (o) return {
360
+ textOffset: n,
361
+ rect: i(o)
362
+ };
363
+ }, U = (e, t, r) => {
364
+ if (R(e)) return;
365
+ let i = e.textContent?.length ?? 0;
366
+ if (i <= 0) return;
367
+ let a = e.ownerDocument;
368
+ if (!a) return;
369
+ let o = z(t, r), s = F(a, o.x, o.y);
370
+ if (s && V(e, s.startContainer)) {
371
+ let a = H(e, n(e, s.startContainer, s.startOffset), i);
372
+ if (a && !B(a.rect)) {
373
+ let e = A(a.rect);
374
+ if (!j(e, t, r) && O(t, e)) return a;
375
+ }
376
+ }
377
+ let c = 0, l = i - 1, u;
378
+ for (; c <= l;) {
379
+ let n = c + l >> 1, a = H(e, n, i);
380
+ if (!a || B(a.rect) || j(A(a.rect), t, r)) {
381
+ c = n + 1;
382
+ continue;
383
+ }
384
+ u = a, l = n - 1;
385
+ }
386
+ return u;
387
+ }, W = (e) => {
327
388
  let t = e.getClientRects();
328
389
  if (t.length === 0) return null;
329
390
  let n;
@@ -332,10 +393,10 @@ var t = (t) => {
332
393
  break;
333
394
  }
334
395
  if (!n) return null;
335
- let r = e.startContainer.ownerDocument, i = C(r, n.left, n.top), a = C(r, n.right - 1, n.bottom - 1);
396
+ let r = e.startContainer.ownerDocument, i = F(r, n.left, n.top), a = F(r, n.right - 1, n.bottom - 1);
336
397
  if (!i || !a) return null;
337
398
  let o = r.createRange();
338
399
  return o.setStart(i.startContainer, i.startOffset), o.setEnd(a.startContainer, a.startOffset), o;
339
400
  };
340
401
  //#endregion
341
- export { l as applyContainerInset, m as calcToolbarPosition, u as calcToolbarPositionFromRect, d as calcToolbarPositionInContainer, f as checkRangeOrElementIsVisible, h as containsRect, t as getBaseState, w as getLastLineRangeFromElementRange, S as getOrderedElementsIntersectingRect, C as getRangeFromPoint, n as hiddenToolbarPosition, g as intersectRect, i as intersectWithContainer, o as normalizeBaseRectsInDisplayWindow, p as recalculateRect, s as resolveVisibleBaseRectInContainer, x as resolveVisibleViewportInContentWindow, c as toRect };
402
+ export { T as DEFAULT_TOOLBAR_CONTAINER_INSET, y as applyContainerInset, l as calcCursorPosition, E as calcToolbarPosition, x as calcToolbarPositionFromRect, S as calcToolbarPositionInContainer, C as checkRangeOrElementIsVisible, D as containsRect, U as findFirstVisibleTextOffset, s as getBaseState, i as getFirstClientRect, W as getLastLineRangeFromElementRange, a as getLocateClientRect, o as getLocateElement, P as getOrderedElementsIntersectingRect, F as getRangeFromPoint, c as hiddenToolbarPosition, O as intersectRect, d as intersectWithContainer, r as isDomRange, R as isUnsplittableContentElement, p as normalizeBaseRectsInDisplayWindow, w as recalculateRect, _ as resolveVisibleBaseRectInContainer, N as resolveVisibleViewportInContentWindow, v as toRect };
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`}),require("../Constants.cjs");const e=require("./finder.cjs"),t=require("./dom.cjs"),n=require("./text.cjs");var r=(t,n)=>{let r=e.getDocumentBody(t);if(!r)return;let i=e=>{let t=e.tagName;if(t===`SCRIPT`||t===`STYLE`||t===`NOSCRIPT`||t===`IFRAME`||t===`OBJECT`||t===`EMBED`||t===`TEMPLATE`||t===`TEXTAREA`)return!0;let n=e.namespaceURI;return n===`http://www.w3.org/2000/svg`||n===`http://www.w3.org/1998/Math/MathML`},a=e=>!!(e.data&&/\S/.test(e.data)),o=t=>{let n=t;for(;n;){if(e.compareTagName(n.tagName,`MT`))return!0;n=n.parentElement}return!1},s=n=>{if(i(n))return;let r=Array.from(n.childNodes);for(let i of r){if(i.nodeType!==Node.TEXT_NODE)continue;let r=i;if(!a(r)||e.compareTagName(n.tagName,`ST`)||o(n))continue;let s=t.createElement(`ST`);n.insertBefore(s,r),s.appendChild(r)}for(let e of Array.from(n.childNodes))e.nodeType===Node.ELEMENT_NODE&&s(e)},c=e=>{if(i(e))return;let n=Array.from(e.childNodes);if(n.some(e=>e.nodeType===Node.ELEMENT_NODE)){for(let r of n){if(r.nodeType!==Node.TEXT_NODE)continue;let n=r;if(!a(n)||o(e))continue;let i=t.createElement(`ST`);e.insertBefore(i,n),i.appendChild(n)}for(let t of Array.from(e.childNodes))t.nodeType===Node.ELEMENT_NODE&&c(t)}};n?s(r):c(r)},i=(e,n,r,a,o,s)=>{for(let c=0;c<r.length;c++){let l=r[c],u=e(l);if(u.length>=a){if(l.nodeType==Node.TEXT_NODE){if(n.ownerDocument.getElementById(s))return;let e=u.slice(0,a)+o+u.slice(a),r=t.parseHtmlToFragment(l.ownerDocument,e);l.replaceWith(...Array.from(r.childNodes));break}i(e,n,l.childNodes,a,o,s)}else a-=u.length}},a=(t,r,a,o,s,c)=>{let l=e=>n.getPureTextContent(e,s,c)??``;if(!t)return;let u;if(t.tagIndex>=0){let{rootElement:n,tagName:r,tagIndex:i}=t;if(!n||!r)return;u=e.getElementByNameAndIndex(n,r,i)}else u=t;u&&(u.ownerDocument.getElementById(o)||i(l,u,u.childNodes,r,a,o))},o=(e,t,n)=>{let r=e.createDocumentFragment();for(let i of t){let t=e.createElement(n);t.textContent=i,r.appendChild(t)}return r},s=(t,n)=>{if(!(!t||!n)&&!t.originNodes){if(t.originNodes=Array.from(t.childNodes).map(e=>e.cloneNode(!0)),t.children.length==0)t.replaceChildren(o(t.ownerDocument,t.textContent??``,n));else{let r=e.getAllNodes(t);for(let e=0;e<r.length;e++){let i=r[e];if(i.nodeType==Node.TEXT_NODE){let e=t.ownerDocument.createElement(`k`);e.appendChild(o(t.ownerDocument,i.textContent??``,n)),i.parentElement.replaceChild(e,i)}}}}},c=e=>{if(!e)return;let t=e.originNodes;t&&e.replaceChildren(...t),e.originNodes=null};exports.insertElement=a,exports.recoverWrapperCharacters=c,exports.wrapFloatingTextNodes=r,exports.wrapperCharacters=s;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`}),require("../Constants.cjs");const e=require("./finder.cjs"),t=require("./dom.cjs"),n=require("./text.cjs");var r=(t,n)=>{let r=e.getDocumentBody(t);if(!r)return;let i=e=>{let t=e.tagName;if(t===`SCRIPT`||t===`STYLE`||t===`NOSCRIPT`||t===`IFRAME`||t===`OBJECT`||t===`EMBED`||t===`TEMPLATE`||t===`TEXTAREA`)return!0;let n=e.namespaceURI;return n===`http://www.w3.org/2000/svg`||n===`http://www.w3.org/1998/Math/MathML`},a=e=>!!(e.data&&/\S/.test(e.data)),o=t=>{let n=t;for(;n;){if(e.compareTagName(n.tagName,`MT`))return!0;n=n.parentElement}return!1},s=n=>{if(i(n))return;let r=Array.from(n.childNodes);for(let i of r){if(i.nodeType!==Node.TEXT_NODE)continue;let r=i;if(!a(r)||e.compareTagName(n.tagName,`ST`)||o(n))continue;let s=t.createElement(`ST`);n.insertBefore(s,r),s.appendChild(r)}for(let e of Array.from(n.childNodes))e.nodeType===Node.ELEMENT_NODE&&s(e)},c=e=>{if(i(e))return;let n=Array.from(e.childNodes);if(n.some(e=>e.nodeType===Node.ELEMENT_NODE)){for(let r of n){if(r.nodeType!==Node.TEXT_NODE)continue;let n=r;if(!a(n)||o(e))continue;let i=t.createElement(`ST`);e.insertBefore(i,n),i.appendChild(n)}for(let t of Array.from(e.childNodes))t.nodeType===Node.ELEMENT_NODE&&c(t)}};n?s(r):c(r)},i=(e,n,r,a,o,s)=>{for(let c=0;c<r.length;c++){let l=r[c],u=e(l);if(u.length>=a){if(l.nodeType==Node.TEXT_NODE){if(n.ownerDocument.getElementById(s))return;let e=u.slice(0,a)+o+u.slice(a),r=t.parseHtmlToFragment(l.ownerDocument,e);l.replaceWith(...Array.from(r.childNodes));break}i(e,n,l.childNodes,a,o,s)}else a-=u.length}},a=(t,r,a,o)=>{let s=e=>n.getPureTextContent(e)??``;if(!t)return;let c;if(t.tagIndex>=0){let{rootElement:n,tagName:r,tagIndex:i}=t;if(!n||!r)return;c=e.getElementByNameAndIndex(n,r,i)}else c=t;c&&(c.ownerDocument.getElementById(o)||i(s,c,c.childNodes,r,a,o))};exports.insertElement=a,exports.wrapFloatingTextNodes=r;
@@ -3,6 +3,4 @@ export declare const insertElement: (element: Element | {
3
3
  rootElement: Document | Element;
4
4
  tagName: string;
5
5
  tagIndex: number;
6
- }, textPostion: number, html: string, htmlId: string, removeHtmlWhitespace?: boolean, whitespaceRegex?: RegExp) => void;
7
- export declare const wrapperCharacters: (element: Element, tagName: string) => void;
8
- export declare const recoverWrapperCharacters: (element: Element) => void;
6
+ }, textPostion: number, html: string, htmlId: string) => void;
@@ -1,10 +1,10 @@
1
1
  import "../Constants.mjs";
2
- import { compareTagName as e, getAllNodes as t, getDocumentBody as n, getElementByNameAndIndex as r } from "./finder.mjs";
3
- import { parseHtmlToFragment as i } from "./dom.mjs";
4
- import { getPureTextContent as a } from "./text.mjs";
2
+ import { compareTagName as e, getDocumentBody as t, getElementByNameAndIndex as n } from "./finder.mjs";
3
+ import { parseHtmlToFragment as r } from "./dom.mjs";
4
+ import { getPureTextContent as i } from "./text.mjs";
5
5
  //#region kernal/html/manipulator.ts
6
- var o = (t, r) => {
7
- let i = n(t);
6
+ var a = (n, r) => {
7
+ let i = t(n);
8
8
  if (!i) return;
9
9
  let a = (e) => {
10
10
  let t = e.tagName;
@@ -18,80 +18,55 @@ var o = (t, r) => {
18
18
  n = n.parentElement;
19
19
  }
20
20
  return !1;
21
- }, c = (n) => {
22
- if (a(n)) return;
23
- let r = Array.from(n.childNodes);
21
+ }, c = (t) => {
22
+ if (a(t)) return;
23
+ let r = Array.from(t.childNodes);
24
24
  for (let i of r) {
25
25
  if (i.nodeType !== Node.TEXT_NODE) continue;
26
26
  let r = i;
27
- if (!o(r) || e(n.tagName, "ST") || s(n)) continue;
28
- let a = t.createElement("ST");
29
- n.insertBefore(a, r), a.appendChild(r);
27
+ if (!o(r) || e(t.tagName, "ST") || s(t)) continue;
28
+ let a = n.createElement("ST");
29
+ t.insertBefore(a, r), a.appendChild(r);
30
30
  }
31
- for (let e of Array.from(n.childNodes)) e.nodeType === Node.ELEMENT_NODE && c(e);
31
+ for (let e of Array.from(t.childNodes)) e.nodeType === Node.ELEMENT_NODE && c(e);
32
32
  }, l = (e) => {
33
33
  if (a(e)) return;
34
- let n = Array.from(e.childNodes);
35
- if (n.some((e) => e.nodeType === Node.ELEMENT_NODE)) {
36
- for (let r of n) {
34
+ let t = Array.from(e.childNodes);
35
+ if (t.some((e) => e.nodeType === Node.ELEMENT_NODE)) {
36
+ for (let r of t) {
37
37
  if (r.nodeType !== Node.TEXT_NODE) continue;
38
- let n = r;
39
- if (!o(n) || s(e)) continue;
40
- let i = t.createElement("ST");
41
- e.insertBefore(i, n), i.appendChild(n);
38
+ let t = r;
39
+ if (!o(t) || s(e)) continue;
40
+ let i = n.createElement("ST");
41
+ e.insertBefore(i, t), i.appendChild(t);
42
42
  }
43
43
  for (let t of Array.from(e.childNodes)) t.nodeType === Node.ELEMENT_NODE && l(t);
44
44
  }
45
45
  };
46
46
  r ? c(i) : l(i);
47
- }, s = (e, t, n, r, a, o) => {
47
+ }, o = (e, t, n, i, a, s) => {
48
48
  for (let c = 0; c < n.length; c++) {
49
49
  let l = n[c], u = e(l);
50
- if (u.length >= r) {
50
+ if (u.length >= i) {
51
51
  if (l.nodeType == Node.TEXT_NODE) {
52
- if (t.ownerDocument.getElementById(o)) return;
53
- let e = u.slice(0, r) + a + u.slice(r), n = i(l.ownerDocument, e);
52
+ if (t.ownerDocument.getElementById(s)) return;
53
+ let e = u.slice(0, i) + a + u.slice(i), n = r(l.ownerDocument, e);
54
54
  l.replaceWith(...Array.from(n.childNodes));
55
55
  break;
56
56
  }
57
- s(e, t, l.childNodes, r, a, o);
58
- } else r -= u.length;
57
+ o(e, t, l.childNodes, i, a, s);
58
+ } else i -= u.length;
59
59
  }
60
- }, c = (e, t, n, i, o, c) => {
61
- let l = (e) => a(e, o, c) ?? "";
60
+ }, s = (e, t, r, a) => {
61
+ let s = (e) => i(e) ?? "";
62
62
  if (!e) return;
63
- let u;
63
+ let c;
64
64
  if (e.tagIndex >= 0) {
65
- let { rootElement: t, tagName: n, tagIndex: i } = e;
66
- if (!t || !n) return;
67
- u = r(t, n, i);
68
- } else u = e;
69
- u && (u.ownerDocument.getElementById(i) || s(l, u, u.childNodes, t, n, i));
70
- }, l = (e, t, n) => {
71
- let r = e.createDocumentFragment();
72
- for (let i of t) {
73
- let t = e.createElement(n);
74
- t.textContent = i, r.appendChild(t);
75
- }
76
- return r;
77
- }, u = (e, n) => {
78
- if (!(!e || !n) && !e.originNodes) {
79
- if (e.originNodes = Array.from(e.childNodes).map((e) => e.cloneNode(!0)), e.children.length == 0) e.replaceChildren(l(e.ownerDocument, e.textContent ?? "", n));
80
- else {
81
- let r = t(e);
82
- for (let t = 0; t < r.length; t++) {
83
- let i = r[t];
84
- if (i.nodeType == Node.TEXT_NODE) {
85
- let t = e.ownerDocument.createElement("k");
86
- t.appendChild(l(e.ownerDocument, i.textContent ?? "", n)), i.parentElement.replaceChild(t, i);
87
- }
88
- }
89
- }
90
- }
91
- }, d = (e) => {
92
- if (!e) return;
93
- let t = e.originNodes;
94
- t && e.replaceChildren(...t), e.originNodes = null;
65
+ let { rootElement: t, tagName: r, tagIndex: i } = e;
66
+ if (!t || !r) return;
67
+ c = n(t, r, i);
68
+ } else c = e;
69
+ c && (c.ownerDocument.getElementById(a) || o(s, c, c.childNodes, t, r, a));
95
70
  };
96
71
  //#endregion
97
- export { c as insertElement, d as recoverWrapperCharacters, o as wrapFloatingTextNodes, u as wrapperCharacters };
72
+ export { s as insertElement, a as wrapFloatingTextNodes };
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../web/BrowserCapabilities.cjs");var t=new Set([`area`,`base`,`br`,`col`,`embed`,`hr`,`img`,`input`,`link`,`meta`,`param`,`source`,`track`,`wbr`]),n=e=>e.replace(/<([A-Za-z][\w:-]*)([^>]*)\/>/g,(e,n,r)=>t.has(n.toLowerCase())?e:`<${n}${r}></${n}>`),r=e=>/<\?xml[\s\S]*?\?>/i.test(e),i=e=>/xmlns\s*=\s*["']?http:\/\/www\.w3\.org\/1999\/xhtml["']?/i.test(e),a=e=>{let n=/<([A-Za-z][\w:-]*)[^>]*\/>/g,r;for(;(r=n.exec(e))!==null;)if(!t.has(r[1].toLowerCase()))return!0;return!1},o=e=>new DOMParser().parseFromString(n(e),`text/html`),s=e=>{let t=new DOMParser().parseFromString(e,`application/xhtml+xml`);return t.querySelector(`parsererror`)?{document:o(e),docType:`html`}:{document:t,docType:`xhtml`}},c=e=>{if(r(e)||i(e))return s(e);if(a(e)){let t=new DOMParser().parseFromString(e,`application/xml`);return t.querySelector(`parsererror`)?{document:o(e),docType:`html`}:{document:t,docType:`xml`}}return{document:o(e),docType:`html`}},l=e=>{let t=e.documentElement;if(!t)return new DOMParser().parseFromString(`<!DOCTYPE html><html></html>`,`text/html`);let r=n(`<!DOCTYPE html>${t.outerHTML}`);return new DOMParser().parseFromString(r,`text/html`)},u=(e,t)=>{let{document:n,docType:r}=c(e);return r===`html`||!t?n:l(n)},d=async(t,n)=>{let{document:r,docType:i}=c(t);if(await e.BrowserCapabilities.yieldToMain(),i===`html`||!n)return r;let a=l(r);return await e.BrowserCapabilities.yieldToMain(),a};exports.convertToHtml5Document=l,exports.getFormatDocument=u,exports.getFormatDocumentAsync=d;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../web/scheduler.cjs");var t=new Set([`area`,`base`,`br`,`col`,`embed`,`hr`,`img`,`input`,`link`,`meta`,`param`,`source`,`track`,`wbr`]),n=e=>e.replace(/<([A-Za-z][\w:-]*)([^>]*)\/>/g,(e,n,r)=>t.has(n.toLowerCase())?e:`<${n}${r}></${n}>`),r=e=>/<\?xml[\s\S]*?\?>/i.test(e),i=e=>/xmlns\s*=\s*["']?http:\/\/www\.w3\.org\/1999\/xhtml["']?/i.test(e),a=e=>{let n=/<([A-Za-z][\w:-]*)[^>]*\/>/g,r;for(;(r=n.exec(e))!==null;)if(!t.has(r[1].toLowerCase()))return!0;return!1},o=e=>new DOMParser().parseFromString(n(e),`text/html`),s=e=>{let t=new DOMParser().parseFromString(e,`application/xhtml+xml`);return t.querySelector(`parsererror`)?{document:o(e),docType:`html`}:{document:t,docType:`xhtml`}},c=e=>{if(r(e)||i(e))return s(e);if(a(e)){let t=new DOMParser().parseFromString(e,`application/xml`);return t.querySelector(`parsererror`)?{document:o(e),docType:`html`}:{document:t,docType:`xml`}}return{document:o(e),docType:`html`}},l=e=>{let t=e.documentElement;if(!t)return new DOMParser().parseFromString(`<!DOCTYPE html><html></html>`,`text/html`);let r=n(`<!DOCTYPE html>${t.outerHTML}`);return new DOMParser().parseFromString(r,`text/html`)},u=(e,t)=>{let{document:n,docType:r}=c(e);return r===`html`||!t?n:l(n)},d=async(t,n)=>{let{document:r,docType:i}=c(t);if(await e.yieldToMain(),i===`html`||!n)return r;let a=l(r);return await e.yieldToMain(),a};exports.convertToHtml5Document=l,exports.getFormatDocument=u,exports.getFormatDocumentAsync=d;
@@ -1,4 +1,4 @@
1
- import { BrowserCapabilities as e } from "../web/BrowserCapabilities.mjs";
1
+ import { yieldToMain as e } from "../web/scheduler.mjs";
2
2
  //#region kernal/html/parser.ts
3
3
  var t = /* @__PURE__ */ new Set([
4
4
  "area",
@@ -54,9 +54,9 @@ var t = /* @__PURE__ */ new Set([
54
54
  return r === "html" || !t ? n : l(n);
55
55
  }, d = async (t, n) => {
56
56
  let { document: r, docType: i } = c(t);
57
- if (await e.yieldToMain(), i === "html" || !n) return r;
57
+ if (await e(), i === "html" || !n) return r;
58
58
  let a = l(r);
59
- return await e.yieldToMain(), a;
59
+ return await e(), a;
60
60
  };
61
61
  //#endregion
62
62
  export { l as convertToHtml5Document, u as getFormatDocument, d as getFormatDocumentAsync };
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../common/uuid.cjs");require("../Constants.cjs");const t=require("./finder.cjs"),n=require("./types.cjs"),r=require("./text.cjs"),i=require("./parser.cjs");var a=new Map,o=new Map,s=()=>{o.clear(),a.clear()},c=e=>{let t=(e instanceof Document?e.body:e).childNodes;for(let e of t)if(e.nodeType==Node.TEXT_NODE&&e.textContent?.trim())return!0;return!1},l=(e,t)=>{let n=0;return!t||t.length==0||t.forEach(t=>{n+=e.getElementsByTagName(t).length}),n},u=(i,s,c)=>{let{removeHtmlWhitespace:l,whitespaceRegex:u,nonWhiteSpaceSymbolTagNames:d}=c??{},f=a.get(i);f||(f=e.getUuid(),a.set(i,f));let p=s.toString();u?.source&&(p+=u.source),d&&(p+=d.join(`-`)),p+=f;let m=i.ownerDocument?i:t.getDocumentBody(i),h=o.get(p);if(h&&h.length==m.getElementsByTagName(`*`).length+1)return h;let g=[],_=0,v=t.getAllNodes(m);for(let e=0;e<v.length;e++){let i=v[e];if(i.nodeType==Node.ELEMENT_NODE){let e=i;g.push(new n.SymbolOffset(e,_)),s==`custom`&&t.checkIsOtherNonWhiteSpaceSymbol(e.tagName,d)&&(_+=1)}else i.nodeType==Node.TEXT_NODE&&(_+=r.getPureInnerTextLength(i,l,u))}let y=g.reverse();return o.set(p,y),y},d=(e,t,n,r)=>{let i=u(e,n,r).find(e=>e.element==t);return i?i.offset:-1},f=(e,n,a)=>{let{removeHtmlWhitespace:o,whitespaceRegex:s,nonWhiteSpaceSymbolTagNames:c}=a??{},u;if(typeof e==`string`){let n=r.removeWhiteSpaceBetweenTags(e,o),a=i.getFormatDocument(n,!0);u=t.getDocumentBody(a)}else u=e.ownerDocument?e:t.getDocumentBody(e);let d=r.getPureInnerTextLength(u,o,s);if(n==`custom`){let e=l(u,c);d+=e}return d},p=(e,t,n,r)=>{t??=0;let i=f(e,n,r);return h(e,Math.ceil(i*t),n,!1,r)},m=(e,t,n,r,i)=>{let a=f(e,n,i);return g(e,t,n,r,i)/a},h=(e,i,a,o,s)=>{let{removeHtmlWhitespace:l,whitespaceRegex:d}=s??{},p=s?.nonWhiteSpaceSymbolTagNames??[],m=u(e,a,{...s,nonWhiteSpaceSymbolTagNames:p}),h=m.findIndex(e=>i>=e.offset);if(h<0)return null;let g=m[h];if(!g.element.getAttribute(`data-initial-index`)){let e=m.length-1;for(;h<e&&(h++,g=m[h],!g.element.getAttribute(`data-initial-index`)););}let _,v=i-g.offset,y=f(g.element,a,s);if(v==0&&o&&h<m.length-1&&(g=m[h+1]),v=i-g.offset,y=f(g.element,a,s),v>y){if(h==0)_=y;else{if(g=m.find(e=>e.element==g.element.parentElement),!g){if(c(e)){let t=e instanceof Document?e.body:e;g=new n.SymbolOffset(t,0)}else g=m[h-1]}if(!c(e)&&a==`char`&&t.compareTagName(g.element.tagName,`BODY`)){let e=m[h-1];e&&e.offset>=i&&(g=e)}}}if(!c(e)&&a==`char`&&t.compareTagName(g.element.tagName,`BODY`)){let e=g.element.children,t;for(let n=0;n<e.length;n++)if(!p.includes(e[n].tagName.toLowerCase())){t=e[n];break}if(t)return{element:t,index:0,offset:0}}if(_===void 0){if(_=i-g.offset,_<0)_=0;else if(a==`char`){y=r.getPureInnerTextLength(g.element,l,d);let e=0;for(;_>y&&e<256;){e++;let t=m.find(e=>e.element===g.element.parentElement);if(!t){_=y;break}if(g=t,y=r.getPureInnerTextLength(g.element,l,d),_=i-g.offset,_<0){_=0;break}}_>y&&(_=y)}}let b=t.getElementIndex(e,g.element);return b==-1&&t.compareTagName(g.element.tagName,`BODY`)&&(b=-2),{element:g.element,index:b,offset:_}},g=(e,n,r,i,a)=>{let o;if(n.tagIndex>=0){let r=n;o=t.getElementByNameAndIndex(e,r.tagName,r.tagIndex??0)}else o=n;return o?d(e,o,r,a)+(i??0):-1},_=(e,n,i,a)=>{let{removeHtmlWhitespace:o,whitespaceRegex:s}=a??{};if(!n)return-1;if(n.nodeType===Node.ELEMENT_NODE)return g(e,n,i,0,a);let c=e.ownerDocument?e:t.getDocumentBody(e),l=t.getAllNodes(c),u=0;for(let e=0;e<l.length;e++){let t=l[e];if(t===n)return u;t.nodeType===Node.TEXT_NODE&&(u+=r.getPureInnerTextLength(t,o,s))}return-1},v=class{constructor(e,t,n){this.element=e,this.index=t,this.offset=n}};exports.ElementPositionResult=v,exports.calcSymbolOffsets=u,exports.checkContainsPureTextNode=c,exports.clearSymbolOffsetCache=s,exports.getElementByPosition=h,exports.getElementByProgress=p,exports.getPositionByElement=g,exports.getPositionByNode=_,exports.getProgressByElement=m,exports.getTotalSymbolCount=f;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});var e=class{constructor(e,t,n){this.element=e,this.index=t,this.offset=n}};exports.ElementPositionResult=e;
@@ -1,21 +1,3 @@
1
- import { SymbolType, TextSymbolOptions } from '../types';
2
- import { SymbolOffset } from './types';
3
-
4
- export declare const clearSymbolOffsetCache: () => void;
5
- export declare const checkContainsPureTextNode: (rootElement: Document | HTMLElement) => boolean;
6
- export declare const calcSymbolOffsets: (rootElement: Document | Element, symbolType: SymbolType, options?: TextSymbolOptions) => SymbolOffset[];
7
- export declare const getTotalSymbolCount: (target: string | Document | Element, symbolType: SymbolType, options?: TextSymbolOptions) => number;
8
- export declare const getElementByProgress: (rootElement: Document | HTMLElement, progress: number, symbolType: SymbolType, options?: TextSymbolOptions) => ElementPositionResult;
9
- export declare const getProgressByElement: (rootElement: Document | HTMLElement, element: {
10
- tagName: string;
11
- tagIndex: number;
12
- } | Element, symbolType: SymbolType, internalSymbolOffset?: number, options?: TextSymbolOptions) => number;
13
- export declare const getElementByPosition: (rootElement: Document | HTMLElement, symbolPosition: number, symbolType: SymbolType, preferEnd?: boolean, options?: TextSymbolOptions) => ElementPositionResult;
14
- export declare const getPositionByElement: (rootElement: Document | Element, tag: {
15
- tagName: string;
16
- tagIndex: number;
17
- } | Element, symbolType: SymbolType, internalSymbolOffset?: number, options?: TextSymbolOptions) => number;
18
- export declare const getPositionByNode: (rootElement: Document | Element, node: Node, symbolType: SymbolType, options?: TextSymbolOptions) => number;
19
1
  export declare class ElementPositionResult {
20
2
  readonly element: Element;
21
3
  readonly index: number;