@foxycape/core 1.1.3 → 1.1.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/_virtual/_rolldown/runtime.cjs +1 -0
- package/dist/core.css +2 -1
- package/dist/kernal/Constants.cjs +1 -1
- package/dist/kernal/Constants.mjs +4 -12
- package/dist/kernal/ContentRange.cjs +1 -1
- package/dist/kernal/ContentRange.mjs +4 -6
- package/dist/kernal/Context.cjs +1 -1
- package/dist/kernal/Context.mjs +31 -35
- package/dist/kernal/Debounce.cjs +1 -1
- package/dist/kernal/Debounce.mjs +31 -37
- package/dist/kernal/EventEmitter.cjs +1 -1
- package/dist/kernal/EventEmitter.mjs +58 -67
- package/dist/kernal/EventNames.cjs +1 -1
- package/dist/kernal/EventNames.mjs +178 -6
- package/dist/kernal/FileLoader.cjs +1 -1
- package/dist/kernal/FileLoader.d.ts +2 -0
- package/dist/kernal/FileLoader.mjs +91 -94
- package/dist/kernal/IDisposable.cjs +0 -1
- package/dist/kernal/IDisposable.mjs +0 -1
- package/dist/kernal/IDocument.cjs +1 -1
- package/dist/kernal/IDocument.mjs +12 -36
- package/dist/kernal/IDocumentsProvider.cjs +0 -1
- package/dist/kernal/IDocumentsProvider.mjs +0 -1
- package/dist/kernal/IEventEmitter.cjs +0 -1
- package/dist/kernal/IEventEmitter.mjs +0 -1
- package/dist/kernal/IFileParser.cjs +1 -1
- package/dist/kernal/IFileParser.mjs +12 -21
- package/dist/kernal/IRenderer.cjs +0 -1
- package/dist/kernal/IRenderer.mjs +0 -1
- package/dist/kernal/IRendererViewport.cjs +1 -1
- package/dist/kernal/IRendererViewport.mjs +4 -5
- package/dist/kernal/IStyleProvider.cjs +0 -1
- package/dist/kernal/IStyleProvider.mjs +0 -1
- package/dist/kernal/ISymbolCalclator.cjs +0 -1
- package/dist/kernal/ISymbolCalclator.mjs +0 -1
- package/dist/kernal/ITextDocument.cjs +0 -1
- package/dist/kernal/ITextDocument.mjs +0 -1
- package/dist/kernal/IThemeProvider.cjs +0 -1
- package/dist/kernal/IThemeProvider.mjs +0 -1
- package/dist/kernal/IWallpaperProvider.cjs +1 -1
- package/dist/kernal/IWallpaperProvider.mjs +7 -7
- package/dist/kernal/JsonConvert.cjs +1 -1
- package/dist/kernal/JsonConvert.mjs +51 -56
- package/dist/kernal/LifecycleHooks.cjs +0 -1
- package/dist/kernal/LifecycleHooks.mjs +0 -1
- package/dist/kernal/LocationState.cjs +1 -1
- package/dist/kernal/LocationState.mjs +4 -5
- package/dist/kernal/MediaTypeRegistry.cjs +1 -1
- package/dist/kernal/MediaTypeRegistry.mjs +39 -64
- package/dist/kernal/Metadata.cjs +1 -1
- package/dist/kernal/Metadata.mjs +7 -7
- package/dist/kernal/OpenOptions.cjs +1 -1
- package/dist/kernal/OpenOptions.mjs +4 -5
- package/dist/kernal/Options.cjs +1 -1
- package/dist/kernal/Options.mjs +39 -16
- package/dist/kernal/OptionsProvider.cjs +1 -1
- package/dist/kernal/OptionsProvider.mjs +22 -24
- package/dist/kernal/Reader.cjs +1 -1
- package/dist/kernal/Reader.mjs +238 -284
- package/dist/kernal/ReaderInfo.cjs +1 -1
- package/dist/kernal/ReaderInfo.mjs +25 -31
- package/dist/kernal/Theme.cjs +1 -1
- package/dist/kernal/Theme.mjs +80 -29
- package/dist/kernal/common/array.cjs +1 -1
- package/dist/kernal/common/array.mjs +11 -13
- package/dist/kernal/common/buffer.cjs +1 -1
- package/dist/kernal/common/buffer.mjs +32 -43
- package/dist/kernal/common/data.cjs +1 -1
- package/dist/kernal/common/data.mjs +20 -13
- package/dist/kernal/common/date.cjs +1 -1
- package/dist/kernal/common/date.mjs +40 -50
- package/dist/kernal/common/encoding.cjs +1 -1
- package/dist/kernal/common/encoding.mjs +29 -36
- package/dist/kernal/common/geometry.cjs +1 -1
- package/dist/kernal/common/geometry.mjs +28 -30
- package/dist/kernal/common/mimetypes.cjs +1 -1
- package/dist/kernal/common/mimetypes.mjs +99 -34
- package/dist/kernal/common/naming.cjs +1 -1
- package/dist/kernal/common/naming.mjs +4 -4
- package/dist/kernal/common/number.cjs +1 -1
- package/dist/kernal/common/number.mjs +42 -53
- package/dist/kernal/common/object.cjs +1 -1
- package/dist/kernal/common/object.mjs +20 -25
- package/dist/kernal/common/path.cjs +1 -1
- package/dist/kernal/common/path.mjs +45 -52
- package/dist/kernal/common/regex.cjs +1 -1
- package/dist/kernal/common/regex.mjs +15 -25
- package/dist/kernal/common/text.cjs +4 -4
- package/dist/kernal/common/text.mjs +67 -88
- package/dist/kernal/common/tree.cjs +1 -1
- package/dist/kernal/common/tree.mjs +13 -13
- package/dist/kernal/common/url.cjs +1 -1
- package/dist/kernal/common/url.mjs +78 -104
- package/dist/kernal/common/uuid.cjs +1 -1
- package/dist/kernal/common/uuid.mjs +24 -28
- package/dist/kernal/crypto/ICrypto.cjs +1 -1
- package/dist/kernal/crypto/ICrypto.mjs +4 -5
- package/dist/kernal/crypto/MD5.cjs +1 -1
- package/dist/kernal/crypto/MD5.mjs +26 -34
- package/dist/kernal/crypto/WebCrypto.cjs +1 -1
- package/dist/kernal/crypto/WebCrypto.mjs +77 -105
- package/dist/kernal/deepClone/buffer.cjs +1 -1
- package/dist/kernal/deepClone/buffer.mjs +7 -25
- package/dist/kernal/deepClone/clone.cjs +1 -1
- package/dist/kernal/deepClone/clone.mjs +52 -116
- package/dist/kernal/deepClone/collection.cjs +1 -1
- package/dist/kernal/deepClone/collection.mjs +43 -56
- package/dist/kernal/deepClone/detector.cjs +1 -1
- package/dist/kernal/deepClone/detector.mjs +8 -16
- package/dist/kernal/deepClone/index.cjs +1 -1
- package/dist/kernal/deepClone/index.mjs +24 -38
- package/dist/kernal/device/IDevice.cjs +1 -1
- package/dist/kernal/device/IDevice.d.ts +0 -2
- package/dist/kernal/device/IDevice.mjs +4 -5
- package/dist/kernal/device/IEnvironment.cjs +0 -1
- package/dist/kernal/device/IEnvironment.mjs +0 -1
- package/dist/kernal/device/IPlatform.cjs +0 -1
- package/dist/kernal/device/IPlatform.mjs +0 -1
- package/dist/kernal/device/WebBrowser.cjs +1 -1
- package/dist/kernal/device/WebBrowser.d.ts +0 -1
- package/dist/kernal/device/WebBrowser.mjs +54 -65
- package/dist/kernal/device/WebEnvironment.cjs +1 -1
- package/dist/kernal/device/WebEnvironment.mjs +21 -21
- package/dist/kernal/device/WebPlatform.cjs +1 -1
- package/dist/kernal/device/WebPlatform.mjs +48 -63
- package/dist/kernal/html/detector.cjs +1 -1
- package/dist/kernal/html/detector.mjs +38 -46
- package/dist/kernal/html/dom.cjs +1 -0
- package/dist/kernal/html/dom.d.ts +3 -0
- package/dist/kernal/html/dom.mjs +13 -0
- package/dist/kernal/html/events.cjs +1 -1
- package/dist/kernal/html/events.mjs +62 -67
- package/dist/kernal/html/finder.cjs +1 -1
- package/dist/kernal/html/finder.mjs +93 -134
- package/dist/kernal/html/geometry.cjs +1 -1
- package/dist/kernal/html/geometry.mjs +340 -384
- package/dist/kernal/html/image.cjs +1 -1
- package/dist/kernal/html/image.mjs +166 -181
- package/dist/kernal/html/injector.cjs +3 -3
- package/dist/kernal/html/injector.mjs +92 -109
- package/dist/kernal/html/manipulator.cjs +1 -1
- package/dist/kernal/html/manipulator.mjs +96 -116
- package/dist/kernal/html/parser.cjs +1 -1
- package/dist/kernal/html/parser.mjs +61 -60
- package/dist/kernal/html/position.cjs +1 -1
- package/dist/kernal/html/position.mjs +146 -193
- package/dist/kernal/html/selection.cjs +7 -7
- package/dist/kernal/html/selection.mjs +206 -238
- package/dist/kernal/html/style.cjs +1 -1
- package/dist/kernal/html/style.mjs +59 -79
- package/dist/kernal/html/text.cjs +2 -2
- package/dist/kernal/html/text.mjs +50 -65
- package/dist/kernal/html/types.cjs +1 -1
- package/dist/kernal/html/types.mjs +7 -7
- package/dist/kernal/i18n/DefaultLocale.cjs +1 -1
- package/dist/kernal/i18n/DefaultLocale.mjs +36 -41
- package/dist/kernal/i18n/ILocale.cjs +1 -1
- package/dist/kernal/i18n/ILocale.mjs +7 -14
- package/dist/kernal/index.cjs +1 -1
- package/dist/kernal/index.mjs +44 -127
- package/dist/kernal/logger/DefaultLogger.cjs +1 -1
- package/dist/kernal/logger/DefaultLogger.mjs +67 -67
- package/dist/kernal/logger/ILogger.cjs +1 -1
- package/dist/kernal/logger/ILogger.mjs +2 -5
- package/dist/kernal/logger/ILoggerFactory.cjs +0 -1
- package/dist/kernal/logger/ILoggerFactory.mjs +0 -1
- package/dist/kernal/logger/LogLevel.cjs +1 -1
- package/dist/kernal/logger/LogLevel.mjs +33 -11
- package/dist/kernal/logger/LoggerFactory.cjs +1 -1
- package/dist/kernal/logger/LoggerFactory.mjs +12 -12
- package/dist/kernal/logo-160x160.cjs +1 -0
- package/dist/kernal/logo-160x160.mjs +4 -0
- package/dist/kernal/mark/IMarker.cjs +0 -1
- package/dist/kernal/mark/IMarker.mjs +0 -1
- package/dist/kernal/mark/Mark.cjs +1 -1
- package/dist/kernal/mark/Mark.mjs +18 -19
- package/dist/kernal/mark/MarkConstants.cjs +1 -1
- package/dist/kernal/mark/MarkConstants.mjs +4 -7
- package/dist/kernal/mark/index.cjs +1 -1
- package/dist/kernal/mark/index.mjs +3 -10
- package/dist/kernal/mark/types.cjs +0 -1
- package/dist/kernal/mark/types.mjs +0 -1
- package/dist/kernal/nav/INavPointProvider.cjs +0 -1
- package/dist/kernal/nav/INavPointProvider.mjs +0 -1
- package/dist/kernal/nav/Nav.cjs +1 -1
- package/dist/kernal/nav/Nav.mjs +16 -18
- package/dist/kernal/navigator/INavPointNavigator.cjs +0 -1
- package/dist/kernal/navigator/INavPointNavigator.mjs +0 -1
- package/dist/kernal/navigator/INavigator.cjs +1 -1
- package/dist/kernal/navigator/INavigator.mjs +4 -5
- package/dist/kernal/navigator/IPagingNavigator.cjs +1 -1
- package/dist/kernal/navigator/IPagingNavigator.mjs +4 -8
- package/dist/kernal/network/HttpClient.cjs +1 -1
- package/dist/kernal/network/HttpClient.mjs +121 -146
- package/dist/kernal/network/IHttpClient.cjs +1 -1
- package/dist/kernal/network/IHttpClient.mjs +4 -5
- package/dist/kernal/pipelines/FileLoadPipeline.cjs +1 -1
- package/dist/kernal/pipelines/FileLoadPipeline.mjs +65 -84
- package/dist/kernal/pipelines/InputFormatter.cjs +1 -1
- package/dist/kernal/pipelines/InputFormatter.mjs +140 -160
- package/dist/kernal/pipelines/metadata.cjs +1 -1
- package/dist/kernal/pipelines/metadata.mjs +44 -49
- package/dist/kernal/plugins/PluginCore.cjs +1 -1
- package/dist/kernal/plugins/PluginCore.mjs +7 -8
- package/dist/kernal/plugins/PluginManager.cjs +1 -1
- package/dist/kernal/plugins/PluginManager.mjs +79 -105
- package/dist/kernal/plugins/PluginRegistry.cjs +1 -1
- package/dist/kernal/plugins/PluginRegistry.mjs +55 -91
- package/dist/kernal/plugins/keyboard/KeyboardPageTurning.cjs +1 -1
- package/dist/kernal/plugins/keyboard/KeyboardPageTurning.mjs +134 -133
- package/dist/kernal/plugins/mouse/WheelPageTurning.cjs +1 -1
- package/dist/kernal/plugins/mouse/WheelPageTurning.mjs +134 -127
- package/dist/kernal/progress/IProgressTracker.cjs +0 -1
- package/dist/kernal/progress/IProgressTracker.mjs +0 -1
- package/dist/kernal/progress/IReadingProgressStore.cjs +0 -1
- package/dist/kernal/progress/IReadingProgressStore.mjs +0 -1
- package/dist/kernal/progress/Progress.cjs +1 -1
- package/dist/kernal/progress/Progress.mjs +23 -40
- package/dist/kernal/progress/ReadingProgressStore.cjs +1 -1
- package/dist/kernal/progress/ReadingProgressStore.mjs +16 -16
- package/dist/kernal/services/ServiceCollection.cjs +1 -1
- package/dist/kernal/services/ServiceCollection.mjs +63 -88
- package/dist/kernal/services/docLoadLayer/HtmlLoadLayer.cjs +2 -2
- package/dist/kernal/services/docLoadLayer/HtmlLoadLayer.d.ts +1 -1
- package/dist/kernal/services/docLoadLayer/HtmlLoadLayer.mjs +63 -68
- package/dist/kernal/services/docLoadLayer/IHtmlLoadLayer.cjs +0 -1
- package/dist/kernal/services/docLoadLayer/IHtmlLoadLayer.mjs +0 -1
- package/dist/kernal/services/file/IFileDecrypter.cjs +1 -1
- package/dist/kernal/services/file/IFileDecrypter.mjs +11 -24
- package/dist/kernal/services/file/IFileProvider.cjs +0 -1
- package/dist/kernal/services/file/IFileProvider.mjs +0 -1
- package/dist/kernal/services/file/IFileUrlProvider.cjs +0 -1
- package/dist/kernal/services/file/IFileUrlProvider.mjs +0 -1
- package/dist/kernal/services/fileUrlParser/DefaultFileUrlParser.cjs +1 -1
- package/dist/kernal/services/fileUrlParser/DefaultFileUrlParser.mjs +109 -118
- package/dist/kernal/services/fileUrlParser/IFileUrlParser.cjs +1 -1
- package/dist/kernal/services/fileUrlParser/IFileUrlParser.mjs +7 -10
- package/dist/kernal/services/font/IFontProvider.cjs +1 -1
- package/dist/kernal/services/font/IFontProvider.mjs +19 -33
- package/dist/kernal/services/internalUrlBuilder/DefaultInternalUrlBuilder.cjs +1 -1
- package/dist/kernal/services/internalUrlBuilder/DefaultInternalUrlBuilder.mjs +14 -21
- package/dist/kernal/services/internalUrlBuilder/IInternalUrlBuilder.cjs +0 -1
- package/dist/kernal/services/internalUrlBuilder/IInternalUrlBuilder.mjs +0 -1
- package/dist/kernal/services/loading/DefaultLoading.cjs +1 -1
- package/dist/kernal/services/loading/DefaultLoading.mjs +46 -41
- package/dist/kernal/services/loading/ILoading.cjs +1 -1
- package/dist/kernal/services/loading/ILoading.mjs +4 -5
- package/dist/kernal/services/notifier/DefaultNotifier.cjs +1 -1
- package/dist/kernal/services/notifier/DefaultNotifier.mjs +63 -65
- package/dist/kernal/services/notifier/INotifier.cjs +0 -1
- package/dist/kernal/services/notifier/INotifier.mjs +0 -1
- package/dist/kernal/services/notifier/notyf/index.cjs +1 -1
- package/dist/kernal/services/notifier/notyf/index.mjs +5 -13
- package/dist/kernal/services/notifier/notyf/notyf.cjs +1 -1
- package/dist/kernal/services/notifier/notyf/notyf.mjs +79 -97
- package/dist/kernal/services/notifier/notyf/notyf.models.cjs +1 -1
- package/dist/kernal/services/notifier/notyf/notyf.models.mjs +39 -41
- package/dist/kernal/services/notifier/notyf/notyf.options.cjs +1 -1
- package/dist/kernal/services/notifier/notyf/notyf.options.mjs +30 -30
- package/dist/kernal/services/notifier/notyf/notyf.view.cjs +1 -1
- package/dist/kernal/services/notifier/notyf/notyf.view.mjs +146 -177
- package/dist/kernal/services/text/ITextDecoder.cjs +0 -1
- package/dist/kernal/services/text/ITextDecoder.mjs +0 -1
- package/dist/kernal/services/text/splitter.cjs +5 -5
- package/dist/kernal/services/text/splitter.mjs +184 -207
- package/dist/kernal/shape/ShapeSorter.cjs +1 -1
- package/dist/kernal/shape/ShapeSorter.mjs +77 -77
- package/dist/kernal/shape/SimpleMatrix.cjs +1 -1
- package/dist/kernal/shape/SimpleMatrix.mjs +20 -13
- package/dist/kernal/shape/definitions.cjs +0 -1
- package/dist/kernal/shape/definitions.mjs +0 -1
- package/dist/kernal/storage/IStorage.cjs +1 -1
- package/dist/kernal/storage/IStorage.mjs +4 -5
- package/dist/kernal/storage/WebStorage.cjs +1 -1
- package/dist/kernal/storage/WebStorage.mjs +164 -201
- package/dist/kernal/types.cjs +0 -1
- package/dist/kernal/types.mjs +0 -1
- package/dist/kernal/web/BrowserCapabilities.cjs +1 -1
- package/dist/kernal/web/BrowserCapabilities.mjs +167 -191
- package/dist/kernal/web/ua.cjs +1 -1
- package/dist/kernal/web/ua.mjs +5 -5
- package/dist/mediaTypes/adjacent.cjs +1 -1
- package/dist/mediaTypes/adjacent.mjs +41 -48
- package/dist/mediaTypes/base/fileParser/BaseFileParser.cjs +1 -1
- package/dist/mediaTypes/base/fileParser/BaseFileParser.mjs +184 -227
- package/dist/mediaTypes/base/index.cjs +1 -1
- package/dist/mediaTypes/base/index.mjs +4 -8
- package/dist/mediaTypes/base/renderer/BaseDocument.cjs +1 -1
- package/dist/mediaTypes/base/renderer/BaseDocument.mjs +41 -49
- package/dist/mediaTypes/base/renderer/BaseDocumentsProvider.cjs +1 -1
- package/dist/mediaTypes/base/renderer/BaseDocumentsProvider.mjs +64 -71
- package/dist/mediaTypes/base/renderer/eventKeys.cjs +1 -1
- package/dist/mediaTypes/base/renderer/eventKeys.mjs +7 -7
- package/dist/mediaTypes/html/HtmlOptions.cjs +1 -1
- package/dist/mediaTypes/html/HtmlOptions.mjs +34 -12
- package/dist/mediaTypes/html/HtmlSettings.cjs +1 -1
- package/dist/mediaTypes/html/HtmlSettings.mjs +43 -6
- package/dist/mediaTypes/html/fileParser/HtmlFileParser.cjs +1 -1
- package/dist/mediaTypes/html/fileParser/HtmlFileParser.mjs +52 -54
- package/dist/mediaTypes/html/fileParser/HtmlTextDocument.cjs +1 -1
- package/dist/mediaTypes/html/fileParser/HtmlTextDocument.mjs +52 -57
- package/dist/mediaTypes/html/fileParser/IHtmlFileParser.cjs +0 -1
- package/dist/mediaTypes/html/fileParser/IHtmlFileParser.mjs +0 -1
- package/dist/mediaTypes/html/renderer/HtmlRenderer.cjs +1 -1
- package/dist/mediaTypes/html/renderer/HtmlRenderer.mjs +89 -89
- package/dist/mediaTypes/html/renderer/IHtmlDocument.cjs +0 -1
- package/dist/mediaTypes/html/renderer/IHtmlDocument.mjs +0 -1
- package/dist/mediaTypes/html/renderer/IHtmlDocumentsProvider.cjs +0 -1
- package/dist/mediaTypes/html/renderer/IHtmlDocumentsProvider.mjs +0 -1
- package/dist/mediaTypes/html/renderer/IHtmlRenderer.cjs +0 -1
- package/dist/mediaTypes/html/renderer/IHtmlRenderer.mjs +0 -1
- package/dist/mediaTypes/html/renderer/IHtmlTextDocument.cjs +0 -1
- package/dist/mediaTypes/html/renderer/IHtmlTextDocument.mjs +0 -1
- package/dist/mediaTypes/html/renderer/document/HtmlDocument.cjs +1 -1
- package/dist/mediaTypes/html/renderer/document/HtmlDocument.mjs +183 -196
- package/dist/mediaTypes/html/renderer/document/HtmlDocumentResizeObserver.cjs +1 -1
- package/dist/mediaTypes/html/renderer/document/HtmlDocumentResizeObserver.mjs +28 -28
- package/dist/mediaTypes/html/renderer/document/HtmlPageCalculator.cjs +1 -1
- package/dist/mediaTypes/html/renderer/document/HtmlPageCalculator.mjs +77 -82
- package/dist/mediaTypes/html/renderer/document/HtmlSymbolCalclator.cjs +1 -1
- package/dist/mediaTypes/html/renderer/document/HtmlSymbolCalclator.mjs +87 -97
- package/dist/mediaTypes/html/renderer/documents/HtmlContainerBuilder.cjs +1 -1
- package/dist/mediaTypes/html/renderer/documents/HtmlContainerBuilder.mjs +49 -64
- package/dist/mediaTypes/html/renderer/documents/HtmlDocumentsIntersectionObserver.cjs +1 -1
- package/dist/mediaTypes/html/renderer/documents/HtmlDocumentsIntersectionObserver.mjs +29 -32
- package/dist/mediaTypes/html/renderer/documents/HtmlDocumentsPreloader.cjs +1 -1
- package/dist/mediaTypes/html/renderer/documents/HtmlDocumentsPreloader.mjs +76 -84
- package/dist/mediaTypes/html/renderer/documents/HtmlDocumentsProvider.cjs +1 -1
- package/dist/mediaTypes/html/renderer/documents/HtmlDocumentsProvider.d.ts +2 -1
- package/dist/mediaTypes/html/renderer/documents/HtmlDocumentsProvider.mjs +185 -208
- package/dist/mediaTypes/html/renderer/documents/HtmlDocumentsResizeObserver.cjs +1 -1
- package/dist/mediaTypes/html/renderer/documents/HtmlDocumentsResizeObserver.d.ts +2 -1
- package/dist/mediaTypes/html/renderer/documents/HtmlDocumentsResizeObserver.mjs +39 -41
- package/dist/mediaTypes/html/renderer/documents/IHtmlDocumentsPreloader.cjs +0 -1
- package/dist/mediaTypes/html/renderer/documents/IHtmlDocumentsPreloader.mjs +0 -1
- package/dist/mediaTypes/html/renderer/html/HtmlContentProcessor.cjs +1 -1
- package/dist/mediaTypes/html/renderer/html/HtmlContentProcessor.mjs +130 -182
- package/dist/mediaTypes/html/renderer/html/IHtmlContentProcessor.cjs +0 -1
- package/dist/mediaTypes/html/renderer/html/IHtmlContentProcessor.mjs +0 -1
- package/dist/mediaTypes/html/renderer/html/template.cjs +1 -1
- package/dist/mediaTypes/html/renderer/html/template.mjs +13 -16
- package/dist/mediaTypes/html/renderer/image/HtmlImageLoader.cjs +1 -1
- package/dist/mediaTypes/html/renderer/image/HtmlImageLoader.mjs +371 -447
- package/dist/mediaTypes/html/renderer/image/HtmlImageObserver.cjs +1 -1
- package/dist/mediaTypes/html/renderer/image/HtmlImageObserver.mjs +91 -103
- package/dist/mediaTypes/html/renderer/image/IHtmlImageLoader.cjs +0 -1
- package/dist/mediaTypes/html/renderer/image/IHtmlImageLoader.mjs +0 -1
- package/dist/mediaTypes/html/renderer/image/error-image.cjs +1 -0
- package/dist/mediaTypes/html/renderer/image/error-image.mjs +4 -0
- package/dist/mediaTypes/html/renderer/image/placeholder.cjs +1 -0
- package/dist/mediaTypes/html/renderer/image/placeholder.mjs +4 -0
- package/dist/mediaTypes/html/renderer/layout/HtmlLayoutMetrics.cjs +1 -1
- package/dist/mediaTypes/html/renderer/layout/HtmlLayoutMetrics.mjs +5 -6
- package/dist/mediaTypes/html/renderer/layout/HtmlRendererLayout.cjs +1 -1
- package/dist/mediaTypes/html/renderer/layout/HtmlRendererLayout.mjs +81 -90
- package/dist/mediaTypes/html/renderer/layout/HtmlRendererViewport.cjs +1 -1
- package/dist/mediaTypes/html/renderer/layout/HtmlRendererViewport.mjs +142 -169
- package/dist/mediaTypes/html/renderer/layout/IHtmlRendererLayout.cjs +0 -1
- package/dist/mediaTypes/html/renderer/layout/IHtmlRendererLayout.mjs +0 -1
- package/dist/mediaTypes/html/renderer/layout/ViewportCssVariableNames.cjs +1 -1
- package/dist/mediaTypes/html/renderer/layout/ViewportCssVariableNames.mjs +61 -6
- package/dist/mediaTypes/html/renderer/location/HtmlElementLocator.cjs +1 -1
- package/dist/mediaTypes/html/renderer/location/HtmlElementLocator.mjs +106 -118
- package/dist/mediaTypes/html/renderer/location/HtmlLocationCalculator.cjs +1 -1
- package/dist/mediaTypes/html/renderer/location/HtmlLocationCalculator.mjs +28 -34
- package/dist/mediaTypes/html/renderer/location/IHtmlElementLocator.cjs +0 -1
- package/dist/mediaTypes/html/renderer/location/IHtmlElementLocator.mjs +0 -1
- package/dist/mediaTypes/html/renderer/location/IHtmlLocationCalculator.cjs +0 -1
- package/dist/mediaTypes/html/renderer/location/IHtmlLocationCalculator.mjs +0 -1
- package/dist/mediaTypes/html/renderer/navigator/HtmlCoreNavigator.cjs +1 -1
- package/dist/mediaTypes/html/renderer/navigator/HtmlCoreNavigator.mjs +39 -42
- package/dist/mediaTypes/html/renderer/navigator/HtmlNavPointNavigator.cjs +1 -1
- package/dist/mediaTypes/html/renderer/navigator/HtmlNavPointNavigator.mjs +121 -125
- package/dist/mediaTypes/html/renderer/navigator/HtmlNavPointProvider.cjs +1 -1
- package/dist/mediaTypes/html/renderer/navigator/HtmlNavPointProvider.mjs +151 -178
- package/dist/mediaTypes/html/renderer/navigator/HtmlPagingNavigator.cjs +1 -1
- package/dist/mediaTypes/html/renderer/navigator/HtmlPagingNavigator.mjs +78 -85
- package/dist/mediaTypes/html/renderer/progress/HtmlProgressTracker.cjs +1 -1
- package/dist/mediaTypes/html/renderer/progress/HtmlProgressTracker.mjs +119 -137
- package/dist/mediaTypes/html/renderer/progress/IHtmlIProgressTracker.cjs +0 -1
- package/dist/mediaTypes/html/renderer/progress/IHtmlIProgressTracker.mjs +0 -1
- package/dist/mediaTypes/html/renderer/progress/adjacent.cjs +1 -1
- package/dist/mediaTypes/html/renderer/progress/adjacent.mjs +41 -48
- package/dist/mediaTypes/html/renderer/style/ContentCssVariables.cjs +1 -1
- package/dist/mediaTypes/html/renderer/style/ContentCssVariables.mjs +40 -9
- package/dist/mediaTypes/html/renderer/style/ContentLayoutCssVariableNames.cjs +1 -1
- package/dist/mediaTypes/html/renderer/style/ContentLayoutCssVariableNames.mjs +40 -6
- package/dist/mediaTypes/html/renderer/style/HtmlStyleProvider.cjs +1 -1
- package/dist/mediaTypes/html/renderer/style/HtmlStyleProvider.mjs +62 -74
- package/dist/mediaTypes/html/renderer/style/HtmlThemeApplier.cjs +1 -1
- package/dist/mediaTypes/html/renderer/style/HtmlThemeApplier.mjs +58 -68
- package/dist/mediaTypes/html/renderer/style/IHtmlThemeApplier.cjs +0 -1
- package/dist/mediaTypes/html/renderer/style/IHtmlThemeApplier.mjs +0 -1
- package/dist/mediaTypes/html/renderer/style/{html-content.css.mjs → html-content.cjs} +2 -5
- package/dist/mediaTypes/html/renderer/style/html-content.mjs +4 -0
- package/dist/mediaTypes/html/renderer/visibilityCandidates.cjs +1 -1
- package/dist/mediaTypes/html/renderer/visibilityCandidates.mjs +116 -111
- package/dist/mediaTypes/pdf/PdfOptions.cjs +1 -1
- package/dist/mediaTypes/pdf/PdfOptions.mjs +7 -7
- package/dist/mediaTypes/pdf/ensurePdfWebWorker.cjs +1 -1
- package/dist/mediaTypes/pdf/ensurePdfWebWorker.mjs +16 -26
- package/dist/mediaTypes/pdf/fileParser/IPdfFileParser.cjs +0 -1
- package/dist/mediaTypes/pdf/fileParser/IPdfFileParser.mjs +0 -1
- package/dist/mediaTypes/pdf/fileParser/PdfFileParser.cjs +1 -1
- package/dist/mediaTypes/pdf/fileParser/PdfFileParser.mjs +147 -170
- package/dist/mediaTypes/pdf/fileParser/PdfPasswordProvider.cjs +1 -1
- package/dist/mediaTypes/pdf/fileParser/PdfPasswordProvider.mjs +45 -52
- package/dist/mediaTypes/pdf/fileParser/PdfTextDocument.cjs +1 -1
- package/dist/mediaTypes/pdf/fileParser/PdfTextDocument.mjs +28 -28
- package/dist/mediaTypes/pdf/loadPdfDocument.cjs +1 -1
- package/dist/mediaTypes/pdf/loadPdfDocument.mjs +27 -23
- package/dist/mediaTypes/pdf/renderer/IPdfDocument.cjs +0 -1
- package/dist/mediaTypes/pdf/renderer/IPdfDocument.mjs +0 -1
- package/dist/mediaTypes/pdf/renderer/IPdfRenderer.cjs +0 -1
- package/dist/mediaTypes/pdf/renderer/IPdfRenderer.mjs +0 -1
- package/dist/mediaTypes/pdf/renderer/IPdfSvgBuilder.cjs +0 -1
- package/dist/mediaTypes/pdf/renderer/IPdfSvgBuilder.mjs +0 -1
- package/dist/mediaTypes/pdf/renderer/MultiPdfViewer.cjs +1 -1
- package/dist/mediaTypes/pdf/renderer/MultiPdfViewer.mjs +323 -625
- package/dist/mediaTypes/pdf/renderer/PdfCoreNavigator.cjs +1 -1
- package/dist/mediaTypes/pdf/renderer/PdfCoreNavigator.mjs +18 -18
- package/dist/mediaTypes/pdf/renderer/PdfCssVariableNames.cjs +1 -1
- package/dist/mediaTypes/pdf/renderer/PdfCssVariableNames.mjs +25 -6
- package/dist/mediaTypes/pdf/renderer/PdfDocument.cjs +1 -1
- package/dist/mediaTypes/pdf/renderer/PdfDocument.mjs +61 -70
- package/dist/mediaTypes/pdf/renderer/PdfNavPointNavigator.cjs +1 -1
- package/dist/mediaTypes/pdf/renderer/PdfNavPointNavigator.mjs +118 -122
- package/dist/mediaTypes/pdf/renderer/PdfNavPointProvider.cjs +1 -1
- package/dist/mediaTypes/pdf/renderer/PdfNavPointProvider.mjs +85 -111
- package/dist/mediaTypes/pdf/renderer/PdfNoopL10n.cjs +1 -1
- package/dist/mediaTypes/pdf/renderer/PdfNoopL10n.mjs +7 -10
- package/dist/mediaTypes/pdf/renderer/PdfPagingNavigator.cjs +1 -1
- package/dist/mediaTypes/pdf/renderer/PdfPagingNavigator.mjs +29 -32
- package/dist/mediaTypes/pdf/renderer/PdfRenderer.cjs +1 -1
- package/dist/mediaTypes/pdf/renderer/PdfRenderer.mjs +76 -79
- package/dist/mediaTypes/pdf/renderer/PdfSvgBuilder.cjs +1 -1
- package/dist/mediaTypes/pdf/renderer/PdfSvgBuilder.mjs +269 -236
- package/dist/mediaTypes/pdf/renderer/PdfViewerBuilder.cjs +1 -1
- package/dist/mediaTypes/pdf/renderer/PdfViewerBuilder.mjs +33 -36
- package/dist/mediaTypes/pdf/renderer/documents/IPdfDocumentsProvider.cjs +0 -1
- package/dist/mediaTypes/pdf/renderer/documents/IPdfDocumentsProvider.mjs +0 -1
- package/dist/mediaTypes/pdf/renderer/documents/PdfDocumentsProvider.cjs +2 -2
- package/dist/mediaTypes/pdf/renderer/documents/PdfDocumentsProvider.mjs +243 -290
- package/dist/mediaTypes/pdf/renderer/input/PdfDocumentEvents.cjs +1 -1
- package/dist/mediaTypes/pdf/renderer/input/PdfDocumentEvents.mjs +43 -50
- package/dist/mediaTypes/pdf/renderer/input/PdfKeyboardController.cjs +1 -1
- package/dist/mediaTypes/pdf/renderer/input/PdfKeyboardController.mjs +84 -105
- package/dist/mediaTypes/pdf/renderer/input/PdfViewerEvents.cjs +1 -1
- package/dist/mediaTypes/pdf/renderer/input/PdfViewerEvents.mjs +44 -59
- package/dist/mediaTypes/pdf/renderer/input/PdfZoomInputController.cjs +1 -1
- package/dist/mediaTypes/pdf/renderer/input/PdfZoomInputController.mjs +138 -177
- package/dist/mediaTypes/pdf/renderer/layout/IPdfRendererLayout.cjs +0 -1
- package/dist/mediaTypes/pdf/renderer/layout/IPdfRendererLayout.mjs +0 -1
- package/dist/mediaTypes/pdf/renderer/layout/PdfRendererLayout.cjs +1 -1
- package/dist/mediaTypes/pdf/renderer/layout/PdfRendererLayout.mjs +36 -42
- package/dist/mediaTypes/pdf/renderer/layout/PdfRendererViewport.cjs +1 -1
- package/dist/mediaTypes/pdf/renderer/layout/PdfRendererViewport.mjs +75 -82
- package/dist/mediaTypes/pdf/renderer/location/IPdfDestinationBuilder.cjs +0 -1
- package/dist/mediaTypes/pdf/renderer/location/IPdfDestinationBuilder.mjs +0 -1
- package/dist/mediaTypes/pdf/renderer/location/PdfDestinationBuilder.cjs +1 -1
- package/dist/mediaTypes/pdf/renderer/location/PdfDestinationBuilder.mjs +18 -21
- package/dist/mediaTypes/pdf/renderer/progress/IPdfProgressTracker.cjs +0 -1
- package/dist/mediaTypes/pdf/renderer/progress/IPdfProgressTracker.mjs +0 -1
- package/dist/mediaTypes/pdf/renderer/progress/PdfProgressTracker.cjs +1 -1
- package/dist/mediaTypes/pdf/renderer/progress/PdfProgressTracker.mjs +54 -68
- package/dist/mediaTypes/pdf/renderer/style/IPdfThemeApplier.cjs +0 -1
- package/dist/mediaTypes/pdf/renderer/style/IPdfThemeApplier.mjs +0 -1
- package/dist/mediaTypes/pdf/renderer/style/PdfThemeApplier.cjs +4 -4
- package/dist/mediaTypes/pdf/renderer/style/PdfThemeApplier.mjs +15 -15
- package/dist/mediaTypes/pdf/renderer/zoom/IPdfScalable.cjs +0 -1
- package/dist/mediaTypes/pdf/renderer/zoom/IPdfScalable.mjs +0 -1
- package/dist/mediaTypes/pdf/renderer/zoom/PdfScalable.cjs +1 -1
- package/dist/mediaTypes/pdf/renderer/zoom/PdfScalable.mjs +46 -41
- package/dist/mediaTypes/pdf/shared/geometry/index.cjs +1 -1
- package/dist/mediaTypes/pdf/shared/geometry/index.mjs +3 -13
- package/dist/mediaTypes/pdf/shared/geometry/selectionToFixedContentRange.cjs +1 -1
- package/dist/mediaTypes/pdf/shared/geometry/selectionToFixedContentRange.mjs +45 -45
- package/dist/mediaTypes/pdf/shared/geometry/textRects.cjs +1 -1
- package/dist/mediaTypes/pdf/shared/geometry/textRects.mjs +219 -263
- package/dist/mediaTypes/pdf/shared/range.cjs +1 -1
- package/dist/mediaTypes/pdf/shared/range.mjs +11 -14
- package/dist/mediaTypes/pdf/shared/selection/IPdfSelection.cjs +0 -1
- package/dist/mediaTypes/pdf/shared/selection/IPdfSelection.mjs +0 -1
- package/dist/mediaTypes/pdf/shared/selection/PdfSelection.cjs +2 -2
- package/dist/mediaTypes/pdf/shared/selection/PdfSelection.mjs +214 -236
- package/dist/mediaTypes/pdf/shared/selection/index.cjs +1 -1
- package/dist/mediaTypes/pdf/shared/selection/index.mjs +3 -6
- package/dist/mediaTypes/pdf/shared/text/bbox.cjs +1 -1
- package/dist/mediaTypes/pdf/shared/text/bbox.mjs +130 -142
- package/dist/mediaTypes/pdf/shared/text/pageText.cjs +5 -5
- package/dist/mediaTypes/pdf/shared/text/pageText.mjs +168 -185
- package/global.d.ts +17 -0
- package/package.json +19 -12
- package/types.d.ts +13 -0
- package/dist/kernal/logo-160x160.png.cjs +0 -1
- package/dist/kernal/logo-160x160.png.mjs +0 -4
- package/dist/mediaTypes/html/renderer/image/error-image.png.cjs +0 -1
- package/dist/mediaTypes/html/renderer/image/error-image.png.mjs +0 -4
- package/dist/mediaTypes/html/renderer/image/placeholder.png.cjs +0 -1
- package/dist/mediaTypes/html/renderer/image/placeholder.png.mjs +0 -4
- package/dist/mediaTypes/html/renderer/style/html-content.css.cjs +0 -316
|
@@ -1,89 +1,68 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
},
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
`)),
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
return a(r);
|
|
67
|
-
}
|
|
68
|
-
}, W = (r) => new RegExp(/[\u2E00-\u312F\u3190-\u9FFF]/g).test(r), P = (r, e = 3) => {
|
|
69
|
-
if (!r)
|
|
70
|
-
return r;
|
|
71
|
-
e < 2 && (e = 2);
|
|
72
|
-
const n = new RegExp("/[p{P}p{S}]{" + e + ",}/gu");
|
|
73
|
-
return r.replace(n, "");
|
|
74
|
-
};
|
|
75
|
-
export {
|
|
76
|
-
W as checkIsCJKChars,
|
|
77
|
-
w as cutString,
|
|
78
|
-
A as endsWithCjkIdeograph,
|
|
79
|
-
m as formatText,
|
|
80
|
-
d as getByteLength,
|
|
81
|
-
F as is32Bit,
|
|
82
|
-
c as isCjkIdeographChar,
|
|
83
|
-
g as isNullOrWhiteSpace,
|
|
84
|
-
p as removeCJCharWhitespace,
|
|
85
|
-
P as removeConsecutivePunctuations,
|
|
86
|
-
C as startsWith,
|
|
87
|
-
h as startsWithAny,
|
|
88
|
-
E as startsWithCjkIdeograph
|
|
1
|
+
//#region kernal/common/text.ts
|
|
2
|
+
var e = (e) => !e || typeof e == "string" && e.trim().length == 0, t = (e, t, ...n) => {
|
|
3
|
+
let r = !1, i = e;
|
|
4
|
+
t && (i = e.toLowerCase());
|
|
5
|
+
for (let e = 0; e < n.length; e++) {
|
|
6
|
+
let a = t ? n[e].toLowerCase() : n[e];
|
|
7
|
+
if (i.indexOf(a) == 0) {
|
|
8
|
+
r = !0;
|
|
9
|
+
break;
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
return r;
|
|
13
|
+
}, n = (e, t, n, r) => !e || !t ? !1 : n ? e.toLowerCase().indexOf(t.toLowerCase(), r) == 0 : e.indexOf(t, r) == 0, r = (e) => {
|
|
14
|
+
if (e == null || e == null) return 0;
|
|
15
|
+
let t = 0;
|
|
16
|
+
for (let n = 0; n < e.length; n++) e.charCodeAt(n) > 255 ? t += 2 : t++;
|
|
17
|
+
return t;
|
|
18
|
+
}, i = (e) => e.codePointAt(0) > 65535, a = (e, t, n = "") => {
|
|
19
|
+
if (!e) return "";
|
|
20
|
+
let r = e.length, i = 0;
|
|
21
|
+
for (; i < t && i < r; i++) e.codePointAt(i) > 255 && t--;
|
|
22
|
+
if (t < i && i > 0 ? t = i - 1 : t > r && (t = r), t < r) {
|
|
23
|
+
let r = e.substring(0, t), i = r.length;
|
|
24
|
+
return r.codePointAt(i - 1) != e.codePointAt(i - 1) && (r = r.substring(0, i - 1)), r + n;
|
|
25
|
+
}
|
|
26
|
+
return e.substring(0, t);
|
|
27
|
+
}, o = [
|
|
28
|
+
".",
|
|
29
|
+
"。",
|
|
30
|
+
"?",
|
|
31
|
+
"?",
|
|
32
|
+
"!",
|
|
33
|
+
"!"
|
|
34
|
+
], s = (e, t) => {
|
|
35
|
+
if (typeof e != "string") return "";
|
|
36
|
+
if (!e) return e;
|
|
37
|
+
if (t?.removeCJWhitespace && (e = m(e)), t?.combineLines) {
|
|
38
|
+
let t = "", n = e.split("\n");
|
|
39
|
+
for (let e of n) {
|
|
40
|
+
let n = e?.trim() ?? "";
|
|
41
|
+
if (!n) continue;
|
|
42
|
+
t += n;
|
|
43
|
+
let r = n.substring(n.length - 1);
|
|
44
|
+
o.includes(r) && (t += "\n");
|
|
45
|
+
}
|
|
46
|
+
e = t;
|
|
47
|
+
}
|
|
48
|
+
return t?.removeConsecutiveWhitespaceCharacters && (e = e.replace(/[\f\t\v]+/g, ""), e = e.replace(/^\s*[\r\n]\s*/gm, "")), t?.removeConsecutiveBlankLine && (e = e.replace(/[\r\n\t]+/g, "\r\n")), e;
|
|
49
|
+
}, c = "[\\u2E00-\\u312F\\u3190-\\u9FFF]", l = /[\u2E00-\u312F\u3190-\u9FFF]/, u = (e) => e ? l.test(e) : !1, d = (e) => e ? u(e.charAt(e.length - 1)) : !1, f = (e) => e ? u(e.charAt(0)) : !1, p = (e) => {
|
|
50
|
+
if (!e) return "";
|
|
51
|
+
let t = RegExp(`(${c})( +)(${c})`, "g"), n = "";
|
|
52
|
+
for (; n !== e;) n = e, e = e.replace(t, "$1$3");
|
|
53
|
+
return e;
|
|
54
|
+
}, m = (e) => {
|
|
55
|
+
if (!e || typeof e != "string") return "";
|
|
56
|
+
try {
|
|
57
|
+
return e.replace(RegExp(`(?<=${c}) +(?=${c})`, "g"), "");
|
|
58
|
+
} catch {
|
|
59
|
+
return p(e);
|
|
60
|
+
}
|
|
61
|
+
}, h = (e) => (/* @__PURE__ */ new RegExp(/[\u2E00-\u312F\u3190-\u9FFF]/g)).test(e), g = (e, t = 3) => {
|
|
62
|
+
if (!e) return e;
|
|
63
|
+
t < 2 && (t = 2);
|
|
64
|
+
let n = RegExp("/[p{P}p{S}]{" + t + ",}/gu");
|
|
65
|
+
return e.replace(n, "");
|
|
89
66
|
};
|
|
67
|
+
//#endregion
|
|
68
|
+
export { h as checkIsCJKChars, a as cutString, d as endsWithCjkIdeograph, s as formatText, r as getByteLength, i as is32Bit, u as isCjkIdeographChar, e as isNullOrWhiteSpace, m as removeCJCharWhitespace, g as removeConsecutivePunctuations, n as startsWith, t as startsWithAny, f as startsWithCjkIdeograph };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./text.cjs");var t=(e,n,r)=>{n[r]&&n[r].length>0?n[r].forEach(n=>{t(e,n,r)}):e.push(n)},n=(n,r)=>{if(e.isNullOrWhiteSpace(r))return[];let i=[];return n.forEach(e=>{t(i,e,r)}),i};exports.flattenTree=n;
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import { isNullOrWhiteSpace as e } from "./text.mjs";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
}
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
};
|
|
13
|
-
export {
|
|
14
|
-
p as flattenTree
|
|
2
|
+
//#region kernal/common/tree.ts
|
|
3
|
+
var t = (e, n, r) => {
|
|
4
|
+
n[r] && n[r].length > 0 ? n[r].forEach((n) => {
|
|
5
|
+
t(e, n, r);
|
|
6
|
+
}) : e.push(n);
|
|
7
|
+
}, n = (n, r) => {
|
|
8
|
+
if (e(r)) return [];
|
|
9
|
+
let i = [];
|
|
10
|
+
return n.forEach((e) => {
|
|
11
|
+
t(i, e, r);
|
|
12
|
+
}), i;
|
|
15
13
|
};
|
|
14
|
+
//#endregion
|
|
15
|
+
export { n as flattenTree };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./text.cjs");var t=`https://a.com/`,n=/^(?:[a-z][a-z0-9+.-]*:\/\/\S+|(?:blob|data|mailto|about|javascript|filesystem):)/i,r=e=>/^[a-zA-Z]:[\\/]/.test(e),i=e=>/^[a-z][a-z0-9+.-]*:$/i.test(e),a=e=>`canParse`in URL?!(!URL.canParse(e)||r(e)||i(e)):n.test(e),o=(n,r=t)=>y(n)?new URL(n):(e.isNullOrWhiteSpace(r)?r=t:y(r)||(r=t+r),new URL(n,r)),s=e=>{let t=o(e),n=`/`;if(t.pathname.endsWith(`/`))n=t.pathname;else{let e=t.pathname.lastIndexOf(`/`);e>0&&(n=t.pathname.substring(0,e))}return n},c=()=>{if(typeof location<`u`&&location.protocol&&location.host)return`${location.protocol}//${location.host}`;throw Error(`getCurrentBaseUrl is not available in this context`)},l=e=>{let t=o(e);return t.protocol+`//`+t.host},u=(t,n,r)=>{let i;i=y(t)?o(t):o(t,n);let a=i.pathname;return e.startsWith(i.toString(),`https://a.com/`)||r?.removeBase||i.origin&&(a=i.origin+a),r?.removeQuery||(a+=i.search),r?.removeHash||(a+=i.hash),e.startsWithAny(a,!1,`/`,`\\`)&&(a=a.replace(/[\\]+/gi,`/`).substring(1)),a},d=(e,t,n)=>e&&m(e,t,n),f=(e,t)=>e&&h(e,t),p=(t,n)=>{if(e.isNullOrWhiteSpace(n))return null;let r;r=t instanceof URL?t.searchParams:t instanceof URLSearchParams?t:o(t).searchParams;let i=n.toLowerCase(),a=Array.from(r.keys()),s=null;for(let e=0;e<a.length;e++)if(a[e].toLowerCase()==i){s=a[e];break}if(e.isNullOrWhiteSpace(s))return``;let c=r.get(s);return e.isNullOrWhiteSpace(c)?``:c},m=(e,t,n)=>{let r=new Map;return r.set(t,n),h(e,r)},h=(t,n)=>{if(e.isNullOrWhiteSpace(t)||!y(t)||!n)return t;let r=new URL(t),i=r.origin+r.pathname;n instanceof Map?n.forEach((e,t)=>{r.searchParams.set(t,e)}):Object.keys(n).forEach(e=>{r.searchParams.set(e,n[e])});let a=[];return r.searchParams.forEach((e,t)=>{a.push(t+`=`+encodeURIComponent(e))}),i+=`?`+a.join(`&`)+r.hash,i},g=e=>{let t=[],n=Object.keys(e);for(let r=0;r<n.length;r++)t.push(n[r]+`=`+encodeURIComponent(e[n[r]]));return t.join(`&`)},_=(...n)=>{let r=``;if(n.length==0)throw Error(`segments is empty`);let i=n.length;for(let t=0;t<i;t++){let a=n[t];e.isNullOrWhiteSpace(a)||((a.indexOf(`/`)==0||a.indexOf(`\\`)==0)&&(a=a.substring(1)),t!=i-1&&a.charAt(a.length-1)!=`/`&&(a+=`/`),r+=a)}let a=new URL(r,t);if(a.href.indexOf(`https://a.com/`)==0){let e=a.pathname+a.search+a.hash;return e.indexOf(`/`)==0&&(e=e.substring(1)),e}return a.href},v=t=>{let n={urlWithoutAnchor:null,anchor:null};if(e.isNullOrWhiteSpace(t))return n;n.urlWithoutAnchor=t;let r=t.lastIndexOf(`#`);return r>=0&&t.length>1&&(n.urlWithoutAnchor=t.substring(0,r),n.anchor=t.substring(r+1)),n},y=(e,t)=>!e||typeof e!=`string`?!1:t?b(e):a(e),b=t=>!t||typeof t!=`string`||!e.startsWithAny(t,!0,`http://`,`https://`)?!1:a(t),x=t=>!t||typeof t!=`string`?!1:e.startsWith(t,`blob:`,!0),S=t=>!t||typeof t!=`string`?!1:e.startsWith(t,`file:`,!0);exports.appendUrlParameter=d,exports.appendUrlParameters=f,exports.baseHolderUrl=t,exports.checkIsAbsoluteUrl=y,exports.checkIsBlobUrl=x,exports.checkIsFileUrl=S,exports.checkIsHttpUrl=b,exports.combineUrlSegments=_,exports.getAbsoluteDir=s,exports.getBaseUrl=l,exports.getCurrentBaseUrl=c,exports.getFullUrl=o,exports.getParameterValue=p,exports.getUrl=u,exports.getUrlFragment=v,exports.stringifyParamters=g,exports.updateUrlParameter=m,exports.updateUrlParameters=h;
|
|
@@ -1,104 +1,78 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
if (i(t))
|
|
80
|
-
return e;
|
|
81
|
-
e.urlWithoutAnchor = t;
|
|
82
|
-
const r = t.lastIndexOf("#");
|
|
83
|
-
return r >= 0 && t.length > 1 && (e.urlWithoutAnchor = t.substring(0, r), e.anchor = t.substring(r + 1)), e;
|
|
84
|
-
}, h = (t, e) => !t || typeof t != "string" ? !1 : e ? P(t) : U(t), P = (t) => !t || typeof t != "string" || !p(t, !0, "http://", "https://") ? !1 : U(t), S = (t) => !t || typeof t != "string" ? !1 : u(t, "blob:", !0), W = (t) => !t || typeof t != "string" ? !1 : u(t, "file:", !0);
|
|
85
|
-
export {
|
|
86
|
-
O as appendUrlParameter,
|
|
87
|
-
C as appendUrlParameters,
|
|
88
|
-
c as baseHolderUrl,
|
|
89
|
-
h as checkIsAbsoluteUrl,
|
|
90
|
-
S as checkIsBlobUrl,
|
|
91
|
-
W as checkIsFileUrl,
|
|
92
|
-
P as checkIsHttpUrl,
|
|
93
|
-
x as combineUrlSegments,
|
|
94
|
-
L as getAbsoluteDir,
|
|
95
|
-
R as getBaseUrl,
|
|
96
|
-
A as getCurrentBaseUrl,
|
|
97
|
-
f as getFullUrl,
|
|
98
|
-
I as getParameterValue,
|
|
99
|
-
k as getUrl,
|
|
100
|
-
B as getUrlFragment,
|
|
101
|
-
v as stringifyParamters,
|
|
102
|
-
b as updateUrlParameter,
|
|
103
|
-
g as updateUrlParameters
|
|
104
|
-
};
|
|
1
|
+
import { isNullOrWhiteSpace as e, startsWith as t, startsWithAny as n } from "./text.mjs";
|
|
2
|
+
//#region kernal/common/url.ts
|
|
3
|
+
var r = "https://a.com/", i = /^(?:[a-z][a-z0-9+.-]*:\/\/\S+|(?:blob|data|mailto|about|javascript|filesystem):)/i, a = (e) => /^[a-zA-Z]:[\\/]/.test(e), o = (e) => /^[a-z][a-z0-9+.-]*:$/i.test(e), s = (e) => "canParse" in URL ? !(!URL.canParse(e) || a(e) || o(e)) : i.test(e), c = (t, n = r) => x(t) ? new URL(t) : (e(n) ? n = r : x(n) || (n = r + n), new URL(t, n)), l = (e) => {
|
|
4
|
+
let t = c(e), n = "/";
|
|
5
|
+
if (t.pathname.endsWith("/")) n = t.pathname;
|
|
6
|
+
else {
|
|
7
|
+
let e = t.pathname.lastIndexOf("/");
|
|
8
|
+
e > 0 && (n = t.pathname.substring(0, e));
|
|
9
|
+
}
|
|
10
|
+
return n;
|
|
11
|
+
}, u = () => {
|
|
12
|
+
if (typeof location < "u" && location.protocol && location.host) return `${location.protocol}//${location.host}`;
|
|
13
|
+
throw Error("getCurrentBaseUrl is not available in this context");
|
|
14
|
+
}, d = (e) => {
|
|
15
|
+
let t = c(e);
|
|
16
|
+
return t.protocol + "//" + t.host;
|
|
17
|
+
}, f = (e, r, i) => {
|
|
18
|
+
let a;
|
|
19
|
+
a = x(e) ? c(e) : c(e, r);
|
|
20
|
+
let o = a.pathname;
|
|
21
|
+
return t(a.toString(), "https://a.com/") || i?.removeBase || a.origin && (o = a.origin + o), i?.removeQuery || (o += a.search), i?.removeHash || (o += a.hash), n(o, !1, "/", "\\") && (o = o.replace(/[\\]+/gi, "/").substring(1)), o;
|
|
22
|
+
}, p = (e, t, n) => e && g(e, t, n), m = (e, t) => e && _(e, t), h = (t, n) => {
|
|
23
|
+
if (e(n)) return null;
|
|
24
|
+
let r;
|
|
25
|
+
r = t instanceof URL ? t.searchParams : t instanceof URLSearchParams ? t : c(t).searchParams;
|
|
26
|
+
let i = n.toLowerCase(), a = Array.from(r.keys()), o = null;
|
|
27
|
+
for (let e = 0; e < a.length; e++) if (a[e].toLowerCase() == i) {
|
|
28
|
+
o = a[e];
|
|
29
|
+
break;
|
|
30
|
+
}
|
|
31
|
+
if (e(o)) return "";
|
|
32
|
+
let s = r.get(o);
|
|
33
|
+
return e(s) ? "" : s;
|
|
34
|
+
}, g = (e, t, n) => {
|
|
35
|
+
let r = /* @__PURE__ */ new Map();
|
|
36
|
+
return r.set(t, n), _(e, r);
|
|
37
|
+
}, _ = (t, n) => {
|
|
38
|
+
if (e(t) || !x(t) || !n) return t;
|
|
39
|
+
let r = new URL(t), i = r.origin + r.pathname;
|
|
40
|
+
n instanceof Map ? n.forEach((e, t) => {
|
|
41
|
+
r.searchParams.set(t, e);
|
|
42
|
+
}) : Object.keys(n).forEach((e) => {
|
|
43
|
+
r.searchParams.set(e, n[e]);
|
|
44
|
+
});
|
|
45
|
+
let a = [];
|
|
46
|
+
return r.searchParams.forEach((e, t) => {
|
|
47
|
+
a.push(t + "=" + encodeURIComponent(e));
|
|
48
|
+
}), i += "?" + a.join("&") + r.hash, i;
|
|
49
|
+
}, v = (e) => {
|
|
50
|
+
let t = [], n = Object.keys(e);
|
|
51
|
+
for (let r = 0; r < n.length; r++) t.push(n[r] + "=" + encodeURIComponent(e[n[r]]));
|
|
52
|
+
return t.join("&");
|
|
53
|
+
}, y = (...t) => {
|
|
54
|
+
let n = "";
|
|
55
|
+
if (t.length == 0) throw Error("segments is empty");
|
|
56
|
+
let i = t.length;
|
|
57
|
+
for (let r = 0; r < i; r++) {
|
|
58
|
+
let a = t[r];
|
|
59
|
+
e(a) || ((a.indexOf("/") == 0 || a.indexOf("\\") == 0) && (a = a.substring(1)), r != i - 1 && a.charAt(a.length - 1) != "/" && (a += "/"), n += a);
|
|
60
|
+
}
|
|
61
|
+
let a = new URL(n, r);
|
|
62
|
+
if (a.href.indexOf("https://a.com/") == 0) {
|
|
63
|
+
let e = a.pathname + a.search + a.hash;
|
|
64
|
+
return e.indexOf("/") == 0 && (e = e.substring(1)), e;
|
|
65
|
+
}
|
|
66
|
+
return a.href;
|
|
67
|
+
}, b = (t) => {
|
|
68
|
+
let n = {
|
|
69
|
+
urlWithoutAnchor: null,
|
|
70
|
+
anchor: null
|
|
71
|
+
};
|
|
72
|
+
if (e(t)) return n;
|
|
73
|
+
n.urlWithoutAnchor = t;
|
|
74
|
+
let r = t.lastIndexOf("#");
|
|
75
|
+
return r >= 0 && t.length > 1 && (n.urlWithoutAnchor = t.substring(0, r), n.anchor = t.substring(r + 1)), n;
|
|
76
|
+
}, x = (e, t) => !e || typeof e != "string" ? !1 : t ? S(e) : s(e), S = (e) => !e || typeof e != "string" || !n(e, !0, "http://", "https://") ? !1 : s(e), C = (e) => !e || typeof e != "string" ? !1 : t(e, "blob:", !0), w = (e) => !e || typeof e != "string" ? !1 : t(e, "file:", !0);
|
|
77
|
+
//#endregion
|
|
78
|
+
export { p as appendUrlParameter, m as appendUrlParameters, r as baseHolderUrl, x as checkIsAbsoluteUrl, C as checkIsBlobUrl, w as checkIsFileUrl, S as checkIsHttpUrl, y as combineUrlSegments, l as getAbsoluteDir, d as getBaseUrl, u as getCurrentBaseUrl, c as getFullUrl, h as getParameterValue, f as getUrl, b as getUrlFragment, v as stringifyParamters, g as updateUrlParameter, _ as updateUrlParameters };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../_virtual/_rolldown/runtime.cjs");let t=require("xxhashjs");t=e.__toESM(t,1);var n=t.default.h64(20220919101915),r=e=>n.update(e).digest().toString(16),i=()=>`xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx`.replace(/[xy]/g,function(e){let t=Math.random()*16|0;return(e==`x`?t:t&3|8).toString(16)}),a=e=>{let t;if(!(typeof URL<`u`&&typeof URL.createObjectURL==`function`)||e)t=i();else{let e=URL.createObjectURL(new Blob);try{let[n]=e.toString().split(`/`).reverse();t=n,t.indexOf(`blob:`)>=0&&(t=t.replace(`blob:`,``))}catch{t=i()}finally{URL.revokeObjectURL(e)}}if(!t)throw Error(`Failed to create uuid`);return t.replace(/[-]+/gi,``)},o=e=>`r`+a(e);exports.computeUniqueId=r,exports.getRandomId=o,exports.getUuid=a;
|
|
@@ -1,28 +1,24 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
export {
|
|
25
|
-
d as computeUniqueId,
|
|
26
|
-
s as getRandomId,
|
|
27
|
-
u as getUuid
|
|
28
|
-
};
|
|
1
|
+
import e from "xxhashjs";
|
|
2
|
+
//#region kernal/common/uuid.ts
|
|
3
|
+
var t = e.h64(20220919101915), n = (e) => t.update(e).digest().toString(16), r = () => "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, function(e) {
|
|
4
|
+
let t = Math.random() * 16 | 0;
|
|
5
|
+
return (e == "x" ? t : t & 3 | 8).toString(16);
|
|
6
|
+
}), i = (e) => {
|
|
7
|
+
let t;
|
|
8
|
+
if (!(typeof URL < "u" && typeof URL.createObjectURL == "function") || e) t = r();
|
|
9
|
+
else {
|
|
10
|
+
let e = URL.createObjectURL(new Blob());
|
|
11
|
+
try {
|
|
12
|
+
let [n] = e.toString().split("/").reverse();
|
|
13
|
+
t = n, t.indexOf("blob:") >= 0 && (t = t.replace("blob:", ""));
|
|
14
|
+
} catch {
|
|
15
|
+
t = r();
|
|
16
|
+
} finally {
|
|
17
|
+
URL.revokeObjectURL(e);
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
if (!t) throw Error("Failed to create uuid");
|
|
21
|
+
return t.replace(/[-]+/gi, "");
|
|
22
|
+
}, a = (e) => "r" + i(e);
|
|
23
|
+
//#endregion
|
|
24
|
+
export { n as computeUniqueId, a as getRandomId, i as getUuid };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});var e=class{};exports.CryptoOptions=e;
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
}
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
};
|
|
1
|
+
//#region kernal/crypto/ICrypto.ts
|
|
2
|
+
var e = class {};
|
|
3
|
+
//#endregion
|
|
4
|
+
export { e as CryptoOptions };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../_virtual/_rolldown/runtime.cjs"),t=require("../common/uuid.cjs"),n=require("../common/buffer.cjs");let r=require("spark-md5");r=e.__toESM(r,1);var i=e=>r.default.hash(e),a=async e=>{let t=n.toBlob(e),i=new FileReader,a=File.prototype,o=a.mozSlice||a.webkitSlice||a.slice,s=2097152,c=Math.ceil(t.size/s),l=0,u=new r.default.ArrayBuffer;return await new Promise((e,n)=>{i.onerror=e=>{n(e)},i.onload=t=>{u.append(t.target?.result),l++,l<c?r():e(u.end())};let r=()=>{let e=l*s,n=e+s>=t.size?t.size:e+s;i.readAsArrayBuffer(o.call(t,e,n))};r()})},o=async e=>{if(typeof e==`string`)return t.computeUniqueId(e);let r;r=globalThis.FileSystemFileHandle&&e instanceof FileSystemFileHandle?await e.getFile():e instanceof ArrayBuffer||e instanceof Uint8Array?n.toBlob(e):e instanceof Blob?e:await e;let i,o=5242880;return r.size>o&&(r=r.slice(0,o)),i=await a(await r.arrayBuffer()),i};exports.computeMd5=a,exports.computeSimpleId=o,exports.hashMd5=i;
|
|
@@ -1,35 +1,27 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { toBlob as
|
|
3
|
-
import
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
let n;
|
|
26
|
-
const o = 5 * 1024 * 1024;
|
|
27
|
-
t.size > o && (t = t.slice(0, o));
|
|
28
|
-
const a = await t.arrayBuffer();
|
|
29
|
-
return n = await w(a), n;
|
|
30
|
-
};
|
|
31
|
-
export {
|
|
32
|
-
w as computeMd5,
|
|
33
|
-
k as computeSimpleId,
|
|
34
|
-
S as hashMd5
|
|
1
|
+
import { computeUniqueId as e } from "../common/uuid.mjs";
|
|
2
|
+
import { toBlob as t } from "../common/buffer.mjs";
|
|
3
|
+
import n from "spark-md5";
|
|
4
|
+
//#region kernal/crypto/MD5.ts
|
|
5
|
+
var r = (e) => n.hash(e), i = async (e) => {
|
|
6
|
+
let r = t(e), i = new FileReader(), a = File.prototype, o = a.mozSlice || a.webkitSlice || a.slice, s = 2097152, c = Math.ceil(r.size / s), l = 0, u = new n.ArrayBuffer();
|
|
7
|
+
return await new Promise((e, t) => {
|
|
8
|
+
i.onerror = (e) => {
|
|
9
|
+
t(e);
|
|
10
|
+
}, i.onload = (t) => {
|
|
11
|
+
u.append(t.target?.result), l++, l < c ? n() : e(u.end());
|
|
12
|
+
};
|
|
13
|
+
let n = () => {
|
|
14
|
+
let e = l * s, t = e + s >= r.size ? r.size : e + s;
|
|
15
|
+
i.readAsArrayBuffer(o.call(r, e, t));
|
|
16
|
+
};
|
|
17
|
+
n();
|
|
18
|
+
});
|
|
19
|
+
}, a = async (n) => {
|
|
20
|
+
if (typeof n == "string") return e(n);
|
|
21
|
+
let r;
|
|
22
|
+
r = globalThis.FileSystemFileHandle && n instanceof FileSystemFileHandle ? await n.getFile() : n instanceof ArrayBuffer || n instanceof Uint8Array ? t(n) : n instanceof Blob ? n : await n;
|
|
23
|
+
let a, o = 5242880;
|
|
24
|
+
return r.size > o && (r = r.slice(0, o)), a = await i(await r.arrayBuffer()), a;
|
|
35
25
|
};
|
|
26
|
+
//#endregion
|
|
27
|
+
export { i as computeMd5, a as computeSimpleId, r as hashMd5 };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../common/buffer.cjs"),t=require("./MD5.cjs");var n=()=>{let e=globalThis.crypto||globalThis.msCrypto;return e.subtle||e.webkitSubtle},r=async(e,t)=>{let r=await n().digest(t,e);return Array.from(new Uint8Array(r)).map(e=>e.toString(16).padStart(2,`0`)).join(``)},i=e=>typeof e==`string`?new TextEncoder().encode(e):e,a=(e,t)=>{if(e==null)throw Error(`iv is required for AES`);return typeof e==`string`?new TextEncoder().encode(e.substring(0,t)):e.byteLength>t?e.slice(0,t):e},o=(t,n,r,i=!1)=>{let a=t.trim();if(a.startsWith(`-----`)){if(i&&!a.includes(n))throw Error(`RSA decrypt requires PKCS#8 private key (BEGIN PRIVATE KEY)`);let e=a.indexOf(n);a=a.substring(e>=0?e+n.length:0).trim();let t=a.indexOf(r);a=(t>=0?a.substring(0,t):a).trim()}return e.convertBase64ToArrayBuffer(a)},s=async e=>{let t=typeof e==`string`?o(e,`-----BEGIN PUBLIC KEY-----`,`-----END PUBLIC KEY-----`):e;return await globalThis.crypto.subtle.importKey(`spki`,t,{name:`RSA-OAEP`,hash:`SHA-256`},!0,[`encrypt`])},c=async e=>{let t=typeof e==`string`?o(e,`-----BEGIN PRIVATE KEY-----`,`-----END PRIVATE KEY-----`,!0):e;return await globalThis.crypto.subtle.importKey(`pkcs8`,t,{name:`RSA-OAEP`,hash:`SHA-256`},!0,[`decrypt`])},l=class{async digest(e,n){if(n||=`SHA-256`,typeof e==`string`)return n==`MD5`?t.hashMd5(e):await r(new TextEncoder().encode(e),n);let i;if(e instanceof ArrayBuffer)i=e;else if(e instanceof Uint8Array)i=e.buffer;else if(e instanceof File)i=await e.arrayBuffer();else if(e instanceof Blob)i=await e.arrayBuffer();else throw Error(`Unsupported digest content type`);return n==`MD5`?await t.computeMd5(i):await r(new Uint8Array(i),n)}async encrypt(e,t){let r=n(),{key:o,iv:c,mode:l,algorithm:u}=t;if(!u||u==`aes`){let t=i(o);if(!t||t.byteLength<16||t.byteLength%16>0)throw Error(`key must greater than 16`);let n=typeof e==`string`?new TextEncoder().encode(e):e,s=a(c,t.byteLength),u=l===`CBC`?`AES-CBC`:l,d=await r.importKey(`raw`,t,u,!0,[`encrypt`]);return await r.encrypt({name:u,iv:s},d,n)}{let t=typeof e==`string`?new TextEncoder().encode(e):e,n=await s(o);return await r.encrypt({name:`RSA-OAEP`},n,t)}}async decrypt(e,t){let{key:r,iv:o,mode:s,algorithm:l}=t,u=n();if(!l||l==`aes`){let t=i(r);if(!t||t.byteLength<16||t.byteLength%16>0)throw Error(`key must greater than 16`);let n=a(o,t.byteLength),c=s===`CBC`?`AES-CBC`:s,l=await u.importKey(`raw`,t,c,!0,[`decrypt`]);return await u.decrypt({name:c,iv:n},l,e)}let d=await c(r);return await u.decrypt({name:`RSA-OAEP`},d,e)}};exports.WebCrypto=l;
|