happy-dom 12.10.2 → 13.0.0
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.
Potentially problematic release.
This version of happy-dom might be problematic. Click here for more details.
- package/README.md +27 -5
- package/cjs/PropertySymbol.cjs +86 -0
- package/cjs/PropertySymbol.cjs.map +1 -0
- package/cjs/PropertySymbol.d.ts +82 -0
- package/cjs/PropertySymbol.d.ts.map +1 -0
- package/cjs/async-task-manager/AsyncTaskManager.cjs +48 -33
- package/cjs/async-task-manager/AsyncTaskManager.cjs.map +1 -1
- package/cjs/async-task-manager/AsyncTaskManager.d.ts +15 -5
- package/cjs/async-task-manager/AsyncTaskManager.d.ts.map +1 -1
- package/cjs/browser/Browser.cjs +97 -0
- package/cjs/browser/Browser.cjs.map +1 -0
- package/cjs/browser/Browser.d.ts +62 -0
- package/cjs/browser/Browser.d.ts.map +1 -0
- package/cjs/browser/BrowserContext.cjs +86 -0
- package/cjs/browser/BrowserContext.cjs.map +1 -0
- package/cjs/browser/BrowserContext.d.ts +45 -0
- package/cjs/browser/BrowserContext.d.ts.map +1 -0
- package/cjs/browser/BrowserFrame.cjs +168 -0
- package/cjs/browser/BrowserFrame.cjs.map +1 -0
- package/cjs/browser/BrowserFrame.d.ts +98 -0
- package/cjs/browser/BrowserFrame.d.ts.map +1 -0
- package/cjs/browser/BrowserPage.cjs +123 -0
- package/cjs/browser/BrowserPage.cjs.map +1 -0
- package/cjs/browser/BrowserPage.d.ts +97 -0
- package/cjs/browser/BrowserPage.d.ts.map +1 -0
- package/cjs/browser/BrowserSettingsFactory.cjs +38 -0
- package/cjs/browser/BrowserSettingsFactory.cjs.map +1 -0
- package/cjs/browser/BrowserSettingsFactory.d.ts +16 -0
- package/cjs/browser/BrowserSettingsFactory.d.ts.map +1 -0
- package/cjs/browser/DefaultBrowserSettings.cjs +34 -0
- package/cjs/browser/DefaultBrowserSettings.cjs.map +1 -0
- package/cjs/browser/DefaultBrowserSettings.d.ts +4 -0
- package/cjs/browser/DefaultBrowserSettings.d.ts.map +1 -0
- package/cjs/browser/detached-browser/DetachedBrowser.cjs +92 -0
- package/cjs/browser/detached-browser/DetachedBrowser.cjs.map +1 -0
- package/cjs/browser/detached-browser/DetachedBrowser.d.ts +72 -0
- package/cjs/browser/detached-browser/DetachedBrowser.d.ts.map +1 -0
- package/cjs/browser/detached-browser/DetachedBrowserContext.cjs +87 -0
- package/cjs/browser/detached-browser/DetachedBrowserContext.cjs.map +1 -0
- package/cjs/browser/detached-browser/DetachedBrowserContext.d.ts +45 -0
- package/cjs/browser/detached-browser/DetachedBrowserContext.d.ts.map +1 -0
- package/cjs/browser/detached-browser/DetachedBrowserFrame.cjs +182 -0
- package/cjs/browser/detached-browser/DetachedBrowserFrame.cjs.map +1 -0
- package/cjs/browser/detached-browser/DetachedBrowserFrame.d.ts +99 -0
- package/cjs/browser/detached-browser/DetachedBrowserFrame.d.ts.map +1 -0
- package/cjs/browser/detached-browser/DetachedBrowserPage.cjs +135 -0
- package/cjs/browser/detached-browser/DetachedBrowserPage.cjs.map +1 -0
- package/cjs/browser/detached-browser/DetachedBrowserPage.d.ts +97 -0
- package/cjs/browser/detached-browser/DetachedBrowserPage.d.ts.map +1 -0
- package/cjs/browser/enums/BrowserErrorCaptureEnum.cjs +13 -0
- package/cjs/browser/enums/BrowserErrorCaptureEnum.cjs.map +1 -0
- package/cjs/browser/enums/BrowserErrorCaptureEnum.d.ts +10 -0
- package/cjs/browser/enums/BrowserErrorCaptureEnum.d.ts.map +1 -0
- package/cjs/browser/enums/BrowserNavigationCrossOriginPolicyEnum.cjs +13 -0
- package/cjs/browser/enums/BrowserNavigationCrossOriginPolicyEnum.cjs.map +1 -0
- package/cjs/browser/enums/BrowserNavigationCrossOriginPolicyEnum.d.ts +10 -0
- package/cjs/browser/enums/BrowserNavigationCrossOriginPolicyEnum.d.ts.map +1 -0
- package/cjs/{window/IHappyDOMOptions.cjs → browser/types/IBrowser.cjs} +1 -1
- package/cjs/browser/types/IBrowser.cjs.map +1 -0
- package/cjs/browser/types/IBrowser.d.ts +44 -0
- package/cjs/browser/types/IBrowser.d.ts.map +1 -0
- package/cjs/{window/IHappyDOMSettings.cjs → browser/types/IBrowserContext.cjs} +1 -1
- package/cjs/browser/types/IBrowserContext.cjs.map +1 -0
- package/cjs/browser/types/IBrowserContext.d.ts +38 -0
- package/cjs/browser/types/IBrowserContext.d.ts.map +1 -0
- package/cjs/browser/types/IBrowserFrame.cjs +27 -0
- package/cjs/browser/types/IBrowserFrame.cjs.map +1 -0
- package/cjs/browser/types/IBrowserFrame.d.ts +62 -0
- package/cjs/browser/types/IBrowserFrame.d.ts.map +1 -0
- package/cjs/browser/types/IBrowserPage.cjs +3 -0
- package/cjs/browser/types/IBrowserPage.cjs.map +1 -0
- package/cjs/browser/types/IBrowserPage.d.ts +63 -0
- package/cjs/browser/types/IBrowserPage.d.ts.map +1 -0
- package/cjs/browser/types/IBrowserPageViewport.cjs +3 -0
- package/cjs/browser/types/IBrowserPageViewport.cjs.map +1 -0
- package/cjs/browser/types/IBrowserPageViewport.d.ts +6 -0
- package/cjs/browser/types/IBrowserPageViewport.d.ts.map +1 -0
- package/cjs/browser/types/IBrowserSettings.cjs +3 -0
- package/cjs/browser/types/IBrowserSettings.cjs.map +1 -0
- package/cjs/browser/types/IBrowserSettings.d.ts +81 -0
- package/cjs/browser/types/IBrowserSettings.d.ts.map +1 -0
- package/cjs/browser/types/IGoToOptions.cjs +3 -0
- package/cjs/browser/types/IGoToOptions.cjs.map +1 -0
- package/cjs/browser/types/IGoToOptions.d.ts +16 -0
- package/cjs/browser/types/IGoToOptions.d.ts.map +1 -0
- package/cjs/browser/types/IOptionalBrowserSettings.cjs +3 -0
- package/cjs/browser/types/IOptionalBrowserSettings.cjs.map +1 -0
- package/cjs/browser/types/IOptionalBrowserSettings.d.ts +60 -0
- package/cjs/browser/types/IOptionalBrowserSettings.d.ts.map +1 -0
- package/cjs/browser/types/IReloadOptions.cjs +3 -0
- package/cjs/browser/types/IReloadOptions.cjs.map +1 -0
- package/cjs/browser/types/IReloadOptions.d.ts +14 -0
- package/cjs/browser/types/IReloadOptions.d.ts.map +1 -0
- package/cjs/browser/utilities/BrowserFrameExceptionObserver.cjs +76 -0
- package/cjs/browser/utilities/BrowserFrameExceptionObserver.cjs.map +1 -0
- package/cjs/browser/utilities/BrowserFrameExceptionObserver.d.ts +21 -0
- package/cjs/browser/utilities/BrowserFrameExceptionObserver.d.ts.map +1 -0
- package/cjs/browser/utilities/BrowserFrameFactory.cjs +87 -0
- package/cjs/browser/utilities/BrowserFrameFactory.cjs.map +1 -0
- package/cjs/browser/utilities/BrowserFrameFactory.d.ts +20 -0
- package/cjs/browser/utilities/BrowserFrameFactory.d.ts.map +1 -0
- package/cjs/browser/utilities/BrowserFrameNavigator.cjs +154 -0
- package/cjs/browser/utilities/BrowserFrameNavigator.cjs.map +1 -0
- package/cjs/browser/utilities/BrowserFrameNavigator.d.ts +25 -0
- package/cjs/browser/utilities/BrowserFrameNavigator.d.ts.map +1 -0
- package/cjs/browser/utilities/BrowserFrameScriptEvaluator.cjs +24 -0
- package/cjs/browser/utilities/BrowserFrameScriptEvaluator.cjs.map +1 -0
- package/cjs/browser/utilities/BrowserFrameScriptEvaluator.d.ts +17 -0
- package/cjs/browser/utilities/BrowserFrameScriptEvaluator.d.ts.map +1 -0
- package/cjs/browser/utilities/BrowserFrameURL.cjs +39 -0
- package/cjs/browser/utilities/BrowserFrameURL.cjs.map +1 -0
- package/cjs/browser/utilities/BrowserFrameURL.d.ts +17 -0
- package/cjs/browser/utilities/BrowserFrameURL.d.ts.map +1 -0
- package/cjs/browser/utilities/BrowserFrameValidator.cjs +71 -0
- package/cjs/browser/utilities/BrowserFrameValidator.cjs.map +1 -0
- package/cjs/browser/utilities/BrowserFrameValidator.d.ts +24 -0
- package/cjs/browser/utilities/BrowserFrameValidator.d.ts.map +1 -0
- package/cjs/browser/utilities/BrowserPageUtility.cjs +85 -0
- package/cjs/browser/utilities/BrowserPageUtility.cjs.map +1 -0
- package/cjs/browser/utilities/BrowserPageUtility.d.ts +36 -0
- package/cjs/browser/utilities/BrowserPageUtility.d.ts.map +1 -0
- package/cjs/clipboard/Clipboard.cjs.map +1 -1
- package/cjs/clipboard/Clipboard.d.ts +2 -2
- package/cjs/clipboard/Clipboard.d.ts.map +1 -1
- package/cjs/config/ElementTag.cjs +128 -155
- package/cjs/config/ElementTag.cjs.map +1 -1
- package/cjs/config/ElementTag.d.ts +1 -152
- package/cjs/config/ElementTag.d.ts.map +1 -1
- package/cjs/console/VirtualConsole.cjs +70 -54
- package/cjs/console/VirtualConsole.cjs.map +1 -1
- package/cjs/console/VirtualConsole.d.ts +1 -5
- package/cjs/console/VirtualConsole.d.ts.map +1 -1
- package/cjs/console/VirtualConsolePrinter.cjs +26 -13
- package/cjs/console/VirtualConsolePrinter.cjs.map +1 -1
- package/cjs/console/VirtualConsolePrinter.d.ts +1 -2
- package/cjs/console/VirtualConsolePrinter.d.ts.map +1 -1
- package/cjs/console/types/IVirtualConsolePrinter.d.ts +1 -1
- package/cjs/console/types/IVirtualConsolePrinter.d.ts.map +1 -1
- package/cjs/cookie/CookieContainer.cjs +71 -0
- package/cjs/cookie/CookieContainer.cjs.map +1 -0
- package/cjs/cookie/CookieContainer.d.ts +27 -0
- package/cjs/cookie/CookieContainer.d.ts.map +1 -0
- package/cjs/cookie/enums/CookieSameSiteEnum.cjs.map +1 -0
- package/cjs/cookie/enums/CookieSameSiteEnum.d.ts.map +1 -0
- package/cjs/cookie/types/ICookie.cjs +3 -0
- package/cjs/cookie/types/ICookie.cjs.map +1 -0
- package/cjs/cookie/types/ICookie.d.ts +14 -0
- package/cjs/cookie/types/ICookie.d.ts.map +1 -0
- package/cjs/cookie/types/ICookieContainer.cjs +3 -0
- package/cjs/cookie/types/ICookieContainer.cjs.map +1 -0
- package/cjs/cookie/types/ICookieContainer.d.ts +25 -0
- package/cjs/cookie/types/ICookieContainer.d.ts.map +1 -0
- package/cjs/cookie/urilities/CookieExpireUtility.cjs +18 -0
- package/cjs/cookie/urilities/CookieExpireUtility.cjs.map +1 -0
- package/cjs/cookie/urilities/CookieExpireUtility.d.ts +14 -0
- package/cjs/cookie/urilities/CookieExpireUtility.d.ts.map +1 -0
- package/cjs/cookie/urilities/CookieStringUtility.cjs +107 -0
- package/cjs/cookie/urilities/CookieStringUtility.cjs.map +1 -0
- package/cjs/cookie/urilities/CookieStringUtility.d.ts +23 -0
- package/cjs/cookie/urilities/CookieStringUtility.d.ts.map +1 -0
- package/cjs/cookie/urilities/CookieURLUtility.cjs +28 -0
- package/cjs/cookie/urilities/CookieURLUtility.cjs.map +1 -0
- package/cjs/cookie/urilities/CookieURLUtility.d.ts +16 -0
- package/cjs/cookie/urilities/CookieURLUtility.d.ts.map +1 -0
- package/cjs/css/CSSParser.cjs +25 -1
- package/cjs/css/CSSParser.cjs.map +1 -1
- package/cjs/css/CSSParser.d.ts.map +1 -1
- package/cjs/css/CSSStyleSheet.cjs +16 -3
- package/cjs/css/CSSStyleSheet.cjs.map +1 -1
- package/cjs/css/CSSStyleSheet.d.ts +1 -1
- package/cjs/css/CSSStyleSheet.d.ts.map +1 -1
- package/cjs/css/declaration/AbstractCSSStyleDeclaration.cjs +91 -52
- package/cjs/css/declaration/AbstractCSSStyleDeclaration.cjs.map +1 -1
- package/cjs/css/declaration/AbstractCSSStyleDeclaration.d.ts +1 -6
- package/cjs/css/declaration/AbstractCSSStyleDeclaration.d.ts.map +1 -1
- package/cjs/css/declaration/element-style/CSSStyleDeclarationElementStyle.cjs +32 -7
- package/cjs/css/declaration/element-style/CSSStyleDeclarationElementStyle.cjs.map +1 -1
- package/cjs/css/declaration/element-style/CSSStyleDeclarationElementStyle.d.ts.map +1 -1
- package/cjs/css/declaration/measurement-converter/CSSMeasurementConverter.d.ts +2 -2
- package/cjs/css/declaration/measurement-converter/CSSMeasurementConverter.d.ts.map +1 -1
- package/cjs/css/rules/CSSFontFaceRule.cjs +44 -7
- package/cjs/css/rules/CSSFontFaceRule.cjs.map +1 -1
- package/cjs/css/rules/CSSFontFaceRule.d.ts +3 -2
- package/cjs/css/rules/CSSFontFaceRule.d.ts.map +1 -1
- package/cjs/css/rules/CSSKeyframeRule.cjs +44 -7
- package/cjs/css/rules/CSSKeyframeRule.cjs.map +1 -1
- package/cjs/css/rules/CSSKeyframeRule.d.ts +3 -2
- package/cjs/css/rules/CSSKeyframeRule.d.ts.map +1 -1
- package/cjs/css/rules/CSSStyleRule.cjs +44 -7
- package/cjs/css/rules/CSSStyleRule.cjs.map +1 -1
- package/cjs/css/rules/CSSStyleRule.d.ts +3 -2
- package/cjs/css/rules/CSSStyleRule.d.ts.map +1 -1
- package/cjs/custom-element/CustomElementRegistry.cjs +39 -10
- package/cjs/custom-element/CustomElementRegistry.cjs.map +1 -1
- package/cjs/custom-element/CustomElementRegistry.d.ts +3 -2
- package/cjs/custom-element/CustomElementRegistry.d.ts.map +1 -1
- package/cjs/dom-implementation/DOMImplementation.cjs +47 -13
- package/cjs/dom-implementation/DOMImplementation.cjs.map +1 -1
- package/cjs/dom-implementation/DOMImplementation.d.ts +3 -3
- package/cjs/dom-implementation/DOMImplementation.d.ts.map +1 -1
- package/cjs/dom-parser/DOMParser.cjs +63 -39
- package/cjs/dom-parser/DOMParser.cjs.map +1 -1
- package/cjs/dom-parser/DOMParser.d.ts +5 -9
- package/cjs/dom-parser/DOMParser.d.ts.map +1 -1
- package/cjs/dom-token-list/DOMTokenList.cjs +56 -18
- package/cjs/dom-token-list/DOMTokenList.cjs.map +1 -1
- package/cjs/dom-token-list/DOMTokenList.d.ts +3 -3
- package/cjs/dom-token-list/DOMTokenList.d.ts.map +1 -1
- package/cjs/event/Event.cjs +40 -14
- package/cjs/event/Event.cjs.map +1 -1
- package/cjs/event/Event.d.ts +6 -5
- package/cjs/event/Event.d.ts.map +1 -1
- package/cjs/event/EventTarget.cjs +88 -52
- package/cjs/event/EventTarget.cjs.map +1 -1
- package/cjs/event/EventTarget.d.ts +4 -9
- package/cjs/event/EventTarget.d.ts.map +1 -1
- package/cjs/event/IUIEventInit.d.ts +2 -2
- package/cjs/event/IUIEventInit.d.ts.map +1 -1
- package/cjs/event/UIEvent.d.ts +2 -2
- package/cjs/event/UIEvent.d.ts.map +1 -1
- package/cjs/event/events/IMessageEventInit.d.ts +2 -2
- package/cjs/event/events/IMessageEventInit.d.ts.map +1 -1
- package/cjs/event/events/MessageEvent.d.ts +2 -2
- package/cjs/event/events/MessageEvent.d.ts.map +1 -1
- package/cjs/fetch/AbortController.cjs +25 -1
- package/cjs/fetch/AbortController.cjs.map +1 -1
- package/cjs/fetch/AbortController.d.ts.map +1 -1
- package/cjs/fetch/AbortSignal.cjs +25 -1
- package/cjs/fetch/AbortSignal.cjs.map +1 -1
- package/cjs/fetch/AbortSignal.d.ts +2 -1
- package/cjs/fetch/AbortSignal.d.ts.map +1 -1
- package/cjs/fetch/Fetch.cjs +329 -188
- package/cjs/fetch/Fetch.cjs.map +1 -1
- package/cjs/fetch/Fetch.d.ts +40 -35
- package/cjs/fetch/Fetch.d.ts.map +1 -1
- package/cjs/fetch/Headers.cjs +41 -16
- package/cjs/fetch/Headers.cjs.map +1 -1
- package/cjs/fetch/Headers.d.ts +2 -1
- package/cjs/fetch/Headers.d.ts.map +1 -1
- package/cjs/fetch/Request.cjs +88 -46
- package/cjs/fetch/Request.cjs.map +1 -1
- package/cjs/fetch/Request.d.ts +21 -9
- package/cjs/fetch/Request.d.ts.map +1 -1
- package/cjs/fetch/ResourceFetch.cjs +47 -14
- package/cjs/fetch/ResourceFetch.cjs.map +1 -1
- package/cjs/fetch/ResourceFetch.d.ts +17 -5
- package/cjs/fetch/ResourceFetch.d.ts.map +1 -1
- package/cjs/fetch/Response.cjs +121 -63
- package/cjs/fetch/Response.cjs.map +1 -1
- package/cjs/fetch/Response.d.ts +20 -8
- package/cjs/fetch/Response.d.ts.map +1 -1
- package/cjs/fetch/SyncFetch.cjs +459 -0
- package/cjs/fetch/SyncFetch.cjs.map +1 -0
- package/cjs/fetch/SyncFetch.d.ts +80 -0
- package/cjs/fetch/SyncFetch.d.ts.map +1 -0
- package/cjs/fetch/cache/preflight/ICachablePreflightRequest.cjs +3 -0
- package/cjs/fetch/cache/preflight/ICachablePreflightRequest.cjs.map +1 -0
- package/cjs/fetch/cache/preflight/ICachablePreflightRequest.d.ts +7 -0
- package/cjs/fetch/cache/preflight/ICachablePreflightRequest.d.ts.map +1 -0
- package/cjs/fetch/cache/preflight/ICachablePreflightResponse.cjs +3 -0
- package/cjs/fetch/cache/preflight/ICachablePreflightResponse.cjs.map +1 -0
- package/cjs/fetch/cache/preflight/ICachablePreflightResponse.d.ts +7 -0
- package/cjs/fetch/cache/preflight/ICachablePreflightResponse.d.ts.map +1 -0
- package/cjs/fetch/cache/preflight/ICachedPreflightResponse.cjs +3 -0
- package/cjs/fetch/cache/preflight/ICachedPreflightResponse.cjs.map +1 -0
- package/cjs/fetch/cache/preflight/ICachedPreflightResponse.d.ts +6 -0
- package/cjs/fetch/cache/preflight/ICachedPreflightResponse.d.ts.map +1 -0
- package/cjs/fetch/cache/preflight/IPreflightResponseCache.cjs +3 -0
- package/cjs/fetch/cache/preflight/IPreflightResponseCache.cjs.map +1 -0
- package/cjs/fetch/cache/preflight/IPreflightResponseCache.d.ts +28 -0
- package/cjs/fetch/cache/preflight/IPreflightResponseCache.d.ts.map +1 -0
- package/cjs/fetch/cache/preflight/PreflightResponseCache.cjs +90 -0
- package/cjs/fetch/cache/preflight/PreflightResponseCache.cjs.map +1 -0
- package/cjs/fetch/cache/preflight/PreflightResponseCache.d.ts +32 -0
- package/cjs/fetch/cache/preflight/PreflightResponseCache.d.ts.map +1 -0
- package/cjs/fetch/cache/response/CachedResponseStateEnum.cjs +9 -0
- package/cjs/fetch/cache/response/CachedResponseStateEnum.cjs.map +1 -0
- package/cjs/fetch/cache/response/CachedResponseStateEnum.d.ts +6 -0
- package/cjs/fetch/cache/response/CachedResponseStateEnum.d.ts.map +1 -0
- package/cjs/fetch/cache/response/ICachableRequest.cjs +3 -0
- package/cjs/fetch/cache/response/ICachableRequest.cjs.map +1 -0
- package/cjs/fetch/cache/response/ICachableRequest.d.ts +7 -0
- package/cjs/fetch/cache/response/ICachableRequest.d.ts.map +1 -0
- package/cjs/fetch/cache/response/ICachableResponse.cjs +3 -0
- package/cjs/fetch/cache/response/ICachableResponse.cjs.map +1 -0
- package/cjs/fetch/cache/response/ICachableResponse.d.ts +11 -0
- package/cjs/fetch/cache/response/ICachableResponse.d.ts.map +1 -0
- package/cjs/fetch/cache/response/ICachedResponse.cjs +3 -0
- package/cjs/fetch/cache/response/ICachedResponse.cjs.map +1 -0
- package/cjs/fetch/cache/response/ICachedResponse.d.ts +38 -0
- package/cjs/fetch/cache/response/ICachedResponse.d.ts.map +1 -0
- package/cjs/fetch/cache/response/IResponseCache.cjs +3 -0
- package/cjs/fetch/cache/response/IResponseCache.cjs.map +1 -0
- package/cjs/fetch/cache/response/IResponseCache.d.ts +35 -0
- package/cjs/fetch/cache/response/IResponseCache.d.ts.map +1 -0
- package/cjs/fetch/cache/response/ResponseCache.cjs +220 -0
- package/cjs/fetch/cache/response/ResponseCache.cjs.map +1 -0
- package/cjs/fetch/cache/response/ResponseCache.d.ts +40 -0
- package/cjs/fetch/cache/response/ResponseCache.d.ts.map +1 -0
- package/cjs/fetch/certificate/FetchHTTPSCertificate.cjs +55 -0
- package/cjs/fetch/certificate/FetchHTTPSCertificate.cjs.map +1 -0
- package/cjs/fetch/certificate/FetchHTTPSCertificate.d.ts +6 -0
- package/cjs/fetch/certificate/FetchHTTPSCertificate.d.ts.map +1 -0
- package/cjs/fetch/multipart/MultipartFormDataParser.cjs +55 -4
- package/cjs/fetch/multipart/MultipartFormDataParser.cjs.map +1 -1
- package/cjs/fetch/multipart/MultipartFormDataParser.d.ts +4 -1
- package/cjs/fetch/multipart/MultipartFormDataParser.d.ts.map +1 -1
- package/cjs/fetch/types/ISyncResponse.cjs +3 -0
- package/cjs/fetch/types/ISyncResponse.cjs.map +1 -0
- package/cjs/fetch/types/ISyncResponse.d.ts +17 -0
- package/cjs/fetch/types/ISyncResponse.d.ts.map +1 -0
- package/cjs/fetch/utilities/FetchBodyUtility.cjs +39 -10
- package/cjs/fetch/utilities/FetchBodyUtility.cjs.map +1 -1
- package/cjs/fetch/utilities/FetchBodyUtility.d.ts +12 -5
- package/cjs/fetch/utilities/FetchBodyUtility.d.ts.map +1 -1
- package/cjs/fetch/utilities/FetchCORSUtility.cjs +6 -0
- package/cjs/fetch/utilities/FetchCORSUtility.cjs.map +1 -1
- package/cjs/fetch/utilities/FetchCORSUtility.d.ts +3 -1
- package/cjs/fetch/utilities/FetchCORSUtility.d.ts.map +1 -1
- package/cjs/fetch/utilities/FetchRequestHeaderUtility.cjs +91 -2
- package/cjs/fetch/utilities/FetchRequestHeaderUtility.cjs.map +1 -1
- package/cjs/fetch/utilities/FetchRequestHeaderUtility.d.ts +26 -0
- package/cjs/fetch/utilities/FetchRequestHeaderUtility.d.ts.map +1 -1
- package/cjs/fetch/utilities/FetchRequestReferrerUtility.cjs +83 -44
- package/cjs/fetch/utilities/FetchRequestReferrerUtility.cjs.map +1 -1
- package/cjs/fetch/utilities/FetchRequestReferrerUtility.d.ts +19 -12
- package/cjs/fetch/utilities/FetchRequestReferrerUtility.d.ts.map +1 -1
- package/cjs/fetch/utilities/FetchRequestValidationUtility.cjs +53 -0
- package/cjs/fetch/utilities/FetchRequestValidationUtility.cjs.map +1 -1
- package/cjs/fetch/utilities/FetchRequestValidationUtility.d.ts +17 -2
- package/cjs/fetch/utilities/FetchRequestValidationUtility.d.ts.map +1 -1
- package/cjs/fetch/utilities/FetchResponseHeaderUtility.cjs +48 -0
- package/cjs/fetch/utilities/FetchResponseHeaderUtility.cjs.map +1 -0
- package/cjs/fetch/utilities/FetchResponseHeaderUtility.d.ts +24 -0
- package/cjs/fetch/utilities/FetchResponseHeaderUtility.d.ts.map +1 -0
- package/cjs/fetch/utilities/FetchResponseRedirectUtility.cjs +29 -0
- package/cjs/fetch/utilities/FetchResponseRedirectUtility.cjs.map +1 -0
- package/cjs/fetch/utilities/FetchResponseRedirectUtility.d.ts +20 -0
- package/cjs/fetch/utilities/FetchResponseRedirectUtility.d.ts.map +1 -0
- package/cjs/fetch/utilities/SyncFetchScriptBuilder.cjs +63 -0
- package/cjs/fetch/utilities/SyncFetchScriptBuilder.cjs.map +1 -0
- package/cjs/fetch/utilities/SyncFetchScriptBuilder.d.ts +26 -0
- package/cjs/fetch/utilities/SyncFetchScriptBuilder.d.ts.map +1 -0
- package/cjs/file/Blob.cjs +34 -8
- package/cjs/file/Blob.cjs.map +1 -1
- package/cjs/file/Blob.d.ts +2 -1
- package/cjs/file/Blob.d.ts.map +1 -1
- package/cjs/file/FileReader.cjs +100 -72
- package/cjs/file/FileReader.cjs.map +1 -1
- package/cjs/file/FileReader.d.ts +5 -15
- package/cjs/file/FileReader.d.ts.map +1 -1
- package/cjs/form-data/FormData.cjs +69 -39
- package/cjs/form-data/FormData.cjs.map +1 -1
- package/cjs/form-data/FormData.d.ts +1 -9
- package/cjs/form-data/FormData.d.ts.map +1 -1
- package/cjs/history/History.cjs +17 -4
- package/cjs/history/History.cjs.map +1 -1
- package/cjs/history/History.d.ts +1 -1
- package/cjs/history/History.d.ts.map +1 -1
- package/cjs/index.cjs +171 -151
- package/cjs/index.cjs.map +1 -1
- package/cjs/index.d.ts +143 -130
- package/cjs/index.d.ts.map +1 -1
- package/cjs/location/Location.cjs +27 -24
- package/cjs/location/Location.cjs.map +1 -1
- package/cjs/location/Location.d.ts +9 -9
- package/cjs/location/Location.d.ts.map +1 -1
- package/cjs/match-media/MediaQueryItem.cjs +6 -3
- package/cjs/match-media/MediaQueryItem.cjs.map +1 -1
- package/cjs/match-media/MediaQueryItem.d.ts +2 -2
- package/cjs/match-media/MediaQueryItem.d.ts.map +1 -1
- package/cjs/match-media/MediaQueryList.cjs +62 -25
- package/cjs/match-media/MediaQueryList.cjs.map +1 -1
- package/cjs/match-media/MediaQueryList.d.ts +3 -6
- package/cjs/match-media/MediaQueryList.d.ts.map +1 -1
- package/cjs/match-media/MediaQueryParser.d.ts +2 -2
- package/cjs/match-media/MediaQueryParser.d.ts.map +1 -1
- package/cjs/mutation-observer/MutationListener.cjs +77 -4
- package/cjs/mutation-observer/MutationListener.cjs.map +1 -1
- package/cjs/mutation-observer/MutationListener.d.ts +36 -3
- package/cjs/mutation-observer/MutationListener.d.ts.map +1 -1
- package/cjs/mutation-observer/MutationObserver.cjs +93 -15
- package/cjs/mutation-observer/MutationObserver.cjs.map +1 -1
- package/cjs/mutation-observer/MutationObserver.d.ts +5 -5
- package/cjs/mutation-observer/MutationObserver.d.ts.map +1 -1
- package/cjs/mutation-observer/MutationRecord.cjs +7 -1
- package/cjs/mutation-observer/MutationRecord.cjs.map +1 -1
- package/cjs/mutation-observer/MutationRecord.d.ts +6 -0
- package/cjs/mutation-observer/MutationRecord.d.ts.map +1 -1
- package/cjs/named-node-map/NamedNodeMap.cjs +43 -18
- package/cjs/named-node-map/NamedNodeMap.cjs.map +1 -1
- package/cjs/named-node-map/NamedNodeMap.d.ts +7 -6
- package/cjs/named-node-map/NamedNodeMap.d.ts.map +1 -1
- package/cjs/navigator/Navigator.cjs +3 -2
- package/cjs/navigator/Navigator.cjs.map +1 -1
- package/cjs/navigator/Navigator.d.ts +2 -2
- package/cjs/navigator/Navigator.d.ts.map +1 -1
- package/cjs/nodes/character-data/CharacterData.cjs +43 -17
- package/cjs/nodes/character-data/CharacterData.cjs.map +1 -1
- package/cjs/nodes/character-data/CharacterData.d.ts +2 -1
- package/cjs/nodes/character-data/CharacterData.d.ts.map +1 -1
- package/cjs/nodes/child-node/ChildNodeUtility.cjs +27 -3
- package/cjs/nodes/child-node/ChildNodeUtility.cjs.map +1 -1
- package/cjs/nodes/child-node/ChildNodeUtility.d.ts.map +1 -1
- package/cjs/nodes/document/Document.cjs +143 -105
- package/cjs/nodes/document/Document.cjs.map +1 -1
- package/cjs/nodes/document/Document.d.ts +24 -24
- package/cjs/nodes/document/Document.d.ts.map +1 -1
- package/cjs/nodes/document/DocumentReadyStateManager.cjs +1 -1
- package/cjs/nodes/document/DocumentReadyStateManager.cjs.map +1 -1
- package/cjs/nodes/document/DocumentReadyStateManager.d.ts +3 -3
- package/cjs/nodes/document/DocumentReadyStateManager.d.ts.map +1 -1
- package/cjs/nodes/document/IDocument.cjs +24 -0
- package/cjs/nodes/document/IDocument.cjs.map +1 -1
- package/cjs/nodes/document/IDocument.d.ts +4 -2
- package/cjs/nodes/document/IDocument.d.ts.map +1 -1
- package/cjs/nodes/document/NodeCreationOwnerDocument.cjs +15 -0
- package/cjs/nodes/document/NodeCreationOwnerDocument.cjs.map +1 -0
- package/cjs/nodes/document/NodeCreationOwnerDocument.d.ts +15 -0
- package/cjs/nodes/document/NodeCreationOwnerDocument.d.ts.map +1 -0
- package/cjs/nodes/document-fragment/DocumentFragment.cjs +36 -10
- package/cjs/nodes/document-fragment/DocumentFragment.cjs.map +1 -1
- package/cjs/nodes/document-fragment/DocumentFragment.d.ts +3 -2
- package/cjs/nodes/document-fragment/DocumentFragment.d.ts.map +1 -1
- package/cjs/nodes/element/Dataset.cjs +25 -1
- package/cjs/nodes/element/Dataset.cjs.map +1 -1
- package/cjs/nodes/element/Dataset.d.ts.map +1 -1
- package/cjs/nodes/element/Element.cjs +77 -59
- package/cjs/nodes/element/Element.cjs.map +1 -1
- package/cjs/nodes/element/Element.d.ts +11 -18
- package/cjs/nodes/element/Element.d.ts.map +1 -1
- package/cjs/nodes/element/ElementNamedNodeMap.cjs +74 -50
- package/cjs/nodes/element/ElementNamedNodeMap.cjs.map +1 -1
- package/cjs/nodes/element/ElementNamedNodeMap.d.ts +6 -5
- package/cjs/nodes/element/ElementNamedNodeMap.d.ts.map +1 -1
- package/cjs/nodes/element/ElementUtility.cjs +35 -11
- package/cjs/nodes/element/ElementUtility.cjs.map +1 -1
- package/cjs/nodes/element/ElementUtility.d.ts.map +1 -1
- package/cjs/nodes/element/HTMLCollection.cjs +44 -19
- package/cjs/nodes/element/HTMLCollection.cjs.map +1 -1
- package/cjs/nodes/element/HTMLCollection.d.ts +5 -4
- package/cjs/nodes/element/HTMLCollection.d.ts.map +1 -1
- package/cjs/nodes/element/IElement.d.ts +2 -2
- package/cjs/nodes/element/IElement.d.ts.map +1 -1
- package/cjs/nodes/html-anchor-element/HTMLAnchorElement.cjs +97 -53
- package/cjs/nodes/html-anchor-element/HTMLAnchorElement.cjs.map +1 -1
- package/cjs/nodes/html-anchor-element/HTMLAnchorElement.d.ts +8 -2
- package/cjs/nodes/html-anchor-element/HTMLAnchorElement.d.ts.map +1 -1
- package/cjs/nodes/html-anchor-element/HTMLAnchorElementNamedNodeMap.cjs +32 -8
- package/cjs/nodes/html-anchor-element/HTMLAnchorElementNamedNodeMap.cjs.map +1 -1
- package/cjs/nodes/html-anchor-element/HTMLAnchorElementNamedNodeMap.d.ts +3 -2
- package/cjs/nodes/html-anchor-element/HTMLAnchorElementNamedNodeMap.d.ts.map +1 -1
- package/cjs/nodes/html-button-element/HTMLButtonElement.cjs +52 -29
- package/cjs/nodes/html-button-element/HTMLButtonElement.cjs.map +1 -1
- package/cjs/nodes/html-button-element/HTMLButtonElement.d.ts +3 -10
- package/cjs/nodes/html-button-element/HTMLButtonElement.d.ts.map +1 -1
- package/cjs/nodes/html-button-element/HTMLButtonElementNamedNodeMap.cjs +32 -7
- package/cjs/nodes/html-button-element/HTMLButtonElementNamedNodeMap.cjs.map +1 -1
- package/cjs/nodes/html-button-element/HTMLButtonElementNamedNodeMap.d.ts +3 -2
- package/cjs/nodes/html-button-element/HTMLButtonElementNamedNodeMap.d.ts.map +1 -1
- package/cjs/nodes/html-document/HTMLDocument.cjs +19 -0
- package/cjs/nodes/html-document/HTMLDocument.cjs.map +1 -1
- package/cjs/nodes/html-document/HTMLDocument.d.ts +13 -0
- package/cjs/nodes/html-document/HTMLDocument.d.ts.map +1 -1
- package/cjs/nodes/html-element/HTMLElement.cjs +50 -13
- package/cjs/nodes/html-element/HTMLElement.cjs.map +1 -1
- package/cjs/nodes/html-element/HTMLElement.d.ts +3 -2
- package/cjs/nodes/html-element/HTMLElement.d.ts.map +1 -1
- package/cjs/nodes/html-element/HTMLElementNamedNodeMap.cjs +32 -6
- package/cjs/nodes/html-element/HTMLElementNamedNodeMap.cjs.map +1 -1
- package/cjs/nodes/html-element/HTMLElementNamedNodeMap.d.ts +3 -2
- package/cjs/nodes/html-element/HTMLElementNamedNodeMap.d.ts.map +1 -1
- package/cjs/nodes/html-element/HTMLElementUtility.cjs +34 -10
- package/cjs/nodes/html-element/HTMLElementUtility.cjs.map +1 -1
- package/cjs/nodes/html-element/HTMLElementUtility.d.ts.map +1 -1
- package/cjs/nodes/html-form-element/HTMLFormControlsCollection.cjs +51 -21
- package/cjs/nodes/html-form-element/HTMLFormControlsCollection.cjs.map +1 -1
- package/cjs/nodes/html-form-element/HTMLFormControlsCollection.d.ts +5 -4
- package/cjs/nodes/html-form-element/HTMLFormControlsCollection.d.ts.map +1 -1
- package/cjs/nodes/html-form-element/HTMLFormElement.cjs +33 -8
- package/cjs/nodes/html-form-element/HTMLFormElement.cjs.map +1 -1
- package/cjs/nodes/html-form-element/HTMLFormElement.d.ts +4 -3
- package/cjs/nodes/html-form-element/HTMLFormElement.d.ts.map +1 -1
- package/cjs/nodes/html-iframe-element/HTMLIFrameElement.cjs +65 -11
- package/cjs/nodes/html-iframe-element/HTMLIFrameElement.cjs.map +1 -1
- package/cjs/nodes/html-iframe-element/HTMLIFrameElement.d.ts +13 -5
- package/cjs/nodes/html-iframe-element/HTMLIFrameElement.d.ts.map +1 -1
- package/cjs/nodes/html-iframe-element/HTMLIFrameElementNamedNodeMap.cjs +25 -2
- package/cjs/nodes/html-iframe-element/HTMLIFrameElementNamedNodeMap.cjs.map +1 -1
- package/cjs/nodes/html-iframe-element/HTMLIFrameElementNamedNodeMap.d.ts +10 -2
- package/cjs/nodes/html-iframe-element/HTMLIFrameElementNamedNodeMap.d.ts.map +1 -1
- package/cjs/nodes/html-iframe-element/HTMLIFrameElementPageLoader.cjs +122 -0
- package/cjs/nodes/html-iframe-element/HTMLIFrameElementPageLoader.cjs.map +1 -0
- package/cjs/nodes/html-iframe-element/HTMLIFrameElementPageLoader.d.ts +35 -0
- package/cjs/nodes/html-iframe-element/HTMLIFrameElementPageLoader.d.ts.map +1 -0
- package/cjs/nodes/html-iframe-element/IHTMLIFrameElement.d.ts +3 -3
- package/cjs/nodes/html-iframe-element/IHTMLIFrameElement.d.ts.map +1 -1
- package/cjs/nodes/html-input-element/HTMLInputElement.cjs +126 -101
- package/cjs/nodes/html-input-element/HTMLInputElement.cjs.map +1 -1
- package/cjs/nodes/html-input-element/HTMLInputElement.d.ts +7 -20
- package/cjs/nodes/html-input-element/HTMLInputElement.d.ts.map +1 -1
- package/cjs/nodes/html-input-element/HTMLInputElementDateUtility.cjs +13 -12
- package/cjs/nodes/html-input-element/HTMLInputElementDateUtility.cjs.map +1 -1
- package/cjs/nodes/html-input-element/HTMLInputElementDateUtility.d.ts +1 -0
- package/cjs/nodes/html-input-element/HTMLInputElementDateUtility.d.ts.map +1 -1
- package/cjs/nodes/html-input-element/HTMLInputElementNamedNodeMap.cjs +32 -7
- package/cjs/nodes/html-input-element/HTMLInputElementNamedNodeMap.cjs.map +1 -1
- package/cjs/nodes/html-input-element/HTMLInputElementNamedNodeMap.d.ts +3 -2
- package/cjs/nodes/html-input-element/HTMLInputElementNamedNodeMap.d.ts.map +1 -1
- package/cjs/nodes/html-label-element/HTMLLabelElement.cjs +25 -1
- package/cjs/nodes/html-label-element/HTMLLabelElement.cjs.map +1 -1
- package/cjs/nodes/html-label-element/HTMLLabelElement.d.ts.map +1 -1
- package/cjs/nodes/html-link-element/HTMLLinkElement.cjs +61 -13
- package/cjs/nodes/html-link-element/HTMLLinkElement.cjs.map +1 -1
- package/cjs/nodes/html-link-element/HTMLLinkElement.d.ts +12 -3
- package/cjs/nodes/html-link-element/HTMLLinkElement.d.ts.map +1 -1
- package/cjs/nodes/html-link-element/HTMLLinkElementNamedNodeMap.cjs +61 -9
- package/cjs/nodes/html-link-element/HTMLLinkElementNamedNodeMap.cjs.map +1 -1
- package/cjs/nodes/html-link-element/HTMLLinkElementNamedNodeMap.d.ts +13 -2
- package/cjs/nodes/html-link-element/HTMLLinkElementNamedNodeMap.d.ts.map +1 -1
- package/cjs/nodes/html-link-element/HTMLLinkElementStyleSheetLoader.cjs +123 -0
- package/cjs/nodes/html-link-element/HTMLLinkElementStyleSheetLoader.cjs.map +1 -0
- package/cjs/nodes/html-link-element/HTMLLinkElementStyleSheetLoader.d.ts +27 -0
- package/cjs/nodes/html-link-element/HTMLLinkElementStyleSheetLoader.d.ts.map +1 -0
- package/cjs/nodes/html-option-element/HTMLOptionElement.cjs +43 -16
- package/cjs/nodes/html-option-element/HTMLOptionElement.cjs.map +1 -1
- package/cjs/nodes/html-option-element/HTMLOptionElement.d.ts +4 -4
- package/cjs/nodes/html-option-element/HTMLOptionElement.d.ts.map +1 -1
- package/cjs/nodes/html-option-element/HTMLOptionElementNamedNodeMap.cjs +36 -10
- package/cjs/nodes/html-option-element/HTMLOptionElementNamedNodeMap.cjs.map +1 -1
- package/cjs/nodes/html-option-element/HTMLOptionElementNamedNodeMap.d.ts +3 -2
- package/cjs/nodes/html-option-element/HTMLOptionElementNamedNodeMap.d.ts.map +1 -1
- package/cjs/nodes/html-script-element/HTMLScriptElement.cjs +69 -15
- package/cjs/nodes/html-script-element/HTMLScriptElement.cjs.map +1 -1
- package/cjs/nodes/html-script-element/HTMLScriptElement.d.ts +11 -2
- package/cjs/nodes/html-script-element/HTMLScriptElement.d.ts.map +1 -1
- package/cjs/nodes/html-script-element/HTMLScriptElementNamedNodeMap.cjs +52 -3
- package/cjs/nodes/html-script-element/HTMLScriptElementNamedNodeMap.cjs.map +1 -1
- package/cjs/nodes/html-script-element/HTMLScriptElementNamedNodeMap.d.ts +11 -1
- package/cjs/nodes/html-script-element/HTMLScriptElementNamedNodeMap.d.ts.map +1 -1
- package/cjs/nodes/html-script-element/HTMLScriptElementScriptLoader.cjs +141 -0
- package/cjs/nodes/html-script-element/HTMLScriptElementScriptLoader.cjs.map +1 -0
- package/cjs/nodes/html-script-element/HTMLScriptElementScriptLoader.d.ts +26 -0
- package/cjs/nodes/html-script-element/HTMLScriptElementScriptLoader.d.ts.map +1 -0
- package/cjs/nodes/html-select-element/HTMLOptionsCollection.cjs +21 -7
- package/cjs/nodes/html-select-element/HTMLOptionsCollection.cjs.map +1 -1
- package/cjs/nodes/html-select-element/HTMLOptionsCollection.d.ts +1 -1
- package/cjs/nodes/html-select-element/HTMLOptionsCollection.d.ts.map +1 -1
- package/cjs/nodes/html-select-element/HTMLSelectElement.cjs +65 -38
- package/cjs/nodes/html-select-element/HTMLSelectElement.cjs.map +1 -1
- package/cjs/nodes/html-select-element/HTMLSelectElement.d.ts +5 -9
- package/cjs/nodes/html-select-element/HTMLSelectElement.d.ts.map +1 -1
- package/cjs/nodes/html-select-element/HTMLSelectElementNamedNodeMap.cjs +32 -7
- package/cjs/nodes/html-select-element/HTMLSelectElementNamedNodeMap.cjs.map +1 -1
- package/cjs/nodes/html-select-element/HTMLSelectElementNamedNodeMap.d.ts +3 -2
- package/cjs/nodes/html-select-element/HTMLSelectElementNamedNodeMap.d.ts.map +1 -1
- package/cjs/nodes/html-slot-element/HTMLSlotElement.cjs +27 -3
- package/cjs/nodes/html-slot-element/HTMLSlotElement.cjs.map +1 -1
- package/cjs/nodes/html-slot-element/HTMLSlotElement.d.ts.map +1 -1
- package/cjs/nodes/html-style-element/HTMLStyleElement.cjs +31 -5
- package/cjs/nodes/html-style-element/HTMLStyleElement.cjs.map +1 -1
- package/cjs/nodes/html-style-element/HTMLStyleElement.d.ts +2 -1
- package/cjs/nodes/html-style-element/HTMLStyleElement.d.ts.map +1 -1
- package/cjs/nodes/html-template-element/HTMLTemplateElement.cjs +26 -2
- package/cjs/nodes/html-template-element/HTMLTemplateElement.cjs.map +1 -1
- package/cjs/nodes/html-template-element/HTMLTemplateElement.d.ts.map +1 -1
- package/cjs/nodes/html-text-area-element/HTMLTextAreaElement.cjs +88 -53
- package/cjs/nodes/html-text-area-element/HTMLTextAreaElement.cjs.map +1 -1
- package/cjs/nodes/html-text-area-element/HTMLTextAreaElement.d.ts +6 -8
- package/cjs/nodes/html-text-area-element/HTMLTextAreaElement.d.ts.map +1 -1
- package/cjs/nodes/html-text-area-element/HTMLTextAreaElementNamedNodeMap.cjs +32 -7
- package/cjs/nodes/html-text-area-element/HTMLTextAreaElementNamedNodeMap.cjs.map +1 -1
- package/cjs/nodes/html-text-area-element/HTMLTextAreaElementNamedNodeMap.d.ts +3 -2
- package/cjs/nodes/html-text-area-element/HTMLTextAreaElementNamedNodeMap.d.ts.map +1 -1
- package/cjs/nodes/html-unknown-element/HTMLUnknownElement.cjs +73 -34
- package/cjs/nodes/html-unknown-element/HTMLUnknownElement.cjs.map +1 -1
- package/cjs/nodes/html-unknown-element/HTMLUnknownElement.d.ts +3 -2
- package/cjs/nodes/html-unknown-element/HTMLUnknownElement.d.ts.map +1 -1
- package/cjs/nodes/node/Node.cjs +100 -61
- package/cjs/nodes/node/Node.cjs.map +1 -1
- package/cjs/nodes/node/Node.d.ts +12 -11
- package/cjs/nodes/node/Node.d.ts.map +1 -1
- package/cjs/nodes/node/NodeUtility.cjs +77 -47
- package/cjs/nodes/node/NodeUtility.cjs.map +1 -1
- package/cjs/nodes/node/NodeUtility.d.ts +1 -1
- package/cjs/nodes/node/NodeUtility.d.ts.map +1 -1
- package/cjs/nodes/parent-node/ParentNodeUtility.cjs +31 -7
- package/cjs/nodes/parent-node/ParentNodeUtility.cjs.map +1 -1
- package/cjs/nodes/parent-node/ParentNodeUtility.d.ts.map +1 -1
- package/cjs/nodes/shadow-root/ShadowRoot.cjs +27 -3
- package/cjs/nodes/shadow-root/ShadowRoot.cjs.map +1 -1
- package/cjs/nodes/shadow-root/ShadowRoot.d.ts.map +1 -1
- package/cjs/nodes/svg-element/SVGElement.cjs +43 -6
- package/cjs/nodes/svg-element/SVGElement.cjs.map +1 -1
- package/cjs/nodes/svg-element/SVGElement.d.ts +3 -2
- package/cjs/nodes/svg-element/SVGElement.d.ts.map +1 -1
- package/cjs/nodes/svg-element/SVGElementNamedNodeMap.cjs +32 -6
- package/cjs/nodes/svg-element/SVGElementNamedNodeMap.cjs.map +1 -1
- package/cjs/nodes/svg-element/SVGElementNamedNodeMap.d.ts +3 -2
- package/cjs/nodes/svg-element/SVGElementNamedNodeMap.d.ts.map +1 -1
- package/cjs/nodes/text/Text.cjs +35 -11
- package/cjs/nodes/text/Text.cjs.map +1 -1
- package/cjs/nodes/text/Text.d.ts +2 -1
- package/cjs/nodes/text/Text.d.ts.map +1 -1
- package/cjs/query-selector/QuerySelector.cjs +32 -8
- package/cjs/query-selector/QuerySelector.cjs.map +1 -1
- package/cjs/query-selector/QuerySelector.d.ts.map +1 -1
- package/cjs/query-selector/SelectorItem.cjs +28 -2
- package/cjs/query-selector/SelectorItem.cjs.map +1 -1
- package/cjs/query-selector/SelectorItem.d.ts.map +1 -1
- package/cjs/range/Range.cjs +229 -186
- package/cjs/range/Range.cjs.map +1 -1
- package/cjs/range/Range.d.ts +9 -5
- package/cjs/range/Range.d.ts.map +1 -1
- package/cjs/range/RangeUtility.cjs +25 -1
- package/cjs/range/RangeUtility.cjs.map +1 -1
- package/cjs/range/RangeUtility.d.ts.map +1 -1
- package/cjs/selection/Selection.cjs +142 -113
- package/cjs/selection/Selection.cjs.map +1 -1
- package/cjs/selection/Selection.d.ts +2 -11
- package/cjs/selection/Selection.d.ts.map +1 -1
- package/cjs/storage/Storage.cjs +22 -7
- package/cjs/storage/Storage.cjs.map +1 -1
- package/cjs/storage/Storage.d.ts +3 -1
- package/cjs/storage/Storage.d.ts.map +1 -1
- package/cjs/tree-walker/NodeIterator.cjs +17 -3
- package/cjs/tree-walker/NodeIterator.cjs.map +1 -1
- package/cjs/tree-walker/NodeIterator.d.ts +1 -1
- package/cjs/tree-walker/NodeIterator.d.ts.map +1 -1
- package/cjs/tree-walker/TreeWalker.cjs +28 -4
- package/cjs/tree-walker/TreeWalker.cjs.map +1 -1
- package/cjs/tree-walker/TreeWalker.d.ts.map +1 -1
- package/cjs/url/URL.cjs +25 -1
- package/cjs/url/URL.cjs.map +1 -1
- package/cjs/url/URL.d.ts.map +1 -1
- package/cjs/validity-state/ValidityState.cjs +26 -1
- package/cjs/validity-state/ValidityState.cjs.map +1 -1
- package/cjs/validity-state/ValidityState.d.ts.map +1 -1
- package/cjs/version.cjs +1 -1
- package/cjs/window/BrowserWindow.cjs +962 -0
- package/cjs/window/BrowserWindow.cjs.map +1 -0
- package/cjs/window/BrowserWindow.d.ts +684 -0
- package/cjs/window/BrowserWindow.d.ts.map +1 -0
- package/cjs/window/CrossOriginBrowserWindow.cjs +95 -0
- package/cjs/window/CrossOriginBrowserWindow.cjs.map +1 -0
- package/cjs/window/CrossOriginBrowserWindow.d.ts +55 -0
- package/cjs/window/CrossOriginBrowserWindow.d.ts.map +1 -0
- package/cjs/window/DetachedWindowAPI.cjs +126 -0
- package/cjs/window/DetachedWindowAPI.cjs.map +1 -0
- package/cjs/window/DetachedWindowAPI.d.ts +90 -0
- package/cjs/window/DetachedWindowAPI.d.ts.map +1 -0
- package/cjs/window/GlobalWindow.cjs +25 -1
- package/cjs/window/GlobalWindow.cjs.map +1 -1
- package/cjs/window/GlobalWindow.d.ts +2 -1
- package/cjs/window/GlobalWindow.d.ts.map +1 -1
- package/cjs/window/IBrowserWindow.cjs +27 -0
- package/cjs/window/IBrowserWindow.cjs.map +1 -0
- package/cjs/window/IBrowserWindow.d.ts +554 -0
- package/cjs/window/IBrowserWindow.d.ts.map +1 -0
- package/cjs/window/ICrossOriginBrowserWindow.cjs +3 -0
- package/cjs/window/ICrossOriginBrowserWindow.cjs.map +1 -0
- package/cjs/window/ICrossOriginBrowserWindow.d.ts +36 -0
- package/cjs/window/ICrossOriginBrowserWindow.d.ts.map +1 -0
- package/cjs/window/IWindow.d.ts +5 -527
- package/cjs/window/IWindow.d.ts.map +1 -1
- package/cjs/window/VMGlobalPropertyScript.cjs +1 -1
- package/cjs/window/Window.cjs +16 -831
- package/cjs/window/Window.cjs.map +1 -1
- package/cjs/window/Window.d.ts +18 -639
- package/cjs/window/Window.d.ts.map +1 -1
- package/cjs/window/WindowBrowserSettingsReader.cjs +79 -0
- package/cjs/window/WindowBrowserSettingsReader.cjs.map +1 -0
- package/cjs/window/WindowBrowserSettingsReader.d.ts +29 -0
- package/cjs/window/WindowBrowserSettingsReader.d.ts.map +1 -0
- package/cjs/window/WindowErrorUtility.cjs +25 -2
- package/cjs/window/WindowErrorUtility.cjs.map +1 -1
- package/cjs/window/WindowErrorUtility.d.ts +4 -4
- package/cjs/window/WindowErrorUtility.d.ts.map +1 -1
- package/cjs/window/WindowPageOpenUtility.cjs +148 -0
- package/cjs/window/WindowPageOpenUtility.cjs.map +1 -0
- package/cjs/window/WindowPageOpenUtility.d.ts +30 -0
- package/cjs/window/WindowPageOpenUtility.d.ts.map +1 -0
- package/cjs/xml-http-request/XMLHttpRequest.cjs +265 -665
- package/cjs/xml-http-request/XMLHttpRequest.cjs.map +1 -1
- package/cjs/xml-http-request/XMLHttpRequest.d.ts +32 -108
- package/cjs/xml-http-request/XMLHttpRequest.d.ts.map +1 -1
- package/cjs/xml-http-request/utilities/XMLHttpRequestResponseDataParser.cjs +69 -0
- package/cjs/xml-http-request/utilities/XMLHttpRequestResponseDataParser.cjs.map +1 -0
- package/cjs/xml-http-request/utilities/XMLHttpRequestResponseDataParser.d.ts +26 -0
- package/cjs/xml-http-request/utilities/XMLHttpRequestResponseDataParser.d.ts.map +1 -0
- package/cjs/xml-http-request/utilities/XMLHttpRequestResponseTextDecoder.cjs +29 -0
- package/cjs/xml-http-request/utilities/XMLHttpRequestResponseTextDecoder.cjs.map +1 -0
- package/cjs/xml-http-request/utilities/XMLHttpRequestResponseTextDecoder.d.ts +15 -0
- package/cjs/xml-http-request/utilities/XMLHttpRequestResponseTextDecoder.d.ts.map +1 -0
- package/cjs/xml-parser/XMLParser.cjs +3 -2
- package/cjs/xml-parser/XMLParser.cjs.map +1 -1
- package/cjs/xml-parser/XMLParser.d.ts.map +1 -1
- package/cjs/xml-serializer/XMLSerializer.cjs +36 -33
- package/cjs/xml-serializer/XMLSerializer.cjs.map +1 -1
- package/cjs/xml-serializer/XMLSerializer.d.ts +1 -11
- package/cjs/xml-serializer/XMLSerializer.d.ts.map +1 -1
- package/lib/PropertySymbol.d.ts +82 -0
- package/lib/PropertySymbol.d.ts.map +1 -0
- package/lib/PropertySymbol.js +82 -0
- package/lib/PropertySymbol.js.map +1 -0
- package/lib/async-task-manager/AsyncTaskManager.d.ts +15 -5
- package/lib/async-task-manager/AsyncTaskManager.d.ts.map +1 -1
- package/lib/async-task-manager/AsyncTaskManager.js +48 -33
- package/lib/async-task-manager/AsyncTaskManager.js.map +1 -1
- package/lib/browser/Browser.d.ts +62 -0
- package/lib/browser/Browser.d.ts.map +1 -0
- package/lib/browser/Browser.js +91 -0
- package/lib/browser/Browser.js.map +1 -0
- package/lib/browser/BrowserContext.d.ts +45 -0
- package/lib/browser/BrowserContext.d.ts.map +1 -0
- package/lib/browser/BrowserContext.js +80 -0
- package/lib/browser/BrowserContext.js.map +1 -0
- package/lib/browser/BrowserFrame.d.ts +98 -0
- package/lib/browser/BrowserFrame.d.ts.map +1 -0
- package/lib/browser/BrowserFrame.js +140 -0
- package/lib/browser/BrowserFrame.js.map +1 -0
- package/lib/browser/BrowserPage.d.ts +97 -0
- package/lib/browser/BrowserPage.d.ts.map +1 -0
- package/lib/browser/BrowserPage.js +117 -0
- package/lib/browser/BrowserPage.js.map +1 -0
- package/lib/browser/BrowserSettingsFactory.d.ts +16 -0
- package/lib/browser/BrowserSettingsFactory.d.ts.map +1 -0
- package/lib/browser/BrowserSettingsFactory.js +32 -0
- package/lib/browser/BrowserSettingsFactory.js.map +1 -0
- package/lib/browser/DefaultBrowserSettings.d.ts +4 -0
- package/lib/browser/DefaultBrowserSettings.d.ts.map +1 -0
- package/lib/browser/DefaultBrowserSettings.js +29 -0
- package/lib/browser/DefaultBrowserSettings.js.map +1 -0
- package/lib/browser/detached-browser/DetachedBrowser.d.ts +72 -0
- package/lib/browser/detached-browser/DetachedBrowser.d.ts.map +1 -0
- package/lib/browser/detached-browser/DetachedBrowser.js +86 -0
- package/lib/browser/detached-browser/DetachedBrowser.js.map +1 -0
- package/lib/browser/detached-browser/DetachedBrowserContext.d.ts +45 -0
- package/lib/browser/detached-browser/DetachedBrowserContext.d.ts.map +1 -0
- package/lib/browser/detached-browser/DetachedBrowserContext.js +81 -0
- package/lib/browser/detached-browser/DetachedBrowserContext.js.map +1 -0
- package/lib/browser/detached-browser/DetachedBrowserFrame.d.ts +99 -0
- package/lib/browser/detached-browser/DetachedBrowserFrame.d.ts.map +1 -0
- package/lib/browser/detached-browser/DetachedBrowserFrame.js +154 -0
- package/lib/browser/detached-browser/DetachedBrowserFrame.js.map +1 -0
- package/lib/browser/detached-browser/DetachedBrowserPage.d.ts +97 -0
- package/lib/browser/detached-browser/DetachedBrowserPage.d.ts.map +1 -0
- package/lib/browser/detached-browser/DetachedBrowserPage.js +129 -0
- package/lib/browser/detached-browser/DetachedBrowserPage.js.map +1 -0
- package/lib/browser/enums/BrowserErrorCaptureEnum.d.ts +10 -0
- package/lib/browser/enums/BrowserErrorCaptureEnum.d.ts.map +1 -0
- package/lib/browser/enums/BrowserErrorCaptureEnum.js +11 -0
- package/lib/browser/enums/BrowserErrorCaptureEnum.js.map +1 -0
- package/lib/browser/enums/BrowserNavigationCrossOriginPolicyEnum.d.ts +10 -0
- package/lib/browser/enums/BrowserNavigationCrossOriginPolicyEnum.d.ts.map +1 -0
- package/lib/browser/enums/BrowserNavigationCrossOriginPolicyEnum.js +11 -0
- package/lib/browser/enums/BrowserNavigationCrossOriginPolicyEnum.js.map +1 -0
- package/lib/browser/types/IBrowser.d.ts +44 -0
- package/lib/browser/types/IBrowser.d.ts.map +1 -0
- package/lib/browser/types/IBrowser.js +2 -0
- package/lib/browser/types/IBrowser.js.map +1 -0
- package/lib/browser/types/IBrowserContext.d.ts +38 -0
- package/lib/browser/types/IBrowserContext.d.ts.map +1 -0
- package/lib/browser/types/IBrowserContext.js +2 -0
- package/lib/browser/types/IBrowserContext.js.map +1 -0
- package/lib/browser/types/IBrowserFrame.d.ts +62 -0
- package/lib/browser/types/IBrowserFrame.d.ts.map +1 -0
- package/lib/browser/types/IBrowserFrame.js +2 -0
- package/lib/browser/types/IBrowserFrame.js.map +1 -0
- package/lib/browser/types/IBrowserPage.d.ts +63 -0
- package/lib/browser/types/IBrowserPage.d.ts.map +1 -0
- package/lib/browser/types/IBrowserPage.js +2 -0
- package/lib/browser/types/IBrowserPage.js.map +1 -0
- package/lib/browser/types/IBrowserPageViewport.d.ts +6 -0
- package/lib/browser/types/IBrowserPageViewport.d.ts.map +1 -0
- package/lib/browser/types/IBrowserPageViewport.js +2 -0
- package/lib/browser/types/IBrowserPageViewport.js.map +1 -0
- package/lib/browser/types/IBrowserSettings.d.ts +81 -0
- package/lib/browser/types/IBrowserSettings.d.ts.map +1 -0
- package/lib/browser/types/IBrowserSettings.js +2 -0
- package/lib/browser/types/IBrowserSettings.js.map +1 -0
- package/lib/browser/types/IGoToOptions.d.ts +16 -0
- package/lib/browser/types/IGoToOptions.d.ts.map +1 -0
- package/lib/browser/types/IGoToOptions.js +2 -0
- package/lib/browser/types/IGoToOptions.js.map +1 -0
- package/lib/browser/types/IOptionalBrowserSettings.d.ts +60 -0
- package/lib/browser/types/IOptionalBrowserSettings.d.ts.map +1 -0
- package/lib/browser/types/IOptionalBrowserSettings.js +2 -0
- package/lib/browser/types/IOptionalBrowserSettings.js.map +1 -0
- package/lib/browser/types/IReloadOptions.d.ts +14 -0
- package/lib/browser/types/IReloadOptions.d.ts.map +1 -0
- package/lib/browser/types/IReloadOptions.js +2 -0
- package/lib/browser/types/IReloadOptions.js.map +1 -0
- package/lib/browser/utilities/BrowserFrameExceptionObserver.d.ts +21 -0
- package/lib/browser/utilities/BrowserFrameExceptionObserver.d.ts.map +1 -0
- package/lib/browser/utilities/BrowserFrameExceptionObserver.js +74 -0
- package/lib/browser/utilities/BrowserFrameExceptionObserver.js.map +1 -0
- package/lib/browser/utilities/BrowserFrameFactory.d.ts +20 -0
- package/lib/browser/utilities/BrowserFrameFactory.d.ts.map +1 -0
- package/lib/browser/utilities/BrowserFrameFactory.js +61 -0
- package/lib/browser/utilities/BrowserFrameFactory.js.map +1 -0
- package/lib/browser/utilities/BrowserFrameNavigator.d.ts +25 -0
- package/lib/browser/utilities/BrowserFrameNavigator.d.ts.map +1 -0
- package/lib/browser/utilities/BrowserFrameNavigator.js +125 -0
- package/lib/browser/utilities/BrowserFrameNavigator.js.map +1 -0
- package/lib/browser/utilities/BrowserFrameScriptEvaluator.d.ts +17 -0
- package/lib/browser/utilities/BrowserFrameScriptEvaluator.d.ts.map +1 -0
- package/lib/browser/utilities/BrowserFrameScriptEvaluator.js +21 -0
- package/lib/browser/utilities/BrowserFrameScriptEvaluator.js.map +1 -0
- package/lib/browser/utilities/BrowserFrameURL.d.ts +17 -0
- package/lib/browser/utilities/BrowserFrameURL.d.ts.map +1 -0
- package/lib/browser/utilities/BrowserFrameURL.js +33 -0
- package/lib/browser/utilities/BrowserFrameURL.js.map +1 -0
- package/lib/browser/utilities/BrowserFrameValidator.d.ts +24 -0
- package/lib/browser/utilities/BrowserFrameValidator.d.ts.map +1 -0
- package/lib/browser/utilities/BrowserFrameValidator.js +65 -0
- package/lib/browser/utilities/BrowserFrameValidator.js.map +1 -0
- package/lib/browser/utilities/BrowserPageUtility.d.ts +36 -0
- package/lib/browser/utilities/BrowserPageUtility.d.ts.map +1 -0
- package/lib/browser/utilities/BrowserPageUtility.js +79 -0
- package/lib/browser/utilities/BrowserPageUtility.js.map +1 -0
- package/lib/clipboard/Clipboard.d.ts +2 -2
- package/lib/clipboard/Clipboard.d.ts.map +1 -1
- package/lib/clipboard/Clipboard.js.map +1 -1
- package/lib/config/ElementTag.d.ts +1 -152
- package/lib/config/ElementTag.d.ts.map +1 -1
- package/lib/config/ElementTag.js +128 -152
- package/lib/config/ElementTag.js.map +1 -1
- package/lib/console/VirtualConsole.d.ts +1 -5
- package/lib/console/VirtualConsole.d.ts.map +1 -1
- package/lib/console/VirtualConsole.js +72 -55
- package/lib/console/VirtualConsole.js.map +1 -1
- package/lib/console/VirtualConsolePrinter.d.ts +1 -2
- package/lib/console/VirtualConsolePrinter.d.ts.map +1 -1
- package/lib/console/VirtualConsolePrinter.js +28 -14
- package/lib/console/VirtualConsolePrinter.js.map +1 -1
- package/lib/console/types/IVirtualConsolePrinter.d.ts +1 -1
- package/lib/console/types/IVirtualConsolePrinter.d.ts.map +1 -1
- package/lib/cookie/CookieContainer.d.ts +27 -0
- package/lib/cookie/CookieContainer.d.ts.map +1 -0
- package/lib/cookie/CookieContainer.js +66 -0
- package/lib/cookie/CookieContainer.js.map +1 -0
- package/lib/cookie/enums/CookieSameSiteEnum.d.ts.map +1 -0
- package/lib/cookie/enums/CookieSameSiteEnum.js.map +1 -0
- package/lib/cookie/types/ICookie.d.ts +14 -0
- package/lib/cookie/types/ICookie.d.ts.map +1 -0
- package/lib/cookie/types/ICookie.js +2 -0
- package/lib/cookie/types/ICookie.js.map +1 -0
- package/lib/cookie/types/ICookieContainer.d.ts +25 -0
- package/lib/cookie/types/ICookieContainer.d.ts.map +1 -0
- package/lib/cookie/types/ICookieContainer.js +2 -0
- package/lib/cookie/types/ICookieContainer.js.map +1 -0
- package/lib/cookie/urilities/CookieExpireUtility.d.ts +14 -0
- package/lib/cookie/urilities/CookieExpireUtility.d.ts.map +1 -0
- package/lib/cookie/urilities/CookieExpireUtility.js +15 -0
- package/lib/cookie/urilities/CookieExpireUtility.js.map +1 -0
- package/lib/cookie/urilities/CookieStringUtility.d.ts +23 -0
- package/lib/cookie/urilities/CookieStringUtility.d.ts.map +1 -0
- package/lib/cookie/urilities/CookieStringUtility.js +101 -0
- package/lib/cookie/urilities/CookieStringUtility.js.map +1 -0
- package/lib/cookie/urilities/CookieURLUtility.d.ts +16 -0
- package/lib/cookie/urilities/CookieURLUtility.d.ts.map +1 -0
- package/lib/cookie/urilities/CookieURLUtility.js +22 -0
- package/lib/cookie/urilities/CookieURLUtility.js.map +1 -0
- package/lib/css/CSSParser.d.ts.map +1 -1
- package/lib/css/CSSParser.js +2 -1
- package/lib/css/CSSParser.js.map +1 -1
- package/lib/css/CSSStyleSheet.d.ts +1 -1
- package/lib/css/CSSStyleSheet.d.ts.map +1 -1
- package/lib/css/CSSStyleSheet.js +18 -4
- package/lib/css/CSSStyleSheet.js.map +1 -1
- package/lib/css/declaration/AbstractCSSStyleDeclaration.d.ts +1 -6
- package/lib/css/declaration/AbstractCSSStyleDeclaration.d.ts.map +1 -1
- package/lib/css/declaration/AbstractCSSStyleDeclaration.js +70 -53
- package/lib/css/declaration/AbstractCSSStyleDeclaration.js.map +1 -1
- package/lib/css/declaration/element-style/CSSStyleDeclarationElementStyle.d.ts.map +1 -1
- package/lib/css/declaration/element-style/CSSStyleDeclarationElementStyle.js +9 -7
- package/lib/css/declaration/element-style/CSSStyleDeclarationElementStyle.js.map +1 -1
- package/lib/css/declaration/measurement-converter/CSSMeasurementConverter.d.ts +2 -2
- package/lib/css/declaration/measurement-converter/CSSMeasurementConverter.d.ts.map +1 -1
- package/lib/css/rules/CSSFontFaceRule.d.ts +3 -2
- package/lib/css/rules/CSSFontFaceRule.d.ts.map +1 -1
- package/lib/css/rules/CSSFontFaceRule.js +23 -8
- package/lib/css/rules/CSSFontFaceRule.js.map +1 -1
- package/lib/css/rules/CSSKeyframeRule.d.ts +3 -2
- package/lib/css/rules/CSSKeyframeRule.d.ts.map +1 -1
- package/lib/css/rules/CSSKeyframeRule.js +23 -8
- package/lib/css/rules/CSSKeyframeRule.js.map +1 -1
- package/lib/css/rules/CSSStyleRule.d.ts +3 -2
- package/lib/css/rules/CSSStyleRule.d.ts.map +1 -1
- package/lib/css/rules/CSSStyleRule.js +23 -8
- package/lib/css/rules/CSSStyleRule.js.map +1 -1
- package/lib/custom-element/CustomElementRegistry.d.ts +3 -2
- package/lib/custom-element/CustomElementRegistry.d.ts.map +1 -1
- package/lib/custom-element/CustomElementRegistry.js +18 -11
- package/lib/custom-element/CustomElementRegistry.js.map +1 -1
- package/lib/dom-implementation/DOMImplementation.d.ts +3 -3
- package/lib/dom-implementation/DOMImplementation.d.ts.map +1 -1
- package/lib/dom-implementation/DOMImplementation.js +26 -14
- package/lib/dom-implementation/DOMImplementation.js.map +1 -1
- package/lib/dom-parser/DOMParser.d.ts +5 -9
- package/lib/dom-parser/DOMParser.d.ts.map +1 -1
- package/lib/dom-parser/DOMParser.js +40 -39
- package/lib/dom-parser/DOMParser.js.map +1 -1
- package/lib/dom-token-list/DOMTokenList.d.ts +3 -3
- package/lib/dom-token-list/DOMTokenList.d.ts.map +1 -1
- package/lib/dom-token-list/DOMTokenList.js +33 -18
- package/lib/dom-token-list/DOMTokenList.js.map +1 -1
- package/lib/event/Event.d.ts +6 -5
- package/lib/event/Event.d.ts.map +1 -1
- package/lib/event/Event.js +19 -15
- package/lib/event/Event.js.map +1 -1
- package/lib/event/EventTarget.d.ts +4 -9
- package/lib/event/EventTarget.d.ts.map +1 -1
- package/lib/event/EventTarget.js +67 -53
- package/lib/event/EventTarget.js.map +1 -1
- package/lib/event/IUIEventInit.d.ts +2 -2
- package/lib/event/IUIEventInit.d.ts.map +1 -1
- package/lib/event/UIEvent.d.ts +2 -2
- package/lib/event/UIEvent.d.ts.map +1 -1
- package/lib/event/events/IMessageEventInit.d.ts +2 -2
- package/lib/event/events/IMessageEventInit.d.ts.map +1 -1
- package/lib/event/events/MessageEvent.d.ts +2 -2
- package/lib/event/events/MessageEvent.d.ts.map +1 -1
- package/lib/fetch/AbortController.d.ts.map +1 -1
- package/lib/fetch/AbortController.js +2 -1
- package/lib/fetch/AbortController.js.map +1 -1
- package/lib/fetch/AbortSignal.d.ts +2 -1
- package/lib/fetch/AbortSignal.d.ts.map +1 -1
- package/lib/fetch/AbortSignal.js +2 -1
- package/lib/fetch/AbortSignal.js.map +1 -1
- package/lib/fetch/Fetch.d.ts +40 -35
- package/lib/fetch/Fetch.d.ts.map +1 -1
- package/lib/fetch/Fetch.js +308 -189
- package/lib/fetch/Fetch.js.map +1 -1
- package/lib/fetch/Headers.d.ts +2 -1
- package/lib/fetch/Headers.d.ts.map +1 -1
- package/lib/fetch/Headers.js +18 -16
- package/lib/fetch/Headers.js.map +1 -1
- package/lib/fetch/Request.d.ts +21 -9
- package/lib/fetch/Request.d.ts.map +1 -1
- package/lib/fetch/Request.js +66 -48
- package/lib/fetch/Request.js.map +1 -1
- package/lib/fetch/ResourceFetch.d.ts +17 -5
- package/lib/fetch/ResourceFetch.d.ts.map +1 -1
- package/lib/fetch/ResourceFetch.js +49 -15
- package/lib/fetch/ResourceFetch.js.map +1 -1
- package/lib/fetch/Response.d.ts +20 -8
- package/lib/fetch/Response.d.ts.map +1 -1
- package/lib/fetch/Response.js +98 -63
- package/lib/fetch/Response.js.map +1 -1
- package/lib/fetch/SyncFetch.d.ts +80 -0
- package/lib/fetch/SyncFetch.d.ts.map +1 -0
- package/lib/fetch/SyncFetch.js +431 -0
- package/lib/fetch/SyncFetch.js.map +1 -0
- package/lib/fetch/cache/preflight/ICachablePreflightRequest.d.ts +7 -0
- package/lib/fetch/cache/preflight/ICachablePreflightRequest.d.ts.map +1 -0
- package/lib/fetch/cache/preflight/ICachablePreflightRequest.js +2 -0
- package/lib/fetch/cache/preflight/ICachablePreflightRequest.js.map +1 -0
- package/lib/fetch/cache/preflight/ICachablePreflightResponse.d.ts +7 -0
- package/lib/fetch/cache/preflight/ICachablePreflightResponse.d.ts.map +1 -0
- package/lib/fetch/cache/preflight/ICachablePreflightResponse.js +2 -0
- package/lib/fetch/cache/preflight/ICachablePreflightResponse.js.map +1 -0
- package/lib/fetch/cache/preflight/ICachedPreflightResponse.d.ts +6 -0
- package/lib/fetch/cache/preflight/ICachedPreflightResponse.d.ts.map +1 -0
- package/lib/fetch/cache/preflight/ICachedPreflightResponse.js +2 -0
- package/lib/fetch/cache/preflight/ICachedPreflightResponse.js.map +1 -0
- package/lib/fetch/cache/preflight/IPreflightResponseCache.d.ts +28 -0
- package/lib/fetch/cache/preflight/IPreflightResponseCache.d.ts.map +1 -0
- package/lib/fetch/cache/preflight/IPreflightResponseCache.js +2 -0
- package/lib/fetch/cache/preflight/IPreflightResponseCache.js.map +1 -0
- package/lib/fetch/cache/preflight/PreflightResponseCache.d.ts +32 -0
- package/lib/fetch/cache/preflight/PreflightResponseCache.d.ts.map +1 -0
- package/lib/fetch/cache/preflight/PreflightResponseCache.js +88 -0
- package/lib/fetch/cache/preflight/PreflightResponseCache.js.map +1 -0
- package/lib/fetch/cache/response/CachedResponseStateEnum.d.ts +6 -0
- package/lib/fetch/cache/response/CachedResponseStateEnum.d.ts.map +1 -0
- package/lib/fetch/cache/response/CachedResponseStateEnum.js +7 -0
- package/lib/fetch/cache/response/CachedResponseStateEnum.js.map +1 -0
- package/lib/fetch/cache/response/ICachableRequest.d.ts +7 -0
- package/lib/fetch/cache/response/ICachableRequest.d.ts.map +1 -0
- package/lib/fetch/cache/response/ICachableRequest.js +2 -0
- package/lib/fetch/cache/response/ICachableRequest.js.map +1 -0
- package/lib/fetch/cache/response/ICachableResponse.d.ts +11 -0
- package/lib/fetch/cache/response/ICachableResponse.d.ts.map +1 -0
- package/lib/fetch/cache/response/ICachableResponse.js +2 -0
- package/lib/fetch/cache/response/ICachableResponse.js.map +1 -0
- package/lib/fetch/cache/response/ICachedResponse.d.ts +38 -0
- package/lib/fetch/cache/response/ICachedResponse.d.ts.map +1 -0
- package/lib/fetch/cache/response/ICachedResponse.js +2 -0
- package/lib/fetch/cache/response/ICachedResponse.js.map +1 -0
- package/lib/fetch/cache/response/IResponseCache.d.ts +35 -0
- package/lib/fetch/cache/response/IResponseCache.d.ts.map +1 -0
- package/lib/fetch/cache/response/IResponseCache.js +2 -0
- package/lib/fetch/cache/response/IResponseCache.js.map +1 -0
- package/lib/fetch/cache/response/ResponseCache.d.ts +40 -0
- package/lib/fetch/cache/response/ResponseCache.d.ts.map +1 -0
- package/lib/fetch/cache/response/ResponseCache.js +215 -0
- package/lib/fetch/cache/response/ResponseCache.js.map +1 -0
- package/lib/fetch/certificate/FetchHTTPSCertificate.d.ts +6 -0
- package/lib/fetch/certificate/FetchHTTPSCertificate.d.ts.map +1 -0
- package/lib/fetch/certificate/FetchHTTPSCertificate.js +53 -0
- package/lib/fetch/certificate/FetchHTTPSCertificate.js.map +1 -0
- package/lib/fetch/multipart/MultipartFormDataParser.d.ts +4 -1
- package/lib/fetch/multipart/MultipartFormDataParser.d.ts.map +1 -1
- package/lib/fetch/multipart/MultipartFormDataParser.js +32 -4
- package/lib/fetch/multipart/MultipartFormDataParser.js.map +1 -1
- package/lib/fetch/types/ISyncResponse.d.ts +17 -0
- package/lib/fetch/types/ISyncResponse.d.ts.map +1 -0
- package/lib/fetch/types/ISyncResponse.js +2 -0
- package/lib/fetch/types/ISyncResponse.js.map +1 -0
- package/lib/fetch/utilities/FetchBodyUtility.d.ts +12 -5
- package/lib/fetch/utilities/FetchBodyUtility.d.ts.map +1 -1
- package/lib/fetch/utilities/FetchBodyUtility.js +16 -10
- package/lib/fetch/utilities/FetchBodyUtility.js.map +1 -1
- package/lib/fetch/utilities/FetchCORSUtility.d.ts +3 -1
- package/lib/fetch/utilities/FetchCORSUtility.d.ts.map +1 -1
- package/lib/fetch/utilities/FetchCORSUtility.js +6 -0
- package/lib/fetch/utilities/FetchCORSUtility.js.map +1 -1
- package/lib/fetch/utilities/FetchRequestHeaderUtility.d.ts +26 -0
- package/lib/fetch/utilities/FetchRequestHeaderUtility.d.ts.map +1 -1
- package/lib/fetch/utilities/FetchRequestHeaderUtility.js +65 -2
- package/lib/fetch/utilities/FetchRequestHeaderUtility.js.map +1 -1
- package/lib/fetch/utilities/FetchRequestReferrerUtility.d.ts +19 -12
- package/lib/fetch/utilities/FetchRequestReferrerUtility.d.ts.map +1 -1
- package/lib/fetch/utilities/FetchRequestReferrerUtility.js +60 -44
- package/lib/fetch/utilities/FetchRequestReferrerUtility.js.map +1 -1
- package/lib/fetch/utilities/FetchRequestValidationUtility.d.ts +17 -2
- package/lib/fetch/utilities/FetchRequestValidationUtility.d.ts.map +1 -1
- package/lib/fetch/utilities/FetchRequestValidationUtility.js +30 -0
- package/lib/fetch/utilities/FetchRequestValidationUtility.js.map +1 -1
- package/lib/fetch/utilities/FetchResponseHeaderUtility.d.ts +24 -0
- package/lib/fetch/utilities/FetchResponseHeaderUtility.d.ts.map +1 -0
- package/lib/fetch/utilities/FetchResponseHeaderUtility.js +42 -0
- package/lib/fetch/utilities/FetchResponseHeaderUtility.js.map +1 -0
- package/lib/fetch/utilities/FetchResponseRedirectUtility.d.ts +20 -0
- package/lib/fetch/utilities/FetchResponseRedirectUtility.d.ts.map +1 -0
- package/lib/fetch/utilities/FetchResponseRedirectUtility.js +26 -0
- package/lib/fetch/utilities/FetchResponseRedirectUtility.js.map +1 -0
- package/lib/fetch/utilities/SyncFetchScriptBuilder.d.ts +26 -0
- package/lib/fetch/utilities/SyncFetchScriptBuilder.d.ts.map +1 -0
- package/lib/fetch/utilities/SyncFetchScriptBuilder.js +57 -0
- package/lib/fetch/utilities/SyncFetchScriptBuilder.js.map +1 -0
- package/lib/file/Blob.d.ts +2 -1
- package/lib/file/Blob.d.ts.map +1 -1
- package/lib/file/Blob.js +13 -9
- package/lib/file/Blob.js.map +1 -1
- package/lib/file/FileReader.d.ts +5 -15
- package/lib/file/FileReader.d.ts.map +1 -1
- package/lib/file/FileReader.js +77 -72
- package/lib/file/FileReader.js.map +1 -1
- package/lib/form-data/FormData.d.ts +1 -9
- package/lib/form-data/FormData.d.ts.map +1 -1
- package/lib/form-data/FormData.js +48 -40
- package/lib/form-data/FormData.js.map +1 -1
- package/lib/history/History.d.ts +1 -1
- package/lib/history/History.d.ts.map +1 -1
- package/lib/history/History.js +19 -5
- package/lib/history/History.js.map +1 -1
- package/lib/index.d.ts +143 -130
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +85 -75
- package/lib/index.js.map +1 -1
- package/lib/location/Location.d.ts +9 -9
- package/lib/location/Location.d.ts.map +1 -1
- package/lib/location/Location.js +29 -25
- package/lib/location/Location.js.map +1 -1
- package/lib/match-media/MediaQueryItem.d.ts +2 -2
- package/lib/match-media/MediaQueryItem.d.ts.map +1 -1
- package/lib/match-media/MediaQueryItem.js +6 -3
- package/lib/match-media/MediaQueryItem.js.map +1 -1
- package/lib/match-media/MediaQueryList.d.ts +3 -6
- package/lib/match-media/MediaQueryList.d.ts.map +1 -1
- package/lib/match-media/MediaQueryList.js +41 -26
- package/lib/match-media/MediaQueryList.js.map +1 -1
- package/lib/match-media/MediaQueryParser.d.ts +2 -2
- package/lib/match-media/MediaQueryParser.d.ts.map +1 -1
- package/lib/mutation-observer/MutationListener.d.ts +36 -3
- package/lib/mutation-observer/MutationListener.d.ts.map +1 -1
- package/lib/mutation-observer/MutationListener.js +79 -5
- package/lib/mutation-observer/MutationListener.js.map +1 -1
- package/lib/mutation-observer/MutationObserver.d.ts +5 -5
- package/lib/mutation-observer/MutationObserver.d.ts.map +1 -1
- package/lib/mutation-observer/MutationObserver.js +73 -17
- package/lib/mutation-observer/MutationObserver.js.map +1 -1
- package/lib/mutation-observer/MutationRecord.d.ts +6 -0
- package/lib/mutation-observer/MutationRecord.d.ts.map +1 -1
- package/lib/mutation-observer/MutationRecord.js +7 -1
- package/lib/mutation-observer/MutationRecord.js.map +1 -1
- package/lib/named-node-map/NamedNodeMap.d.ts +7 -6
- package/lib/named-node-map/NamedNodeMap.d.ts.map +1 -1
- package/lib/named-node-map/NamedNodeMap.js +20 -18
- package/lib/named-node-map/NamedNodeMap.js.map +1 -1
- package/lib/navigator/Navigator.d.ts +2 -2
- package/lib/navigator/Navigator.d.ts.map +1 -1
- package/lib/navigator/Navigator.js +3 -2
- package/lib/navigator/Navigator.js.map +1 -1
- package/lib/nodes/character-data/CharacterData.d.ts +2 -1
- package/lib/nodes/character-data/CharacterData.d.ts.map +1 -1
- package/lib/nodes/character-data/CharacterData.js +22 -18
- package/lib/nodes/character-data/CharacterData.js.map +1 -1
- package/lib/nodes/child-node/ChildNodeUtility.d.ts.map +1 -1
- package/lib/nodes/child-node/ChildNodeUtility.js +4 -3
- package/lib/nodes/child-node/ChildNodeUtility.js.map +1 -1
- package/lib/nodes/document/Document.d.ts +24 -24
- package/lib/nodes/document/Document.d.ts.map +1 -1
- package/lib/nodes/document/Document.js +120 -105
- package/lib/nodes/document/Document.js.map +1 -1
- package/lib/nodes/document/DocumentReadyStateManager.d.ts +3 -3
- package/lib/nodes/document/DocumentReadyStateManager.d.ts.map +1 -1
- package/lib/nodes/document/DocumentReadyStateManager.js +1 -1
- package/lib/nodes/document/DocumentReadyStateManager.js.map +1 -1
- package/lib/nodes/document/IDocument.d.ts +4 -2
- package/lib/nodes/document/IDocument.d.ts.map +1 -1
- package/lib/nodes/document/IDocument.js +1 -1
- package/lib/nodes/document/IDocument.js.map +1 -1
- package/lib/nodes/document/NodeCreationOwnerDocument.d.ts +15 -0
- package/lib/nodes/document/NodeCreationOwnerDocument.d.ts.map +1 -0
- package/lib/nodes/document/NodeCreationOwnerDocument.js +13 -0
- package/lib/nodes/document/NodeCreationOwnerDocument.js.map +1 -0
- package/lib/nodes/document-fragment/DocumentFragment.d.ts +3 -2
- package/lib/nodes/document-fragment/DocumentFragment.d.ts.map +1 -1
- package/lib/nodes/document-fragment/DocumentFragment.js +15 -11
- package/lib/nodes/document-fragment/DocumentFragment.js.map +1 -1
- package/lib/nodes/element/Dataset.d.ts.map +1 -1
- package/lib/nodes/element/Dataset.js +2 -1
- package/lib/nodes/element/Dataset.js.map +1 -1
- package/lib/nodes/element/Element.d.ts +11 -18
- package/lib/nodes/element/Element.d.ts.map +1 -1
- package/lib/nodes/element/Element.js +56 -60
- package/lib/nodes/element/Element.js.map +1 -1
- package/lib/nodes/element/ElementNamedNodeMap.d.ts +6 -5
- package/lib/nodes/element/ElementNamedNodeMap.d.ts.map +1 -1
- package/lib/nodes/element/ElementNamedNodeMap.js +51 -50
- package/lib/nodes/element/ElementNamedNodeMap.js.map +1 -1
- package/lib/nodes/element/ElementUtility.d.ts.map +1 -1
- package/lib/nodes/element/ElementUtility.js +12 -11
- package/lib/nodes/element/ElementUtility.js.map +1 -1
- package/lib/nodes/element/HTMLCollection.d.ts +5 -4
- package/lib/nodes/element/HTMLCollection.d.ts.map +1 -1
- package/lib/nodes/element/HTMLCollection.js +21 -19
- package/lib/nodes/element/HTMLCollection.js.map +1 -1
- package/lib/nodes/element/IElement.d.ts +2 -2
- package/lib/nodes/element/IElement.d.ts.map +1 -1
- package/lib/nodes/html-anchor-element/HTMLAnchorElement.d.ts +8 -2
- package/lib/nodes/html-anchor-element/HTMLAnchorElement.d.ts.map +1 -1
- package/lib/nodes/html-anchor-element/HTMLAnchorElement.js +76 -54
- package/lib/nodes/html-anchor-element/HTMLAnchorElement.js.map +1 -1
- package/lib/nodes/html-anchor-element/HTMLAnchorElementNamedNodeMap.d.ts +3 -2
- package/lib/nodes/html-anchor-element/HTMLAnchorElementNamedNodeMap.d.ts.map +1 -1
- package/lib/nodes/html-anchor-element/HTMLAnchorElementNamedNodeMap.js +9 -8
- package/lib/nodes/html-anchor-element/HTMLAnchorElementNamedNodeMap.js.map +1 -1
- package/lib/nodes/html-button-element/HTMLButtonElement.d.ts +3 -10
- package/lib/nodes/html-button-element/HTMLButtonElement.d.ts.map +1 -1
- package/lib/nodes/html-button-element/HTMLButtonElement.js +31 -30
- package/lib/nodes/html-button-element/HTMLButtonElement.js.map +1 -1
- package/lib/nodes/html-button-element/HTMLButtonElementNamedNodeMap.d.ts +3 -2
- package/lib/nodes/html-button-element/HTMLButtonElementNamedNodeMap.d.ts.map +1 -1
- package/lib/nodes/html-button-element/HTMLButtonElementNamedNodeMap.js +9 -7
- package/lib/nodes/html-button-element/HTMLButtonElementNamedNodeMap.js.map +1 -1
- package/lib/nodes/html-document/HTMLDocument.d.ts +13 -0
- package/lib/nodes/html-document/HTMLDocument.d.ts.map +1 -1
- package/lib/nodes/html-document/HTMLDocument.js +19 -0
- package/lib/nodes/html-document/HTMLDocument.js.map +1 -1
- package/lib/nodes/html-element/HTMLElement.d.ts +3 -2
- package/lib/nodes/html-element/HTMLElement.d.ts.map +1 -1
- package/lib/nodes/html-element/HTMLElement.js +29 -14
- package/lib/nodes/html-element/HTMLElement.js.map +1 -1
- package/lib/nodes/html-element/HTMLElementNamedNodeMap.d.ts +3 -2
- package/lib/nodes/html-element/HTMLElementNamedNodeMap.d.ts.map +1 -1
- package/lib/nodes/html-element/HTMLElementNamedNodeMap.js +9 -6
- package/lib/nodes/html-element/HTMLElementNamedNodeMap.js.map +1 -1
- package/lib/nodes/html-element/HTMLElementUtility.d.ts.map +1 -1
- package/lib/nodes/html-element/HTMLElementUtility.js +11 -10
- package/lib/nodes/html-element/HTMLElementUtility.js.map +1 -1
- package/lib/nodes/html-form-element/HTMLFormControlsCollection.d.ts +5 -4
- package/lib/nodes/html-form-element/HTMLFormControlsCollection.d.ts.map +1 -1
- package/lib/nodes/html-form-element/HTMLFormControlsCollection.js +28 -21
- package/lib/nodes/html-form-element/HTMLFormControlsCollection.js.map +1 -1
- package/lib/nodes/html-form-element/HTMLFormElement.d.ts +4 -3
- package/lib/nodes/html-form-element/HTMLFormElement.d.ts.map +1 -1
- package/lib/nodes/html-form-element/HTMLFormElement.js +10 -8
- package/lib/nodes/html-form-element/HTMLFormElement.js.map +1 -1
- package/lib/nodes/html-iframe-element/HTMLIFrameElement.d.ts +13 -5
- package/lib/nodes/html-iframe-element/HTMLIFrameElement.d.ts.map +1 -1
- package/lib/nodes/html-iframe-element/HTMLIFrameElement.js +42 -11
- package/lib/nodes/html-iframe-element/HTMLIFrameElement.js.map +1 -1
- package/lib/nodes/html-iframe-element/HTMLIFrameElementNamedNodeMap.d.ts +10 -2
- package/lib/nodes/html-iframe-element/HTMLIFrameElementNamedNodeMap.d.ts.map +1 -1
- package/lib/nodes/html-iframe-element/HTMLIFrameElementNamedNodeMap.js +27 -3
- package/lib/nodes/html-iframe-element/HTMLIFrameElementNamedNodeMap.js.map +1 -1
- package/lib/nodes/html-iframe-element/HTMLIFrameElementPageLoader.d.ts +35 -0
- package/lib/nodes/html-iframe-element/HTMLIFrameElementPageLoader.d.ts.map +1 -0
- package/lib/nodes/html-iframe-element/HTMLIFrameElementPageLoader.js +94 -0
- package/lib/nodes/html-iframe-element/HTMLIFrameElementPageLoader.js.map +1 -0
- package/lib/nodes/html-iframe-element/IHTMLIFrameElement.d.ts +3 -3
- package/lib/nodes/html-iframe-element/IHTMLIFrameElement.d.ts.map +1 -1
- package/lib/nodes/html-input-element/HTMLInputElement.d.ts +7 -20
- package/lib/nodes/html-input-element/HTMLInputElement.d.ts.map +1 -1
- package/lib/nodes/html-input-element/HTMLInputElement.js +105 -102
- package/lib/nodes/html-input-element/HTMLInputElement.js.map +1 -1
- package/lib/nodes/html-input-element/HTMLInputElementDateUtility.d.ts +1 -0
- package/lib/nodes/html-input-element/HTMLInputElementDateUtility.d.ts.map +1 -1
- package/lib/nodes/html-input-element/HTMLInputElementDateUtility.js +13 -12
- package/lib/nodes/html-input-element/HTMLInputElementDateUtility.js.map +1 -1
- package/lib/nodes/html-input-element/HTMLInputElementNamedNodeMap.d.ts +3 -2
- package/lib/nodes/html-input-element/HTMLInputElementNamedNodeMap.d.ts.map +1 -1
- package/lib/nodes/html-input-element/HTMLInputElementNamedNodeMap.js +9 -7
- package/lib/nodes/html-input-element/HTMLInputElementNamedNodeMap.js.map +1 -1
- package/lib/nodes/html-label-element/HTMLLabelElement.d.ts.map +1 -1
- package/lib/nodes/html-label-element/HTMLLabelElement.js +2 -1
- package/lib/nodes/html-label-element/HTMLLabelElement.js.map +1 -1
- package/lib/nodes/html-link-element/HTMLLinkElement.d.ts +12 -3
- package/lib/nodes/html-link-element/HTMLLinkElement.d.ts.map +1 -1
- package/lib/nodes/html-link-element/HTMLLinkElement.js +38 -13
- package/lib/nodes/html-link-element/HTMLLinkElement.js.map +1 -1
- package/lib/nodes/html-link-element/HTMLLinkElementNamedNodeMap.d.ts +13 -2
- package/lib/nodes/html-link-element/HTMLLinkElementNamedNodeMap.d.ts.map +1 -1
- package/lib/nodes/html-link-element/HTMLLinkElementNamedNodeMap.js +38 -9
- package/lib/nodes/html-link-element/HTMLLinkElementNamedNodeMap.js.map +1 -1
- package/lib/nodes/html-link-element/HTMLLinkElementStyleSheetLoader.d.ts +27 -0
- package/lib/nodes/html-link-element/HTMLLinkElementStyleSheetLoader.d.ts.map +1 -0
- package/lib/nodes/html-link-element/HTMLLinkElementStyleSheetLoader.js +95 -0
- package/lib/nodes/html-link-element/HTMLLinkElementStyleSheetLoader.js.map +1 -0
- package/lib/nodes/html-option-element/HTMLOptionElement.d.ts +4 -4
- package/lib/nodes/html-option-element/HTMLOptionElement.d.ts.map +1 -1
- package/lib/nodes/html-option-element/HTMLOptionElement.js +20 -16
- package/lib/nodes/html-option-element/HTMLOptionElement.js.map +1 -1
- package/lib/nodes/html-option-element/HTMLOptionElementNamedNodeMap.d.ts +3 -2
- package/lib/nodes/html-option-element/HTMLOptionElementNamedNodeMap.d.ts.map +1 -1
- package/lib/nodes/html-option-element/HTMLOptionElementNamedNodeMap.js +13 -10
- package/lib/nodes/html-option-element/HTMLOptionElementNamedNodeMap.js.map +1 -1
- package/lib/nodes/html-script-element/HTMLScriptElement.d.ts +11 -2
- package/lib/nodes/html-script-element/HTMLScriptElement.d.ts.map +1 -1
- package/lib/nodes/html-script-element/HTMLScriptElement.js +46 -15
- package/lib/nodes/html-script-element/HTMLScriptElement.js.map +1 -1
- package/lib/nodes/html-script-element/HTMLScriptElementNamedNodeMap.d.ts +11 -1
- package/lib/nodes/html-script-element/HTMLScriptElementNamedNodeMap.d.ts.map +1 -1
- package/lib/nodes/html-script-element/HTMLScriptElementNamedNodeMap.js +31 -4
- package/lib/nodes/html-script-element/HTMLScriptElementNamedNodeMap.js.map +1 -1
- package/lib/nodes/html-script-element/HTMLScriptElementScriptLoader.d.ts +26 -0
- package/lib/nodes/html-script-element/HTMLScriptElementScriptLoader.d.ts.map +1 -0
- package/lib/nodes/html-script-element/HTMLScriptElementScriptLoader.js +113 -0
- package/lib/nodes/html-script-element/HTMLScriptElementScriptLoader.js.map +1 -0
- package/lib/nodes/html-select-element/HTMLOptionsCollection.d.ts +1 -1
- package/lib/nodes/html-select-element/HTMLOptionsCollection.d.ts.map +1 -1
- package/lib/nodes/html-select-element/HTMLOptionsCollection.js +23 -8
- package/lib/nodes/html-select-element/HTMLOptionsCollection.js.map +1 -1
- package/lib/nodes/html-select-element/HTMLSelectElement.d.ts +5 -9
- package/lib/nodes/html-select-element/HTMLSelectElement.d.ts.map +1 -1
- package/lib/nodes/html-select-element/HTMLSelectElement.js +44 -39
- package/lib/nodes/html-select-element/HTMLSelectElement.js.map +1 -1
- package/lib/nodes/html-select-element/HTMLSelectElementNamedNodeMap.d.ts +3 -2
- package/lib/nodes/html-select-element/HTMLSelectElementNamedNodeMap.d.ts.map +1 -1
- package/lib/nodes/html-select-element/HTMLSelectElementNamedNodeMap.js +9 -7
- package/lib/nodes/html-select-element/HTMLSelectElementNamedNodeMap.js.map +1 -1
- package/lib/nodes/html-slot-element/HTMLSlotElement.d.ts.map +1 -1
- package/lib/nodes/html-slot-element/HTMLSlotElement.js +4 -3
- package/lib/nodes/html-slot-element/HTMLSlotElement.js.map +1 -1
- package/lib/nodes/html-style-element/HTMLStyleElement.d.ts +2 -1
- package/lib/nodes/html-style-element/HTMLStyleElement.d.ts.map +1 -1
- package/lib/nodes/html-style-element/HTMLStyleElement.js +10 -6
- package/lib/nodes/html-style-element/HTMLStyleElement.js.map +1 -1
- package/lib/nodes/html-template-element/HTMLTemplateElement.d.ts.map +1 -1
- package/lib/nodes/html-template-element/HTMLTemplateElement.js +3 -2
- package/lib/nodes/html-template-element/HTMLTemplateElement.js.map +1 -1
- package/lib/nodes/html-text-area-element/HTMLTextAreaElement.d.ts +6 -8
- package/lib/nodes/html-text-area-element/HTMLTextAreaElement.d.ts.map +1 -1
- package/lib/nodes/html-text-area-element/HTMLTextAreaElement.js +65 -53
- package/lib/nodes/html-text-area-element/HTMLTextAreaElement.js.map +1 -1
- package/lib/nodes/html-text-area-element/HTMLTextAreaElementNamedNodeMap.d.ts +3 -2
- package/lib/nodes/html-text-area-element/HTMLTextAreaElementNamedNodeMap.d.ts.map +1 -1
- package/lib/nodes/html-text-area-element/HTMLTextAreaElementNamedNodeMap.js +9 -7
- package/lib/nodes/html-text-area-element/HTMLTextAreaElementNamedNodeMap.js.map +1 -1
- package/lib/nodes/html-unknown-element/HTMLUnknownElement.d.ts +3 -2
- package/lib/nodes/html-unknown-element/HTMLUnknownElement.d.ts.map +1 -1
- package/lib/nodes/html-unknown-element/HTMLUnknownElement.js +50 -34
- package/lib/nodes/html-unknown-element/HTMLUnknownElement.js.map +1 -1
- package/lib/nodes/node/Node.d.ts +12 -11
- package/lib/nodes/node/Node.d.ts.map +1 -1
- package/lib/nodes/node/Node.js +77 -61
- package/lib/nodes/node/Node.js.map +1 -1
- package/lib/nodes/node/NodeUtility.d.ts +1 -1
- package/lib/nodes/node/NodeUtility.d.ts.map +1 -1
- package/lib/nodes/node/NodeUtility.js +54 -47
- package/lib/nodes/node/NodeUtility.js.map +1 -1
- package/lib/nodes/parent-node/ParentNodeUtility.d.ts.map +1 -1
- package/lib/nodes/parent-node/ParentNodeUtility.js +8 -7
- package/lib/nodes/parent-node/ParentNodeUtility.js.map +1 -1
- package/lib/nodes/shadow-root/ShadowRoot.d.ts.map +1 -1
- package/lib/nodes/shadow-root/ShadowRoot.js +4 -3
- package/lib/nodes/shadow-root/ShadowRoot.js.map +1 -1
- package/lib/nodes/svg-element/SVGElement.d.ts +3 -2
- package/lib/nodes/svg-element/SVGElement.d.ts.map +1 -1
- package/lib/nodes/svg-element/SVGElement.js +22 -7
- package/lib/nodes/svg-element/SVGElement.js.map +1 -1
- package/lib/nodes/svg-element/SVGElementNamedNodeMap.d.ts +3 -2
- package/lib/nodes/svg-element/SVGElementNamedNodeMap.d.ts.map +1 -1
- package/lib/nodes/svg-element/SVGElementNamedNodeMap.js +9 -6
- package/lib/nodes/svg-element/SVGElementNamedNodeMap.js.map +1 -1
- package/lib/nodes/text/Text.d.ts +2 -1
- package/lib/nodes/text/Text.d.ts.map +1 -1
- package/lib/nodes/text/Text.js +12 -11
- package/lib/nodes/text/Text.js.map +1 -1
- package/lib/query-selector/QuerySelector.d.ts.map +1 -1
- package/lib/query-selector/QuerySelector.js +9 -8
- package/lib/query-selector/QuerySelector.js.map +1 -1
- package/lib/query-selector/SelectorItem.d.ts.map +1 -1
- package/lib/query-selector/SelectorItem.js +5 -2
- package/lib/query-selector/SelectorItem.js.map +1 -1
- package/lib/range/Range.d.ts +9 -5
- package/lib/range/Range.d.ts.map +1 -1
- package/lib/range/Range.js +206 -186
- package/lib/range/Range.js.map +1 -1
- package/lib/range/RangeUtility.d.ts.map +1 -1
- package/lib/range/RangeUtility.js +2 -1
- package/lib/range/RangeUtility.js.map +1 -1
- package/lib/selection/Selection.d.ts +2 -11
- package/lib/selection/Selection.d.ts.map +1 -1
- package/lib/selection/Selection.js +121 -114
- package/lib/selection/Selection.js.map +1 -1
- package/lib/storage/Storage.d.ts +3 -1
- package/lib/storage/Storage.d.ts.map +1 -1
- package/lib/storage/Storage.js +24 -8
- package/lib/storage/Storage.js.map +1 -1
- package/lib/tree-walker/NodeIterator.d.ts +1 -1
- package/lib/tree-walker/NodeIterator.d.ts.map +1 -1
- package/lib/tree-walker/NodeIterator.js +19 -4
- package/lib/tree-walker/NodeIterator.js.map +1 -1
- package/lib/tree-walker/TreeWalker.d.ts.map +1 -1
- package/lib/tree-walker/TreeWalker.js +5 -4
- package/lib/tree-walker/TreeWalker.js.map +1 -1
- package/lib/url/URL.d.ts.map +1 -1
- package/lib/url/URL.js +2 -1
- package/lib/url/URL.js.map +1 -1
- package/lib/validity-state/ValidityState.d.ts.map +1 -1
- package/lib/validity-state/ValidityState.js +3 -1
- package/lib/validity-state/ValidityState.js.map +1 -1
- package/lib/version.js +1 -1
- package/lib/window/BrowserWindow.d.ts +684 -0
- package/lib/window/BrowserWindow.d.ts.map +1 -0
- package/lib/window/BrowserWindow.js +933 -0
- package/lib/window/BrowserWindow.js.map +1 -0
- package/lib/window/CrossOriginBrowserWindow.d.ts +55 -0
- package/lib/window/CrossOriginBrowserWindow.d.ts.map +1 -0
- package/lib/window/CrossOriginBrowserWindow.js +90 -0
- package/lib/window/CrossOriginBrowserWindow.js.map +1 -0
- package/lib/window/DetachedWindowAPI.d.ts +90 -0
- package/lib/window/DetachedWindowAPI.d.ts.map +1 -0
- package/lib/window/DetachedWindowAPI.js +124 -0
- package/lib/window/DetachedWindowAPI.js.map +1 -0
- package/lib/window/GlobalWindow.d.ts +2 -1
- package/lib/window/GlobalWindow.d.ts.map +1 -1
- package/lib/window/GlobalWindow.js +2 -1
- package/lib/window/GlobalWindow.js.map +1 -1
- package/lib/window/IBrowserWindow.d.ts +554 -0
- package/lib/window/IBrowserWindow.d.ts.map +1 -0
- package/lib/window/IBrowserWindow.js +2 -0
- package/lib/window/IBrowserWindow.js.map +1 -0
- package/lib/window/ICrossOriginBrowserWindow.d.ts +36 -0
- package/lib/window/ICrossOriginBrowserWindow.d.ts.map +1 -0
- package/lib/window/ICrossOriginBrowserWindow.js +2 -0
- package/lib/window/ICrossOriginBrowserWindow.js.map +1 -0
- package/lib/window/IWindow.d.ts +5 -527
- package/lib/window/IWindow.d.ts.map +1 -1
- package/lib/window/VMGlobalPropertyScript.js +1 -1
- package/lib/window/Window.d.ts +18 -639
- package/lib/window/Window.d.ts.map +1 -1
- package/lib/window/Window.js +16 -808
- package/lib/window/Window.js.map +1 -1
- package/lib/window/WindowBrowserSettingsReader.d.ts +29 -0
- package/lib/window/WindowBrowserSettingsReader.d.ts.map +1 -0
- package/lib/window/WindowBrowserSettingsReader.js +54 -0
- package/lib/window/WindowBrowserSettingsReader.js.map +1 -0
- package/lib/window/WindowErrorUtility.d.ts +4 -4
- package/lib/window/WindowErrorUtility.d.ts.map +1 -1
- package/lib/window/WindowErrorUtility.js +2 -2
- package/lib/window/WindowErrorUtility.js.map +1 -1
- package/lib/window/WindowPageOpenUtility.d.ts +30 -0
- package/lib/window/WindowPageOpenUtility.d.ts.map +1 -0
- package/lib/window/WindowPageOpenUtility.js +142 -0
- package/lib/window/WindowPageOpenUtility.js.map +1 -0
- package/lib/xml-http-request/XMLHttpRequest.d.ts +32 -108
- package/lib/xml-http-request/XMLHttpRequest.d.ts.map +1 -1
- package/lib/xml-http-request/XMLHttpRequest.js +242 -665
- package/lib/xml-http-request/XMLHttpRequest.js.map +1 -1
- package/lib/xml-http-request/utilities/XMLHttpRequestResponseDataParser.d.ts +26 -0
- package/lib/xml-http-request/utilities/XMLHttpRequestResponseDataParser.d.ts.map +1 -0
- package/lib/xml-http-request/utilities/XMLHttpRequestResponseDataParser.js +63 -0
- package/lib/xml-http-request/utilities/XMLHttpRequestResponseDataParser.js.map +1 -0
- package/lib/xml-http-request/utilities/XMLHttpRequestResponseTextDecoder.d.ts +15 -0
- package/lib/xml-http-request/utilities/XMLHttpRequestResponseTextDecoder.d.ts.map +1 -0
- package/lib/xml-http-request/utilities/XMLHttpRequestResponseTextDecoder.js +23 -0
- package/lib/xml-http-request/utilities/XMLHttpRequestResponseTextDecoder.js.map +1 -0
- package/lib/xml-parser/XMLParser.d.ts.map +1 -1
- package/lib/xml-parser/XMLParser.js +3 -2
- package/lib/xml-parser/XMLParser.js.map +1 -1
- package/lib/xml-serializer/XMLSerializer.d.ts +1 -11
- package/lib/xml-serializer/XMLSerializer.d.ts.map +1 -1
- package/lib/xml-serializer/XMLSerializer.js +38 -34
- package/lib/xml-serializer/XMLSerializer.js.map +1 -1
- package/package.json +2 -12
- package/src/PropertySymbol.ts +81 -0
- package/src/async-task-manager/AsyncTaskManager.ts +56 -39
- package/src/browser/Browser.ts +106 -0
- package/src/browser/BrowserContext.ts +92 -0
- package/src/browser/BrowserFrame.ts +164 -0
- package/src/browser/BrowserPage.ts +141 -0
- package/src/browser/BrowserSettingsFactory.ts +34 -0
- package/src/browser/DefaultBrowserSettings.ts +32 -0
- package/src/browser/detached-browser/DetachedBrowser.ts +113 -0
- package/src/browser/detached-browser/DetachedBrowserContext.ts +94 -0
- package/src/browser/detached-browser/DetachedBrowserFrame.ts +185 -0
- package/src/browser/detached-browser/DetachedBrowserPage.ts +153 -0
- package/src/browser/enums/BrowserErrorCaptureEnum.ts +10 -0
- package/src/browser/enums/BrowserNavigationCrossOriginPolicyEnum.ts +10 -0
- package/src/browser/types/IBrowser.ts +48 -0
- package/src/browser/types/IBrowserContext.ts +42 -0
- package/src/browser/types/IBrowserFrame.ts +65 -0
- package/src/browser/types/IBrowserPage.ts +69 -0
- package/src/browser/types/IBrowserPageViewport.ts +5 -0
- package/src/browser/types/IBrowserSettings.ts +100 -0
- package/src/browser/types/IGoToOptions.ts +17 -0
- package/src/browser/types/IOptionalBrowserSettings.ts +74 -0
- package/src/browser/types/IReloadOptions.ts +14 -0
- package/src/browser/utilities/BrowserFrameExceptionObserver.ts +99 -0
- package/src/browser/utilities/BrowserFrameFactory.ts +70 -0
- package/src/browser/utilities/BrowserFrameNavigator.ts +179 -0
- package/src/browser/utilities/BrowserFrameScriptEvaluator.ts +22 -0
- package/src/browser/utilities/BrowserFrameURL.ts +40 -0
- package/src/browser/utilities/BrowserFrameValidator.ts +83 -0
- package/src/browser/utilities/BrowserPageUtility.ts +94 -0
- package/src/clipboard/Clipboard.ts +3 -3
- package/src/config/ElementTag.ts +129 -154
- package/src/console/VirtualConsole.ts +55 -55
- package/src/console/VirtualConsolePrinter.ts +13 -13
- package/src/console/types/IVirtualConsolePrinter.ts +1 -1
- package/src/cookie/CookieContainer.ts +72 -0
- package/src/cookie/types/ICookie.ts +16 -0
- package/src/cookie/types/ICookieContainer.ts +26 -0
- package/src/cookie/urilities/CookieExpireUtility.ts +16 -0
- package/src/cookie/urilities/CookieStringUtility.ts +116 -0
- package/src/cookie/urilities/CookieURLUtility.ts +26 -0
- package/src/css/CSSParser.ts +2 -1
- package/src/css/CSSStyleSheet.ts +3 -3
- package/src/css/declaration/AbstractCSSStyleDeclaration.ts +60 -57
- package/src/css/declaration/element-style/CSSStyleDeclarationElementStyle.ts +13 -7
- package/src/css/declaration/measurement-converter/CSSMeasurementConverter.ts +2 -2
- package/src/css/rules/CSSFontFaceRule.ts +8 -7
- package/src/css/rules/CSSKeyframeRule.ts +8 -7
- package/src/css/rules/CSSStyleRule.ts +8 -7
- package/src/custom-element/CustomElementRegistry.ts +16 -10
- package/src/dom-implementation/DOMImplementation.ts +11 -12
- package/src/dom-parser/DOMParser.ts +18 -26
- package/src/dom-token-list/DOMTokenList.ts +21 -20
- package/src/event/Event.ts +19 -15
- package/src/event/EventTarget.ts +61 -41
- package/src/event/IUIEventInit.ts +2 -2
- package/src/event/UIEvent.ts +2 -2
- package/src/event/events/IMessageEventInit.ts +2 -2
- package/src/event/events/MessageEvent.ts +2 -2
- package/src/fetch/AbortController.ts +2 -1
- package/src/fetch/AbortSignal.ts +2 -1
- package/src/fetch/Fetch.ts +378 -243
- package/src/fetch/Headers.ts +16 -15
- package/src/fetch/Request.ts +65 -52
- package/src/fetch/ResourceFetch.ts +45 -15
- package/src/fetch/Response.ts +107 -68
- package/src/fetch/SyncFetch.ts +558 -0
- package/src/fetch/cache/preflight/ICachablePreflightRequest.ts +7 -0
- package/src/fetch/cache/preflight/ICachablePreflightResponse.ts +7 -0
- package/src/fetch/cache/preflight/ICachedPreflightResponse.ts +5 -0
- package/src/fetch/cache/preflight/IPreflightResponseCache.ts +33 -0
- package/src/fetch/cache/preflight/PreflightResponseCache.ts +94 -0
- package/src/fetch/cache/response/CachedResponseStateEnum.ts +5 -0
- package/src/fetch/cache/response/ICachableRequest.ts +7 -0
- package/src/fetch/cache/response/ICachableResponse.ts +10 -0
- package/src/fetch/cache/response/ICachedResponse.ts +36 -0
- package/src/fetch/cache/response/IResponseCache.ts +34 -0
- package/src/fetch/cache/response/ResponseCache.ts +221 -0
- package/src/fetch/certificate/FetchHTTPSCertificate.ts +52 -0
- package/src/fetch/multipart/MultipartFormDataParser.ts +44 -5
- package/src/fetch/types/ISyncResponse.ts +16 -0
- package/src/fetch/utilities/FetchBodyUtility.ts +19 -11
- package/src/fetch/utilities/FetchCORSUtility.ts +10 -1
- package/src/fetch/utilities/FetchRequestHeaderUtility.ts +94 -2
- package/src/fetch/utilities/FetchRequestReferrerUtility.ts +74 -57
- package/src/fetch/utilities/FetchRequestValidationUtility.ts +48 -2
- package/src/fetch/utilities/FetchResponseHeaderUtility.ts +47 -0
- package/src/fetch/utilities/FetchResponseRedirectUtility.ts +27 -0
- package/src/fetch/utilities/SyncFetchScriptBuilder.ts +71 -0
- package/src/file/Blob.ts +9 -8
- package/src/file/FileReader.ts +25 -28
- package/src/form-data/FormData.ts +25 -20
- package/src/history/History.ts +4 -4
- package/src/index.ts +288 -260
- package/src/location/Location.ts +16 -28
- package/src/match-media/MediaQueryItem.ts +13 -6
- package/src/match-media/MediaQueryList.ts +33 -25
- package/src/match-media/MediaQueryParser.ts +2 -2
- package/src/mutation-observer/MutationListener.ts +80 -4
- package/src/mutation-observer/MutationObserver.ts +71 -18
- package/src/mutation-observer/MutationRecord.ts +9 -0
- package/src/named-node-map/NamedNodeMap.ts +18 -17
- package/src/navigator/Navigator.ts +6 -5
- package/src/nodes/character-data/CharacterData.ts +20 -17
- package/src/nodes/child-node/ChildNodeUtility.ts +4 -3
- package/src/nodes/document/Document.ts +130 -116
- package/src/nodes/document/DocumentReadyStateManager.ts +4 -4
- package/src/nodes/document/IDocument.ts +4 -2
- package/src/nodes/document/NodeCreationOwnerDocument.ts +14 -0
- package/src/nodes/document-fragment/DocumentFragment.ts +11 -10
- package/src/nodes/element/Dataset.ts +2 -1
- package/src/nodes/element/Element.ts +70 -67
- package/src/nodes/element/ElementNamedNodeMap.ts +81 -58
- package/src/nodes/element/ElementUtility.ts +30 -11
- package/src/nodes/element/HTMLCollection.ts +20 -19
- package/src/nodes/element/IElement.ts +2 -2
- package/src/nodes/html-anchor-element/HTMLAnchorElement.ts +81 -53
- package/src/nodes/html-anchor-element/HTMLAnchorElementNamedNodeMap.ts +11 -10
- package/src/nodes/html-button-element/HTMLButtonElement.ts +39 -32
- package/src/nodes/html-button-element/HTMLButtonElementNamedNodeMap.ts +18 -17
- package/src/nodes/html-document/HTMLDocument.ts +26 -1
- package/src/nodes/html-element/HTMLElement.ts +15 -13
- package/src/nodes/html-element/HTMLElementNamedNodeMap.ts +12 -7
- package/src/nodes/html-element/HTMLElementUtility.ts +11 -10
- package/src/nodes/html-form-element/HTMLFormControlsCollection.ts +27 -21
- package/src/nodes/html-form-element/HTMLFormElement.ts +9 -8
- package/src/nodes/html-iframe-element/HTMLIFrameElement.ts +36 -12
- package/src/nodes/html-iframe-element/HTMLIFrameElementNamedNodeMap.ts +15 -4
- package/src/nodes/html-iframe-element/HTMLIFrameElementPageLoader.ts +106 -0
- package/src/nodes/html-iframe-element/IHTMLIFrameElement.ts +3 -3
- package/src/nodes/html-input-element/HTMLInputElement.ts +83 -74
- package/src/nodes/html-input-element/HTMLInputElementDateUtility.ts +15 -13
- package/src/nodes/html-input-element/HTMLInputElementNamedNodeMap.ts +18 -17
- package/src/nodes/html-label-element/HTMLLabelElement.ts +2 -1
- package/src/nodes/html-link-element/HTMLLinkElement.ts +34 -11
- package/src/nodes/html-link-element/HTMLLinkElementNamedNodeMap.ts +36 -10
- package/src/nodes/html-link-element/HTMLLinkElementStyleSheetLoader.ts +102 -0
- package/src/nodes/html-option-element/HTMLOptionElement.ts +20 -17
- package/src/nodes/html-option-element/HTMLOptionElementNamedNodeMap.ts +20 -11
- package/src/nodes/html-script-element/HTMLScriptElement.ts +49 -14
- package/src/nodes/html-script-element/HTMLScriptElementNamedNodeMap.ts +21 -4
- package/src/nodes/html-script-element/HTMLScriptElementScriptLoader.ts +126 -0
- package/src/nodes/html-select-element/HTMLOptionsCollection.ts +8 -8
- package/src/nodes/html-select-element/HTMLSelectElement.ts +34 -26
- package/src/nodes/html-select-element/HTMLSelectElementNamedNodeMap.ts +18 -17
- package/src/nodes/html-slot-element/HTMLSlotElement.ts +4 -3
- package/src/nodes/html-style-element/HTMLStyleElement.ts +6 -5
- package/src/nodes/html-template-element/HTMLTemplateElement.ts +3 -2
- package/src/nodes/html-text-area-element/HTMLTextAreaElement.ts +56 -49
- package/src/nodes/html-text-area-element/HTMLTextAreaElementNamedNodeMap.ts +18 -17
- package/src/nodes/html-unknown-element/HTMLUnknownElement.ts +49 -34
- package/src/nodes/node/Node.ts +77 -61
- package/src/nodes/node/NodeUtility.ts +62 -53
- package/src/nodes/parent-node/ParentNodeUtility.ts +8 -7
- package/src/nodes/shadow-root/ShadowRoot.ts +4 -3
- package/src/nodes/svg-element/SVGElement.ts +7 -6
- package/src/nodes/svg-element/SVGElementNamedNodeMap.ts +12 -7
- package/src/nodes/text/Text.ts +12 -11
- package/src/query-selector/QuerySelector.ts +18 -8
- package/src/query-selector/SelectorItem.ts +5 -2
- package/src/range/Range.ts +249 -191
- package/src/range/RangeUtility.ts +2 -1
- package/src/selection/Selection.ts +100 -99
- package/src/storage/Storage.ts +9 -7
- package/src/tree-walker/NodeIterator.ts +4 -4
- package/src/tree-walker/TreeWalker.ts +5 -4
- package/src/url/URL.ts +2 -1
- package/src/validity-state/ValidityState.ts +3 -1
- package/src/window/BrowserWindow.ts +1107 -0
- package/src/window/CrossOriginBrowserWindow.ts +102 -0
- package/src/window/DetachedWindowAPI.ts +126 -0
- package/src/window/GlobalWindow.ts +2 -1
- package/src/window/IBrowserWindow.ts +578 -0
- package/src/window/ICrossOriginBrowserWindow.ts +40 -0
- package/src/window/IWindow.ts +6 -539
- package/src/window/VMGlobalPropertyScript.ts +1 -1
- package/src/window/Window.ts +30 -1004
- package/src/window/WindowBrowserSettingsReader.ts +55 -0
- package/src/window/WindowErrorUtility.ts +8 -10
- package/src/window/WindowPageOpenUtility.ts +188 -0
- package/src/xml-http-request/XMLHttpRequest.ts +249 -831
- package/src/xml-http-request/utilities/XMLHttpRequestResponseDataParser.ts +75 -0
- package/src/xml-http-request/utilities/XMLHttpRequestResponseTextDecoder.ts +26 -0
- package/src/xml-parser/XMLParser.ts +3 -2
- package/src/xml-serializer/XMLSerializer.ts +19 -15
- package/vitest.config.ts +2 -1
- package/.eslintrc.cjs +0 -174
- package/cjs/cookie/Cookie.cjs +0 -119
- package/cjs/cookie/Cookie.cjs.map +0 -1
- package/cjs/cookie/Cookie.d.ts +0 -43
- package/cjs/cookie/Cookie.d.ts.map +0 -1
- package/cjs/cookie/CookieJar.cjs +0 -76
- package/cjs/cookie/CookieJar.cjs.map +0 -1
- package/cjs/cookie/CookieJar.d.ts +0 -26
- package/cjs/cookie/CookieJar.d.ts.map +0 -1
- package/cjs/cookie/CookieSameSiteEnum.cjs.map +0 -1
- package/cjs/cookie/CookieSameSiteEnum.d.ts.map +0 -1
- package/cjs/nodes/html-iframe-element/HTMLIFrameUtility.cjs +0 -75
- package/cjs/nodes/html-iframe-element/HTMLIFrameUtility.cjs.map +0 -1
- package/cjs/nodes/html-iframe-element/HTMLIFrameUtility.d.ts +0 -13
- package/cjs/nodes/html-iframe-element/HTMLIFrameUtility.d.ts.map +0 -1
- package/cjs/nodes/html-iframe-element/IFrameCrossOriginWindow.cjs +0 -47
- package/cjs/nodes/html-iframe-element/IFrameCrossOriginWindow.cjs.map +0 -1
- package/cjs/nodes/html-iframe-element/IFrameCrossOriginWindow.d.ts +0 -30
- package/cjs/nodes/html-iframe-element/IFrameCrossOriginWindow.d.ts.map +0 -1
- package/cjs/nodes/html-link-element/HTMLLinkElementUtility.cjs +0 -61
- package/cjs/nodes/html-link-element/HTMLLinkElementUtility.cjs.map +0 -1
- package/cjs/nodes/html-link-element/HTMLLinkElementUtility.d.ts +0 -15
- package/cjs/nodes/html-link-element/HTMLLinkElementUtility.d.ts.map +0 -1
- package/cjs/nodes/html-script-element/HTMLScriptElementUtility.cjs +0 -93
- package/cjs/nodes/html-script-element/HTMLScriptElementUtility.cjs.map +0 -1
- package/cjs/nodes/html-script-element/HTMLScriptElementUtility.d.ts +0 -15
- package/cjs/nodes/html-script-element/HTMLScriptElementUtility.d.ts.map +0 -1
- package/cjs/window/IHappyDOMOptions.cjs.map +0 -1
- package/cjs/window/IHappyDOMOptions.d.ts +0 -35
- package/cjs/window/IHappyDOMOptions.d.ts.map +0 -1
- package/cjs/window/IHappyDOMSettings.cjs.map +0 -1
- package/cjs/window/IHappyDOMSettings.d.ts +0 -20
- package/cjs/window/IHappyDOMSettings.d.ts.map +0 -1
- package/lib/cookie/Cookie.d.ts +0 -43
- package/lib/cookie/Cookie.d.ts.map +0 -1
- package/lib/cookie/Cookie.js +0 -113
- package/lib/cookie/Cookie.js.map +0 -1
- package/lib/cookie/CookieJar.d.ts +0 -26
- package/lib/cookie/CookieJar.d.ts.map +0 -1
- package/lib/cookie/CookieJar.js +0 -70
- package/lib/cookie/CookieJar.js.map +0 -1
- package/lib/cookie/CookieSameSiteEnum.d.ts.map +0 -1
- package/lib/cookie/CookieSameSiteEnum.js.map +0 -1
- package/lib/nodes/html-iframe-element/HTMLIFrameUtility.d.ts +0 -13
- package/lib/nodes/html-iframe-element/HTMLIFrameUtility.d.ts.map +0 -1
- package/lib/nodes/html-iframe-element/HTMLIFrameUtility.js +0 -69
- package/lib/nodes/html-iframe-element/HTMLIFrameUtility.js.map +0 -1
- package/lib/nodes/html-iframe-element/IFrameCrossOriginWindow.d.ts +0 -30
- package/lib/nodes/html-iframe-element/IFrameCrossOriginWindow.d.ts.map +0 -1
- package/lib/nodes/html-iframe-element/IFrameCrossOriginWindow.js +0 -41
- package/lib/nodes/html-iframe-element/IFrameCrossOriginWindow.js.map +0 -1
- package/lib/nodes/html-link-element/HTMLLinkElementUtility.d.ts +0 -15
- package/lib/nodes/html-link-element/HTMLLinkElementUtility.d.ts.map +0 -1
- package/lib/nodes/html-link-element/HTMLLinkElementUtility.js +0 -55
- package/lib/nodes/html-link-element/HTMLLinkElementUtility.js.map +0 -1
- package/lib/nodes/html-script-element/HTMLScriptElementUtility.d.ts +0 -15
- package/lib/nodes/html-script-element/HTMLScriptElementUtility.d.ts.map +0 -1
- package/lib/nodes/html-script-element/HTMLScriptElementUtility.js +0 -87
- package/lib/nodes/html-script-element/HTMLScriptElementUtility.js.map +0 -1
- package/lib/window/IHappyDOMOptions.d.ts +0 -35
- package/lib/window/IHappyDOMOptions.d.ts.map +0 -1
- package/lib/window/IHappyDOMOptions.js +0 -2
- package/lib/window/IHappyDOMOptions.js.map +0 -1
- package/lib/window/IHappyDOMSettings.d.ts +0 -20
- package/lib/window/IHappyDOMSettings.d.ts.map +0 -1
- package/lib/window/IHappyDOMSettings.js +0 -2
- package/lib/window/IHappyDOMSettings.js.map +0 -1
- package/src/cookie/Cookie.ts +0 -125
- package/src/cookie/CookieJar.ts +0 -81
- package/src/nodes/html-iframe-element/HTMLIFrameUtility.ts +0 -86
- package/src/nodes/html-iframe-element/IFrameCrossOriginWindow.ts +0 -60
- package/src/nodes/html-link-element/HTMLLinkElementUtility.ts +0 -64
- package/src/nodes/html-script-element/HTMLScriptElementUtility.ts +0 -99
- package/src/window/IHappyDOMOptions.ts +0 -35
- package/src/window/IHappyDOMSettings.ts +0 -19
- /package/cjs/cookie/{CookieSameSiteEnum.cjs → enums/CookieSameSiteEnum.cjs} +0 -0
- /package/cjs/cookie/{CookieSameSiteEnum.d.ts → enums/CookieSameSiteEnum.d.ts} +0 -0
- /package/lib/cookie/{CookieSameSiteEnum.d.ts → enums/CookieSameSiteEnum.d.ts} +0 -0
- /package/lib/cookie/{CookieSameSiteEnum.js → enums/CookieSameSiteEnum.js} +0 -0
- /package/src/cookie/{CookieSameSiteEnum.ts → enums/CookieSameSiteEnum.ts} +0 -0
@@ -1,8 +1,5 @@
|
|
1
|
-
import FS from 'fs';
|
2
|
-
import ChildProcess from 'child_process';
|
3
|
-
import HTTP from 'http';
|
4
|
-
import HTTPS from 'https';
|
5
1
|
import XMLHttpRequestEventTarget from './XMLHttpRequestEventTarget.js';
|
2
|
+
import * as PropertySymbol from '../PropertySymbol.js';
|
6
3
|
import XMLHttpRequestReadyStateEnum from './XMLHttpRequestReadyStateEnum.js';
|
7
4
|
import Event from '../event/Event.js';
|
8
5
|
import IDocument from '../nodes/document/IDocument.js';
|
@@ -10,46 +7,22 @@ import Blob from '../file/Blob.js';
|
|
10
7
|
import XMLHttpRequestUpload from './XMLHttpRequestUpload.js';
|
11
8
|
import DOMException from '../exception/DOMException.js';
|
12
9
|
import DOMExceptionNameEnum from '../exception/DOMExceptionNameEnum.js';
|
13
|
-
import { UrlObject } from 'url';
|
14
|
-
import URL from '../url/URL.js';
|
15
|
-
import XMLHttpRequestURLUtility from './utilities/XMLHttpRequestURLUtility.js';
|
16
|
-
import ProgressEvent from '../event/events/ProgressEvent.js';
|
17
10
|
import XMLHttpResponseTypeEnum from './XMLHttpResponseTypeEnum.js';
|
18
|
-
import XMLHttpRequestCertificate from './XMLHttpRequestCertificate.js';
|
19
|
-
import XMLHttpRequestSyncRequestScriptBuilder from './utilities/XMLHttpRequestSyncRequestScriptBuilder.js';
|
20
|
-
import IconvLite from 'iconv-lite';
|
21
11
|
import ErrorEvent from '../event/events/ErrorEvent.js';
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
'date',
|
37
|
-
'expect',
|
38
|
-
'host',
|
39
|
-
'keep-alive',
|
40
|
-
'origin',
|
41
|
-
'referer',
|
42
|
-
'te',
|
43
|
-
'trailer',
|
44
|
-
'transfer-encoding',
|
45
|
-
'upgrade',
|
46
|
-
'via'
|
47
|
-
];
|
48
|
-
|
49
|
-
// These request methods are not allowed
|
50
|
-
const FORBIDDEN_REQUEST_METHODS = ['TRACE', 'TRACK', 'CONNECT'];
|
51
|
-
// Match Content-Type header charset
|
52
|
-
const CONTENT_TYPE_ENCODING_REGEXP = /charset=([^;]*)/i;
|
12
|
+
import IBrowserFrame from '../browser/types/IBrowserFrame.js';
|
13
|
+
import IBrowserWindow from '../window/IBrowserWindow.js';
|
14
|
+
import Headers from '../fetch/Headers.js';
|
15
|
+
import Fetch from '../fetch/Fetch.js';
|
16
|
+
import SyncFetch from '../fetch/SyncFetch.js';
|
17
|
+
import Request from '../fetch/Request.js';
|
18
|
+
import IResponse from '../fetch/types/IResponse.js';
|
19
|
+
import ISyncResponse from '../fetch/types/ISyncResponse.js';
|
20
|
+
import AbortController from '../fetch/AbortController.js';
|
21
|
+
import ProgressEvent from '../event/events/ProgressEvent.js';
|
22
|
+
import NodeTypeEnum from '../nodes/node/NodeTypeEnum.js';
|
23
|
+
import IRequestBody from '../fetch/types/IRequestBody.js';
|
24
|
+
import XMLHttpRequestResponseDataParser from './utilities/XMLHttpRequestResponseDataParser.js';
|
25
|
+
import FetchRequestHeaderUtility from '../fetch/utilities/FetchRequestHeaderUtility.js';
|
53
26
|
|
54
27
|
/**
|
55
28
|
* XMLHttpRequest.
|
@@ -58,9 +31,6 @@ const CONTENT_TYPE_ENCODING_REGEXP = /charset=([^;]*)/i;
|
|
58
31
|
* https://github.com/mjwwit/node-XMLHttpRequest/blob/master/lib/XMLHttpRequest.js
|
59
32
|
*/
|
60
33
|
export default class XMLHttpRequest extends XMLHttpRequestEventTarget {
|
61
|
-
// Owner document is set by a sub-class in the Window constructor
|
62
|
-
public static _ownerDocument: IDocument = null;
|
63
|
-
|
64
34
|
// Constants
|
65
35
|
public static UNSENT = XMLHttpRequestReadyStateEnum.unsent;
|
66
36
|
public static OPENED = XMLHttpRequestReadyStateEnum.opened;
|
@@ -70,65 +40,31 @@ export default class XMLHttpRequest extends XMLHttpRequestEventTarget {
|
|
70
40
|
|
71
41
|
// Public properties
|
72
42
|
public upload: XMLHttpRequestUpload = new XMLHttpRequestUpload();
|
43
|
+
public withCredentials = false;
|
73
44
|
|
74
45
|
// Private properties
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
readyState: XMLHttpRequestReadyStateEnum;
|
86
|
-
asyncRequest: HTTP.ClientRequest;
|
87
|
-
asyncTaskID: number;
|
88
|
-
requestHeaders: object;
|
89
|
-
status: number;
|
90
|
-
statusText: string;
|
91
|
-
send: boolean;
|
92
|
-
error: boolean;
|
93
|
-
aborted: boolean;
|
94
|
-
} = {
|
95
|
-
incommingMessage: null,
|
96
|
-
response: null,
|
97
|
-
responseType: '',
|
98
|
-
responseText: '',
|
99
|
-
responseXML: null,
|
100
|
-
responseURL: '',
|
101
|
-
readyState: XMLHttpRequestReadyStateEnum.unsent,
|
102
|
-
asyncRequest: null,
|
103
|
-
asyncTaskID: null,
|
104
|
-
requestHeaders: {},
|
105
|
-
status: null,
|
106
|
-
statusText: null,
|
107
|
-
send: false,
|
108
|
-
error: false,
|
109
|
-
aborted: false
|
110
|
-
};
|
111
|
-
|
112
|
-
private _settings: {
|
113
|
-
method: string;
|
114
|
-
url: string;
|
115
|
-
async: boolean;
|
116
|
-
user: string;
|
117
|
-
password: string;
|
118
|
-
} = {
|
119
|
-
method: null,
|
120
|
-
url: null,
|
121
|
-
async: true,
|
122
|
-
user: null,
|
123
|
-
password: null
|
124
|
-
};
|
46
|
+
#browserFrame: IBrowserFrame;
|
47
|
+
#window: IBrowserWindow;
|
48
|
+
#async = true;
|
49
|
+
#abortController: AbortController | null = null;
|
50
|
+
#aborted = false;
|
51
|
+
#request: Request | null = null;
|
52
|
+
#response: IResponse | ISyncResponse | null = null;
|
53
|
+
#responseType: XMLHttpResponseTypeEnum | '' = '';
|
54
|
+
#responseBody: ArrayBuffer | Blob | IDocument | object | string | null = null;
|
55
|
+
#readyState: XMLHttpRequestReadyStateEnum = XMLHttpRequestReadyStateEnum.unsent;
|
125
56
|
|
126
57
|
/**
|
127
58
|
* Constructor.
|
59
|
+
*
|
60
|
+
* @param injected Injected properties.
|
61
|
+
* @param injected.browserFrame Browser frame.
|
62
|
+
* @param injected.window Window.
|
128
63
|
*/
|
129
|
-
constructor() {
|
64
|
+
constructor(injected: { browserFrame: IBrowserFrame; window: IBrowserWindow }) {
|
130
65
|
super();
|
131
|
-
this
|
66
|
+
this.#browserFrame = injected.browserFrame;
|
67
|
+
this.#window = injected.window;
|
132
68
|
}
|
133
69
|
|
134
70
|
/**
|
@@ -137,7 +73,7 @@ export default class XMLHttpRequest extends XMLHttpRequestEventTarget {
|
|
137
73
|
* @returns Status.
|
138
74
|
*/
|
139
75
|
public get status(): number {
|
140
|
-
return this
|
76
|
+
return this.#response?.status || 0;
|
141
77
|
}
|
142
78
|
|
143
79
|
/**
|
@@ -146,7 +82,7 @@ export default class XMLHttpRequest extends XMLHttpRequestEventTarget {
|
|
146
82
|
* @returns Status text.
|
147
83
|
*/
|
148
84
|
public get statusText(): string {
|
149
|
-
return this
|
85
|
+
return this.#response?.statusText || '';
|
150
86
|
}
|
151
87
|
|
152
88
|
/**
|
@@ -154,26 +90,12 @@ export default class XMLHttpRequest extends XMLHttpRequestEventTarget {
|
|
154
90
|
*
|
155
91
|
* @returns Response.
|
156
92
|
*/
|
157
|
-
public get response(): ArrayBuffer | Blob | IDocument | object | string {
|
158
|
-
|
159
|
-
|
160
|
-
|
161
|
-
/**
|
162
|
-
* Returns the response URL.
|
163
|
-
*
|
164
|
-
* @returns Response URL.
|
165
|
-
*/
|
166
|
-
public get responseURL(): string {
|
167
|
-
return this._state.responseURL;
|
168
|
-
}
|
93
|
+
public get response(): ArrayBuffer | Blob | IDocument | object | string | null {
|
94
|
+
if (!this.#response) {
|
95
|
+
return '';
|
96
|
+
}
|
169
97
|
|
170
|
-
|
171
|
-
* Returns the ready state.
|
172
|
-
*
|
173
|
-
* @returns Ready state.
|
174
|
-
*/
|
175
|
-
public get readyState(): XMLHttpRequestReadyStateEnum {
|
176
|
-
return this._state.readyState;
|
98
|
+
return this.#responseBody;
|
177
99
|
}
|
178
100
|
|
179
101
|
/**
|
@@ -183,13 +105,13 @@ export default class XMLHttpRequest extends XMLHttpRequestEventTarget {
|
|
183
105
|
* @returns The response text.
|
184
106
|
*/
|
185
107
|
public get responseText(): string {
|
186
|
-
if (this.responseType
|
187
|
-
|
108
|
+
if (this.responseType !== XMLHttpResponseTypeEnum.text && this.responseType !== '') {
|
109
|
+
throw new DOMException(
|
110
|
+
`Failed to read the 'responseText' property from 'XMLHttpRequest': The value is only accessible if the object's 'responseType' is '' or 'text' (was '${this.responseType}').`,
|
111
|
+
DOMExceptionNameEnum.invalidStateError
|
112
|
+
);
|
188
113
|
}
|
189
|
-
|
190
|
-
`Failed to read the 'responseText' property from 'XMLHttpRequest': The value is only accessible if the object's 'responseType' is '' or 'text' (was '${this.responseType}').`,
|
191
|
-
DOMExceptionNameEnum.invalidStateError
|
192
|
-
);
|
114
|
+
return <string>this.#responseBody ?? '';
|
193
115
|
}
|
194
116
|
|
195
117
|
/**
|
@@ -199,13 +121,31 @@ export default class XMLHttpRequest extends XMLHttpRequestEventTarget {
|
|
199
121
|
* @returns Response XML.
|
200
122
|
*/
|
201
123
|
public get responseXML(): IDocument {
|
202
|
-
if (this.responseType
|
203
|
-
|
124
|
+
if (this.responseType !== XMLHttpResponseTypeEnum.document && this.responseType !== '') {
|
125
|
+
throw new DOMException(
|
126
|
+
`Failed to read the 'responseXML' property from 'XMLHttpRequest': The value is only accessible if the object's 'responseType' is '' or 'document' (was '${this.responseType}').`,
|
127
|
+
DOMExceptionNameEnum.invalidStateError
|
128
|
+
);
|
204
129
|
}
|
205
|
-
|
206
|
-
|
207
|
-
|
208
|
-
|
130
|
+
return this.responseType === '' ? null : <IDocument>this.#responseBody;
|
131
|
+
}
|
132
|
+
|
133
|
+
/**
|
134
|
+
* Returns the response URL.
|
135
|
+
*
|
136
|
+
* @returns Response URL.
|
137
|
+
*/
|
138
|
+
public get responseURL(): string {
|
139
|
+
return this.#response?.url || '';
|
140
|
+
}
|
141
|
+
|
142
|
+
/**
|
143
|
+
* Returns the ready state.
|
144
|
+
*
|
145
|
+
* @returns Ready state.
|
146
|
+
*/
|
147
|
+
public get readyState(): XMLHttpRequestReadyStateEnum {
|
148
|
+
return this.#readyState;
|
209
149
|
}
|
210
150
|
|
211
151
|
/**
|
@@ -227,13 +167,13 @@ export default class XMLHttpRequest extends XMLHttpRequestEventTarget {
|
|
227
167
|
);
|
228
168
|
}
|
229
169
|
// Sync requests can only have empty string or 'text' as response type.
|
230
|
-
if (!this
|
170
|
+
if (!this.#async) {
|
231
171
|
throw new DOMException(
|
232
172
|
`Failed to set the 'responseType' property on 'XMLHttpRequest': The response type cannot be changed for synchronous requests made from a document.`,
|
233
173
|
DOMExceptionNameEnum.invalidStateError
|
234
174
|
);
|
235
175
|
}
|
236
|
-
this
|
176
|
+
this.#responseType = type;
|
237
177
|
}
|
238
178
|
|
239
179
|
/**
|
@@ -242,7 +182,7 @@ export default class XMLHttpRequest extends XMLHttpRequestEventTarget {
|
|
242
182
|
* @returns Response type.
|
243
183
|
*/
|
244
184
|
public get responseType(): XMLHttpResponseTypeEnum | '' {
|
245
|
-
return this
|
185
|
+
return this.#responseType;
|
246
186
|
}
|
247
187
|
|
248
188
|
/**
|
@@ -255,19 +195,6 @@ export default class XMLHttpRequest extends XMLHttpRequestEventTarget {
|
|
255
195
|
* @param [password] Password for basic authentication (optional).
|
256
196
|
*/
|
257
197
|
public open(method: string, url: string, async = true, user?: string, password?: string): void {
|
258
|
-
this.abort();
|
259
|
-
|
260
|
-
this._state.aborted = false;
|
261
|
-
this._state.error = false;
|
262
|
-
|
263
|
-
const upperMethod = method.toUpperCase();
|
264
|
-
|
265
|
-
// Check for valid request method
|
266
|
-
if (FORBIDDEN_REQUEST_METHODS.includes(upperMethod)) {
|
267
|
-
throw new DOMException('Request method not allowed', DOMExceptionNameEnum.securityError);
|
268
|
-
}
|
269
|
-
|
270
|
-
// Check responseType.
|
271
198
|
if (!async && !!this.responseType && this.responseType !== XMLHttpResponseTypeEnum.text) {
|
272
199
|
throw new DOMException(
|
273
200
|
`Failed to execute 'open' on 'XMLHttpRequest': Synchronous requests from a document must not set a response type.`,
|
@@ -275,25 +202,35 @@ export default class XMLHttpRequest extends XMLHttpRequestEventTarget {
|
|
275
202
|
);
|
276
203
|
}
|
277
204
|
|
278
|
-
|
279
|
-
|
280
|
-
|
281
|
-
|
282
|
-
|
283
|
-
password: password || null
|
284
|
-
};
|
205
|
+
const headers = new Headers();
|
206
|
+
if (user) {
|
207
|
+
const authBuffer = Buffer.from(`${user}:${password || ''}`);
|
208
|
+
headers.set('Authorization', 'Basic ' + authBuffer.toString('base64'));
|
209
|
+
}
|
285
210
|
|
286
|
-
this
|
211
|
+
this.#async = async;
|
212
|
+
this.#aborted = false;
|
213
|
+
this.#response = null;
|
214
|
+
this.#responseBody = null;
|
215
|
+
this.#abortController = new AbortController();
|
216
|
+
this.#request = new this.#window.Request(url, {
|
217
|
+
method,
|
218
|
+
headers,
|
219
|
+
signal: this.#abortController.signal,
|
220
|
+
credentials: this.withCredentials ? 'include' : 'omit'
|
221
|
+
});
|
222
|
+
|
223
|
+
this.#readyState = XMLHttpRequestReadyStateEnum.opened;
|
287
224
|
}
|
288
225
|
|
289
226
|
/**
|
290
227
|
* Sets a header for the request.
|
291
228
|
*
|
292
|
-
* @param
|
293
|
-
* @param value Header value
|
229
|
+
* @param name Header name.
|
230
|
+
* @param value Header value.
|
294
231
|
* @returns Header added.
|
295
232
|
*/
|
296
|
-
public setRequestHeader(
|
233
|
+
public setRequestHeader(name: string, value: string): boolean {
|
297
234
|
if (this.readyState !== XMLHttpRequestReadyStateEnum.opened) {
|
298
235
|
throw new DOMException(
|
299
236
|
`Failed to execute 'setRequestHeader' on 'XMLHttpRequest': The object's state must be OPENED.`,
|
@@ -301,20 +238,12 @@ export default class XMLHttpRequest extends XMLHttpRequestEventTarget {
|
|
301
238
|
);
|
302
239
|
}
|
303
240
|
|
304
|
-
|
305
|
-
|
306
|
-
if (FORBIDDEN_REQUEST_HEADERS.includes(lowerHeader)) {
|
241
|
+
// TODO: Use FetchRequestHeaderUtility.removeForbiddenHeaders() instead.
|
242
|
+
if (FetchRequestHeaderUtility.isHeaderForbidden(name)) {
|
307
243
|
return false;
|
308
244
|
}
|
309
245
|
|
310
|
-
|
311
|
-
throw new DOMException(
|
312
|
-
`Failed to execute 'setRequestHeader' on 'XMLHttpRequest': Request is in progress.`,
|
313
|
-
DOMExceptionNameEnum.invalidStateError
|
314
|
-
);
|
315
|
-
}
|
316
|
-
|
317
|
-
this._state.requestHeaders[lowerHeader] = value;
|
246
|
+
this.#request.headers.set(name, value);
|
318
247
|
|
319
248
|
return true;
|
320
249
|
}
|
@@ -325,24 +254,8 @@ export default class XMLHttpRequest extends XMLHttpRequestEventTarget {
|
|
325
254
|
* @param header header Name of header to get.
|
326
255
|
* @returns string Text of the header or null if it doesn't exist.
|
327
256
|
*/
|
328
|
-
public getResponseHeader(header: string): string {
|
329
|
-
|
330
|
-
|
331
|
-
// Cookie headers are excluded for security reasons as per spec.
|
332
|
-
if (
|
333
|
-
typeof header === 'string' &&
|
334
|
-
header !== 'set-cookie' &&
|
335
|
-
header !== 'set-cookie2' &&
|
336
|
-
this.readyState > XMLHttpRequestReadyStateEnum.opened &&
|
337
|
-
this._state.incommingMessage.headers[lowerHeader] &&
|
338
|
-
!this._state.error
|
339
|
-
) {
|
340
|
-
return Array.isArray(this._state.incommingMessage.headers[lowerHeader])
|
341
|
-
? (<string[]>this._state.incommingMessage.headers[lowerHeader]).join(', ')
|
342
|
-
: <string>this._state.incommingMessage.headers[lowerHeader];
|
343
|
-
}
|
344
|
-
|
345
|
-
return null;
|
257
|
+
public getResponseHeader(header: string): string | null {
|
258
|
+
return this.#response?.headers.get(header) ?? null;
|
346
259
|
}
|
347
260
|
|
348
261
|
/**
|
@@ -351,16 +264,16 @@ export default class XMLHttpRequest extends XMLHttpRequestEventTarget {
|
|
351
264
|
* @returns A string with all response headers separated by CR+LF.
|
352
265
|
*/
|
353
266
|
public getAllResponseHeaders(): string {
|
354
|
-
if (this
|
267
|
+
if (!this.#response) {
|
355
268
|
return '';
|
356
269
|
}
|
357
270
|
|
358
271
|
const result = [];
|
359
272
|
|
360
|
-
for (const name of
|
361
|
-
|
362
|
-
if (
|
363
|
-
result.push(`${name}: ${
|
273
|
+
for (const [name, value] of this.#response?.headers) {
|
274
|
+
const lowerName = name.toLowerCase();
|
275
|
+
if (lowerName !== 'set-cookie' && lowerName !== 'set-cookie2') {
|
276
|
+
result.push(`${name}: ${value}`);
|
364
277
|
}
|
365
278
|
}
|
366
279
|
|
@@ -370,9 +283,9 @@ export default class XMLHttpRequest extends XMLHttpRequestEventTarget {
|
|
370
283
|
/**
|
371
284
|
* Sends the request to the server.
|
372
285
|
*
|
373
|
-
* @param
|
286
|
+
* @param body Optional data to send as request body.
|
374
287
|
*/
|
375
|
-
public send(
|
288
|
+
public send(body?: IDocument | IRequestBody): void {
|
376
289
|
if (this.readyState != XMLHttpRequestReadyStateEnum.opened) {
|
377
290
|
throw new DOMException(
|
378
291
|
`Failed to execute 'send' on 'XMLHttpRequest': Connection must be opened before send() is called.`,
|
@@ -380,116 +293,21 @@ export default class XMLHttpRequest extends XMLHttpRequestEventTarget {
|
|
380
293
|
);
|
381
294
|
}
|
382
295
|
|
383
|
-
|
384
|
-
|
385
|
-
|
386
|
-
|
387
|
-
)
|
388
|
-
|
389
|
-
|
390
|
-
const { location } = this._ownerDocument.defaultView;
|
391
|
-
|
392
|
-
const url = new URL(this._settings.url, location);
|
393
|
-
|
394
|
-
// Security check.
|
395
|
-
if (url.protocol === 'http:' && location.protocol === 'https:') {
|
396
|
-
throw new DOMException(
|
397
|
-
`Mixed Content: The page at '${location.href}' was loaded over HTTPS, but requested an insecure XMLHttpRequest endpoint '${url.href}'. This request has been blocked; the content must be served over HTTPS.`,
|
398
|
-
DOMExceptionNameEnum.securityError
|
399
|
-
);
|
400
|
-
}
|
401
|
-
|
402
|
-
// Load files off the local filesystem (file://)
|
403
|
-
if (XMLHttpRequestURLUtility.isLocal(url)) {
|
404
|
-
if (!this._ownerDocument.defaultView.happyDOM.settings.enableFileSystemHttpRequests) {
|
405
|
-
throw new DOMException(
|
406
|
-
'File system is disabled by default for security reasons. To enable it, set the "window.happyDOM.settings.enableFileSystemHttpRequests" option to true.',
|
407
|
-
DOMExceptionNameEnum.securityError
|
408
|
-
);
|
409
|
-
}
|
410
|
-
|
411
|
-
if (this._settings.method !== 'GET') {
|
412
|
-
throw new DOMException(
|
413
|
-
'Failed to send local file system request. Only "GET" method is supported for local file system requests.',
|
414
|
-
DOMExceptionNameEnum.notSupportedError
|
415
|
-
);
|
416
|
-
}
|
417
|
-
|
418
|
-
if (this._settings.async) {
|
419
|
-
this._sendLocalAsyncRequest(url).catch((error) => this._onError(error));
|
420
|
-
} else {
|
421
|
-
this._sendLocalSyncRequest(url);
|
422
|
-
}
|
423
|
-
return;
|
424
|
-
}
|
425
|
-
|
426
|
-
// TODO: CORS check.
|
427
|
-
|
428
|
-
const host = XMLHttpRequestURLUtility.getHost(url);
|
429
|
-
const ssl = XMLHttpRequestURLUtility.isSSL(url);
|
430
|
-
|
431
|
-
// Default to port 80. If accessing localhost on another port be sure
|
432
|
-
// To use http://localhost:port/path
|
433
|
-
const port = Number(url.port) || (ssl ? 443 : 80);
|
434
|
-
// Add query string if one is used
|
435
|
-
const uri = url.pathname + (url.search ? url.search : '');
|
436
|
-
|
437
|
-
// Set the Host header or the server may reject the request
|
438
|
-
this._state.requestHeaders['host'] = host;
|
439
|
-
if (!((ssl && port === 443) || port === 80)) {
|
440
|
-
this._state.requestHeaders['host'] += ':' + url.port;
|
441
|
-
}
|
442
|
-
|
443
|
-
// Set Basic Auth if necessary
|
444
|
-
if (this._settings.user) {
|
445
|
-
this._settings.password ??= '';
|
446
|
-
const authBuffer = Buffer.from(this._settings.user + ':' + this._settings.password);
|
447
|
-
this._state.requestHeaders['authorization'] = 'Basic ' + authBuffer.toString('base64');
|
448
|
-
}
|
449
|
-
// Set the Content-Length header if method is POST
|
450
|
-
switch (this._settings.method) {
|
451
|
-
case 'GET':
|
452
|
-
case 'HEAD':
|
453
|
-
data = null;
|
454
|
-
break;
|
455
|
-
case 'POST':
|
456
|
-
this._state.requestHeaders['content-type'] ??= 'text/plain;charset=UTF-8';
|
457
|
-
if (data) {
|
458
|
-
this._state.requestHeaders['content-length'] = Buffer.isBuffer(data)
|
459
|
-
? data.length
|
460
|
-
: Buffer.byteLength(data);
|
461
|
-
} else {
|
462
|
-
this._state.requestHeaders['content-length'] = 0;
|
463
|
-
}
|
464
|
-
break;
|
465
|
-
|
466
|
-
default:
|
467
|
-
break;
|
468
|
-
}
|
469
|
-
|
470
|
-
const options: HTTPS.RequestOptions = {
|
471
|
-
host: host,
|
472
|
-
port: port,
|
473
|
-
path: uri,
|
474
|
-
method: this._settings.method,
|
475
|
-
headers: { ...this._getDefaultRequestHeaders(), ...this._state.requestHeaders },
|
476
|
-
agent: false,
|
477
|
-
rejectUnauthorized: true
|
478
|
-
};
|
479
|
-
|
480
|
-
if (ssl) {
|
481
|
-
options.key = XMLHttpRequestCertificate.key;
|
482
|
-
options.cert = XMLHttpRequestCertificate.cert;
|
296
|
+
// When body is a Document, serialize it to a string.
|
297
|
+
if (
|
298
|
+
typeof body === 'object' &&
|
299
|
+
body !== null &&
|
300
|
+
(<IDocument>body).nodeType === NodeTypeEnum.documentNode
|
301
|
+
) {
|
302
|
+
body = (<IDocument>body).documentElement.outerHTML;
|
483
303
|
}
|
484
304
|
|
485
|
-
|
486
|
-
|
487
|
-
|
488
|
-
|
489
|
-
if (this._settings.async) {
|
490
|
-
this._sendAsyncRequest(options, ssl, data).catch((error) => this._onError(error));
|
305
|
+
if (this.#async) {
|
306
|
+
this.#sendAsync(<IRequestBody>body).catch((error) => {
|
307
|
+
throw error;
|
308
|
+
});
|
491
309
|
} else {
|
492
|
-
this
|
310
|
+
this.#sendSync(<IRequestBody>body);
|
493
311
|
}
|
494
312
|
}
|
495
313
|
|
@@ -497,581 +315,181 @@ export default class XMLHttpRequest extends XMLHttpRequestEventTarget {
|
|
497
315
|
* Aborts a request.
|
498
316
|
*/
|
499
317
|
public abort(): void {
|
500
|
-
if (this
|
501
|
-
|
502
|
-
this._state.asyncRequest = null;
|
503
|
-
}
|
504
|
-
|
505
|
-
this._state.status = null;
|
506
|
-
this._state.statusText = null;
|
507
|
-
this._state.requestHeaders = {};
|
508
|
-
this._state.responseText = '';
|
509
|
-
this._state.responseXML = null;
|
510
|
-
this._state.aborted = true;
|
511
|
-
this._state.error = true;
|
512
|
-
|
513
|
-
if (
|
514
|
-
this.readyState !== XMLHttpRequestReadyStateEnum.unsent &&
|
515
|
-
(this.readyState !== XMLHttpRequestReadyStateEnum.opened || this._state.send) &&
|
516
|
-
this.readyState !== XMLHttpRequestReadyStateEnum.done
|
517
|
-
) {
|
518
|
-
this._state.send = false;
|
519
|
-
this._setState(XMLHttpRequestReadyStateEnum.done);
|
520
|
-
}
|
521
|
-
this._state.readyState = XMLHttpRequestReadyStateEnum.unsent;
|
522
|
-
|
523
|
-
if (this._state.asyncTaskID !== null) {
|
524
|
-
this._ownerDocument.defaultView.happyDOM.asyncTaskManager.endTask(this._state.asyncTaskID);
|
318
|
+
if (this.#aborted) {
|
319
|
+
return;
|
525
320
|
}
|
321
|
+
this.#aborted = true;
|
322
|
+
this.#abortController.abort();
|
526
323
|
}
|
527
324
|
|
528
325
|
/**
|
529
|
-
*
|
326
|
+
* Sends the request to the server asynchronously.
|
530
327
|
*
|
531
|
-
* @param
|
328
|
+
* @param body Optional data to send as request body.
|
532
329
|
*/
|
533
|
-
|
534
|
-
|
535
|
-
this.
|
536
|
-
|
537
|
-
) {
|
538
|
-
return;
|
539
|
-
}
|
330
|
+
async #sendAsync(body?: IRequestBody): Promise<void> {
|
331
|
+
const taskID = this.#browserFrame[PropertySymbol.asyncTaskManager].startTask(() =>
|
332
|
+
this.abort()
|
333
|
+
);
|
540
334
|
|
541
|
-
this
|
335
|
+
this.#readyState = XMLHttpRequestReadyStateEnum.loading;
|
542
336
|
|
543
|
-
|
544
|
-
|
545
|
-
|
546
|
-
|
547
|
-
|
548
|
-
|
337
|
+
this.dispatchEvent(new Event('readystatechange'));
|
338
|
+
this.dispatchEvent(new Event('loadstart'));
|
339
|
+
|
340
|
+
if (body) {
|
341
|
+
this.#request = new this.#window.Request(this.#request.url, {
|
342
|
+
method: this.#request.method,
|
343
|
+
headers: this.#request.headers,
|
344
|
+
signal: this.#abortController.signal,
|
345
|
+
credentials: this.#request.credentials,
|
346
|
+
body
|
347
|
+
});
|
549
348
|
}
|
550
349
|
|
551
|
-
|
552
|
-
|
350
|
+
this.#abortController.signal.addEventListener('abort', () => {
|
351
|
+
this.#aborted = true;
|
352
|
+
this.#readyState = XMLHttpRequestReadyStateEnum.unsent;
|
353
|
+
this.dispatchEvent(new Event('abort'));
|
354
|
+
this.dispatchEvent(new Event('loadend'));
|
355
|
+
this.dispatchEvent(new Event('readystatechange'));
|
356
|
+
this.#browserFrame[PropertySymbol.asyncTaskManager].endTask(taskID);
|
357
|
+
});
|
553
358
|
|
554
|
-
|
555
|
-
|
556
|
-
|
557
|
-
|
359
|
+
const onError = (error: Error): void => {
|
360
|
+
if (error instanceof DOMException && error.name === DOMExceptionNameEnum.abortError) {
|
361
|
+
if (this.#aborted) {
|
362
|
+
return;
|
363
|
+
}
|
364
|
+
this.#readyState = XMLHttpRequestReadyStateEnum.unsent;
|
365
|
+
this.dispatchEvent(new Event('abort'));
|
558
366
|
} else {
|
559
|
-
|
367
|
+
this.#readyState = XMLHttpRequestReadyStateEnum.done;
|
368
|
+
this.dispatchEvent(new ErrorEvent('error', { error, message: error.message }));
|
560
369
|
}
|
561
|
-
|
562
|
-
this.dispatchEvent(fire);
|
563
370
|
this.dispatchEvent(new Event('loadend'));
|
564
|
-
|
565
|
-
|
566
|
-
|
567
|
-
/**
|
568
|
-
* Default request headers.
|
569
|
-
*
|
570
|
-
* @returns Default request headers.
|
571
|
-
*/
|
572
|
-
private _getDefaultRequestHeaders(): { [key: string]: string } {
|
573
|
-
const { location, navigator, document } = this._ownerDocument.defaultView;
|
574
|
-
|
575
|
-
return {
|
576
|
-
accept: '*/*',
|
577
|
-
referer: location.href,
|
578
|
-
'user-agent': navigator.userAgent,
|
579
|
-
cookie: document._cookie.getCookieString(location, false)
|
371
|
+
this.dispatchEvent(new Event('readystatechange'));
|
372
|
+
this.#browserFrame[PropertySymbol.asyncTaskManager].endTask(taskID);
|
580
373
|
};
|
581
|
-
}
|
582
|
-
|
583
|
-
/**
|
584
|
-
* Sends a synchronous request.
|
585
|
-
*
|
586
|
-
* @param options
|
587
|
-
* @param ssl
|
588
|
-
* @param data
|
589
|
-
*/
|
590
|
-
private _sendSyncRequest(options: HTTPS.RequestOptions, ssl: boolean, data?: string): void {
|
591
|
-
const scriptString = XMLHttpRequestSyncRequestScriptBuilder.getScript(options, ssl, data);
|
592
374
|
|
593
|
-
|
594
|
-
|
595
|
-
|
596
|
-
|
375
|
+
const fetch = new Fetch({
|
376
|
+
browserFrame: this.#browserFrame,
|
377
|
+
window: this.#window,
|
378
|
+
url: this.#request.url,
|
379
|
+
init: this.#request
|
597
380
|
});
|
598
381
|
|
599
|
-
|
600
|
-
|
601
|
-
|
602
|
-
|
603
|
-
|
604
|
-
const { error, data: response } = JSON.parse(content.toString());
|
605
|
-
|
606
|
-
if (error) {
|
607
|
-
this._onError(error);
|
382
|
+
try {
|
383
|
+
this.#response = await fetch.send();
|
384
|
+
} catch (error) {
|
385
|
+
onError(error);
|
608
386
|
return;
|
609
387
|
}
|
610
388
|
|
611
|
-
|
612
|
-
|
613
|
-
|
614
|
-
|
615
|
-
|
616
|
-
|
617
|
-
|
618
|
-
|
619
|
-
|
620
|
-
|
621
|
-
|
622
|
-
|
623
|
-
|
624
|
-
|
625
|
-
|
626
|
-
|
627
|
-
|
628
|
-
|
629
|
-
|
630
|
-
|
631
|
-
|
632
|
-
|
633
|
-
|
634
|
-
|
635
|
-
|
636
|
-
|
637
|
-
|
638
|
-
|
639
|
-
|
640
|
-
this._ownerDocument.defaultView.location
|
641
|
-
);
|
642
|
-
ssl = redirectUrl.protocol === 'https:';
|
643
|
-
this._settings.url = redirectUrl.href;
|
644
|
-
// Recursive call.
|
645
|
-
this._sendSyncRequest(
|
646
|
-
Object.assign(options, {
|
647
|
-
host: redirectUrl.host,
|
648
|
-
path: redirectUrl.pathname + (redirectUrl.search ?? ''),
|
649
|
-
port: redirectUrl.port || (ssl ? 443 : 80),
|
650
|
-
method: this._state.incommingMessage.statusCode === 303 ? 'GET' : this._settings.method,
|
651
|
-
headers: Object.assign(options.headers, {
|
652
|
-
referer: redirectUrl.origin,
|
653
|
-
host: redirectUrl.host
|
654
|
-
})
|
655
|
-
}),
|
656
|
-
ssl,
|
657
|
-
data
|
658
|
-
);
|
659
|
-
}
|
660
|
-
|
661
|
-
this._setState(XMLHttpRequestReadyStateEnum.done);
|
662
|
-
}
|
663
|
-
}
|
664
|
-
|
665
|
-
/**
|
666
|
-
* Sends an async request.
|
667
|
-
*
|
668
|
-
* @param options
|
669
|
-
* @param ssl
|
670
|
-
* @param data
|
671
|
-
*/
|
672
|
-
private _sendAsyncRequest(
|
673
|
-
options: HTTPS.RequestOptions,
|
674
|
-
ssl: boolean,
|
675
|
-
data?: string
|
676
|
-
): Promise<void> {
|
677
|
-
return new Promise((resolve) => {
|
678
|
-
// Starts async task in Happy DOM
|
679
|
-
this._state.asyncTaskID = this._ownerDocument.defaultView.happyDOM.asyncTaskManager.startTask(
|
680
|
-
this.abort.bind(this)
|
681
|
-
);
|
682
|
-
|
683
|
-
// Use the proper protocol
|
684
|
-
const sendRequest = ssl ? HTTPS.request : HTTP.request;
|
685
|
-
|
686
|
-
// Request is being sent, set send flag
|
687
|
-
this._state.send = true;
|
688
|
-
|
689
|
-
// As per spec, this is called here for historical reasons.
|
690
|
-
this.dispatchEvent(new Event('readystatechange'));
|
691
|
-
|
692
|
-
// Create the request
|
693
|
-
this._state.asyncRequest = sendRequest(
|
694
|
-
<object>options,
|
695
|
-
async (response: HTTP.IncomingMessage) => {
|
696
|
-
await this._onAsyncResponse(response, options, ssl, data);
|
697
|
-
|
698
|
-
resolve();
|
699
|
-
|
700
|
-
// Ends async task in Happy DOM
|
701
|
-
this._ownerDocument.defaultView.happyDOM.asyncTaskManager.endTask(
|
702
|
-
this._state.asyncTaskID
|
703
|
-
);
|
389
|
+
this.#readyState = XMLHttpRequestReadyStateEnum.headersRecieved;
|
390
|
+
|
391
|
+
this.dispatchEvent(new Event('readystatechange'));
|
392
|
+
|
393
|
+
const contentLength = this.#response.headers.get('Content-Length');
|
394
|
+
const contentLengthNumber =
|
395
|
+
contentLength !== null && !isNaN(Number(contentLength)) ? Number(contentLength) : null;
|
396
|
+
let loaded = 0;
|
397
|
+
let data = Buffer.from([]);
|
398
|
+
|
399
|
+
if (this.#response.body) {
|
400
|
+
let eventError: Error;
|
401
|
+
try {
|
402
|
+
for await (const chunk of this.#response.body) {
|
403
|
+
data = Buffer.concat([data, typeof chunk === 'string' ? Buffer.from(chunk) : chunk]);
|
404
|
+
loaded += chunk.length;
|
405
|
+
// We need to re-throw the error as we don't want it to be caught by the try/catch.
|
406
|
+
try {
|
407
|
+
this.dispatchEvent(
|
408
|
+
new ProgressEvent('progress', {
|
409
|
+
lengthComputable: contentLengthNumber !== null,
|
410
|
+
loaded,
|
411
|
+
total: contentLengthNumber !== null ? contentLengthNumber : 0
|
412
|
+
})
|
413
|
+
);
|
414
|
+
} catch (error) {
|
415
|
+
eventError = error;
|
416
|
+
throw error;
|
417
|
+
}
|
704
418
|
}
|
705
|
-
)
|
706
|
-
|
707
|
-
|
708
|
-
|
709
|
-
|
710
|
-
// Ends async task in Happy DOM
|
711
|
-
this._ownerDocument.defaultView.happyDOM.asyncTaskManager.endTask(this._state.asyncTaskID);
|
712
|
-
});
|
713
|
-
|
714
|
-
// Node 0.4 and later won't accept empty data. Make sure it's needed.
|
715
|
-
if (data) {
|
716
|
-
this._state.asyncRequest.write(data);
|
717
|
-
}
|
718
|
-
|
719
|
-
this._state.asyncRequest.end();
|
720
|
-
|
721
|
-
this.dispatchEvent(new Event('loadstart'));
|
722
|
-
});
|
723
|
-
}
|
724
|
-
|
725
|
-
/**
|
726
|
-
* Handles an async response.
|
727
|
-
*
|
728
|
-
* @param options Options.
|
729
|
-
* @param ssl SSL.
|
730
|
-
* @param data Data.
|
731
|
-
* @param response Response.
|
732
|
-
* @returns Promise.
|
733
|
-
*/
|
734
|
-
private _onAsyncResponse(
|
735
|
-
response: HTTP.IncomingMessage,
|
736
|
-
options: HTTPS.RequestOptions,
|
737
|
-
ssl: boolean,
|
738
|
-
data?: string
|
739
|
-
): Promise<void> {
|
740
|
-
return new Promise((resolve) => {
|
741
|
-
// Set response var to the response we got back
|
742
|
-
// This is so it remains accessable outside this scope
|
743
|
-
this._state.incommingMessage = response;
|
744
|
-
|
745
|
-
// Set Cookies
|
746
|
-
this._setCookies(this._state.incommingMessage.headers);
|
747
|
-
|
748
|
-
// Check for redirect
|
749
|
-
// @TODO Prevent looped redirects
|
750
|
-
if (
|
751
|
-
this._state.incommingMessage.statusCode === 301 ||
|
752
|
-
this._state.incommingMessage.statusCode === 302 ||
|
753
|
-
this._state.incommingMessage.statusCode === 303 ||
|
754
|
-
this._state.incommingMessage.statusCode === 307
|
755
|
-
) {
|
756
|
-
// TODO: redirect url protocol change.
|
757
|
-
// Change URL to the redirect location
|
758
|
-
this._settings.url = this._state.incommingMessage.headers.location;
|
759
|
-
// Parse the new URL.
|
760
|
-
const redirectUrl = new URL(this._settings.url, this._ownerDocument.defaultView.location);
|
761
|
-
this._settings.url = redirectUrl.href;
|
762
|
-
ssl = redirectUrl.protocol === 'https:';
|
763
|
-
// Issue the new request
|
764
|
-
this._sendAsyncRequest(
|
765
|
-
{
|
766
|
-
...options,
|
767
|
-
host: redirectUrl.hostname,
|
768
|
-
port: redirectUrl.port,
|
769
|
-
path: redirectUrl.pathname + (redirectUrl.search ?? ''),
|
770
|
-
method: this._state.incommingMessage.statusCode === 303 ? 'GET' : this._settings.method,
|
771
|
-
headers: { ...options.headers, referer: redirectUrl.origin, host: redirectUrl.host }
|
772
|
-
},
|
773
|
-
ssl,
|
774
|
-
data
|
775
|
-
);
|
776
|
-
// @TODO Check if an XHR event needs to be fired here
|
419
|
+
} catch (error) {
|
420
|
+
if (error === eventError) {
|
421
|
+
throw error;
|
422
|
+
}
|
423
|
+
onError(error);
|
777
424
|
return;
|
778
425
|
}
|
426
|
+
}
|
779
427
|
|
780
|
-
|
781
|
-
|
782
|
-
this
|
783
|
-
|
784
|
-
|
785
|
-
|
786
|
-
|
787
|
-
|
788
|
-
// Make sure there's some data
|
789
|
-
if (chunk) {
|
790
|
-
tempResponse = Buffer.concat([tempResponse, Buffer.from(chunk)]);
|
791
|
-
}
|
792
|
-
// Don't emit state changes if the connection has been aborted.
|
793
|
-
if (this._state.send) {
|
794
|
-
this._setState(XMLHttpRequestReadyStateEnum.loading);
|
795
|
-
}
|
796
|
-
|
797
|
-
const contentLength = Number(this._state.incommingMessage.headers['content-length']);
|
798
|
-
this.dispatchEvent(
|
799
|
-
new ProgressEvent('progress', {
|
800
|
-
lengthComputable: !isNaN(contentLength),
|
801
|
-
loaded: tempResponse.length,
|
802
|
-
total: isNaN(contentLength) ? 0 : contentLength
|
803
|
-
})
|
804
|
-
);
|
805
|
-
});
|
806
|
-
|
807
|
-
this._state.incommingMessage.on('end', () => {
|
808
|
-
if (this._state.send) {
|
809
|
-
// The sendFlag needs to be set before setState is called. Otherwise, if we are chaining callbacks
|
810
|
-
// There can be a timing issue (the callback is called and a new call is made before the flag is reset).
|
811
|
-
this._state.send = false;
|
812
|
-
|
813
|
-
// Set response according to responseType.
|
814
|
-
const { response, responseXML, responseText } = this._parseResponseData(tempResponse);
|
815
|
-
this._state.response = response;
|
816
|
-
this._state.responseXML = responseXML;
|
817
|
-
this._state.responseText = responseText;
|
818
|
-
this._state.responseURL = new URL(
|
819
|
-
this._settings.url,
|
820
|
-
this._ownerDocument.defaultView.location
|
821
|
-
).href;
|
822
|
-
// Discard the 'end' event if the connection has been aborted
|
823
|
-
this._setState(XMLHttpRequestReadyStateEnum.done);
|
824
|
-
}
|
428
|
+
this.#responseBody = XMLHttpRequestResponseDataParser.parse({
|
429
|
+
window: this.#window,
|
430
|
+
responseType: this.#responseType,
|
431
|
+
data,
|
432
|
+
contentType:
|
433
|
+
this.#response.headers.get('Content-Type') || this.#request.headers.get('Content-Type')
|
434
|
+
});
|
435
|
+
this.#readyState = XMLHttpRequestReadyStateEnum.done;
|
825
436
|
|
826
|
-
|
827
|
-
|
437
|
+
this.dispatchEvent(new Event('readystatechange'));
|
438
|
+
this.dispatchEvent(new Event('load'));
|
439
|
+
this.dispatchEvent(new Event('loadend'));
|
828
440
|
|
829
|
-
|
830
|
-
this._onError(error);
|
831
|
-
resolve();
|
832
|
-
});
|
833
|
-
});
|
441
|
+
this.#browserFrame[PropertySymbol.asyncTaskManager].endTask(taskID);
|
834
442
|
}
|
835
443
|
|
836
444
|
/**
|
837
|
-
* Sends
|
445
|
+
* Sends the request to the server synchronously.
|
838
446
|
*
|
839
|
-
* @param
|
840
|
-
* @returns Promise.
|
447
|
+
* @param body Optional data to send as request body.
|
841
448
|
*/
|
842
|
-
|
843
|
-
|
844
|
-
this.
|
845
|
-
|
846
|
-
|
847
|
-
|
848
|
-
|
849
|
-
|
850
|
-
|
851
|
-
} catch (error) {
|
852
|
-
this._onError(error);
|
853
|
-
// Release async task.
|
854
|
-
this._ownerDocument.defaultView.happyDOM.asyncTaskManager.endTask(this._state.asyncTaskID);
|
855
|
-
return;
|
449
|
+
#sendSync(body?: IRequestBody): void {
|
450
|
+
if (body) {
|
451
|
+
this.#request = new this.#window.Request(this.#request.url, {
|
452
|
+
method: this.#request.method,
|
453
|
+
headers: this.#request.headers,
|
454
|
+
signal: this.#abortController.signal,
|
455
|
+
credentials: this.#request.credentials,
|
456
|
+
body
|
457
|
+
});
|
856
458
|
}
|
857
459
|
|
858
|
-
|
859
|
-
|
860
|
-
// @TODO: set state headersRecieved first.
|
861
|
-
this._setState(XMLHttpRequestReadyStateEnum.loading);
|
862
|
-
this.dispatchEvent(
|
863
|
-
new ProgressEvent('progress', {
|
864
|
-
lengthComputable: true,
|
865
|
-
loaded: dataLength,
|
866
|
-
total: dataLength
|
867
|
-
})
|
868
|
-
);
|
869
|
-
|
870
|
-
if (data) {
|
871
|
-
this._parseLocalRequestData(url, data);
|
872
|
-
}
|
460
|
+
this.#readyState = XMLHttpRequestReadyStateEnum.loading;
|
873
461
|
|
874
|
-
|
875
|
-
|
876
|
-
|
462
|
+
const fetch = new SyncFetch({
|
463
|
+
browserFrame: this.#browserFrame,
|
464
|
+
window: this.#window,
|
465
|
+
url: this.#request.url,
|
466
|
+
init: this.#request
|
467
|
+
});
|
877
468
|
|
878
|
-
/**
|
879
|
-
* Sends a local file system synchronous request.
|
880
|
-
*
|
881
|
-
* @param url URL.
|
882
|
-
*/
|
883
|
-
private _sendLocalSyncRequest(url: UrlObject): void {
|
884
|
-
let data: Buffer;
|
885
469
|
try {
|
886
|
-
|
470
|
+
this.#response = fetch.send();
|
887
471
|
} catch (error) {
|
888
|
-
this.
|
472
|
+
this.#readyState = XMLHttpRequestReadyStateEnum.done;
|
473
|
+
this.dispatchEvent(new ErrorEvent('error', { error, message: error.message }));
|
474
|
+
this.dispatchEvent(new Event('loadend'));
|
475
|
+
this.dispatchEvent(new Event('readystatechange'));
|
889
476
|
return;
|
890
477
|
}
|
891
478
|
|
892
|
-
|
893
|
-
this._setState(XMLHttpRequestReadyStateEnum.loading);
|
894
|
-
|
895
|
-
if (data) {
|
896
|
-
this._parseLocalRequestData(url, data);
|
897
|
-
}
|
898
|
-
|
899
|
-
this._setState(XMLHttpRequestReadyStateEnum.done);
|
900
|
-
}
|
901
|
-
|
902
|
-
/**
|
903
|
-
* Parses local request data.
|
904
|
-
*
|
905
|
-
* @param url URL.
|
906
|
-
* @param data Data.
|
907
|
-
*/
|
908
|
-
private _parseLocalRequestData(url: UrlObject, data: Buffer): void {
|
909
|
-
// Manually set the response headers.
|
910
|
-
this._state.incommingMessage = {
|
911
|
-
statusCode: 200,
|
912
|
-
headers: {
|
913
|
-
'content-length': String(data.length),
|
914
|
-
'content-type': XMLHttpRequestURLUtility.getMimeTypeFromExt(url)
|
915
|
-
// @TODO: 'last-modified':
|
916
|
-
}
|
917
|
-
};
|
918
|
-
|
919
|
-
this._state.status = this._state.incommingMessage.statusCode;
|
920
|
-
this._state.statusText = 'OK';
|
921
|
-
|
922
|
-
const { response, responseXML, responseText } = this._parseResponseData(data);
|
923
|
-
this._state.response = response;
|
924
|
-
this._state.responseXML = responseXML;
|
925
|
-
this._state.responseText = responseText;
|
926
|
-
this._state.responseURL = new URL(
|
927
|
-
this._settings.url,
|
928
|
-
this._ownerDocument.defaultView.location
|
929
|
-
).href;
|
479
|
+
this.#readyState = XMLHttpRequestReadyStateEnum.headersRecieved;
|
930
480
|
|
931
|
-
this.
|
932
|
-
|
933
|
-
|
934
|
-
|
935
|
-
|
936
|
-
|
937
|
-
* @param data Data.
|
938
|
-
* @returns Parsed response.
|
939
|
-
*/
|
940
|
-
private _parseResponseData(data: Buffer): {
|
941
|
-
response: ArrayBuffer | Blob | IDocument | object | string;
|
942
|
-
responseText: string;
|
943
|
-
responseXML: IDocument;
|
944
|
-
} {
|
945
|
-
switch (this.responseType) {
|
946
|
-
case XMLHttpResponseTypeEnum.arraybuffer:
|
947
|
-
// See: https://github.com/jsdom/jsdom/blob/c3c421c364510e053478520500bccafd97f5fa39/lib/jsdom/living/helpers/binary-data.js
|
948
|
-
const newAB = new ArrayBuffer(data.length);
|
949
|
-
const view = new Uint8Array(newAB);
|
950
|
-
view.set(data);
|
951
|
-
return {
|
952
|
-
response: view,
|
953
|
-
responseText: null,
|
954
|
-
responseXML: null
|
955
|
-
};
|
956
|
-
case XMLHttpResponseTypeEnum.blob:
|
957
|
-
try {
|
958
|
-
return {
|
959
|
-
response: new this._ownerDocument.defaultView.Blob([new Uint8Array(data)], {
|
960
|
-
type: this.getResponseHeader('content-type') || ''
|
961
|
-
}),
|
962
|
-
responseText: null,
|
963
|
-
responseXML: null
|
964
|
-
};
|
965
|
-
} catch (e) {
|
966
|
-
return { response: null, responseText: null, responseXML: null };
|
967
|
-
}
|
968
|
-
case XMLHttpResponseTypeEnum.document:
|
969
|
-
const window = this._ownerDocument.defaultView;
|
970
|
-
const happyDOMSettings = window.happyDOM.settings;
|
971
|
-
let response: IDocument;
|
972
|
-
|
973
|
-
// Temporary disables unsecure features.
|
974
|
-
window.happyDOM.settings = {
|
975
|
-
...happyDOMSettings,
|
976
|
-
enableFileSystemHttpRequests: false,
|
977
|
-
disableJavaScriptEvaluation: true,
|
978
|
-
disableCSSFileLoading: true,
|
979
|
-
disableJavaScriptFileLoading: true
|
980
|
-
};
|
981
|
-
|
982
|
-
const domParser = new window.DOMParser();
|
983
|
-
|
984
|
-
try {
|
985
|
-
response = domParser.parseFromString(this._decodeResponseText(data), 'text/xml');
|
986
|
-
} catch (e) {
|
987
|
-
return { response: null, responseText: null, responseXML: null };
|
988
|
-
}
|
989
|
-
|
990
|
-
// Restores unsecure features.
|
991
|
-
window.happyDOM.settings = happyDOMSettings;
|
992
|
-
|
993
|
-
return { response, responseText: null, responseXML: response };
|
994
|
-
case XMLHttpResponseTypeEnum.json:
|
995
|
-
try {
|
996
|
-
return {
|
997
|
-
response: JSON.parse(this._decodeResponseText(data)),
|
998
|
-
responseText: null,
|
999
|
-
responseXML: null
|
1000
|
-
};
|
1001
|
-
} catch (e) {
|
1002
|
-
return { response: null, responseText: null, responseXML: null };
|
1003
|
-
}
|
1004
|
-
case XMLHttpResponseTypeEnum.text:
|
1005
|
-
case '':
|
1006
|
-
default:
|
1007
|
-
const responseText = this._decodeResponseText(data);
|
1008
|
-
return {
|
1009
|
-
response: responseText,
|
1010
|
-
responseText: responseText,
|
1011
|
-
responseXML: null
|
1012
|
-
};
|
1013
|
-
}
|
1014
|
-
}
|
1015
|
-
|
1016
|
-
/**
|
1017
|
-
* Set Cookies from response headers.
|
1018
|
-
*
|
1019
|
-
* @param headers Headers.
|
1020
|
-
*/
|
1021
|
-
private _setCookies(
|
1022
|
-
headers: { [name: string]: string | string[] } | HTTP.IncomingHttpHeaders
|
1023
|
-
): void {
|
1024
|
-
const originURL = new URL(this._settings.url, this._ownerDocument.defaultView.location);
|
1025
|
-
for (const header of ['set-cookie', 'set-cookie2']) {
|
1026
|
-
if (Array.isArray(headers[header])) {
|
1027
|
-
for (const cookie of headers[header]) {
|
1028
|
-
this._ownerDocument.defaultView.document._cookie.addCookieString(originURL, cookie);
|
1029
|
-
}
|
1030
|
-
} else if (headers[header]) {
|
1031
|
-
this._ownerDocument.defaultView.document._cookie.addCookieString(
|
1032
|
-
originURL,
|
1033
|
-
<string>headers[header]
|
1034
|
-
);
|
1035
|
-
}
|
1036
|
-
}
|
1037
|
-
}
|
1038
|
-
|
1039
|
-
/**
|
1040
|
-
* Called when an error is encountered to deal with it.
|
1041
|
-
*
|
1042
|
-
* @param error Error.
|
1043
|
-
*/
|
1044
|
-
private _onError(error: Error | string): void {
|
1045
|
-
this._state.status = 0;
|
1046
|
-
this._state.statusText = error.toString();
|
1047
|
-
this._state.responseText = error instanceof Error ? error.stack : '';
|
1048
|
-
this._state.error = true;
|
1049
|
-
this._setState(XMLHttpRequestReadyStateEnum.done);
|
1050
|
-
|
1051
|
-
const errorObject = error instanceof Error ? error : new Error(error);
|
1052
|
-
const event = new ErrorEvent('error', {
|
1053
|
-
message: errorObject.message,
|
1054
|
-
error: errorObject
|
481
|
+
this.#responseBody = XMLHttpRequestResponseDataParser.parse({
|
482
|
+
window: this.#window,
|
483
|
+
responseType: this.#responseType,
|
484
|
+
data: this.#response.body,
|
485
|
+
contentType:
|
486
|
+
this.#response.headers.get('Content-Type') || this.#request.headers.get('Content-Type')
|
1055
487
|
});
|
1056
488
|
|
1057
|
-
this.
|
1058
|
-
this.dispatchEvent(event);
|
1059
|
-
this._ownerDocument.defaultView.dispatchEvent(event);
|
1060
|
-
}
|
489
|
+
this.#readyState = XMLHttpRequestReadyStateEnum.done;
|
1061
490
|
|
1062
|
-
|
1063
|
-
|
1064
|
-
|
1065
|
-
* @param data Data.
|
1066
|
-
* @returns Decoded text.
|
1067
|
-
**/
|
1068
|
-
private _decodeResponseText(data: Buffer): string {
|
1069
|
-
const contextTypeEncodingRegexp = new RegExp(CONTENT_TYPE_ENCODING_REGEXP, 'gi');
|
1070
|
-
// Compatibility with file:// protocol or unpredictable http request.
|
1071
|
-
const contentType =
|
1072
|
-
this.getResponseHeader('content-type') ?? this._state.requestHeaders['content-type'];
|
1073
|
-
const charset = contextTypeEncodingRegexp.exec(contentType);
|
1074
|
-
// Default encoding: utf-8.
|
1075
|
-
return IconvLite.decode(data, charset ? charset[1] : 'utf-8');
|
491
|
+
this.dispatchEvent(new Event('readystatechange'));
|
492
|
+
this.dispatchEvent(new Event('load'));
|
493
|
+
this.dispatchEvent(new Event('loadend'));
|
1076
494
|
}
|
1077
495
|
}
|