@foxycape/core 1.1.5 → 1.1.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.MD +0 -2
- package/README.zh.md +0 -2
- package/dist/ReaderHub.cjs +1 -0
- package/dist/ReaderHub.d.ts +20 -0
- package/dist/ReaderHub.mjs +59 -0
- package/dist/kernal/ContentRange.d.ts +1 -0
- package/dist/kernal/Context.cjs +1 -1
- package/dist/kernal/Context.mjs +13 -8
- package/dist/kernal/EventNames.cjs +1 -1
- package/dist/kernal/EventNames.d.ts +2 -0
- package/dist/kernal/EventNames.mjs +6 -0
- package/dist/kernal/FileLoader.cjs +1 -1
- package/dist/kernal/FileLoader.d.ts +3 -11
- package/dist/kernal/FileLoader.mjs +27 -22
- package/dist/kernal/JsonConvert.cjs +1 -1
- package/dist/kernal/JsonConvert.d.ts +0 -1
- package/dist/kernal/JsonConvert.mjs +17 -25
- package/dist/kernal/LifecycleHooks.d.ts +2 -1
- package/dist/kernal/Metadata.cjs +1 -1
- package/dist/kernal/Metadata.d.ts +34 -0
- package/dist/kernal/Metadata.mjs +47 -2
- package/dist/kernal/OpenOptions.d.ts +1 -0
- package/dist/kernal/Options.cjs +1 -1
- package/dist/kernal/Options.d.ts +2 -12
- package/dist/kernal/Options.mjs +1 -13
- package/dist/kernal/OptionsProvider.cjs +1 -1
- package/dist/kernal/OptionsProvider.d.ts +0 -2
- package/dist/kernal/OptionsProvider.mjs +6 -14
- package/dist/kernal/Reader.cjs +1 -1
- package/dist/kernal/Reader.d.ts +13 -12
- package/dist/kernal/Reader.mjs +119 -89
- package/dist/kernal/Theme.cjs +1 -1
- package/dist/kernal/Theme.mjs +1 -1
- package/dist/kernal/common/url.cjs +1 -1
- package/dist/kernal/common/url.d.ts +2 -0
- package/dist/kernal/common/url.mjs +2 -2
- package/dist/kernal/common/uuid.cjs +1 -1
- package/dist/kernal/common/uuid.mjs +7 -7
- package/dist/kernal/common/xxh64.cjs +1 -0
- package/dist/kernal/common/xxh64.d.ts +1 -0
- package/dist/kernal/common/xxh64.mjs +30 -0
- package/dist/kernal/crypto/MD5.cjs +1 -1
- package/dist/kernal/crypto/MD5.d.ts +0 -1
- package/dist/kernal/crypto/MD5.mjs +8 -9
- package/dist/kernal/crypto/WebCrypto.cjs +1 -1
- package/dist/kernal/crypto/WebCrypto.mjs +38 -35
- package/dist/kernal/deepClone/buffer.cjs +1 -1
- package/dist/kernal/deepClone/buffer.d.ts +8 -2
- package/dist/kernal/deepClone/buffer.mjs +1 -5
- package/dist/kernal/device/IDevice.d.ts +8 -2
- package/dist/kernal/device/WebBrowser.cjs +1 -1
- package/dist/kernal/device/WebBrowser.d.ts +12 -6
- package/dist/kernal/device/WebBrowser.mjs +70 -6
- package/dist/kernal/hostViewport.cjs +1 -0
- package/dist/kernal/hostViewport.d.ts +16 -0
- package/dist/kernal/hostViewport.mjs +44 -0
- package/dist/kernal/html/events.cjs +1 -1
- package/dist/kernal/html/events.mjs +35 -34
- package/dist/kernal/html/finder.cjs +1 -1
- package/dist/kernal/html/finder.d.ts +6 -2
- package/dist/kernal/html/finder.mjs +62 -51
- package/dist/kernal/html/geometry.cjs +1 -1
- package/dist/kernal/html/geometry.d.ts +26 -1
- package/dist/kernal/html/geometry.mjs +182 -121
- package/dist/kernal/html/manipulator.cjs +1 -1
- package/dist/kernal/html/manipulator.d.ts +1 -3
- package/dist/kernal/html/manipulator.mjs +34 -59
- package/dist/kernal/html/parser.cjs +1 -1
- package/dist/kernal/html/parser.mjs +3 -3
- package/dist/kernal/html/position.cjs +1 -1
- package/dist/kernal/html/position.d.ts +0 -18
- package/dist/kernal/html/position.mjs +2 -141
- package/dist/kernal/html/realm.cjs +1 -0
- package/dist/kernal/html/realm.d.ts +7 -0
- package/dist/kernal/html/realm.mjs +8 -0
- package/dist/kernal/html/selection.cjs +1 -1
- package/dist/kernal/html/selection.d.ts +1 -0
- package/dist/kernal/html/selection.mjs +33 -12
- package/dist/kernal/html/text.cjs +1 -1
- package/dist/kernal/html/text.d.ts +4 -3
- package/dist/kernal/html/text.mjs +24 -21
- package/dist/kernal/html/translationAnchor.cjs +1 -0
- package/dist/kernal/html/translationAnchor.d.ts +3 -0
- package/dist/kernal/html/translationAnchor.mjs +71 -0
- package/dist/kernal/i18n/DefaultLocale.cjs +1 -1
- package/dist/kernal/i18n/DefaultLocale.d.ts +2 -2
- package/dist/kernal/i18n/DefaultLocale.mjs +7 -12
- package/dist/kernal/i18n/ILocale.d.ts +0 -1
- package/dist/kernal/i18n/applyNamed.cjs +1 -0
- package/dist/kernal/i18n/applyNamed.d.ts +1 -0
- package/dist/kernal/i18n/applyNamed.mjs +9 -0
- package/dist/kernal/i18n/textDirection.cjs +1 -0
- package/dist/kernal/i18n/textDirection.d.ts +6 -0
- package/dist/kernal/i18n/textDirection.mjs +7 -0
- package/dist/kernal/index.cjs +1 -1
- package/dist/kernal/index.d.ts +6 -5
- package/dist/kernal/index.mjs +50 -45
- package/dist/kernal/mark/IHighlighter.cjs +1 -0
- package/dist/kernal/mark/IHighlighter.d.ts +43 -0
- package/dist/kernal/mark/IHighlighter.mjs +13 -0
- package/dist/kernal/mark/Mark.cjs +1 -1
- package/dist/kernal/mark/Mark.d.ts +33 -4
- package/dist/kernal/mark/Mark.mjs +43 -6
- package/dist/kernal/mark/index.cjs +1 -1
- package/dist/kernal/mark/index.d.ts +2 -0
- package/dist/kernal/mark/index.mjs +6 -3
- package/dist/kernal/mark/overlay.cjs +1 -0
- package/dist/kernal/mark/overlay.d.ts +31 -0
- package/dist/kernal/mark/overlay.mjs +102 -0
- package/dist/kernal/mark/types.cjs +1 -0
- package/dist/kernal/mark/types.d.ts +11 -2
- package/dist/kernal/mark/types.mjs +4 -0
- package/dist/kernal/navigator/INavigator.d.ts +3 -2
- package/dist/kernal/network/HttpClient.cjs +1 -1
- package/dist/kernal/network/HttpClient.mjs +80 -56
- package/dist/kernal/pipelines/FileLoadPipeline.cjs +1 -1
- package/dist/kernal/pipelines/FileLoadPipeline.mjs +55 -56
- package/dist/kernal/pipelines/InputFormatter.cjs +1 -1
- package/dist/kernal/pipelines/InputFormatter.mjs +43 -41
- package/dist/kernal/pipelines/metadata.cjs +1 -1
- package/dist/kernal/pipelines/metadata.d.ts +2 -1
- package/dist/kernal/pipelines/metadata.mjs +21 -30
- package/dist/kernal/plugins/keyboard/KeyboardPageTurning.cjs +1 -1
- package/dist/kernal/plugins/keyboard/KeyboardPageTurning.mjs +7 -6
- package/dist/kernal/plugins/mouse/WheelPageTurning.cjs +1 -1
- package/dist/kernal/plugins/mouse/WheelPageTurning.mjs +12 -11
- package/dist/kernal/progress/Progress.cjs +1 -1
- package/dist/kernal/progress/Progress.d.ts +5 -3
- package/dist/kernal/progress/Progress.mjs +2 -2
- package/dist/kernal/progress/userChangedProgress.cjs +1 -0
- package/dist/kernal/progress/userChangedProgress.d.ts +9 -0
- package/dist/kernal/progress/userChangedProgress.mjs +11 -0
- package/dist/kernal/screen/BrowserFullscreen.cjs +1 -0
- package/dist/kernal/screen/BrowserFullscreen.d.ts +9 -0
- package/dist/kernal/screen/BrowserFullscreen.mjs +47 -0
- package/dist/kernal/screen/IFullscreen.d.ts +6 -0
- package/dist/kernal/services/ServiceCollection.cjs +1 -1
- package/dist/kernal/services/ServiceCollection.d.ts +4 -6
- package/dist/kernal/services/ServiceCollection.mjs +18 -9
- package/dist/kernal/services/docLoadLayer/HtmlLoadLayer.cjs +2 -2
- package/dist/kernal/services/docLoadLayer/HtmlLoadLayer.d.ts +4 -2
- package/dist/kernal/services/docLoadLayer/HtmlLoadLayer.mjs +31 -23
- package/dist/kernal/services/fileUrlParser/DefaultFileUrlParser.cjs +1 -1
- package/dist/kernal/services/fileUrlParser/DefaultFileUrlParser.mjs +52 -51
- package/dist/kernal/services/fileUrlParser/IFileUrlParser.d.ts +0 -1
- package/dist/kernal/services/font/IFontProvider.cjs +1 -1
- package/dist/kernal/services/font/IFontProvider.d.ts +3 -0
- package/dist/kernal/services/font/IFontProvider.mjs +1 -1
- package/dist/kernal/services/internalUrlBuilder/DefaultInternalUrlBuilder.cjs +1 -1
- package/dist/kernal/services/internalUrlBuilder/DefaultInternalUrlBuilder.mjs +8 -8
- package/dist/kernal/services/loading/DefaultLoading.cjs +1 -1
- package/dist/kernal/services/loading/DefaultLoading.d.ts +4 -0
- package/dist/kernal/services/loading/DefaultLoading.mjs +23 -24
- package/dist/kernal/services/text/splitter.cjs +1 -1
- package/dist/kernal/services/text/splitter.mjs +3 -3
- package/dist/kernal/types.d.ts +0 -5
- package/dist/kernal/web/BrowserCapabilities.cjs +1 -1
- package/dist/kernal/web/BrowserCapabilities.d.ts +0 -9
- package/dist/kernal/web/BrowserCapabilities.mjs +0 -49
- package/dist/kernal/{Debounce.mjs → web/debounce.mjs} +1 -1
- package/dist/kernal/web/scheduler.cjs +1 -0
- package/dist/kernal/web/scheduler.d.ts +3 -0
- package/dist/kernal/web/scheduler.mjs +7 -0
- package/dist/mediaTypes/base/fileParser/BaseFileParser.cjs +1 -1
- package/dist/mediaTypes/base/fileParser/BaseFileParser.mjs +59 -59
- package/dist/mediaTypes/html/DefaultHtmlSymbolMeasure.cjs +1 -0
- package/dist/mediaTypes/html/DefaultHtmlSymbolMeasure.d.ts +13 -0
- package/dist/mediaTypes/html/DefaultHtmlSymbolMeasure.mjs +109 -0
- package/dist/mediaTypes/html/HtmlOptions.cjs +1 -1
- package/dist/mediaTypes/html/HtmlOptions.d.ts +6 -12
- package/dist/mediaTypes/html/HtmlOptions.mjs +3 -14
- package/dist/mediaTypes/html/HtmlSettings.cjs +1 -1
- package/dist/mediaTypes/html/HtmlSettings.d.ts +16 -1
- package/dist/mediaTypes/html/HtmlSettings.mjs +46 -1
- package/dist/mediaTypes/html/IHtmlContentNormalizer.cjs +1 -0
- package/dist/mediaTypes/html/IHtmlContentNormalizer.d.ts +4 -0
- package/dist/mediaTypes/html/IHtmlContentNormalizer.mjs +4 -0
- package/dist/mediaTypes/html/IHtmlSymbolMeasure.d.ts +11 -0
- package/dist/mediaTypes/html/NoopHtmlContentNormalizer.cjs +1 -0
- package/dist/mediaTypes/html/NoopHtmlContentNormalizer.d.ts +5 -0
- package/dist/mediaTypes/html/NoopHtmlContentNormalizer.mjs +8 -0
- package/dist/mediaTypes/html/fileParser/HtmlFileParser.cjs +1 -1
- package/dist/mediaTypes/html/fileParser/HtmlFileParser.d.ts +5 -1
- package/dist/mediaTypes/html/fileParser/HtmlFileParser.mjs +15 -18
- package/dist/mediaTypes/html/fileParser/HtmlTextDocument.cjs +1 -1
- package/dist/mediaTypes/html/fileParser/HtmlTextDocument.mjs +25 -25
- package/dist/mediaTypes/html/fileParser/IHtmlFileParser.cjs +1 -0
- package/dist/mediaTypes/html/fileParser/IHtmlFileParser.d.ts +7 -3
- package/dist/mediaTypes/html/fileParser/IHtmlFileParser.mjs +4 -0
- package/dist/mediaTypes/html/renderer/HtmlRenderer.cjs +1 -1
- package/dist/mediaTypes/html/renderer/HtmlRenderer.d.ts +7 -1
- package/dist/mediaTypes/html/renderer/HtmlRenderer.mjs +65 -41
- package/dist/mediaTypes/html/renderer/IHtmlDocument.d.ts +6 -2
- package/dist/mediaTypes/html/renderer/IHtmlDocumentsProvider.d.ts +5 -0
- package/dist/mediaTypes/html/renderer/IHtmlRenderer.d.ts +3 -0
- package/dist/mediaTypes/html/renderer/document/HtmlDocument.cjs +1 -1
- package/dist/mediaTypes/html/renderer/document/HtmlDocument.d.ts +29 -6
- package/dist/mediaTypes/html/renderer/document/HtmlDocument.mjs +233 -86
- package/dist/mediaTypes/html/renderer/document/HtmlDocumentResizeObserver.cjs +1 -1
- package/dist/mediaTypes/html/renderer/document/HtmlDocumentResizeObserver.d.ts +8 -0
- package/dist/mediaTypes/html/renderer/document/HtmlDocumentResizeObserver.mjs +41 -5
- package/dist/mediaTypes/html/renderer/document/HtmlPageCalculator.cjs +1 -1
- package/dist/mediaTypes/html/renderer/document/HtmlPageCalculator.d.ts +2 -4
- package/dist/mediaTypes/html/renderer/document/HtmlPageCalculator.mjs +22 -59
- package/dist/mediaTypes/html/renderer/document/HtmlSymbolCalclator.cjs +1 -1
- package/dist/mediaTypes/html/renderer/document/HtmlSymbolCalclator.d.ts +3 -5
- package/dist/mediaTypes/html/renderer/document/HtmlSymbolCalclator.mjs +7 -25
- package/dist/mediaTypes/html/renderer/documents/HtmlContainerBuilder.cjs +1 -1
- package/dist/mediaTypes/html/renderer/documents/HtmlContainerBuilder.d.ts +0 -2
- package/dist/mediaTypes/html/renderer/documents/HtmlContainerBuilder.mjs +18 -42
- package/dist/mediaTypes/html/renderer/documents/HtmlDocumentsIntersectionObserver.cjs +1 -1
- package/dist/mediaTypes/html/renderer/documents/HtmlDocumentsIntersectionObserver.d.ts +2 -0
- package/dist/mediaTypes/html/renderer/documents/HtmlDocumentsIntersectionObserver.mjs +17 -4
- package/dist/mediaTypes/html/renderer/documents/HtmlDocumentsPreloader.cjs +1 -1
- package/dist/mediaTypes/html/renderer/documents/HtmlDocumentsPreloader.d.ts +16 -1
- package/dist/mediaTypes/html/renderer/documents/HtmlDocumentsPreloader.mjs +128 -54
- package/dist/mediaTypes/html/renderer/documents/HtmlDocumentsProvider.cjs +1 -1
- package/dist/mediaTypes/html/renderer/documents/HtmlDocumentsProvider.d.ts +26 -3
- package/dist/mediaTypes/html/renderer/documents/HtmlDocumentsProvider.mjs +227 -101
- package/dist/mediaTypes/html/renderer/documents/HtmlDocumentsResizeObserver.cjs +1 -1
- package/dist/mediaTypes/html/renderer/documents/HtmlDocumentsResizeObserver.d.ts +2 -0
- package/dist/mediaTypes/html/renderer/documents/HtmlDocumentsResizeObserver.mjs +45 -25
- package/dist/mediaTypes/html/renderer/documents/documentHiddenState.cjs +1 -0
- package/dist/mediaTypes/html/renderer/documents/documentHiddenState.d.ts +6 -0
- package/dist/mediaTypes/html/renderer/documents/documentHiddenState.mjs +6 -0
- package/dist/mediaTypes/html/renderer/documents/preloadNeighbors.cjs +1 -0
- package/dist/mediaTypes/html/renderer/documents/preloadNeighbors.d.ts +2 -0
- package/dist/mediaTypes/html/renderer/documents/preloadNeighbors.mjs +13 -0
- package/dist/mediaTypes/html/renderer/documents/wrapperVisibility.cjs +1 -0
- package/dist/mediaTypes/html/renderer/documents/wrapperVisibility.d.ts +11 -0
- package/dist/mediaTypes/html/renderer/documents/wrapperVisibility.mjs +8 -0
- package/dist/mediaTypes/html/renderer/html/HtmlContentProcessor.cjs +1 -1
- package/dist/mediaTypes/html/renderer/html/HtmlContentProcessor.mjs +62 -62
- package/dist/mediaTypes/html/renderer/html/template.cjs +1 -1
- package/dist/mediaTypes/html/renderer/html/template.d.ts +3 -1
- package/dist/mediaTypes/html/renderer/html/template.mjs +9 -9
- package/dist/mediaTypes/html/renderer/image/HtmlImageLoader.cjs +1 -1
- package/dist/mediaTypes/html/renderer/image/HtmlImageLoader.d.ts +22 -12
- package/dist/mediaTypes/html/renderer/image/HtmlImageLoader.mjs +380 -270
- package/dist/mediaTypes/html/renderer/image/HtmlImageObserver.cjs +1 -1
- package/dist/mediaTypes/html/renderer/image/HtmlImageObserver.mjs +27 -27
- package/dist/mediaTypes/html/renderer/image/IHtmlImageLoader.d.ts +8 -0
- package/dist/mediaTypes/html/renderer/image/error-image.cjs +1 -1
- package/dist/mediaTypes/html/renderer/image/error-image.mjs +1 -1
- package/dist/mediaTypes/html/renderer/image/htmlImageFitStyles.cjs +1 -0
- package/dist/mediaTypes/html/renderer/image/htmlImageFitStyles.d.ts +10 -0
- package/dist/mediaTypes/html/renderer/image/htmlImageFitStyles.mjs +15 -0
- package/dist/mediaTypes/html/renderer/image/htmlImagePlaceholderUrl.cjs +1 -0
- package/dist/mediaTypes/html/renderer/image/htmlImagePlaceholderUrl.d.ts +2 -0
- package/dist/mediaTypes/html/renderer/image/htmlImagePlaceholderUrl.mjs +12 -0
- package/dist/mediaTypes/html/renderer/layout/HtmlRendererLayout.cjs +1 -1
- package/dist/mediaTypes/html/renderer/layout/HtmlRendererLayout.d.ts +6 -10
- package/dist/mediaTypes/html/renderer/layout/HtmlRendererLayout.mjs +71 -62
- package/dist/mediaTypes/html/renderer/layout/HtmlRendererViewport.cjs +1 -1
- package/dist/mediaTypes/html/renderer/layout/HtmlRendererViewport.d.ts +4 -1
- package/dist/mediaTypes/html/renderer/layout/HtmlRendererViewport.mjs +113 -68
- package/dist/mediaTypes/html/renderer/layout/IHtmlRendererLayout.d.ts +8 -3
- package/dist/mediaTypes/html/renderer/layout/ViewportCssVariableNames.cjs +1 -1
- package/dist/mediaTypes/html/renderer/layout/ViewportCssVariableNames.d.ts +5 -1
- package/dist/mediaTypes/html/renderer/layout/ViewportCssVariableNames.mjs +15 -3
- package/dist/mediaTypes/html/renderer/layout/applyLayoutClasses.cjs +1 -0
- package/dist/mediaTypes/html/renderer/layout/applyLayoutClasses.d.ts +8 -0
- package/dist/mediaTypes/html/renderer/layout/applyLayoutClasses.mjs +28 -0
- package/dist/mediaTypes/html/renderer/layout/css/document-content-page-horizontal-tb-ltr.cjs +30 -0
- package/dist/mediaTypes/html/renderer/layout/css/document-content-page-horizontal-tb-ltr.mjs +4 -0
- package/dist/mediaTypes/html/renderer/layout/css/document-content-page-horizontal-tb-rtl.cjs +31 -0
- package/dist/mediaTypes/html/renderer/layout/css/document-content-page-horizontal-tb-rtl.mjs +4 -0
- package/dist/mediaTypes/html/renderer/layout/css/document-content-page-vertical-lr-ltr.cjs +30 -0
- package/dist/mediaTypes/html/renderer/layout/css/document-content-page-vertical-lr-ltr.mjs +4 -0
- package/dist/mediaTypes/html/renderer/layout/css/document-content-page-vertical-lr-rtl.cjs +30 -0
- package/dist/mediaTypes/html/renderer/layout/css/document-content-page-vertical-lr-rtl.mjs +4 -0
- package/dist/mediaTypes/html/renderer/layout/css/document-content-page-vertical-rl-ltr.cjs +30 -0
- package/dist/mediaTypes/html/renderer/layout/css/document-content-page-vertical-rl-ltr.mjs +4 -0
- package/dist/mediaTypes/html/renderer/layout/css/document-content-page-vertical-rl-rtl.cjs +30 -0
- package/dist/mediaTypes/html/renderer/layout/css/document-content-page-vertical-rl-rtl.mjs +4 -0
- package/dist/mediaTypes/html/renderer/layout/css/document-content-scroll-horizontal-tb-rtl.cjs +6 -0
- package/dist/mediaTypes/html/renderer/layout/css/document-content-scroll-horizontal-tb-rtl.mjs +4 -0
- package/dist/mediaTypes/html/renderer/layout/css/document-content-scroll-vertical-lr-ltr.cjs +10 -0
- package/dist/mediaTypes/html/renderer/layout/css/document-content-scroll-vertical-lr-ltr.mjs +4 -0
- package/dist/mediaTypes/html/renderer/layout/css/document-content-scroll-vertical-lr-rtl.cjs +10 -0
- package/dist/mediaTypes/html/renderer/layout/css/document-content-scroll-vertical-lr-rtl.mjs +4 -0
- package/dist/mediaTypes/html/renderer/layout/css/document-content-scroll-vertical-rl-ltr.cjs +10 -0
- package/dist/mediaTypes/html/renderer/layout/css/document-content-scroll-vertical-rl-ltr.mjs +4 -0
- package/dist/mediaTypes/html/renderer/layout/css/document-content-scroll-vertical-rl-rtl.cjs +10 -0
- package/dist/mediaTypes/html/renderer/layout/css/document-content-scroll-vertical-rl-rtl.mjs +4 -0
- package/dist/mediaTypes/html/renderer/layout/css/document-default.cjs +19 -0
- package/dist/mediaTypes/html/renderer/layout/css/document-default.mjs +4 -0
- package/dist/mediaTypes/html/renderer/layout/css/hostLayoutCss.cjs +3 -0
- package/dist/mediaTypes/html/renderer/layout/css/hostLayoutCss.d.ts +2 -0
- package/dist/mediaTypes/html/renderer/layout/css/hostLayoutCss.mjs +56 -0
- package/dist/mediaTypes/html/renderer/layout/css/renderer-default.cjs +64 -0
- package/dist/mediaTypes/html/renderer/layout/css/renderer-default.mjs +4 -0
- package/dist/mediaTypes/html/renderer/layout/css/renderer-layout-page-horizontal-tb-ltr.cjs +33 -0
- package/dist/mediaTypes/html/renderer/layout/css/renderer-layout-page-horizontal-tb-ltr.mjs +4 -0
- package/dist/mediaTypes/html/renderer/layout/css/renderer-layout-page-horizontal-tb-rtl.cjs +33 -0
- package/dist/mediaTypes/html/renderer/layout/css/renderer-layout-page-horizontal-tb-rtl.mjs +4 -0
- package/dist/mediaTypes/html/renderer/layout/css/renderer-layout-page-vertical-lr-ltr.cjs +47 -0
- package/dist/mediaTypes/html/renderer/layout/css/renderer-layout-page-vertical-lr-ltr.mjs +4 -0
- package/dist/mediaTypes/html/renderer/layout/css/renderer-layout-page-vertical-lr-rtl.cjs +47 -0
- package/dist/mediaTypes/html/renderer/layout/css/renderer-layout-page-vertical-lr-rtl.mjs +4 -0
- package/dist/mediaTypes/html/renderer/layout/css/renderer-layout-page-vertical-rl-ltr.cjs +46 -0
- package/dist/mediaTypes/html/renderer/layout/css/renderer-layout-page-vertical-rl-ltr.mjs +4 -0
- package/dist/mediaTypes/html/renderer/layout/css/renderer-layout-page-vertical-rl-rtl.cjs +46 -0
- package/dist/mediaTypes/html/renderer/layout/css/renderer-layout-page-vertical-rl-rtl.mjs +4 -0
- package/dist/mediaTypes/html/renderer/layout/css/renderer-layout-scroll-horizontal-tb-rtl.cjs +7 -0
- package/dist/mediaTypes/html/renderer/layout/css/renderer-layout-scroll-horizontal-tb-rtl.mjs +4 -0
- package/dist/mediaTypes/html/renderer/layout/css/renderer-layout-scroll-vertical-lr-ltr.cjs +28 -0
- package/dist/mediaTypes/html/renderer/layout/css/renderer-layout-scroll-vertical-lr-ltr.mjs +4 -0
- package/dist/mediaTypes/html/renderer/layout/css/renderer-layout-scroll-vertical-lr-rtl.cjs +28 -0
- package/dist/mediaTypes/html/renderer/layout/css/renderer-layout-scroll-vertical-lr-rtl.mjs +4 -0
- package/dist/mediaTypes/html/renderer/layout/css/renderer-layout-scroll-vertical-rl-ltr.cjs +28 -0
- package/dist/mediaTypes/html/renderer/layout/css/renderer-layout-scroll-vertical-rl-ltr.mjs +4 -0
- package/dist/mediaTypes/html/renderer/layout/css/renderer-layout-scroll-vertical-rl-rtl.cjs +28 -0
- package/dist/mediaTypes/html/renderer/layout/css/renderer-layout-scroll-vertical-rl-rtl.mjs +4 -0
- package/dist/mediaTypes/html/renderer/layout/css/root-direction.cjs +8 -0
- package/dist/mediaTypes/html/renderer/layout/css/root-direction.mjs +4 -0
- package/dist/mediaTypes/html/renderer/layout/geometry/ILayoutGeometry.d.ts +128 -0
- package/dist/mediaTypes/html/renderer/layout/geometry/formatTranslate3d.cjs +1 -0
- package/dist/mediaTypes/html/renderer/layout/geometry/formatTranslate3d.d.ts +4 -0
- package/dist/mediaTypes/html/renderer/layout/geometry/formatTranslate3d.mjs +7 -0
- package/dist/mediaTypes/html/renderer/layout/geometry/getLayoutOffsetLeft.cjs +1 -0
- package/dist/mediaTypes/html/renderer/layout/geometry/getLayoutOffsetLeft.d.ts +1 -0
- package/dist/mediaTypes/html/renderer/layout/geometry/getLayoutOffsetLeft.mjs +13 -0
- package/dist/mediaTypes/html/renderer/layout/geometry/index.cjs +1 -0
- package/dist/mediaTypes/html/renderer/layout/geometry/index.d.ts +18 -0
- package/dist/mediaTypes/html/renderer/layout/geometry/index.mjs +30 -0
- package/dist/mediaTypes/html/renderer/layout/geometry/pageHorizontalTbLtr.cjs +1 -0
- package/dist/mediaTypes/html/renderer/layout/geometry/pageHorizontalTbLtr.d.ts +3 -0
- package/dist/mediaTypes/html/renderer/layout/geometry/pageHorizontalTbLtr.mjs +71 -0
- package/dist/mediaTypes/html/renderer/layout/geometry/pageHorizontalTbRtl.cjs +1 -0
- package/dist/mediaTypes/html/renderer/layout/geometry/pageHorizontalTbRtl.d.ts +3 -0
- package/dist/mediaTypes/html/renderer/layout/geometry/pageHorizontalTbRtl.mjs +74 -0
- package/dist/mediaTypes/html/renderer/layout/geometry/pageVerticalLrLtr.cjs +1 -0
- package/dist/mediaTypes/html/renderer/layout/geometry/pageVerticalLrLtr.d.ts +3 -0
- package/dist/mediaTypes/html/renderer/layout/geometry/pageVerticalLrLtr.mjs +71 -0
- package/dist/mediaTypes/html/renderer/layout/geometry/pageVerticalLrRtl.cjs +1 -0
- package/dist/mediaTypes/html/renderer/layout/geometry/pageVerticalLrRtl.d.ts +3 -0
- package/dist/mediaTypes/html/renderer/layout/geometry/pageVerticalLrRtl.mjs +71 -0
- package/dist/mediaTypes/html/renderer/layout/geometry/pageVerticalRlLtr.cjs +1 -0
- package/dist/mediaTypes/html/renderer/layout/geometry/pageVerticalRlLtr.d.ts +3 -0
- package/dist/mediaTypes/html/renderer/layout/geometry/pageVerticalRlLtr.mjs +71 -0
- package/dist/mediaTypes/html/renderer/layout/geometry/pageVerticalRlRtl.cjs +1 -0
- package/dist/mediaTypes/html/renderer/layout/geometry/pageVerticalRlRtl.d.ts +3 -0
- package/dist/mediaTypes/html/renderer/layout/geometry/pageVerticalRlRtl.mjs +71 -0
- package/dist/mediaTypes/html/renderer/layout/geometry/restoreLayoutState.cjs +1 -0
- package/dist/mediaTypes/html/renderer/layout/geometry/restoreLayoutState.d.ts +41 -0
- package/dist/mediaTypes/html/renderer/layout/geometry/restoreLayoutState.mjs +53 -0
- package/dist/mediaTypes/html/renderer/layout/geometry/scrollHorizontalTbLtr.cjs +1 -0
- package/dist/mediaTypes/html/renderer/layout/geometry/scrollHorizontalTbLtr.d.ts +3 -0
- package/dist/mediaTypes/html/renderer/layout/geometry/scrollHorizontalTbLtr.mjs +71 -0
- package/dist/mediaTypes/html/renderer/layout/geometry/scrollHorizontalTbRtl.cjs +1 -0
- package/dist/mediaTypes/html/renderer/layout/geometry/scrollHorizontalTbRtl.d.ts +3 -0
- package/dist/mediaTypes/html/renderer/layout/geometry/scrollHorizontalTbRtl.mjs +74 -0
- package/dist/mediaTypes/html/renderer/layout/geometry/scrollVerticalLrLtr.cjs +1 -0
- package/dist/mediaTypes/html/renderer/layout/geometry/scrollVerticalLrLtr.d.ts +3 -0
- package/dist/mediaTypes/html/renderer/layout/geometry/scrollVerticalLrLtr.mjs +71 -0
- package/dist/mediaTypes/html/renderer/layout/geometry/scrollVerticalLrRtl.cjs +1 -0
- package/dist/mediaTypes/html/renderer/layout/geometry/scrollVerticalLrRtl.d.ts +3 -0
- package/dist/mediaTypes/html/renderer/layout/geometry/scrollVerticalLrRtl.mjs +71 -0
- package/dist/mediaTypes/html/renderer/layout/geometry/scrollVerticalRlLtr.cjs +1 -0
- package/dist/mediaTypes/html/renderer/layout/geometry/scrollVerticalRlLtr.d.ts +3 -0
- package/dist/mediaTypes/html/renderer/layout/geometry/scrollVerticalRlLtr.mjs +74 -0
- package/dist/mediaTypes/html/renderer/layout/geometry/scrollVerticalRlRtl.cjs +1 -0
- package/dist/mediaTypes/html/renderer/layout/geometry/scrollVerticalRlRtl.d.ts +3 -0
- package/dist/mediaTypes/html/renderer/layout/geometry/scrollVerticalRlRtl.mjs +74 -0
- package/dist/mediaTypes/html/renderer/layout/layoutRouteIds.cjs +1 -0
- package/dist/mediaTypes/html/renderer/layout/layoutRouteIds.d.ts +10 -0
- package/dist/mediaTypes/html/renderer/layout/layoutRouteIds.mjs +17 -0
- package/dist/mediaTypes/html/renderer/layout/pageStripRouteChange.cjs +1 -0
- package/dist/mediaTypes/html/renderer/layout/pageStripRouteChange.d.ts +6 -0
- package/dist/mediaTypes/html/renderer/layout/pageStripRouteChange.mjs +24 -0
- package/dist/mediaTypes/html/renderer/layout/resolveContentWrapperMinWidth.cjs +1 -0
- package/dist/mediaTypes/html/renderer/layout/resolveContentWrapperMinWidth.d.ts +9 -0
- package/dist/mediaTypes/html/renderer/layout/resolveContentWrapperMinWidth.mjs +4 -0
- package/dist/mediaTypes/html/renderer/layout/resolveLayoutRoute.cjs +1 -0
- package/dist/mediaTypes/html/renderer/layout/resolveLayoutRoute.d.ts +11 -0
- package/dist/mediaTypes/html/renderer/layout/resolveLayoutRoute.mjs +9 -0
- package/dist/mediaTypes/html/renderer/location/HtmlElementLocator.cjs +1 -1
- package/dist/mediaTypes/html/renderer/location/HtmlElementLocator.mjs +32 -34
- package/dist/mediaTypes/html/renderer/location/HtmlLayoutStatePreserver.cjs +1 -0
- package/dist/mediaTypes/html/renderer/location/HtmlLayoutStatePreserver.d.ts +23 -0
- package/dist/mediaTypes/html/renderer/location/HtmlLayoutStatePreserver.mjs +164 -0
- package/dist/mediaTypes/html/renderer/location/remapStoredPageNumber.cjs +1 -0
- package/dist/mediaTypes/html/renderer/location/remapStoredPageNumber.d.ts +4 -0
- package/dist/mediaTypes/html/renderer/location/remapStoredPageNumber.mjs +13 -0
- package/dist/mediaTypes/html/renderer/location/scrollActivity.cjs +1 -0
- package/dist/mediaTypes/html/renderer/location/scrollActivity.d.ts +14 -0
- package/dist/mediaTypes/html/renderer/location/scrollActivity.mjs +18 -0
- package/dist/mediaTypes/html/renderer/navigator/HtmlCoreNavigator.cjs +1 -1
- package/dist/mediaTypes/html/renderer/navigator/HtmlCoreNavigator.mjs +2 -2
- package/dist/mediaTypes/html/renderer/navigator/HtmlNavPointNavigator.cjs +1 -1
- package/dist/mediaTypes/html/renderer/navigator/HtmlNavPointNavigator.mjs +3 -3
- package/dist/mediaTypes/html/renderer/navigator/HtmlNavPointProvider.cjs +1 -1
- package/dist/mediaTypes/html/renderer/navigator/HtmlNavPointProvider.mjs +55 -59
- package/dist/mediaTypes/html/renderer/navigator/HtmlPagingNavigator.cjs +1 -1
- package/dist/mediaTypes/html/renderer/navigator/HtmlPagingNavigator.d.ts +1 -0
- package/dist/mediaTypes/html/renderer/navigator/HtmlPagingNavigator.mjs +40 -39
- package/dist/mediaTypes/html/renderer/progress/HtmlProgressTracker.cjs +1 -1
- package/dist/mediaTypes/html/renderer/progress/HtmlProgressTracker.d.ts +2 -1
- package/dist/mediaTypes/html/renderer/progress/HtmlProgressTracker.mjs +36 -24
- package/dist/mediaTypes/html/renderer/style/ContentCssVariables.cjs +1 -1
- package/dist/mediaTypes/html/renderer/style/ContentCssVariables.d.ts +4 -0
- package/dist/mediaTypes/html/renderer/style/ContentCssVariables.mjs +19 -1
- package/dist/mediaTypes/html/renderer/style/ContentLayoutCssVariableNames.cjs +1 -1
- package/dist/mediaTypes/html/renderer/style/ContentLayoutCssVariableNames.d.ts +3 -0
- package/dist/mediaTypes/html/renderer/style/ContentLayoutCssVariableNames.mjs +9 -0
- package/dist/mediaTypes/html/renderer/style/HtmlStyleProvider.cjs +1 -1
- package/dist/mediaTypes/html/renderer/style/HtmlStyleProvider.d.ts +3 -0
- package/dist/mediaTypes/html/renderer/style/HtmlStyleProvider.mjs +28 -16
- package/dist/mediaTypes/html/renderer/style/HtmlThemeApplier.cjs +1 -1
- package/dist/mediaTypes/html/renderer/style/HtmlThemeApplier.d.ts +2 -0
- package/dist/mediaTypes/html/renderer/style/HtmlThemeApplier.mjs +39 -34
- package/dist/mediaTypes/html/renderer/style/ILanguageHighlighter.cjs +0 -0
- package/dist/mediaTypes/html/renderer/style/ILanguageHighlighter.d.ts +6 -0
- package/dist/mediaTypes/html/renderer/style/ILanguageHighlighter.mjs +0 -0
- package/dist/mediaTypes/html/renderer/style/LanguageHighlighter.cjs +1 -0
- package/dist/mediaTypes/html/renderer/style/LanguageHighlighter.d.ts +18 -0
- package/dist/mediaTypes/html/renderer/style/LanguageHighlighter.mjs +52 -0
- package/dist/mediaTypes/html/renderer/style/html-content.cjs +38 -7
- package/dist/mediaTypes/html/renderer/style/html-content.mjs +1 -1
- package/dist/mediaTypes/pdf/ensurePdfWebWorker.cjs +1 -1
- package/dist/mediaTypes/pdf/ensurePdfWebWorker.mjs +6 -13
- package/dist/mediaTypes/pdf/fileParser/PdfFileParser.cjs +1 -1
- package/dist/mediaTypes/pdf/fileParser/PdfFileParser.d.ts +5 -4
- package/dist/mediaTypes/pdf/fileParser/PdfFileParser.mjs +7 -3
- package/dist/mediaTypes/pdf/fileParser/PdfPasswordProvider.cjs +1 -1
- package/dist/mediaTypes/pdf/fileParser/PdfPasswordProvider.d.ts +4 -4
- package/dist/mediaTypes/pdf/fileParser/PdfPasswordProvider.mjs +24 -14
- package/dist/mediaTypes/pdf/highlighter/PdfHighlightConstants.cjs +1 -0
- package/dist/mediaTypes/pdf/highlighter/PdfHighlightConstants.d.ts +6 -0
- package/dist/mediaTypes/pdf/highlighter/PdfHighlightConstants.mjs +4 -0
- package/dist/mediaTypes/pdf/highlighter/pdfHighlightStyles.cjs +1 -0
- package/dist/mediaTypes/pdf/highlighter/pdfHighlightStyles.d.ts +10 -0
- package/dist/mediaTypes/pdf/highlighter/pdfHighlightStyles.mjs +33 -0
- package/dist/mediaTypes/pdf/loadPdfDocument.cjs +1 -1
- package/dist/mediaTypes/pdf/loadPdfDocument.mjs +18 -19
- package/dist/mediaTypes/pdf/renderer/IPdfRenderer.d.ts +2 -0
- package/dist/mediaTypes/pdf/renderer/MultiPdfViewer.mjs +1 -1
- package/dist/mediaTypes/pdf/renderer/PdfCoreNavigator.cjs +1 -1
- package/dist/mediaTypes/pdf/renderer/PdfCoreNavigator.mjs +2 -2
- package/dist/mediaTypes/pdf/renderer/PdfCssVariableNames.cjs +1 -1
- package/dist/mediaTypes/pdf/renderer/PdfCssVariableNames.d.ts +0 -1
- package/dist/mediaTypes/pdf/renderer/PdfCssVariableNames.mjs +0 -3
- package/dist/mediaTypes/pdf/renderer/PdfDocument.cjs +1 -1
- package/dist/mediaTypes/pdf/renderer/PdfDocument.mjs +3 -3
- package/dist/mediaTypes/pdf/renderer/PdfNavPointNavigator.cjs +1 -1
- package/dist/mediaTypes/pdf/renderer/PdfNavPointNavigator.mjs +3 -3
- package/dist/mediaTypes/pdf/renderer/PdfPagingNavigator.cjs +1 -1
- package/dist/mediaTypes/pdf/renderer/PdfPagingNavigator.d.ts +3 -3
- package/dist/mediaTypes/pdf/renderer/PdfPagingNavigator.mjs +20 -19
- package/dist/mediaTypes/pdf/renderer/PdfRenderer.cjs +1 -1
- package/dist/mediaTypes/pdf/renderer/PdfRenderer.d.ts +1 -0
- package/dist/mediaTypes/pdf/renderer/PdfRenderer.mjs +20 -20
- package/dist/mediaTypes/pdf/renderer/PdfSvgBuilder.cjs +1 -1
- package/dist/mediaTypes/pdf/renderer/PdfSvgBuilder.mjs +51 -50
- package/dist/mediaTypes/pdf/renderer/documents/PdfDocumentsProvider.cjs +2 -2
- package/dist/mediaTypes/pdf/renderer/documents/PdfDocumentsProvider.mjs +55 -56
- package/dist/mediaTypes/pdf/renderer/documents/resolvePdfLocationPageNumber.cjs +1 -0
- package/dist/mediaTypes/pdf/renderer/documents/resolvePdfLocationPageNumber.d.ts +3 -0
- package/dist/mediaTypes/pdf/renderer/documents/resolvePdfLocationPageNumber.mjs +12 -0
- package/dist/mediaTypes/pdf/renderer/input/PdfViewerEvents.cjs +1 -1
- package/dist/mediaTypes/pdf/renderer/input/PdfViewerEvents.d.ts +4 -0
- package/dist/mediaTypes/pdf/renderer/input/PdfViewerEvents.mjs +24 -5
- package/dist/mediaTypes/pdf/renderer/layout/PdfRendererViewport.cjs +1 -1
- package/dist/mediaTypes/pdf/renderer/layout/PdfRendererViewport.mjs +32 -32
- package/dist/mediaTypes/pdf/renderer/progress/PdfProgressTracker.cjs +1 -1
- package/dist/mediaTypes/pdf/renderer/progress/PdfProgressTracker.mjs +1 -1
- package/dist/mediaTypes/pdf/renderer/style/PdfThemeApplier.cjs +4 -4
- package/dist/mediaTypes/pdf/renderer/style/PdfThemeApplier.mjs +5 -5
- package/dist/mediaTypes/pdf/shared/geometry/index.cjs +1 -1
- package/dist/mediaTypes/pdf/shared/geometry/index.mjs +2 -2
- package/dist/mediaTypes/pdf/shared/geometry/selectionToFixedContentRange.cjs +1 -1
- package/dist/mediaTypes/pdf/shared/geometry/selectionToFixedContentRange.d.ts +14 -4
- package/dist/mediaTypes/pdf/shared/geometry/selectionToFixedContentRange.mjs +56 -24
- package/dist/mediaTypes/pdf/shared/text/pageText.cjs +2 -2
- package/dist/mediaTypes/pdf/shared/text/pageText.d.ts +14 -0
- package/dist/mediaTypes/pdf/shared/text/pageText.mjs +139 -47
- package/dist/node_modules/highlight.js/styles/github-dark.cjs +118 -0
- package/dist/node_modules/highlight.js/styles/github-dark.mjs +4 -0
- package/dist/node_modules/highlight.js/styles/github.cjs +118 -0
- package/dist/node_modules/highlight.js/styles/github.mjs +4 -0
- package/dist/pdfjs/package.json +1 -0
- package/global.d.ts +3 -1
- package/package.json +11 -5
- package/types.d.ts +48 -13
- package/dist/kernal/device/IEnvironment.d.ts +0 -5
- package/dist/kernal/device/IPlatform.d.ts +0 -7
- package/dist/kernal/device/WebEnvironment.cjs +0 -1
- package/dist/kernal/device/WebEnvironment.d.ts +0 -7
- package/dist/kernal/device/WebEnvironment.mjs +0 -22
- package/dist/kernal/device/WebPlatform.cjs +0 -1
- package/dist/kernal/device/WebPlatform.d.ts +0 -12
- package/dist/kernal/device/WebPlatform.mjs +0 -49
- package/dist/kernal/progress/IReadingProgressStore.d.ts +0 -7
- package/dist/kernal/progress/ReadingProgressStore.cjs +0 -1
- package/dist/kernal/progress/ReadingProgressStore.d.ts +0 -12
- package/dist/kernal/progress/ReadingProgressStore.mjs +0 -17
- package/dist/kernal/storage/IStorage.cjs +0 -1
- package/dist/kernal/storage/IStorage.d.ts +0 -21
- package/dist/kernal/storage/IStorage.mjs +0 -4
- package/dist/kernal/storage/WebStorage.cjs +0 -1
- package/dist/kernal/storage/WebStorage.d.ts +0 -31
- package/dist/kernal/storage/WebStorage.mjs +0 -165
- package/dist/mediaTypes/adjacent.cjs +0 -1
- package/dist/mediaTypes/adjacent.d.ts +0 -5
- package/dist/mediaTypes/adjacent.mjs +0 -42
- package/dist/mediaTypes/html/renderer/image/placeholder.cjs +0 -1
- package/dist/mediaTypes/html/renderer/image/placeholder.mjs +0 -4
- /package/dist/kernal/{device/IEnvironment.cjs → screen/IFullscreen.cjs} +0 -0
- /package/dist/kernal/{device/IEnvironment.mjs → screen/IFullscreen.mjs} +0 -0
- /package/dist/kernal/{Debounce.cjs → web/debounce.cjs} +0 -0
- /package/dist/kernal/{Debounce.d.ts → web/debounce.d.ts} +0 -0
- /package/dist/{kernal/device/IPlatform.cjs → mediaTypes/html/IHtmlSymbolMeasure.cjs} +0 -0
- /package/dist/{kernal/device/IPlatform.mjs → mediaTypes/html/IHtmlSymbolMeasure.mjs} +0 -0
- /package/dist/{kernal/progress/IReadingProgressStore.cjs → mediaTypes/html/renderer/layout/geometry/ILayoutGeometry.cjs} +0 -0
- /package/dist/{kernal/progress/IReadingProgressStore.mjs → mediaTypes/html/renderer/layout/geometry/ILayoutGeometry.mjs} +0 -0
|
@@ -5,41 +5,62 @@ import "../../../../kernal/Constants.mjs";
|
|
|
5
5
|
import { parseNumber as r } from "../../../../kernal/common/number.mjs";
|
|
6
6
|
import { compareTagName as i } from "../../../../kernal/html/finder.mjs";
|
|
7
7
|
import { emptyElement as a } from "../../../../kernal/html/dom.mjs";
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
16
|
-
import {
|
|
17
|
-
import {
|
|
8
|
+
import { yieldToMain as o } from "../../../../kernal/web/scheduler.mjs";
|
|
9
|
+
import { asyncDebounce as s } from "../../../../kernal/web/debounce.mjs";
|
|
10
|
+
import { getTransformLength as c, scrollElementIntoView as l } from "../../../../kernal/html/style.mjs";
|
|
11
|
+
import { createRange as u } from "../../../../kernal/html/selection.mjs";
|
|
12
|
+
import { getLocateClientRect as d, getLocateElement as f, isDomRange as p } from "../../../../kernal/html/geometry.mjs";
|
|
13
|
+
import { BaseDocumentsProvider as m } from "../../../base/renderer/BaseDocumentsProvider.mjs";
|
|
14
|
+
import { HtmlSettings as h } from "../../HtmlSettings.mjs";
|
|
15
|
+
import { getLayoutGeometry as g } from "../layout/resolveLayoutRoute.mjs";
|
|
16
|
+
import { beginAbsoluteLocate as _, shouldBeginAbsoluteLocate as v } from "../location/scrollActivity.mjs";
|
|
17
|
+
import { remapStoredPageNumber as y } from "../location/remapStoredPageNumber.mjs";
|
|
18
|
+
import { HtmlDocument as b } from "../document/HtmlDocument.mjs";
|
|
19
|
+
import { HtmlDocumentsPreloader as x } from "./HtmlDocumentsPreloader.mjs";
|
|
20
|
+
import { HtmlDocumentsIntersectionObserver as S } from "./HtmlDocumentsIntersectionObserver.mjs";
|
|
21
|
+
import { HtmlElementLocator as C } from "../location/HtmlElementLocator.mjs";
|
|
22
|
+
import { HtmlRendererViewport as w } from "../layout/HtmlRendererViewport.mjs";
|
|
23
|
+
import { getLayoutOffsetLeft as T } from "../layout/geometry/getLayoutOffsetLeft.mjs";
|
|
18
24
|
//#region mediaTypes/html/renderer/documents/HtmlDocumentsProvider.ts
|
|
19
|
-
var
|
|
25
|
+
var E = class extends m {
|
|
20
26
|
constructor(e, n, r, i) {
|
|
21
27
|
super(e, n), this.readerContainer = r, this.htmlOptions = i, this.isInit = !1, this.isFirstLoad = !0, this.hangTasks = [], this.resetTransformContainer = () => {
|
|
22
28
|
let e = this.getTransformContainer();
|
|
23
29
|
e && (e.style.removeProperty("transition"), e.style.transform = "translate3d(0px,0,0)", e.setAttribute("data-target-transform", "0"), e.offsetWidth);
|
|
24
30
|
}, this.removeElementTransitionEvent = async (e) => {
|
|
25
31
|
let t = e.target;
|
|
26
|
-
for (t.style.removeProperty("transition"), t.style.removeProperty("will-change"), t.removeAttribute(
|
|
32
|
+
for (t.style.removeProperty("transition"), t.style.removeProperty("will-change"), t.removeAttribute(h.PageMovingAttributeName), t.removeEventListener("transitionend", this.removeElementTransitionEvent); this.hangTasks.length > 0;) await this.hangTasks.shift()();
|
|
27
33
|
}, this.scrollWrapperIntoView = (e, t) => {
|
|
28
|
-
let n = e.getWrapperContainer();
|
|
29
|
-
if (
|
|
30
|
-
let
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
+
let n = e.getWrapperContainer(), r = g(this.htmlOptions);
|
|
35
|
+
if (r.flipMode == "page") {
|
|
36
|
+
let t = this.rendererViewport.getLayoutMetrics(), i = this.getTransformContainer();
|
|
37
|
+
if (r.pageAxis == "y") {
|
|
38
|
+
let e = Math.max(0, n.offsetTop);
|
|
39
|
+
i.style.transform = r.getPageTranslateCss(e), i.setAttribute("data-target-transform", `${e}`);
|
|
40
|
+
} else {
|
|
41
|
+
let n = this.getDocumentPageBox(e), a = r.getPageTransformOffset(n, 1, t.pageMoveLength);
|
|
42
|
+
i.style.transform = r.getPageTranslateCss(a), i.setAttribute("data-target-transform", `${a}`);
|
|
43
|
+
}
|
|
44
|
+
} else (!n.isVisible || t) && r.alignWrapperToViewport({
|
|
45
|
+
wrapper: n,
|
|
46
|
+
scrollElement: this.getScrollElement(),
|
|
47
|
+
rootDocument: this.owner.getRootContainer()?.ownerDocument
|
|
48
|
+
});
|
|
49
|
+
this.setCurrentVisibleDocument(e);
|
|
34
50
|
}, this.setDocumentVisible = (e, t) => {
|
|
35
51
|
e.isVisible = t;
|
|
36
52
|
}, this.reload = async () => {
|
|
37
53
|
let e = this.owner.context.currentLocation;
|
|
38
|
-
t(e?.url) ||
|
|
39
|
-
}, this.
|
|
54
|
+
t(e?.url) || await this.load(e, !0);
|
|
55
|
+
}, this.restoreReadingPosition = async () => {
|
|
56
|
+
let e = this.owner.context.currentLocation;
|
|
57
|
+
if (t(e?.url)) return;
|
|
58
|
+
let n = this.getDocument(e.url) ?? this.getFirstVisibleDocument();
|
|
59
|
+
n && await this.gotoDoc(n, e, !0);
|
|
60
|
+
}, this.delayRestoreReadingPosition = s(this.restoreReadingPosition, 100), this.delayReloadTime = 300, this.delayReload = s(this.reload, this.delayReloadTime), i.documentLanguage = e.context?.metadata?.language, this.logger = this.owner.loggerFactory.getLogger(this.constructor.name), this.elementLocator = new C(this), this.rendererViewport = new w(e, this.readerContainer, this.owner.optionsProvider, i), this.documentsIntersectionObserver = new S(this), this.documentPreloader = new x(this.owner.events, this, () => this.loadingDoc, i);
|
|
40
61
|
}
|
|
41
62
|
getTransformContainer() {
|
|
42
|
-
return this.getRendererContainer().querySelector("." +
|
|
63
|
+
return this.getRendererContainer().querySelector("." + h.TransformContainerCssName);
|
|
43
64
|
}
|
|
44
65
|
getRendererContainer() {
|
|
45
66
|
return this.rendererViewport.getRendererContainer();
|
|
@@ -50,26 +71,50 @@ var v = class extends f {
|
|
|
50
71
|
getLoadingDocument() {
|
|
51
72
|
return this.loadingDoc;
|
|
52
73
|
}
|
|
74
|
+
getLoadedDocuments() {
|
|
75
|
+
return this.getDocuments().filter((e) => e.getLoadStatus() == "success");
|
|
76
|
+
}
|
|
77
|
+
getVisibleDocuments() {
|
|
78
|
+
return this.getDocuments().filter((e) => e.getWrapperContainer()?.isVisible);
|
|
79
|
+
}
|
|
80
|
+
getFirstVisibleDocument(e) {
|
|
81
|
+
let t = this.getVisibleDocuments();
|
|
82
|
+
if (e) {
|
|
83
|
+
let e = t.find((e) => e.getVisibleElements(!0).length > 0);
|
|
84
|
+
if (e) return e;
|
|
85
|
+
}
|
|
86
|
+
if (t[0]) return t[0];
|
|
87
|
+
let n = this.owner.context.currentLocation?.url;
|
|
88
|
+
return n && this.getDocument(n) || this.getDocuments()[0] || null;
|
|
89
|
+
}
|
|
90
|
+
getLastVisibleDocument(e) {
|
|
91
|
+
let t = this.getVisibleDocuments();
|
|
92
|
+
if (e) {
|
|
93
|
+
let e = [...t].reverse().find((e) => e.getVisibleElements().length > 0);
|
|
94
|
+
if (e) return e;
|
|
95
|
+
}
|
|
96
|
+
if (t.length > 0) return t[t.length - 1];
|
|
97
|
+
let n = this.owner.context.currentLocation?.url, r = this.getDocuments();
|
|
98
|
+
return n && this.getDocument(n) || r[r.length - 1] || null;
|
|
99
|
+
}
|
|
53
100
|
async createDocument(e, t, n) {
|
|
54
|
-
return new
|
|
101
|
+
return new b(this.owner, this.rendererViewport, this.fileParser, e, t, this.htmlOptions);
|
|
55
102
|
}
|
|
56
103
|
async initialize(e) {
|
|
57
104
|
this.rendererViewport.applyCssVariables(), await super.initialize(e);
|
|
58
105
|
let t = this.getDocuments();
|
|
59
|
-
for (let e of t) e.getWrapperContainer().classList.add(
|
|
106
|
+
for (let e of t) e.getWrapperContainer().classList.add(h.FileContentContainerClassName, h.FileContentContainerHeightClassName);
|
|
60
107
|
}
|
|
61
108
|
async load(e, t) {
|
|
62
|
-
this.isInit ||= (await this.initialize(this.getTransformContainer()), this.documentsIntersectionObserver.register(), !0), e?.storeCurrent && await this.owner.onBeforeRedirect?.(this), t ??= !1;
|
|
109
|
+
this.htmlOptions.documentLanguage = this.owner.context?.metadata?.language, this.isInit ||= (await this.initialize(this.getTransformContainer()), this.documentsIntersectionObserver.register(), !0), e?.storeCurrent && await this.owner.onBeforeRedirect?.(this), t ??= !1;
|
|
63
110
|
let r = e?.url, i = this.getDocument(r);
|
|
64
111
|
if (!i) {
|
|
65
112
|
let t = this.getDocuments();
|
|
66
113
|
i = t[0], (t.length > 1 || !e) && (e = new n(i.url, 1, "ratio"), e.current = 0);
|
|
67
114
|
}
|
|
68
|
-
this.htmlOptions.flipMode == "page" ? this.appendPageStyles() : this.removePageStyles(), this.loadingDoc = i, this.owner.context.redirectingDocUrl = i.url;
|
|
115
|
+
g(this.htmlOptions).flipMode == "page" ? this.appendPageStyles() : this.removePageStyles(), this.loadingDoc = i, this.owner.context.redirectingDocUrl = i.url, v(e?.direction, g(this.htmlOptions).holdsAbsoluteLocate) && _();
|
|
69
116
|
try {
|
|
70
|
-
this.
|
|
71
|
-
await this.owner.loading?.hide();
|
|
72
|
-
}, 2e3), this.owner.context.setUserChangedProgress(!t, e?.from), await this.gotoDoc(i, e, t), this.isFirstLoad && !t && (this.isFirstLoad = !1), await this.documentPreloader.preloadDocuments();
|
|
117
|
+
this.owner.context.setUserChangedProgress(!t, e?.from), !t && e?.url && (this.owner.context.currentLocation = e), await this.gotoDoc(i, e, t), this.isFirstLoad && !t && (await this.owner.loading?.hide(), this.isFirstLoad = !1), await this.documentPreloader.preloadDocuments(), this.shouldRealignAfterPreload(e, t) && await this.gotoDoc(i, e, !0);
|
|
73
118
|
} finally {
|
|
74
119
|
setTimeout(() => {
|
|
75
120
|
this.loadingDoc = null, this.owner.context.redirectingDocUrl = void 0;
|
|
@@ -77,110 +122,191 @@ var v = class extends f {
|
|
|
77
122
|
}
|
|
78
123
|
}
|
|
79
124
|
async gotoDoc(e, n, r) {
|
|
80
|
-
if (!n
|
|
125
|
+
if (!n) return;
|
|
81
126
|
r ??= !1;
|
|
82
|
-
let
|
|
127
|
+
let i = g(this.htmlOptions).flipMode, a = e instanceof b ? e : null, s = !!a && i == "scroll" && !r && !n.suppressScroll && e.getLoadStatus() != "success";
|
|
128
|
+
s && a && (a.prepareCoveredLoad(), this.scrollWrapperIntoView(e, !0), await o());
|
|
83
129
|
try {
|
|
84
|
-
|
|
85
|
-
s = c?.
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
let e = s.textContent;
|
|
90
|
-
if (n?.textOffset < e.length && e.length < 3e3) {
|
|
91
|
-
u(s, "m");
|
|
92
|
-
let e = s.querySelectorAll("m");
|
|
93
|
-
o = i(s.firstElementChild?.tagName, "ST") && s.firstElementChild.getBoundingClientRect().width == 0 ? e.item(s.firstElementChild.textContent.length) : e.item(n.textOffset);
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
if (o ??= s, a == "scroll") await this.gotoScroll(e, n, o, d);
|
|
97
|
-
else {
|
|
98
|
-
if (r && o && !t(n.tagName)) this.resetTransformContainer(), l = await e.getPageNumber(o);
|
|
99
|
-
else if (n.unit === "page" && n.current != null && n.current > 0) {
|
|
100
|
-
l = n.current;
|
|
101
|
-
let t = await e.getNumberOfPages();
|
|
102
|
-
n.total > 1 && n.total != t && (l = Math.ceil(t * (n.current / n.total)));
|
|
103
|
-
} else l ||= await e.getPageNumber(o);
|
|
104
|
-
await this.transformPage(e, l, r ? void 0 : n.direction);
|
|
105
|
-
}
|
|
130
|
+
if (await e.load(), !e.getContentContainer()) return;
|
|
131
|
+
let a = await this.findTarget(e, n), o = a?.target, s = a?.pageNumber, c = a?.isDocumentStart;
|
|
132
|
+
if (!o && !s) return;
|
|
133
|
+
let l = this.resolveRedirectTarget(o, n);
|
|
134
|
+
i == "scroll" ? n.suppressScroll ? this.setDocumentVisible(e.getWrapperContainer(), !0) : l && await this.gotoScroll(e, n, l, c) : (r && l && !t(n.tagName) ? s = await e.getPageNumber(l) : n.unit === "page" && n.current != null && n.current > 0 ? s = y(n, await e.getNumberOfPages()) : (p(l) || !s && l) && (s = await e.getPageNumber(l)), await this.transformPage(e, s, r ? void 0 : n.direction));
|
|
106
135
|
} finally {
|
|
107
|
-
s &&
|
|
136
|
+
s && a && await a.revealCoveredLoad();
|
|
108
137
|
}
|
|
109
138
|
}
|
|
139
|
+
resolveRedirectTarget(e, t) {
|
|
140
|
+
if (!e || !(t?.textOffset >= 0)) return e;
|
|
141
|
+
let n = e.textContent ?? "";
|
|
142
|
+
if (t.textOffset >= n.length) return e;
|
|
143
|
+
let r = t.textOffset, a = e.firstElementChild;
|
|
144
|
+
return a && i(a.tagName, "ST") && a.getBoundingClientRect().width == 0 && (r = a.textContent?.length ?? 0), r >= n.length ? e : u(e, e, r, Math.min(r + 1, n.length)) ?? e;
|
|
145
|
+
}
|
|
110
146
|
async gotoScroll(t, n, r, i) {
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
147
|
+
if (g(this.htmlOptions).blockAxis == "x") {
|
|
148
|
+
await this.gotoScrollX(t, n, r, i);
|
|
149
|
+
return;
|
|
150
|
+
}
|
|
151
|
+
let a = f(r), o = d(r), s = 0;
|
|
152
|
+
n?.ignoreOverlayHeader || (s = this.owner.options.redirectPositionOffset, o.height == 0 && (!a || a.clientHeight == 0) && (s += 50)), n.offsetTop && (s += n.offsetTop);
|
|
153
|
+
let c = this.getScrollElement(), u = o.y, p = t.getContentContainer().ownerDocument.defaultView?.frameElement, m = p?.getBoundingClientRect()?.y ?? 0, h = u + m, _ = c.scrollTop;
|
|
114
154
|
if (n.useAbsoluteScrollTop) {
|
|
115
|
-
let e =
|
|
116
|
-
|
|
155
|
+
let e = _ + h - s;
|
|
156
|
+
c.scrollTo(0, e);
|
|
117
157
|
} else if (i) this.scrollWrapperIntoView(t, !0);
|
|
118
158
|
else {
|
|
119
159
|
if (e.isSafari()) {
|
|
120
|
-
|
|
121
|
-
let e =
|
|
122
|
-
if (Math.abs(e +
|
|
123
|
-
let e =
|
|
124
|
-
|
|
160
|
+
l(t.getWrapperContainer(), void 0, void 0, this.owner.getRootContainer()?.ownerDocument), _ = c.scrollTop;
|
|
161
|
+
let e = p?.offsetTop ?? 0;
|
|
162
|
+
if (Math.abs(e + u - _) > 5) {
|
|
163
|
+
let e = _ + t.getWrapperContainer().getBoundingClientRect().y + u;
|
|
164
|
+
c.scrollTo(0, e);
|
|
125
165
|
}
|
|
126
|
-
|
|
127
|
-
} else
|
|
128
|
-
|
|
166
|
+
m = p?.getBoundingClientRect()?.y ?? 0, h = u + m;
|
|
167
|
+
} else s = h - s - c.getBoundingClientRect().top;
|
|
168
|
+
s > 0 ? c.scrollHeight - c.scrollTop - c.clientHeight > 0 ? c.scrollBy(0, s) : a && l(a, void 0, n?.scrollIntoViewIfNeeded, this.owner.getRootContainer()?.ownerDocument) : c.scrollBy(0, s), this.setDocumentVisible(t.getWrapperContainer(), !0);
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
async gotoScrollX(e, t, n, r) {
|
|
172
|
+
let i = this.getScrollElement();
|
|
173
|
+
if (r) {
|
|
174
|
+
this.scrollWrapperIntoView(e, !0);
|
|
175
|
+
return;
|
|
129
176
|
}
|
|
177
|
+
let a = d(n), o = (e.getContentContainer().ownerDocument.defaultView?.frameElement)?.getBoundingClientRect()?.x ?? 0, s = i.getBoundingClientRect(), c = t.offsetLeft ?? 0, l = a.x + o - c, u = a.right + o - c, f = g(this.htmlOptions).getScrollLocateDelta({
|
|
178
|
+
targetStart: l,
|
|
179
|
+
viewportStart: s.left,
|
|
180
|
+
targetEnd: u,
|
|
181
|
+
viewportEnd: s.right
|
|
182
|
+
});
|
|
183
|
+
if (t.useAbsoluteScrollTop) {
|
|
184
|
+
i.scrollTo(i.scrollLeft + f, i.scrollTop), this.setDocumentVisible(e.getWrapperContainer(), !0);
|
|
185
|
+
return;
|
|
186
|
+
}
|
|
187
|
+
i.scrollBy(f, 0), this.setDocumentVisible(e.getWrapperContainer(), !0);
|
|
130
188
|
}
|
|
131
189
|
async findTarget(e, t) {
|
|
132
190
|
return this.elementLocator.locateElement(e, t, this.htmlOptions);
|
|
133
191
|
}
|
|
134
192
|
async transformPage(e, t, n) {
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
193
|
+
if (this.setCurrentVisibleDocument(e), g(this.htmlOptions).pageAxis == "y") {
|
|
194
|
+
this.transformVerticalPage(e, t, n);
|
|
195
|
+
return;
|
|
196
|
+
}
|
|
197
|
+
this.transformHorizontalPage(e, t, n);
|
|
198
|
+
}
|
|
199
|
+
transformHorizontalPage(e, t, n) {
|
|
200
|
+
let r = this.resolveRelativePageTransform(e, t, n, "x");
|
|
201
|
+
if (!r) {
|
|
202
|
+
this.syncPageNumberWhenTransformBlocked(e, n);
|
|
203
|
+
return;
|
|
204
|
+
}
|
|
205
|
+
this.applyPageTransform(r.transformContainer, r.newTransformLength, n, "x"), this.setCurrentPageNumber(e, t);
|
|
206
|
+
}
|
|
207
|
+
transformVerticalPage(e, t, n) {
|
|
208
|
+
let r = this.resolveRelativePageTransform(e, t, n, "y");
|
|
209
|
+
if (!r) {
|
|
210
|
+
this.syncPageNumberWhenTransformBlocked(e, n);
|
|
211
|
+
return;
|
|
212
|
+
}
|
|
213
|
+
this.applyPageTransform(r.transformContainer, r.newTransformLength, n, "y"), this.setCurrentPageNumber(e, t);
|
|
214
|
+
}
|
|
215
|
+
resolveRelativePageTransform(e, t, n, i) {
|
|
216
|
+
let a = this.getTransformContainer();
|
|
217
|
+
if (!a) return null;
|
|
218
|
+
let o = c(a, i), s = a.getAttribute("data-target-transform"), l = 0;
|
|
219
|
+
l = s ? r(s, 0, "parseFloat") : o;
|
|
220
|
+
let u = this.rendererViewport.getLayoutMetrics(), d = Math.max(1, u.pageMoveLength);
|
|
221
|
+
if (n == "previous") return {
|
|
222
|
+
transformContainer: a,
|
|
223
|
+
newTransformLength: Math.max(0, l - d)
|
|
224
|
+
};
|
|
225
|
+
if (n == "next") {
|
|
226
|
+
let e = l + d;
|
|
227
|
+
return this.wouldExceedLastContent(e, i, a) ? null : {
|
|
228
|
+
transformContainer: a,
|
|
229
|
+
newTransformLength: e
|
|
230
|
+
};
|
|
231
|
+
}
|
|
232
|
+
let f = this.getDocumentPageStartOffset(e, i), p = f + (t - 1) * u.pageMoveLength, m = i == "y" ? e.getWrapperContainer()?.scrollHeight ?? 0 : this.getDocumentPageBox(e).contentWidth, h = i == "y" ? u.pageHeight : u.pageWidth, g = Number.isFinite(h) && h > 0 ? h : u.pageMoveLength, _ = Math.max(0, f + m - g);
|
|
233
|
+
return p > _ && (p = _), p < 0 && (p = 0), {
|
|
234
|
+
transformContainer: a,
|
|
235
|
+
newTransformLength: p
|
|
236
|
+
};
|
|
237
|
+
}
|
|
238
|
+
canAdvancePageTransform(e) {
|
|
239
|
+
let t = g(this.htmlOptions), n = this.getCurrentPageNumber(e) + 1;
|
|
240
|
+
return this.resolveRelativePageTransform(e, n, "next", t.pageAxis) != null;
|
|
241
|
+
}
|
|
242
|
+
wouldExceedLastContent(e, t, n) {
|
|
243
|
+
return this.getLastContentExtent(t, n) - e <= 0;
|
|
244
|
+
}
|
|
245
|
+
getLastContentExtent(e, t) {
|
|
246
|
+
let n = this.getDocuments(), r = n[n.length - 1]?.getWrapperContainer();
|
|
247
|
+
return r ? g(this.htmlOptions).getLastContentExtent(r, t) : 0;
|
|
248
|
+
}
|
|
249
|
+
syncPageNumberWhenTransformBlocked(e, t) {
|
|
250
|
+
if (t != "next") return;
|
|
251
|
+
let n = e.getContentContainer()?.ownerDocument?.documentElement, i = r(n?.getAttribute(h.HtmlDocumentNumperOfPagesPropertyName), this.getCurrentPageNumber(e), "parseInt");
|
|
252
|
+
this.setCurrentPageNumber(e, i);
|
|
253
|
+
}
|
|
254
|
+
getDocumentPageStartOffset(e, t) {
|
|
255
|
+
let n = e.getWrapperContainer(), r = this.getDocumentPageBox(e);
|
|
256
|
+
return g(this.htmlOptions).getDocumentPageStartOffset(n, r);
|
|
257
|
+
}
|
|
258
|
+
getDocumentPageBox(e) {
|
|
259
|
+
let t = e.getWrapperContainer(), n = (e.getContentContainer()?.ownerDocument?.documentElement)?.ownerDocument?.defaultView?.frameElement, r = n?.offsetWidth || (t?.clientWidth ?? 0), i = this.getTransformContainer(), a = n && i ? T(n, i) : t?.offsetLeft ?? 0, o = i?.offsetWidth ?? 0;
|
|
260
|
+
return {
|
|
261
|
+
offsetLeft: a,
|
|
262
|
+
contentWidth: r,
|
|
263
|
+
startOffset: g(this.htmlOptions).getPageStartOffset({
|
|
264
|
+
offsetLeft: a,
|
|
265
|
+
contentWidth: r,
|
|
266
|
+
containerWidth: o
|
|
267
|
+
}),
|
|
268
|
+
containerWidth: o
|
|
269
|
+
};
|
|
270
|
+
}
|
|
271
|
+
applyPageTransform(e, t, n, r = "x") {
|
|
272
|
+
let i = g(this.htmlOptions), a = parseFloat(t.toFixed(10)), o = i.getPageTranslateCss(a), s = i.getSignedTranslateLength(a), l = c(e, r, !0);
|
|
273
|
+
e.setAttribute("data-target-transform", `${a}`), !(n && Math.abs(s - l) <= .5) && (!e.style.transition && this.htmlOptions.flipPageStyle == "slide" && (n == "next" || n == "previous") && (e.style.transition = "transform 0.2s ease"), e.style.transition && e.addEventListener("transitionend", this.removeElementTransitionEvent), e.style.transform = o);
|
|
159
274
|
}
|
|
160
275
|
setCurrentPageNumber(e, t) {
|
|
161
276
|
let n = e.getContentContainer()?.ownerDocument?.documentElement;
|
|
162
|
-
n && n.setAttribute(
|
|
277
|
+
n && n.setAttribute(h.HtmlDocumentCurrentPagePropertyName, t.toFixed(0));
|
|
163
278
|
}
|
|
164
279
|
getCurrentPageNumber(e) {
|
|
165
280
|
let t = e.getContentContainer()?.ownerDocument?.documentElement;
|
|
166
281
|
if (!t) return 1;
|
|
167
|
-
let n = t.getAttribute(
|
|
282
|
+
let n = t.getAttribute(h.HtmlDocumentCurrentPagePropertyName);
|
|
168
283
|
return r(n, 1, "parseInt");
|
|
169
284
|
}
|
|
170
|
-
|
|
171
|
-
|
|
285
|
+
async syncPageState(e) {
|
|
286
|
+
(e.getContentContainer()?.ownerDocument?.documentElement)?.removeAttribute(h.HtmlDocumentNumperOfPagesPropertyName);
|
|
287
|
+
let t = Math.max(1, await e.getNumberOfPages()), n = g(this.htmlOptions), i = this.rendererViewport.getLayoutMetrics(), a = Math.max(1, i.pageMoveLength), o = this.getTransformContainer(), s = r(o?.getAttribute("data-target-transform"), 0, "parseFloat"), c = this.getDocumentPageStartOffset(e, n.pageAxis), l = Math.min(t, Math.max(1, Math.round(Math.abs(s - c) / a) + 1));
|
|
288
|
+
return this.setCurrentPageNumber(e, l), {
|
|
289
|
+
current: l,
|
|
290
|
+
total: t
|
|
291
|
+
};
|
|
172
292
|
}
|
|
173
|
-
|
|
174
|
-
this.
|
|
293
|
+
setCurrentVisibleDocument(e) {
|
|
294
|
+
for (let t of this.getDocuments()) this.setDocumentVisible(t.getWrapperContainer(), t === e);
|
|
175
295
|
}
|
|
176
|
-
|
|
177
|
-
this.
|
|
296
|
+
shouldRealignAfterPreload(e, t) {
|
|
297
|
+
return t || e?.direction == "next" || e?.direction == "previous" ? !1 : g(this.htmlOptions).flipMode == "page";
|
|
298
|
+
}
|
|
299
|
+
appendPageStyles() {}
|
|
300
|
+
clearPageTransform() {
|
|
178
301
|
let e = this.getTransformContainer();
|
|
179
|
-
e && e.style.removeProperty("transform");
|
|
302
|
+
e && (e.style.removeProperty("transition"), e.style.removeProperty("transform"), e.removeAttribute("data-target-transform"), e.offsetWidth);
|
|
303
|
+
}
|
|
304
|
+
removePageStyles() {
|
|
305
|
+
this.getRendererContainer().classList.remove(h.TransformPagesClassName), this.clearPageTransform();
|
|
180
306
|
}
|
|
181
307
|
async dispose() {
|
|
182
|
-
|
|
308
|
+
await this.documentsIntersectionObserver.dispose(), await this.documentPreloader.dispose(), await super.dispose(), this.readerContainer && a(this.readerContainer), this.isInit = !1;
|
|
183
309
|
}
|
|
184
310
|
};
|
|
185
311
|
//#endregion
|
|
186
|
-
export {
|
|
312
|
+
export { E as HtmlDocumentsProvider };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../../../kernal/EventNames.cjs"),t=require("../../HtmlSettings.cjs");let
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../../../kernal/EventNames.cjs"),t=require("../../../../kernal/web/scheduler.cjs"),n=require("../../HtmlSettings.cjs"),r=require("./documentHiddenState.cjs"),i=require("../layout/pageStripRouteChange.cjs");let a=require("perfect-debounce");var o=class{constructor(o,s,c,l){this.documentsProvider=o,this.rendererViewport=s,this.progressTracker=c,this.rendererLayout=l,this.visualViewport=null,this.onVisualViewportResize=()=>{let e=this.documentsProvider.owner;if(e.getHostViewport().mode!=`window`)return;let t=e.refreshHostViewport(),n=e.getReaderContainer();n&&(n.style.minHeight=t.height+`px`),this.delayResizeRendererContainer()},this.resizeRendererContainer=async()=>{if(!this.context)return;let a=this.documentsProvider.owner.getHostViewport().mode!=`window`;if(r.isCollapsedSize(this.rendererContainer.clientWidth,this.rendererContainer.clientHeight,a)){r.markDocumentHidden(this.rendererContainer);return}if(!r.consumeDocumentHiddenRestore(this.rendererContainer)&&!i.shouldIgnoreResizeAfterRouteChange(this.rendererContainer)){this.rendererViewport.applyCssVariables(),await this.rendererLayout.applyStyles(),await t.yieldToMain();for(let e of this.documentsProvider.getLoadedDocuments())e.getContentContainer()?.ownerDocument?.documentElement?.removeAttribute(n.HtmlSettings.HtmlDocumentNumperOfPagesPropertyName);await this.documentsProvider.reload(),this.events.emit(e.EventNames.RendererContainerSizeChange,this.rendererContainer,this.context.userChangedProgress)}},this.delayResizeRendererContainer=(0,a.debounce)(this.resizeRendererContainer,100),this.rendererContainer=this.documentsProvider.getRendererContainer(),this.context=this.documentsProvider.owner.context,this.events=this.documentsProvider.owner.events}register(){this.rendererContainerResizeObserver=new ResizeObserver(async e=>{let t=e[0],n=t.target,a=parseFloat(n.getAttribute(`data-client-width`)),o=parseFloat(n.getAttribute(`data-client-height`)),s=t.contentRect?.width??t.borderBoxSize[0].inlineSize??0,c=t.contentRect?.height??t.borderBoxSize[0].blockSize??0,l=this.documentsProvider.owner.getHostViewport(),u=l.mode!=`window`;if(r.isCollapsedSize(s,c,u)){r.markDocumentHidden(this.rendererContainer);return}if(!r.consumeDocumentHiddenRestore(this.rendererContainer)){if(l.mode==`window`){if(a==s){this.rendererContainer.setAttribute(`data-client-height`,`${c}`);return}}else if(a==s&&o==c)return;if(this.rendererContainer.setAttribute(`data-client-width`,`${s}`),this.rendererContainer.setAttribute(`data-client-height`,`${c}`),!i.shouldIgnoreResizeAfterRouteChange(this.rendererContainer)){if(!this.context?.currentLocation?.precise){let e=await this.progressTracker.getProgress(!0);e&&(this.context.currentLocation=e.location)}this.context.setUserChangedProgress(!1),await this.delayResizeRendererContainer()}}}),this.rendererContainerResizeObserver.observe(this.rendererContainer);let e=this.rendererContainer.ownerDocument.defaultView;this.visualViewport=e?.visualViewport??null,this.visualViewport?.addEventListener(`resize`,this.onVisualViewportResize)}async dispose(){this.visualViewport?.removeEventListener(`resize`,this.onVisualViewportResize),this.visualViewport=null,this.rendererContainerResizeObserver?.disconnect()}};exports.HtmlDocumentsResizeObserver=o;
|
|
@@ -13,8 +13,10 @@ export declare class HtmlDocumentsResizeObserver implements IDisposable {
|
|
|
13
13
|
private readonly rendererContainer;
|
|
14
14
|
private readonly context;
|
|
15
15
|
private readonly events;
|
|
16
|
+
private visualViewport;
|
|
16
17
|
constructor(documentsProvider: IDocumentsProvider, rendererViewport: IRendererViewport<HtmlLayoutMetrics>, progressTracker: IProgressTracker, rendererLayout: IHtmlRendererLayout);
|
|
17
18
|
register(): void;
|
|
19
|
+
private onVisualViewportResize;
|
|
18
20
|
protected resizeRendererContainer: () => Promise<void>;
|
|
19
21
|
protected delayResizeRendererContainer: DebouncedReturn<[], void>;
|
|
20
22
|
dispose(): Promise<void>;
|
|
@@ -1,40 +1,60 @@
|
|
|
1
1
|
import { EventNames as e } from "../../../../kernal/EventNames.mjs";
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
2
|
+
import { yieldToMain as t } from "../../../../kernal/web/scheduler.mjs";
|
|
3
|
+
import { asyncDebounce as n } from "../../../../kernal/web/debounce.mjs";
|
|
4
|
+
import { HtmlSettings as r } from "../../HtmlSettings.mjs";
|
|
5
|
+
import { consumeDocumentHiddenRestore as i, isCollapsedSize as a, markDocumentHidden as o } from "./documentHiddenState.mjs";
|
|
6
|
+
import { shouldIgnoreResizeAfterRouteChange as s } from "../layout/pageStripRouteChange.mjs";
|
|
4
7
|
//#region mediaTypes/html/renderer/documents/HtmlDocumentsResizeObserver.ts
|
|
5
|
-
var
|
|
6
|
-
constructor(
|
|
7
|
-
this.documentsProvider =
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
8
|
+
var c = class {
|
|
9
|
+
constructor(c, l, u, d) {
|
|
10
|
+
this.documentsProvider = c, this.rendererViewport = l, this.progressTracker = u, this.rendererLayout = d, this.visualViewport = null, this.onVisualViewportResize = () => {
|
|
11
|
+
let e = this.documentsProvider.owner;
|
|
12
|
+
if (e.getHostViewport().mode != "window") return;
|
|
13
|
+
let t = e.refreshHostViewport(), n = e.getReaderContainer();
|
|
14
|
+
n && (n.style.minHeight = t.height + "px"), this.delayResizeRendererContainer();
|
|
15
|
+
}, this.resizeRendererContainer = async () => {
|
|
16
|
+
if (!this.context) return;
|
|
17
|
+
let n = this.documentsProvider.owner.getHostViewport().mode != "window";
|
|
18
|
+
if (a(this.rendererContainer.clientWidth, this.rendererContainer.clientHeight, n)) {
|
|
19
|
+
o(this.rendererContainer);
|
|
20
|
+
return;
|
|
21
|
+
}
|
|
22
|
+
if (!i(this.rendererContainer) && !s(this.rendererContainer)) {
|
|
23
|
+
this.rendererViewport.applyCssVariables(), await this.rendererLayout.applyStyles(), await t();
|
|
24
|
+
for (let e of this.documentsProvider.getLoadedDocuments()) e.getContentContainer()?.ownerDocument?.documentElement?.removeAttribute(r.HtmlDocumentNumperOfPagesPropertyName);
|
|
19
25
|
await this.documentsProvider.reload(), this.events.emit(e.RendererContainerSizeChange, this.rendererContainer, this.context.userChangedProgress);
|
|
20
26
|
}
|
|
21
|
-
}, this.delayResizeRendererContainer =
|
|
27
|
+
}, this.delayResizeRendererContainer = n(this.resizeRendererContainer, 100), this.rendererContainer = this.documentsProvider.getRendererContainer(), this.context = this.documentsProvider.owner.context, this.events = this.documentsProvider.owner.events;
|
|
22
28
|
}
|
|
23
29
|
register() {
|
|
24
30
|
this.rendererContainerResizeObserver = new ResizeObserver(async (e) => {
|
|
25
|
-
let t = e[0], n = t.target, r = parseFloat(n.getAttribute("data-client-width")),
|
|
26
|
-
if (
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
31
|
+
let t = e[0], n = t.target, r = parseFloat(n.getAttribute("data-client-width")), c = parseFloat(n.getAttribute("data-client-height")), l = t.contentRect?.width ?? t.borderBoxSize[0].inlineSize ?? 0, u = t.contentRect?.height ?? t.borderBoxSize[0].blockSize ?? 0, d = this.documentsProvider.owner.getHostViewport(), f = d.mode != "window";
|
|
32
|
+
if (a(l, u, f)) {
|
|
33
|
+
o(this.rendererContainer);
|
|
34
|
+
return;
|
|
35
|
+
}
|
|
36
|
+
if (!i(this.rendererContainer)) {
|
|
37
|
+
if (d.mode == "window") {
|
|
38
|
+
if (r == l) {
|
|
39
|
+
this.rendererContainer.setAttribute("data-client-height", `${u}`);
|
|
40
|
+
return;
|
|
41
|
+
}
|
|
42
|
+
} else if (r == l && c == u) return;
|
|
43
|
+
if (this.rendererContainer.setAttribute("data-client-width", `${l}`), this.rendererContainer.setAttribute("data-client-height", `${u}`), !s(this.rendererContainer)) {
|
|
44
|
+
if (!this.context?.currentLocation?.precise) {
|
|
45
|
+
let e = await this.progressTracker.getProgress(!0);
|
|
46
|
+
e && (this.context.currentLocation = e.location);
|
|
47
|
+
}
|
|
48
|
+
this.context.setUserChangedProgress(!1), await this.delayResizeRendererContainer();
|
|
30
49
|
}
|
|
31
|
-
this.context.setUserChangedProgress(!1), await this.delayResizeRendererContainer();
|
|
32
50
|
}
|
|
33
51
|
}), this.rendererContainerResizeObserver.observe(this.rendererContainer);
|
|
52
|
+
let e = this.rendererContainer.ownerDocument.defaultView;
|
|
53
|
+
this.visualViewport = e?.visualViewport ?? null, this.visualViewport?.addEventListener("resize", this.onVisualViewportResize);
|
|
34
54
|
}
|
|
35
55
|
async dispose() {
|
|
36
|
-
this.rendererContainerResizeObserver?.disconnect();
|
|
56
|
+
this.visualViewport?.removeEventListener("resize", this.onVisualViewportResize), this.visualViewport = null, this.rendererContainerResizeObserver?.disconnect();
|
|
37
57
|
}
|
|
38
58
|
};
|
|
39
59
|
//#endregion
|
|
40
|
-
export {
|
|
60
|
+
export { c as HtmlDocumentsResizeObserver };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});var e=`foxycape_document_hidden`,t=`foxycape_document_require_resize`,n=(e,t,n)=>e==0||n&&t==0,r=(e,t)=>e?n(e.clientWidth,e.clientHeight,t):!1,i=n=>{n.foxycape_document_hidden&&(n[t]=`true`),n[e]=`true`},a=n=>n.foxycape_document_hidden?(n[e]=void 0,!n.foxycape_document_require_resize||(n[t]=void 0,!1)):!1;exports.DOCUMENT_HIDDEN_FLAG=e,exports.DOCUMENT_REQUIRE_RESIZE_FLAG=t,exports.consumeDocumentHiddenRestore=a,exports.isCollapsedSize=n,exports.isHostContainerCollapsed=r,exports.markDocumentHidden=i;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export declare const DOCUMENT_HIDDEN_FLAG = "foxycape_document_hidden";
|
|
2
|
+
export declare const DOCUMENT_REQUIRE_RESIZE_FLAG = "foxycape_document_require_resize";
|
|
3
|
+
export declare const isCollapsedSize: (width: number, height: number, treatZeroHeight: boolean) => boolean;
|
|
4
|
+
export declare const isHostContainerCollapsed: (container: HTMLElement | null | undefined, treatZeroHeight: boolean) => boolean;
|
|
5
|
+
export declare const markDocumentHidden: (container: HTMLElement) => void;
|
|
6
|
+
export declare const consumeDocumentHiddenRestore: (container: HTMLElement) => boolean;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
//#region mediaTypes/html/renderer/documents/documentHiddenState.ts
|
|
2
|
+
var e = "foxycape_document_hidden", t = "foxycape_document_require_resize", n = (e, t, n) => e == 0 || n && t == 0, r = (e, t) => e ? n(e.clientWidth, e.clientHeight, t) : !1, i = (n) => {
|
|
3
|
+
n.foxycape_document_hidden && (n[t] = "true"), n[e] = "true";
|
|
4
|
+
}, a = (n) => n.foxycape_document_hidden ? (n[e] = void 0, !n.foxycape_document_require_resize || (n[t] = void 0, !1)) : !1;
|
|
5
|
+
//#endregion
|
|
6
|
+
export { e as DOCUMENT_HIDDEN_FLAG, t as DOCUMENT_REQUIRE_RESIZE_FLAG, a as consumeDocumentHiddenRestore, n as isCollapsedSize, r as isHostContainerCollapsed, i as markDocumentHidden };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});var e=e=>!Number.isFinite(e)||e<1?1:Math.min(10,e),t=(t,n,r,i,a)=>{let o=e(i),s=[],c=[];for(let e=1;e<=o;e++){let i=n-e;i>=0&&s.push(t[i]);let a=r+e;a>=0&&a<t.length&&c.push(t[a])}return a?[...s,...c]:[...c,...s]};exports.clampPreloadFileCount=e,exports.collectPreloadNeighbors=t;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
//#region mediaTypes/html/renderer/documents/preloadNeighbors.ts
|
|
2
|
+
var e = (e) => !Number.isFinite(e) || e < 1 ? 1 : Math.min(10, e), t = (t, n, r, i, a) => {
|
|
3
|
+
let o = e(i), s = [], c = [];
|
|
4
|
+
for (let e = 1; e <= o; e++) {
|
|
5
|
+
let i = n - e;
|
|
6
|
+
i >= 0 && s.push(t[i]);
|
|
7
|
+
let a = r + e;
|
|
8
|
+
a >= 0 && a < t.length && c.push(t[a]);
|
|
9
|
+
}
|
|
10
|
+
return a ? [...s, ...c] : [...c, ...s];
|
|
11
|
+
};
|
|
12
|
+
//#endregion
|
|
13
|
+
export { e as clampPreloadFileCount, t as collectPreloadNeighbors };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});var e=2,t=(e,t)=>e.right>t.left&&e.left<t.right&&e.bottom>t.top&&e.top<t.bottom,n=e=>{if(!e)return!1;let t=e.width??Math.abs(e.right-e.left),n=e.height??Math.abs(e.bottom-e.top);return t>2&&n>2};exports.SUBSTANTIAL_WRAPPER_PX=e,exports.isSubstantialWrapperRect=n,exports.rectsIntersect=t;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export declare const SUBSTANTIAL_WRAPPER_PX = 2;
|
|
2
|
+
export type EdgeRect = {
|
|
3
|
+
left: number;
|
|
4
|
+
top: number;
|
|
5
|
+
right: number;
|
|
6
|
+
bottom: number;
|
|
7
|
+
width?: number;
|
|
8
|
+
height?: number;
|
|
9
|
+
};
|
|
10
|
+
export declare const rectsIntersect: (a: EdgeRect, b: EdgeRect) => boolean;
|
|
11
|
+
export declare const isSubstantialWrapperRect: (rect?: EdgeRect | null) => boolean;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
//#region mediaTypes/html/renderer/documents/wrapperVisibility.ts
|
|
2
|
+
var e = 2, t = (e, t) => e.right > t.left && e.left < t.right && e.bottom > t.top && e.top < t.bottom, n = (e) => {
|
|
3
|
+
if (!e) return !1;
|
|
4
|
+
let t = e.width ?? Math.abs(e.right - e.left), n = e.height ?? Math.abs(e.bottom - e.top);
|
|
5
|
+
return t > 2 && n > 2;
|
|
6
|
+
};
|
|
7
|
+
//#endregion
|
|
8
|
+
export { e as SUBSTANTIAL_WRAPPER_PX, n as isSubstantialWrapperRect, t as rectsIntersect };
|