@foxycape/core 1.1.3 → 1.1.4

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 (501) hide show
  1. package/dist/_virtual/_rolldown/runtime.cjs +1 -0
  2. package/dist/core.css +2 -1
  3. package/dist/kernal/Constants.cjs +1 -1
  4. package/dist/kernal/Constants.mjs +4 -12
  5. package/dist/kernal/ContentRange.cjs +1 -1
  6. package/dist/kernal/ContentRange.mjs +4 -6
  7. package/dist/kernal/Context.cjs +1 -1
  8. package/dist/kernal/Context.mjs +31 -35
  9. package/dist/kernal/Debounce.cjs +1 -1
  10. package/dist/kernal/Debounce.mjs +31 -37
  11. package/dist/kernal/EventEmitter.cjs +1 -1
  12. package/dist/kernal/EventEmitter.mjs +58 -67
  13. package/dist/kernal/EventNames.cjs +1 -1
  14. package/dist/kernal/EventNames.mjs +178 -6
  15. package/dist/kernal/FileLoader.cjs +1 -1
  16. package/dist/kernal/FileLoader.d.ts +2 -0
  17. package/dist/kernal/FileLoader.mjs +91 -94
  18. package/dist/kernal/IDisposable.cjs +0 -1
  19. package/dist/kernal/IDisposable.mjs +0 -1
  20. package/dist/kernal/IDocument.cjs +1 -1
  21. package/dist/kernal/IDocument.mjs +12 -36
  22. package/dist/kernal/IDocumentsProvider.cjs +0 -1
  23. package/dist/kernal/IDocumentsProvider.mjs +0 -1
  24. package/dist/kernal/IEventEmitter.cjs +0 -1
  25. package/dist/kernal/IEventEmitter.mjs +0 -1
  26. package/dist/kernal/IFileParser.cjs +1 -1
  27. package/dist/kernal/IFileParser.mjs +12 -21
  28. package/dist/kernal/IRenderer.cjs +0 -1
  29. package/dist/kernal/IRenderer.mjs +0 -1
  30. package/dist/kernal/IRendererViewport.cjs +1 -1
  31. package/dist/kernal/IRendererViewport.mjs +4 -5
  32. package/dist/kernal/IStyleProvider.cjs +0 -1
  33. package/dist/kernal/IStyleProvider.mjs +0 -1
  34. package/dist/kernal/ISymbolCalclator.cjs +0 -1
  35. package/dist/kernal/ISymbolCalclator.mjs +0 -1
  36. package/dist/kernal/ITextDocument.cjs +0 -1
  37. package/dist/kernal/ITextDocument.mjs +0 -1
  38. package/dist/kernal/IThemeProvider.cjs +0 -1
  39. package/dist/kernal/IThemeProvider.mjs +0 -1
  40. package/dist/kernal/IWallpaperProvider.cjs +1 -1
  41. package/dist/kernal/IWallpaperProvider.mjs +7 -7
  42. package/dist/kernal/JsonConvert.cjs +1 -1
  43. package/dist/kernal/JsonConvert.mjs +51 -56
  44. package/dist/kernal/LifecycleHooks.cjs +0 -1
  45. package/dist/kernal/LifecycleHooks.mjs +0 -1
  46. package/dist/kernal/LocationState.cjs +1 -1
  47. package/dist/kernal/LocationState.mjs +4 -5
  48. package/dist/kernal/MediaTypeRegistry.cjs +1 -1
  49. package/dist/kernal/MediaTypeRegistry.mjs +39 -64
  50. package/dist/kernal/Metadata.cjs +1 -1
  51. package/dist/kernal/Metadata.mjs +7 -7
  52. package/dist/kernal/OpenOptions.cjs +1 -1
  53. package/dist/kernal/OpenOptions.mjs +4 -5
  54. package/dist/kernal/Options.cjs +1 -1
  55. package/dist/kernal/Options.mjs +39 -16
  56. package/dist/kernal/OptionsProvider.cjs +1 -1
  57. package/dist/kernal/OptionsProvider.mjs +22 -24
  58. package/dist/kernal/Reader.cjs +1 -1
  59. package/dist/kernal/Reader.mjs +238 -284
  60. package/dist/kernal/ReaderInfo.cjs +1 -1
  61. package/dist/kernal/ReaderInfo.mjs +25 -31
  62. package/dist/kernal/Theme.cjs +1 -1
  63. package/dist/kernal/Theme.mjs +80 -29
  64. package/dist/kernal/common/array.cjs +1 -1
  65. package/dist/kernal/common/array.mjs +11 -13
  66. package/dist/kernal/common/buffer.cjs +1 -1
  67. package/dist/kernal/common/buffer.mjs +32 -43
  68. package/dist/kernal/common/data.cjs +1 -1
  69. package/dist/kernal/common/data.mjs +20 -13
  70. package/dist/kernal/common/date.cjs +1 -1
  71. package/dist/kernal/common/date.mjs +40 -50
  72. package/dist/kernal/common/encoding.cjs +1 -1
  73. package/dist/kernal/common/encoding.mjs +29 -36
  74. package/dist/kernal/common/geometry.cjs +1 -1
  75. package/dist/kernal/common/geometry.mjs +28 -30
  76. package/dist/kernal/common/mimetypes.cjs +1 -1
  77. package/dist/kernal/common/mimetypes.mjs +99 -34
  78. package/dist/kernal/common/naming.cjs +1 -1
  79. package/dist/kernal/common/naming.mjs +4 -4
  80. package/dist/kernal/common/number.cjs +1 -1
  81. package/dist/kernal/common/number.mjs +42 -53
  82. package/dist/kernal/common/object.cjs +1 -1
  83. package/dist/kernal/common/object.mjs +20 -25
  84. package/dist/kernal/common/path.cjs +1 -1
  85. package/dist/kernal/common/path.mjs +45 -52
  86. package/dist/kernal/common/regex.cjs +1 -1
  87. package/dist/kernal/common/regex.mjs +15 -25
  88. package/dist/kernal/common/text.cjs +4 -4
  89. package/dist/kernal/common/text.mjs +67 -88
  90. package/dist/kernal/common/tree.cjs +1 -1
  91. package/dist/kernal/common/tree.mjs +13 -13
  92. package/dist/kernal/common/url.cjs +1 -1
  93. package/dist/kernal/common/url.mjs +78 -104
  94. package/dist/kernal/common/uuid.cjs +1 -1
  95. package/dist/kernal/common/uuid.mjs +24 -28
  96. package/dist/kernal/crypto/ICrypto.cjs +1 -1
  97. package/dist/kernal/crypto/ICrypto.mjs +4 -5
  98. package/dist/kernal/crypto/MD5.cjs +1 -1
  99. package/dist/kernal/crypto/MD5.mjs +26 -34
  100. package/dist/kernal/crypto/WebCrypto.cjs +1 -1
  101. package/dist/kernal/crypto/WebCrypto.mjs +77 -105
  102. package/dist/kernal/deepClone/buffer.cjs +1 -1
  103. package/dist/kernal/deepClone/buffer.mjs +7 -25
  104. package/dist/kernal/deepClone/clone.cjs +1 -1
  105. package/dist/kernal/deepClone/clone.mjs +52 -116
  106. package/dist/kernal/deepClone/collection.cjs +1 -1
  107. package/dist/kernal/deepClone/collection.mjs +43 -56
  108. package/dist/kernal/deepClone/detector.cjs +1 -1
  109. package/dist/kernal/deepClone/detector.mjs +8 -16
  110. package/dist/kernal/deepClone/index.cjs +1 -1
  111. package/dist/kernal/deepClone/index.mjs +24 -38
  112. package/dist/kernal/device/IDevice.cjs +1 -1
  113. package/dist/kernal/device/IDevice.d.ts +0 -2
  114. package/dist/kernal/device/IDevice.mjs +4 -5
  115. package/dist/kernal/device/IEnvironment.cjs +0 -1
  116. package/dist/kernal/device/IEnvironment.mjs +0 -1
  117. package/dist/kernal/device/IPlatform.cjs +0 -1
  118. package/dist/kernal/device/IPlatform.mjs +0 -1
  119. package/dist/kernal/device/WebBrowser.cjs +1 -1
  120. package/dist/kernal/device/WebBrowser.d.ts +0 -1
  121. package/dist/kernal/device/WebBrowser.mjs +54 -65
  122. package/dist/kernal/device/WebEnvironment.cjs +1 -1
  123. package/dist/kernal/device/WebEnvironment.mjs +21 -21
  124. package/dist/kernal/device/WebPlatform.cjs +1 -1
  125. package/dist/kernal/device/WebPlatform.mjs +48 -63
  126. package/dist/kernal/html/detector.cjs +1 -1
  127. package/dist/kernal/html/detector.mjs +38 -46
  128. package/dist/kernal/html/dom.cjs +1 -0
  129. package/dist/kernal/html/dom.d.ts +3 -0
  130. package/dist/kernal/html/dom.mjs +13 -0
  131. package/dist/kernal/html/events.cjs +1 -1
  132. package/dist/kernal/html/events.mjs +62 -67
  133. package/dist/kernal/html/finder.cjs +1 -1
  134. package/dist/kernal/html/finder.mjs +93 -134
  135. package/dist/kernal/html/geometry.cjs +1 -1
  136. package/dist/kernal/html/geometry.mjs +340 -384
  137. package/dist/kernal/html/image.cjs +1 -1
  138. package/dist/kernal/html/image.mjs +166 -181
  139. package/dist/kernal/html/injector.cjs +3 -3
  140. package/dist/kernal/html/injector.mjs +92 -109
  141. package/dist/kernal/html/manipulator.cjs +1 -1
  142. package/dist/kernal/html/manipulator.mjs +96 -116
  143. package/dist/kernal/html/parser.cjs +1 -1
  144. package/dist/kernal/html/parser.mjs +61 -60
  145. package/dist/kernal/html/position.cjs +1 -1
  146. package/dist/kernal/html/position.mjs +146 -193
  147. package/dist/kernal/html/selection.cjs +7 -7
  148. package/dist/kernal/html/selection.mjs +206 -238
  149. package/dist/kernal/html/style.cjs +1 -1
  150. package/dist/kernal/html/style.mjs +59 -79
  151. package/dist/kernal/html/text.cjs +2 -2
  152. package/dist/kernal/html/text.mjs +50 -65
  153. package/dist/kernal/html/types.cjs +1 -1
  154. package/dist/kernal/html/types.mjs +7 -7
  155. package/dist/kernal/i18n/DefaultLocale.cjs +1 -1
  156. package/dist/kernal/i18n/DefaultLocale.mjs +36 -41
  157. package/dist/kernal/i18n/ILocale.cjs +1 -1
  158. package/dist/kernal/i18n/ILocale.mjs +7 -14
  159. package/dist/kernal/index.cjs +1 -1
  160. package/dist/kernal/index.mjs +44 -127
  161. package/dist/kernal/logger/DefaultLogger.cjs +1 -1
  162. package/dist/kernal/logger/DefaultLogger.mjs +67 -67
  163. package/dist/kernal/logger/ILogger.cjs +1 -1
  164. package/dist/kernal/logger/ILogger.mjs +2 -5
  165. package/dist/kernal/logger/ILoggerFactory.cjs +0 -1
  166. package/dist/kernal/logger/ILoggerFactory.mjs +0 -1
  167. package/dist/kernal/logger/LogLevel.cjs +1 -1
  168. package/dist/kernal/logger/LogLevel.mjs +33 -11
  169. package/dist/kernal/logger/LoggerFactory.cjs +1 -1
  170. package/dist/kernal/logger/LoggerFactory.mjs +12 -12
  171. package/dist/kernal/logo-160x160.cjs +1 -0
  172. package/dist/kernal/logo-160x160.mjs +4 -0
  173. package/dist/kernal/mark/IMarker.cjs +0 -1
  174. package/dist/kernal/mark/IMarker.mjs +0 -1
  175. package/dist/kernal/mark/Mark.cjs +1 -1
  176. package/dist/kernal/mark/Mark.mjs +18 -19
  177. package/dist/kernal/mark/MarkConstants.cjs +1 -1
  178. package/dist/kernal/mark/MarkConstants.mjs +4 -7
  179. package/dist/kernal/mark/index.cjs +1 -1
  180. package/dist/kernal/mark/index.mjs +3 -10
  181. package/dist/kernal/mark/types.cjs +0 -1
  182. package/dist/kernal/mark/types.mjs +0 -1
  183. package/dist/kernal/nav/INavPointProvider.cjs +0 -1
  184. package/dist/kernal/nav/INavPointProvider.mjs +0 -1
  185. package/dist/kernal/nav/Nav.cjs +1 -1
  186. package/dist/kernal/nav/Nav.mjs +16 -18
  187. package/dist/kernal/navigator/INavPointNavigator.cjs +0 -1
  188. package/dist/kernal/navigator/INavPointNavigator.mjs +0 -1
  189. package/dist/kernal/navigator/INavigator.cjs +1 -1
  190. package/dist/kernal/navigator/INavigator.mjs +4 -5
  191. package/dist/kernal/navigator/IPagingNavigator.cjs +1 -1
  192. package/dist/kernal/navigator/IPagingNavigator.mjs +4 -8
  193. package/dist/kernal/network/HttpClient.cjs +1 -1
  194. package/dist/kernal/network/HttpClient.mjs +121 -146
  195. package/dist/kernal/network/IHttpClient.cjs +1 -1
  196. package/dist/kernal/network/IHttpClient.mjs +4 -5
  197. package/dist/kernal/pipelines/FileLoadPipeline.cjs +1 -1
  198. package/dist/kernal/pipelines/FileLoadPipeline.mjs +65 -84
  199. package/dist/kernal/pipelines/InputFormatter.cjs +1 -1
  200. package/dist/kernal/pipelines/InputFormatter.mjs +140 -160
  201. package/dist/kernal/pipelines/metadata.cjs +1 -1
  202. package/dist/kernal/pipelines/metadata.mjs +44 -49
  203. package/dist/kernal/plugins/PluginCore.cjs +1 -1
  204. package/dist/kernal/plugins/PluginCore.mjs +7 -8
  205. package/dist/kernal/plugins/PluginManager.cjs +1 -1
  206. package/dist/kernal/plugins/PluginManager.mjs +79 -105
  207. package/dist/kernal/plugins/PluginRegistry.cjs +1 -1
  208. package/dist/kernal/plugins/PluginRegistry.mjs +55 -91
  209. package/dist/kernal/plugins/keyboard/KeyboardPageTurning.cjs +1 -1
  210. package/dist/kernal/plugins/keyboard/KeyboardPageTurning.mjs +134 -133
  211. package/dist/kernal/plugins/mouse/WheelPageTurning.cjs +1 -1
  212. package/dist/kernal/plugins/mouse/WheelPageTurning.mjs +134 -127
  213. package/dist/kernal/progress/IProgressTracker.cjs +0 -1
  214. package/dist/kernal/progress/IProgressTracker.mjs +0 -1
  215. package/dist/kernal/progress/IReadingProgressStore.cjs +0 -1
  216. package/dist/kernal/progress/IReadingProgressStore.mjs +0 -1
  217. package/dist/kernal/progress/Progress.cjs +1 -1
  218. package/dist/kernal/progress/Progress.mjs +23 -40
  219. package/dist/kernal/progress/ReadingProgressStore.cjs +1 -1
  220. package/dist/kernal/progress/ReadingProgressStore.mjs +16 -16
  221. package/dist/kernal/services/ServiceCollection.cjs +1 -1
  222. package/dist/kernal/services/ServiceCollection.mjs +63 -88
  223. package/dist/kernal/services/docLoadLayer/HtmlLoadLayer.cjs +2 -2
  224. package/dist/kernal/services/docLoadLayer/HtmlLoadLayer.d.ts +1 -1
  225. package/dist/kernal/services/docLoadLayer/HtmlLoadLayer.mjs +63 -68
  226. package/dist/kernal/services/docLoadLayer/IHtmlLoadLayer.cjs +0 -1
  227. package/dist/kernal/services/docLoadLayer/IHtmlLoadLayer.mjs +0 -1
  228. package/dist/kernal/services/file/IFileDecrypter.cjs +1 -1
  229. package/dist/kernal/services/file/IFileDecrypter.mjs +11 -24
  230. package/dist/kernal/services/file/IFileProvider.cjs +0 -1
  231. package/dist/kernal/services/file/IFileProvider.mjs +0 -1
  232. package/dist/kernal/services/file/IFileUrlProvider.cjs +0 -1
  233. package/dist/kernal/services/file/IFileUrlProvider.mjs +0 -1
  234. package/dist/kernal/services/fileUrlParser/DefaultFileUrlParser.cjs +1 -1
  235. package/dist/kernal/services/fileUrlParser/DefaultFileUrlParser.mjs +109 -118
  236. package/dist/kernal/services/fileUrlParser/IFileUrlParser.cjs +1 -1
  237. package/dist/kernal/services/fileUrlParser/IFileUrlParser.mjs +7 -10
  238. package/dist/kernal/services/font/IFontProvider.cjs +1 -1
  239. package/dist/kernal/services/font/IFontProvider.mjs +19 -33
  240. package/dist/kernal/services/internalUrlBuilder/DefaultInternalUrlBuilder.cjs +1 -1
  241. package/dist/kernal/services/internalUrlBuilder/DefaultInternalUrlBuilder.mjs +14 -21
  242. package/dist/kernal/services/internalUrlBuilder/IInternalUrlBuilder.cjs +0 -1
  243. package/dist/kernal/services/internalUrlBuilder/IInternalUrlBuilder.mjs +0 -1
  244. package/dist/kernal/services/loading/DefaultLoading.cjs +1 -1
  245. package/dist/kernal/services/loading/DefaultLoading.mjs +46 -41
  246. package/dist/kernal/services/loading/ILoading.cjs +1 -1
  247. package/dist/kernal/services/loading/ILoading.mjs +4 -5
  248. package/dist/kernal/services/notifier/DefaultNotifier.cjs +1 -1
  249. package/dist/kernal/services/notifier/DefaultNotifier.mjs +63 -65
  250. package/dist/kernal/services/notifier/INotifier.cjs +0 -1
  251. package/dist/kernal/services/notifier/INotifier.mjs +0 -1
  252. package/dist/kernal/services/notifier/notyf/index.cjs +1 -1
  253. package/dist/kernal/services/notifier/notyf/index.mjs +5 -13
  254. package/dist/kernal/services/notifier/notyf/notyf.cjs +1 -1
  255. package/dist/kernal/services/notifier/notyf/notyf.mjs +79 -97
  256. package/dist/kernal/services/notifier/notyf/notyf.models.cjs +1 -1
  257. package/dist/kernal/services/notifier/notyf/notyf.models.mjs +39 -41
  258. package/dist/kernal/services/notifier/notyf/notyf.options.cjs +1 -1
  259. package/dist/kernal/services/notifier/notyf/notyf.options.mjs +30 -30
  260. package/dist/kernal/services/notifier/notyf/notyf.view.cjs +1 -1
  261. package/dist/kernal/services/notifier/notyf/notyf.view.mjs +146 -177
  262. package/dist/kernal/services/text/ITextDecoder.cjs +0 -1
  263. package/dist/kernal/services/text/ITextDecoder.mjs +0 -1
  264. package/dist/kernal/services/text/splitter.cjs +5 -5
  265. package/dist/kernal/services/text/splitter.mjs +184 -207
  266. package/dist/kernal/shape/ShapeSorter.cjs +1 -1
  267. package/dist/kernal/shape/ShapeSorter.mjs +77 -77
  268. package/dist/kernal/shape/SimpleMatrix.cjs +1 -1
  269. package/dist/kernal/shape/SimpleMatrix.mjs +20 -13
  270. package/dist/kernal/shape/definitions.cjs +0 -1
  271. package/dist/kernal/shape/definitions.mjs +0 -1
  272. package/dist/kernal/storage/IStorage.cjs +1 -1
  273. package/dist/kernal/storage/IStorage.mjs +4 -5
  274. package/dist/kernal/storage/WebStorage.cjs +1 -1
  275. package/dist/kernal/storage/WebStorage.mjs +164 -201
  276. package/dist/kernal/types.cjs +0 -1
  277. package/dist/kernal/types.mjs +0 -1
  278. package/dist/kernal/web/BrowserCapabilities.cjs +1 -1
  279. package/dist/kernal/web/BrowserCapabilities.mjs +167 -191
  280. package/dist/kernal/web/ua.cjs +1 -1
  281. package/dist/kernal/web/ua.mjs +5 -5
  282. package/dist/mediaTypes/adjacent.cjs +1 -1
  283. package/dist/mediaTypes/adjacent.mjs +41 -48
  284. package/dist/mediaTypes/base/fileParser/BaseFileParser.cjs +1 -1
  285. package/dist/mediaTypes/base/fileParser/BaseFileParser.mjs +184 -227
  286. package/dist/mediaTypes/base/index.cjs +1 -1
  287. package/dist/mediaTypes/base/index.mjs +4 -8
  288. package/dist/mediaTypes/base/renderer/BaseDocument.cjs +1 -1
  289. package/dist/mediaTypes/base/renderer/BaseDocument.mjs +41 -49
  290. package/dist/mediaTypes/base/renderer/BaseDocumentsProvider.cjs +1 -1
  291. package/dist/mediaTypes/base/renderer/BaseDocumentsProvider.mjs +64 -71
  292. package/dist/mediaTypes/base/renderer/eventKeys.cjs +1 -1
  293. package/dist/mediaTypes/base/renderer/eventKeys.mjs +7 -7
  294. package/dist/mediaTypes/html/HtmlOptions.cjs +1 -1
  295. package/dist/mediaTypes/html/HtmlOptions.mjs +34 -12
  296. package/dist/mediaTypes/html/HtmlSettings.cjs +1 -1
  297. package/dist/mediaTypes/html/HtmlSettings.mjs +43 -6
  298. package/dist/mediaTypes/html/fileParser/HtmlFileParser.cjs +1 -1
  299. package/dist/mediaTypes/html/fileParser/HtmlFileParser.mjs +52 -54
  300. package/dist/mediaTypes/html/fileParser/HtmlTextDocument.cjs +1 -1
  301. package/dist/mediaTypes/html/fileParser/HtmlTextDocument.mjs +52 -57
  302. package/dist/mediaTypes/html/fileParser/IHtmlFileParser.cjs +0 -1
  303. package/dist/mediaTypes/html/fileParser/IHtmlFileParser.mjs +0 -1
  304. package/dist/mediaTypes/html/renderer/HtmlRenderer.cjs +1 -1
  305. package/dist/mediaTypes/html/renderer/HtmlRenderer.mjs +89 -89
  306. package/dist/mediaTypes/html/renderer/IHtmlDocument.cjs +0 -1
  307. package/dist/mediaTypes/html/renderer/IHtmlDocument.mjs +0 -1
  308. package/dist/mediaTypes/html/renderer/IHtmlDocumentsProvider.cjs +0 -1
  309. package/dist/mediaTypes/html/renderer/IHtmlDocumentsProvider.mjs +0 -1
  310. package/dist/mediaTypes/html/renderer/IHtmlRenderer.cjs +0 -1
  311. package/dist/mediaTypes/html/renderer/IHtmlRenderer.mjs +0 -1
  312. package/dist/mediaTypes/html/renderer/IHtmlTextDocument.cjs +0 -1
  313. package/dist/mediaTypes/html/renderer/IHtmlTextDocument.mjs +0 -1
  314. package/dist/mediaTypes/html/renderer/document/HtmlDocument.cjs +1 -1
  315. package/dist/mediaTypes/html/renderer/document/HtmlDocument.mjs +183 -196
  316. package/dist/mediaTypes/html/renderer/document/HtmlDocumentResizeObserver.cjs +1 -1
  317. package/dist/mediaTypes/html/renderer/document/HtmlDocumentResizeObserver.mjs +28 -28
  318. package/dist/mediaTypes/html/renderer/document/HtmlPageCalculator.cjs +1 -1
  319. package/dist/mediaTypes/html/renderer/document/HtmlPageCalculator.mjs +77 -82
  320. package/dist/mediaTypes/html/renderer/document/HtmlSymbolCalclator.cjs +1 -1
  321. package/dist/mediaTypes/html/renderer/document/HtmlSymbolCalclator.mjs +87 -97
  322. package/dist/mediaTypes/html/renderer/documents/HtmlContainerBuilder.cjs +1 -1
  323. package/dist/mediaTypes/html/renderer/documents/HtmlContainerBuilder.mjs +49 -64
  324. package/dist/mediaTypes/html/renderer/documents/HtmlDocumentsIntersectionObserver.cjs +1 -1
  325. package/dist/mediaTypes/html/renderer/documents/HtmlDocumentsIntersectionObserver.mjs +29 -32
  326. package/dist/mediaTypes/html/renderer/documents/HtmlDocumentsPreloader.cjs +1 -1
  327. package/dist/mediaTypes/html/renderer/documents/HtmlDocumentsPreloader.mjs +76 -84
  328. package/dist/mediaTypes/html/renderer/documents/HtmlDocumentsProvider.cjs +1 -1
  329. package/dist/mediaTypes/html/renderer/documents/HtmlDocumentsProvider.d.ts +2 -1
  330. package/dist/mediaTypes/html/renderer/documents/HtmlDocumentsProvider.mjs +185 -208
  331. package/dist/mediaTypes/html/renderer/documents/HtmlDocumentsResizeObserver.cjs +1 -1
  332. package/dist/mediaTypes/html/renderer/documents/HtmlDocumentsResizeObserver.d.ts +2 -1
  333. package/dist/mediaTypes/html/renderer/documents/HtmlDocumentsResizeObserver.mjs +39 -41
  334. package/dist/mediaTypes/html/renderer/documents/IHtmlDocumentsPreloader.cjs +0 -1
  335. package/dist/mediaTypes/html/renderer/documents/IHtmlDocumentsPreloader.mjs +0 -1
  336. package/dist/mediaTypes/html/renderer/html/HtmlContentProcessor.cjs +1 -1
  337. package/dist/mediaTypes/html/renderer/html/HtmlContentProcessor.mjs +130 -182
  338. package/dist/mediaTypes/html/renderer/html/IHtmlContentProcessor.cjs +0 -1
  339. package/dist/mediaTypes/html/renderer/html/IHtmlContentProcessor.mjs +0 -1
  340. package/dist/mediaTypes/html/renderer/html/template.cjs +1 -1
  341. package/dist/mediaTypes/html/renderer/html/template.mjs +13 -16
  342. package/dist/mediaTypes/html/renderer/image/HtmlImageLoader.cjs +1 -1
  343. package/dist/mediaTypes/html/renderer/image/HtmlImageLoader.mjs +371 -447
  344. package/dist/mediaTypes/html/renderer/image/HtmlImageObserver.cjs +1 -1
  345. package/dist/mediaTypes/html/renderer/image/HtmlImageObserver.mjs +91 -103
  346. package/dist/mediaTypes/html/renderer/image/IHtmlImageLoader.cjs +0 -1
  347. package/dist/mediaTypes/html/renderer/image/IHtmlImageLoader.mjs +0 -1
  348. package/dist/mediaTypes/html/renderer/image/error-image.cjs +1 -0
  349. package/dist/mediaTypes/html/renderer/image/error-image.mjs +4 -0
  350. package/dist/mediaTypes/html/renderer/image/placeholder.cjs +1 -0
  351. package/dist/mediaTypes/html/renderer/image/placeholder.mjs +4 -0
  352. package/dist/mediaTypes/html/renderer/layout/HtmlLayoutMetrics.cjs +1 -1
  353. package/dist/mediaTypes/html/renderer/layout/HtmlLayoutMetrics.mjs +5 -6
  354. package/dist/mediaTypes/html/renderer/layout/HtmlRendererLayout.cjs +1 -1
  355. package/dist/mediaTypes/html/renderer/layout/HtmlRendererLayout.mjs +81 -90
  356. package/dist/mediaTypes/html/renderer/layout/HtmlRendererViewport.cjs +1 -1
  357. package/dist/mediaTypes/html/renderer/layout/HtmlRendererViewport.mjs +142 -169
  358. package/dist/mediaTypes/html/renderer/layout/IHtmlRendererLayout.cjs +0 -1
  359. package/dist/mediaTypes/html/renderer/layout/IHtmlRendererLayout.mjs +0 -1
  360. package/dist/mediaTypes/html/renderer/layout/ViewportCssVariableNames.cjs +1 -1
  361. package/dist/mediaTypes/html/renderer/layout/ViewportCssVariableNames.mjs +61 -6
  362. package/dist/mediaTypes/html/renderer/location/HtmlElementLocator.cjs +1 -1
  363. package/dist/mediaTypes/html/renderer/location/HtmlElementLocator.mjs +106 -118
  364. package/dist/mediaTypes/html/renderer/location/HtmlLocationCalculator.cjs +1 -1
  365. package/dist/mediaTypes/html/renderer/location/HtmlLocationCalculator.mjs +28 -34
  366. package/dist/mediaTypes/html/renderer/location/IHtmlElementLocator.cjs +0 -1
  367. package/dist/mediaTypes/html/renderer/location/IHtmlElementLocator.mjs +0 -1
  368. package/dist/mediaTypes/html/renderer/location/IHtmlLocationCalculator.cjs +0 -1
  369. package/dist/mediaTypes/html/renderer/location/IHtmlLocationCalculator.mjs +0 -1
  370. package/dist/mediaTypes/html/renderer/navigator/HtmlCoreNavigator.cjs +1 -1
  371. package/dist/mediaTypes/html/renderer/navigator/HtmlCoreNavigator.mjs +39 -42
  372. package/dist/mediaTypes/html/renderer/navigator/HtmlNavPointNavigator.cjs +1 -1
  373. package/dist/mediaTypes/html/renderer/navigator/HtmlNavPointNavigator.mjs +121 -125
  374. package/dist/mediaTypes/html/renderer/navigator/HtmlNavPointProvider.cjs +1 -1
  375. package/dist/mediaTypes/html/renderer/navigator/HtmlNavPointProvider.mjs +151 -178
  376. package/dist/mediaTypes/html/renderer/navigator/HtmlPagingNavigator.cjs +1 -1
  377. package/dist/mediaTypes/html/renderer/navigator/HtmlPagingNavigator.mjs +78 -85
  378. package/dist/mediaTypes/html/renderer/progress/HtmlProgressTracker.cjs +1 -1
  379. package/dist/mediaTypes/html/renderer/progress/HtmlProgressTracker.mjs +119 -137
  380. package/dist/mediaTypes/html/renderer/progress/IHtmlIProgressTracker.cjs +0 -1
  381. package/dist/mediaTypes/html/renderer/progress/IHtmlIProgressTracker.mjs +0 -1
  382. package/dist/mediaTypes/html/renderer/progress/adjacent.cjs +1 -1
  383. package/dist/mediaTypes/html/renderer/progress/adjacent.mjs +41 -48
  384. package/dist/mediaTypes/html/renderer/style/ContentCssVariables.cjs +1 -1
  385. package/dist/mediaTypes/html/renderer/style/ContentCssVariables.mjs +40 -9
  386. package/dist/mediaTypes/html/renderer/style/ContentLayoutCssVariableNames.cjs +1 -1
  387. package/dist/mediaTypes/html/renderer/style/ContentLayoutCssVariableNames.mjs +40 -6
  388. package/dist/mediaTypes/html/renderer/style/HtmlStyleProvider.cjs +1 -1
  389. package/dist/mediaTypes/html/renderer/style/HtmlStyleProvider.mjs +62 -74
  390. package/dist/mediaTypes/html/renderer/style/HtmlThemeApplier.cjs +1 -1
  391. package/dist/mediaTypes/html/renderer/style/HtmlThemeApplier.mjs +58 -68
  392. package/dist/mediaTypes/html/renderer/style/IHtmlThemeApplier.cjs +0 -1
  393. package/dist/mediaTypes/html/renderer/style/IHtmlThemeApplier.mjs +0 -1
  394. package/dist/mediaTypes/html/renderer/style/{html-content.css.mjs → html-content.cjs} +2 -5
  395. package/dist/mediaTypes/html/renderer/style/html-content.mjs +4 -0
  396. package/dist/mediaTypes/html/renderer/visibilityCandidates.cjs +1 -1
  397. package/dist/mediaTypes/html/renderer/visibilityCandidates.mjs +116 -111
  398. package/dist/mediaTypes/pdf/PdfOptions.cjs +1 -1
  399. package/dist/mediaTypes/pdf/PdfOptions.mjs +7 -7
  400. package/dist/mediaTypes/pdf/ensurePdfWebWorker.cjs +1 -1
  401. package/dist/mediaTypes/pdf/ensurePdfWebWorker.mjs +16 -26
  402. package/dist/mediaTypes/pdf/fileParser/IPdfFileParser.cjs +0 -1
  403. package/dist/mediaTypes/pdf/fileParser/IPdfFileParser.mjs +0 -1
  404. package/dist/mediaTypes/pdf/fileParser/PdfFileParser.cjs +1 -1
  405. package/dist/mediaTypes/pdf/fileParser/PdfFileParser.mjs +147 -170
  406. package/dist/mediaTypes/pdf/fileParser/PdfPasswordProvider.cjs +1 -1
  407. package/dist/mediaTypes/pdf/fileParser/PdfPasswordProvider.mjs +45 -52
  408. package/dist/mediaTypes/pdf/fileParser/PdfTextDocument.cjs +1 -1
  409. package/dist/mediaTypes/pdf/fileParser/PdfTextDocument.mjs +28 -28
  410. package/dist/mediaTypes/pdf/loadPdfDocument.cjs +1 -1
  411. package/dist/mediaTypes/pdf/loadPdfDocument.mjs +27 -23
  412. package/dist/mediaTypes/pdf/renderer/IPdfDocument.cjs +0 -1
  413. package/dist/mediaTypes/pdf/renderer/IPdfDocument.mjs +0 -1
  414. package/dist/mediaTypes/pdf/renderer/IPdfRenderer.cjs +0 -1
  415. package/dist/mediaTypes/pdf/renderer/IPdfRenderer.mjs +0 -1
  416. package/dist/mediaTypes/pdf/renderer/IPdfSvgBuilder.cjs +0 -1
  417. package/dist/mediaTypes/pdf/renderer/IPdfSvgBuilder.mjs +0 -1
  418. package/dist/mediaTypes/pdf/renderer/MultiPdfViewer.cjs +1 -1
  419. package/dist/mediaTypes/pdf/renderer/MultiPdfViewer.mjs +323 -625
  420. package/dist/mediaTypes/pdf/renderer/PdfCoreNavigator.cjs +1 -1
  421. package/dist/mediaTypes/pdf/renderer/PdfCoreNavigator.mjs +18 -18
  422. package/dist/mediaTypes/pdf/renderer/PdfCssVariableNames.cjs +1 -1
  423. package/dist/mediaTypes/pdf/renderer/PdfCssVariableNames.mjs +25 -6
  424. package/dist/mediaTypes/pdf/renderer/PdfDocument.cjs +1 -1
  425. package/dist/mediaTypes/pdf/renderer/PdfDocument.mjs +61 -70
  426. package/dist/mediaTypes/pdf/renderer/PdfNavPointNavigator.cjs +1 -1
  427. package/dist/mediaTypes/pdf/renderer/PdfNavPointNavigator.mjs +118 -122
  428. package/dist/mediaTypes/pdf/renderer/PdfNavPointProvider.cjs +1 -1
  429. package/dist/mediaTypes/pdf/renderer/PdfNavPointProvider.mjs +85 -111
  430. package/dist/mediaTypes/pdf/renderer/PdfNoopL10n.cjs +1 -1
  431. package/dist/mediaTypes/pdf/renderer/PdfNoopL10n.mjs +7 -10
  432. package/dist/mediaTypes/pdf/renderer/PdfPagingNavigator.cjs +1 -1
  433. package/dist/mediaTypes/pdf/renderer/PdfPagingNavigator.mjs +29 -32
  434. package/dist/mediaTypes/pdf/renderer/PdfRenderer.cjs +1 -1
  435. package/dist/mediaTypes/pdf/renderer/PdfRenderer.mjs +76 -79
  436. package/dist/mediaTypes/pdf/renderer/PdfSvgBuilder.cjs +1 -1
  437. package/dist/mediaTypes/pdf/renderer/PdfSvgBuilder.mjs +269 -236
  438. package/dist/mediaTypes/pdf/renderer/PdfViewerBuilder.cjs +1 -1
  439. package/dist/mediaTypes/pdf/renderer/PdfViewerBuilder.mjs +33 -36
  440. package/dist/mediaTypes/pdf/renderer/documents/IPdfDocumentsProvider.cjs +0 -1
  441. package/dist/mediaTypes/pdf/renderer/documents/IPdfDocumentsProvider.mjs +0 -1
  442. package/dist/mediaTypes/pdf/renderer/documents/PdfDocumentsProvider.cjs +2 -2
  443. package/dist/mediaTypes/pdf/renderer/documents/PdfDocumentsProvider.mjs +243 -290
  444. package/dist/mediaTypes/pdf/renderer/input/PdfDocumentEvents.cjs +1 -1
  445. package/dist/mediaTypes/pdf/renderer/input/PdfDocumentEvents.mjs +43 -50
  446. package/dist/mediaTypes/pdf/renderer/input/PdfKeyboardController.cjs +1 -1
  447. package/dist/mediaTypes/pdf/renderer/input/PdfKeyboardController.mjs +84 -105
  448. package/dist/mediaTypes/pdf/renderer/input/PdfViewerEvents.cjs +1 -1
  449. package/dist/mediaTypes/pdf/renderer/input/PdfViewerEvents.mjs +44 -59
  450. package/dist/mediaTypes/pdf/renderer/input/PdfZoomInputController.cjs +1 -1
  451. package/dist/mediaTypes/pdf/renderer/input/PdfZoomInputController.mjs +138 -177
  452. package/dist/mediaTypes/pdf/renderer/layout/IPdfRendererLayout.cjs +0 -1
  453. package/dist/mediaTypes/pdf/renderer/layout/IPdfRendererLayout.mjs +0 -1
  454. package/dist/mediaTypes/pdf/renderer/layout/PdfRendererLayout.cjs +1 -1
  455. package/dist/mediaTypes/pdf/renderer/layout/PdfRendererLayout.mjs +36 -42
  456. package/dist/mediaTypes/pdf/renderer/layout/PdfRendererViewport.cjs +1 -1
  457. package/dist/mediaTypes/pdf/renderer/layout/PdfRendererViewport.mjs +75 -82
  458. package/dist/mediaTypes/pdf/renderer/location/IPdfDestinationBuilder.cjs +0 -1
  459. package/dist/mediaTypes/pdf/renderer/location/IPdfDestinationBuilder.mjs +0 -1
  460. package/dist/mediaTypes/pdf/renderer/location/PdfDestinationBuilder.cjs +1 -1
  461. package/dist/mediaTypes/pdf/renderer/location/PdfDestinationBuilder.mjs +18 -21
  462. package/dist/mediaTypes/pdf/renderer/progress/IPdfProgressTracker.cjs +0 -1
  463. package/dist/mediaTypes/pdf/renderer/progress/IPdfProgressTracker.mjs +0 -1
  464. package/dist/mediaTypes/pdf/renderer/progress/PdfProgressTracker.cjs +1 -1
  465. package/dist/mediaTypes/pdf/renderer/progress/PdfProgressTracker.mjs +54 -68
  466. package/dist/mediaTypes/pdf/renderer/style/IPdfThemeApplier.cjs +0 -1
  467. package/dist/mediaTypes/pdf/renderer/style/IPdfThemeApplier.mjs +0 -1
  468. package/dist/mediaTypes/pdf/renderer/style/PdfThemeApplier.cjs +4 -4
  469. package/dist/mediaTypes/pdf/renderer/style/PdfThemeApplier.mjs +15 -15
  470. package/dist/mediaTypes/pdf/renderer/zoom/IPdfScalable.cjs +0 -1
  471. package/dist/mediaTypes/pdf/renderer/zoom/IPdfScalable.mjs +0 -1
  472. package/dist/mediaTypes/pdf/renderer/zoom/PdfScalable.cjs +1 -1
  473. package/dist/mediaTypes/pdf/renderer/zoom/PdfScalable.mjs +46 -41
  474. package/dist/mediaTypes/pdf/shared/geometry/index.cjs +1 -1
  475. package/dist/mediaTypes/pdf/shared/geometry/index.mjs +3 -13
  476. package/dist/mediaTypes/pdf/shared/geometry/selectionToFixedContentRange.cjs +1 -1
  477. package/dist/mediaTypes/pdf/shared/geometry/selectionToFixedContentRange.mjs +45 -45
  478. package/dist/mediaTypes/pdf/shared/geometry/textRects.cjs +1 -1
  479. package/dist/mediaTypes/pdf/shared/geometry/textRects.mjs +219 -263
  480. package/dist/mediaTypes/pdf/shared/range.cjs +1 -1
  481. package/dist/mediaTypes/pdf/shared/range.mjs +11 -14
  482. package/dist/mediaTypes/pdf/shared/selection/IPdfSelection.cjs +0 -1
  483. package/dist/mediaTypes/pdf/shared/selection/IPdfSelection.mjs +0 -1
  484. package/dist/mediaTypes/pdf/shared/selection/PdfSelection.cjs +2 -2
  485. package/dist/mediaTypes/pdf/shared/selection/PdfSelection.mjs +214 -236
  486. package/dist/mediaTypes/pdf/shared/selection/index.cjs +1 -1
  487. package/dist/mediaTypes/pdf/shared/selection/index.mjs +3 -6
  488. package/dist/mediaTypes/pdf/shared/text/bbox.cjs +1 -1
  489. package/dist/mediaTypes/pdf/shared/text/bbox.mjs +130 -142
  490. package/dist/mediaTypes/pdf/shared/text/pageText.cjs +5 -5
  491. package/dist/mediaTypes/pdf/shared/text/pageText.mjs +168 -185
  492. package/global.d.ts +17 -0
  493. package/package.json +19 -12
  494. package/types.d.ts +13 -0
  495. package/dist/kernal/logo-160x160.png.cjs +0 -1
  496. package/dist/kernal/logo-160x160.png.mjs +0 -4
  497. package/dist/mediaTypes/html/renderer/image/error-image.png.cjs +0 -1
  498. package/dist/mediaTypes/html/renderer/image/error-image.png.mjs +0 -4
  499. package/dist/mediaTypes/html/renderer/image/placeholder.png.cjs +0 -1
  500. package/dist/mediaTypes/html/renderer/image/placeholder.png.mjs +0 -4
  501. package/dist/mediaTypes/html/renderer/style/html-content.css.cjs +0 -316
