@foxycape/core 1.1.3 → 1.1.5

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 (502) 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.d.ts +2 -0
  404. package/dist/mediaTypes/pdf/fileParser/IPdfFileParser.mjs +0 -1
  405. package/dist/mediaTypes/pdf/fileParser/PdfFileParser.cjs +1 -1
  406. package/dist/mediaTypes/pdf/fileParser/PdfFileParser.mjs +148 -170
  407. package/dist/mediaTypes/pdf/fileParser/PdfPasswordProvider.cjs +1 -1
  408. package/dist/mediaTypes/pdf/fileParser/PdfPasswordProvider.mjs +45 -52
  409. package/dist/mediaTypes/pdf/fileParser/PdfTextDocument.cjs +1 -1
  410. package/dist/mediaTypes/pdf/fileParser/PdfTextDocument.mjs +28 -28
  411. package/dist/mediaTypes/pdf/loadPdfDocument.cjs +1 -1
  412. package/dist/mediaTypes/pdf/loadPdfDocument.mjs +27 -23
  413. package/dist/mediaTypes/pdf/renderer/IPdfDocument.cjs +0 -1
  414. package/dist/mediaTypes/pdf/renderer/IPdfDocument.mjs +0 -1
  415. package/dist/mediaTypes/pdf/renderer/IPdfRenderer.cjs +0 -1
  416. package/dist/mediaTypes/pdf/renderer/IPdfRenderer.mjs +0 -1
  417. package/dist/mediaTypes/pdf/renderer/IPdfSvgBuilder.cjs +0 -1
  418. package/dist/mediaTypes/pdf/renderer/IPdfSvgBuilder.mjs +0 -1
  419. package/dist/mediaTypes/pdf/renderer/MultiPdfViewer.cjs +1 -1
  420. package/dist/mediaTypes/pdf/renderer/MultiPdfViewer.mjs +323 -625
  421. package/dist/mediaTypes/pdf/renderer/PdfCoreNavigator.cjs +1 -1
  422. package/dist/mediaTypes/pdf/renderer/PdfCoreNavigator.mjs +18 -18
  423. package/dist/mediaTypes/pdf/renderer/PdfCssVariableNames.cjs +1 -1
  424. package/dist/mediaTypes/pdf/renderer/PdfCssVariableNames.mjs +25 -6
  425. package/dist/mediaTypes/pdf/renderer/PdfDocument.cjs +1 -1
  426. package/dist/mediaTypes/pdf/renderer/PdfDocument.mjs +61 -70
  427. package/dist/mediaTypes/pdf/renderer/PdfNavPointNavigator.cjs +1 -1
  428. package/dist/mediaTypes/pdf/renderer/PdfNavPointNavigator.mjs +118 -122
  429. package/dist/mediaTypes/pdf/renderer/PdfNavPointProvider.cjs +1 -1
  430. package/dist/mediaTypes/pdf/renderer/PdfNavPointProvider.mjs +85 -111
  431. package/dist/mediaTypes/pdf/renderer/PdfNoopL10n.cjs +1 -1
  432. package/dist/mediaTypes/pdf/renderer/PdfNoopL10n.mjs +7 -10
  433. package/dist/mediaTypes/pdf/renderer/PdfPagingNavigator.cjs +1 -1
  434. package/dist/mediaTypes/pdf/renderer/PdfPagingNavigator.mjs +29 -32
  435. package/dist/mediaTypes/pdf/renderer/PdfRenderer.cjs +1 -1
  436. package/dist/mediaTypes/pdf/renderer/PdfRenderer.mjs +76 -79
  437. package/dist/mediaTypes/pdf/renderer/PdfSvgBuilder.cjs +1 -1
  438. package/dist/mediaTypes/pdf/renderer/PdfSvgBuilder.mjs +269 -236
  439. package/dist/mediaTypes/pdf/renderer/PdfViewerBuilder.cjs +1 -1
  440. package/dist/mediaTypes/pdf/renderer/PdfViewerBuilder.mjs +33 -36
  441. package/dist/mediaTypes/pdf/renderer/documents/IPdfDocumentsProvider.cjs +0 -1
  442. package/dist/mediaTypes/pdf/renderer/documents/IPdfDocumentsProvider.mjs +0 -1
  443. package/dist/mediaTypes/pdf/renderer/documents/PdfDocumentsProvider.cjs +2 -2
  444. package/dist/mediaTypes/pdf/renderer/documents/PdfDocumentsProvider.mjs +243 -290
  445. package/dist/mediaTypes/pdf/renderer/input/PdfDocumentEvents.cjs +1 -1
  446. package/dist/mediaTypes/pdf/renderer/input/PdfDocumentEvents.mjs +43 -50
  447. package/dist/mediaTypes/pdf/renderer/input/PdfKeyboardController.cjs +1 -1
  448. package/dist/mediaTypes/pdf/renderer/input/PdfKeyboardController.mjs +84 -105
  449. package/dist/mediaTypes/pdf/renderer/input/PdfViewerEvents.cjs +1 -1
  450. package/dist/mediaTypes/pdf/renderer/input/PdfViewerEvents.mjs +44 -59
  451. package/dist/mediaTypes/pdf/renderer/input/PdfZoomInputController.cjs +1 -1
  452. package/dist/mediaTypes/pdf/renderer/input/PdfZoomInputController.mjs +138 -177
  453. package/dist/mediaTypes/pdf/renderer/layout/IPdfRendererLayout.cjs +0 -1
  454. package/dist/mediaTypes/pdf/renderer/layout/IPdfRendererLayout.mjs +0 -1
  455. package/dist/mediaTypes/pdf/renderer/layout/PdfRendererLayout.cjs +1 -1
  456. package/dist/mediaTypes/pdf/renderer/layout/PdfRendererLayout.mjs +36 -42
  457. package/dist/mediaTypes/pdf/renderer/layout/PdfRendererViewport.cjs +1 -1
  458. package/dist/mediaTypes/pdf/renderer/layout/PdfRendererViewport.mjs +75 -82
  459. package/dist/mediaTypes/pdf/renderer/location/IPdfDestinationBuilder.cjs +0 -1
  460. package/dist/mediaTypes/pdf/renderer/location/IPdfDestinationBuilder.mjs +0 -1
  461. package/dist/mediaTypes/pdf/renderer/location/PdfDestinationBuilder.cjs +1 -1
  462. package/dist/mediaTypes/pdf/renderer/location/PdfDestinationBuilder.mjs +18 -21
  463. package/dist/mediaTypes/pdf/renderer/progress/IPdfProgressTracker.cjs +0 -1
  464. package/dist/mediaTypes/pdf/renderer/progress/IPdfProgressTracker.mjs +0 -1
  465. package/dist/mediaTypes/pdf/renderer/progress/PdfProgressTracker.cjs +1 -1
  466. package/dist/mediaTypes/pdf/renderer/progress/PdfProgressTracker.mjs +54 -68
  467. package/dist/mediaTypes/pdf/renderer/style/IPdfThemeApplier.cjs +0 -1
  468. package/dist/mediaTypes/pdf/renderer/style/IPdfThemeApplier.mjs +0 -1
  469. package/dist/mediaTypes/pdf/renderer/style/PdfThemeApplier.cjs +4 -4
  470. package/dist/mediaTypes/pdf/renderer/style/PdfThemeApplier.mjs +15 -15
  471. package/dist/mediaTypes/pdf/renderer/zoom/IPdfScalable.cjs +0 -1
  472. package/dist/mediaTypes/pdf/renderer/zoom/IPdfScalable.mjs +0 -1
  473. package/dist/mediaTypes/pdf/renderer/zoom/PdfScalable.cjs +1 -1
  474. package/dist/mediaTypes/pdf/renderer/zoom/PdfScalable.mjs +46 -41
  475. package/dist/mediaTypes/pdf/shared/geometry/index.cjs +1 -1
  476. package/dist/mediaTypes/pdf/shared/geometry/index.mjs +3 -13
  477. package/dist/mediaTypes/pdf/shared/geometry/selectionToFixedContentRange.cjs +1 -1
  478. package/dist/mediaTypes/pdf/shared/geometry/selectionToFixedContentRange.mjs +45 -45
  479. package/dist/mediaTypes/pdf/shared/geometry/textRects.cjs +1 -1
  480. package/dist/mediaTypes/pdf/shared/geometry/textRects.mjs +219 -263
  481. package/dist/mediaTypes/pdf/shared/range.cjs +1 -1
  482. package/dist/mediaTypes/pdf/shared/range.mjs +11 -14
  483. package/dist/mediaTypes/pdf/shared/selection/IPdfSelection.cjs +0 -1
  484. package/dist/mediaTypes/pdf/shared/selection/IPdfSelection.mjs +0 -1
  485. package/dist/mediaTypes/pdf/shared/selection/PdfSelection.cjs +2 -2
  486. package/dist/mediaTypes/pdf/shared/selection/PdfSelection.mjs +214 -236
  487. package/dist/mediaTypes/pdf/shared/selection/index.cjs +1 -1
  488. package/dist/mediaTypes/pdf/shared/selection/index.mjs +3 -6
  489. package/dist/mediaTypes/pdf/shared/text/bbox.cjs +1 -1
  490. package/dist/mediaTypes/pdf/shared/text/bbox.mjs +130 -142
  491. package/dist/mediaTypes/pdf/shared/text/pageText.cjs +5 -5
  492. package/dist/mediaTypes/pdf/shared/text/pageText.mjs +168 -185
  493. package/global.d.ts +17 -0
  494. package/package.json +19 -12
  495. package/types.d.ts +13 -0
  496. package/dist/kernal/logo-160x160.png.cjs +0 -1
  497. package/dist/kernal/logo-160x160.png.mjs +0 -4
  498. package/dist/mediaTypes/html/renderer/image/error-image.png.cjs +0 -1
  499. package/dist/mediaTypes/html/renderer/image/error-image.png.mjs +0 -4
  500. package/dist/mediaTypes/html/renderer/image/placeholder.png.cjs +0 -1
  501. package/dist/mediaTypes/html/renderer/image/placeholder.png.mjs +0 -4
  502. package/dist/mediaTypes/html/renderer/style/html-content.css.cjs +0 -316
