@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,68 +1,63 @@
1
- const g = (e, r, s, n) => {
2
- const l = function(c) {
3
- if (n && n(c), r) {
4
- if (u)
5
- return;
6
- u = window.requestAnimationFrame(() => {
7
- u = null;
8
- let i = 0, f = 0;
9
- e instanceof Document ? (i = e.documentElement.scrollLeft, f = e.documentElement.scrollTop) : (i = e.scrollLeft, f = e.scrollTop);
10
- const p = o.lastX;
11
- i !== p && (o.right = i > p), o.lastX = i;
12
- const v = o.lastY;
13
- f !== v && (o.down = f > v), o.lastY = f, s(o, c);
14
- });
15
- }
16
- };
17
- let a = 0, t = 0;
18
- r && (e instanceof Document ? (a = e.documentElement.scrollLeft, t = e.documentElement.scrollTop) : (a = e.scrollLeft, t = e.scrollTop));
19
- const o = {
20
- right: !0,
21
- down: !0,
22
- lastX: a,
23
- lastY: t,
24
- _eventHandler: l
25
- };
26
- let u = null;
27
- return e.addEventListener("scroll", l, !0), o;
28
- }, m = (e) => {
29
- const r = e.getElementsByTagName("iframe");
30
- for (let s = 0; s < r.length; s++) {
31
- const n = r.item(s);
32
- n.style.setProperty("pointer-events", "none", "important"), n.contentDocument?.getElementsByTagName("iframe").length > 0 && m(n.contentDocument);
33
- }
34
- }, d = (e) => {
35
- const r = e.getElementsByTagName("iframe");
36
- for (let s = 0; s < r.length; s++) {
37
- const n = r.item(s);
38
- n.style.removeProperty("pointer-events"), n.contentDocument?.getElementsByTagName("iframe").length > 0 && d(n.contentDocument);
39
- }
40
- }, D = (e) => {
41
- e.addEventListener("dragenter", (r) => {
42
- r.preventDefault(), m(document);
43
- }, !0), e.addEventListener("drop", (r) => {
44
- r.preventDefault();
45
- }, !0), e.addEventListener("dragover", (r) => {
46
- r.preventDefault(), m(document);
47
- }, !0), e.addEventListener("dragleave", (r) => {
48
- r.preventDefault(), d(document);
49
- }, !0), e.addEventListener("dragend", (r) => {
50
- r.preventDefault(), d(document);
51
- }, !0);
52
- }, E = (e, r, s, n, l) => {
53
- let a = null;
54
- e.addEventListener("dragenter", (t) => {
55
- r(t) && (a = t.target, t.preventDefault(), t.stopImmediatePropagation(), n && n(t));
56
- }), e.addEventListener("dragover", (t) => {
57
- r(t) && (t.dataTransfer.dropEffect = "copy", t.preventDefault(), t.stopImmediatePropagation());
58
- }), e.addEventListener("dragleave", (t) => {
59
- r(t) && (t.preventDefault(), t.stopImmediatePropagation(), l && t.target == a && l(t));
60
- }), e.addEventListener("drop", (t) => {
61
- r(t) && (t.preventDefault(), t.stopImmediatePropagation(), d(document), s(t.dataTransfer.files, t));
62
- });
63
- };
64
- export {
65
- D as disableDefaultDragEvents,
66
- E as startCaptureDragEvents,
67
- g as watchScroll
1
+ //#region kernal/html/events.ts
2
+ var e = (e, t, n, r) => {
3
+ let i = function(i) {
4
+ if (r && r(i), t) {
5
+ if (c) return;
6
+ c = window.requestAnimationFrame(() => {
7
+ c = null;
8
+ let t = 0, r = 0;
9
+ e instanceof Document ? (t = e.documentElement.scrollLeft, r = e.documentElement.scrollTop) : (t = e.scrollLeft, r = e.scrollTop);
10
+ let a = s.lastX;
11
+ t !== a && (s.right = t > a), s.lastX = t;
12
+ let o = s.lastY;
13
+ r !== o && (s.down = r > o), s.lastY = r, n(s, i);
14
+ });
15
+ }
16
+ }, a = 0, o = 0;
17
+ t && (e instanceof Document ? (a = e.documentElement.scrollLeft, o = e.documentElement.scrollTop) : (a = e.scrollLeft, o = e.scrollTop));
18
+ let s = {
19
+ right: !0,
20
+ down: !0,
21
+ lastX: a,
22
+ lastY: o,
23
+ _eventHandler: i
24
+ }, c = null;
25
+ return e.addEventListener("scroll", i, !0), s;
26
+ }, t = (e) => {
27
+ let n = e.getElementsByTagName("iframe");
28
+ for (let e = 0; e < n.length; e++) {
29
+ let r = n.item(e);
30
+ r.style.setProperty("pointer-events", "none", "important"), r.contentDocument?.getElementsByTagName("iframe").length > 0 && t(r.contentDocument);
31
+ }
32
+ }, n = (e) => {
33
+ let t = e.getElementsByTagName("iframe");
34
+ for (let e = 0; e < t.length; e++) {
35
+ let r = t.item(e);
36
+ r.style.removeProperty("pointer-events"), r.contentDocument?.getElementsByTagName("iframe").length > 0 && n(r.contentDocument);
37
+ }
38
+ }, r = (e) => {
39
+ e.addEventListener("dragenter", (e) => {
40
+ e.preventDefault(), t(document);
41
+ }, !0), e.addEventListener("drop", (e) => {
42
+ e.preventDefault();
43
+ }, !0), e.addEventListener("dragover", (e) => {
44
+ e.preventDefault(), t(document);
45
+ }, !0), e.addEventListener("dragleave", (e) => {
46
+ e.preventDefault(), n(document);
47
+ }, !0), e.addEventListener("dragend", (e) => {
48
+ e.preventDefault(), n(document);
49
+ }, !0);
50
+ }, i = (e, t, r, i, a) => {
51
+ let o = null;
52
+ e.addEventListener("dragenter", (e) => {
53
+ t(e) && (o = e.target, e.preventDefault(), e.stopImmediatePropagation(), i && i(e));
54
+ }), e.addEventListener("dragover", (e) => {
55
+ t(e) && (e.dataTransfer.dropEffect = "copy", e.preventDefault(), e.stopImmediatePropagation());
56
+ }), e.addEventListener("dragleave", (e) => {
57
+ t(e) && (e.preventDefault(), e.stopImmediatePropagation(), a && e.target == o && a(e));
58
+ }), e.addEventListener("drop", (e) => {
59
+ t(e) && (e.preventDefault(), e.stopImmediatePropagation(), n(document), r(e.dataTransfer.files, e));
60
+ });
68
61
  };
62
+ //#endregion
63
+ export { r as disableDefaultDragEvents, i as startCaptureDragEvents, e as watchScroll };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("../Constants.cjs"),c=require("../common/number.cjs"),g=(t,e)=>!t||!e?!1:t==e||t?.toLowerCase()==e?.toLowerCase(),C=t=>{let e=t.head;return e||(e=t.querySelector("head")),e},N=t=>{if(!t)return null;let e=t.body;return e||(e=t.querySelector("body")),e},E=(t,e)=>{let n=0;for(n=0;n<t.length;n++)if(t.item(n)==e)return n;for(n=0;n<t.length;n++){const s=t.item(n);if(s.tagName==e.tagName){const r=s.getAttribute(a.ElementInitialNumberName);if(r&&r==e.getAttribute(a.ElementInitialNumberName))return n}}return-1},I=t=>{const e=[];return e.push(t),t.hasChildNodes()&&t.childNodes.forEach(n=>{e.push(...I(n))}),e},D=(t,e,n)=>{if(e<0||e>=t.length||t[e]!==n||n.nodeType!=Node.ELEMENT_NODE&&n.nodeType!=Node.DOCUMENT_NODE)return e;const s=n;let r=e;for(let l=e+1;l<t.length&&s.contains(t[l]);l++)r=l;return r},w=(t,e)=>t.nodeType==Node.ELEMENT_NODE||t.nodeType==Node.DOCUMENT_NODE?t.contains(e):!1,O=(t,e,n)=>{const s=t.ownerDocument?g(t.tagName,"BODY")?"body":"element":"document",r=t.ownerDocument??t,l=e.ownerDocument;if(!n||n=="similar"){const i=e.tagName;if(r!=l){const y=N(l);return E(y.getElementsByTagName(i),e)}else return E(t.getElementsByTagName(i),e)}else if(r!=l){const i=N(l);return E(i.getElementsByTagName("*"),e)}else{const i=c.parseNumber(e.getAttribute(a.ElementInitialNumberName),-1,"parseInt");if(i>0){if(s=="body"){const o=t,d=c.parseNumber(o.getAttribute(a.ElementInitialNumberName),-1,"parseInt");let h=0;if(o.firstElementChild&&g(o.firstElementChild.tagName,"SVG")&&c.parseNumber(o.firstElementChild.style?.width,0,"parseInt")==0&&(h=o.firstElementChild.getElementsByTagName("*").length+1),d>0&&i>d){const f=r.getElementsByTagName("*"),b=C(r).getElementsByTagName("*").length+1+1,u=i+h-d+(b-d),m=f.item(u);if(m&&m==e)return u}}else if(s=="document"){const o=N(r);let d=0;o.firstElementChild&&g(o.firstElementChild.tagName,"SVG")&&c.parseNumber(o.firstElementChild.style?.width,0,"parseInt")==0&&(d=o.firstElementChild.getElementsByTagName("*").length+1);const h=r.getElementsByTagName("*"),f=c.parseNumber(o.getAttribute(a.ElementInitialNumberName),-1,"parseInt"),b=C(r).getElementsByTagName("*").length+1+1,u=i+d+(b-f),m=h.item(u);if(m&&m==e)return u}}const y=t.getElementsByTagName("*");return E(y,e)}},A=(t,e)=>!e||e.length==0?!1:e.indexOf(t.toLowerCase())>=0,B=(t,e,n)=>{if(!e)return null;if(g(e,"BODY")){const i=t.ownerDocument??t;return N(i)}let s=n??0;const r=t.getElementsByTagName(e);return s>r.length-1&&(s=r.length-1),r[s]},S=(t,e)=>e>=0?t.querySelector("["+a.ElementInitialNumberName+"='"+e+"']"):null,x=(t,e,n,s)=>{const r=t.tagName==e&&n==0?t:B(t,e,n);return r.hasChildNodes()&&r.childNodes.length>s?r.childNodes[s]:r.childNodes[0]},p=(t,e)=>{for(let n=0;n<t.length;n++)if(t[n].hasChildNodes()){const s=p(t[n].childNodes,e);if(s.node)return s}else{if(t[n].textContent.length>=e)return{node:t[n],offset:e};e-=t[n].textContent.length}return{node:null,offset:e}},L=(t,e,n,s)=>{const r=t.tagName==e&&n==0?t:B(t,e,n);let l=s;return r.hasChildNodes()?p(r.childNodes,l):{node:r,offset:s}},v=t=>{if(!t.hasChildNodes())return t;let e=t;for(;e.hasChildNodes();)e=e.lastChild;return e},H=(t,e,n)=>{let s=t.getElementsByTagName(e);return s.length==0&&n&&(s=t.getElementsByTagNameNS("*",e)),s};exports.checkIsOtherNonWhiteSpaceSymbol=A;exports.compareTagName=g;exports.findLastNode=v;exports.findLastPreorderIndexInSubtree=D;exports.getAllNodes=I;exports.getDocumentBody=N;exports.getDocumentHead=C;exports.getElementByElementNumber=S;exports.getElementByNameAndIndex=B;exports.getElementIndex=O;exports.getElementsByTagName=H;exports.getHtmlNode=x;exports.getHtmlNodeIndexAndOffset=L;exports.nodeContainsDescendant=w;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../Constants.cjs"),t=require("../common/number.cjs");var n=(e,t)=>!e||!t?!1:e==t||e?.toLowerCase()==t?.toLowerCase(),r=e=>{let t=e.head;return t||=e.querySelector(`head`),t},i=e=>{if(!e)return null;let t=e.body;return t||=e.querySelector(`body`),t},a=(t,n)=>{let r=0;for(r=0;r<t.length;r++)if(t.item(r)==n)return r;for(r=0;r<t.length;r++){let i=t.item(r);if(i.tagName==n.tagName){let t=i.getAttribute(e.ElementInitialNumberName);if(t&&t==n.getAttribute(`data-initial-index`))return r}}return-1},o=e=>{let t=[];return t.push(e),e.hasChildNodes()&&e.childNodes.forEach(e=>{t.push(...o(e))}),t},s=(e,t,n)=>{if(t<0||t>=e.length||e[t]!==n||n.nodeType!=Node.ELEMENT_NODE&&n.nodeType!=Node.DOCUMENT_NODE)return t;let r=n,i=t;for(let n=t+1;n<e.length&&r.contains(e[n]);n++)i=n;return i},c=(e,t)=>e.nodeType==Node.ELEMENT_NODE||e.nodeType==Node.DOCUMENT_NODE?e.contains(t):!1,l=(o,s,c)=>{let l=o.ownerDocument?n(o.tagName,`BODY`)?`body`:`element`:`document`,u=o.ownerDocument??o,d=s.ownerDocument;if(!c||c==`similar`){let e=s.tagName;return a(u==d?o.getElementsByTagName(e):i(d).getElementsByTagName(e),s)}if(u!=d)return a(i(d).getElementsByTagName(`*`),s);{let c=t.parseNumber(s.getAttribute(e.ElementInitialNumberName),-1,`parseInt`);if(c>0){if(l==`body`){let i=o,a=t.parseNumber(i.getAttribute(e.ElementInitialNumberName),-1,`parseInt`),l=0;if(i.firstElementChild&&n(i.firstElementChild.tagName,`SVG`)&&t.parseNumber(i.firstElementChild.style?.width,0,`parseInt`)==0&&(l=i.firstElementChild.getElementsByTagName(`*`).length+1),a>0&&c>a){let e=u.getElementsByTagName(`*`),t=r(u).getElementsByTagName(`*`).length+1+1,n=c+l-a+(t-a),i=e.item(n);if(i&&i==s)return n}}else if(l==`document`){let a=i(u),o=0;a.firstElementChild&&n(a.firstElementChild.tagName,`SVG`)&&t.parseNumber(a.firstElementChild.style?.width,0,`parseInt`)==0&&(o=a.firstElementChild.getElementsByTagName(`*`).length+1);let l=u.getElementsByTagName(`*`),d=t.parseNumber(a.getAttribute(e.ElementInitialNumberName),-1,`parseInt`),f=r(u).getElementsByTagName(`*`).length+1+1,p=c+o+(f-d),m=l.item(p);if(m&&m==s)return p}}return a(o.getElementsByTagName(`*`),s)}},u=(e,t)=>!t||t.length==0?!1:t.indexOf(e.toLowerCase())>=0,d=(e,t,r)=>{if(!t)return null;if(n(t,`BODY`))return i(e.ownerDocument??e);let a=r??0,o=e.getElementsByTagName(t);return a>o.length-1&&(a=o.length-1),o[a]},f=(t,n)=>n>=0?t.querySelector(`[`+e.ElementInitialNumberName+`='`+n+`']`):null,p=(e,t,n,r)=>{let i=e.tagName==t&&n==0?e:d(e,t,n);return i.hasChildNodes()&&i.childNodes.length>r?i.childNodes[r]:i.childNodes[0]},m=(e,t)=>{for(let n=0;n<e.length;n++)if(e[n].hasChildNodes()){let r=m(e[n].childNodes,t);if(r.node)return r}else if(e[n].textContent.length>=t)return{node:e[n],offset:t};else t-=e[n].textContent.length;return{node:null,offset:t}},h=(e,t,n,r)=>{let i=e.tagName==t&&n==0?e:d(e,t,n),a=r;return i.hasChildNodes()?m(i.childNodes,a):{node:i,offset:r}},g=e=>{if(!e.hasChildNodes())return e;let t=e;for(;t.hasChildNodes();)t=t.lastChild;return t},_=(e,t,n)=>{let r=e.getElementsByTagName(t);return r.length==0&&n&&(r=e.getElementsByTagNameNS(`*`,t)),r};exports.checkIsOtherNonWhiteSpaceSymbol=u,exports.compareTagName=n,exports.findLastNode=g,exports.findLastPreorderIndexInSubtree=s,exports.getAllNodes=o,exports.getDocumentBody=i,exports.getDocumentHead=r,exports.getElementByElementNumber=f,exports.getElementByNameAndIndex=d,exports.getElementIndex=l,exports.getElementsByTagName=_,exports.getHtmlNode=p,exports.getHtmlNodeIndexAndOffset=h,exports.nodeContainsDescendant=c;
@@ -1,135 +1,94 @@
1
- import { ElementInitialNumberName as c } from "../Constants.mjs";
2
- import { parseNumber as h } from "../common/number.mjs";
3
- const N = (t, e) => !t || !e ? !1 : t == e || t?.toLowerCase() == e?.toLowerCase(), B = (t) => {
4
- let e = t.head;
5
- return e || (e = t.querySelector("head")), e;
6
- }, E = (t) => {
7
- if (!t) return null;
8
- let e = t.body;
9
- return e || (e = t.querySelector("body")), e;
10
- }, f = (t, e) => {
11
- let n = 0;
12
- for (n = 0; n < t.length; n++)
13
- if (t.item(n) == e)
14
- return n;
15
- for (n = 0; n < t.length; n++) {
16
- const r = t.item(n);
17
- if (r.tagName == e.tagName) {
18
- const s = r.getAttribute(c);
19
- if (s && s == e.getAttribute(c))
20
- return n;
21
- }
22
- }
23
- return -1;
24
- }, D = (t) => {
25
- const e = [];
26
- return e.push(t), t.hasChildNodes() && t.childNodes.forEach((n) => {
27
- e.push(...D(n));
28
- }), e;
29
- }, A = (t, e, n) => {
30
- if (e < 0 || e >= t.length || t[e] !== n || n.nodeType != Node.ELEMENT_NODE && n.nodeType != Node.DOCUMENT_NODE)
31
- return e;
32
- const r = n;
33
- let s = e;
34
- for (let l = e + 1; l < t.length && r.contains(t[l]); l++)
35
- s = l;
36
- return s;
37
- }, L = (t, e) => t.nodeType == Node.ELEMENT_NODE || t.nodeType == Node.DOCUMENT_NODE ? t.contains(e) : !1, v = (t, e, n) => {
38
- const r = t.ownerDocument ? N(t.tagName, "BODY") ? "body" : "element" : "document", s = t.ownerDocument ?? t, l = e.ownerDocument;
39
- if (!n || n == "similar") {
40
- const i = e.tagName;
41
- if (s != l) {
42
- const y = E(l);
43
- return f(y.getElementsByTagName(i), e);
44
- } else
45
- return f(t.getElementsByTagName(i), e);
46
- } else if (s != l) {
47
- const i = E(l);
48
- return f(i.getElementsByTagName("*"), e);
49
- } else {
50
- const i = h(e.getAttribute(c), -1, "parseInt");
51
- if (i > 0) {
52
- if (r == "body") {
53
- const o = t, d = h(o.getAttribute(c), -1, "parseInt");
54
- let m = 0;
55
- if (o.firstElementChild && N(o.firstElementChild.tagName, "SVG") && h(o.firstElementChild.style?.width, 0, "parseInt") == 0 && (m = o.firstElementChild.getElementsByTagName("*").length + 1), d > 0 && i > d) {
56
- const g = s.getElementsByTagName("*"), C = B(s).getElementsByTagName("*").length + 1 + 1, u = i + m - d + (C - d), a = g.item(u);
57
- if (a && a == e)
58
- return u;
59
- }
60
- } else if (r == "document") {
61
- const o = E(s);
62
- let d = 0;
63
- o.firstElementChild && N(o.firstElementChild.tagName, "SVG") && h(o.firstElementChild.style?.width, 0, "parseInt") == 0 && (d = o.firstElementChild.getElementsByTagName("*").length + 1);
64
- const m = s.getElementsByTagName("*"), g = h(o.getAttribute(c), -1, "parseInt"), C = B(s).getElementsByTagName("*").length + 1 + 1, u = i + d + (C - g), a = m.item(u);
65
- if (a && a == e)
66
- return u;
67
- }
68
- }
69
- const y = t.getElementsByTagName("*");
70
- return f(y, e);
71
- }
72
- }, x = (t, e) => !e || e.length == 0 ? !1 : e.indexOf(t.toLowerCase()) >= 0, b = (t, e, n) => {
73
- if (!e)
74
- return null;
75
- if (N(e, "BODY")) {
76
- const i = t.ownerDocument ?? t;
77
- return E(i);
78
- }
79
- let r = n ?? 0;
80
- const s = t.getElementsByTagName(e);
81
- return r > s.length - 1 && (r = s.length - 1), s[r];
82
- }, S = (t, e) => e >= 0 ? t.querySelector("[" + c + "='" + e + "']") : null, k = (t, e, n, r) => {
83
- const s = t.tagName == e && n == 0 ? t : b(t, e, n);
84
- return s.hasChildNodes() && s.childNodes.length > r ? s.childNodes[r] : s.childNodes[0];
85
- }, p = (t, e) => {
86
- for (let n = 0; n < t.length; n++)
87
- if (t[n].hasChildNodes()) {
88
- const r = p(t[n].childNodes, e);
89
- if (r.node)
90
- return r;
91
- } else {
92
- if (t[n].textContent.length >= e)
93
- return {
94
- node: t[n],
95
- offset: e
96
- };
97
- e -= t[n].textContent.length;
98
- }
99
- return {
100
- node: null,
101
- offset: e
102
- };
103
- }, H = (t, e, n, r) => {
104
- const s = t.tagName == e && n == 0 ? t : b(t, e, n);
105
- let l = r;
106
- return s.hasChildNodes() ? p(s.childNodes, l) : {
107
- node: s,
108
- offset: r
109
- };
110
- }, M = (t) => {
111
- if (!t.hasChildNodes()) return t;
112
- let e = t;
113
- for (; e.hasChildNodes(); )
114
- e = e.lastChild;
115
- return e;
116
- }, _ = (t, e, n) => {
117
- let r = t.getElementsByTagName(e);
118
- return r.length == 0 && n && (r = t.getElementsByTagNameNS("*", e)), r;
119
- };
120
- export {
121
- x as checkIsOtherNonWhiteSpaceSymbol,
122
- N as compareTagName,
123
- M as findLastNode,
124
- A as findLastPreorderIndexInSubtree,
125
- D as getAllNodes,
126
- E as getDocumentBody,
127
- B as getDocumentHead,
128
- S as getElementByElementNumber,
129
- b as getElementByNameAndIndex,
130
- v as getElementIndex,
131
- _ as getElementsByTagName,
132
- k as getHtmlNode,
133
- H as getHtmlNodeIndexAndOffset,
134
- L as nodeContainsDescendant
1
+ import { ElementInitialNumberName as e } from "../Constants.mjs";
2
+ import { parseNumber as t } from "../common/number.mjs";
3
+ //#region kernal/html/finder.ts
4
+ var n = (e, t) => !e || !t ? !1 : e == t || e?.toLowerCase() == t?.toLowerCase(), r = (e) => {
5
+ let t = e.head;
6
+ return t ||= e.querySelector("head"), t;
7
+ }, i = (e) => {
8
+ if (!e) return null;
9
+ let t = e.body;
10
+ return t ||= e.querySelector("body"), t;
11
+ }, a = (t, n) => {
12
+ let r = 0;
13
+ for (r = 0; r < t.length; r++) if (t.item(r) == n) return r;
14
+ for (r = 0; r < t.length; r++) {
15
+ let i = t.item(r);
16
+ if (i.tagName == n.tagName) {
17
+ let t = i.getAttribute(e);
18
+ if (t && t == n.getAttribute("data-initial-index")) return r;
19
+ }
20
+ }
21
+ return -1;
22
+ }, o = (e) => {
23
+ let t = [];
24
+ return t.push(e), e.hasChildNodes() && e.childNodes.forEach((e) => {
25
+ t.push(...o(e));
26
+ }), t;
27
+ }, s = (e, t, n) => {
28
+ if (t < 0 || t >= e.length || e[t] !== n || n.nodeType != Node.ELEMENT_NODE && n.nodeType != Node.DOCUMENT_NODE) return t;
29
+ let r = n, i = t;
30
+ for (let n = t + 1; n < e.length && r.contains(e[n]); n++) i = n;
31
+ return i;
32
+ }, c = (e, t) => e.nodeType == Node.ELEMENT_NODE || e.nodeType == Node.DOCUMENT_NODE ? e.contains(t) : !1, l = (o, s, c) => {
33
+ let l = o.ownerDocument ? n(o.tagName, "BODY") ? "body" : "element" : "document", u = o.ownerDocument ?? o, d = s.ownerDocument;
34
+ if (!c || c == "similar") {
35
+ let e = s.tagName;
36
+ return a(u == d ? o.getElementsByTagName(e) : i(d).getElementsByTagName(e), s);
37
+ }
38
+ if (u != d) return a(i(d).getElementsByTagName("*"), s);
39
+ {
40
+ let c = t(s.getAttribute(e), -1, "parseInt");
41
+ if (c > 0) {
42
+ if (l == "body") {
43
+ let i = o, a = t(i.getAttribute(e), -1, "parseInt"), l = 0;
44
+ if (i.firstElementChild && n(i.firstElementChild.tagName, "SVG") && t(i.firstElementChild.style?.width, 0, "parseInt") == 0 && (l = i.firstElementChild.getElementsByTagName("*").length + 1), a > 0 && c > a) {
45
+ let e = u.getElementsByTagName("*"), t = r(u).getElementsByTagName("*").length + 1 + 1, n = c + l - a + (t - a), i = e.item(n);
46
+ if (i && i == s) return n;
47
+ }
48
+ } else if (l == "document") {
49
+ let a = i(u), o = 0;
50
+ a.firstElementChild && n(a.firstElementChild.tagName, "SVG") && t(a.firstElementChild.style?.width, 0, "parseInt") == 0 && (o = a.firstElementChild.getElementsByTagName("*").length + 1);
51
+ let l = u.getElementsByTagName("*"), d = t(a.getAttribute(e), -1, "parseInt"), f = r(u).getElementsByTagName("*").length + 1 + 1, p = c + o + (f - d), m = l.item(p);
52
+ if (m && m == s) return p;
53
+ }
54
+ }
55
+ return a(o.getElementsByTagName("*"), s);
56
+ }
57
+ }, u = (e, t) => !t || t.length == 0 ? !1 : t.indexOf(e.toLowerCase()) >= 0, d = (e, t, r) => {
58
+ if (!t) return null;
59
+ if (n(t, "BODY")) return i(e.ownerDocument ?? e);
60
+ let a = r ?? 0, o = e.getElementsByTagName(t);
61
+ return a > o.length - 1 && (a = o.length - 1), o[a];
62
+ }, f = (t, n) => n >= 0 ? t.querySelector("[" + e + "='" + n + "']") : null, p = (e, t, n, r) => {
63
+ let i = e.tagName == t && n == 0 ? e : d(e, t, n);
64
+ return i.hasChildNodes() && i.childNodes.length > r ? i.childNodes[r] : i.childNodes[0];
65
+ }, m = (e, t) => {
66
+ for (let n = 0; n < e.length; n++) if (e[n].hasChildNodes()) {
67
+ let r = m(e[n].childNodes, t);
68
+ if (r.node) return r;
69
+ } else if (e[n].textContent.length >= t) return {
70
+ node: e[n],
71
+ offset: t
72
+ };
73
+ else t -= e[n].textContent.length;
74
+ return {
75
+ node: null,
76
+ offset: t
77
+ };
78
+ }, h = (e, t, n, r) => {
79
+ let i = e.tagName == t && n == 0 ? e : d(e, t, n), a = r;
80
+ return i.hasChildNodes() ? m(i.childNodes, a) : {
81
+ node: i,
82
+ offset: r
83
+ };
84
+ }, g = (e) => {
85
+ if (!e.hasChildNodes()) return e;
86
+ let t = e;
87
+ for (; t.hasChildNodes();) t = t.lastChild;
88
+ return t;
89
+ }, _ = (e, t, n) => {
90
+ let r = e.getElementsByTagName(t);
91
+ return r.length == 0 && n && (r = e.getElementsByTagNameNS("*", t)), r;
135
92
  };
93
+ //#endregion
94
+ export { u as checkIsOtherNonWhiteSpaceSymbol, n as compareTagName, g as findLastNode, s as findLastPreorderIndexInSubtree, o as getAllNodes, i as getDocumentBody, r as getDocumentHead, f as getElementByElementNumber, d as getElementByNameAndIndex, l as getElementIndex, _ as getElementsByTagName, p as getHtmlNode, h as getHtmlNodeIndexAndOffset, c as nodeContainsDescendant };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const x=require("./finder.cjs"),M=t=>{let e,o,r,l=[],s,h,n;if(Array.isArray(t))if(n="elements",s=t[0],h=t[t.length-1],e=s.ownerDocument,o=e.defaultView,t.length>1){const i=o.document.createRange();i.setStart(s,0);const f=t[t.length-1],m=x.findLastNode(f);m.nodeType==Node.TEXT_NODE?i.setEnd(m,m.textContent.length):i.setEnd(m,0);const g=i.getBoundingClientRect();r={left:g.left,top:g.top,width:g.width,height:g.height,right:g.right,bottom:g.bottom};for(const c of t){const p=c.getClientRects();l.push(...Array.from(p).map(a=>({left:a.left,top:a.top,width:a.width,height:a.height,right:a.right,bottom:a.bottom})))}}else r=t[0].getBoundingClientRect(),l=Array.from(t[0].getClientRects()).map(i=>({left:i.left,top:i.top,width:i.width,height:i.height,right:i.right,bottom:i.bottom}));else Object.prototype.hasOwnProperty.call(t,"tagName")||t.tagName?(n="element",s=t,h=s,e=s.ownerDocument,o=e.defaultView,r=t.getBoundingClientRect(),l=Array.from(t.getClientRects()).map(i=>({left:i.left,top:i.top,width:i.width,height:i.height,right:i.right,bottom:i.bottom}))):(n="range",s=t.startContainer,h=t.endContainer,e=s.ownerDocument,o=e.defaultView,r=t.getBoundingClientRect(),l=Array.from(t.getClientRects()).map(i=>({left:i.left,top:i.top,width:i.width,height:i.height,right:i.right,bottom:i.bottom})));return{firstBaseNode:s,lastBaseNode:h,baseWindow:o,baseDocument:e,baseBoundingRect:r,baseType:n,baseRects:l}},d={left:-1e5,top:-1e5,visible:!1},z=(t,e)=>{const o=t.left+t.width,r=t.top+t.height,l=e.left+e.width,s=e.top+e.height;return e.left>=t.left&&e.top>=t.top&&l<=o&&s<=r},v=(t,e)=>{const o=t.left+t.width,r=t.top+t.height,l=e.left+e.width,s=e.top+e.height,h=Math.max(t.left,e.left),n=Math.max(t.top,e.top),i=Math.min(o,l),f=Math.min(r,s),m=i-h,g=f-n;return m<=0||g<=0?null:{left:h,top:n,width:m,height:g}},X=t=>t.reduce((e,o)=>{const r=Math.min(e.left,o.left),l=Math.min(e.top,o.top),s=Math.max(e.left+e.width,o.left+o.width),h=Math.max(e.top+e.height,o.top+o.height);return{left:r,top:l,width:s-r,height:h-l}}),y=(t,e)=>{let{baseWindow:o,baseRects:r}=M(t);const l=r.map(s=>({left:s.left,top:s.top,width:s.width,height:s.height}));for(;e!=o;){const s=o.frameElement,h=s?.ownerDocument?.defaultView;if(!h)break;o=h;const n=s.getBoundingClientRect();l.forEach(i=>{i.left+=n.left,i.top+=n.top})}return e!=o?{normalizedRects:[],inSameWindow:!1}:{normalizedRects:l,inSameWindow:!0}},D=(t,e,o=!0)=>{const r=t.filter(h=>z(e,h));if(r.length>0)return X(r);if(!o)return null;const l=4,s=[];for(const h of t){const n=v(e,h);!n||n.width*n.height<l||s.push({clipped:n,origArea:h.width*h.height})}return s.length===0?null:(s.sort((h,n)=>{const i=h.clipped.width*h.clipped.height,f=n.clipped.width*n.clipped.height;return f!==i?f-i:n.origArea-h.origArea}),s[0].clipped)},B=t=>({left:t.left,top:t.top,width:t.width,height:t.height}),E=(t,e)=>e?{left:t.left+(e.left??0),top:t.top+(e.top??0),width:t.width-(e.left??0)-(e.right??0),height:t.height-(e.top??0)-(e.bottom??0)}:t,P=(t,e,o,r="bottom",l=5)=>{const s=o.getBoundingClientRect(),h=s.width,n=s.height,i=e.left+e.width,f=e.top+e.height,g=t.top+t.height-f,c=e.top-t.top,p=n+l,a=t.left,u=t.left+t.width;if(r==="right"){let R=i+l;const C=u-h-l;R>C&&(R=C);const k=e.top+e.height/2-n/2;return{left:R,top:k,visible:!0}}const b=e.left+e.width/2-h/2;let w;b<a+l?w=a+l:b+h>u-l?w=u-h-l:w=b;const V=r==="top";if(g>=p&&c>=p){const R=V?e.top-n-l:f+l;return{left:w,top:R,visible:!0}}if(g>=p)return{left:w,top:f+l,visible:!0};if(c>=p)return{left:w,top:e.top-n-l,visible:!0};const I=e.top+e.height/2;return{left:w,top:I-n/2,visible:!0}},A=(t,e,o,r,l)=>{if(!o||!e)return d;const s=o.ownerDocument.defaultView,h=y(e,s);if(!h?.inSameWindow)return d;const n=E(B(t.getBoundingClientRect()),l),i=D(h.normalizedRects,n,!0);return i?P(n,i,o,r??"bottom"):d},Y=(t,e,o,r)=>{if(!e)return d;const l=y(e,o);if(!l?.inSameWindow)return d;let s=l.normalizedRects;const h=B(t.getBoundingClientRect()),n=E(h,r);(r?.left!=null||r?.right!=null||r?.top!=null||r?.bottom!=null)&&(s=s.map(f=>({left:f.left+(r?.left??0),top:f.top+(r?.top??0),width:f.width-(r?.left??0)-(r?.right??0),height:f.height-(r?.top??0)-(r?.bottom??0)})));const i=D(s,n,!1);return i?{left:i.left,top:i.top,visible:!0}:d},H=(t,e,o,r)=>{const l=r.innerWidth,s=r.innerHeight;if(t.left<0||Math.floor(t.right)>l)if(t.left>=0){const n=(e.nodeType!=Node.ELEMENT_NODE?e.parentElement.getClientRects():e.getClientRects())[0],i=l-n.left,f=s-n.top;t={left:n.left,top:n.top,width:i,height:f,right:n.left+i,bottom:n.top+f}}else{const h=o.nodeType!=Node.ELEMENT_NODE?o.parentElement.getClientRects():o.getClientRects(),n=h[h.length-1],i=Math.floor(t.width+t.left);if(i<l||i==l&&n.bottom<s){let f=n.right,m=n.left,g=n.top;for(let a=0;a<h.length;a++){if(h[a].left<0)continue;const u=h[a];f<u.width&&(f=u.width),m>u.left&&(m=u.left),g>u.top&&(g=u.top)}const c=f,p=n.bottom;t={left:m,top:g,width:c,height:p,right:m+c,bottom:g+p}}else t={left:0,top:0,width:l,height:s,right:l,bottom:s}}return t},_=(t,e,o,r,l)=>{if(!o||!e)return d;const n={top:50,bottom:50},i=r??"bottom";if(l=="page"){let{firstBaseNode:f,lastBaseNode:m,baseWindow:g,baseBoundingRect:c}=M(e);const p=g.innerWidth,a=g.innerHeight,u=Math.round(c.left);if(c.right<0||u>p||c.bottom<0||c.top>a)return d;c=H(c,f,m,g);let W=c.left,b=c.top;const w=o.ownerDocument.defaultView;for(;w!=g;){const R=g.frameElement,C=R?.ownerDocument?.defaultView;if(!C)break;g=C;const T=R.getBoundingClientRect();W+=T.left,b+=T.top}if(w!=g)return d;const V=E(B(t.getBoundingClientRect()),n),I={left:W,top:b,width:c.width,height:c.height};return P(V,I,o,i)}return A(t,e,o,i,n)},L=(t,e)=>e.left>=t.left&&e.top>=t.top&&e.right<=t.right&&e.bottom<=t.bottom,O=(t,e)=>e.right>t.left&&e.left<t.right&&e.top<t.bottom&&e.bottom>t.top,F=t=>t=="vertical-lr"||t=="vertical-rl",S=t=>({left:t.left,top:t.top,right:t.right,bottom:t.bottom}),j=(t,e,o)=>F(o)?o=="vertical-rl"?t.left>=e.right||t.bottom<=e.top:t.right<=e.left||t.bottom<=e.top:t.bottom<=e.top||t.right<=e.left,q=(t,e,o)=>F(o)?o=="vertical-rl"?t.right<=e.left||t.top>=e.bottom:t.left>=e.right||t.top>=e.bottom:t.top>=e.bottom||t.left>=e.right,G=(t,e)=>{let o={left:0,top:0,right:t.innerWidth,bottom:t.innerHeight};const r=t.frameElement,l=r?.ownerDocument?.defaultView;if(r&&l){const f=r.getBoundingClientRect(),m={left:0,top:0,right:l.innerWidth,bottom:l.innerHeight},g=Math.max(f.left,m.left),c=Math.max(f.top,m.top),p=Math.min(f.right,m.right),a=Math.min(f.bottom,m.bottom);if(p<=g||a<=c)return null;o={left:g-f.left,top:c-f.top,right:p-f.left,bottom:a-f.top}}const s=o.left+(e?.leftInset??0),h=o.top+(e?.topInset??0),n=o.right-(e?.rightInset??0),i=o.bottom-(e?.bottomInset??0);return n<=s||i<=h?null:{left:s,top:h,right:n,bottom:i}},J=(t,e,o)=>{if(!t.length)return[];const r=o?.writingMode,l=o?.fullVisible??!1,s=o?.missStreakToStop??8,h=c=>l?L(e,c):O(e,c);let n=0,i=t.length;for(;n<i;){const c=n+i>>1,p=S(t[c].getBoundingClientRect());j(p,e,r)?n=c+1:i=c}const f=[];let m=0,g=!1;for(let c=n;c<t.length;c++){const p=S(t[c].getBoundingClientRect());if(h(p)){f.push(t[c]),g=!0,m=0;continue}if(g&&q(p,e,r)&&(m++,m>=s))break}return f},N=(t,e,o)=>{if(t.caretRangeFromPoint)return t.caretRangeFromPoint(e,o);if(t.caretPositionFromPoint){const r=t.caretPositionFromPoint(e,o);if(r){const l=t.createRange();return l.setStart(r.offsetNode,r.offset),l.setEnd(r.offsetNode,r.offset),l}}return null},K=t=>{const e=t.getClientRects();if(e.length===0)return null;let o;for(let n=e.length-1;n>=0;n--)if(e[n].height>0){o=e[n];break}if(!o)return null;const r=t.startContainer.ownerDocument,l=N(r,o.left,o.top),s=N(r,o.right-1,o.bottom-1);if(!l||!s)return null;const h=r.createRange();return h.setStart(l.startContainer,l.startOffset),h.setEnd(s.startContainer,s.startOffset),h};exports.applyContainerInset=E;exports.calcToolbarPosition=_;exports.calcToolbarPositionFromRect=P;exports.calcToolbarPositionInContainer=A;exports.checkRangeOrElementIsVisible=Y;exports.containsRect=L;exports.getBaseState=M;exports.getLastLineRangeFromElementRange=K;exports.getOrderedElementsIntersectingRect=J;exports.getRangeFromPoint=N;exports.hiddenToolbarPosition=d;exports.intersectRect=O;exports.intersectWithContainer=v;exports.normalizeBaseRectsInDisplayWindow=y;exports.recalculateRect=H;exports.resolveVisibleBaseRectInContainer=D;exports.resolveVisibleViewportInContentWindow=G;exports.toRect=B;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./finder.cjs");var t=t=>{let n,r,i,a=[],o,s,c;if(Array.isArray(t)){if(c=`elements`,o=t[0],s=t[t.length-1],n=o.ownerDocument,r=n.defaultView,t.length>1){let n=r.document.createRange();n.setStart(o,0);let s=t[t.length-1],c=e.findLastNode(s);c.nodeType==Node.TEXT_NODE?n.setEnd(c,c.textContent.length):n.setEnd(c,0);let l=n.getBoundingClientRect();i={left:l.left,top:l.top,width:l.width,height:l.height,right:l.right,bottom:l.bottom};for(let e of t){let t=e.getClientRects();a.push(...Array.from(t).map(e=>({left:e.left,top:e.top,width:e.width,height:e.height,right:e.right,bottom:e.bottom})))}}else i=t[0].getBoundingClientRect(),a=Array.from(t[0].getClientRects()).map(e=>({left:e.left,top:e.top,width:e.width,height:e.height,right:e.right,bottom:e.bottom}))}else Object.prototype.hasOwnProperty.call(t,`tagName`)||t.tagName?(c=`element`,o=t,s=o,n=o.ownerDocument,r=n.defaultView,i=t.getBoundingClientRect(),a=Array.from(t.getClientRects()).map(e=>({left:e.left,top:e.top,width:e.width,height:e.height,right:e.right,bottom:e.bottom}))):(c=`range`,o=t.startContainer,s=t.endContainer,n=o.ownerDocument,r=n.defaultView,i=t.getBoundingClientRect(),a=Array.from(t.getClientRects()).map(e=>({left:e.left,top:e.top,width:e.width,height:e.height,right:e.right,bottom:e.bottom})));return{firstBaseNode:o,lastBaseNode:s,baseWindow:r,baseDocument:n,baseBoundingRect:i,baseType:c,baseRects:a}},n={left:-1e5,top:-1e5,visible:!1},r=(e,t)=>{let n=e.left+e.width,r=e.top+e.height,i=t.left+t.width,a=t.top+t.height;return t.left>=e.left&&t.top>=e.top&&i<=n&&a<=r},i=(e,t)=>{let n=e.left+e.width,r=e.top+e.height,i=t.left+t.width,a=t.top+t.height,o=Math.max(e.left,t.left),s=Math.max(e.top,t.top),c=Math.min(n,i),l=Math.min(r,a),u=c-o,d=l-s;return u<=0||d<=0?null:{left:o,top:s,width:u,height:d}},a=e=>e.reduce((e,t)=>{let n=Math.min(e.left,t.left),r=Math.min(e.top,t.top),i=Math.max(e.left+e.width,t.left+t.width),a=Math.max(e.top+e.height,t.top+t.height);return{left:n,top:r,width:i-n,height:a-r}}),o=(e,n)=>{let{baseWindow:r,baseRects:i}=t(e),a=i.map(e=>({left:e.left,top:e.top,width:e.width,height:e.height}));for(;n!=r;){let e=r.frameElement,t=e?.ownerDocument?.defaultView;if(!t)break;r=t;let n=e.getBoundingClientRect();a.forEach(e=>{e.left+=n.left,e.top+=n.top})}return n==r?{normalizedRects:a,inSameWindow:!0}:{normalizedRects:[],inSameWindow:!1}},s=(e,t,n=!0)=>{let o=e.filter(e=>r(t,e));if(o.length>0)return a(o);if(!n)return null;let s=[];for(let n of e){let e=i(t,n);e&&(e.width*e.height<4||s.push({clipped:e,origArea:n.width*n.height}))}return s.length===0?null:(s.sort((e,t)=>{let n=e.clipped.width*e.clipped.height,r=t.clipped.width*t.clipped.height;return r===n?t.origArea-e.origArea:r-n}),s[0].clipped)},c=e=>({left:e.left,top:e.top,width:e.width,height:e.height}),l=(e,t)=>t?{left:e.left+(t.left??0),top:e.top+(t.top??0),width:e.width-(t.left??0)-(t.right??0),height:e.height-(t.top??0)-(t.bottom??0)}:e,u=(e,t,n,r=`bottom`,i=5)=>{let a=n.getBoundingClientRect(),o=a.width,s=a.height,c=t.left+t.width,l=t.top+t.height,u=e.top+e.height-l,d=t.top-e.top,f=s+i,p=e.left,m=e.left+e.width;if(r===`right`){let e=c+i,n=m-o-i;e>n&&(e=n);let r=t.top+t.height/2-s/2;return{left:e,top:r,visible:!0}}let h=t.left+t.width/2-o/2,g;g=h<p+i?p+i:h+o>m-i?m-o-i:h;let _=r===`top`;if(u>=f&&d>=f){let e=_?t.top-s-i:l+i;return{left:g,top:e,visible:!0}}if(u>=f)return{left:g,top:l+i,visible:!0};if(d>=f)return{left:g,top:t.top-s-i,visible:!0};let v=t.top+t.height/2;return{left:g,top:v-s/2,visible:!0}},d=(e,t,r,i,a)=>{if(!r||!t)return n;let d=r.ownerDocument.defaultView,f=o(t,d);if(!f?.inSameWindow)return n;let p=l(c(e.getBoundingClientRect()),a),m=s(f.normalizedRects,p,!0);return m?u(p,m,r,i??`bottom`):n},f=(e,t,r,i)=>{if(!t)return n;let a=o(t,r);if(!a?.inSameWindow)return n;let u=a.normalizedRects,d=l(c(e.getBoundingClientRect()),i);(i?.left!=null||i?.right!=null||i?.top!=null||i?.bottom!=null)&&(u=u.map(e=>({left:e.left+(i?.left??0),top:e.top+(i?.top??0),width:e.width-(i?.left??0)-(i?.right??0),height:e.height-(i?.top??0)-(i?.bottom??0)})));let f=s(u,d,!1);return f?{left:f.left,top:f.top,visible:!0}:n},p=(e,t,n,r)=>{let i=r.innerWidth,a=r.innerHeight;if(e.left<0||Math.floor(e.right)>i){if(e.left>=0){let n=(t.nodeType==Node.ELEMENT_NODE?t.getClientRects():t.parentElement.getClientRects())[0],r=i-n.left,o=a-n.top;e={left:n.left,top:n.top,width:r,height:o,right:n.left+r,bottom:n.top+o}}else{let t=n.nodeType==Node.ELEMENT_NODE?n.getClientRects():n.parentElement.getClientRects(),r=t[t.length-1],o=Math.floor(e.width+e.left);if(o<i||o==i&&r.bottom<a){let n=r.right,i=r.left,a=r.top;for(let e=0;e<t.length;e++){if(t[e].left<0)continue;let r=t[e];n<r.width&&(n=r.width),i>r.left&&(i=r.left),a>r.top&&(a=r.top)}let o=n,s=r.bottom;e={left:i,top:a,width:o,height:s,right:i+o,bottom:a+s}}else e={left:0,top:0,width:i,height:a,right:i,bottom:a}}}return e},m=(e,r,i,a,o)=>{if(!i||!r)return n;let s={top:50,bottom:50},f=a??`bottom`;if(o==`page`){let{firstBaseNode:a,lastBaseNode:o,baseWindow:d,baseBoundingRect:m}=t(r),h=d.innerWidth,g=d.innerHeight,_=Math.round(m.left);if(m.right<0||_>h||m.bottom<0||m.top>g)return n;m=p(m,a,o,d);let v=m.left,y=m.top,b=i.ownerDocument.defaultView;for(;b!=d;){let e=d.frameElement,t=e?.ownerDocument?.defaultView;if(!t)break;d=t;let n=e.getBoundingClientRect();v+=n.left,y+=n.top}return b==d?u(l(c(e.getBoundingClientRect()),s),{left:v,top:y,width:m.width,height:m.height},i,f):n}return d(e,r,i,f,s)},h=(e,t)=>t.left>=e.left&&t.top>=e.top&&t.right<=e.right&&t.bottom<=e.bottom,g=(e,t)=>t.right>e.left&&t.left<e.right&&t.top<e.bottom&&t.bottom>e.top,_=e=>e==`vertical-lr`||e==`vertical-rl`,v=e=>({left:e.left,top:e.top,right:e.right,bottom:e.bottom}),y=(e,t,n)=>_(n)?n==`vertical-rl`?e.left>=t.right||e.bottom<=t.top:e.right<=t.left||e.bottom<=t.top:e.bottom<=t.top||e.right<=t.left,b=(e,t,n)=>_(n)?n==`vertical-rl`?e.right<=t.left||e.top>=t.bottom:e.left>=t.right||e.top>=t.bottom:e.top>=t.bottom||e.left>=t.right,x=(e,t)=>{let n={left:0,top:0,right:e.innerWidth,bottom:e.innerHeight},r=e.frameElement,i=r?.ownerDocument?.defaultView;if(r&&i){let e=r.getBoundingClientRect(),t={left:0,top:0,right:i.innerWidth,bottom:i.innerHeight},a=Math.max(e.left,t.left),o=Math.max(e.top,t.top),s=Math.min(e.right,t.right),c=Math.min(e.bottom,t.bottom);if(s<=a||c<=o)return null;n={left:a-e.left,top:o-e.top,right:s-e.left,bottom:c-e.top}}let a=n.left+(t?.leftInset??0),o=n.top+(t?.topInset??0),s=n.right-(t?.rightInset??0),c=n.bottom-(t?.bottomInset??0);return s<=a||c<=o?null:{left:a,top:o,right:s,bottom:c}},S=(e,t,n)=>{if(!e.length)return[];let r=n?.writingMode,i=n?.fullVisible??!1,a=n?.missStreakToStop??8,o=e=>i?h(t,e):g(t,e),s=0,c=e.length;for(;s<c;){let n=s+c>>1;y(v(e[n].getBoundingClientRect()),t,r)?s=n+1:c=n}let l=[],u=0,d=!1;for(let n=s;n<e.length;n++){let i=v(e[n].getBoundingClientRect());if(o(i)){l.push(e[n]),d=!0,u=0;continue}if(d&&b(i,t,r)&&(u++,u>=a))break}return l},C=(e,t,n)=>{if(e.caretRangeFromPoint)return e.caretRangeFromPoint(t,n);if(e.caretPositionFromPoint){let r=e.caretPositionFromPoint(t,n);if(r){let t=e.createRange();return t.setStart(r.offsetNode,r.offset),t.setEnd(r.offsetNode,r.offset),t}}return null},w=e=>{let t=e.getClientRects();if(t.length===0)return null;let n;for(let e=t.length-1;e>=0;e--)if(t[e].height>0){n=t[e];break}if(!n)return null;let r=e.startContainer.ownerDocument,i=C(r,n.left,n.top),a=C(r,n.right-1,n.bottom-1);if(!i||!a)return null;let o=r.createRange();return o.setStart(i.startContainer,i.startOffset),o.setEnd(a.startContainer,a.startOffset),o};exports.applyContainerInset=l,exports.calcToolbarPosition=m,exports.calcToolbarPositionFromRect=u,exports.calcToolbarPositionInContainer=d,exports.checkRangeOrElementIsVisible=f,exports.containsRect=h,exports.getBaseState=t,exports.getLastLineRangeFromElementRange=w,exports.getOrderedElementsIntersectingRect=S,exports.getRangeFromPoint=C,exports.hiddenToolbarPosition=n,exports.intersectRect=g,exports.intersectWithContainer=i,exports.normalizeBaseRectsInDisplayWindow=o,exports.recalculateRect=p,exports.resolveVisibleBaseRectInContainer=s,exports.resolveVisibleViewportInContentWindow=x,exports.toRect=c;