@@ -1,72 +1,65 @@
1
- import { isNumber as u } from "../../../kernal/common/number.mjs";
2
- import { getUrlFragment as m } from "../../../kernal/common/url.mjs";
3
- import { createElement as d } from "../../../kernal/html/injector.mjs";
4
- class g {
5
- constructor(e, s) {
6
- this.owner = e, this.fileParser = s, this.documentItems = [], this.documentPreprocessHandlers = [], this.documentPostprocessHandlers = [], this.addDocumentPreprocess = (t) => (this.documentPreprocessHandlers.push(t), () => this.removeDocumentPreprocess(t)), this.removeDocumentPreprocess = (t) => {
7
- const n = this.documentPreprocessHandlers.indexOf(t);
8
- n >= 0 && this.documentPreprocessHandlers.splice(n, 1);
9
- }, this.addDocumentPostprocess = (t) => (this.documentPostprocessHandlers.push(t), () => this.removeDocumentPostprocess(t)), this.removeDocumentPostprocess = (t) => {
10
- const n = this.documentPostprocessHandlers.indexOf(t);
11
- n >= 0 && this.documentPostprocessHandlers.splice(n, 1);
12
- }, this.reload = async () => {
13
- const t = this.owner.context.currentLocation;
14
- t && await this.load(t, !0);
15
- };
16
- }
17
- /** Provider-level preprocess handlers applied to every document (before doc-local ones). */
18
- get documentPreprocesses() {
19
- return this.documentPreprocessHandlers;
20
- }
21
- /** Provider-level postprocess handlers applied to every document (before doc-local ones). */
22
- get documentPostprocesses() {
23
- return this.documentPostprocessHandlers;
24
- }
25
- async initialize(e) {
26
- const s = await this.fileParser.getSpineFiles(), t = s.length, n = e.ownerDocument.createDocumentFragment();
27
- for (let o = 0; o < t; o++) {
28
- const r = s[o], c = d(e.ownerDocument, "div", "", {
29
- "doc-url": r.url
30
- });
31
- n.appendChild(c);
32
- const i = await this.createDocument(c, r, o);
33
- this.documentItems.push(i);
34
- }
35
- e.appendChild(n);
36
- }
37
- getDocuments() {
38
- return this.documentItems;
39
- }
40
- getLoadedDocuments() {
41
- return this.documentItems;
42
- }
43
- getVisibleDocuments() {
44
- return this.documentItems;
45
- }
46
- getFirstVisibleDocument() {
47
- const e = this.getVisibleDocuments();
48
- return e.length == 0 ? null : e[0];
49
- }
50
- getLastVisibleDocument() {
51
- const e = this.getVisibleDocuments();
52
- return e.length == 0 ? null : e[e.length - 1];
53
- }
54
- getDocument(e) {
55
- if (!e)
56
- return null;
57
- const s = this.getDocuments();
58
- if (u(e))
59
- return s[parseInt(e)];
60
- const n = m(e)?.urlWithoutAnchor;
61
- return n ? s.find((o) => o.url == n) : null;
62
- }
63
- async dispose() {
64
- const e = this.getLoadedDocuments();
65
- for (let s = 0; s < e.length; s++)
66
- await e[s].dispose();
67
- this.documentItems = [], this.documentPreprocessHandlers.length = 0, this.documentPostprocessHandlers.length = 0;
68
- }
69
- }
70
- export {
71
- g as BaseDocumentsProvider
1
+ import { getUrlFragment as e } from "../../../kernal/common/url.mjs";
2
+ import { isNumber as t } from "../../../kernal/common/number.mjs";
3
+ import { createElement as n } from "../../../kernal/html/injector.mjs";
4
+ //#region mediaTypes/base/renderer/BaseDocumentsProvider.ts
5
+ var r = class {
6
+ constructor(e, t) {
7
+ this.owner = e, this.fileParser = t, this.documentItems = [], this.documentPreprocessHandlers = [], this.documentPostprocessHandlers = [], this.addDocumentPreprocess = (e) => (this.documentPreprocessHandlers.push(e), () => this.removeDocumentPreprocess(e)), this.removeDocumentPreprocess = (e) => {
8
+ let t = this.documentPreprocessHandlers.indexOf(e);
9
+ t >= 0 && this.documentPreprocessHandlers.splice(t, 1);
10
+ }, this.addDocumentPostprocess = (e) => (this.documentPostprocessHandlers.push(e), () => this.removeDocumentPostprocess(e)), this.removeDocumentPostprocess = (e) => {
11
+ let t = this.documentPostprocessHandlers.indexOf(e);
12
+ t >= 0 && this.documentPostprocessHandlers.splice(t, 1);
13
+ }, this.reload = async () => {
14
+ let e = this.owner.context.currentLocation;
15
+ e && await this.load(e, !0);
16
+ };
17
+ }
18
+ get documentPreprocesses() {
19
+ return this.documentPreprocessHandlers;
20
+ }
21
+ get documentPostprocesses() {
22
+ return this.documentPostprocessHandlers;
23
+ }
24
+ async initialize(e) {
25
+ let t = await this.fileParser.getSpineFiles(), r = t.length, i = e.ownerDocument.createDocumentFragment();
26
+ for (let a = 0; a < r; a++) {
27
+ let r = t[a], o = n(e.ownerDocument, "div", "", { "doc-url": r.url });
28
+ i.appendChild(o);
29
+ let s = await this.createDocument(o, r, a);
30
+ this.documentItems.push(s);
31
+ }
32
+ e.appendChild(i);
33
+ }
34
+ getDocuments() {
35
+ return this.documentItems;
36
+ }
37
+ getLoadedDocuments() {
38
+ return this.documentItems;
39
+ }
40
+ getVisibleDocuments() {
41
+ return this.documentItems;
42
+ }
43
+ getFirstVisibleDocument() {
44
+ let e = this.getVisibleDocuments();
45
+ return e.length == 0 ? null : e[0];
46
+ }
47
+ getLastVisibleDocument() {
48
+ let e = this.getVisibleDocuments();
49
+ return e.length == 0 ? null : e[e.length - 1];
50
+ }
51
+ getDocument(n) {
52
+ if (!n) return null;
53
+ let r = this.getDocuments();
54
+ if (t(n)) return r[parseInt(n)];
55
+ let i = e(n)?.urlWithoutAnchor;
56
+ return i ? r.find((e) => e.url == i) : null;
57
+ }
58
+ async dispose() {
59
+ let e = this.getLoadedDocuments();
60
+ for (let t = 0; t < e.length; t++) await e[t].dispose();
61
+ this.documentItems = [], this.documentPreprocessHandlers.length = 0, this.documentPostprocessHandlers.length = 0;
62
+ }
72
63
  };
64
+ //#endregion
65
+ export { r as BaseDocumentsProvider };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("../../../kernal/EventNames.cjs"),o=(n=!0)=>{const e=new Map;return n&&e.set("selectionchange",t.EventNames.DocumentSelectionChange),e.set("dblclick",t.EventNames.DocumentDblClick),e.set("click",t.EventNames.DocumentClick),e.set("pointerdown",t.EventNames.Pointerdown),e.set("pointermove",t.EventNames.Pointermove),e.set("pointerup",t.EventNames.Pointerup),e.set("pointercancel",t.EventNames.Pointercancel),e.set("touchend",t.EventNames.DocumentTouchEnd),e.set("touchstart",t.EventNames.DocumentTouchStart),e.set("touchcancel",t.EventNames.DocumentTouchCancel),e.set("touchmove",t.EventNames.DocumentTouchMove),e.set("mousedown",t.EventNames.DocumentMouseDown),e.set("mousemove",t.EventNames.DocumentMouseMove),e.set("mouseenter",t.EventNames.DocumentMouseEnter),e.set("mouseleave",t.EventNames.DocumentMouseLeave),e.set("mouseup",t.EventNames.DocumentMouseUp),e.set("mouseover",t.EventNames.DocumentMouseOver),e.set("mouseout",t.EventNames.DocumentMouseOut),e.set("keydown",t.EventNames.DocumentKeyDown),e.set("blur",t.EventNames.DocumentBlur),e.set("focus",t.EventNames.DocumentFocus),e};exports.getEventKeyMap=o;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../../kernal/EventNames.cjs");var t=(t=!0)=>{let n=new Map;return t&&n.set(`selectionchange`,e.EventNames.DocumentSelectionChange),n.set(`dblclick`,e.EventNames.DocumentDblClick),n.set(`click`,e.EventNames.DocumentClick),n.set(`pointerdown`,e.EventNames.Pointerdown),n.set(`pointermove`,e.EventNames.Pointermove),n.set(`pointerup`,e.EventNames.Pointerup),n.set(`pointercancel`,e.EventNames.Pointercancel),n.set(`touchend`,e.EventNames.DocumentTouchEnd),n.set(`touchstart`,e.EventNames.DocumentTouchStart),n.set(`touchcancel`,e.EventNames.DocumentTouchCancel),n.set(`touchmove`,e.EventNames.DocumentTouchMove),n.set(`mousedown`,e.EventNames.DocumentMouseDown),n.set(`mousemove`,e.EventNames.DocumentMouseMove),n.set(`mouseenter`,e.EventNames.DocumentMouseEnter),n.set(`mouseleave`,e.EventNames.DocumentMouseLeave),n.set(`mouseup`,e.EventNames.DocumentMouseUp),n.set(`mouseover`,e.EventNames.DocumentMouseOver),n.set(`mouseout`,e.EventNames.DocumentMouseOut),n.set(`keydown`,e.EventNames.DocumentKeyDown),n.set(`blur`,e.EventNames.DocumentBlur),n.set(`focus`,e.EventNames.DocumentFocus),n};exports.getEventKeyMap=t;
@@ -1,8 +1,8 @@
1
- import { EventNames as o } from "../../../kernal/EventNames.mjs";
2
- const u = (t = !0) => {
3
- const e = /* @__PURE__ */ new Map();
4
- return t && e.set("selectionchange", o.DocumentSelectionChange), e.set("dblclick", o.DocumentDblClick), e.set("click", o.DocumentClick), e.set("pointerdown", o.Pointerdown), e.set("pointermove", o.Pointermove), e.set("pointerup", o.Pointerup), e.set("pointercancel", o.Pointercancel), e.set("touchend", o.DocumentTouchEnd), e.set("touchstart", o.DocumentTouchStart), e.set("touchcancel", o.DocumentTouchCancel), e.set("touchmove", o.DocumentTouchMove), e.set("mousedown", o.DocumentMouseDown), e.set("mousemove", o.DocumentMouseMove), e.set("mouseenter", o.DocumentMouseEnter), e.set("mouseleave", o.DocumentMouseLeave), e.set("mouseup", o.DocumentMouseUp), e.set("mouseover", o.DocumentMouseOver), e.set("mouseout", o.DocumentMouseOut), e.set("keydown", o.DocumentKeyDown), e.set("blur", o.DocumentBlur), e.set("focus", o.DocumentFocus), e;
5
- };
6
- export {
7
- u as getEventKeyMap
1
+ import { EventNames as e } from "../../../kernal/EventNames.mjs";
2
+ //#region mediaTypes/base/renderer/eventKeys.ts
3
+ var t = (t = !0) => {
4
+ let n = /* @__PURE__ */ new Map();
5
+ return t && n.set("selectionchange", e.DocumentSelectionChange), n.set("dblclick", e.DocumentDblClick), n.set("click", e.DocumentClick), n.set("pointerdown", e.Pointerdown), n.set("pointermove", e.Pointermove), n.set("pointerup", e.Pointerup), n.set("pointercancel", e.Pointercancel), n.set("touchend", e.DocumentTouchEnd), n.set("touchstart", e.DocumentTouchStart), n.set("touchcancel", e.DocumentTouchCancel), n.set("touchmove", e.DocumentTouchMove), n.set("mousedown", e.DocumentMouseDown), n.set("mousemove", e.DocumentMouseMove), n.set("mouseenter", e.DocumentMouseEnter), n.set("mouseleave", e.DocumentMouseLeave), n.set("mouseup", e.DocumentMouseUp), n.set("mouseover", e.DocumentMouseOver), n.set("mouseout", e.DocumentMouseOut), n.set("keydown", e.DocumentKeyDown), n.set("blur", e.DocumentBlur), n.set("focus", e.DocumentFocus), n;
8
6
  };
7
+ //#endregion
8
+ export { t as getEventKeyMap };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("../../kernal/Constants.cjs");class o{constructor(){this.writingMode="horizontal-tb",this.direction="ltr",this.flipMode="scroll",this.columns=1,this.autoColumns=!0,this.forceScroll=!1,this.flipPageStyle="none",this.preventParentElementScroll=!1,this.maxColumns=10,this.columnGap=40,this.enableColumnRule=!0,this.columnWidth=768,this.multiColumnWidthFactor=.8,this.enableRedirectAnimation=!0,this.contentWrapperMarginBottom=10,this.contentWrapperMarginTop=10,this.contentWrapperBorderRadius=3,this.enableContentWrapperBorderRadius=!0,this.contentsShadowMargin=10,this.preloadFileCount=1,this.singleDocMaxSize=50*1024*1024,this.maxImageWidthRatio=.7,this.maxImageHeightRatio=.7,this.fontFamily="'Roboto','Helvetica Neue', 'Helvetica', 'Arial','Microsoft YaHei','PingFang SC', 'sans-serif'",this.fontWeight="normal",this.lighterFontWeight="300",this.fontSize="18px",this.preferSrcdoc=!1,this.nonWhiteSpaceSymbolTagNames=["object","svg","embed","audio","video","canvas","img"],this.htmlBlockTags=[""+t.MTTAG.toLowerCase(),"h1","h2","h3","h4","h5","h6","div","p","ol","ul","li","dl","dt","dd","hr","center","pre","table","tr","td","thead","tbody","tfoot","caption","address","fieldset","form","legend","noscript","noframes","style","script","link","object","svg","embed","audio","video","canvas","img"],this.htmlInlineTags=[""+t.STTAG.toLowerCase(),"a","abbr","acronym","b","bdo","big","br","cite","code","dfn","em","font","i","input","kbd","label","q","s","samp","select","small","span","strike","strong","sub","sup","textarea","tt","u"],this.symbolType="custom",this.whitespaceRegex=t.whitespaceRegex,this.removeHtmlWhitespace=!0,this.forceRemoveHtmlChar32BetweenTags=!1,this.customTags=["t","tn","n"],this.htmlExtensions=[".html",".xhtml",".xml"]}}const i=["maxColumnWidth","maxScrollContentWidth","enableAutoFitPageWidth","maxColumns","contentWrapperMarginBottom","contentWrapperBorderRadius","enableContentWrapperBorderRadius","contentsShadowMargin"],s=e=>i.includes(e);exports.HtmlOptionKeys=i;exports.HtmlOptions=o;exports.isHtmlOptionKey=s;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../kernal/Constants.cjs");var t=class{constructor(){this.writingMode=`horizontal-tb`,this.direction=`ltr`,this.flipMode=`scroll`,this.columns=1,this.autoColumns=!0,this.forceScroll=!1,this.flipPageStyle=`none`,this.preventParentElementScroll=!1,this.maxColumns=10,this.columnGap=40,this.enableColumnRule=!0,this.columnWidth=768,this.multiColumnWidthFactor=.8,this.enableRedirectAnimation=!0,this.contentWrapperMarginBottom=10,this.contentWrapperMarginTop=10,this.contentWrapperBorderRadius=3,this.enableContentWrapperBorderRadius=!0,this.contentsShadowMargin=10,this.preloadFileCount=1,this.singleDocMaxSize=52428800,this.maxImageWidthRatio=.7,this.maxImageHeightRatio=.7,this.fontFamily=`'Roboto','Helvetica Neue', 'Helvetica', 'Arial','Microsoft YaHei','PingFang SC', 'sans-serif'`,this.fontWeight=`normal`,this.lighterFontWeight=`300`,this.fontSize=`18px`,this.preferSrcdoc=!1,this.nonWhiteSpaceSymbolTagNames=[`object`,`svg`,`embed`,`audio`,`video`,`canvas`,`img`],this.htmlBlockTags=`mt.h1.h2.h3.h4.h5.h6.div.p.ol.ul.li.dl.dt.dd.hr.center.pre.table.tr.td.thead.tbody.tfoot.caption.address.fieldset.form.legend.noscript.noframes.style.script.link.object.svg.embed.audio.video.canvas.img`.split(`.`),this.htmlInlineTags=`st.a.abbr.acronym.b.bdo.big.br.cite.code.dfn.em.font.i.input.kbd.label.q.s.samp.select.small.span.strike.strong.sub.sup.textarea.tt.u`.split(`.`),this.symbolType=`custom`,this.whitespaceRegex=e.whitespaceRegex,this.removeHtmlWhitespace=!0,this.forceRemoveHtmlChar32BetweenTags=!1,this.customTags=[`t`,`tn`,`n`],this.htmlExtensions=[`.html`,`.xhtml`,`.xml`]}},n=[`maxColumnWidth`,`maxScrollContentWidth`,`enableAutoFitPageWidth`,`maxColumns`,`contentWrapperMarginBottom`,`contentWrapperBorderRadius`,`enableContentWrapperBorderRadius`,`contentsShadowMargin`],r=e=>n.includes(e);exports.HtmlOptionKeys=n,exports.HtmlOptions=t,exports.isHtmlOptionKey=r;
@@ -1,12 +1,34 @@
1
- import { MTTAG as e, STTAG as i, whitespaceRegex as o } from "../../kernal/Constants.mjs";
2
- class n {
3
- constructor() {
4
- this.writingMode = "horizontal-tb", this.direction = "ltr", this.flipMode = "scroll", this.columns = 1, this.autoColumns = !0, this.forceScroll = !1, this.flipPageStyle = "none", this.preventParentElementScroll = !1, this.maxColumns = 10, this.columnGap = 40, this.enableColumnRule = !0, this.columnWidth = 768, this.multiColumnWidthFactor = 0.8, this.enableRedirectAnimation = !0, this.contentWrapperMarginBottom = 10, this.contentWrapperMarginTop = 10, this.contentWrapperBorderRadius = 3, this.enableContentWrapperBorderRadius = !0, this.contentsShadowMargin = 10, this.preloadFileCount = 1, this.singleDocMaxSize = 50 * 1024 * 1024, this.maxImageWidthRatio = 0.7, this.maxImageHeightRatio = 0.7, this.fontFamily = "'Roboto','Helvetica Neue', 'Helvetica', 'Arial','Microsoft YaHei','PingFang SC', 'sans-serif'", this.fontWeight = "normal", this.lighterFontWeight = "300", this.fontSize = "18px", this.preferSrcdoc = !1, this.nonWhiteSpaceSymbolTagNames = ["object", "svg", "embed", "audio", "video", "canvas", "img"], this.htmlBlockTags = ["" + e.toLowerCase(), "h1", "h2", "h3", "h4", "h5", "h6", "div", "p", "ol", "ul", "li", "dl", "dt", "dd", "hr", "center", "pre", "table", "tr", "td", "thead", "tbody", "tfoot", "caption", "address", "fieldset", "form", "legend", "noscript", "noframes", "style", "script", "link", "object", "svg", "embed", "audio", "video", "canvas", "img"], this.htmlInlineTags = ["" + i.toLowerCase(), "a", "abbr", "acronym", "b", "bdo", "big", "br", "cite", "code", "dfn", "em", "font", "i", "input", "kbd", "label", "q", "s", "samp", "select", "small", "span", "strike", "strong", "sub", "sup", "textarea", "tt", "u"], this.symbolType = "custom", this.whitespaceRegex = o, this.removeHtmlWhitespace = !0, this.forceRemoveHtmlChar32BetweenTags = !1, this.customTags = ["t", "tn", "n"], this.htmlExtensions = [".html", ".xhtml", ".xml"];
5
- }
6
- }
7
- const s = ["maxColumnWidth", "maxScrollContentWidth", "enableAutoFitPageWidth", "maxColumns", "contentWrapperMarginBottom", "contentWrapperBorderRadius", "enableContentWrapperBorderRadius", "contentsShadowMargin"], r = (t) => s.includes(t);
8
- export {
9
- s as HtmlOptionKeys,
10
- n as HtmlOptions,
11
- r as isHtmlOptionKey
12
- };
1
+ import { whitespaceRegex as e } from "../../kernal/Constants.mjs";
2
+ //#region mediaTypes/html/HtmlOptions.ts
3
+ var t = class {
4
+ constructor() {
5
+ this.writingMode = "horizontal-tb", this.direction = "ltr", this.flipMode = "scroll", this.columns = 1, this.autoColumns = !0, this.forceScroll = !1, this.flipPageStyle = "none", this.preventParentElementScroll = !1, this.maxColumns = 10, this.columnGap = 40, this.enableColumnRule = !0, this.columnWidth = 768, this.multiColumnWidthFactor = .8, this.enableRedirectAnimation = !0, this.contentWrapperMarginBottom = 10, this.contentWrapperMarginTop = 10, this.contentWrapperBorderRadius = 3, this.enableContentWrapperBorderRadius = !0, this.contentsShadowMargin = 10, this.preloadFileCount = 1, this.singleDocMaxSize = 52428800, this.maxImageWidthRatio = .7, this.maxImageHeightRatio = .7, this.fontFamily = "'Roboto','Helvetica Neue', 'Helvetica', 'Arial','Microsoft YaHei','PingFang SC', 'sans-serif'", this.fontWeight = "normal", this.lighterFontWeight = "300", this.fontSize = "18px", this.preferSrcdoc = !1, this.nonWhiteSpaceSymbolTagNames = [
6
+ "object",
7
+ "svg",
8
+ "embed",
9
+ "audio",
10
+ "video",
11
+ "canvas",
12
+ "img"
13
+ ], this.htmlBlockTags = /* @__PURE__ */ "mt.h1.h2.h3.h4.h5.h6.div.p.ol.ul.li.dl.dt.dd.hr.center.pre.table.tr.td.thead.tbody.tfoot.caption.address.fieldset.form.legend.noscript.noframes.style.script.link.object.svg.embed.audio.video.canvas.img".split("."), this.htmlInlineTags = /* @__PURE__ */ "st.a.abbr.acronym.b.bdo.big.br.cite.code.dfn.em.font.i.input.kbd.label.q.s.samp.select.small.span.strike.strong.sub.sup.textarea.tt.u".split("."), this.symbolType = "custom", this.whitespaceRegex = e, this.removeHtmlWhitespace = !0, this.forceRemoveHtmlChar32BetweenTags = !1, this.customTags = [
14
+ "t",
15
+ "tn",
16
+ "n"
17
+ ], this.htmlExtensions = [
18
+ ".html",
19
+ ".xhtml",
20
+ ".xml"
21
+ ];
22
+ }
23
+ }, n = [
24
+ "maxColumnWidth",
25
+ "maxScrollContentWidth",
26
+ "enableAutoFitPageWidth",
27
+ "maxColumns",
28
+ "contentWrapperMarginBottom",
29
+ "contentWrapperBorderRadius",
30
+ "enableContentWrapperBorderRadius",
31
+ "contentsShadowMargin"
32
+ ], r = (e) => n.includes(e);
33
+ //#endregion
34
+ export { n as HtmlOptionKeys, t as HtmlOptions, r as isHtmlOptionKey };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=class a{};a.BreakInsideAvoid="break-inside-avoid",a.ContentsContainerCssName="contents-container",a.TransformContainerCssName="transform-container",a.ContentsShadowContainerCssName="contents-shadow",a.FileContentContainerClassName="file-content-container",a.FileContentContainerHeightClassName="file-content-container-height",a.TransformPagesClassName="transform-pages",a.LinkOriginHrefPropertyName="lhx-origin-data-url",a.HtmlDocumentCurrentPagePropertyName="data-page-index",a.HtmlDocumentNumperOfPagesPropertyName="data-number-of-pages",a.HtmlDocumentGotoAnimationCssName="goto-animation",a.WithoutMarginBottomCssName="without-margin-bottom",a.PageMovingAttributeName="page-moving";let t=a;exports.HtmlSettings=t;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});var e=class{static{this.BreakInsideAvoid=`break-inside-avoid`}static{this.ContentsContainerCssName=`contents-container`}static{this.TransformContainerCssName=`transform-container`}static{this.ContentsShadowContainerCssName=`contents-shadow`}static{this.FileContentContainerClassName=`file-content-container`}static{this.FileContentContainerHeightClassName=`file-content-container-height`}static{this.TransformPagesClassName=`transform-pages`}static{this.LinkOriginHrefPropertyName=`lhx-origin-data-url`}static{this.HtmlDocumentCurrentPagePropertyName=`data-page-index`}static{this.HtmlDocumentNumperOfPagesPropertyName=`data-number-of-pages`}static{this.HtmlDocumentGotoAnimationCssName=`goto-animation`}static{this.WithoutMarginBottomCssName=`without-margin-bottom`}static{this.PageMovingAttributeName=`page-moving`}};exports.HtmlSettings=e;
@@ -1,7 +1,44 @@
1
- const a = class a {
2
- };
3
- a.BreakInsideAvoid = "break-inside-avoid", a.ContentsContainerCssName = "contents-container", a.TransformContainerCssName = "transform-container", a.ContentsShadowContainerCssName = "contents-shadow", a.FileContentContainerClassName = "file-content-container", a.FileContentContainerHeightClassName = "file-content-container-height", a.TransformPagesClassName = "transform-pages", a.LinkOriginHrefPropertyName = "lhx-origin-data-url", a.HtmlDocumentCurrentPagePropertyName = "data-page-index", a.HtmlDocumentNumperOfPagesPropertyName = "data-number-of-pages", a.HtmlDocumentGotoAnimationCssName = "goto-animation", a.WithoutMarginBottomCssName = "without-margin-bottom", a.PageMovingAttributeName = "page-moving";
4
- let t = a;
5
- export {
6
- t as HtmlSettings
1
+ //#region mediaTypes/html/HtmlSettings.ts
2
+ var e = class {
3
+ static {
4
+ this.BreakInsideAvoid = "break-inside-avoid";
5
+ }
6
+ static {
7
+ this.ContentsContainerCssName = "contents-container";
8
+ }
9
+ static {
10
+ this.TransformContainerCssName = "transform-container";
11
+ }
12
+ static {
13
+ this.ContentsShadowContainerCssName = "contents-shadow";
14
+ }
15
+ static {
16
+ this.FileContentContainerClassName = "file-content-container";
17
+ }
18
+ static {
19
+ this.FileContentContainerHeightClassName = "file-content-container-height";
20
+ }
21
+ static {
22
+ this.TransformPagesClassName = "transform-pages";
23
+ }
24
+ static {
25
+ this.LinkOriginHrefPropertyName = "lhx-origin-data-url";
26
+ }
27
+ static {
28
+ this.HtmlDocumentCurrentPagePropertyName = "data-page-index";
29
+ }
30
+ static {
31
+ this.HtmlDocumentNumperOfPagesPropertyName = "data-number-of-pages";
32
+ }
33
+ static {
34
+ this.HtmlDocumentGotoAnimationCssName = "goto-animation";
35
+ }
36
+ static {
37
+ this.WithoutMarginBottomCssName = "without-margin-bottom";
38
+ }
39
+ static {
40
+ this.PageMovingAttributeName = "page-moving";
41
+ }
7
42
  };
43
+ //#endregion
44
+ export { e as HtmlSettings };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("../../../kernal/common/encoding.cjs"),c=require("./HtmlTextDocument.cjs"),u=require("../../base/fileParser/BaseFileParser.cjs"),h=require("../../../kernal/html/position.cjs"),m=require("../../../kernal/IFileParser.cjs");class p extends u.BaseFileParser{constructor(t,s,e,i,a,n,o,r){super(t,s,e,i,a,n,o),this.options=r}async parseUrl(t,s){const e=await super.parseUrl(t,s);return e.isMultiFiles||(e.spineFiles=[new m.SpineFile(e.data,e.mainUrl,this.extension)]),e}async initializeDatas(t){this.data=t.data,await super.initializeDatas(t)}async getCover(t,s){return null}async getFileHash(t){return await this.computeFileHash(this.isMultiFiles,this.data,t)}async getTextDocuments(){if(this.textDocuments)return this.textDocuments;this.textDocuments=[];const t=await this.getSpineFiles();for(let s=0;s<t.length;s++){const e=t[s],i=new c.HtmlTextDocument(this,e);this.textDocuments.push(i)}return this.textDocuments}async calculateSymbolCount(t,s){let e;t.data?e=new Uint8Array(await this.getSpineFileData(t)):e=(await this.getFileBytes(t.url)).data;const i=l.convertUint8ArrayToString(e);return h.getTotalSymbolCount(i,s,{removeHtmlWhitespace:this.options.removeHtmlWhitespace,whitespaceRegex:this.options.whitespaceRegex,nonWhiteSpaceSymbolTagNames:this.options.nonWhiteSpaceSymbolTagNames})}async dispose(){if(this.textDocuments){for(const t of this.textDocuments)await t.dispose();this.textDocuments.splice(0)}this.data=null,await super.dispose()}}exports.HtmlFileParser=p;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../../kernal/IFileParser.cjs"),t=require("../../../kernal/html/position.cjs"),n=require("../../../kernal/common/encoding.cjs"),r=require("../../base/fileParser/BaseFileParser.cjs"),i=require("./HtmlTextDocument.cjs");var a=class extends r.BaseFileParser{constructor(e,t,n,r,i,a,o,s){super(e,t,n,r,i,a,o),this.options=s}async parseUrl(t,n){let r=await super.parseUrl(t,n);return r.isMultiFiles||(r.spineFiles=[new e.SpineFile(r.data,r.mainUrl,this.extension)]),r}async initializeDatas(e){this.data=e.data,await super.initializeDatas(e)}async getCover(e,t){return null}async getFileHash(e){return await this.computeFileHash(this.isMultiFiles,this.data,e)}async getTextDocuments(){if(this.textDocuments)return this.textDocuments;this.textDocuments=[];let e=await this.getSpineFiles();for(let t=0;t<e.length;t++){let n=e[t],r=new i.HtmlTextDocument(this,n);this.textDocuments.push(r)}return this.textDocuments}async calculateSymbolCount(e,r){let i;i=e.data?new Uint8Array(await this.getSpineFileData(e)):(await this.getFileBytes(e.url)).data;let a=n.convertUint8ArrayToString(i);return t.getTotalSymbolCount(a,r,{removeHtmlWhitespace:this.options.removeHtmlWhitespace,whitespaceRegex:this.options.whitespaceRegex,nonWhiteSpaceSymbolTagNames:this.options.nonWhiteSpaceSymbolTagNames})}async dispose(){if(this.textDocuments){for(let e of this.textDocuments)await e.dispose();this.textDocuments.splice(0)}this.data=null,await super.dispose()}};exports.HtmlFileParser=a;
@@ -1,55 +1,53 @@
1
- import { convertUint8ArrayToString as l } from "../../../kernal/common/encoding.mjs";
2
- import { HtmlTextDocument as c } from "./HtmlTextDocument.mjs";
3
- import { BaseFileParser as m } from "../../base/fileParser/BaseFileParser.mjs";
4
- import { getTotalSymbolCount as h } from "../../../kernal/html/position.mjs";
5
- import { SpineFile as u } from "../../../kernal/IFileParser.mjs";
6
- class d extends m {
7
- constructor(t, s, e, i, a, o, n, r) {
8
- super(t, s, e, i, a, o, n), this.options = r;
9
- }
10
- async parseUrl(t, s) {
11
- const e = await super.parseUrl(t, s);
12
- return e.isMultiFiles || (e.spineFiles = [new u(e.data, e.mainUrl, this.extension)]), e;
13
- }
14
- async initializeDatas(t) {
15
- this.data = t.data, await super.initializeDatas(t);
16
- }
17
- async getCover(t, s) {
18
- return null;
19
- }
20
- async getFileHash(t) {
21
- return await this.computeFileHash(this.isMultiFiles, this.data, t);
22
- }
23
- async getTextDocuments() {
24
- if (this.textDocuments)
25
- return this.textDocuments;
26
- this.textDocuments = [];
27
- const t = await this.getSpineFiles();
28
- for (let s = 0; s < t.length; s++) {
29
- const e = t[s], i = new c(this, e);
30
- this.textDocuments.push(i);
31
- }
32
- return this.textDocuments;
33
- }
34
- async calculateSymbolCount(t, s) {
35
- let e;
36
- t.data ? e = new Uint8Array(await this.getSpineFileData(t)) : e = (await this.getFileBytes(t.url)).data;
37
- const i = l(e);
38
- return h(i, s, {
39
- removeHtmlWhitespace: this.options.removeHtmlWhitespace,
40
- whitespaceRegex: this.options.whitespaceRegex,
41
- nonWhiteSpaceSymbolTagNames: this.options.nonWhiteSpaceSymbolTagNames
42
- });
43
- }
44
- async dispose() {
45
- if (this.textDocuments) {
46
- for (const t of this.textDocuments)
47
- await t.dispose();
48
- this.textDocuments.splice(0);
49
- }
50
- this.data = null, await super.dispose();
51
- }
52
- }
53
- export {
54
- d as HtmlFileParser
1
+ import { SpineFile as e } from "../../../kernal/IFileParser.mjs";
2
+ import { getTotalSymbolCount as t } from "../../../kernal/html/position.mjs";
3
+ import { convertUint8ArrayToString as n } from "../../../kernal/common/encoding.mjs";
4
+ import { BaseFileParser as r } from "../../base/fileParser/BaseFileParser.mjs";
5
+ import { HtmlTextDocument as i } from "./HtmlTextDocument.mjs";
6
+ //#region mediaTypes/html/fileParser/HtmlFileParser.ts
7
+ var a = class extends r {
8
+ constructor(e, t, n, r, i, a, o, s) {
9
+ super(e, t, n, r, i, a, o), this.options = s;
10
+ }
11
+ async parseUrl(t, n) {
12
+ let r = await super.parseUrl(t, n);
13
+ return r.isMultiFiles || (r.spineFiles = [new e(r.data, r.mainUrl, this.extension)]), r;
14
+ }
15
+ async initializeDatas(e) {
16
+ this.data = e.data, await super.initializeDatas(e);
17
+ }
18
+ async getCover(e, t) {
19
+ return null;
20
+ }
21
+ async getFileHash(e) {
22
+ return await this.computeFileHash(this.isMultiFiles, this.data, e);
23
+ }
24
+ async getTextDocuments() {
25
+ if (this.textDocuments) return this.textDocuments;
26
+ this.textDocuments = [];
27
+ let e = await this.getSpineFiles();
28
+ for (let t = 0; t < e.length; t++) {
29
+ let n = e[t], r = new i(this, n);
30
+ this.textDocuments.push(r);
31
+ }
32
+ return this.textDocuments;
33
+ }
34
+ async calculateSymbolCount(e, r) {
35
+ let i;
36
+ i = e.data ? new Uint8Array(await this.getSpineFileData(e)) : (await this.getFileBytes(e.url)).data;
37
+ let a = n(i);
38
+ return t(a, r, {
39
+ removeHtmlWhitespace: this.options.removeHtmlWhitespace,
40
+ whitespaceRegex: this.options.whitespaceRegex,
41
+ nonWhiteSpaceSymbolTagNames: this.options.nonWhiteSpaceSymbolTagNames
42
+ });
43
+ }
44
+ async dispose() {
45
+ if (this.textDocuments) {
46
+ for (let e of this.textDocuments) await e.dispose();
47
+ this.textDocuments.splice(0);
48
+ }
49
+ this.data = null, await super.dispose();
50
+ }
55
51
  };
52
+ //#endregion
53
+ export { a as HtmlFileParser };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("../../../kernal/common/encoding.cjs"),o=require("../../../kernal/common/text.cjs"),a=require("../../../kernal/html/finder.cjs"),c=require("../../../kernal/html/manipulator.cjs"),l=require("../../../kernal/html/parser.cjs"),s=require("../../../kernal/html/text.cjs"),u=require("../../../kernal/common/uuid.cjs"),m=require("../../../kernal/Constants.cjs");class h{constructor(t,e){this.texts=new Map,this.fileParser=t,this.spineFile=e}get url(){return this.spineFile.url}async getPlaintext(t){const e=u.computeUniqueId(JSON.stringify(t??{}));if(this.texts.has(e))return this.texts.get(e);const r=await this.getFormattedDocument();let i=s.getPureTextContent(a.getDocumentBody(r),void 0,void 0,t?.convertLFToWhitespace);return t&&(i=o.formatText(i,t)),this.texts.set(e,i),i}async getContent(){if(this.docContent)return this.docContent;let t="";if(this.spineFile.data){if(this.spineFile.data instanceof ArrayBuffer)t=n.convertArrayBufferToString(this.spineFile.data);else if(this.spineFile.data instanceof Blob){const e=await this.spineFile.data.arrayBuffer();t=n.convertArrayBufferToString(e)}}else{const e=await this.fileParser.getFile(this.url);t=n.convertUint8ArrayToString(e)}return this.fileParser.options.removeHtmlWhitespace&&this.fileParser.options.whitespaceRegex&&(t=t.replace(this.fileParser.options.whitespaceRegex,""),this.fileParser.options.forceRemoveHtmlChar32BetweenTags&&(t=s.removeWhiteSpaceBetweenTags(t,this.fileParser.options.removeHtmlWhitespace))),t=n.removeBomHeader(t??""),this.docContent=t,t}async getFormattedDocument(){if(!this.formattedDocument){const t=await this.getContent(),e=await l.getFormatDocumentAsync(t,!0);c.wrapFloatingTextNodes(e,this.fileParser.options.wrapFullTextNode);const r=e.getElementsByTagName("*");for(let i=r.length-1;i>=0;i--)r[i].setAttribute(m.ElementInitialNumberName,i.toString());this.formattedDocument=e}return this.formattedDocument.cloneNode(!0)}async dispose(){this.texts&&this.texts.clear(),this.docContent=null,this.formattedDocument=null}}exports.HtmlTextDocument=h;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../../kernal/common/uuid.cjs"),t=require("../../../kernal/common/text.cjs"),n=require("../../../kernal/Constants.cjs"),r=require("../../../kernal/html/finder.cjs"),i=require("../../../kernal/html/text.cjs"),a=require("../../../kernal/html/parser.cjs"),o=require("../../../kernal/html/manipulator.cjs"),s=require("../../../kernal/common/encoding.cjs");var c=class{constructor(e,t){this.texts=new Map,this.fileParser=e,this.spineFile=t}get url(){return this.spineFile.url}async getPlaintext(n){let a=e.computeUniqueId(JSON.stringify(n??{}));if(this.texts.has(a))return this.texts.get(a);let o=await this.getFormattedDocument(),s=i.getPureTextContent(r.getDocumentBody(o),void 0,void 0,n?.convertLFToWhitespace);return n&&(s=t.formatText(s,n)),this.texts.set(a,s),s}async getContent(){if(this.docContent)return this.docContent;let e=``;if(this.spineFile.data){if(this.spineFile.data instanceof ArrayBuffer)e=s.convertArrayBufferToString(this.spineFile.data);else if(this.spineFile.data instanceof Blob){let t=await this.spineFile.data.arrayBuffer();e=s.convertArrayBufferToString(t)}}else{let t=await this.fileParser.getFile(this.url);e=s.convertUint8ArrayToString(t)}return this.fileParser.options.removeHtmlWhitespace&&this.fileParser.options.whitespaceRegex&&(e=e.replace(this.fileParser.options.whitespaceRegex,``),this.fileParser.options.forceRemoveHtmlChar32BetweenTags&&(e=i.removeWhiteSpaceBetweenTags(e,this.fileParser.options.removeHtmlWhitespace))),e=s.removeBomHeader(e??``),this.docContent=e,e}async getFormattedDocument(){if(!this.formattedDocument){let e=await this.getContent(),t=await a.getFormatDocumentAsync(e,!0);o.wrapFloatingTextNodes(t,this.fileParser.options.wrapFullTextNode);let r=t.getElementsByTagName(`*`);for(let e=r.length-1;e>=0;e--)r[e].setAttribute(n.ElementInitialNumberName,e.toString());this.formattedDocument=t}return this.formattedDocument.cloneNode(!0)}async dispose(){this.texts&&this.texts.clear(),this.docContent=null,this.formattedDocument=null}};exports.HtmlTextDocument=c;
@@ -1,58 +1,53 @@
1
- import { convertArrayBufferToString as o, convertUint8ArrayToString as s, removeBomHeader as n } from "../../../kernal/common/encoding.mjs";
2
- import { formatText as a } from "../../../kernal/common/text.mjs";
3
- import { getDocumentBody as m } from "../../../kernal/html/finder.mjs";
4
- import { wrapFloatingTextNodes as c } from "../../../kernal/html/manipulator.mjs";
5
- import { getFormatDocumentAsync as l } from "../../../kernal/html/parser.mjs";
6
- import { getPureTextContent as f, removeWhiteSpaceBetweenTags as h } from "../../../kernal/html/text.mjs";
7
- import { computeUniqueId as u } from "../../../kernal/common/uuid.mjs";
8
- import { ElementInitialNumberName as p } from "../../../kernal/Constants.mjs";
9
- class B {
10
- constructor(t, e) {
11
- this.texts = /* @__PURE__ */ new Map(), this.fileParser = t, this.spineFile = e;
12
- }
13
- get url() {
14
- return this.spineFile.url;
15
- }
16
- async getPlaintext(t) {
17
- const e = u(JSON.stringify(t ?? {}));
18
- if (this.texts.has(e))
19
- return this.texts.get(e);
20
- const r = await this.getFormattedDocument();
21
- let i = f(m(r), void 0, void 0, t?.convertLFToWhitespace);
22
- return t && (i = a(i, t)), this.texts.set(e, i), i;
23
- }
24
- async getContent() {
25
- if (this.docContent)
26
- return this.docContent;
27
- let t = "";
28
- if (this.spineFile.data) {
29
- if (this.spineFile.data instanceof ArrayBuffer)
30
- t = o(this.spineFile.data);
31
- else if (this.spineFile.data instanceof Blob) {
32
- const e = await this.spineFile.data.arrayBuffer();
33
- t = o(e);
34
- }
35
- } else {
36
- const e = await this.fileParser.getFile(this.url);
37
- t = s(e);
38
- }
39
- return this.fileParser.options.removeHtmlWhitespace && this.fileParser.options.whitespaceRegex && (t = t.replace(this.fileParser.options.whitespaceRegex, ""), this.fileParser.options.forceRemoveHtmlChar32BetweenTags && (t = h(t, this.fileParser.options.removeHtmlWhitespace))), t = n(t ?? ""), this.docContent = t, t;
40
- }
41
- async getFormattedDocument() {
42
- if (!this.formattedDocument) {
43
- const t = await this.getContent(), e = await l(t, !0);
44
- c(e, this.fileParser.options.wrapFullTextNode);
45
- const r = e.getElementsByTagName("*");
46
- for (let i = r.length - 1; i >= 0; i--)
47
- r[i].setAttribute(p, i.toString());
48
- this.formattedDocument = e;
49
- }
50
- return this.formattedDocument.cloneNode(!0);
51
- }
52
- async dispose() {
53
- this.texts && this.texts.clear(), this.docContent = null, this.formattedDocument = null;
54
- }
55
- }
56
- export {
57
- B as HtmlTextDocument
1
+ import { computeUniqueId as e } from "../../../kernal/common/uuid.mjs";
2
+ import { formatText as t } from "../../../kernal/common/text.mjs";
3
+ import { ElementInitialNumberName as n } from "../../../kernal/Constants.mjs";
4
+ import { getDocumentBody as r } from "../../../kernal/html/finder.mjs";
5
+ import { getPureTextContent as i, removeWhiteSpaceBetweenTags as a } from "../../../kernal/html/text.mjs";
6
+ import { getFormatDocumentAsync as o } from "../../../kernal/html/parser.mjs";
7
+ import { wrapFloatingTextNodes as s } from "../../../kernal/html/manipulator.mjs";
8
+ import { convertArrayBufferToString as c, convertUint8ArrayToString as l, removeBomHeader as u } from "../../../kernal/common/encoding.mjs";
9
+ //#region mediaTypes/html/fileParser/HtmlTextDocument.ts
10
+ var d = class {
11
+ constructor(e, t) {
12
+ this.texts = /* @__PURE__ */ new Map(), this.fileParser = e, this.spineFile = t;
13
+ }
14
+ get url() {
15
+ return this.spineFile.url;
16
+ }
17
+ async getPlaintext(n) {
18
+ let a = e(JSON.stringify(n ?? {}));
19
+ if (this.texts.has(a)) return this.texts.get(a);
20
+ let o = await this.getFormattedDocument(), s = i(r(o), void 0, void 0, n?.convertLFToWhitespace);
21
+ return n && (s = t(s, n)), this.texts.set(a, s), s;
22
+ }
23
+ async getContent() {
24
+ if (this.docContent) return this.docContent;
25
+ let e = "";
26
+ if (this.spineFile.data) {
27
+ if (this.spineFile.data instanceof ArrayBuffer) e = c(this.spineFile.data);
28
+ else if (this.spineFile.data instanceof Blob) {
29
+ let t = await this.spineFile.data.arrayBuffer();
30
+ e = c(t);
31
+ }
32
+ } else {
33
+ let t = await this.fileParser.getFile(this.url);
34
+ e = l(t);
35
+ }
36
+ return this.fileParser.options.removeHtmlWhitespace && this.fileParser.options.whitespaceRegex && (e = e.replace(this.fileParser.options.whitespaceRegex, ""), this.fileParser.options.forceRemoveHtmlChar32BetweenTags && (e = a(e, this.fileParser.options.removeHtmlWhitespace))), e = u(e ?? ""), this.docContent = e, e;
37
+ }
38
+ async getFormattedDocument() {
39
+ if (!this.formattedDocument) {
40
+ let e = await this.getContent(), t = await o(e, !0);
41
+ s(t, this.fileParser.options.wrapFullTextNode);
42
+ let r = t.getElementsByTagName("*");
43
+ for (let e = r.length - 1; e >= 0; e--) r[e].setAttribute(n, e.toString());
44
+ this.formattedDocument = t;
45
+ }
46
+ return this.formattedDocument.cloneNode(!0);
47
+ }
48
+ async dispose() {
49
+ this.texts && this.texts.clear(), this.docContent = null, this.formattedDocument = null;
50
+ }
58
51
  };
52
+ //#endregion
53
+ export { d as HtmlTextDocument };
@@ -1 +0,0 @@
1
- "use strict";
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("../../../kernal/common/uuid.cjs"),g=require("../../../kernal/html/events.cjs"),c=require("../HtmlOptions.cjs"),d=require("./navigator/HtmlCoreNavigator.cjs"),m=require("./navigator/HtmlPagingNavigator.cjs"),u=require("./navigator/HtmlNavPointNavigator.cjs"),v=require("./navigator/HtmlNavPointProvider.cjs"),p=require("./progress/HtmlProgressTracker.cjs"),w=require("./documents/HtmlDocumentsProvider.cjs"),P=require("./layout/HtmlRendererLayout.cjs"),H=require("./style/HtmlStyleProvider.cjs"),y=require("./style/HtmlThemeApplier.cjs"),C=require("./documents/HtmlDocumentsResizeObserver.cjs"),f=require("./html/HtmlContentProcessor.cjs"),b=require("./image/HtmlImageLoader.cjs"),q=require("./image/HtmlImageObserver.cjs"),N=require("../../../kernal/Options.cjs"),T=require("../../../kernal/Theme.cjs"),i=require("../../../kernal/EventNames.cjs");class S extends w.HtmlDocumentsProvider{constructor(e,t,n,s){super(e,t,n,s),this.isInitRenderer=!1,this.injectProcessHandlers=()=>{this.addDocumentPreprocess(this.preprocessHandler)},this.preprocessHandler=async r=>{await this.contentProcessor.preprocess(r),await this.styleProvider.injectStyles(r);const o=await this.resolveCurrentTheme();o&&await this.themeApplier.applyToDocument(r,o),await this.rendererLayout.applyDocStyles(r),await this.imageLoader.preprocessImages(r)},this.onPageChange=async()=>{this.progressTracker.notifyProgressChange()},this.onOptionsChange=async r=>{const o=this.getRendererContainer();if(!(!o||!o.ownerDocument.defaultView)&&(N.isOptionKey(r)||c.isHtmlOptionKey(r))){const a=c.isHtmlOptionKey(r);if(a){if(!this.owner.context.currentLocation?.precise){const h=await this.progressTracker.getProgress(!0);h&&(this.owner.context.currentLocation=h.location)}this.owner.context.setUserChangedProgress(!1)}this.rendererViewport.applyCssVariables(),a&&(this.owner.context.userChangedProgress||await this.reload())}},this.progressTracker=new p.HtmlProgressTracker(e,this,s),this.rendererLayout=new P.HtmlRendererLayout(e,this,this.rendererViewport,this.progressTracker,s),this.navPointProvider=new v.HtmlNavPointProvider(this,s),this.navigator=new d.HtmlCoreNavigator(this,s),this.navPointNavigator=new u.HtmlNavPointNavigator(e.locale,e.notifier,this,this.navigator,this.navPointProvider),this.pagingNavigator=new m.HtmlPagingNavigator(this,this.navigator,s),this.styleProvider=new H.HtmlStyleProvider(this),this.currentInstanceId=l.getRandomId(!0),this.themeApplier=new y.HtmlThemeApplier(this),this.documentsResizeObserver=new C.HtmlDocumentsResizeObserver(this,this.rendererViewport,this.progressTracker,this.rendererLayout),this.contentProcessor=new f.HtmlContentProcessor(t),this.imageLoader=new b.HtmlImageLoader(this,this.rendererViewport,s),this.imageObserver=new q.HtmlImageObserver(this,s),this.bindEvents(),this.bindScrollWatch(),this.injectProcessHandlers()}get id(){return this.currentInstanceId}async resolveCurrentTheme(){return(await this.owner.services.get("themeProvider"))?.getCurrentTheme()??new T.Theme}bindEvents(){this.owner.events.on(i.EventNames.OptionsChange,this.onOptionsChange),this.owner.events.on(i.EventNames.PageChange,this.onPageChange)}unbindEvents(){this.owner.events.off(i.EventNames.OptionsChange,this.onOptionsChange),this.owner.events.off(i.EventNames.PageChange,this.onPageChange)}bindScrollWatch(){const e=this.getScrollElement();e&&(this.scrollWatchState=g.watchScroll(e,this.owner.options.calcScrollDirection,async(t,n)=>{this.owner.events.emit(i.EventNames.ReaderDebounceScroll,t,n),this.progressTracker.notifyProgressChange()},t=>{this.owner.onProgressChangeGuard&&this.owner.context?.progress?.current&&(this.owner.onProgressChangeGuard(this.owner.context.progress.current)||t.preventDefault()),this.owner.events.emit(i.EventNames.ReaderOriginalScroll,t)}))}async load(e,t){e||(e=this.owner.context.progress?.location),this.isInitRenderer||(this.isInitRenderer=!0,this.documentsResizeObserver.register(),this.imageObserver.register()),await super.load(e,t)}getFileParser(){return this.fileParser}get writingMode(){return this.htmlOptions.writingMode??"horizontal-tb"}get direction(){return this.htmlOptions.direction??"ltr"}get layout(){return this.rendererLayout}async applyTheme(e){await this.themeApplier.applyTheme(e)}async dispose(){this.unbindEvents();const e=this.getScrollElement();e&&this.scrollWatchState?._eventHandler&&(e.removeEventListener("scroll",this.scrollWatchState._eventHandler,!0),this.scrollWatchState=void 0),await this.progressTracker.dispose(),await this.imageObserver.dispose(),await this.imageLoader.dispose(),await super.dispose(),await this.styleProvider?.dispose(),await this.navPointProvider?.dispose(),await this.pagingNavigator?.dispose(),await this.documentsResizeObserver.dispose(),await this.contentProcessor.dispose()}}exports.HtmlRenderer=S;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../../kernal/Options.cjs"),t=require("../../../kernal/Theme.cjs"),n=require("../../../kernal/common/uuid.cjs"),r=require("../../../kernal/EventNames.cjs"),i=require("../../../kernal/html/events.cjs"),a=require("../HtmlOptions.cjs"),o=require("./navigator/HtmlCoreNavigator.cjs"),s=require("./navigator/HtmlPagingNavigator.cjs"),c=require("./navigator/HtmlNavPointNavigator.cjs"),l=require("./navigator/HtmlNavPointProvider.cjs"),u=require("./progress/HtmlProgressTracker.cjs"),d=require("./documents/HtmlDocumentsProvider.cjs"),f=require("./layout/HtmlRendererLayout.cjs"),p=require("./style/HtmlStyleProvider.cjs"),m=require("./style/HtmlThemeApplier.cjs"),h=require("./documents/HtmlDocumentsResizeObserver.cjs"),g=require("./html/HtmlContentProcessor.cjs"),_=require("./image/HtmlImageLoader.cjs"),v=require("./image/HtmlImageObserver.cjs");var y=class extends d.HtmlDocumentsProvider{constructor(t,r,i,d){super(t,r,i,d),this.isInitRenderer=!1,this.injectProcessHandlers=()=>{this.addDocumentPreprocess(this.preprocessHandler)},this.preprocessHandler=async e=>{await this.contentProcessor.preprocess(e),await this.styleProvider.injectStyles(e);let t=await this.resolveCurrentTheme();t&&await this.themeApplier.applyToDocument(e,t),await this.rendererLayout.applyDocStyles(e),await this.imageLoader.preprocessImages(e)},this.onPageChange=async()=>{this.progressTracker.notifyProgressChange()},this.onOptionsChange=async t=>{let n=this.getRendererContainer();if(!(!n||!n.ownerDocument.defaultView)&&(e.isOptionKey(t)||a.isHtmlOptionKey(t))){let e=a.isHtmlOptionKey(t);if(e){if(!this.owner.context.currentLocation?.precise){let e=await this.progressTracker.getProgress(!0);e&&(this.owner.context.currentLocation=e.location)}this.owner.context.setUserChangedProgress(!1)}this.rendererViewport.applyCssVariables(),e&&(this.owner.context.userChangedProgress||await this.reload())}},this.progressTracker=new u.HtmlProgressTracker(t,this,d),this.rendererLayout=new f.HtmlRendererLayout(t,this,this.rendererViewport,this.progressTracker,d),this.navPointProvider=new l.HtmlNavPointProvider(this,d),this.navigator=new o.HtmlCoreNavigator(this,d),this.navPointNavigator=new c.HtmlNavPointNavigator(t.locale,t.notifier,this,this.navigator,this.navPointProvider),this.pagingNavigator=new s.HtmlPagingNavigator(this,this.navigator,d),this.styleProvider=new p.HtmlStyleProvider(this),this.currentInstanceId=n.getRandomId(!0),this.themeApplier=new m.HtmlThemeApplier(this),this.documentsResizeObserver=new h.HtmlDocumentsResizeObserver(this,this.rendererViewport,this.progressTracker,this.rendererLayout),this.contentProcessor=new g.HtmlContentProcessor(r),this.imageLoader=new _.HtmlImageLoader(this,this.rendererViewport,d),this.imageObserver=new v.HtmlImageObserver(this,d),this.bindEvents(),this.bindScrollWatch(),this.injectProcessHandlers()}get id(){return this.currentInstanceId}async resolveCurrentTheme(){return(await this.owner.services.get(`themeProvider`))?.getCurrentTheme()??new t.Theme}bindEvents(){this.owner.events.on(r.EventNames.OptionsChange,this.onOptionsChange),this.owner.events.on(r.EventNames.PageChange,this.onPageChange)}unbindEvents(){this.owner.events.off(r.EventNames.OptionsChange,this.onOptionsChange),this.owner.events.off(r.EventNames.PageChange,this.onPageChange)}bindScrollWatch(){let e=this.getScrollElement();e&&(this.scrollWatchState=i.watchScroll(e,this.owner.options.calcScrollDirection,async(e,t)=>{this.owner.events.emit(r.EventNames.ReaderDebounceScroll,e,t),this.progressTracker.notifyProgressChange()},e=>{this.owner.onProgressChangeGuard&&this.owner.context?.progress?.current&&(this.owner.onProgressChangeGuard(this.owner.context.progress.current)||e.preventDefault()),this.owner.events.emit(r.EventNames.ReaderOriginalScroll,e)}))}async load(e,t){e||=this.owner.context.progress?.location,this.isInitRenderer||(this.isInitRenderer=!0,this.documentsResizeObserver.register(),this.imageObserver.register()),await super.load(e,t)}getFileParser(){return this.fileParser}get writingMode(){return this.htmlOptions.writingMode??`horizontal-tb`}get direction(){return this.htmlOptions.direction??`ltr`}get layout(){return this.rendererLayout}async applyTheme(e){await this.themeApplier.applyTheme(e)}async dispose(){this.unbindEvents();let e=this.getScrollElement();e&&this.scrollWatchState?._eventHandler&&(e.removeEventListener(`scroll`,this.scrollWatchState._eventHandler,!0),this.scrollWatchState=void 0),await this.progressTracker.dispose(),await this.imageObserver.dispose(),await this.imageLoader.dispose(),await super.dispose(),await this.styleProvider?.dispose(),await this.navPointProvider?.dispose(),await this.pagingNavigator?.dispose(),await this.documentsResizeObserver.dispose(),await this.contentProcessor.dispose()}};exports.HtmlRenderer=y;