@@ -1,239 +1,207 @@
1
- import { isNullOrWhiteSpace as X } from "../common/text.mjs";
2
- import { getDocumentBody as b, findLastNode as W } from "./finder.mjs";
3
- const H = (t, e) => {
4
- if (!t)
5
- return null;
6
- const r = t.getSelection();
7
- if (!r || r.isCollapsed) return null;
8
- const n = r.getRangeAt(0);
9
- return !n || n.collapsed ? null : e || n.toString() ? n : null;
10
- }, Z = (t, e) => {
11
- if (!t) return !1;
12
- const r = H(t, !0);
13
- return r ? e ? !0 : !X(r.toString()) : !1;
14
- }, O = /[.。.\u06D4\u061F\u0964\u0965\u1362\u0589\n]/, I = /* @__PURE__ */ new Set(["div", "p", "h1", "h2", "h3", "h4", "h5", "h6", "li", "blockquote", "section", "article", "header", "footer", "nav", "aside", "main", "hr", "br", "table", "thead", "tbody", "tr", "td", "th", "pre", "address", "details", "dialog", "fieldset", "figure", "figcaption", "form", "dl", "dt", "dd", "ol", "ul"]), v = /[\u201C\u201D\u0022\uFF02\u300D\u300F\u301D\u301E\u301F\u00BB\u2019\u02BA]/, L = /[\u200B\u200C\u200D\uFEFF\u2060]/, x = /[""\uFF02\u300C\u300E\u00AB'\u2018]/, _ = /[0-90-9٠-٩\u0660-\u0669]/, M = /[a-z\u00E0-\u024F\u0370-\u03FF]/, w = (t) => {
15
- let e = t.nodeType === Node.TEXT_NODE ? t.parentElement : t;
16
- for (; e && e !== e.ownerDocument?.body; ) {
17
- if (e.nodeType === Node.ELEMENT_NODE && I.has(e.tagName?.toLowerCase()))
18
- return e;
19
- e = e.parentElement;
20
- }
21
- return e;
22
- }, G = (t, e, r) => {
23
- if (t[e] !== `
24
- `) return !1;
25
- const n = r.findIndex((h) => e >= h.start && e < h.end);
26
- if (n < 0) return !1;
27
- const s = r[n];
28
- if (e !== s.start || n === 0) return !1;
29
- const l = r[n - 1], o = w(l.node), N = w(s.node);
30
- return o !== N;
31
- }, D = (t, e, r) => {
32
- const n = t[e];
33
- if (!n || !O.test(n)) return !1;
34
- if (n === `
35
- `)
36
- return r ? G(t, e, r) : !1;
37
- if (n === "." || n === ".") {
38
- const s = e > 0 ? t[e - 1] : "", l = e + 1 < t.length ? t[e + 1] : "";
39
- if (_.test(s) && _.test(l) || _.test(s) && (l === " " || l === " " || l === `
40
- `)) return !1;
41
- let o = e + 1;
42
- for (; o < t.length && (t[o] === " " || t[o] === " "); ) o++;
43
- if (o < t.length && M.test(t[o])) return !1;
44
- }
45
- return !0;
46
- }, J = (t, e) => {
47
- if (!t) return !1;
48
- const r = t.getSelection();
49
- if (!r || r.rangeCount === 0) return !1;
50
- const n = r.getRangeAt(0).cloneRange(), s = e ?? b(t);
51
- if (!s || !s.contains(n.startContainer) || !s.contains(n.endContainer)) return !1;
52
- const l = [];
53
- let o = "";
54
- const N = t.createTreeWalker(s, NodeFilter.SHOW_TEXT, null);
55
- let h;
56
- for (; h = N.nextNode(); ) {
57
- const u = h.textContent ?? "";
58
- u.length > 0 && (l.push({
59
- node: h,
60
- start: o.length,
61
- end: o.length + u.length
62
- }), o += u);
63
- }
64
- if (l.length === 0) return !1;
65
- const R = (u, i) => {
66
- try {
67
- const f = t.createRange();
68
- return f.setStart(s, 0), f.setEnd(u, i), f.toString().length;
69
- } catch {
70
- return 0;
71
- }
72
- };
73
- let E = Math.max(0, Math.min(R(n.startContainer, n.startOffset), o.length)), T = Math.max(0, Math.min(R(n.endContainer, n.endOffset), o.length));
74
- E > T && ([E, T] = [T, E]);
75
- let c = 0;
76
- for (let u = E - 1; u >= 0; u--)
77
- if (D(o, u, l)) {
78
- for (; u > 0 && O.test(o[u - 1]); ) u--;
79
- c = u + 1;
80
- break;
81
- }
82
- let a = o.length;
83
- for (let u = T; u < o.length; u++)
84
- if (D(o, u, l)) {
85
- for (; u + 1 < o.length && O.test(o[u + 1]); ) u++;
86
- a = u + 1;
87
- break;
88
- }
89
- for (c > a && (a = c); c > 0 && x.test(o[c - 1]); ) c--;
90
- for (; a < o.length && (v.test(o[a]) || L.test(o[a])); ) a++;
91
- for (; c < a && o[c] === `
92
- `; ) c++;
93
- for (; a > c && o[a - 1] === `
94
- `; ) a--;
95
- const C = (u) => {
96
- const i = u.textContent?.trim() ?? "";
97
- return i === `
98
- ` || i === "";
99
- }, k = (u, i) => {
100
- for (let f = 0; f < l.length; f++) {
101
- const {
102
- node: g,
103
- start: m,
104
- end: A
105
- } = l[f];
106
- if (u >= m && u <= A) {
107
- if (C(g)) {
108
- if (i) {
109
- for (let d = f + 1; d < l.length; d++)
110
- if (!C(l[d].node)) {
111
- n.setStart(l[d].node, 0);
112
- return;
113
- }
114
- } else
115
- for (let d = f - 1; d >= 0; d--) {
116
- const S = l[d].node;
117
- if (!C(S)) {
118
- n.setEnd(S, (S.textContent ?? "").length);
119
- return;
120
- }
121
- }
122
- const p = i ? l[0] : l[l.length - 1], B = i ? 0 : (p.node.textContent ?? "").length;
123
- i ? n.setStart(p.node, 0) : n.setEnd(p.node, B);
124
- return;
125
- }
126
- const F = Math.min(u - m, (g.textContent ?? "").length);
127
- i ? n.setStart(g, F) : n.setEnd(g, F);
128
- return;
129
- }
130
- }
131
- if (l.length > 0) {
132
- const f = i ? l[0] : l[l.length - 1], g = i ? 0 : (f.node.textContent ?? "").length;
133
- i ? n.setStart(f.node, 0) : n.setEnd(f.node, g);
134
- }
135
- };
136
- return k(c, !0), k(a, !1), r.removeAllRanges(), r.addRange(n), !0;
137
- }, j = (t) => {
138
- if (t.nodeType === Node.TEXT_NODE)
139
- return t;
140
- const e = t.ownerDocument?.createTreeWalker(t, NodeFilter.SHOW_TEXT);
141
- return e ? e.nextNode() : null;
142
- }, P = (t) => {
143
- if (t.nodeType === Node.TEXT_NODE)
144
- return t;
145
- const e = t.ownerDocument?.createTreeWalker(t, NodeFilter.SHOW_TEXT);
146
- if (!e)
147
- return null;
148
- let r = null, n;
149
- for (; n = e.nextNode(); )
150
- r = n;
151
- return r;
152
- }, y = (t, e) => {
153
- if (e < 0)
154
- return null;
155
- const r = t.ownerDocument?.createTreeWalker(t, NodeFilter.SHOW_TEXT);
156
- if (!r)
157
- return null;
158
- let n = 0, s = null, l;
159
- for (; l = r.nextNode(); ) {
160
- s = l;
161
- const o = (l.textContent ?? "").length;
162
- if (e <= n + o)
163
- return {
164
- node: l,
165
- offset: e - n
166
- };
167
- n += o;
168
- }
169
- return s ? {
170
- node: s,
171
- offset: (s.textContent ?? "").length
172
- } : null;
173
- }, Q = (t, e) => {
174
- if (e.nodeType === Node.TEXT_NODE) {
175
- t.setStart(e, 0);
176
- return;
177
- }
178
- if (e.hasChildNodes()) {
179
- t.setStart(e.firstChild, 0);
180
- return;
181
- }
182
- t.setStart(e, 0);
183
- }, U = (t, e) => {
184
- if (e.nodeType === Node.TEXT_NODE) {
185
- t.setEnd(e, (e.textContent ?? "").length);
186
- return;
187
- }
188
- const r = W(e);
189
- if (r.nodeType === Node.TEXT_NODE) {
190
- t.setEnd(r, (r.textContent ?? "").length);
191
- return;
192
- }
193
- t.setEnd(e, e.childNodes.length);
194
- }, V = (t, e, r) => {
195
- if (r !== void 0) {
196
- const s = y(e, r);
197
- if (s) {
198
- t.setStart(s.node, s.offset);
199
- return;
200
- }
201
- }
202
- const n = e.nodeType === Node.TEXT_NODE ? e : j(e);
203
- if (n) {
204
- t.setStart(n, 0);
205
- return;
206
- }
207
- Q(t, e);
208
- }, q = (t, e, r) => {
209
- if (r !== void 0) {
210
- const s = y(e, r);
211
- if (s) {
212
- t.setEnd(s.node, s.offset);
213
- return;
214
- }
215
- }
216
- const n = e.nodeType === Node.TEXT_NODE ? e : P(e);
217
- if (n) {
218
- t.setEnd(n, (n.textContent ?? "").length);
219
- return;
220
- }
221
- U(t, e);
222
- }, Y = (t, e, r, n) => {
223
- const s = t.ownerDocument;
224
- if (!s)
225
- return null;
226
- const l = s.createRange();
227
- try {
228
- V(l, t, r), q(l, e, n);
229
- } catch {
230
- return null;
231
- }
232
- return l;
233
- };
234
- export {
235
- Z as checkHasValidRange,
236
- Y as createRange,
237
- J as expandSelectionToSentence,
238
- H as getRange
1
+ import { isNullOrWhiteSpace as e } from "../common/text.mjs";
2
+ import { findLastNode as t, getDocumentBody as n } from "./finder.mjs";
3
+ //#region kernal/html/selection.ts
4
+ var r = (e, t) => {
5
+ if (!e) return null;
6
+ let n = e.getSelection();
7
+ if (!n || n.isCollapsed) return null;
8
+ let r = n.getRangeAt(0);
9
+ return !r || r.collapsed ? null : t || r.toString() ? r : null;
10
+ }, i = (t, n) => {
11
+ if (!t) return !1;
12
+ let i = r(t, !0);
13
+ return i ? n ? !0 : !e(i.toString()) : !1;
14
+ }, a = /[.。.\u06D4\u061F\u0964\u0965\u1362\u0589\n]/, o = /* @__PURE__ */ new Set(/* @__PURE__ */ "div.p.h1.h2.h3.h4.h5.h6.li.blockquote.section.article.header.footer.nav.aside.main.hr.br.table.thead.tbody.tr.td.th.pre.address.details.dialog.fieldset.figure.figcaption.form.dl.dt.dd.ol.ul".split(".")), s = /[\u201C\u201D\u0022\uFF02\u300D\u300F\u301D\u301E\u301F\u00BB\u2019\u02BA]/, c = /[\u200B\u200C\u200D\uFEFF\u2060]/, l = /[""\uFF02\u300C\u300E\u00AB'\u2018]/, u = /[0-90-9٠-٩\u0660-\u0669]/, d = /[a-z\u00E0-\u024F\u0370-\u03FF]/, f = (e) => {
15
+ let t = e.nodeType === Node.TEXT_NODE ? e.parentElement : e;
16
+ for (; t && t !== t.ownerDocument?.body;) {
17
+ if (t.nodeType === Node.ELEMENT_NODE && o.has(t.tagName?.toLowerCase())) return t;
18
+ t = t.parentElement;
19
+ }
20
+ return t;
21
+ }, p = (e, t, n) => {
22
+ if (e[t] !== "\n") return !1;
23
+ let r = n.findIndex((e) => t >= e.start && t < e.end);
24
+ if (r < 0) return !1;
25
+ let i = n[r];
26
+ if (t !== i.start || r === 0) return !1;
27
+ let a = n[r - 1];
28
+ return f(a.node) !== f(i.node);
29
+ }, m = (e, t, n) => {
30
+ let r = e[t];
31
+ if (!r || !a.test(r)) return !1;
32
+ if (r === "\n") return n ? p(e, t, n) : !1;
33
+ if (r === "." || r === ".") {
34
+ let n = t > 0 ? e[t - 1] : "", r = t + 1 < e.length ? e[t + 1] : "";
35
+ if (u.test(n) && u.test(r) || u.test(n) && (r === " " || r === " " || r === "\n")) return !1;
36
+ let i = t + 1;
37
+ for (; i < e.length && (e[i] === " " || e[i] === " ");) i++;
38
+ if (i < e.length && d.test(e[i])) return !1;
39
+ }
40
+ return !0;
41
+ }, h = (e, t) => {
42
+ if (!e) return !1;
43
+ let r = e.getSelection();
44
+ if (!r || r.rangeCount === 0) return !1;
45
+ let i = r.getRangeAt(0).cloneRange(), o = t ?? n(e);
46
+ if (!o || !o.contains(i.startContainer) || !o.contains(i.endContainer)) return !1;
47
+ let u = [], d = "", f = e.createTreeWalker(o, NodeFilter.SHOW_TEXT, null), p;
48
+ for (; p = f.nextNode();) {
49
+ let e = p.textContent ?? "";
50
+ e.length > 0 && (u.push({
51
+ node: p,
52
+ start: d.length,
53
+ end: d.length + e.length
54
+ }), d += e);
55
+ }
56
+ if (u.length === 0) return !1;
57
+ let h = (t, n) => {
58
+ try {
59
+ let r = e.createRange();
60
+ return r.setStart(o, 0), r.setEnd(t, n), r.toString().length;
61
+ } catch {
62
+ return 0;
63
+ }
64
+ }, g = Math.max(0, Math.min(h(i.startContainer, i.startOffset), d.length)), _ = Math.max(0, Math.min(h(i.endContainer, i.endOffset), d.length));
65
+ g > _ && ([g, _] = [_, g]);
66
+ let v = 0;
67
+ for (let e = g - 1; e >= 0; e--) if (m(d, e, u)) {
68
+ for (; e > 0 && a.test(d[e - 1]);) e--;
69
+ v = e + 1;
70
+ break;
71
+ }
72
+ let y = d.length;
73
+ for (let e = _; e < d.length; e++) if (m(d, e, u)) {
74
+ for (; e + 1 < d.length && a.test(d[e + 1]);) e++;
75
+ y = e + 1;
76
+ break;
77
+ }
78
+ for (v > y && (y = v); v > 0 && l.test(d[v - 1]);) v--;
79
+ for (; y < d.length && (s.test(d[y]) || c.test(d[y]));) y++;
80
+ for (; v < y && d[v] === "\n";) v++;
81
+ for (; y > v && d[y - 1] === "\n";) y--;
82
+ let b = (e) => {
83
+ let t = e.textContent?.trim() ?? "";
84
+ return t === "\n" || t === "";
85
+ }, x = (e, t) => {
86
+ for (let n = 0; n < u.length; n++) {
87
+ let { node: r, start: a, end: o } = u[n];
88
+ if (e >= a && e <= o) {
89
+ if (b(r)) {
90
+ if (t) {
91
+ for (let e = n + 1; e < u.length; e++) if (!b(u[e].node)) {
92
+ i.setStart(u[e].node, 0);
93
+ return;
94
+ }
95
+ } else for (let e = n - 1; e >= 0; e--) {
96
+ let t = u[e].node;
97
+ if (!b(t)) {
98
+ i.setEnd(t, (t.textContent ?? "").length);
99
+ return;
100
+ }
101
+ }
102
+ let e = t ? u[0] : u[u.length - 1], r = t ? 0 : (e.node.textContent ?? "").length;
103
+ t ? i.setStart(e.node, 0) : i.setEnd(e.node, r);
104
+ return;
105
+ }
106
+ let o = Math.min(e - a, (r.textContent ?? "").length);
107
+ t ? i.setStart(r, o) : i.setEnd(r, o);
108
+ return;
109
+ }
110
+ }
111
+ if (u.length > 0) {
112
+ let e = t ? u[0] : u[u.length - 1], n = t ? 0 : (e.node.textContent ?? "").length;
113
+ t ? i.setStart(e.node, 0) : i.setEnd(e.node, n);
114
+ }
115
+ };
116
+ return x(v, !0), x(y, !1), r.removeAllRanges(), r.addRange(i), !0;
117
+ }, g = (e) => {
118
+ if (e.nodeType === Node.TEXT_NODE) return e;
119
+ let t = e.ownerDocument?.createTreeWalker(e, NodeFilter.SHOW_TEXT);
120
+ return t ? t.nextNode() : null;
121
+ }, _ = (e) => {
122
+ if (e.nodeType === Node.TEXT_NODE) return e;
123
+ let t = e.ownerDocument?.createTreeWalker(e, NodeFilter.SHOW_TEXT);
124
+ if (!t) return null;
125
+ let n = null, r;
126
+ for (; r = t.nextNode();) n = r;
127
+ return n;
128
+ }, v = (e, t) => {
129
+ if (t < 0) return null;
130
+ let n = e.ownerDocument?.createTreeWalker(e, NodeFilter.SHOW_TEXT);
131
+ if (!n) return null;
132
+ let r = 0, i = null, a;
133
+ for (; a = n.nextNode();) {
134
+ i = a;
135
+ let e = (a.textContent ?? "").length;
136
+ if (t <= r + e) return {
137
+ node: a,
138
+ offset: t - r
139
+ };
140
+ r += e;
141
+ }
142
+ return i ? {
143
+ node: i,
144
+ offset: (i.textContent ?? "").length
145
+ } : null;
146
+ }, y = (e, t) => {
147
+ if (t.nodeType === Node.TEXT_NODE) {
148
+ e.setStart(t, 0);
149
+ return;
150
+ }
151
+ if (t.hasChildNodes()) {
152
+ e.setStart(t.firstChild, 0);
153
+ return;
154
+ }
155
+ e.setStart(t, 0);
156
+ }, b = (e, n) => {
157
+ if (n.nodeType === Node.TEXT_NODE) {
158
+ e.setEnd(n, (n.textContent ?? "").length);
159
+ return;
160
+ }
161
+ let r = t(n);
162
+ if (r.nodeType === Node.TEXT_NODE) {
163
+ e.setEnd(r, (r.textContent ?? "").length);
164
+ return;
165
+ }
166
+ e.setEnd(n, n.childNodes.length);
167
+ }, x = (e, t, n) => {
168
+ if (n !== void 0) {
169
+ let r = v(t, n);
170
+ if (r) {
171
+ e.setStart(r.node, r.offset);
172
+ return;
173
+ }
174
+ }
175
+ let r = t.nodeType === Node.TEXT_NODE ? t : g(t);
176
+ if (r) {
177
+ e.setStart(r, 0);
178
+ return;
179
+ }
180
+ y(e, t);
181
+ }, S = (e, t, n) => {
182
+ if (n !== void 0) {
183
+ let r = v(t, n);
184
+ if (r) {
185
+ e.setEnd(r.node, r.offset);
186
+ return;
187
+ }
188
+ }
189
+ let r = t.nodeType === Node.TEXT_NODE ? t : _(t);
190
+ if (r) {
191
+ e.setEnd(r, (r.textContent ?? "").length);
192
+ return;
193
+ }
194
+ b(e, t);
195
+ }, C = (e, t, n, r) => {
196
+ let i = e.ownerDocument;
197
+ if (!i) return null;
198
+ let a = i.createRange();
199
+ try {
200
+ x(a, e, n), S(a, t, r);
201
+ } catch {
202
+ return null;
203
+ }
204
+ return a;
239
205
  };
206
+ //#endregion
207
+ export { i as checkHasValidRange, C as createRange, h as expandSelectionToSentence, r as getRange };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("../common/text.cjs"),a=new Map;a.set(9,.75);a.set(11,.875);a.set(13,1.063);a.set(14,1.125);a.set(15,1.25);a.set(16,1.313);const c=t=>{if(!t)return"";const r=t.indexOf("("),n=t.lastIndexOf(")");return r===-1||n===-1?null:t.slice(r+1,n)},f=t=>{const r=c(t);return r?r.split(",").map(n=>{const s=n.trim(),e=parseFloat(s);return isNaN(e)?0:e}):[]},p=(t,r,n)=>{const s=t?.ownerDocument;if(!s||!s?.defaultView||u.isNullOrWhiteSpace(r))return 0;let e=t.style?.transform?.toLowerCase();if((!e||!(e.startsWith("translatex")||e.startsWith("translate")||e.startsWith("translate3d")))&&(e=t.ownerDocument.defaultView.getComputedStyle(t).transform?.toLowerCase()),!e||e=="none")return 0;const o=f(e);if(r=="y"){let i=0;return o.length>0&&(e.startsWith("translatex")||e.startsWith("translate")||e.startsWith("translate3d"))?i=e.startsWith("translatey")?o[0]:o[1]:i=parseFloat(e.split(",")[5]),isNaN(i)?0:n?i:Math.abs(i)}let l=0;return o.length>0&&(e.startsWith("translatex")||e.startsWith("translate")||e.startsWith("translate3d"))?l=o[0]:l=parseFloat(e.split(",")[4]),isNaN(l)?0:n?l:Math.abs(l)},m=t=>{if(!t)return t;let r=t.replace(/font-size\s*?:\s*?(\d+)(pt|px)(;)?/gi,(n,s,e,o)=>{if(e?.toLowerCase()=="pt"){const l=a.get(parseFloat(s));return l?"font-size:"+l+"em"+(o??""):"font-size:"+s/12+"em"+(o??"")}else if(e?.toLowerCase()=="px")return"font-size:"+s/16+"em"+(o??"");return n});return r=r.replace(/font-size\s*?:\s*?(xx-small|x-small|small|medium|large|x-large|xx-large|xxx-large)(;)?/gi,(n,s,e)=>s?"font-size:inherit"+(e??""):n),r},d=t=>{if(!t)return t;const r=/[\s]+/g;return t.replace(/text-indent\s*?:\s*?(\d+)(pt|px|em|rem|in|cm|mm|%)?(\s*;)?/gi,(n,s,e,o)=>n&&n.length>20&&n.replace(r,"").length>20?n:"")},x=t=>t&&t.replace(/text-align\s*:\s*(center|right)\b/gi,r=>`${r}; text-indent: 0;`),w=t=>{t.oncontextmenu=()=>!1},h=(t,r,n,s)=>{if(!t)return;const e=s??t.ownerDocument;if(!e)return;const o=e.documentElement.scrollTop;let l=0;if(e.defaultView!=e.defaultView?.parent&&(l=e.defaultView.parent.document.documentElement.scrollTop),n&&"scrollIntoViewIfNeeded"in t)t.scrollIntoViewIfNeeded();else try{if(r){const i={...r};i.behavior=="smooth"&&(i.behavior="auto"),t.scrollIntoView(i)}else t.scrollIntoView()}catch{t.scrollIntoView()}o>0&&(e.documentElement.scrollTop=o),l>0&&(e.defaultView.parent.document.documentElement.scrollTop=l)};exports.appendZeroTextIndentForCenterRightAlign=x;exports.getTransformLength=p;exports.preventContextMenu=w;exports.removeTextIndent=d;exports.replaceFontSize=m;exports.scrollElementIntoView=h;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../common/text.cjs");var t=new Map;t.set(9,.75),t.set(11,.875),t.set(13,1.063),t.set(14,1.125),t.set(15,1.25),t.set(16,1.313);var n=e=>{if(!e)return``;let t=e.indexOf(`(`),n=e.lastIndexOf(`)`);return t===-1||n===-1?null:e.slice(t+1,n)},r=e=>{let t=n(e);return t?t.split(`,`).map(e=>{let t=e.trim(),n=parseFloat(t);return isNaN(n)?0:n}):[]},i=(t,n,i)=>{let a=t?.ownerDocument;if(!a||!a?.defaultView||e.isNullOrWhiteSpace(n))return 0;let o=t.style?.transform?.toLowerCase();if((!o||!(o.startsWith(`translatex`)||o.startsWith(`translate`)||o.startsWith(`translate3d`)))&&(o=t.ownerDocument.defaultView.getComputedStyle(t).transform?.toLowerCase()),!o||o==`none`)return 0;let s=r(o);if(n==`y`){let e=0;return e=s.length>0&&(o.startsWith(`translatex`)||o.startsWith(`translate`)||o.startsWith(`translate3d`))?o.startsWith(`translatey`)?s[0]:s[1]:parseFloat(o.split(`,`)[5]),isNaN(e)?0:i?e:Math.abs(e)}let c=0;return c=s.length>0&&(o.startsWith(`translatex`)||o.startsWith(`translate`)||o.startsWith(`translate3d`))?s[0]:parseFloat(o.split(`,`)[4]),isNaN(c)?0:i?c:Math.abs(c)},a=e=>{if(!e)return e;let n=e.replace(/font-size\s*?:\s*?(\d+)(pt|px)(;)?/gi,(e,n,r,i)=>{if(r?.toLowerCase()==`pt`){let e=t.get(parseFloat(n));return e?`font-size:`+e+`em`+(i??``):`font-size:`+n/12+`em`+(i??``)}return r?.toLowerCase()==`px`?`font-size:`+n/16+`em`+(i??``):e});return n=n.replace(/font-size\s*?:\s*?(xx-small|x-small|small|medium|large|x-large|xx-large|xxx-large)(;)?/gi,(e,t,n)=>t?`font-size:inherit`+(n??``):e),n},o=e=>{if(!e)return e;let t=/[\s]+/g;return e.replace(/text-indent\s*?:\s*?(\d+)(pt|px|em|rem|in|cm|mm|%)?(\s*;)?/gi,(e,n,r,i)=>e&&e.length>20&&e.replace(t,``).length>20?e:``)},s=e=>e&&e.replace(/text-align\s*:\s*(center|right)\b/gi,e=>`${e}; text-indent: 0;`),c=e=>{e.oncontextmenu=()=>!1},l=(e,t,n,r)=>{if(!e)return;let i=r??e.ownerDocument;if(!i)return;let a=i.documentElement.scrollTop,o=0;if(i.defaultView!=i.defaultView?.parent&&(o=i.defaultView.parent.document.documentElement.scrollTop),n&&`scrollIntoViewIfNeeded`in e)e.scrollIntoViewIfNeeded();else try{if(t){let n={...t};n.behavior==`smooth`&&(n.behavior=`auto`),e.scrollIntoView(n)}else e.scrollIntoView()}catch{e.scrollIntoView()}a>0&&(i.documentElement.scrollTop=a),o>0&&(i.defaultView.parent.document.documentElement.scrollTop=o)};exports.appendZeroTextIndentForCenterRightAlign=s,exports.getTransformLength=i,exports.preventContextMenu=c,exports.removeTextIndent=o,exports.replaceFontSize=a,exports.scrollElementIntoView=l;
@@ -1,80 +1,60 @@
1
- import { isNullOrWhiteSpace as u } from "../common/text.mjs";
2
- const i = /* @__PURE__ */ new Map();
3
- i.set(9, 0.75);
4
- i.set(11, 0.875);
5
- i.set(13, 1.063);
6
- i.set(14, 1.125);
7
- i.set(15, 1.25);
8
- i.set(16, 1.313);
9
- const f = (t) => {
10
- if (!t)
11
- return "";
12
- const r = t.indexOf("("), n = t.lastIndexOf(")");
13
- return r === -1 || n === -1 ? null : t.slice(r + 1, n);
14
- }, c = (t) => {
15
- const r = f(t);
16
- return r ? r.split(",").map((n) => {
17
- const s = n.trim(), e = parseFloat(s);
18
- return isNaN(e) ? 0 : e;
19
- }) : [];
20
- }, m = (t, r, n) => {
21
- const s = t?.ownerDocument;
22
- if (!s || !s?.defaultView || u(r)) return 0;
23
- let e = t.style?.transform?.toLowerCase();
24
- if ((!e || !(e.startsWith("translatex") || e.startsWith("translate") || e.startsWith("translate3d"))) && (e = t.ownerDocument.defaultView.getComputedStyle(t).transform?.toLowerCase()), !e || e == "none") return 0;
25
- const o = c(e);
26
- if (r == "y") {
27
- let a = 0;
28
- return o.length > 0 && (e.startsWith("translatex") || e.startsWith("translate") || e.startsWith("translate3d")) ? a = e.startsWith("translatey") ? o[0] : o[1] : a = parseFloat(e.split(",")[5]), isNaN(a) ? 0 : n ? a : Math.abs(a);
29
- }
30
- let l = 0;
31
- return o.length > 0 && (e.startsWith("translatex") || e.startsWith("translate") || e.startsWith("translate3d")) ? l = o[0] : l = parseFloat(e.split(",")[4]), isNaN(l) ? 0 : n ? l : Math.abs(l);
32
- }, d = (t) => {
33
- if (!t)
34
- return t;
35
- let r = t.replace(/font-size\s*?:\s*?(\d+)(pt|px)(;)?/gi, (n, s, e, o) => {
36
- if (e?.toLowerCase() == "pt") {
37
- const l = i.get(parseFloat(s));
38
- return l ? "font-size:" + l + "em" + (o ?? "") : "font-size:" + s / 12 + "em" + (o ?? "");
39
- } else if (e?.toLowerCase() == "px")
40
- return "font-size:" + s / 16 + "em" + (o ?? "");
41
- return n;
42
- });
43
- return r = r.replace(/font-size\s*?:\s*?(xx-small|x-small|small|medium|large|x-large|xx-large|xxx-large)(;)?/gi, (n, s, e) => s ? "font-size:inherit" + (e ?? "") : n), r;
44
- }, x = (t) => {
45
- if (!t)
46
- return t;
47
- const r = /[\s]+/g;
48
- return t.replace(/text-indent\s*?:\s*?(\d+)(pt|px|em|rem|in|cm|mm|%)?(\s*;)?/gi, (n, s, e, o) => n && n.length > 20 && n.replace(r, "").length > 20 ? n : "");
49
- }, w = (t) => t && t.replace(/text-align\s*:\s*(center|right)\b/gi, (r) => `${r}; text-indent: 0;`), h = (t) => {
50
- t.oncontextmenu = () => !1;
51
- }, g = (t, r, n, s) => {
52
- if (!t) return;
53
- const e = s ?? t.ownerDocument;
54
- if (!e) return;
55
- const o = e.documentElement.scrollTop;
56
- let l = 0;
57
- if (e.defaultView != e.defaultView?.parent && (l = e.defaultView.parent.document.documentElement.scrollTop), n && "scrollIntoViewIfNeeded" in t)
58
- t.scrollIntoViewIfNeeded();
59
- else
60
- try {
61
- if (r) {
62
- const a = {
63
- ...r
64
- };
65
- a.behavior == "smooth" && (a.behavior = "auto"), t.scrollIntoView(a);
66
- } else
67
- t.scrollIntoView();
68
- } catch {
69
- t.scrollIntoView();
70
- }
71
- o > 0 && (e.documentElement.scrollTop = o), l > 0 && (e.defaultView.parent.document.documentElement.scrollTop = l);
72
- };
73
- export {
74
- w as appendZeroTextIndentForCenterRightAlign,
75
- m as getTransformLength,
76
- h as preventContextMenu,
77
- x as removeTextIndent,
78
- d as replaceFontSize,
79
- g as scrollElementIntoView
1
+ import { isNullOrWhiteSpace as e } from "../common/text.mjs";
2
+ //#region kernal/html/style.ts
3
+ var t = /* @__PURE__ */ new Map();
4
+ t.set(9, .75), t.set(11, .875), t.set(13, 1.063), t.set(14, 1.125), t.set(15, 1.25), t.set(16, 1.313);
5
+ var n = (e) => {
6
+ if (!e) return "";
7
+ let t = e.indexOf("("), n = e.lastIndexOf(")");
8
+ return t === -1 || n === -1 ? null : e.slice(t + 1, n);
9
+ }, r = (e) => {
10
+ let t = n(e);
11
+ return t ? t.split(",").map((e) => {
12
+ let t = e.trim(), n = parseFloat(t);
13
+ return isNaN(n) ? 0 : n;
14
+ }) : [];
15
+ }, i = (t, n, i) => {
16
+ let a = t?.ownerDocument;
17
+ if (!a || !a?.defaultView || e(n)) return 0;
18
+ let o = t.style?.transform?.toLowerCase();
19
+ if ((!o || !(o.startsWith("translatex") || o.startsWith("translate") || o.startsWith("translate3d"))) && (o = t.ownerDocument.defaultView.getComputedStyle(t).transform?.toLowerCase()), !o || o == "none") return 0;
20
+ let s = r(o);
21
+ if (n == "y") {
22
+ let e = 0;
23
+ return e = s.length > 0 && (o.startsWith("translatex") || o.startsWith("translate") || o.startsWith("translate3d")) ? o.startsWith("translatey") ? s[0] : s[1] : parseFloat(o.split(",")[5]), isNaN(e) ? 0 : i ? e : Math.abs(e);
24
+ }
25
+ let c = 0;
26
+ return c = s.length > 0 && (o.startsWith("translatex") || o.startsWith("translate") || o.startsWith("translate3d")) ? s[0] : parseFloat(o.split(",")[4]), isNaN(c) ? 0 : i ? c : Math.abs(c);
27
+ }, a = (e) => {
28
+ if (!e) return e;
29
+ let n = e.replace(/font-size\s*?:\s*?(\d+)(pt|px)(;)?/gi, (e, n, r, i) => {
30
+ if (r?.toLowerCase() == "pt") {
31
+ let e = t.get(parseFloat(n));
32
+ return e ? "font-size:" + e + "em" + (i ?? "") : "font-size:" + n / 12 + "em" + (i ?? "");
33
+ }
34
+ return r?.toLowerCase() == "px" ? "font-size:" + n / 16 + "em" + (i ?? "") : e;
35
+ });
36
+ return n = n.replace(/font-size\s*?:\s*?(xx-small|x-small|small|medium|large|x-large|xx-large|xxx-large)(;)?/gi, (e, t, n) => t ? "font-size:inherit" + (n ?? "") : e), n;
37
+ }, o = (e) => {
38
+ if (!e) return e;
39
+ let t = /[\s]+/g;
40
+ return e.replace(/text-indent\s*?:\s*?(\d+)(pt|px|em|rem|in|cm|mm|%)?(\s*;)?/gi, (e, n, r, i) => e && e.length > 20 && e.replace(t, "").length > 20 ? e : "");
41
+ }, s = (e) => e && e.replace(/text-align\s*:\s*(center|right)\b/gi, (e) => `${e}; text-indent: 0;`), c = (e) => {
42
+ e.oncontextmenu = () => !1;
43
+ }, l = (e, t, n, r) => {
44
+ if (!e) return;
45
+ let i = r ?? e.ownerDocument;
46
+ if (!i) return;
47
+ let a = i.documentElement.scrollTop, o = 0;
48
+ if (i.defaultView != i.defaultView?.parent && (o = i.defaultView.parent.document.documentElement.scrollTop), n && "scrollIntoViewIfNeeded" in e) e.scrollIntoViewIfNeeded();
49
+ else try {
50
+ if (t) {
51
+ let n = { ...t };
52
+ n.behavior == "smooth" && (n.behavior = "auto"), e.scrollIntoView(n);
53
+ } else e.scrollIntoView();
54
+ } catch {
55
+ e.scrollIntoView();
56
+ }
57
+ a > 0 && (i.documentElement.scrollTop = a), o > 0 && (i.defaultView.parent.document.documentElement.scrollTop = o);
80
58
  };
59
+ //#endregion
60
+ export { s as appendZeroTextIndentForCenterRightAlign, i as getTransformLength, c as preventContextMenu, o as removeTextIndent, a as replaceFontSize, l as scrollElementIntoView };