@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,83 +1,78 @@
1
- import { getTransformLength as m } from "../../../../kernal/html/style.mjs";
2
- import { getDocumentBody as f, compareTagName as p } from "../../../../kernal/html/finder.mjs";
3
- import { parseNumber as d } from "../../../../kernal/common/number.mjs";
4
- import { HtmlSettings as u } from "../../HtmlSettings.mjs";
5
- class w {
6
- constructor(r, t, a) {
7
- this.doc = r, this.layout = t, this.options = a;
8
- }
9
- calcNumberOfPages(r) {
10
- let t = 1;
11
- if (this.options.flipMode == "scroll")
12
- return t;
13
- const o = this.doc.getContentContainer()?.ownerDocument?.documentElement;
14
- if (!o || !o.firstElementChild) return 1;
15
- if (!r && (t = d(o.getAttribute(u.HtmlDocumentNumperOfPagesPropertyName), 0, "parseInt"), t > 1))
16
- return t;
17
- const l = this.layout.getLayoutMetrics(), i = this.options.writingMode ?? "horizontal-tb", c = this.getIframe();
18
- if (this.isVerticalWriting(i)) {
19
- let s = 0, e = o.scrollHeight;
20
- e < 1 && (e = 1);
21
- let n = m(o, "y");
22
- if (Math.abs(n) > 0 && c) {
23
- const g = c.scrollHeight;
24
- if (e == g) {
25
- this.transformCurrentDocument(this.getContentRootElement(), n - 2, "y");
26
- const h = o.scrollHeight;
27
- e == h ? (this.transformCurrentDocument(this.getContentRootElement(), 0, "y"), n = 0, e = o.scrollHeight) : this.transformCurrentDocument(this.getContentRootElement(), n, "y");
28
- }
29
- }
30
- s = e + n, t = Math.floor(s / l.pageMoveLength), s % l.pageMoveLength > l.columnGap && (t = t + 1);
31
- } else {
32
- let s = 0, e = o.scrollWidth;
33
- e < 1 && (e = 1);
34
- let n = m(o, "x");
35
- if (Math.abs(n) > 0 && c) {
36
- const g = c.scrollWidth;
37
- if (e == g) {
38
- this.transformCurrentDocument(this.getContentRootElement(), n - 2, "x");
39
- const h = o.scrollWidth;
40
- e == h ? (this.transformCurrentDocument(this.getContentRootElement(), 0, "x"), n = 0, e = o.scrollWidth) : this.transformCurrentDocument(this.getContentRootElement(), n, "x");
41
- }
42
- }
43
- s = n + e, t = Math.floor(s / l.pageMoveLength), s % l.pageMoveLength > l.columnGap && (t = t + 1);
44
- }
45
- return o.setAttribute(u.HtmlDocumentNumperOfPagesPropertyName, t.toString()), t;
46
- }
47
- getPageNumber(r) {
48
- if (!r) return 1;
49
- const t = this.doc.getContentContainer()?.ownerDocument;
50
- if (!f(t) || p("BODY", r.tagName))
51
- return 1;
52
- const o = this.layout.getLayoutMetrics(), l = r.getBoundingClientRect();
53
- let i = 1;
54
- const c = this.options.writingMode ?? "horizontal-tb", s = this.isVerticalWriting(c);
55
- if (s) {
56
- const e = m(t.documentElement, "y"), n = (l?.top ?? 0) + e;
57
- i = Math.floor(n / o.pageMoveLength), n % o.pageMoveLength >= 0 && (i = i + 1);
58
- } else {
59
- const e = m(t.documentElement, "x"), n = (l?.left ?? 0) + e;
60
- i = Math.floor(n / o.pageMoveLength), n > o.pageWidth && n % o.pageMoveLength >= 0 && (i = i + 1);
61
- }
62
- if (i == 0 && (i = 1), !s && this.options.direction == "rtl") {
63
- const e = this.calcNumberOfPages();
64
- i = Math.max(1, e - i + 1);
65
- }
66
- return i;
67
- }
68
- getIframe() {
69
- return this.doc.getContentContainer()?.ownerDocument?.defaultView?.frameElement;
70
- }
71
- getContentRootElement() {
72
- return this.doc.inIframe ? this.doc.getContentContainer()?.ownerDocument?.documentElement : this.doc.getWrapperContainer();
73
- }
74
- transformCurrentDocument(r, t, a) {
75
- !a || !r || (a == "x" ? r.style.transform = "translateX(-" + parseFloat(t.toFixed(10)) + "px)" : r.style.transform = "translateY(-" + parseFloat(t.toFixed(10)) + "px)");
76
- }
77
- isVerticalWriting(r) {
78
- return r == "vertical-lr" || r == "vertical-rl";
79
- }
80
- }
81
- export {
82
- w as HtmlPageCalculator
1
+ import { parseNumber as e } from "../../../../kernal/common/number.mjs";
2
+ import { compareTagName as t, getDocumentBody as n } from "../../../../kernal/html/finder.mjs";
3
+ import { getTransformLength as r } from "../../../../kernal/html/style.mjs";
4
+ import { HtmlSettings as i } from "../../HtmlSettings.mjs";
5
+ //#region mediaTypes/html/renderer/document/HtmlPageCalculator.ts
6
+ var a = class {
7
+ constructor(e, t, n) {
8
+ this.doc = e, this.layout = t, this.options = n;
9
+ }
10
+ calcNumberOfPages(t) {
11
+ let n = 1;
12
+ if (this.options.flipMode == "scroll") return n;
13
+ let a = this.doc.getContentContainer()?.ownerDocument?.documentElement;
14
+ if (!a || !a.firstElementChild) return 1;
15
+ if (!t && (n = e(a.getAttribute(i.HtmlDocumentNumperOfPagesPropertyName), 0, "parseInt"), n > 1)) return n;
16
+ let o = this.layout.getLayoutMetrics(), s = this.options.writingMode ?? "horizontal-tb", c = this.getIframe();
17
+ if (this.isVerticalWriting(s)) {
18
+ let e = 0, t = a.scrollHeight;
19
+ t < 1 && (t = 1);
20
+ let i = r(a, "y");
21
+ if (Math.abs(i) > 0 && c) {
22
+ let e = c.scrollHeight;
23
+ if (t == e) {
24
+ this.transformCurrentDocument(this.getContentRootElement(), i - 2, "y");
25
+ let e = a.scrollHeight;
26
+ t == e ? (this.transformCurrentDocument(this.getContentRootElement(), 0, "y"), i = 0, t = a.scrollHeight) : this.transformCurrentDocument(this.getContentRootElement(), i, "y");
27
+ }
28
+ }
29
+ e = t + i, n = Math.floor(e / o.pageMoveLength), e % o.pageMoveLength > o.columnGap && (n += 1);
30
+ } else {
31
+ let e = 0, t = a.scrollWidth;
32
+ t < 1 && (t = 1);
33
+ let i = r(a, "x");
34
+ if (Math.abs(i) > 0 && c) {
35
+ let e = c.scrollWidth;
36
+ if (t == e) {
37
+ this.transformCurrentDocument(this.getContentRootElement(), i - 2, "x");
38
+ let e = a.scrollWidth;
39
+ t == e ? (this.transformCurrentDocument(this.getContentRootElement(), 0, "x"), i = 0, t = a.scrollWidth) : this.transformCurrentDocument(this.getContentRootElement(), i, "x");
40
+ }
41
+ }
42
+ e = i + t, n = Math.floor(e / o.pageMoveLength), e % o.pageMoveLength > o.columnGap && (n += 1);
43
+ }
44
+ return a.setAttribute(i.HtmlDocumentNumperOfPagesPropertyName, n.toString()), n;
45
+ }
46
+ getPageNumber(e) {
47
+ if (!e) return 1;
48
+ let i = this.doc.getContentContainer()?.ownerDocument;
49
+ if (!n(i) || t("BODY", e.tagName)) return 1;
50
+ let a = this.layout.getLayoutMetrics(), o = e.getBoundingClientRect(), s = 1, c = this.options.writingMode ?? "horizontal-tb", l = this.isVerticalWriting(c);
51
+ if (l) {
52
+ let e = r(i.documentElement, "y"), t = (o?.top ?? 0) + e;
53
+ s = Math.floor(t / a.pageMoveLength), t % a.pageMoveLength >= 0 && (s += 1);
54
+ } else {
55
+ let e = r(i.documentElement, "x"), t = (o?.left ?? 0) + e;
56
+ s = Math.floor(t / a.pageMoveLength), t > a.pageWidth && t % a.pageMoveLength >= 0 && (s += 1);
57
+ }
58
+ if (s == 0 && (s = 1), !l && this.options.direction == "rtl") {
59
+ let e = this.calcNumberOfPages();
60
+ s = Math.max(1, e - s + 1);
61
+ }
62
+ return s;
63
+ }
64
+ getIframe() {
65
+ return this.doc.getContentContainer()?.ownerDocument?.defaultView?.frameElement;
66
+ }
67
+ getContentRootElement() {
68
+ return this.doc.inIframe ? this.doc.getContentContainer()?.ownerDocument?.documentElement : this.doc.getWrapperContainer();
69
+ }
70
+ transformCurrentDocument(e, t, n) {
71
+ !n || !e || (n == "x" ? e.style.transform = "translateX(-" + parseFloat(t.toFixed(10)) + "px)" : e.style.transform = "translateY(-" + parseFloat(t.toFixed(10)) + "px)");
72
+ }
73
+ isVerticalWriting(e) {
74
+ return e == "vertical-lr" || e == "vertical-rl";
75
+ }
83
76
  };
77
+ //#endregion
78
+ export { a as HtmlPageCalculator };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("../../../../kernal/html/finder.cjs"),l=require("../../../../kernal/html/position.cjs"),m=require("../../../../kernal/html/text.cjs"),u=require("../../../../kernal/common/number.cjs"),s=require("../../../../kernal/Constants.cjs");class g{constructor(t,e){this.doc=t,this.options=e,this.totalTotalSymbolCountMap=new Map}get textSymbolOptions(){return{removeHtmlWhitespace:this.options.removeHtmlWhitespace,whitespaceRegex:this.options.whitespaceRegex,nonWhiteSpaceSymbolTagNames:this.options.nonWhiteSpaceSymbolTagNames}}async getElementByPosition(t,e,n){const o=await this.getFormatVirtualContentContainer();return l.getElementByPosition(o,t,e,n,this.textSymbolOptions)}async getFormatVirtualContentContainer(){return this.formatVirtualContentContainer||(this.formatVirtualContentContainer=await this.doc.getVirtualContentContainer()),this.formatVirtualContentContainer}getOtherNonWhiteSpaceSymbolCount(t){let e=0;if(this.options?.nonWhiteSpaceSymbolTagNames)for(const n of this.options.nonWhiteSpaceSymbolTagNames)e+=t.getElementsByTagName(n).length;return e}async getElementByProgress(t,e){t=t??0;const n=await this.getTotalSymbolCount(e),o=Math.ceil(n*t);return this.getElementByPosition(o,e)}async getProgressByElement(t,e,n){const o=await this.getTotalSymbolCount(e);if(o==1)return 1;let i=await this.getPositionByElement(t,e,n)/o;return i<0&&(i=0),i>1&&(i=1),i}async getPositionByElement(t,e,n){const o=await this.getFormatVirtualContentContainer();let a=null;if(this.isTagDescriptor(t)){if(r.compareTagName(t.tagName,"BODY"))return n??s.ROOT_IDX;a=r.getElementByNameAndIndex(o,t.tagName,t.tagIndex)}else{const i=t;if(this.isBodyElement(i,o))return n??s.ROOT_IDX;i.ownerDocument==o.ownerDocument?a=i:a=this.resolveElementInVirtualDocument(o,i)}return a?this.isBodyElement(a,o)?n??s.ROOT_IDX:l.getPositionByElement(o,a,e,n,this.textSymbolOptions):-1}isTagDescriptor(t){return typeof t?.tagIndex=="number"&&typeof t?.tagName=="string"&&t?.nodeType!==1}isBodyElement(t,e){return t==e||r.compareTagName(t.tagName,"BODY")}resolveElementInVirtualDocument(t,e){const n=u.parseNumber(e.getAttribute(s.ElementInitialNumberName),-1,"parseInt");if(n>=0){const a=r.getElementByElementNumber(t,n);if(a)return a}const o=r.getDocumentBody(e.ownerDocument);if(!o)return null;if(o.getElementsByTagName(e.tagName).length==t.getElementsByTagName(e.tagName).length){const a=r.getElementIndex(o,e);if(a>=0)return r.getElementByNameAndIndex(t,e.tagName,a)}return null}async getTotalSymbolCount(t){let e=this.totalTotalSymbolCountMap.get(t);if(e>=0)return e;const n=await this.getFormatVirtualContentContainer();let a=m.getPureInnerTextLength(n,this.options.removeHtmlWhitespace,this.options.whitespaceRegex);if(t=="custom"){const i=this.getOtherNonWhiteSpaceSymbolCount(n);a+=i}return e=a,this.totalTotalSymbolCountMap.set(t,e),e}async dispose(){this.totalTotalSymbolCountMap.clear(),this.formatVirtualContentContainer&&(this.formatVirtualContentContainer=null)}}exports.HtmlSymbolCalclator=g;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../../../kernal/Constants.cjs"),t=require("../../../../kernal/common/number.cjs"),n=require("../../../../kernal/html/finder.cjs"),r=require("../../../../kernal/html/text.cjs"),i=require("../../../../kernal/html/position.cjs");var a=class{constructor(e,t){this.doc=e,this.options=t,this.totalTotalSymbolCountMap=new Map}get textSymbolOptions(){return{removeHtmlWhitespace:this.options.removeHtmlWhitespace,whitespaceRegex:this.options.whitespaceRegex,nonWhiteSpaceSymbolTagNames:this.options.nonWhiteSpaceSymbolTagNames}}async getElementByPosition(e,t,n){let r=await this.getFormatVirtualContentContainer();return i.getElementByPosition(r,e,t,n,this.textSymbolOptions)}async getFormatVirtualContentContainer(){return this.formatVirtualContentContainer||=await this.doc.getVirtualContentContainer(),this.formatVirtualContentContainer}getOtherNonWhiteSpaceSymbolCount(e){let t=0;if(this.options?.nonWhiteSpaceSymbolTagNames)for(let n of this.options.nonWhiteSpaceSymbolTagNames)t+=e.getElementsByTagName(n).length;return t}async getElementByProgress(e,t){e??=0;let n=await this.getTotalSymbolCount(t),r=Math.ceil(n*e);return this.getElementByPosition(r,t)}async getProgressByElement(e,t,n){let r=await this.getTotalSymbolCount(t);if(r==1)return 1;let i=await this.getPositionByElement(e,t,n)/r;return i<0&&(i=0),i>1&&(i=1),i}async getPositionByElement(e,t,r){let a=await this.getFormatVirtualContentContainer(),o=null;if(this.isTagDescriptor(e)){if(n.compareTagName(e.tagName,`BODY`))return r??-2;o=n.getElementByNameAndIndex(a,e.tagName,e.tagIndex)}else{let t=e;if(this.isBodyElement(t,a))return r??-2;o=t.ownerDocument==a.ownerDocument?t:this.resolveElementInVirtualDocument(a,t)}return o?this.isBodyElement(o,a)?r??-2:i.getPositionByElement(a,o,t,r,this.textSymbolOptions):-1}isTagDescriptor(e){return typeof e?.tagIndex==`number`&&typeof e?.tagName==`string`&&e?.nodeType!==1}isBodyElement(e,t){return e==t||n.compareTagName(e.tagName,`BODY`)}resolveElementInVirtualDocument(r,i){let a=t.parseNumber(i.getAttribute(e.ElementInitialNumberName),-1,`parseInt`);if(a>=0){let e=n.getElementByElementNumber(r,a);if(e)return e}let o=n.getDocumentBody(i.ownerDocument);if(!o)return null;if(o.getElementsByTagName(i.tagName).length==r.getElementsByTagName(i.tagName).length){let e=n.getElementIndex(o,i);if(e>=0)return n.getElementByNameAndIndex(r,i.tagName,e)}return null}async getTotalSymbolCount(e){let t=this.totalTotalSymbolCountMap.get(e);if(t>=0)return t;let n=await this.getFormatVirtualContentContainer(),i=r.getPureInnerTextLength(n,this.options.removeHtmlWhitespace,this.options.whitespaceRegex);if(e==`custom`){let e=this.getOtherNonWhiteSpaceSymbolCount(n);i+=e}return t=i,this.totalTotalSymbolCountMap.set(e,t),t}async dispose(){this.totalTotalSymbolCountMap.clear(),this.formatVirtualContentContainer&&=null}};exports.HtmlSymbolCalclator=a;
@@ -1,98 +1,88 @@
1
- import { compareTagName as s, getElementByNameAndIndex as l, getElementByElementNumber as m, getDocumentBody as u, getElementIndex as g } from "../../../../kernal/html/finder.mjs";
2
- import { getElementByPosition as h, getPositionByElement as c } from "../../../../kernal/html/position.mjs";
3
- import { getPureInnerTextLength as p } from "../../../../kernal/html/text.mjs";
4
- import { parseNumber as y } from "../../../../kernal/common/number.mjs";
5
- import { ROOT_IDX as r, ElementInitialNumberName as C } from "../../../../kernal/Constants.mjs";
6
- class E {
7
- constructor(t, e) {
8
- this.doc = t, this.options = e, this.totalTotalSymbolCountMap = /* @__PURE__ */ new Map();
9
- }
10
- get textSymbolOptions() {
11
- return {
12
- removeHtmlWhitespace: this.options.removeHtmlWhitespace,
13
- whitespaceRegex: this.options.whitespaceRegex,
14
- nonWhiteSpaceSymbolTagNames: this.options.nonWhiteSpaceSymbolTagNames
15
- };
16
- }
17
- async getElementByPosition(t, e, o) {
18
- const n = await this.getFormatVirtualContentContainer();
19
- return h(n, t, e, o, this.textSymbolOptions);
20
- }
21
- async getFormatVirtualContentContainer() {
22
- return this.formatVirtualContentContainer || (this.formatVirtualContentContainer = await this.doc.getVirtualContentContainer()), this.formatVirtualContentContainer;
23
- }
24
- getOtherNonWhiteSpaceSymbolCount(t) {
25
- let e = 0;
26
- if (this.options?.nonWhiteSpaceSymbolTagNames)
27
- for (const o of this.options.nonWhiteSpaceSymbolTagNames)
28
- e += t.getElementsByTagName(o).length;
29
- return e;
30
- }
31
- async getElementByProgress(t, e) {
32
- t = t ?? 0;
33
- const o = await this.getTotalSymbolCount(e), n = Math.ceil(o * t);
34
- return this.getElementByPosition(n, e);
35
- }
36
- async getProgressByElement(t, e, o) {
37
- const n = await this.getTotalSymbolCount(e);
38
- if (n == 1)
39
- return 1;
40
- let a = await this.getPositionByElement(t, e, o) / n;
41
- return a < 0 && (a = 0), a > 1 && (a = 1), a;
42
- }
43
- async getPositionByElement(t, e, o) {
44
- const n = await this.getFormatVirtualContentContainer();
45
- let i = null;
46
- if (this.isTagDescriptor(t)) {
47
- if (s(t.tagName, "BODY"))
48
- return o ?? r;
49
- i = l(n, t.tagName, t.tagIndex);
50
- } else {
51
- const a = t;
52
- if (this.isBodyElement(a, n))
53
- return o ?? r;
54
- a.ownerDocument == n.ownerDocument ? i = a : i = this.resolveElementInVirtualDocument(n, a);
55
- }
56
- return i ? this.isBodyElement(i, n) ? o ?? r : c(n, i, e, o, this.textSymbolOptions) : -1;
57
- }
58
- isTagDescriptor(t) {
59
- return typeof t?.tagIndex == "number" && typeof t?.tagName == "string" && t?.nodeType !== 1;
60
- }
61
- isBodyElement(t, e) {
62
- return t == e || s(t.tagName, "BODY");
63
- }
64
- resolveElementInVirtualDocument(t, e) {
65
- const o = y(e.getAttribute(C), -1, "parseInt");
66
- if (o >= 0) {
67
- const i = m(t, o);
68
- if (i)
69
- return i;
70
- }
71
- const n = u(e.ownerDocument);
72
- if (!n)
73
- return null;
74
- if (n.getElementsByTagName(e.tagName).length == t.getElementsByTagName(e.tagName).length) {
75
- const i = g(n, e);
76
- if (i >= 0)
77
- return l(t, e.tagName, i);
78
- }
79
- return null;
80
- }
81
- async getTotalSymbolCount(t) {
82
- let e = this.totalTotalSymbolCountMap.get(t);
83
- if (e >= 0) return e;
84
- const o = await this.getFormatVirtualContentContainer();
85
- let i = p(o, this.options.removeHtmlWhitespace, this.options.whitespaceRegex);
86
- if (t == "custom") {
87
- const a = this.getOtherNonWhiteSpaceSymbolCount(o);
88
- i += a;
89
- }
90
- return e = i, this.totalTotalSymbolCountMap.set(t, e), e;
91
- }
92
- async dispose() {
93
- this.totalTotalSymbolCountMap.clear(), this.formatVirtualContentContainer && (this.formatVirtualContentContainer = null);
94
- }
95
- }
96
- export {
97
- E as HtmlSymbolCalclator
1
+ import { ElementInitialNumberName as e } from "../../../../kernal/Constants.mjs";
2
+ import { parseNumber as t } from "../../../../kernal/common/number.mjs";
3
+ import { compareTagName as n, getDocumentBody as r, getElementByElementNumber as i, getElementByNameAndIndex as a, getElementIndex as o } from "../../../../kernal/html/finder.mjs";
4
+ import { getPureInnerTextLength as s } from "../../../../kernal/html/text.mjs";
5
+ import { getElementByPosition as c, getPositionByElement as l } from "../../../../kernal/html/position.mjs";
6
+ //#region mediaTypes/html/renderer/document/HtmlSymbolCalclator.ts
7
+ var u = class {
8
+ constructor(e, t) {
9
+ this.doc = e, this.options = t, this.totalTotalSymbolCountMap = /* @__PURE__ */ new Map();
10
+ }
11
+ get textSymbolOptions() {
12
+ return {
13
+ removeHtmlWhitespace: this.options.removeHtmlWhitespace,
14
+ whitespaceRegex: this.options.whitespaceRegex,
15
+ nonWhiteSpaceSymbolTagNames: this.options.nonWhiteSpaceSymbolTagNames
16
+ };
17
+ }
18
+ async getElementByPosition(e, t, n) {
19
+ let r = await this.getFormatVirtualContentContainer();
20
+ return c(r, e, t, n, this.textSymbolOptions);
21
+ }
22
+ async getFormatVirtualContentContainer() {
23
+ return this.formatVirtualContentContainer ||= await this.doc.getVirtualContentContainer(), this.formatVirtualContentContainer;
24
+ }
25
+ getOtherNonWhiteSpaceSymbolCount(e) {
26
+ let t = 0;
27
+ if (this.options?.nonWhiteSpaceSymbolTagNames) for (let n of this.options.nonWhiteSpaceSymbolTagNames) t += e.getElementsByTagName(n).length;
28
+ return t;
29
+ }
30
+ async getElementByProgress(e, t) {
31
+ e ??= 0;
32
+ let n = await this.getTotalSymbolCount(t), r = Math.ceil(n * e);
33
+ return this.getElementByPosition(r, t);
34
+ }
35
+ async getProgressByElement(e, t, n) {
36
+ let r = await this.getTotalSymbolCount(t);
37
+ if (r == 1) return 1;
38
+ let i = await this.getPositionByElement(e, t, n) / r;
39
+ return i < 0 && (i = 0), i > 1 && (i = 1), i;
40
+ }
41
+ async getPositionByElement(e, t, r) {
42
+ let i = await this.getFormatVirtualContentContainer(), o = null;
43
+ if (this.isTagDescriptor(e)) {
44
+ if (n(e.tagName, "BODY")) return r ?? -2;
45
+ o = a(i, e.tagName, e.tagIndex);
46
+ } else {
47
+ let t = e;
48
+ if (this.isBodyElement(t, i)) return r ?? -2;
49
+ o = t.ownerDocument == i.ownerDocument ? t : this.resolveElementInVirtualDocument(i, t);
50
+ }
51
+ return o ? this.isBodyElement(o, i) ? r ?? -2 : l(i, o, t, r, this.textSymbolOptions) : -1;
52
+ }
53
+ isTagDescriptor(e) {
54
+ return typeof e?.tagIndex == "number" && typeof e?.tagName == "string" && e?.nodeType !== 1;
55
+ }
56
+ isBodyElement(e, t) {
57
+ return e == t || n(e.tagName, "BODY");
58
+ }
59
+ resolveElementInVirtualDocument(n, s) {
60
+ let c = t(s.getAttribute(e), -1, "parseInt");
61
+ if (c >= 0) {
62
+ let e = i(n, c);
63
+ if (e) return e;
64
+ }
65
+ let l = r(s.ownerDocument);
66
+ if (!l) return null;
67
+ if (l.getElementsByTagName(s.tagName).length == n.getElementsByTagName(s.tagName).length) {
68
+ let e = o(l, s);
69
+ if (e >= 0) return a(n, s.tagName, e);
70
+ }
71
+ return null;
72
+ }
73
+ async getTotalSymbolCount(e) {
74
+ let t = this.totalTotalSymbolCountMap.get(e);
75
+ if (t >= 0) return t;
76
+ let n = await this.getFormatVirtualContentContainer(), r = s(n, this.options.removeHtmlWhitespace, this.options.whitespaceRegex);
77
+ if (e == "custom") {
78
+ let e = this.getOtherNonWhiteSpaceSymbolCount(n);
79
+ r += e;
80
+ }
81
+ return t = r, this.totalTotalSymbolCountMap.set(e, t), t;
82
+ }
83
+ async dispose() {
84
+ this.totalTotalSymbolCountMap.clear(), this.formatVirtualContentContainer &&= null;
85
+ }
98
86
  };
87
+ //#endregion
88
+ export { u as HtmlSymbolCalclator };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const C=require("../../../../kernal/html/injector.cjs"),d=require("../../../../kernal/common/uuid.cjs"),t=require("../../HtmlSettings.cjs"),a=require("../layout/ViewportCssVariableNames.cjs"),c=require("../../../../kernal/Options.cjs"),p=require("../../../../kernal/Theme.cjs");class g{constructor(o){this.htmlOptions=o}createContainers(){const{rendererCss:o,rendererContainer:r}=this.createRendererContainer(),{contentsContainer:s,transformContainer:l,contentsContainerCss:i,transformContainerCss:n,contentContainerCss:e}=this.createOtherContainers();r.appendChild(s);const m=i+n+e;return{rendererContainer:r,rendererCss:o,otherCss:m,contentsContainer:s,transformContainer:l}}createRendererContainer(){const o="renderer";let r=`.${o}{margin-block-start:var(${c.Options.HeaderHeight});`;r+=`margin-block-end:var(${c.Options.FooterHeight});`,r+="overflow:auto;outline:none;width:100%;",r+=`height:calc(100% - var(${c.Options.HeaderHeight}) - var(${c.Options.FooterHeight}));`,r+=`overflow-y:var(${a.ViewportCssVariableNames.ScrollElementOverflow});`,r+="overflow-x:hidden;",r+="}";const s=C.createElement(document,"div",d.getRandomId(!0),o);return s.classList.add(p.Theme.customScrollerClassName),s.setAttribute("data-role","renderer-container"),{rendererCss:r,rendererContainer:s}}createOtherContainers(){const o=t.HtmlSettings.ContentsContainerCssName;let r=`.${o}{width:var(${a.ViewportCssVariableNames.ContentsContainerWidth});`;r+="margin:0 auto;",r+=`padding:var(${a.ViewportCssVariableNames.ContentsContainerPadding});`,r+="}";const s=C.createElement(document,"div",d.getRandomId(!0),o);s.setAttribute("data-role","contents-container");const l=C.createElement(document,"div",d.getRandomId(!0),t.HtmlSettings.ContentsShadowContainerCssName),i=C.createElement(document,"div",d.getRandomId(!0),t.HtmlSettings.TransformContainerCssName);this.htmlOptions.flipPageStyle=="slide"&&i.classList.add("slide"),l.appendChild(i),s.appendChild(l);let n="."+t.HtmlSettings.FileContentContainerClassName+"{";n+="position:relative;",n+="width:auto;",n+="min-width:var("+a.ViewportCssVariableNames.ContentWrapperMinWidth+");",n+="overflow:hidden;height:var("+a.ViewportCssVariableNames.ContentWrapperHeight+");",n+="padding:var("+a.ViewportCssVariableNames.ContentWrapperPadding+");",n+="margin-block-end: var("+a.ViewportCssVariableNames.ContentWrapperMarginBottom+");",this.htmlOptions.enableContentWrapperBorderRadius&&this.htmlOptions.flipMode=="scroll"&&(n+="border-radius: var("+a.ViewportCssVariableNames.ContentWrapperBorderRadius+");"),n+="background:var("+p.Theme.ContentBackground+");",n+="}",n+="."+t.HtmlSettings.FileContentContainerClassName+":first-child{",n+="margin-block-start: var("+a.ViewportCssVariableNames.ContentWrapperMarginTop+");",n+="}",n+="."+t.HtmlSettings.FileContentContainerClassName+"."+t.HtmlSettings.FileContentContainerHeightClassName+"{",n+="min-height:var("+a.ViewportCssVariableNames.ContentWrapperMinHeight+");",n+="max-height:var("+a.ViewportCssVariableNames.ContentWrapperMaxHeight+");",n+="}";let e="";e+="."+t.HtmlSettings.TransformPagesClassName+" ."+t.HtmlSettings.ContentsContainerCssName+"{",e+=`overflow:hidden;background-color:var(${p.Theme.ContentBackground})`,e+="}",e+="."+t.HtmlSettings.TransformPagesClassName+" ."+t.HtmlSettings.TransformContainerCssName+"{",e+="display:flex;flex-wrap:nowrap;position: relative;transition-property:transform;",e+="}",e+="."+t.HtmlSettings.TransformPagesClassName+" ."+t.HtmlSettings.TransformContainerCssName+".slide{",e+="transition-property:transform;",e+="}";const m=1;return e+="."+t.HtmlSettings.TransformPagesClassName+" ."+t.HtmlSettings.FileContentContainerClassName+"{",e+=`flex-shrink: 0;padding-inline-end:calc(var(${a.ViewportCssVariableNames.ContentColumnGap}) / 2 - ${m}px);margin-inline-end:calc(var(${a.ViewportCssVariableNames.ContentColumnGap}) / 2);`,e+=`border-right: ${m}px solid var(${p.Theme.ColumnRuleColor});transition-property: transform;`,e+="}",e+="."+t.HtmlSettings.TransformPagesClassName+" ."+t.HtmlSettings.FileContentContainerClassName+":last-child{",e+="border-right:none;",e+="}",e+="."+t.HtmlSettings.TransformPagesClassName+" ."+t.HtmlSettings.ContentsShadowContainerCssName+"{",e+=`overflow:hidden;margin:0 ${this.htmlOptions.contentsShadowMargin??20}px`,e+="}",e+="."+t.HtmlSettings.TransformContainerCssName+"{",e+="}",{contentsContainer:s,transformContainer:i,contentsContainerCss:r,transformContainerCss:e,contentContainerCss:n}}}exports.HtmlContainerBuilder=g;
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/html/injector.cjs"),i=require("../../HtmlSettings.cjs"),a=require("../layout/ViewportCssVariableNames.cjs");var o=class{constructor(e){this.htmlOptions=e}createContainers(){let{rendererCss:e,rendererContainer:t}=this.createRendererContainer(),{contentsContainer:n,transformContainer:r,contentsContainerCss:i,transformContainerCss:a,contentContainerCss:o}=this.createOtherContainers();return t.appendChild(n),{rendererContainer:t,rendererCss:e,otherCss:i+a+o,contentsContainer:n,transformContainer:r}}createRendererContainer(){let i=`renderer`,o=`.${i}{margin-block-start:var(${e.Options.HeaderHeight});`;o+=`margin-block-end:var(${e.Options.FooterHeight});`,o+=`overflow:auto;outline:none;width:100%;`,o+=`height:calc(100% - var(${e.Options.HeaderHeight}) - var(${e.Options.FooterHeight}));`,o+=`overflow-y:var(${a.ViewportCssVariableNames.ScrollElementOverflow});`,o+=`overflow-x:hidden;`,o+=`}`;let s=r.createElement(document,`div`,n.getRandomId(!0),i);return s.classList.add(t.Theme.customScrollerClassName),s.setAttribute(`data-role`,`renderer-container`),{rendererCss:o,rendererContainer:s}}createOtherContainers(){let e=i.HtmlSettings.ContentsContainerCssName,o=`.${e}{width:var(${a.ViewportCssVariableNames.ContentsContainerWidth});`;o+=`margin:0 auto;`,o+=`padding:var(${a.ViewportCssVariableNames.ContentsContainerPadding});`,o+=`}`;let s=r.createElement(document,`div`,n.getRandomId(!0),e);s.setAttribute(`data-role`,`contents-container`);let c=r.createElement(document,`div`,n.getRandomId(!0),i.HtmlSettings.ContentsShadowContainerCssName),l=r.createElement(document,`div`,n.getRandomId(!0),i.HtmlSettings.TransformContainerCssName);this.htmlOptions.flipPageStyle==`slide`&&l.classList.add(`slide`),c.appendChild(l),s.appendChild(c);let u=`.`+i.HtmlSettings.FileContentContainerClassName+`{`;u+=`position:relative;`,u+=`width:auto;`,u+=`min-width:var(`+a.ViewportCssVariableNames.ContentWrapperMinWidth+`);`,u+=`overflow:hidden;height:var(`+a.ViewportCssVariableNames.ContentWrapperHeight+`);`,u+=`padding:var(`+a.ViewportCssVariableNames.ContentWrapperPadding+`);`,u+=`margin-block-end: var(`+a.ViewportCssVariableNames.ContentWrapperMarginBottom+`);`,this.htmlOptions.enableContentWrapperBorderRadius&&this.htmlOptions.flipMode==`scroll`&&(u+=`border-radius: var(`+a.ViewportCssVariableNames.ContentWrapperBorderRadius+`);`),u+=`background:var(`+t.Theme.ContentBackground+`);`,u+=`}`,u+=`.`+i.HtmlSettings.FileContentContainerClassName+`:first-child{`,u+=`margin-block-start: var(`+a.ViewportCssVariableNames.ContentWrapperMarginTop+`);`,u+=`}`,u+=`.`+i.HtmlSettings.FileContentContainerClassName+`.`+i.HtmlSettings.FileContentContainerHeightClassName+`{`,u+=`min-height:var(`+a.ViewportCssVariableNames.ContentWrapperMinHeight+`);`,u+=`max-height:var(`+a.ViewportCssVariableNames.ContentWrapperMaxHeight+`);`,u+=`}`;let d=``;return d+=`.`+i.HtmlSettings.TransformPagesClassName+` .`+i.HtmlSettings.ContentsContainerCssName+`{`,d+=`overflow:hidden;background-color:var(${t.Theme.ContentBackground})`,d+=`}`,d+=`.`+i.HtmlSettings.TransformPagesClassName+` .`+i.HtmlSettings.TransformContainerCssName+`{`,d+=`display:flex;flex-wrap:nowrap;position: relative;transition-property:transform;`,d+=`}`,d+=`.`+i.HtmlSettings.TransformPagesClassName+` .`+i.HtmlSettings.TransformContainerCssName+`.slide{`,d+=`transition-property:transform;`,d+=`}`,d+=`.`+i.HtmlSettings.TransformPagesClassName+` .`+i.HtmlSettings.FileContentContainerClassName+`{`,d+=`flex-shrink: 0;padding-inline-end:calc(var(${a.ViewportCssVariableNames.ContentColumnGap}) / 2 - 1px);margin-inline-end:calc(var(${a.ViewportCssVariableNames.ContentColumnGap}) / 2);`,d+=`border-right: 1px solid var(${t.Theme.ColumnRuleColor});transition-property: transform;`,d+=`}`,d+=`.`+i.HtmlSettings.TransformPagesClassName+` .`+i.HtmlSettings.FileContentContainerClassName+`:last-child{`,d+=`border-right:none;`,d+=`}`,d+=`.`+i.HtmlSettings.TransformPagesClassName+` .`+i.HtmlSettings.ContentsShadowContainerCssName+`{`,d+=`overflow:hidden;margin:0 ${this.htmlOptions.contentsShadowMargin??20}px`,d+=`}`,d+=`.`+i.HtmlSettings.TransformContainerCssName+`{`,d+=`}`,{contentsContainer:s,transformContainer:l,contentsContainerCss:o,transformContainerCss:d,contentContainerCss:u}}};exports.HtmlContainerBuilder=o;
@@ -1,66 +1,51 @@
1
- import { createElement as d } from "../../../../kernal/html/injector.mjs";
2
- import { getRandomId as m } from "../../../../kernal/common/uuid.mjs";
3
- import { HtmlSettings as n } from "../../HtmlSettings.mjs";
1
+ import { Options as e } from "../../../../kernal/Options.mjs";
2
+ import { Theme as t } from "../../../../kernal/Theme.mjs";
3
+ import { getRandomId as n } from "../../../../kernal/common/uuid.mjs";
4
+ import { createElement as r } from "../../../../kernal/html/injector.mjs";
5
+ import { HtmlSettings as i } from "../../HtmlSettings.mjs";
4
6
  import { ViewportCssVariableNames as a } from "../layout/ViewportCssVariableNames.mjs";
5
- import { Options as p } from "../../../../kernal/Options.mjs";
6
- import { Theme as c } from "../../../../kernal/Theme.mjs";
7
- class $ {
8
- constructor(s) {
9
- this.htmlOptions = s;
10
- }
11
- createContainers() {
12
- const {
13
- rendererCss: s,
14
- rendererContainer: r
15
- } = this.createRendererContainer(), {
16
- contentsContainer: o,
17
- transformContainer: C,
18
- contentsContainerCss: i,
19
- transformContainerCss: t,
20
- contentContainerCss: e
21
- } = this.createOtherContainers();
22
- r.appendChild(o);
23
- const l = i + t + e;
24
- return {
25
- rendererContainer: r,
26
- rendererCss: s,
27
- otherCss: l,
28
- contentsContainer: o,
29
- transformContainer: C
30
- };
31
- }
32
- createRendererContainer() {
33
- const s = "renderer";
34
- let r = `.${s}{margin-block-start:var(${p.HeaderHeight});`;
35
- r += `margin-block-end:var(${p.FooterHeight});`, r += "overflow:auto;outline:none;width:100%;", r += `height:calc(100% - var(${p.HeaderHeight}) - var(${p.FooterHeight}));`, r += `overflow-y:var(${a.ScrollElementOverflow});`, r += "overflow-x:hidden;", r += "}";
36
- const o = d(document, "div", m(!0), s);
37
- return o.classList.add(c.customScrollerClassName), o.setAttribute("data-role", "renderer-container"), {
38
- rendererCss: r,
39
- rendererContainer: o
40
- };
41
- }
42
- createOtherContainers() {
43
- const s = n.ContentsContainerCssName;
44
- let r = `.${s}{width:var(${a.ContentsContainerWidth});`;
45
- r += "margin:0 auto;", r += `padding:var(${a.ContentsContainerPadding});`, r += "}";
46
- const o = d(document, "div", m(!0), s);
47
- o.setAttribute("data-role", "contents-container");
48
- const C = d(document, "div", m(!0), n.ContentsShadowContainerCssName), i = d(document, "div", m(!0), n.TransformContainerCssName);
49
- this.htmlOptions.flipPageStyle == "slide" && i.classList.add("slide"), C.appendChild(i), o.appendChild(C);
50
- let t = "." + n.FileContentContainerClassName + "{";
51
- t += "position:relative;", t += "width:auto;", t += "min-width:var(" + a.ContentWrapperMinWidth + ");", t += "overflow:hidden;height:var(" + a.ContentWrapperHeight + ");", t += "padding:var(" + a.ContentWrapperPadding + ");", t += "margin-block-end: var(" + a.ContentWrapperMarginBottom + ");", this.htmlOptions.enableContentWrapperBorderRadius && this.htmlOptions.flipMode == "scroll" && (t += "border-radius: var(" + a.ContentWrapperBorderRadius + ");"), t += "background:var(" + c.ContentBackground + ");", t += "}", t += "." + n.FileContentContainerClassName + ":first-child{", t += "margin-block-start: var(" + a.ContentWrapperMarginTop + ");", t += "}", t += "." + n.FileContentContainerClassName + "." + n.FileContentContainerHeightClassName + "{", t += "min-height:var(" + a.ContentWrapperMinHeight + ");", t += "max-height:var(" + a.ContentWrapperMaxHeight + ");", t += "}";
52
- let e = "";
53
- e += "." + n.TransformPagesClassName + " ." + n.ContentsContainerCssName + "{", e += `overflow:hidden;background-color:var(${c.ContentBackground})`, e += "}", e += "." + n.TransformPagesClassName + " ." + n.TransformContainerCssName + "{", e += "display:flex;flex-wrap:nowrap;position: relative;transition-property:transform;", e += "}", e += "." + n.TransformPagesClassName + " ." + n.TransformContainerCssName + ".slide{", e += "transition-property:transform;", e += "}";
54
- const l = 1;
55
- return e += "." + n.TransformPagesClassName + " ." + n.FileContentContainerClassName + "{", e += `flex-shrink: 0;padding-inline-end:calc(var(${a.ContentColumnGap}) / 2 - ${l}px);margin-inline-end:calc(var(${a.ContentColumnGap}) / 2);`, e += `border-right: ${l}px solid var(${c.ColumnRuleColor});transition-property: transform;`, e += "}", e += "." + n.TransformPagesClassName + " ." + n.FileContentContainerClassName + ":last-child{", e += "border-right:none;", e += "}", e += "." + n.TransformPagesClassName + " ." + n.ContentsShadowContainerCssName + "{", e += `overflow:hidden;margin:0 ${this.htmlOptions.contentsShadowMargin ?? 20}px`, e += "}", e += "." + n.TransformContainerCssName + "{", e += "}", {
56
- contentsContainer: o,
57
- transformContainer: i,
58
- contentsContainerCss: r,
59
- transformContainerCss: e,
60
- contentContainerCss: t
61
- };
62
- }
63
- }
64
- export {
65
- $ as HtmlContainerBuilder
7
+ //#region mediaTypes/html/renderer/documents/HtmlContainerBuilder.ts
8
+ var o = class {
9
+ constructor(e) {
10
+ this.htmlOptions = e;
11
+ }
12
+ createContainers() {
13
+ let { rendererCss: e, rendererContainer: t } = this.createRendererContainer(), { contentsContainer: n, transformContainer: r, contentsContainerCss: i, transformContainerCss: a, contentContainerCss: o } = this.createOtherContainers();
14
+ return t.appendChild(n), {
15
+ rendererContainer: t,
16
+ rendererCss: e,
17
+ otherCss: i + a + o,
18
+ contentsContainer: n,
19
+ transformContainer: r
20
+ };
21
+ }
22
+ createRendererContainer() {
23
+ let i = "renderer", o = `.${i}{margin-block-start:var(${e.HeaderHeight});`;
24
+ o += `margin-block-end:var(${e.FooterHeight});`, o += "overflow:auto;outline:none;width:100%;", o += `height:calc(100% - var(${e.HeaderHeight}) - var(${e.FooterHeight}));`, o += `overflow-y:var(${a.ScrollElementOverflow});`, o += "overflow-x:hidden;", o += "}";
25
+ let s = r(document, "div", n(!0), i);
26
+ return s.classList.add(t.customScrollerClassName), s.setAttribute("data-role", "renderer-container"), {
27
+ rendererCss: o,
28
+ rendererContainer: s
29
+ };
30
+ }
31
+ createOtherContainers() {
32
+ let e = i.ContentsContainerCssName, o = `.${e}{width:var(${a.ContentsContainerWidth});`;
33
+ o += "margin:0 auto;", o += `padding:var(${a.ContentsContainerPadding});`, o += "}";
34
+ let s = r(document, "div", n(!0), e);
35
+ s.setAttribute("data-role", "contents-container");
36
+ let c = r(document, "div", n(!0), i.ContentsShadowContainerCssName), l = r(document, "div", n(!0), i.TransformContainerCssName);
37
+ this.htmlOptions.flipPageStyle == "slide" && l.classList.add("slide"), c.appendChild(l), s.appendChild(c);
38
+ let u = "." + i.FileContentContainerClassName + "{";
39
+ u += "position:relative;", u += "width:auto;", u += "min-width:var(" + a.ContentWrapperMinWidth + ");", u += "overflow:hidden;height:var(" + a.ContentWrapperHeight + ");", u += "padding:var(" + a.ContentWrapperPadding + ");", u += "margin-block-end: var(" + a.ContentWrapperMarginBottom + ");", this.htmlOptions.enableContentWrapperBorderRadius && this.htmlOptions.flipMode == "scroll" && (u += "border-radius: var(" + a.ContentWrapperBorderRadius + ");"), u += "background:var(" + t.ContentBackground + ");", u += "}", u += "." + i.FileContentContainerClassName + ":first-child{", u += "margin-block-start: var(" + a.ContentWrapperMarginTop + ");", u += "}", u += "." + i.FileContentContainerClassName + "." + i.FileContentContainerHeightClassName + "{", u += "min-height:var(" + a.ContentWrapperMinHeight + ");", u += "max-height:var(" + a.ContentWrapperMaxHeight + ");", u += "}";
40
+ let d = "";
41
+ return d += "." + i.TransformPagesClassName + " ." + i.ContentsContainerCssName + "{", d += `overflow:hidden;background-color:var(${t.ContentBackground})`, d += "}", d += "." + i.TransformPagesClassName + " ." + i.TransformContainerCssName + "{", d += "display:flex;flex-wrap:nowrap;position: relative;transition-property:transform;", d += "}", d += "." + i.TransformPagesClassName + " ." + i.TransformContainerCssName + ".slide{", d += "transition-property:transform;", d += "}", d += "." + i.TransformPagesClassName + " ." + i.FileContentContainerClassName + "{", d += `flex-shrink: 0;padding-inline-end:calc(var(${a.ContentColumnGap}) / 2 - 1px);margin-inline-end:calc(var(${a.ContentColumnGap}) / 2);`, d += `border-right: 1px solid var(${t.ColumnRuleColor});transition-property: transform;`, d += "}", d += "." + i.TransformPagesClassName + " ." + i.FileContentContainerClassName + ":last-child{", d += "border-right:none;", d += "}", d += "." + i.TransformPagesClassName + " ." + i.ContentsShadowContainerCssName + "{", d += `overflow:hidden;margin:0 ${this.htmlOptions.contentsShadowMargin ?? 20}px`, d += "}", d += "." + i.TransformContainerCssName + "{", d += "}", {
42
+ contentsContainer: s,
43
+ transformContainer: l,
44
+ contentsContainerCss: o,
45
+ transformContainerCss: d,
46
+ contentContainerCss: u
47
+ };
48
+ }
66
49
  };
50
+ //#endregion
51
+ export { o as HtmlContainerBuilder };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("../../../../kernal/EventNames.cjs");class o{constructor(e){this.documentsProvider=e,this.documentMap=new Map,this.setDocumentVisible=(n,t)=>{n.isVisible=t},this.events=this.documentsProvider.owner.events}register(){this.contentContainerIntersectionObserver=new IntersectionObserver(e=>{for(let n=0;n<e.length;n++){const t=e[n],s=t.isIntersecting||t.intersectionRatio>0;this.setDocumentVisible(t.target,s);const r=this.documentMap.get(t.target);r&&this.events.emit(i.EventNames.DocumentVisibleChange,r,s)}},{rootMargin:"-2px"}),this.observeContainers()}unregister(){this.contentContainerIntersectionObserver?.disconnect(),this.contentContainerIntersectionObserver=void 0,this.documentMap.clear()}observeContainers(){for(const e of this.documentsProvider.getDocuments())this.documentMap.set(e.getWrapperContainer(),e),this.contentContainerIntersectionObserver.observe(e.getWrapperContainer())}async dispose(){this.unregister()}}exports.HtmlDocumentsIntersectionObserver=o;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../../../kernal/EventNames.cjs");var t=class{constructor(e){this.documentsProvider=e,this.documentMap=new Map,this.setDocumentVisible=(e,t)=>{e.isVisible=t},this.events=this.documentsProvider.owner.events}register(){this.contentContainerIntersectionObserver=new IntersectionObserver(t=>{for(let n=0;n<t.length;n++){let r=t[n],i=r.isIntersecting||r.intersectionRatio>0;this.setDocumentVisible(r.target,i);let a=this.documentMap.get(r.target);a&&this.events.emit(e.EventNames.DocumentVisibleChange,a,i)}},{rootMargin:`-2px`}),this.observeContainers()}unregister(){this.contentContainerIntersectionObserver?.disconnect(),this.contentContainerIntersectionObserver=void 0,this.documentMap.clear()}observeContainers(){for(let e of this.documentsProvider.getDocuments())this.documentMap.set(e.getWrapperContainer(),e),this.contentContainerIntersectionObserver.observe(e.getWrapperContainer())}async dispose(){this.unregister()}};exports.HtmlDocumentsIntersectionObserver=t;