From f72d467e66a239b252d842eb33e1e7d557ba79ae Mon Sep 17 00:00:00 2001 From: David Ortner Date: Tue, 3 Feb 2026 00:31:40 +0100 Subject: [PATCH 1/3] BREAKING CHANGE: [#2055] Removes circular dependencies --- .eslintrc.cjs | 15 + .github/workflows/pull_request.yml | 12 +- package-lock.json | 1376 ++++++++++++++++- .../node/lit-element/LitElementComponent.ts | 3 +- .../@happy-dom/jest-environment/src/index.ts | 11 +- .../test/lit-element/LitElementComponent.ts | 3 +- .../server-renderer/src/ServerRenderer.ts | 8 +- .../src/ServerRendererBrowser.ts | 6 +- .../server-renderer/src/ServerRendererPage.ts | 8 +- .../src/ServerRendererPageWorker.ts | 2 +- .../src/ServerRendererServer.ts | 6 +- .../IOptionalServerRendererConfiguration.ts | 6 +- .../src/types/IServerRendererConfiguration.ts | 6 +- .../src/utilities/BrowserWindowPolyfill.ts | 2 +- .../src/utilities/ProcessArgumentsParser.ts | 4 +- .../ServerRendererConfigurationFactory.ts | 4 +- .../server-renderer/test/MockedWorker.ts | 6 +- .../test/ServerRenderer.test.ts | 2 +- .../test/ServerRendererBrowser.test.ts | 2 +- .../test/ServerRendererPage.test.ts | 5 +- .../test/ServerRendererServer.test.ts | 11 +- .../test/utilities/MockedConfiguration.ts | 2 +- .../utilities/ProcessArgumentsParser.test.ts | 2 +- packages/happy-dom/package.json | 6 +- .../async-task-manager/AsyncTaskManager.ts | 2 +- packages/happy-dom/src/browser/Browser.ts | 8 +- .../happy-dom/src/browser/BrowserContext.ts | 12 +- .../happy-dom/src/browser/BrowserFrame.ts | 16 +- packages/happy-dom/src/browser/BrowserPage.ts | 16 +- .../src/browser/BrowserSettingsFactory.ts | 4 +- .../src/browser/DefaultBrowserSettings.ts | 2 +- .../detached-browser/DetachedBrowser.ts | 14 +- .../DetachedBrowserContext.ts | 12 +- .../detached-browser/DetachedBrowserFrame.ts | 18 +- .../detached-browser/DetachedBrowserPage.ts | 16 +- .../happy-dom/src/browser/types/IBrowser.ts | 10 +- .../src/browser/types/IBrowserContext.ts | 14 +- .../src/browser/types/IBrowserFrame.ts | 22 +- .../src/browser/types/IBrowserPage.ts | 18 +- .../src/browser/types/IBrowserSettings.ts | 18 +- .../src/browser/types/IGoToOptions.ts | 6 +- .../browser/types/IOptionalBrowserSettings.ts | 18 +- .../src/browser/types/IReloadOptions.ts | 6 +- .../utilities/BrowserExceptionObserver.ts | 2 +- .../browser/utilities/BrowserFrameFactory.ts | 4 +- .../utilities/BrowserFrameNavigator.ts | 10 +- .../utilities/BrowserFrameScriptEvaluator.ts | 5 +- .../src/browser/utilities/BrowserFrameURL.ts | 2 +- .../utilities/BrowserFrameValidator.ts | 9 +- .../browser/utilities/BrowserPageUtility.ts | 4 +- packages/happy-dom/src/clipboard/Clipboard.ts | 4 +- .../src/config/IHTMLElementTagNameMap.ts | 128 +- .../src/config/ISVGElementTagNameMap.ts | 124 +- .../src/console/IVirtualConsoleLogEntry.ts | 6 +- .../src/console/IVirtualConsolePrinter.ts | 6 +- .../happy-dom/src/console/VirtualConsole.ts | 6 +- .../src/console/VirtualConsolePrinter.ts | 4 +- .../VirtualConsoleLogEntryStringifier.ts | 2 +- .../happy-dom/src/cookie/CookieContainer.ts | 8 +- .../happy-dom/src/cookie/DefaultCookie.ts | 2 +- packages/happy-dom/src/cookie/ICookie.ts | 2 +- .../happy-dom/src/cookie/ICookieContainer.ts | 6 +- .../happy-dom/src/cookie/IOptionalCookie.ts | 2 +- .../cookie/urilities/CookieExpireUtility.ts | 2 +- .../cookie/urilities/CookieStringUtility.ts | 6 +- .../src/cookie/urilities/CookieURLUtility.ts | 4 +- packages/happy-dom/src/css/CSSRule.ts | 6 +- packages/happy-dom/src/css/CSSStyleSheet.ts | 6 +- packages/happy-dom/src/css/MediaList.ts | 2 +- .../css/declaration/CSSStyleDeclaration.ts | 6 +- .../CSSStyleDeclarationComputedStyle.ts | 20 +- .../CSSMeasurementConverter.ts | 2 +- .../CSSStyleDeclarationPropertyGetParser.ts | 2 +- .../CSSStyleDeclarationPropertyManager.ts | 2 +- .../CSSStyleDeclarationPropertySetParser.ts | 2 +- .../happy-dom/src/css/rules/CSSStyleRule.ts | 2 +- .../css/style-property-map/CSSStyleValue.ts | 2 +- .../StylePropertyMapReadOnly.ts | 2 +- .../happy-dom/src/css/utilities/CSSParser.ts | 4 +- .../CustomElementReactionStack.ts | 4 +- .../custom-element/CustomElementRegistry.ts | 8 +- .../ICustomElementDefinition.ts | 2 +- .../dom-implementation/DOMImplementation.ts | 2 +- .../happy-dom/src/dom-parser/DOMParser.ts | 4 +- .../happy-dom/src/dom/DOMPointReadOnly.ts | 2 +- packages/happy-dom/src/dom/DOMRect.ts | 2 +- packages/happy-dom/src/dom/DOMRectList.ts | 2 +- packages/happy-dom/src/dom/DOMRectReadOnly.ts | 2 +- packages/happy-dom/src/dom/DOMStringMap.ts | 2 +- packages/happy-dom/src/dom/DOMTokenList.ts | 2 +- .../happy-dom/src/dom/dom-matrix/DOMMatrix.ts | 4 +- .../src/dom/dom-matrix/DOMMatrixReadOnly.ts | 12 +- .../src/dom/dom-matrix/TDOMMatrix2DArray.ts | 4 +- .../src/dom/dom-matrix/TDOMMatrix3DArray.ts | 4 +- .../src/dom/dom-matrix/TDOMMatrixInit.ts | 10 +- packages/happy-dom/src/event/DataTransfer.ts | 2 +- .../happy-dom/src/event/DataTransferItem.ts | 2 +- packages/happy-dom/src/event/Event.ts | 12 +- packages/happy-dom/src/event/EventTarget.ts | 12 +- .../src/event/IEventListenerOptions.ts | 2 +- packages/happy-dom/src/event/ITouchInit.ts | 2 +- packages/happy-dom/src/event/IUIEventInit.ts | 4 +- .../happy-dom/src/event/TEventListener.ts | 8 +- .../src/event/TEventListenerFunction.ts | 6 +- .../src/event/TEventListenerObject.ts | 6 +- packages/happy-dom/src/event/Touch.ts | 4 +- packages/happy-dom/src/event/UIEvent.ts | 4 +- .../src/event/events/AnimationEvent.ts | 2 +- .../src/event/events/ClipboardEvent.ts | 4 +- .../happy-dom/src/event/events/CloseEvent.ts | 2 +- .../happy-dom/src/event/events/CustomEvent.ts | 2 +- .../happy-dom/src/event/events/ErrorEvent.ts | 2 +- .../happy-dom/src/event/events/FocusEvent.ts | 4 +- .../src/event/events/HashChangeEvent.ts | 2 +- .../src/event/events/IAnimationEventInit.ts | 2 +- .../src/event/events/IClipboardEventInit.ts | 4 +- .../src/event/events/ICloseEventInit.ts | 2 +- .../src/event/events/ICustomEventInit.ts | 2 +- .../src/event/events/IErrorEventInit.ts | 2 +- .../src/event/events/IFocusEventInit.ts | 4 +- .../src/event/events/IHashChangeEventInit.ts | 2 +- .../src/event/events/IInputEventInit.ts | 4 +- .../src/event/events/IKeyboardEventInit.ts | 2 +- .../event/events/IMediaQueryListEventInit.ts | 4 +- .../src/event/events/IMediaQueryListInit.ts | 2 +- .../src/event/events/IMessageEventInit.ts | 6 +- .../src/event/events/IMouseEventInit.ts | 4 +- .../src/event/events/IPointerEventInit.ts | 4 +- .../src/event/events/IPopStateEventInit.ts | 2 +- .../src/event/events/IProgressEventInit.ts | 2 +- .../src/event/events/IStorageEventInit.ts | 4 +- .../src/event/events/ISubmitEventInit.ts | 4 +- .../src/event/events/ITouchEventInit.ts | 4 +- .../src/event/events/IWheelEventInit.ts | 2 +- .../happy-dom/src/event/events/InputEvent.ts | 4 +- .../src/event/events/KeyboardEvent.ts | 2 +- .../src/event/events/MediaQueryListEvent.ts | 2 +- .../src/event/events/MediaStreamTrackEvent.ts | 4 +- .../src/event/events/MessageEvent.ts | 6 +- .../happy-dom/src/event/events/MouseEvent.ts | 4 +- .../src/event/events/PointerEvent.ts | 2 +- .../src/event/events/PopStateEvent.ts | 2 +- .../src/event/events/ProgressEvent.ts | 2 +- .../src/event/events/StorageEvent.ts | 4 +- .../happy-dom/src/event/events/SubmitEvent.ts | 4 +- .../happy-dom/src/event/events/TouchEvent.ts | 4 +- .../happy-dom/src/event/events/WheelEvent.ts | 2 +- .../happy-dom/src/fetch/AbortController.ts | 4 +- packages/happy-dom/src/fetch/AbortSignal.ts | 2 +- packages/happy-dom/src/fetch/Fetch.ts | 27 +- packages/happy-dom/src/fetch/Headers.ts | 6 +- packages/happy-dom/src/fetch/Request.ts | 44 +- packages/happy-dom/src/fetch/ResourceFetch.ts | 12 +- packages/happy-dom/src/fetch/Response.ts | 16 +- packages/happy-dom/src/fetch/SyncFetch.ts | 22 +- .../preflight/ICacheablePreflightRequest.ts | 2 +- .../preflight/ICacheablePreflightResponse.ts | 2 +- .../preflight/IPreflightResponseCache.ts | 6 +- .../cache/preflight/PreflightResponseCache.ts | 8 +- .../fetch/cache/response/ICacheableRequest.ts | 2 +- .../cache/response/ICacheableResponse.ts | 2 +- .../fetch/cache/response/ICachedResponse.ts | 6 +- .../fetch/cache/response/IResponseCache.ts | 8 +- .../src/fetch/cache/response/ResponseCache.ts | 8 +- .../cache/response/ResponseCacheFileSystem.ts | 4 +- .../multipart/MultipartFormDataParser.ts | 4 +- .../src/fetch/multipart/MultipartReader.ts | 4 +- .../src/fetch/preload/PreloadEntry.ts | 2 +- .../src/fetch/preload/PreloadUtility.ts | 8 +- .../src/fetch/types/IFetchInterceptor.ts | 8 +- .../happy-dom/src/fetch/types/IHeadersInit.ts | 5 - .../happy-dom/src/fetch/types/IRequestBody.ts | 16 - .../src/fetch/types/IRequestCredentials.ts | 2 - .../happy-dom/src/fetch/types/IRequestInfo.ts | 6 - .../happy-dom/src/fetch/types/IRequestInit.ts | 28 +- .../happy-dom/src/fetch/types/IRequestMode.ts | 2 - .../src/fetch/types/IRequestRedirect.ts | 3 - .../src/fetch/types/IResponseBody.ts | 16 - .../src/fetch/types/IResponseInit.ts | 4 +- .../src/fetch/types/ISyncResponse.ts | 4 +- .../happy-dom/src/fetch/types/THeadersInit.ts | 3 + .../happy-dom/src/fetch/types/TRequestBody.ts | 14 + .../src/fetch/types/TRequestCredentials.ts | 1 + .../happy-dom/src/fetch/types/TRequestInfo.ts | 4 + .../happy-dom/src/fetch/types/TRequestMode.ts | 1 + .../src/fetch/types/TRequestRedirect.ts | 1 + ...rerPolicy.ts => TRequestReferrerPolicy.ts} | 3 +- .../src/fetch/types/TResponseBody.ts | 14 + .../src/fetch/utilities/FetchBodyUtility.ts | 8 +- .../utilities/FetchRequestHeaderUtility.ts | 8 +- .../utilities/FetchRequestReferrerUtility.ts | 18 +- .../FetchRequestValidationUtility.ts | 12 +- .../utilities/FetchResponseHeaderUtility.ts | 4 +- .../fetch/utilities/SyncFetchScriptBuilder.ts | 2 +- .../fetch/utilities/VirtualServerUtility.ts | 6 +- packages/happy-dom/src/file/File.ts | 2 +- packages/happy-dom/src/form-data/FormData.ts | 8 +- packages/happy-dom/src/history/History.ts | 4 +- .../happy-dom/src/history/HistoryItemList.ts | 2 +- .../happy-dom/src/history/IHistoryItem.ts | 4 +- .../happy-dom/src/html-parser/HTMLParser.ts | 35 +- .../src/html-serializer/HTMLSerializer.ts | 12 +- packages/happy-dom/src/index.ts | 6 +- .../IIntersectionObserverInit.ts | 2 +- .../IntersectionObserver.ts | 6 +- .../IntersectionObserverEntry.ts | 4 +- .../src/javascript/JavaScriptCompiler.ts | 4 +- packages/happy-dom/src/location/Location.ts | 2 +- .../src/match-media/MediaQueryItem.ts | 6 +- .../src/match-media/MediaQueryList.ts | 8 +- .../src/match-media/MediaQueryParser.ts | 2 +- packages/happy-dom/src/module/CSSModule.ts | 10 +- .../happy-dom/src/module/ECMAScriptModule.ts | 20 +- .../src/module/ECMAScriptModuleCompiler.ts | 6 +- packages/happy-dom/src/module/JSONModule.ts | 8 +- .../happy-dom/src/module/ModuleFactory.ts | 11 +- .../happy-dom/src/module/ModuleURLUtility.ts | 6 +- .../happy-dom/src/module/UnresolvedModule.ts | 6 +- .../types/IECMAScriptModuleCachedResult.ts | 2 +- .../types/IECMAScriptModuleCompiledResult.ts | 2 +- .../src/module/types/IECMAScriptModuleInit.ts | 4 +- .../src/module/types/IModuleImportMap.ts | 4 +- .../src/module/types/IModuleImportMapScope.ts | 2 +- .../happy-dom/src/module/types/IModuleInit.ts | 6 +- .../mutation-observer/IMutationListener.ts | 4 +- .../src/mutation-observer/MutationObserver.ts | 8 +- .../MutationObserverListener.ts | 12 +- .../src/mutation-observer/MutationRecord.ts | 4 +- packages/happy-dom/src/navigator/MimeType.ts | 2 +- packages/happy-dom/src/navigator/Navigator.ts | 6 +- packages/happy-dom/src/nodes/NodeFactory.ts | 4 +- packages/happy-dom/src/nodes/attr/Attr.ts | 2 +- .../src/nodes/character-data/CharacterData.ts | 6 +- .../character-data/CharacterDataUtility.ts | 2 +- .../src/nodes/child-node/ChildNodeUtility.ts | 4 +- .../src/nodes/child-node/IChildNode.ts | 2 +- .../child-node/INonDocumentTypeChildNode.ts | 4 +- .../child-node/NonDocumentChildNodeUtility.ts | 4 +- .../document-fragment/DocumentFragment.ts | 8 +- .../happy-dom/src/nodes/document/Document.ts | 69 +- .../document/DocumentReadyStateManager.ts | 2 +- .../happy-dom/src/nodes/element/Element.ts | 22 +- .../element/ElementEventAttributeUtility.ts | 4 +- .../src/nodes/element/HTMLCollection.ts | 2 +- .../src/nodes/element/NamedNodeMap.ts | 2 +- .../nodes/element/THTMLCollectionListener.ts | 3 +- .../nodes/element/TNamedNodeMapListener.ts | 5 +- .../html-anchor-element/HTMLAnchorElement.ts | 4 +- .../html-area-element/HTMLAreaElement.ts | 4 +- .../html-body-element/HTMLBodyElement.ts | 2 +- .../html-button-element/HTMLButtonElement.ts | 6 +- .../CanvasCaptureMediaStreamTrack.ts | 2 +- .../html-canvas-element/HTMLCanvasElement.ts | 4 +- .../HTMLDataListElement.ts | 4 +- .../HTMLDetailsElement.ts | 4 +- .../src/nodes/html-document/HTMLDocument.ts | 2 +- .../src/nodes/html-element/HTMLElement.ts | 4 +- .../nodes/html-element/HTMLElementUtility.ts | 4 +- .../HTMLFieldSetElement.ts | 10 +- .../HTMLFormControlsCollection.ts | 6 +- .../html-form-element/HTMLFormElement.ts | 18 +- .../nodes/html-form-element/RadioNodeList.ts | 4 +- .../THTMLFormControlElement.ts | 18 +- .../HTMLHyperlinkElementUtility.ts | 2 +- .../html-iframe-element/HTMLIFrameElement.ts | 12 +- .../src/nodes/html-input-element/FileList.ts | 2 +- .../html-input-element/HTMLInputElement.ts | 12 +- .../HTMLInputElementValueSanitizer.ts | 2 +- .../html-label-element/HTMLLabelElement.ts | 20 +- .../HTMLLabelElementUtility.ts | 10 +- .../html-legend-element/HTMLLegendElement.ts | 4 +- .../html-link-element/HTMLLinkElement.ts | 6 +- .../nodes/html-map-element/HTMLMapElement.ts | 4 +- .../html-media-element/HTMLMediaElement.ts | 6 +- .../nodes/html-media-element/MediaStream.ts | 2 +- .../html-media-element/MediaStreamTrack.ts | 6 +- .../src/nodes/html-media-element/TextTrack.ts | 4 +- .../nodes/html-media-element/TextTrackCue.ts | 4 +- .../html-media-element/TextTrackCueList.ts | 2 +- .../src/nodes/html-media-element/VTTCue.ts | 4 +- .../html-meter-element/HTMLMeterElement.ts | 4 +- .../html-object-element/HTMLObjectElement.ts | 6 +- .../html-option-element/HTMLOptionElement.ts | 6 +- .../html-output-element/HTMLOutputElement.ts | 6 +- .../HTMLProgressElement.ts | 4 +- .../html-script-element/HTMLScriptElement.ts | 13 +- .../HTMLOptionsCollection.ts | 4 +- .../html-select-element/HTMLSelectElement.ts | 8 +- .../html-slot-element/HTMLSlotElement.ts | 6 +- .../html-style-element/HTMLStyleElement.ts | 2 +- .../HTMLTableCellElement.ts | 2 +- .../html-table-element/HTMLTableElement.ts | 2 +- .../HTMLTableRowElement.ts | 4 +- .../HTMLTableSectionElement.ts | 2 +- .../HTMLTemplateElement.ts | 6 +- .../HTMLTextAreaElement.ts | 6 +- .../html-track-element/HTMLTrackElement.ts | 4 +- .../nodes/node/ICachedComputedStyleResult.ts | 4 +- .../nodes/node/ICachedElementByIdResult.ts | 4 +- .../node/ICachedElementByTagNameResult.ts | 4 +- .../node/ICachedElementsByTagNameResult.ts | 4 +- .../src/nodes/node/ICachedMatchesResult.ts | 4 +- .../node/ICachedQuerySelectorAllResult.ts | 6 +- .../nodes/node/ICachedQuerySelectorResult.ts | 4 +- .../src/nodes/node/ICachedStyleResult.ts | 4 +- packages/happy-dom/src/nodes/node/Node.ts | 36 +- packages/happy-dom/src/nodes/node/NodeList.ts | 2 +- .../happy-dom/src/nodes/node/NodeUtility.ts | 16 +- .../src/nodes/node/TNodeListListener.ts | 3 +- .../src/nodes/parent-node/IParentNode.ts | 12 +- .../nodes/parent-node/ParentNodeUtility.ts | 12 +- .../src/nodes/shadow-root/ShadowRoot.ts | 12 +- .../SVGAnimationElement.ts | 2 +- .../src/nodes/svg-element/SVGElement.ts | 4 +- .../SVGGraphicsElement.ts | 2 +- .../svg-marker-element/SVGMarkerElement.ts | 2 +- .../svg-style-element/SVGStyleElement.ts | 2 +- .../nodes/svg-svg-element/SVGSVGElement.ts | 12 +- packages/happy-dom/src/nodes/text/Text.ts | 4 +- .../src/permissions/PermissionStatus.ts | 2 +- .../happy-dom/src/permissions/Permissions.ts | 4 +- .../src/query-selector/ISelectorPseudo.ts | 2 +- .../src/query-selector/QuerySelector.ts | 20 +- .../src/query-selector/SelectorItem.ts | 12 +- .../src/query-selector/SelectorParser.ts | 6 +- .../src/range/IRangeBoundaryPoint.ts | 2 +- packages/happy-dom/src/range/Range.ts | 14 +- packages/happy-dom/src/range/RangeUtility.ts | 6 +- packages/happy-dom/src/selection/Selection.ts | 6 +- packages/happy-dom/src/svg/SVGAngle.ts | 2 +- .../happy-dom/src/svg/SVGAnimatedAngle.ts | 2 +- .../happy-dom/src/svg/SVGAnimatedBoolean.ts | 2 +- .../src/svg/SVGAnimatedEnumeration.ts | 2 +- .../happy-dom/src/svg/SVGAnimatedInteger.ts | 2 +- .../happy-dom/src/svg/SVGAnimatedLength.ts | 2 +- .../src/svg/SVGAnimatedLengthList.ts | 2 +- .../happy-dom/src/svg/SVGAnimatedNumber.ts | 2 +- .../src/svg/SVGAnimatedNumberList.ts | 2 +- .../src/svg/SVGAnimatedPreserveAspectRatio.ts | 2 +- packages/happy-dom/src/svg/SVGAnimatedRect.ts | 2 +- .../happy-dom/src/svg/SVGAnimatedString.ts | 2 +- .../src/svg/SVGAnimatedTransformList.ts | 2 +- packages/happy-dom/src/svg/SVGLength.ts | 2 +- packages/happy-dom/src/svg/SVGLengthList.ts | 2 +- packages/happy-dom/src/svg/SVGMatrix.ts | 2 +- packages/happy-dom/src/svg/SVGNumber.ts | 2 +- packages/happy-dom/src/svg/SVGNumberList.ts | 2 +- packages/happy-dom/src/svg/SVGPoint.ts | 2 +- packages/happy-dom/src/svg/SVGPointList.ts | 2 +- .../src/svg/SVGPreserveAspectRatio.ts | 2 +- packages/happy-dom/src/svg/SVGRect.ts | 2 +- packages/happy-dom/src/svg/SVGStringList.ts | 2 +- packages/happy-dom/src/svg/SVGTransform.ts | 2 +- .../happy-dom/src/svg/SVGTransformList.ts | 2 +- .../happy-dom/src/tree-walker/INodeFilter.ts | 5 - .../happy-dom/src/tree-walker/NodeIterator.ts | 10 +- .../happy-dom/src/tree-walker/TNodeFilter.ts | 3 + .../happy-dom/src/tree-walker/TreeWalker.ts | 6 +- packages/happy-dom/src/url/URL.ts | 2 +- .../src/validity-state/ValidityState.ts | 89 +- .../happy-dom/src/window/BrowserWindow.ts | 97 +- .../src/window/CrossOriginBrowserWindow.ts | 4 +- .../happy-dom/src/window/DetachedWindowAPI.ts | 8 +- .../happy-dom/src/window/INodeJSGlobal.ts | 2 +- packages/happy-dom/src/window/Window.ts | 2 +- .../src/window/WindowBrowserContext.ts | 14 +- .../src/window/WindowContextClassExtender.ts | 2 +- .../src/window/WindowPageOpenUtility.ts | 4 +- .../src/xml-http-request/XMLHttpRequest.ts | 28 +- .../XMLHttpRequestEventTarget.ts | 2 +- .../XMLHttpRequestResponseDataParser.ts | 8 +- .../happy-dom/src/xml-parser/XMLParser.ts | 6 +- .../src/xml-serializer/XMLSerializer.ts | 10 +- .../test/AdoptedStyleSheetCustomElement.ts | 2 +- packages/happy-dom/test/CustomElement.ts | 2 +- .../test/browser/BrowserFrame.test.ts | 6 +- .../test/browser/BrowserPage.test.ts | 4 +- .../DetachedBrowserFrame.test.ts | 6 +- .../DetachedBrowserPage.test.ts | 4 +- .../test/cookie/CookieContainer.test.ts | 4 +- .../cookie/urilities/CookieURLUtility.test.ts | 2 +- packages/happy-dom/test/css/CSS.test.ts | 2 +- packages/happy-dom/test/css/CSSParser.test.ts | 12 +- packages/happy-dom/test/css/CSSRule.test.ts | 4 +- .../happy-dom/test/css/CSSStyleSheet.test.ts | 4 +- packages/happy-dom/test/css/MediaList.test.ts | 4 +- .../declaration/CSSStyleDeclaration.test.ts | 4 +- .../CSSStyleDeclarationComputedStyle.test.ts | 4 +- .../test/css/rules/CSSConditionRule.test.ts | 4 +- .../test/css/rules/CSSContainerRule.test.ts | 4 +- .../test/css/rules/CSSFontFaceRule.test.ts | 4 +- .../test/css/rules/CSSGroupingRule.test.ts | 4 +- .../test/css/rules/CSSKeyframeRule.test.ts | 4 +- .../test/css/rules/CSSKeyframesRule.test.ts | 4 +- .../test/css/rules/CSSMediaRule.test.ts | 4 +- .../test/css/rules/CSSScopeRule.test.ts | 4 +- .../test/css/rules/CSSStyleRule.test.ts | 4 +- .../StylePropertyMap.test.ts | 2 +- .../StylePropertyMapReadOnly.test.ts | 2 +- .../CustomElementRegistry.test.ts | 4 +- .../test/dom-parser/DOMParser.test.ts | 4 +- .../happy-dom/test/dom/DOMTokenList.test.ts | 4 +- packages/happy-dom/test/event/Event.test.ts | 4 +- .../happy-dom/test/event/EventTarget.test.ts | 2 +- .../test/event/events/TouchEvent.test.ts | 2 +- .../test/fetch/AbortController.test.ts | 4 +- .../happy-dom/test/fetch/AbortSignal.test.ts | 4 +- packages/happy-dom/test/fetch/Fetch.test.ts | 5 +- packages/happy-dom/test/fetch/Request.test.ts | 12 +- .../test/fetch/ResourceFetch.test.ts | 6 +- .../happy-dom/test/fetch/Response.test.ts | 2 +- .../happy-dom/test/fetch/SyncFetch.test.ts | 4 +- .../response/ResponseCacheFileSystem.test.ts | 2 +- .../happy-dom/test/file/FileReader.test.ts | 2 +- .../happy-dom/test/form-data/FormData.test.ts | 2 +- .../happy-dom/test/history/History.test.ts | 8 +- .../test/html-parser/HTMLParser.test.ts | 8 +- .../html-serializer/HTMLSerializer.test.ts | 2 +- .../IntersectionObserver.test.ts | 2 +- .../javascript/JavaScriptCompiler.test.ts | 2 +- .../happy-dom/test/location/Location.test.ts | 8 +- .../test/match-media/MediaQueryList.test.ts | 2 +- .../module/ECMAScriptModuleCompiler.test.ts | 2 +- .../MutationObserver.test.ts | 4 +- .../test/navigator/Navigator.test.ts | 6 +- .../happy-dom/test/nodes/attr/Attr.test.ts | 2 +- .../CharacterDataUtility.test.ts | 2 +- .../nodes/character-data/CharaterData.test.ts | 4 +- .../nodes/child-node/ChildNodeUtility.test.ts | 2 +- .../NonDocumentChildNodeUtility.test.ts | 2 +- .../test/nodes/comment/Comment.test.ts | 2 +- .../DocumentFragment.test.ts | 8 +- .../test/nodes/document/Document.test.ts | 16 +- .../test/nodes/element/Element.test.ts | 8 +- .../test/nodes/element/HTMLCollection.test.ts | 6 +- .../test/nodes/element/NamedNodeMap.test.ts | 6 +- .../HTMLAnchorElement.test.ts | 8 +- .../html-area-element/HTMLAreaElement.test.ts | 6 +- .../html-base-element/HTMLBaseElement.test.ts | 2 +- .../html-body-element/HTMLBodyElement.test.ts | 2 +- .../html-br-element/HTMLBRElement.test.ts | 2 +- .../HTMLButtonElement.test.ts | 12 +- .../CanvasCaptureMediaStreamTrack.test.ts | 4 +- .../HTMLCanvasElement.test.ts | 2 +- .../HTMLDListElement.test.ts | 2 +- .../html-data-element/HTMLDataElement.test.ts | 2 +- .../HTMLDataListElement.test.ts | 2 +- .../HTMLDetailsElement.test.ts | 2 +- .../HTMLDialogElement.test.ts | 4 +- .../html-div-element/HTMLDivElement.test.ts | 2 +- .../nodes/html-element/HTMLElement.test.ts | 8 +- .../html-element/HTMLElementUtility.test.ts | 10 +- .../HTMLEmbedElement.test.ts | 2 +- .../HTMLFieldSetElement.test.ts | 6 +- .../html-form-element/HTMLFormElement.test.ts | 30 +- .../html-head-element/HTMLHeadElement.test.ts | 2 +- .../HTMLHeadingElement.test.ts | 2 +- .../html-hr-element/HTMLHRElement.test.ts | 2 +- .../html-html-element/HTMLHtmlElement.test.ts | 2 +- .../HTMLIFrameElement.test.ts | 8 +- .../HTMLImageElement.test.ts | 4 +- .../nodes/html-input-element/FileList.test.ts | 4 +- .../HTMLInputElement.test.ts | 10 +- .../HTMLInputElementValueSanitizer.test.ts | 4 +- .../HTMLLabelElement.test.ts | 6 +- .../HTMLLegendElement.test.ts | 2 +- .../html-li-element/HTMLLIElement.test.ts | 2 +- .../html-link-element/HTMLLinkElement.test.ts | 6 +- .../html-map-element/HTMLMapElement.test.ts | 2 +- .../HTMLMediaElement.test.ts | 2 +- .../html-media-element/MediaStream.test.ts | 2 +- .../MediaStreamTrack.test.ts | 2 +- .../html-media-element/RemotePlayback.test.ts | 2 +- .../html-media-element/TextTrack.test.ts | 2 +- .../html-media-element/TextTrackCue.test.ts | 2 +- .../TextTrackCueList.test.ts | 2 +- .../html-media-element/TextTrackList.test.ts | 4 +- .../nodes/html-media-element/VTTCue.test.ts | 2 +- .../html-menu-element/HTMLMenuElement.test.ts | 2 +- .../html-meta-element/HTMLMetaElement.test.ts | 4 +- .../HTMLMeterElement.test.ts | 2 +- .../html-mod-element/HTMLModElement.test.ts | 2 +- .../HTMLOListElement.test.ts | 2 +- .../HTMLObjectElement.test.ts | 2 +- .../HTMLOptGroupElement.test.ts | 4 +- .../HTMLOptionElement.test.ts | 6 +- .../HTMLOptionsCollection.test.ts | 6 +- .../HTMLOutputElement.test.ts | 2 +- .../HTMLParagraphElement.test.ts | 2 +- .../HTMLParamElement.test.ts | 2 +- .../HTMLPictureElement.test.ts | 2 +- .../html-pre-element/HTMLPreElement.test.ts | 2 +- .../HTMLProgressElement.test.ts | 2 +- .../HTMLQuoteElement.test.ts | 2 +- .../HTMLScriptElement.test.ts | 14 +- .../CircularDependency.js | 1 + .../TopDependency.js | 1 + .../HTMLSelectElement.test.ts | 8 +- .../CustomElementWithNamedSlots.ts | 2 +- .../CustomElementWithSlot.ts | 2 +- .../html-slot-element/HTMLSlotElement.test.ts | 6 +- .../HTMLSourceElement.test.ts | 2 +- .../html-span-element/HTMLSpanElement.test.ts | 2 +- .../HTMLStyleElement.test.ts | 4 +- .../HTMLTableCaptionElement.test.ts | 2 +- .../HTMLTableCellElement.test.ts | 2 +- .../HTMLTableColElement.test.ts | 2 +- .../HTMLTableElement.test.ts | 4 +- .../HTMLTableRowElement.test.ts | 2 +- .../HTMLTableSectionElement.test.ts | 2 +- .../HTMLTemplateElement.test.ts | 4 +- .../HTMLTextAreaElement.test.ts | 6 +- .../html-time-element/HTMLTimeElement.test.ts | 2 +- .../HTMLTitleElement.test.ts | 4 +- .../HTMLTrackElement.test.ts | 2 +- .../HTMLUListElement.test.ts | 2 +- .../happy-dom/test/nodes/node/Node.test.ts | 10 +- .../test/nodes/node/NodeList.test.ts | 4 +- .../test/nodes/node/NodeUtility.test.ts | 2 +- .../parent-node/ParentNodeUtility.test.ts | 2 +- .../test/nodes/shadow-root/ShadowRoot.test.ts | 6 +- .../SVGAnimateElement.test.ts | 2 +- .../SVGAnimateMotionElement.test.ts | 2 +- .../SVGAnimateTransformElement.test.ts | 2 +- .../SVGAnimationElement.test.ts | 2 +- .../SVGCircleElement.test.ts | 2 +- .../SVGClipPathElement.test.ts | 2 +- ...VGComponentTransferFunctionElement.test.ts | 2 +- .../svg-defs-element/SVGDefsElement.test.ts | 2 +- .../svg-desc-element/SVGDescElement.test.ts | 2 +- .../test/nodes/svg-element/SVGElement.test.ts | 4 +- .../SVGEllipseElement.test.ts | 2 +- .../SVGFEBlendElement.test.ts | 2 +- .../SVGFEColorMatrixElement.test.ts | 2 +- .../SVGFEComponentTransferElement.test.ts | 2 +- .../SVGFECompositeElement.test.ts | 2 +- .../SVGFEConvolveMatrixElement.test.ts | 2 +- .../SVGFEDiffuseLightingElement.test.ts | 2 +- .../SVGFEDisplacementMapElement.test.ts | 2 +- .../SVGFEDistantLightElement.test.ts | 2 +- .../SVGFEDropShadowElement.test.ts | 2 +- .../SVGFEFloodElement.test.ts | 2 +- .../SVGFEFuncAElement.test.ts | 2 +- .../SVGFEFuncBElement.test.ts | 2 +- .../SVGFEFuncGElement.test.ts | 2 +- .../SVGFEFuncRElement.test.ts | 2 +- .../SVGFEGaussianBlurElement.test.ts | 2 +- .../SVGFEImageElement.test.ts | 2 +- .../SVGFEMergeElement.test.ts | 2 +- .../SVGFEMergeNodeElement.test.ts | 2 +- .../SVGFEMorphologyElement.test.ts | 2 +- .../SVGFEOffsetElement.test.ts | 2 +- .../SVGFEPointLightElement.test.ts | 2 +- .../SVGFESpecularLightingElement.test.ts | 2 +- .../SVGFESpotLightElement.test.ts | 2 +- .../SVGFETileElement.test.ts | 2 +- .../SVGFETurbulenceElement.test.ts | 2 +- .../SVGFilterElement.test.ts | 2 +- .../SVGForeignObjectElement.test.ts | 2 +- .../nodes/svg-g-element/SVGGElement.test.ts | 4 +- .../SVGGeometryElement.test.ts | 2 +- .../SVGGradientElement.test.ts | 2 +- .../SVGGraphicsElement.test.ts | 2 +- .../svg-image-element/SVGImageElement.test.ts | 2 +- .../svg-line-element/SVGLineElement.test.ts | 2 +- .../SVGLinearGradientElement.test.ts | 2 +- .../SVGMPathElement.test.ts | 2 +- .../SVGMarkerElement.test.ts | 2 +- .../svg-mask-element/SVGMaskElement.test.ts | 2 +- .../SVGMetadataElement.test.ts | 4 +- .../svg-path-element/SVGPathElement.test.ts | 4 +- .../SVGPatternElement.test.ts | 2 +- .../SVGPolygonElement.test.ts | 2 +- .../SVGPolylineElement.test.ts | 2 +- .../SVGRadialGradientElement.test.ts | 2 +- .../svg-rect-element/SVGRectElement.test.ts | 2 +- .../SVGScriptElement.test.ts | 2 +- .../svg-set-element/SVGSetElement.test.ts | 4 +- .../svg-stop-element/SVGStopElement.test.ts | 2 +- .../svg-style-element/SVGStyleElement.test.ts | 2 +- .../svg-svg-element/SVGSVGElement.test.ts | 6 +- .../SVGSwitchElement.test.ts | 4 +- .../SVGSymbolElement.test.ts | 4 +- .../SVGTSpanElement.test.ts | 4 +- .../SVGTextContentElement.test.ts | 2 +- .../svg-text-element/SVGTextElement.test.ts | 4 +- .../SVGTextPositioningElement.test.ts | 4 +- .../svg-title-element/SVGTitleElement.test.ts | 4 +- .../svg-use-element/SVGUseElement.test.ts | 2 +- .../svg-view-element/SVGViewElement.test.ts | 4 +- .../happy-dom/test/nodes/text/Text.test.ts | 2 +- .../QuerySelector.attributeCase.test.ts | 2 +- .../test/query-selector/QuerySelector.test.ts | 6 +- packages/happy-dom/test/range/Range.test.ts | 6 +- .../test/selection/Selection.test.ts | 4 +- packages/happy-dom/test/svg/SVGAngle.test.ts | 2 +- .../test/svg/SVGAnimatedAngle.test.ts | 2 +- .../test/svg/SVGAnimatedBoolean.test.ts | 2 +- .../test/svg/SVGAnimatedEnumeration.test.ts | 2 +- .../test/svg/SVGAnimatedInteger.test.ts | 2 +- .../test/svg/SVGAnimatedLength.test.ts | 2 +- .../test/svg/SVGAnimatedLengthList.test.ts | 2 +- .../test/svg/SVGAnimatedNumber.test.ts | 2 +- .../test/svg/SVGAnimatedNumberList.test.ts | 2 +- .../SVGAnimatedPreserveAspectRatio.test.ts | 2 +- .../test/svg/SVGAnimatedRect.test.ts | 2 +- .../test/svg/SVGAnimatedString.test.ts | 2 +- .../test/svg/SVGAnimatedTransformList.test.ts | 2 +- packages/happy-dom/test/svg/SVGLength.test.ts | 2 +- .../happy-dom/test/svg/SVGLengthList.test.ts | 2 +- packages/happy-dom/test/svg/SVGMatrix.test.ts | 2 +- packages/happy-dom/test/svg/SVGNumber.test.ts | 2 +- .../happy-dom/test/svg/SVGNumberList.test.ts | 2 +- packages/happy-dom/test/svg/SVGPoint.test.ts | 2 +- .../happy-dom/test/svg/SVGPointList.test.ts | 2 +- .../test/svg/SVGPreserveAspectRatio.test.ts | 2 +- packages/happy-dom/test/svg/SVGRect.test.ts | 2 +- .../happy-dom/test/svg/SVGStringList.test.ts | 2 +- .../happy-dom/test/svg/SVGTransform.test.ts | 4 +- .../test/svg/SVGTransformList.test.ts | 2 +- .../happy-dom/test/svg/SVGUnitTypes.test.ts | 2 +- .../test/tree-walker/NodeIterator.test.ts | 2 +- .../test/tree-walker/TreeWalker.test.ts | 2 +- packages/happy-dom/test/url/URL.test.ts | 2 +- .../test/validity-state/ValidityState.test.ts | 4 +- .../test/web-socket/WebSocket.test.ts | 6 +- .../test/window/BrowserWindow.test.ts | 22 +- .../test/window/DetachedWindowAPI.test.ts | 4 +- packages/happy-dom/test/window/Window.test.ts | 6 +- .../xml-http-request/XMLHttpRequest.test.ts | 10 +- .../test/xml-parser/XMLParser.test.ts | 10 +- .../test/xml-serializer/XMLSerializer.test.ts | 4 +- packages/happy-dom/tsconfig.json | 31 +- 633 files changed, 3137 insertions(+), 1832 deletions(-) delete mode 100644 packages/happy-dom/src/fetch/types/IHeadersInit.ts delete mode 100644 packages/happy-dom/src/fetch/types/IRequestBody.ts delete mode 100644 packages/happy-dom/src/fetch/types/IRequestCredentials.ts delete mode 100644 packages/happy-dom/src/fetch/types/IRequestInfo.ts delete mode 100644 packages/happy-dom/src/fetch/types/IRequestMode.ts delete mode 100644 packages/happy-dom/src/fetch/types/IRequestRedirect.ts delete mode 100644 packages/happy-dom/src/fetch/types/IResponseBody.ts create mode 100644 packages/happy-dom/src/fetch/types/THeadersInit.ts create mode 100644 packages/happy-dom/src/fetch/types/TRequestBody.ts create mode 100644 packages/happy-dom/src/fetch/types/TRequestCredentials.ts create mode 100644 packages/happy-dom/src/fetch/types/TRequestInfo.ts create mode 100644 packages/happy-dom/src/fetch/types/TRequestMode.ts create mode 100644 packages/happy-dom/src/fetch/types/TRequestRedirect.ts rename packages/happy-dom/src/fetch/types/{IRequestReferrerPolicy.ts => TRequestReferrerPolicy.ts} (73%) create mode 100644 packages/happy-dom/src/fetch/types/TResponseBody.ts delete mode 100644 packages/happy-dom/src/tree-walker/INodeFilter.ts create mode 100644 packages/happy-dom/src/tree-walker/TNodeFilter.ts diff --git a/.eslintrc.cjs b/.eslintrc.cjs index 204564e82..967e9acbc 100644 --- a/.eslintrc.cjs +++ b/.eslintrc.cjs @@ -140,6 +140,21 @@ module.exports = { 'import/no-named-as-default': WARN, 'import/no-extraneous-dependencies': WARN, 'import/no-absolute-path': WARN, + 'import/no-cycle': [ + WARN, + { + maxDepth: 20, + ignoreExternal: true + } + ], + '@typescript-eslint/consistent-type-imports': [ + WARN, + { + prefer: 'type-imports', + fixStyle: 'separate-type-imports', + disallowTypeAnnotations: false + } + ], '@typescript-eslint/naming-convention': [ WARN, { diff --git a/.github/workflows/pull_request.yml b/.github/workflows/pull_request.yml index 715e8a760..8e0275f22 100644 --- a/.github/workflows/pull_request.yml +++ b/.github/workflows/pull_request.yml @@ -1,7 +1,6 @@ name: Pull request -on: - pull_request +on: pull_request jobs: build: @@ -50,11 +49,11 @@ jobs: with: path: .turbo key: turbo-master - + - name: Install dependencies if: steps.cache-node-modules.outputs.cache-hit != 'true' run: npm ci --ignore-scripts - + - name: Compile package run: npm run compile @@ -62,4 +61,7 @@ jobs: run: npm run lint - name: Test - run: npm run test \ No newline at end of file + run: npm run test + + - name: Test circular dependencies + run: npm run test:circular-dependencies diff --git a/package-lock.json b/package-lock.json index 830b3bd39..b3109a772 100644 --- a/package-lock.json +++ b/package-lock.json @@ -635,6 +635,20 @@ "dev": true, "license": "MIT" }, + "node_modules/@dependents/detective-less": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/@dependents/detective-less/-/detective-less-5.0.1.tgz", + "integrity": "sha512-Y6+WUMsTFWE5jb20IFP4YGa5IrGY/+a/FbOSjDF/wz9gepU2hwCYSXRHP/vPwBvwcY3SVMASt4yXxbXNXigmZQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "gonzales-pe": "^4.3.0", + "node-source-walk": "^7.0.1" + }, + "engines": { + "node": ">=18" + } + }, "node_modules/@emnapi/core": { "version": "1.5.0", "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.5.0.tgz", @@ -3067,6 +3081,96 @@ "@testing-library/dom": ">=7.21.4" } }, + "node_modules/@ts-graphviz/adapter": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/@ts-graphviz/adapter/-/adapter-2.0.6.tgz", + "integrity": "sha512-kJ10lIMSWMJkLkkCG5gt927SnGZcBuG0s0HHswGzcHTgvtUe7yk5/3zTEr0bafzsodsOq5Gi6FhQeV775nC35Q==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ts-graphviz" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/ts-graphviz" + } + ], + "license": "MIT", + "dependencies": { + "@ts-graphviz/common": "^2.1.5" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@ts-graphviz/ast": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/@ts-graphviz/ast/-/ast-2.0.7.tgz", + "integrity": "sha512-e6+2qtNV99UT6DJSoLbHfkzfyqY84aIuoV8Xlb9+hZAjgpum8iVHprGeAMQ4rF6sKUAxrmY8rfF/vgAwoPc3gw==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ts-graphviz" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/ts-graphviz" + } + ], + "license": "MIT", + "dependencies": { + "@ts-graphviz/common": "^2.1.5" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@ts-graphviz/common": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@ts-graphviz/common/-/common-2.1.5.tgz", + "integrity": "sha512-S6/9+T6x8j6cr/gNhp+U2olwo1n0jKj/682QVqsh7yXWV6ednHYqxFw0ZsY3LyzT0N8jaZ6jQY9YD99le3cmvg==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ts-graphviz" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/ts-graphviz" + } + ], + "license": "MIT", + "engines": { + "node": ">=18" + } + }, + "node_modules/@ts-graphviz/core": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/@ts-graphviz/core/-/core-2.0.7.tgz", + "integrity": "sha512-w071DSzP94YfN6XiWhOxnLpYT3uqtxJBDYdh6Jdjzt+Ce6DNspJsPQgpC7rbts/B8tEkq0LHoYuIF/O5Jh5rPg==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ts-graphviz" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/ts-graphviz" + } + ], + "license": "MIT", + "dependencies": { + "@ts-graphviz/ast": "^2.0.7", + "@ts-graphviz/common": "^2.1.5" + }, + "engines": { + "node": ">=18" + } + }, "node_modules/@tybys/wasm-util": { "version": "0.10.1", "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.10.1.tgz", @@ -3404,6 +3508,42 @@ } } }, + "node_modules/@typescript-eslint/project-service": { + "version": "8.54.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.54.0.tgz", + "integrity": "sha512-YPf+rvJ1s7MyiWM4uTRhE4DvBXrEV+d8oC3P9Y2eT7S+HBS0clybdMIPnhiATi9vZOYDc7OQ1L/i6ga6NFYK/g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/tsconfig-utils": "^8.54.0", + "@typescript-eslint/types": "^8.54.0", + "debug": "^4.4.3" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/@typescript-eslint/project-service/node_modules/@typescript-eslint/types": { + "version": "8.54.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.54.0.tgz", + "integrity": "sha512-PDUI9R1BVjqu7AUDsRBbKMtwmjWcn4J3le+5LpcFgWULN3LvHC5rkc9gCVxbrsrGmO1jfPybN5s6h4Jy+OnkAA==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, "node_modules/@typescript-eslint/scope-manager": { "version": "6.21.0", "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.21.0.tgz", @@ -3422,6 +3562,23 @@ "url": "https://opencollective.com/typescript-eslint" } }, + "node_modules/@typescript-eslint/tsconfig-utils": { + "version": "8.54.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.54.0.tgz", + "integrity": "sha512-dRgOyT2hPk/JwxNMZDsIXDgyl9axdJI3ogZ2XWhBPsnZUv+hPesa5iuhdYt2gzwA9t8RE5ytOJ6xB0moV0Ujvw==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <6.0.0" + } + }, "node_modules/@typescript-eslint/type-utils": { "version": "6.21.0", "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.21.0.tgz", @@ -4331,6 +4488,13 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, + "node_modules/any-promise": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", + "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==", + "dev": true, + "license": "MIT" + }, "node_modules/anymatch": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", @@ -4345,6 +4509,13 @@ "node": ">= 8" } }, + "node_modules/app-module-path": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/app-module-path/-/app-module-path-2.2.0.tgz", + "integrity": "sha512-gkco+qxENJV+8vFcDiiFhuoSvRXb2a/QPqpSoWhVz829VNJfOTnELbBmPmNKFxf3xdNnw4DWCkzkDaavcX/1YQ==", + "dev": true, + "license": "BSD-2-Clause" + }, "node_modules/are-docs-informative": { "version": "0.0.2", "resolved": "https://registry.npmjs.org/are-docs-informative/-/are-docs-informative-0.0.2.tgz", @@ -4534,6 +4705,16 @@ "node": ">=12" } }, + "node_modules/ast-module-types": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ast-module-types/-/ast-module-types-6.0.1.tgz", + "integrity": "sha512-WHw67kLXYbZuHTmcdbIrVArCq5wxo6NEuj3hiYAWr8mwJeC+C2mMCIBIWCiDoCye/OF/xelc+teJ1ERoWmnEIA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + } + }, "node_modules/async-function": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/async-function/-/async-function-1.0.0.tgz", @@ -4668,6 +4849,27 @@ "dev": true, "license": "MIT" }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, "node_modules/baseline-browser-mapping": { "version": "2.8.6", "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.8.6.tgz", @@ -4678,6 +4880,18 @@ "baseline-browser-mapping": "dist/cli.js" } }, + "node_modules/bl": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, "node_modules/body-parser": { "version": "1.20.3", "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.3.tgz", @@ -4800,6 +5014,31 @@ "node-int64": "^0.4.0" } }, + "node_modules/buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, "node_modules/buffer-from": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", @@ -4995,6 +5234,32 @@ "dev": true, "license": "MIT" }, + "node_modules/cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "dev": true, + "license": "MIT", + "dependencies": { + "restore-cursor": "^3.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cli-spinners": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.9.2.tgz", + "integrity": "sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/cliui": { "version": "8.0.1", "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", @@ -5010,6 +5275,16 @@ "node": ">=12" } }, + "node_modules/clone": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", + "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8" + } + }, "node_modules/co": { "version": "4.6.0", "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", @@ -5068,6 +5343,13 @@ "node": ">= 12.0.0" } }, + "node_modules/commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==", + "dev": true, + "license": "MIT" + }, "node_modules/concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", @@ -5326,6 +5608,16 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/deep-extend": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4.0.0" + } + }, "node_modules/deep-is": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", @@ -5343,6 +5635,19 @@ "node": ">=0.10.0" } }, + "node_modules/defaults": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz", + "integrity": "sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "clone": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/define-data-property": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", @@ -5389,6 +5694,35 @@ "node": ">= 0.8" } }, + "node_modules/dependency-tree": { + "version": "11.2.0", + "resolved": "https://registry.npmjs.org/dependency-tree/-/dependency-tree-11.2.0.tgz", + "integrity": "sha512-+C1H3mXhcvMCeu5i2Jpg9dc0N29TWTuT6vJD7mHLAfVmAbo9zW8NlkvQ1tYd3PDMab0IRQM0ccoyX68EZtx9xw==", + "dev": true, + "license": "MIT", + "dependencies": { + "commander": "^12.1.0", + "filing-cabinet": "^5.0.3", + "precinct": "^12.2.0", + "typescript": "^5.8.3" + }, + "bin": { + "dependency-tree": "bin/cli.js" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/dependency-tree/node_modules/commander": { + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-12.1.0.tgz", + "integrity": "sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + } + }, "node_modules/destroy": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", @@ -5417,42 +5751,285 @@ "dev": true, "license": "MIT" }, - "node_modules/dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "node_modules/detective-amd": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/detective-amd/-/detective-amd-6.0.1.tgz", + "integrity": "sha512-TtyZ3OhwUoEEIhTFoc1C9IyJIud3y+xYkSRjmvCt65+ycQuc3VcBrPRTMWoO/AnuCyOB8T5gky+xf7Igxtjd3g==", "dev": true, "license": "MIT", "dependencies": { - "path-type": "^4.0.0" + "ast-module-types": "^6.0.1", + "escodegen": "^2.1.0", + "get-amd-module-type": "^6.0.1", + "node-source-walk": "^7.0.1" + }, + "bin": { + "detective-amd": "bin/cli.js" }, "engines": { - "node": ">=8" + "node": ">=18" } }, - "node_modules/doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "node_modules/detective-cjs": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/detective-cjs/-/detective-cjs-6.0.1.tgz", + "integrity": "sha512-tLTQsWvd2WMcmn/60T2inEJNhJoi7a//PQ7DwRKEj1yEeiQs4mrONgsUtEJKnZmrGWBBmE0kJ1vqOG/NAxwaJw==", "dev": true, - "license": "Apache-2.0", + "license": "MIT", "dependencies": { - "esutils": "^2.0.2" + "ast-module-types": "^6.0.1", + "node-source-walk": "^7.0.1" }, "engines": { - "node": ">=6.0.0" + "node": ">=18" } }, - "node_modules/dom-accessibility-api": { - "version": "0.5.16", - "resolved": "https://registry.npmjs.org/dom-accessibility-api/-/dom-accessibility-api-0.5.16.tgz", - "integrity": "sha512-X7BJ2yElsnOJ30pZF4uIIDfBEVgF4XEBxL9Bxhy6dnrm5hkzqmsWHGTiHqRiITNhMyFLyAiWndIJP7Z1NTteDg==", + "node_modules/detective-es6": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/detective-es6/-/detective-es6-5.0.1.tgz", + "integrity": "sha512-XusTPuewnSUdoxRSx8OOI6xIA/uld/wMQwYsouvFN2LAg7HgP06NF1lHRV3x6BZxyL2Kkoih4ewcq8hcbGtwew==", "dev": true, - "license": "MIT" - }, - "node_modules/dunder-proto": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "license": "MIT", + "dependencies": { + "node-source-walk": "^7.0.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/detective-postcss": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/detective-postcss/-/detective-postcss-7.0.1.tgz", + "integrity": "sha512-bEOVpHU9picRZux5XnwGsmCN4+8oZo7vSW0O0/Enq/TO5R2pIAP2279NsszpJR7ocnQt4WXU0+nnh/0JuK4KHQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-url": "^1.2.4", + "postcss-values-parser": "^6.0.2" + }, + "engines": { + "node": "^14.0.0 || >=16.0.0" + }, + "peerDependencies": { + "postcss": "^8.4.47" + } + }, + "node_modules/detective-sass": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/detective-sass/-/detective-sass-6.0.1.tgz", + "integrity": "sha512-jSGPO8QDy7K7pztUmGC6aiHkexBQT4GIH+mBAL9ZyBmnUIOFbkfZnO8wPRRJFP/QP83irObgsZHCoDHZ173tRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "gonzales-pe": "^4.3.0", + "node-source-walk": "^7.0.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/detective-scss": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/detective-scss/-/detective-scss-5.0.1.tgz", + "integrity": "sha512-MAyPYRgS6DCiS6n6AoSBJXLGVOydsr9huwXORUlJ37K3YLyiN0vYHpzs3AdJOgHobBfispokoqrEon9rbmKacg==", + "dev": true, + "license": "MIT", + "dependencies": { + "gonzales-pe": "^4.3.0", + "node-source-walk": "^7.0.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/detective-stylus": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/detective-stylus/-/detective-stylus-5.0.1.tgz", + "integrity": "sha512-Dgn0bUqdGbE3oZJ+WCKf8Dmu7VWLcmRJGc6RCzBgG31DLIyai9WAoEhYRgIHpt/BCRMrnXLbGWGPQuBUrnF0TA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + } + }, + "node_modules/detective-typescript": { + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/detective-typescript/-/detective-typescript-14.0.0.tgz", + "integrity": "sha512-pgN43/80MmWVSEi5LUuiVvO/0a9ss5V7fwVfrJ4QzAQRd3cwqU1SfWGXJFcNKUqoD5cS+uIovhw5t/0rSeC5Mw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/typescript-estree": "^8.23.0", + "ast-module-types": "^6.0.1", + "node-source-walk": "^7.0.1" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "typescript": "^5.4.4" + } + }, + "node_modules/detective-typescript/node_modules/@typescript-eslint/types": { + "version": "8.54.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.54.0.tgz", + "integrity": "sha512-PDUI9R1BVjqu7AUDsRBbKMtwmjWcn4J3le+5LpcFgWULN3LvHC5rkc9gCVxbrsrGmO1jfPybN5s6h4Jy+OnkAA==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/detective-typescript/node_modules/@typescript-eslint/typescript-estree": { + "version": "8.54.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.54.0.tgz", + "integrity": "sha512-BUwcskRaPvTk6fzVWgDPdUndLjB87KYDrN5EYGetnktoeAvPtO4ONHlAZDnj5VFnUANg0Sjm7j4usBlnoVMHwA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/project-service": "8.54.0", + "@typescript-eslint/tsconfig-utils": "8.54.0", + "@typescript-eslint/types": "8.54.0", + "@typescript-eslint/visitor-keys": "8.54.0", + "debug": "^4.4.3", + "minimatch": "^9.0.5", + "semver": "^7.7.3", + "tinyglobby": "^0.2.15", + "ts-api-utils": "^2.4.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/detective-typescript/node_modules/@typescript-eslint/visitor-keys": { + "version": "8.54.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.54.0.tgz", + "integrity": "sha512-VFlhGSl4opC0bprJiItPQ1RfUhGDIBokcPwaFH4yiBCaNPeld/9VeXbiPO1cLyorQi1G1vL+ecBk1x8o1axORA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/types": "8.54.0", + "eslint-visitor-keys": "^4.2.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/detective-typescript/node_modules/eslint-visitor-keys": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", + "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/detective-typescript/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/detective-typescript/node_modules/ts-api-utils": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.4.0.tgz", + "integrity": "sha512-3TaVTaAv2gTiMB35i3FiGJaRfwb3Pyn/j3m/bfAvGe8FB7CF6u+LMYqYlDh7reQf7UNvoTvdfAqHGmPGOSsPmA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18.12" + }, + "peerDependencies": { + "typescript": ">=4.8.4" + } + }, + "node_modules/detective-vue2": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/detective-vue2/-/detective-vue2-2.2.0.tgz", + "integrity": "sha512-sVg/t6O2z1zna8a/UIV6xL5KUa2cMTQbdTIIvqNM0NIPswp52fe43Nwmbahzj3ww4D844u/vC2PYfiGLvD3zFA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@dependents/detective-less": "^5.0.1", + "@vue/compiler-sfc": "^3.5.13", + "detective-es6": "^5.0.1", + "detective-sass": "^6.0.1", + "detective-scss": "^5.0.1", + "detective-stylus": "^5.0.1", + "detective-typescript": "^14.0.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "typescript": "^5.4.4" + } + }, + "node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dev": true, + "license": "MIT", + "dependencies": { + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/dom-accessibility-api": { + "version": "0.5.16", + "resolved": "https://registry.npmjs.org/dom-accessibility-api/-/dom-accessibility-api-0.5.16.tgz", + "integrity": "sha512-X7BJ2yElsnOJ30pZF4uIIDfBEVgF4XEBxL9Bxhy6dnrm5hkzqmsWHGTiHqRiITNhMyFLyAiWndIJP7Z1NTteDg==", + "dev": true, + "license": "MIT" + }, + "node_modules/dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", "dev": true, "license": "MIT", @@ -5551,6 +6128,20 @@ "node": ">= 0.8" } }, + "node_modules/enhanced-resolve": { + "version": "5.18.4", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.18.4.tgz", + "integrity": "sha512-LgQMM4WXU3QI+SYgEc2liRgznaD5ojbmY3sb8LxyguVkIg5FxdpTkvk72te2R38/TGKxH634oLxXRGY6d7AP+Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" + }, + "engines": { + "node": ">=10.13.0" + } + }, "node_modules/entities": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", @@ -5822,6 +6413,28 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/escodegen": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.1.0.tgz", + "integrity": "sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "esprima": "^4.0.1", + "estraverse": "^5.2.0", + "esutils": "^2.0.2" + }, + "bin": { + "escodegen": "bin/escodegen.js", + "esgenerate": "bin/esgenerate.js" + }, + "engines": { + "node": ">=6.0" + }, + "optionalDependencies": { + "source-map": "~0.6.1" + } + }, "node_modules/eslint": { "version": "8.57.1", "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.1.tgz", @@ -6574,6 +7187,67 @@ "node": "^10.12.0 || >=12.0.0" } }, + "node_modules/filing-cabinet": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/filing-cabinet/-/filing-cabinet-5.0.3.tgz", + "integrity": "sha512-PlPcMwVWg60NQkhvfoxZs4wEHjhlOO/y7OAm4sKM60o1Z9nttRY4mcdQxp/iZ+kg/Vv6Hw1OAaTbYVM9DA9pYg==", + "dev": true, + "license": "MIT", + "dependencies": { + "app-module-path": "^2.2.0", + "commander": "^12.1.0", + "enhanced-resolve": "^5.18.0", + "module-definition": "^6.0.1", + "module-lookup-amd": "^9.0.3", + "resolve": "^1.22.10", + "resolve-dependency-path": "^4.0.1", + "sass-lookup": "^6.1.0", + "stylus-lookup": "^6.1.0", + "tsconfig-paths": "^4.2.0", + "typescript": "^5.7.3" + }, + "bin": { + "filing-cabinet": "bin/cli.js" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/filing-cabinet/node_modules/commander": { + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-12.1.0.tgz", + "integrity": "sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + } + }, + "node_modules/filing-cabinet/node_modules/strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/filing-cabinet/node_modules/tsconfig-paths": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-4.2.0.tgz", + "integrity": "sha512-NoZ4roiN7LnbKn9QqE1amc9DJfzvZXxF4xDavcOWt1BPkdx+m+0gJuPM+S0vCe7zTJMYUP0R8pO2XMr+Y8oLIg==", + "dev": true, + "license": "MIT", + "dependencies": { + "json5": "^2.2.2", + "minimist": "^1.2.6", + "strip-bom": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, "node_modules/fill-range": { "version": "7.1.1", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", @@ -6801,6 +7475,20 @@ "node": ">=6.9.0" } }, + "node_modules/get-amd-module-type": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-amd-module-type/-/get-amd-module-type-6.0.1.tgz", + "integrity": "sha512-MtjsmYiCXcYDDrGqtNbeIYdAl85n+5mSv2r3FbzER/YV3ZILw4HNNIw34HuV5pyl0jzs6GFYU1VHVEefhgcNHQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ast-module-types": "^6.0.1", + "node-source-walk": "^7.0.1" + }, + "engines": { + "node": ">=18" + } + }, "node_modules/get-caller-file": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", @@ -6846,6 +7534,13 @@ "node": ">=6" } }, + "node_modules/get-own-enumerable-property-symbols": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz", + "integrity": "sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==", + "dev": true, + "license": "ISC" + }, "node_modules/get-package-type": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", @@ -7014,6 +7709,22 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/gonzales-pe": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/gonzales-pe/-/gonzales-pe-4.3.0.tgz", + "integrity": "sha512-otgSPpUmdWJ43VXyiNgEYE4luzHCL2pz4wQ0OnDluC6Eg4Ko3Vexy/SrSynglw/eR+OhkzmqFCZa/OFa/RgAOQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "minimist": "^1.2.5" + }, + "bin": { + "gonzales": "bin/gonzales.js" + }, + "engines": { + "node": ">=0.6.0" + } + }, "node_modules/gopd": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", @@ -7284,6 +7995,27 @@ "node": ">=0.10.0" } }, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "BSD-3-Clause" + }, "node_modules/ignore": { "version": "5.3.2", "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", @@ -7629,6 +8361,16 @@ "node": ">=0.10.0" } }, + "node_modules/is-interactive": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", + "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, "node_modules/is-map": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz", @@ -7682,6 +8424,16 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/is-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", + "integrity": "sha512-l4RyHgRqGN4Y3+9JHVrNqO+tN0rV5My76uW5/nuO4K1b6vw5G8d/cmFjP9tRfEsdhZNt0IFdZuK/c2Vr4Nb+Qg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/is-path-inside": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", @@ -7711,6 +8463,16 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/is-regexp": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-regexp/-/is-regexp-1.0.0.tgz", + "integrity": "sha512-7zjFAPO4/gwyQAAgRRmqeEeyIICSdmCqa3tsVHMdBzaXXRiqopZL4Cyghg/XulGWrtABTpbnYYzzIRffLkP4oA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/is-set": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz", @@ -7804,6 +8566,39 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/is-unicode-supported": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", + "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-url": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/is-url/-/is-url-1.2.4.tgz", + "integrity": "sha512-ITvGim8FhRiYe4IQ5uHSkj7pVaPDrCTkNd3yq3cV7iZAcJdHTUMPMEHcqSOy9xZ9qFenQCvi+2wjH9a1nXqHww==", + "dev": true, + "license": "MIT" + }, + "node_modules/is-url-superb": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-url-superb/-/is-url-superb-4.0.0.tgz", + "integrity": "sha512-GI+WjezhPPcbM+tqE9LnmsY5qqjwHzTvjJ36wxYX5ujNXefSUJ/T17r5bqDV8yLhcgB59KTPNOc9O9cmHTPWsA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/is-weakmap": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz", @@ -9296,6 +10091,23 @@ "dev": true, "license": "MIT" }, + "node_modules/log-symbols": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", + "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", + "dev": true, + "license": "MIT", + "dependencies": { + "chalk": "^4.1.0", + "is-unicode-supported": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/loose-envify": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", @@ -9336,6 +10148,55 @@ "lz-string": "bin/bin.js" } }, + "node_modules/madge": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/madge/-/madge-8.0.0.tgz", + "integrity": "sha512-9sSsi3TBPhmkTCIpVQF0SPiChj1L7Rq9kU2KDG1o6v2XH9cCw086MopjVCD+vuoL5v8S77DTbVopTO8OUiQpIw==", + "dev": true, + "license": "MIT", + "dependencies": { + "chalk": "^4.1.2", + "commander": "^7.2.0", + "commondir": "^1.0.1", + "debug": "^4.3.4", + "dependency-tree": "^11.0.0", + "ora": "^5.4.1", + "pluralize": "^8.0.0", + "pretty-ms": "^7.0.1", + "rc": "^1.2.8", + "stream-to-array": "^2.3.0", + "ts-graphviz": "^2.1.2", + "walkdir": "^0.4.1" + }, + "bin": { + "madge": "bin/cli.js" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "type": "individual", + "url": "https://www.paypal.me/pahen" + }, + "peerDependencies": { + "typescript": "^5.4.4" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/madge/node_modules/commander": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", + "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10" + } + }, "node_modules/magic-string": { "version": "0.30.21", "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.21.tgz", @@ -9506,30 +10367,76 @@ "brace-expansion": "^2.0.1" }, "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/minipass": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", + "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/module-definition": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/module-definition/-/module-definition-6.0.1.tgz", + "integrity": "sha512-FeVc50FTfVVQnolk/WQT8MX+2WVcDnTGiq6Wo+/+lJ2ET1bRVi3HG3YlJUfqagNMc/kUlFSoR96AJkxGpKz13g==", + "dev": true, + "license": "MIT", + "dependencies": { + "ast-module-types": "^6.0.1", + "node-source-walk": "^7.0.1" + }, + "bin": { + "module-definition": "bin/cli.js" + }, + "engines": { + "node": ">=18" } }, - "node_modules/minimist": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", - "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "node_modules/module-lookup-amd": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/module-lookup-amd/-/module-lookup-amd-9.0.5.tgz", + "integrity": "sha512-Rs5FVpVcBYRHPLuhHOjgbRhosaQYLtEo3JIeDIbmNo7mSssi1CTzwMh8v36gAzpbzLGXI9wB/yHh+5+3fY1QVw==", "dev": true, "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/ljharb" + "dependencies": { + "commander": "^12.1.0", + "glob": "^7.2.3", + "requirejs": "^2.3.7", + "requirejs-config-file": "^4.0.0" + }, + "bin": { + "lookup-amd": "bin/cli.js" + }, + "engines": { + "node": ">=18" } }, - "node_modules/minipass": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", - "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", + "node_modules/module-lookup-amd/node_modules/commander": { + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-12.1.0.tgz", + "integrity": "sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==", "dev": true, - "license": "ISC", + "license": "MIT", "engines": { - "node": ">=16 || 14 >=14.17" + "node": ">=18" } }, "node_modules/mrmime": { @@ -9629,6 +10536,19 @@ "dev": true, "license": "MIT" }, + "node_modules/node-source-walk": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/node-source-walk/-/node-source-walk-7.0.1.tgz", + "integrity": "sha512-3VW/8JpPqPvnJvseXowjZcirPisssnBuDikk6JIZ8jQzF7KJQX52iPFX4RYYxLycYH7IbMRSPUOga/esVjy5Yg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.26.7" + }, + "engines": { + "node": ">=18" + } + }, "node_modules/nopt": { "version": "7.2.1", "resolved": "https://registry.npmjs.org/nopt/-/nopt-7.2.1.tgz", @@ -9850,6 +10770,30 @@ "node": ">= 0.8.0" } }, + "node_modules/ora": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz", + "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "bl": "^4.1.0", + "chalk": "^4.1.0", + "cli-cursor": "^3.1.0", + "cli-spinners": "^2.5.0", + "is-interactive": "^1.0.0", + "is-unicode-supported": "^0.1.0", + "log-symbols": "^4.1.0", + "strip-ansi": "^6.0.0", + "wcwidth": "^1.0.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/own-keys": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/own-keys/-/own-keys-1.0.1.tgz", @@ -9963,6 +10907,16 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/parse-ms": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/parse-ms/-/parse-ms-2.1.0.tgz", + "integrity": "sha512-kHt7kzLoS9VBZfUsiKjv43mr91ea+U05EyKkEtqp7vNbHxmaVuEqN7XxeEVnGrMtYOAxGrDElSi96K7EgO1zCA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, "node_modules/parseurl": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", @@ -10167,6 +11121,16 @@ "node": ">=8" } }, + "node_modules/pluralize": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-8.0.0.tgz", + "integrity": "sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, "node_modules/possible-typed-array-names": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz", @@ -10206,6 +11170,64 @@ "node": "^10 || ^12 || >=14" } }, + "node_modules/postcss-values-parser": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-values-parser/-/postcss-values-parser-6.0.2.tgz", + "integrity": "sha512-YLJpK0N1brcNJrs9WatuJFtHaV9q5aAOj+S4DI5S7jgHlRfm0PIbDCAFRYMQD5SHq7Fy6xsDhyutgS0QOAs0qw==", + "dev": true, + "license": "MPL-2.0", + "dependencies": { + "color-name": "^1.1.4", + "is-url-superb": "^4.0.0", + "quote-unquote": "^1.0.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "postcss": "^8.2.9" + } + }, + "node_modules/precinct": { + "version": "12.2.0", + "resolved": "https://registry.npmjs.org/precinct/-/precinct-12.2.0.tgz", + "integrity": "sha512-NFBMuwIfaJ4SocE9YXPU/n4AcNSoFMVFjP72nvl3cx69j/ke61/hPOWFREVxLkFhhEGnA8ZuVfTqJBa+PK3b5w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@dependents/detective-less": "^5.0.1", + "commander": "^12.1.0", + "detective-amd": "^6.0.1", + "detective-cjs": "^6.0.1", + "detective-es6": "^5.0.1", + "detective-postcss": "^7.0.1", + "detective-sass": "^6.0.1", + "detective-scss": "^5.0.1", + "detective-stylus": "^5.0.1", + "detective-typescript": "^14.0.0", + "detective-vue2": "^2.2.0", + "module-definition": "^6.0.1", + "node-source-walk": "^7.0.1", + "postcss": "^8.5.1", + "typescript": "^5.7.3" + }, + "bin": { + "precinct": "bin/cli.js" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/precinct/node_modules/commander": { + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-12.1.0.tgz", + "integrity": "sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + } + }, "node_modules/prelude-ls": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", @@ -10273,6 +11295,22 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, + "node_modules/pretty-ms": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-7.0.1.tgz", + "integrity": "sha512-973driJZvxiGOQ5ONsFhOF/DtzPMOMtgC11kCpUrPGMTgqp2q/1gwzCquocrN33is0VZ5GFHXZYMM9l6h67v2Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "parse-ms": "^2.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/proto-list": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/proto-list/-/proto-list-1.2.4.tgz", @@ -10358,6 +11396,13 @@ ], "license": "MIT" }, + "node_modules/quote-unquote": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/quote-unquote/-/quote-unquote-1.0.0.tgz", + "integrity": "sha512-twwRO/ilhlG/FIgYeKGFqyHhoEhqgnKVkcmqMKi2r524gz3ZbDTcyFt38E9xjJI2vT+KbRNHVbnJ/e0I25Azwg==", + "dev": true, + "license": "MIT" + }, "node_modules/range-parser": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", @@ -10384,6 +11429,32 @@ "node": ">= 0.8" } }, + "node_modules/rc": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "dev": true, + "license": "(BSD-2-Clause OR MIT OR Apache-2.0)", + "dependencies": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "bin": { + "rc": "cli.js" + } + }, + "node_modules/rc/node_modules/strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/react": { "version": "18.3.1", "resolved": "https://registry.npmjs.org/react/-/react-18.3.1.tgz", @@ -10490,6 +11561,21 @@ } } }, + "node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dev": true, + "license": "MIT", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, "node_modules/reflect.getprototypeof": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.10.tgz", @@ -10544,6 +11630,34 @@ "node": ">=0.10.0" } }, + "node_modules/requirejs": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/requirejs/-/requirejs-2.3.8.tgz", + "integrity": "sha512-7/cTSLOdYkNBNJcDMWf+luFvMriVm7eYxp4BcFCsAX0wF421Vyce5SXP17c+Jd5otXKGNehIonFlyQXSowL6Mw==", + "dev": true, + "license": "MIT", + "bin": { + "r_js": "bin/r.js", + "r.js": "bin/r.js" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/requirejs-config-file": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/requirejs-config-file/-/requirejs-config-file-4.0.0.tgz", + "integrity": "sha512-jnIre8cbWOyvr8a5F2KuqBnY+SDA4NXr/hzEZJG79Mxm2WiFQz2dzhC8ibtPJS7zkmBEl1mxSwp5HhC1W4qpxw==", + "dev": true, + "license": "MIT", + "dependencies": { + "esprima": "^4.0.0", + "stringify-object": "^3.2.1" + }, + "engines": { + "node": ">=10.13.0" + } + }, "node_modules/resolve": { "version": "1.22.10", "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.10.tgz", @@ -10588,6 +11702,16 @@ "node": ">=8" } }, + "node_modules/resolve-dependency-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/resolve-dependency-path/-/resolve-dependency-path-4.0.1.tgz", + "integrity": "sha512-YQftIIC4vzO9UMhO/sCgXukNyiwVRCVaxiWskCBy7Zpqkplm8kTAISZ8O1MoKW1ca6xzgLUBjZTcDgypXvXxiQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + } + }, "node_modules/resolve-from": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", @@ -10598,6 +11722,20 @@ "node": ">=4" } }, + "node_modules/restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "dev": true, + "license": "MIT", + "dependencies": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/reusify": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz", @@ -10785,6 +11923,33 @@ "dev": true, "license": "MIT" }, + "node_modules/sass-lookup": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/sass-lookup/-/sass-lookup-6.1.0.tgz", + "integrity": "sha512-Zx+lVyoWqXZxHuYWlTA17Z5sczJ6braNT2C7rmClw+c4E7r/n911Zwss3h1uHI9reR5AgHZyNHF7c2+VIp5AUA==", + "dev": true, + "license": "MIT", + "dependencies": { + "commander": "^12.1.0", + "enhanced-resolve": "^5.18.0" + }, + "bin": { + "sass-lookup": "bin/cli.js" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/sass-lookup/node_modules/commander": { + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-12.1.0.tgz", + "integrity": "sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + } + }, "node_modules/scheduler": { "version": "0.23.2", "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz", @@ -10796,9 +11961,9 @@ } }, "node_modules/semver": { - "version": "7.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", - "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", + "version": "7.7.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", + "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", "dev": true, "license": "ISC", "bin": { @@ -11214,6 +12379,26 @@ "node": ">= 0.4" } }, + "node_modules/stream-to-array": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/stream-to-array/-/stream-to-array-2.3.0.tgz", + "integrity": "sha512-UsZtOYEn4tWU2RGLOXr/o/xjRBftZRlG3dEWoaHr8j4GuypJ3isitGbVyjQKAuMu+xbiop8q224TjiZWc4XTZA==", + "dev": true, + "license": "MIT", + "dependencies": { + "any-promise": "^1.1.0" + } + }, + "node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, + "license": "MIT", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, "node_modules/string-length": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", @@ -11318,6 +12503,21 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/stringify-object": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/stringify-object/-/stringify-object-3.3.0.tgz", + "integrity": "sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "get-own-enumerable-property-symbols": "^3.0.0", + "is-obj": "^1.0.1", + "is-regexp": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/strip-ansi": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", @@ -11378,6 +12578,32 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/stylus-lookup": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/stylus-lookup/-/stylus-lookup-6.1.0.tgz", + "integrity": "sha512-5QSwgxAzXPMN+yugy61C60PhoANdItfdjSEZR8siFwz7yL9jTmV0UBKDCfn3K8GkGB4g0Y9py7vTCX8rFu4/pQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "commander": "^12.1.0" + }, + "bin": { + "stylus-lookup": "bin/cli.js" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/stylus-lookup/node_modules/commander": { + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-12.1.0.tgz", + "integrity": "sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + } + }, "node_modules/supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", @@ -11421,6 +12647,20 @@ "url": "https://opencollective.com/unts" } }, + "node_modules/tapable": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.3.0.tgz", + "integrity": "sha512-g9ljZiwki/LfxmQADO3dEY1CbpmXT5Hm2fJ+QaGKwSXUylMybePR7/67YW7jOrrvjEgL1Fmz5kzyAjWVWLlucg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, "node_modules/test-exclude": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", @@ -11594,6 +12834,32 @@ "typescript": ">=4.2.0" } }, + "node_modules/ts-graphviz": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/ts-graphviz/-/ts-graphviz-2.1.6.tgz", + "integrity": "sha512-XyLVuhBVvdJTJr2FJJV2L1pc4MwSjMhcunRVgDE9k4wbb2ee7ORYnPewxMWUav12vxyfUM686MSGsqnVRIInuw==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ts-graphviz" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/ts-graphviz" + } + ], + "license": "MIT", + "dependencies": { + "@ts-graphviz/adapter": "^2.0.6", + "@ts-graphviz/ast": "^2.0.7", + "@ts-graphviz/common": "^2.1.5", + "@ts-graphviz/core": "^2.0.7" + }, + "engines": { + "node": ">=18" + } + }, "node_modules/ts-jest": { "version": "29.4.4", "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.4.4.tgz", @@ -12156,6 +13422,13 @@ "react": "^16.8.0 || ^17 || ^18 || ^19 || ^19.0.0-rc" } }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "dev": true, + "license": "MIT" + }, "node_modules/utils-merge": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", @@ -12495,6 +13768,16 @@ "dev": true, "license": "MIT" }, + "node_modules/walkdir": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/walkdir/-/walkdir-0.4.1.tgz", + "integrity": "sha512-3eBwRyEln6E1MSzcxcVpQIhRG8Q1jLvEqRmCZqS3dsfXEDR/AhOF4d+jHg1qvDCpYaVRZjENPQyrVxAkQqxPgQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, "node_modules/walker": { "version": "1.0.8", "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", @@ -12505,6 +13788,16 @@ "makeerror": "1.0.12" } }, + "node_modules/wcwidth": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", + "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", + "dev": true, + "license": "MIT", + "dependencies": { + "defaults": "^1.0.3" + } + }, "node_modules/whatwg-mimetype": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-3.0.0.tgz", @@ -13861,6 +15154,7 @@ "devDependencies": { "@vitest/ui": "^4.0.16", "@webref/css": "6.6.2", + "madge": "^8.0.0", "typescript": "^5.8.3", "vitest": "^4.0.16" }, diff --git a/packages/@happy-dom/global-registrator/test/node/lit-element/LitElementComponent.ts b/packages/@happy-dom/global-registrator/test/node/lit-element/LitElementComponent.ts index 91d3df7b1..2d17322a0 100644 --- a/packages/@happy-dom/global-registrator/test/node/lit-element/LitElementComponent.ts +++ b/packages/@happy-dom/global-registrator/test/node/lit-element/LitElementComponent.ts @@ -1,4 +1,5 @@ -import { LitElement, TemplateResult, html, css, CSSResult } from 'lit'; +import type { TemplateResult, CSSResult } from 'lit'; +import { LitElement, html, css } from 'lit'; import { customElement, property } from 'lit/decorators.js'; /** diff --git a/packages/@happy-dom/jest-environment/src/index.ts b/packages/@happy-dom/jest-environment/src/index.ts index 0277dbcc3..6a4563454 100644 --- a/packages/@happy-dom/jest-environment/src/index.ts +++ b/packages/@happy-dom/jest-environment/src/index.ts @@ -1,13 +1,14 @@ /* eslint-disable filenames/match-exported */ -import VM from 'vm'; +import type VM from 'vm'; import * as JestUtil from 'jest-util'; import { ModuleMocker } from 'jest-mock'; import { LegacyFakeTimers, ModernFakeTimers } from '@jest/fake-timers'; -import { JestEnvironment, EnvironmentContext } from '@jest/environment'; -import { Window, BrowserErrorCaptureEnum, IOptionalBrowserSettings } from 'happy-dom'; -import { Script } from 'vm'; -import { Global, Config } from '@jest/types'; +import type { JestEnvironment, EnvironmentContext } from '@jest/environment'; +import type { IOptionalBrowserSettings } from 'happy-dom'; +import { Window, BrowserErrorCaptureEnum } from 'happy-dom'; +import type { Script } from 'vm'; +import type { Global, Config } from '@jest/types'; /** * Happy DOM Jest Environment. diff --git a/packages/@happy-dom/jest-environment/test/lit-element/LitElementComponent.ts b/packages/@happy-dom/jest-environment/test/lit-element/LitElementComponent.ts index 91d3df7b1..2d17322a0 100644 --- a/packages/@happy-dom/jest-environment/test/lit-element/LitElementComponent.ts +++ b/packages/@happy-dom/jest-environment/test/lit-element/LitElementComponent.ts @@ -1,4 +1,5 @@ -import { LitElement, TemplateResult, html, css, CSSResult } from 'lit'; +import type { TemplateResult, CSSResult } from 'lit'; +import { LitElement, html, css } from 'lit'; import { customElement, property } from 'lit/decorators.js'; /** diff --git a/packages/@happy-dom/server-renderer/src/ServerRenderer.ts b/packages/@happy-dom/server-renderer/src/ServerRenderer.ts index e559a6635..73bb91af2 100644 --- a/packages/@happy-dom/server-renderer/src/ServerRenderer.ts +++ b/packages/@happy-dom/server-renderer/src/ServerRenderer.ts @@ -1,9 +1,9 @@ -import IOptionalServerRendererConfiguration from './types/IOptionalServerRendererConfiguration.js'; -import IServerRendererItem from './types/IServerRendererItem.js'; +import type IOptionalServerRendererConfiguration from './types/IOptionalServerRendererConfiguration.js'; +import type IServerRendererItem from './types/IServerRendererItem.js'; import { Worker } from 'worker_threads'; -import IServerRendererResult from './types/IServerRendererResult.js'; +import type IServerRendererResult from './types/IServerRendererResult.js'; import ServerRendererLogLevelEnum from './enums/ServerRendererLogLevelEnum.js'; -import IServerRendererConfiguration from './types/IServerRendererConfiguration.js'; +import type IServerRendererConfiguration from './types/IServerRendererConfiguration.js'; import ServerRendererConfigurationFactory from './utilities/ServerRendererConfigurationFactory.js'; import Path from 'path'; import Inspector from 'node:inspector'; diff --git a/packages/@happy-dom/server-renderer/src/ServerRendererBrowser.ts b/packages/@happy-dom/server-renderer/src/ServerRendererBrowser.ts index b22785116..d60a09c5d 100644 --- a/packages/@happy-dom/server-renderer/src/ServerRendererBrowser.ts +++ b/packages/@happy-dom/server-renderer/src/ServerRendererBrowser.ts @@ -1,7 +1,7 @@ import Browser from 'happy-dom/lib/browser/Browser.js'; -import IServerRendererConfiguration from './types/IServerRendererConfiguration.js'; -import IServerRendererItem from './types/IServerRendererItem.js'; -import IServerRendererResult from './types/IServerRendererResult.js'; +import type IServerRendererConfiguration from './types/IServerRendererConfiguration.js'; +import type IServerRendererItem from './types/IServerRendererItem.js'; +import type IServerRendererResult from './types/IServerRendererResult.js'; import ServerRendererPage from './ServerRendererPage.js'; /** diff --git a/packages/@happy-dom/server-renderer/src/ServerRendererPage.ts b/packages/@happy-dom/server-renderer/src/ServerRendererPage.ts index 76124007a..d4abe5773 100644 --- a/packages/@happy-dom/server-renderer/src/ServerRendererPage.ts +++ b/packages/@happy-dom/server-renderer/src/ServerRendererPage.ts @@ -1,11 +1,11 @@ import HTMLSerializer from 'happy-dom/lib/html-serializer/HTMLSerializer.js'; import FS from 'fs'; import Path from 'path'; -import IServerRendererItem from './types/IServerRendererItem.js'; -import IServerRendererResult from './types/IServerRendererResult.js'; -import { BrowserWindow, ErrorEvent, IBrowserPage, Response } from 'happy-dom'; +import type IServerRendererItem from './types/IServerRendererItem.js'; +import type IServerRendererResult from './types/IServerRendererResult.js'; +import type { BrowserWindow, ErrorEvent, IBrowserPage, Response } from 'happy-dom'; import BrowserWindowPolyfill from './utilities/BrowserWindowPolyfill.js'; -import IServerRendererConfiguration from './types/IServerRendererConfiguration.js'; +import type IServerRendererConfiguration from './types/IServerRendererConfiguration.js'; import ServerRendererModeEnum from './enums/ServerRendererModeEnum.js'; import * as PropertySymbol from 'happy-dom/lib/PropertySymbol.js'; diff --git a/packages/@happy-dom/server-renderer/src/ServerRendererPageWorker.ts b/packages/@happy-dom/server-renderer/src/ServerRendererPageWorker.ts index 283e7d009..84435fcea 100644 --- a/packages/@happy-dom/server-renderer/src/ServerRendererPageWorker.ts +++ b/packages/@happy-dom/server-renderer/src/ServerRendererPageWorker.ts @@ -1,7 +1,7 @@ import { parentPort, workerData } from 'worker_threads'; import Inspector from 'node:inspector'; import { GlobalRegistrator } from '@happy-dom/global-registrator'; -import { Document, Window } from 'happy-dom'; +import type { Document, Window } from 'happy-dom'; import WindowBrowserContext from 'happy-dom/lib/window/WindowBrowserContext.js'; import ServerRendererPage from './ServerRendererPage.js'; diff --git a/packages/@happy-dom/server-renderer/src/ServerRendererServer.ts b/packages/@happy-dom/server-renderer/src/ServerRendererServer.ts index 3623b27f7..4c0906807 100644 --- a/packages/@happy-dom/server-renderer/src/ServerRendererServer.ts +++ b/packages/@happy-dom/server-renderer/src/ServerRendererServer.ts @@ -1,13 +1,13 @@ import Http2 from 'http2'; -import IOptionalServerRendererConfiguration from './types/IOptionalServerRendererConfiguration.js'; -import IServerRendererConfiguration from './types/IServerRendererConfiguration.js'; +import type IOptionalServerRendererConfiguration from './types/IOptionalServerRendererConfiguration.js'; +import type IServerRendererConfiguration from './types/IServerRendererConfiguration.js'; import ServerRendererConfigurationFactory from './utilities/ServerRendererConfigurationFactory.js'; import ServerRenderer from './ServerRenderer.js'; import FetchHTTPSCertificate from 'happy-dom/lib/fetch/certificate/FetchHTTPSCertificate.js'; import ZLib from 'node:zlib'; import Stream from 'node:stream/promises'; import OS from 'node:os'; -import IServerRendererResult from './types/IServerRendererResult.js'; +import type IServerRendererResult from './types/IServerRendererResult.js'; // eslint-disable-next-line import/no-named-as-default import Chalk from 'chalk'; import ServerRendererLogLevelEnum from './enums/ServerRendererLogLevelEnum.js'; diff --git a/packages/@happy-dom/server-renderer/src/types/IOptionalServerRendererConfiguration.ts b/packages/@happy-dom/server-renderer/src/types/IOptionalServerRendererConfiguration.ts index fed711e29..b66687735 100644 --- a/packages/@happy-dom/server-renderer/src/types/IOptionalServerRendererConfiguration.ts +++ b/packages/@happy-dom/server-renderer/src/types/IOptionalServerRendererConfiguration.ts @@ -1,7 +1,7 @@ import type IOptionalBrowserSettings from 'happy-dom/lib/browser/types/IOptionalBrowserSettings.js'; -import ServerRendererLogLevelEnum from '../enums/ServerRendererLogLevelEnum.js'; -import IServerRendererItem from './IServerRendererItem.js'; -import ServerRendererModeEnum from '../enums/ServerRendererModeEnum.js'; +import type ServerRendererLogLevelEnum from '../enums/ServerRendererLogLevelEnum.js'; +import type IServerRendererItem from './IServerRendererItem.js'; +import type ServerRendererModeEnum from '../enums/ServerRendererModeEnum.js'; export default interface IOptionalServerRendererConfiguration { /** diff --git a/packages/@happy-dom/server-renderer/src/types/IServerRendererConfiguration.ts b/packages/@happy-dom/server-renderer/src/types/IServerRendererConfiguration.ts index 5c108784f..976cba3a1 100644 --- a/packages/@happy-dom/server-renderer/src/types/IServerRendererConfiguration.ts +++ b/packages/@happy-dom/server-renderer/src/types/IServerRendererConfiguration.ts @@ -1,7 +1,7 @@ import type IBrowserSettings from 'happy-dom/lib/browser/types/IBrowserSettings.js'; -import ServerRendererLogLevelEnum from '../enums/ServerRendererLogLevelEnum.js'; -import IServerRendererItem from './IServerRendererItem.js'; -import ServerRendererModeEnum from '../enums/ServerRendererModeEnum.js'; +import type ServerRendererLogLevelEnum from '../enums/ServerRendererLogLevelEnum.js'; +import type IServerRendererItem from './IServerRendererItem.js'; +import type ServerRendererModeEnum from '../enums/ServerRendererModeEnum.js'; export default interface IServerRendererConfiguration { /** diff --git a/packages/@happy-dom/server-renderer/src/utilities/BrowserWindowPolyfill.ts b/packages/@happy-dom/server-renderer/src/utilities/BrowserWindowPolyfill.ts index 37ee74391..fbf97968d 100644 --- a/packages/@happy-dom/server-renderer/src/utilities/BrowserWindowPolyfill.ts +++ b/packages/@happy-dom/server-renderer/src/utilities/BrowserWindowPolyfill.ts @@ -1,4 +1,4 @@ -import { BrowserWindow } from 'happy-dom'; +import type { BrowserWindow } from 'happy-dom'; /** * Browser window polyfill utility. diff --git a/packages/@happy-dom/server-renderer/src/utilities/ProcessArgumentsParser.ts b/packages/@happy-dom/server-renderer/src/utilities/ProcessArgumentsParser.ts index 4c7d9d240..43f33c81f 100644 --- a/packages/@happy-dom/server-renderer/src/utilities/ProcessArgumentsParser.ts +++ b/packages/@happy-dom/server-renderer/src/utilities/ProcessArgumentsParser.ts @@ -1,5 +1,5 @@ -import IServerRendererConfiguration from '../types/IServerRendererConfiguration.js'; -import IServerRendererItem from '../types/IServerRendererItem.js'; +import type IServerRendererConfiguration from '../types/IServerRendererConfiguration.js'; +import type IServerRendererItem from '../types/IServerRendererItem.js'; import Path from 'path'; import { BrowserNavigationCrossOriginPolicyEnum } from 'happy-dom'; import ServerRendererLogLevelEnum from '../enums/ServerRendererLogLevelEnum.js'; diff --git a/packages/@happy-dom/server-renderer/src/utilities/ServerRendererConfigurationFactory.ts b/packages/@happy-dom/server-renderer/src/utilities/ServerRendererConfigurationFactory.ts index 5e8042d2e..f36c69408 100644 --- a/packages/@happy-dom/server-renderer/src/utilities/ServerRendererConfigurationFactory.ts +++ b/packages/@happy-dom/server-renderer/src/utilities/ServerRendererConfigurationFactory.ts @@ -1,6 +1,6 @@ import BrowserSettingsFactory from 'happy-dom/lib/browser/BrowserSettingsFactory.js'; -import IOptionalServerRendererConfiguration from '../types/IOptionalServerRendererConfiguration.js'; -import IServerRendererConfiguration from '../types/IServerRendererConfiguration.js'; +import type IOptionalServerRendererConfiguration from '../types/IOptionalServerRendererConfiguration.js'; +import type IServerRendererConfiguration from '../types/IServerRendererConfiguration.js'; import DefaultServerRendererConfiguration from '../config/DefaultServerRendererConfiguration.js'; import Path from 'path'; diff --git a/packages/@happy-dom/server-renderer/test/MockedWorker.ts b/packages/@happy-dom/server-renderer/test/MockedWorker.ts index 3a60bf5eb..256c12fe9 100644 --- a/packages/@happy-dom/server-renderer/test/MockedWorker.ts +++ b/packages/@happy-dom/server-renderer/test/MockedWorker.ts @@ -1,6 +1,6 @@ -import IServerRendererConfiguration from '../src/types/IServerRendererConfiguration'; -import IServerRendererItem from '../src/types/IServerRendererItem'; -import IServerRendererResult from '../src/types/IServerRendererResult'; +import type IServerRendererConfiguration from '../src/types/IServerRendererConfiguration'; +import type IServerRendererItem from '../src/types/IServerRendererItem'; +import type IServerRendererResult from '../src/types/IServerRendererResult'; type TEvent = 'message' | 'error' | 'exit'; diff --git a/packages/@happy-dom/server-renderer/test/ServerRenderer.test.ts b/packages/@happy-dom/server-renderer/test/ServerRenderer.test.ts index e2c4d505d..87e8c77d3 100644 --- a/packages/@happy-dom/server-renderer/test/ServerRenderer.test.ts +++ b/packages/@happy-dom/server-renderer/test/ServerRenderer.test.ts @@ -1,7 +1,7 @@ import { describe, it, expect, afterEach, vi, beforeEach } from 'vitest'; import ServerRenderer from '../src/ServerRenderer.js'; import MockedURLList from './MockedURLList.js'; -import IServerRendererResult from '../src/types/IServerRendererResult.js'; +import type IServerRendererResult from '../src/types/IServerRendererResult.js'; import MockedWorker from './MockedWorker.js'; import DefaultServerRendererConfiguration from '../src/config/DefaultServerRendererConfiguration.js'; // eslint-disable-next-line import/no-named-as-default diff --git a/packages/@happy-dom/server-renderer/test/ServerRendererBrowser.test.ts b/packages/@happy-dom/server-renderer/test/ServerRendererBrowser.test.ts index 0fc08a4a2..732e0581f 100644 --- a/packages/@happy-dom/server-renderer/test/ServerRendererBrowser.test.ts +++ b/packages/@happy-dom/server-renderer/test/ServerRendererBrowser.test.ts @@ -5,7 +5,7 @@ import ServerRendererBrowser from '../src/ServerRendererBrowser.js'; import ServerRendererConfigurationFactory from '../src/utilities/ServerRendererConfigurationFactory.js'; import Fetch from 'happy-dom/lib/fetch/Fetch.js'; import Headers from 'happy-dom/lib/fetch/Headers.js'; -import Response from 'happy-dom/lib/fetch/Response.js'; +import type Response from 'happy-dom/lib/fetch/Response.js'; import MockedPageHTML from './MockedPageHTML.js'; import MockedURLList from './MockedURLList.js'; import ResponseCacheFileSystem from 'happy-dom/lib/fetch/cache/response/ResponseCacheFileSystem.js'; diff --git a/packages/@happy-dom/server-renderer/test/ServerRendererPage.test.ts b/packages/@happy-dom/server-renderer/test/ServerRendererPage.test.ts index 6999452a1..2a22dfc17 100644 --- a/packages/@happy-dom/server-renderer/test/ServerRendererPage.test.ts +++ b/packages/@happy-dom/server-renderer/test/ServerRendererPage.test.ts @@ -3,9 +3,10 @@ import ServerRendererPage from '../src/ServerRendererPage.js'; import ServerRendererConfigurationFactory from '../src/utilities/ServerRendererConfigurationFactory.js'; import Fetch from 'happy-dom/lib/fetch/Fetch.js'; import Headers from 'happy-dom/lib/fetch/Headers.js'; -import Response from 'happy-dom/lib/fetch/Response.js'; +import type Response from 'happy-dom/lib/fetch/Response.js'; import MockedPageHTML from './MockedPageHTML.js'; -import { Browser, BrowserPage } from 'happy-dom'; +import type { BrowserPage } from 'happy-dom'; +import { Browser } from 'happy-dom'; import ServerRendererModeEnum from '../src/enums/ServerRendererModeEnum.js'; describe('ServerRendererPage', () => { diff --git a/packages/@happy-dom/server-renderer/test/ServerRendererServer.test.ts b/packages/@happy-dom/server-renderer/test/ServerRendererServer.test.ts index b7a77f280..f76fb95fb 100644 --- a/packages/@happy-dom/server-renderer/test/ServerRendererServer.test.ts +++ b/packages/@happy-dom/server-renderer/test/ServerRendererServer.test.ts @@ -1,16 +1,17 @@ import { describe, it, expect, afterEach, vi, beforeEach } from 'vitest'; -import Http2, { Http2ServerRequest, Http2ServerResponse } from 'http2'; +import type { Http2ServerRequest, Http2ServerResponse } from 'http2'; +import Http2 from 'http2'; import ServerRendererServer from '../src/ServerRendererServer.js'; import ServerRendererConfigurationFactory from '../src/utilities/ServerRendererConfigurationFactory.js'; import OS from 'node:os'; import FetchHTTPSCertificate from 'happy-dom/lib/fetch/certificate/FetchHTTPSCertificate.js'; import Headers from 'happy-dom/lib/fetch/Headers.js'; -import Response from 'happy-dom/lib/fetch/Response.js'; +import type Response from 'happy-dom/lib/fetch/Response.js'; import ServerRenderer from '../src/ServerRenderer.js'; -import IServerRendererItem from '../src/types/IServerRendererItem.js'; -import IServerRendererResult from '../src/types/IServerRendererResult.js'; +import type IServerRendererItem from '../src/types/IServerRendererItem.js'; +import type IServerRendererResult from '../src/types/IServerRendererResult.js'; import ZLib from 'node:zlib'; -import IOptionalServerRendererConfiguration from '../src/types/IOptionalServerRendererConfiguration.js'; +import type IOptionalServerRendererConfiguration from '../src/types/IOptionalServerRendererConfiguration.js'; // eslint-disable-next-line import/no-named-as-default import Chalk from 'chalk'; import PackageVersion from '../src/utilities/PackageVersion.js'; diff --git a/packages/@happy-dom/server-renderer/test/utilities/MockedConfiguration.ts b/packages/@happy-dom/server-renderer/test/utilities/MockedConfiguration.ts index be80b9deb..3f5836208 100644 --- a/packages/@happy-dom/server-renderer/test/utilities/MockedConfiguration.ts +++ b/packages/@happy-dom/server-renderer/test/utilities/MockedConfiguration.ts @@ -1,5 +1,5 @@ import { BrowserErrorCaptureEnum, BrowserNavigationCrossOriginPolicyEnum } from 'happy-dom'; -import IServerRendererConfiguration from '../../src/types/IServerRendererConfiguration'; +import type IServerRendererConfiguration from '../../src/types/IServerRendererConfiguration'; import ServerRendererLogLevelEnum from '../../src/enums/ServerRendererLogLevelEnum'; export default { diff --git a/packages/@happy-dom/server-renderer/test/utilities/ProcessArgumentsParser.test.ts b/packages/@happy-dom/server-renderer/test/utilities/ProcessArgumentsParser.test.ts index 02110a075..a2c622805 100644 --- a/packages/@happy-dom/server-renderer/test/utilities/ProcessArgumentsParser.test.ts +++ b/packages/@happy-dom/server-renderer/test/utilities/ProcessArgumentsParser.test.ts @@ -1,7 +1,7 @@ import { describe, it, expect, beforeEach, afterEach, vi } from 'vitest'; import ProcessArgumentsParser from '../../src/utilities/ProcessArgumentsParser.js'; import DefaultServerRendererConfiguration from '../../src/config/DefaultServerRendererConfiguration.js'; -import IServerRendererConfiguration from '../../src/types/IServerRendererConfiguration.js'; +import type IServerRendererConfiguration from '../../src/types/IServerRendererConfiguration.js'; import MockedConfiguration from './MockedConfiguration.js'; import Path from 'path'; diff --git a/packages/happy-dom/package.json b/packages/happy-dom/package.json index c8f60f81a..d22fb70e6 100644 --- a/packages/happy-dom/package.json +++ b/packages/happy-dom/package.json @@ -30,7 +30,8 @@ "test": "vitest run", "test:ui": "vitest --ui", "test:watch": "vitest", - "test:debug": "vitest run --inspect-brk --no-file-parallelism" + "test:debug": "vitest run --inspect-brk --no-file-parallelism", + "test:circular-dependencies": "madge --circular --extensions js lib/index.js" }, "dependencies": { "@types/whatwg-mimetype": "^3.0.2", @@ -44,7 +45,8 @@ "@vitest/ui": "^4.0.16", "@webref/css": "6.6.2", "typescript": "^5.8.3", - "vitest": "^4.0.16" + "vitest": "^4.0.16", + "madge": "^8.0.0" }, "engines": { "node": ">=20.0.0" diff --git a/packages/happy-dom/src/async-task-manager/AsyncTaskManager.ts b/packages/happy-dom/src/async-task-manager/AsyncTaskManager.ts index d3864f259..2ea02ce32 100644 --- a/packages/happy-dom/src/async-task-manager/AsyncTaskManager.ts +++ b/packages/happy-dom/src/async-task-manager/AsyncTaskManager.ts @@ -1,4 +1,4 @@ -import IBrowserFrame from '../browser/types/IBrowserFrame.js'; +import type IBrowserFrame from '../browser/types/IBrowserFrame.js'; import AsyncTaskManagerDebugError from './AsyncTaskManagerDebugError.js'; // We need to set this as a global constant, so that using fake timers in Jest and Vitest won't override this on the global object. diff --git a/packages/happy-dom/src/browser/Browser.ts b/packages/happy-dom/src/browser/Browser.ts index f7816e9c2..fd7010866 100644 --- a/packages/happy-dom/src/browser/Browser.ts +++ b/packages/happy-dom/src/browser/Browser.ts @@ -1,9 +1,9 @@ -import IBrowserSettings from './types/IBrowserSettings.js'; +import type IBrowserSettings from './types/IBrowserSettings.js'; import BrowserContext from './BrowserContext.js'; -import IOptionalBrowserSettings from './types/IOptionalBrowserSettings.js'; +import type IOptionalBrowserSettings from './types/IOptionalBrowserSettings.js'; import BrowserSettingsFactory from './BrowserSettingsFactory.js'; -import BrowserPage from './BrowserPage.js'; -import IBrowser from './types/IBrowser.js'; +import type BrowserPage from './BrowserPage.js'; +import type IBrowser from './types/IBrowser.js'; import BrowserExceptionObserver from './utilities/BrowserExceptionObserver.js'; import * as PropertySymbol from '../PropertySymbol.js'; import BrowserErrorCaptureEnum from './enums/BrowserErrorCaptureEnum.js'; diff --git a/packages/happy-dom/src/browser/BrowserContext.ts b/packages/happy-dom/src/browser/BrowserContext.ts index 1cd20cc7e..ac1bd781f 100644 --- a/packages/happy-dom/src/browser/BrowserContext.ts +++ b/packages/happy-dom/src/browser/BrowserContext.ts @@ -1,14 +1,14 @@ import CookieContainer from '../cookie/CookieContainer.js'; -import ICookieContainer from '../cookie/ICookieContainer.js'; -import IResponseCache from '../fetch/cache/response/IResponseCache.js'; +import type ICookieContainer from '../cookie/ICookieContainer.js'; +import type IResponseCache from '../fetch/cache/response/IResponseCache.js'; import ResponseCache from '../fetch/cache/response/ResponseCache.js'; -import Browser from './Browser.js'; +import type Browser from './Browser.js'; import BrowserPage from './BrowserPage.js'; -import IBrowserContext from './types/IBrowserContext.js'; -import IPreflightResponseCache from '../fetch/cache/preflight/IPreflightResponseCache.js'; +import type IBrowserContext from './types/IBrowserContext.js'; +import type IPreflightResponseCache from '../fetch/cache/preflight/IPreflightResponseCache.js'; import PreflightResponseCache from '../fetch/cache/preflight/PreflightResponseCache.js'; import * as PropertySymbol from '../PropertySymbol.js'; -import IECMAScriptModuleCachedResult from '../module/types/IECMAScriptModuleCachedResult.js'; +import type IECMAScriptModuleCachedResult from '../module/types/IECMAScriptModuleCachedResult.js'; /** * Browser context. diff --git a/packages/happy-dom/src/browser/BrowserFrame.ts b/packages/happy-dom/src/browser/BrowserFrame.ts index ad06c5eb2..a1061ab9c 100644 --- a/packages/happy-dom/src/browser/BrowserFrame.ts +++ b/packages/happy-dom/src/browser/BrowserFrame.ts @@ -1,17 +1,17 @@ -import BrowserPage from './BrowserPage.js'; +import type BrowserPage from './BrowserPage.js'; import * as PropertySymbol from '../PropertySymbol.js'; import AsyncTaskManager from '../async-task-manager/AsyncTaskManager.js'; -import IBrowserFrame from './types/IBrowserFrame.js'; +import type IBrowserFrame from './types/IBrowserFrame.js'; import BrowserWindow from '../window/BrowserWindow.js'; -import CrossOriginBrowserWindow from '../window/CrossOriginBrowserWindow.js'; -import Response from '../fetch/Response.js'; -import IGoToOptions from './types/IGoToOptions.js'; -import { Script } from 'vm'; +import type CrossOriginBrowserWindow from '../window/CrossOriginBrowserWindow.js'; +import type Response from '../fetch/Response.js'; +import type IGoToOptions from './types/IGoToOptions.js'; +import type { Script } from 'vm'; import BrowserFrameURL from './utilities/BrowserFrameURL.js'; import BrowserFrameScriptEvaluator from './utilities/BrowserFrameScriptEvaluator.js'; import BrowserFrameNavigator from './utilities/BrowserFrameNavigator.js'; -import IReloadOptions from './types/IReloadOptions.js'; -import Document from '../nodes/document/Document.js'; +import type IReloadOptions from './types/IReloadOptions.js'; +import type Document from '../nodes/document/Document.js'; import HistoryItemList from '../history/HistoryItemList.js'; /** diff --git a/packages/happy-dom/src/browser/BrowserPage.ts b/packages/happy-dom/src/browser/BrowserPage.ts index 34b8ccfc9..ee4ec355e 100644 --- a/packages/happy-dom/src/browser/BrowserPage.ts +++ b/packages/happy-dom/src/browser/BrowserPage.ts @@ -1,15 +1,15 @@ import VirtualConsolePrinter from '../console/VirtualConsolePrinter.js'; import BrowserFrame from './BrowserFrame.js'; -import BrowserContext from './BrowserContext.js'; +import type BrowserContext from './BrowserContext.js'; import VirtualConsole from '../console/VirtualConsole.js'; -import IBrowserPage from './types/IBrowserPage.js'; +import type IBrowserPage from './types/IBrowserPage.js'; import BrowserPageUtility from './utilities/BrowserPageUtility.js'; -import { Script } from 'vm'; -import IGoToOptions from './types/IGoToOptions.js'; -import Response from '../fetch/Response.js'; -import IReloadOptions from './types/IReloadOptions.js'; -import IBrowserPageViewport from './types/IBrowserPageViewport.js'; -import IOptionalBrowserPageViewport from './types/IOptionalBrowserPageViewport.js'; +import type { Script } from 'vm'; +import type IGoToOptions from './types/IGoToOptions.js'; +import type Response from '../fetch/Response.js'; +import type IReloadOptions from './types/IReloadOptions.js'; +import type IBrowserPageViewport from './types/IBrowserPageViewport.js'; +import type IOptionalBrowserPageViewport from './types/IOptionalBrowserPageViewport.js'; import Event from '../event/Event.js'; /** diff --git a/packages/happy-dom/src/browser/BrowserSettingsFactory.ts b/packages/happy-dom/src/browser/BrowserSettingsFactory.ts index e28e553af..480c52f87 100644 --- a/packages/happy-dom/src/browser/BrowserSettingsFactory.ts +++ b/packages/happy-dom/src/browser/BrowserSettingsFactory.ts @@ -1,5 +1,5 @@ -import IBrowserSettings from './types/IBrowserSettings.js'; -import IOptionalBrowserSettings from './types/IOptionalBrowserSettings.js'; +import type IBrowserSettings from './types/IBrowserSettings.js'; +import type IOptionalBrowserSettings from './types/IOptionalBrowserSettings.js'; import DefaultBrowserSettings from './DefaultBrowserSettings.js'; /** diff --git a/packages/happy-dom/src/browser/DefaultBrowserSettings.ts b/packages/happy-dom/src/browser/DefaultBrowserSettings.ts index 0a52ddd2f..e84460507 100644 --- a/packages/happy-dom/src/browser/DefaultBrowserSettings.ts +++ b/packages/happy-dom/src/browser/DefaultBrowserSettings.ts @@ -1,7 +1,7 @@ import PackageVersion from '../version.js'; import BrowserErrorCaptureEnum from './enums/BrowserErrorCaptureEnum.js'; import BrowserNavigationCrossOriginPolicyEnum from './enums/BrowserNavigationCrossOriginPolicyEnum.js'; -import IBrowserSettings from './types/IBrowserSettings.js'; +import type IBrowserSettings from './types/IBrowserSettings.js'; export default { disableJavaScriptEvaluation: false, diff --git a/packages/happy-dom/src/browser/detached-browser/DetachedBrowser.ts b/packages/happy-dom/src/browser/detached-browser/DetachedBrowser.ts index b96dfbf25..acd79c11c 100644 --- a/packages/happy-dom/src/browser/detached-browser/DetachedBrowser.ts +++ b/packages/happy-dom/src/browser/detached-browser/DetachedBrowser.ts @@ -1,15 +1,15 @@ -import IBrowserSettings from '../types/IBrowserSettings.js'; +import type IBrowserSettings from '../types/IBrowserSettings.js'; import DetachedBrowserContext from './DetachedBrowserContext.js'; -import IOptionalBrowserSettings from '../types/IOptionalBrowserSettings.js'; +import type IOptionalBrowserSettings from '../types/IOptionalBrowserSettings.js'; import BrowserSettingsFactory from '../BrowserSettingsFactory.js'; -import DetachedBrowserPage from './DetachedBrowserPage.js'; -import IBrowser from '../types/IBrowser.js'; -import IBrowserFrame from '../types/IBrowserFrame.js'; -import BrowserWindow from '../../window/BrowserWindow.js'; +import type DetachedBrowserPage from './DetachedBrowserPage.js'; +import type IBrowser from '../types/IBrowser.js'; +import type IBrowserFrame from '../types/IBrowserFrame.js'; +import type BrowserWindow from '../../window/BrowserWindow.js'; import * as PropertySymbol from '../../PropertySymbol.js'; import BrowserErrorCaptureEnum from '../enums/BrowserErrorCaptureEnum.js'; import BrowserExceptionObserver from '../utilities/BrowserExceptionObserver.js'; -import BrowserContext from '../BrowserContext.js'; +import type BrowserContext from '../BrowserContext.js'; /** * Detached browser used when constructing a Window instance without a browser. diff --git a/packages/happy-dom/src/browser/detached-browser/DetachedBrowserContext.ts b/packages/happy-dom/src/browser/detached-browser/DetachedBrowserContext.ts index b9aed0d79..173770477 100644 --- a/packages/happy-dom/src/browser/detached-browser/DetachedBrowserContext.ts +++ b/packages/happy-dom/src/browser/detached-browser/DetachedBrowserContext.ts @@ -1,14 +1,14 @@ -import DetachedBrowser from './DetachedBrowser.js'; +import type DetachedBrowser from './DetachedBrowser.js'; import DetachedBrowserPage from './DetachedBrowserPage.js'; -import IBrowserContext from '../types/IBrowserContext.js'; -import ICookieContainer from '../../cookie/ICookieContainer.js'; +import type IBrowserContext from '../types/IBrowserContext.js'; +import type ICookieContainer from '../../cookie/ICookieContainer.js'; import CookieContainer from '../../cookie/CookieContainer.js'; import ResponseCache from '../../fetch/cache/response/ResponseCache.js'; -import IResponseCache from '../../fetch/cache/response/IResponseCache.js'; -import IPreflightResponseCache from '../../fetch/cache/preflight/IPreflightResponseCache.js'; +import type IResponseCache from '../../fetch/cache/response/IResponseCache.js'; +import type IPreflightResponseCache from '../../fetch/cache/preflight/IPreflightResponseCache.js'; import PreflightResponseCache from '../../fetch/cache/preflight/PreflightResponseCache.js'; import * as PropertySymbol from '../../PropertySymbol.js'; -import IECMAScriptModuleCachedResult from '../../module/types/IECMAScriptModuleCachedResult.js'; +import type IECMAScriptModuleCachedResult from '../../module/types/IECMAScriptModuleCachedResult.js'; /** * Detached browser context used when constructing a Window instance without a browser. diff --git a/packages/happy-dom/src/browser/detached-browser/DetachedBrowserFrame.ts b/packages/happy-dom/src/browser/detached-browser/DetachedBrowserFrame.ts index 6865f2bfd..88d0cb8b9 100644 --- a/packages/happy-dom/src/browser/detached-browser/DetachedBrowserFrame.ts +++ b/packages/happy-dom/src/browser/detached-browser/DetachedBrowserFrame.ts @@ -1,17 +1,17 @@ -import DetachedBrowserPage from './DetachedBrowserPage.js'; +import type DetachedBrowserPage from './DetachedBrowserPage.js'; import * as PropertySymbol from '../../PropertySymbol.js'; import AsyncTaskManager from '../../async-task-manager/AsyncTaskManager.js'; -import IBrowserFrame from '../types/IBrowserFrame.js'; -import Response from '../../fetch/Response.js'; -import IGoToOptions from '../types/IGoToOptions.js'; -import { Script } from 'vm'; +import type IBrowserFrame from '../types/IBrowserFrame.js'; +import type Response from '../../fetch/Response.js'; +import type IGoToOptions from '../types/IGoToOptions.js'; +import type { Script } from 'vm'; import BrowserFrameURL from '../utilities/BrowserFrameURL.js'; import BrowserFrameScriptEvaluator from '../utilities/BrowserFrameScriptEvaluator.js'; import BrowserFrameNavigator from '../utilities/BrowserFrameNavigator.js'; -import BrowserWindow from '../../window/BrowserWindow.js'; -import IReloadOptions from '../types/IReloadOptions.js'; -import Document from '../../nodes/document/Document.js'; -import CrossOriginBrowserWindow from '../../window/CrossOriginBrowserWindow.js'; +import type BrowserWindow from '../../window/BrowserWindow.js'; +import type IReloadOptions from '../types/IReloadOptions.js'; +import type Document from '../../nodes/document/Document.js'; +import type CrossOriginBrowserWindow from '../../window/CrossOriginBrowserWindow.js'; import HistoryItemList from '../../history/HistoryItemList.js'; /** diff --git a/packages/happy-dom/src/browser/detached-browser/DetachedBrowserPage.ts b/packages/happy-dom/src/browser/detached-browser/DetachedBrowserPage.ts index 90ff78384..69de91215 100644 --- a/packages/happy-dom/src/browser/detached-browser/DetachedBrowserPage.ts +++ b/packages/happy-dom/src/browser/detached-browser/DetachedBrowserPage.ts @@ -1,15 +1,15 @@ import VirtualConsolePrinter from '../../console/VirtualConsolePrinter.js'; import DetachedBrowserFrame from './DetachedBrowserFrame.js'; -import DetachedBrowserContext from './DetachedBrowserContext.js'; +import type DetachedBrowserContext from './DetachedBrowserContext.js'; import VirtualConsole from '../../console/VirtualConsole.js'; -import IBrowserPage from '../types/IBrowserPage.js'; -import { Script } from 'vm'; -import IGoToOptions from '../types/IGoToOptions.js'; -import Response from '../../fetch/Response.js'; +import type IBrowserPage from '../types/IBrowserPage.js'; +import type { Script } from 'vm'; +import type IGoToOptions from '../types/IGoToOptions.js'; +import type Response from '../../fetch/Response.js'; import BrowserPageUtility from '../utilities/BrowserPageUtility.js'; -import IReloadOptions from '../types/IReloadOptions.js'; -import IOptionalBrowserPageViewport from '../types/IOptionalBrowserPageViewport.js'; -import IBrowserPageViewport from '../types/IBrowserPageViewport.js'; +import type IReloadOptions from '../types/IReloadOptions.js'; +import type IOptionalBrowserPageViewport from '../types/IOptionalBrowserPageViewport.js'; +import type IBrowserPageViewport from '../types/IBrowserPageViewport.js'; import Event from '../../event/Event.js'; /** diff --git a/packages/happy-dom/src/browser/types/IBrowser.ts b/packages/happy-dom/src/browser/types/IBrowser.ts index e3ce58181..0dc86edfb 100644 --- a/packages/happy-dom/src/browser/types/IBrowser.ts +++ b/packages/happy-dom/src/browser/types/IBrowser.ts @@ -1,8 +1,8 @@ -import IBrowserContext from './IBrowserContext.js'; -import IBrowserPage from './IBrowserPage.js'; -import IBrowserSettings from './IBrowserSettings.js'; -import * as PropertySymbol from '../../PropertySymbol.js'; -import BrowserExceptionObserver from '../utilities/BrowserExceptionObserver.js'; +import type IBrowserContext from './IBrowserContext.js'; +import type IBrowserPage from './IBrowserPage.js'; +import type IBrowserSettings from './IBrowserSettings.js'; +import type * as PropertySymbol from '../../PropertySymbol.js'; +import type BrowserExceptionObserver from '../utilities/BrowserExceptionObserver.js'; /** * Browser. diff --git a/packages/happy-dom/src/browser/types/IBrowserContext.ts b/packages/happy-dom/src/browser/types/IBrowserContext.ts index 041731bb3..5d6b534ad 100644 --- a/packages/happy-dom/src/browser/types/IBrowserContext.ts +++ b/packages/happy-dom/src/browser/types/IBrowserContext.ts @@ -1,10 +1,10 @@ -import ICookieContainer from '../../cookie/ICookieContainer.js'; -import IResponseCache from '../../fetch/cache/response/IResponseCache.js'; -import IBrowser from './IBrowser.js'; -import IBrowserPage from './IBrowserPage.js'; -import IPreflightResponseCache from '../../fetch/cache/preflight/IPreflightResponseCache.js'; -import * as PropertySymbol from '../../PropertySymbol.js'; -import IECMAScriptModuleCachedResult from '../../module/types/IECMAScriptModuleCachedResult.js'; +import type ICookieContainer from '../../cookie/ICookieContainer.js'; +import type IResponseCache from '../../fetch/cache/response/IResponseCache.js'; +import type IBrowser from './IBrowser.js'; +import type IBrowserPage from './IBrowserPage.js'; +import type IPreflightResponseCache from '../../fetch/cache/preflight/IPreflightResponseCache.js'; +import type * as PropertySymbol from '../../PropertySymbol.js'; +import type IECMAScriptModuleCachedResult from '../../module/types/IECMAScriptModuleCachedResult.js'; /** * Browser context. diff --git a/packages/happy-dom/src/browser/types/IBrowserFrame.ts b/packages/happy-dom/src/browser/types/IBrowserFrame.ts index 85517591d..a475f71bf 100644 --- a/packages/happy-dom/src/browser/types/IBrowserFrame.ts +++ b/packages/happy-dom/src/browser/types/IBrowserFrame.ts @@ -1,14 +1,14 @@ -import AsyncTaskManager from '../../async-task-manager/AsyncTaskManager.js'; -import * as PropertySymbol from '../../PropertySymbol.js'; -import BrowserWindow from '../../window/BrowserWindow.js'; -import Document from '../../nodes/document/Document.js'; -import IBrowserPage from './IBrowserPage.js'; -import Response from '../../fetch/Response.js'; -import IGoToOptions from './IGoToOptions.js'; -import { Script } from 'vm'; -import IReloadOptions from './IReloadOptions.js'; -import CrossOriginBrowserWindow from '../../window/CrossOriginBrowserWindow.js'; -import HistoryItemList from '../../history/HistoryItemList.js'; +import type AsyncTaskManager from '../../async-task-manager/AsyncTaskManager.js'; +import type * as PropertySymbol from '../../PropertySymbol.js'; +import type BrowserWindow from '../../window/BrowserWindow.js'; +import type Document from '../../nodes/document/Document.js'; +import type IBrowserPage from './IBrowserPage.js'; +import type Response from '../../fetch/Response.js'; +import type IGoToOptions from './IGoToOptions.js'; +import type { Script } from 'vm'; +import type IReloadOptions from './IReloadOptions.js'; +import type CrossOriginBrowserWindow from '../../window/CrossOriginBrowserWindow.js'; +import type HistoryItemList from '../../history/HistoryItemList.js'; /** * Browser frame. diff --git a/packages/happy-dom/src/browser/types/IBrowserPage.ts b/packages/happy-dom/src/browser/types/IBrowserPage.ts index a787011ba..1e51ce2fd 100644 --- a/packages/happy-dom/src/browser/types/IBrowserPage.ts +++ b/packages/happy-dom/src/browser/types/IBrowserPage.ts @@ -1,12 +1,12 @@ -import IBrowserPageViewport from '../types/IBrowserPageViewport.js'; -import VirtualConsolePrinter from '../../console/VirtualConsolePrinter.js'; -import IBrowserFrame from './IBrowserFrame.js'; -import IBrowserContext from './IBrowserContext.js'; -import { Script } from 'vm'; -import IGoToOptions from './IGoToOptions.js'; -import Response from '../../fetch/Response.js'; -import IReloadOptions from './IReloadOptions.js'; -import IOptionalBrowserPageViewport from './IOptionalBrowserPageViewport.js'; +import type IBrowserPageViewport from '../types/IBrowserPageViewport.js'; +import type VirtualConsolePrinter from '../../console/VirtualConsolePrinter.js'; +import type IBrowserFrame from './IBrowserFrame.js'; +import type IBrowserContext from './IBrowserContext.js'; +import type { Script } from 'vm'; +import type IGoToOptions from './IGoToOptions.js'; +import type Response from '../../fetch/Response.js'; +import type IReloadOptions from './IReloadOptions.js'; +import type IOptionalBrowserPageViewport from './IOptionalBrowserPageViewport.js'; /** * Browser page. diff --git a/packages/happy-dom/src/browser/types/IBrowserSettings.ts b/packages/happy-dom/src/browser/types/IBrowserSettings.ts index ad0502c8d..aa3fa9ff4 100644 --- a/packages/happy-dom/src/browser/types/IBrowserSettings.ts +++ b/packages/happy-dom/src/browser/types/IBrowserSettings.ts @@ -1,12 +1,12 @@ -import BrowserErrorCaptureEnum from '../enums/BrowserErrorCaptureEnum.js'; -import BrowserNavigationCrossOriginPolicyEnum from '../enums/BrowserNavigationCrossOriginPolicyEnum.js'; -import IFetchInterceptor from '../../fetch/types/IFetchInterceptor.js'; -import IVirtualServer from '../../fetch/types/IVirtualServer.js'; -import IFetchRequestHeaders from '../../fetch/types/IFetchRequestHeaders.js'; -import IBrowserPageViewport from './IBrowserPageViewport.js'; -import IOptionalTimerLoopsLimit from '../../window/IOptionalTimerLoopsLimit.js'; -import BrowserWindow from '../../window/BrowserWindow.js'; -import IResolveNodeModules from '../../module/types/IResolveNodeModules.js'; +import type BrowserErrorCaptureEnum from '../enums/BrowserErrorCaptureEnum.js'; +import type BrowserNavigationCrossOriginPolicyEnum from '../enums/BrowserNavigationCrossOriginPolicyEnum.js'; +import type IFetchInterceptor from '../../fetch/types/IFetchInterceptor.js'; +import type IVirtualServer from '../../fetch/types/IVirtualServer.js'; +import type IFetchRequestHeaders from '../../fetch/types/IFetchRequestHeaders.js'; +import type IBrowserPageViewport from './IBrowserPageViewport.js'; +import type IOptionalTimerLoopsLimit from '../../window/IOptionalTimerLoopsLimit.js'; +import type BrowserWindow from '../../window/BrowserWindow.js'; +import type IResolveNodeModules from '../../module/types/IResolveNodeModules.js'; /** * Browser settings. diff --git a/packages/happy-dom/src/browser/types/IGoToOptions.ts b/packages/happy-dom/src/browser/types/IGoToOptions.ts index 7b051546c..4ff948835 100644 --- a/packages/happy-dom/src/browser/types/IGoToOptions.ts +++ b/packages/happy-dom/src/browser/types/IGoToOptions.ts @@ -1,5 +1,5 @@ -import IRequestReferrerPolicy from '../../fetch/types/IRequestReferrerPolicy.js'; -import IReloadOptions from './IReloadOptions.js'; +import type { TRequestReferrerPolicy } from '../../fetch/types/TRequestReferrerPolicy.js'; +import type IReloadOptions from './IReloadOptions.js'; /** * Go to options. @@ -13,5 +13,5 @@ export default interface IGoToOptions extends IReloadOptions { /** * Referrer policy. */ - referrerPolicy?: IRequestReferrerPolicy; + referrerPolicy?: TRequestReferrerPolicy; } diff --git a/packages/happy-dom/src/browser/types/IOptionalBrowserSettings.ts b/packages/happy-dom/src/browser/types/IOptionalBrowserSettings.ts index f787f437b..d03b0a052 100644 --- a/packages/happy-dom/src/browser/types/IOptionalBrowserSettings.ts +++ b/packages/happy-dom/src/browser/types/IOptionalBrowserSettings.ts @@ -1,12 +1,12 @@ -import BrowserErrorCaptureEnum from '../enums/BrowserErrorCaptureEnum.js'; -import BrowserNavigationCrossOriginPolicyEnum from '../enums/BrowserNavigationCrossOriginPolicyEnum.js'; -import IFetchInterceptor from '../../fetch/types/IFetchInterceptor.js'; -import IVirtualServer from '../../fetch/types/IVirtualServer.js'; -import IFetchRequestHeaders from '../../fetch/types/IFetchRequestHeaders.js'; -import IOptionalBrowserPageViewport from './IOptionalBrowserPageViewport.js'; -import IOptionalTimerLoopsLimit from '../../window/IOptionalTimerLoopsLimit.js'; -import BrowserWindow from '../../window/BrowserWindow.js'; -import IResolveNodeModules from '../../module/types/IResolveNodeModules.js'; +import type BrowserErrorCaptureEnum from '../enums/BrowserErrorCaptureEnum.js'; +import type BrowserNavigationCrossOriginPolicyEnum from '../enums/BrowserNavigationCrossOriginPolicyEnum.js'; +import type IFetchInterceptor from '../../fetch/types/IFetchInterceptor.js'; +import type IVirtualServer from '../../fetch/types/IVirtualServer.js'; +import type IFetchRequestHeaders from '../../fetch/types/IFetchRequestHeaders.js'; +import type IOptionalBrowserPageViewport from './IOptionalBrowserPageViewport.js'; +import type IOptionalTimerLoopsLimit from '../../window/IOptionalTimerLoopsLimit.js'; +import type BrowserWindow from '../../window/BrowserWindow.js'; +import type IResolveNodeModules from '../../module/types/IResolveNodeModules.js'; export default interface IOptionalBrowserSettings { /** diff --git a/packages/happy-dom/src/browser/types/IReloadOptions.ts b/packages/happy-dom/src/browser/types/IReloadOptions.ts index f5191a989..8a27abcf9 100644 --- a/packages/happy-dom/src/browser/types/IReloadOptions.ts +++ b/packages/happy-dom/src/browser/types/IReloadOptions.ts @@ -1,5 +1,5 @@ -import IHeadersInit from '../../fetch/types/IHeadersInit.js'; -import BrowserWindow from '../../window/BrowserWindow.js'; +import type { THeadersInit } from '../../fetch/types/THeadersInit.js'; +import type BrowserWindow from '../../window/BrowserWindow.js'; /** * Reload options. @@ -23,5 +23,5 @@ export default interface IReloadOptions { /** * Request headers. */ - headers?: IHeadersInit | null; + headers?: THeadersInit | null; } diff --git a/packages/happy-dom/src/browser/utilities/BrowserExceptionObserver.ts b/packages/happy-dom/src/browser/utilities/BrowserExceptionObserver.ts index 08b2c4016..9cd929870 100644 --- a/packages/happy-dom/src/browser/utilities/BrowserExceptionObserver.ts +++ b/packages/happy-dom/src/browser/utilities/BrowserExceptionObserver.ts @@ -1,4 +1,4 @@ -import BrowserWindow from '../../window/BrowserWindow.js'; +import type BrowserWindow from '../../window/BrowserWindow.js'; /** * Listens for uncaught exceptions coming from Happy DOM on the running Node process and dispatches error events on the Window instance. diff --git a/packages/happy-dom/src/browser/utilities/BrowserFrameFactory.ts b/packages/happy-dom/src/browser/utilities/BrowserFrameFactory.ts index b6de242b2..4fbd580be 100644 --- a/packages/happy-dom/src/browser/utilities/BrowserFrameFactory.ts +++ b/packages/happy-dom/src/browser/utilities/BrowserFrameFactory.ts @@ -1,6 +1,6 @@ -import IBrowserFrame from '../types/IBrowserFrame.js'; +import type IBrowserFrame from '../types/IBrowserFrame.js'; import * as PropertySymbol from '../../PropertySymbol.js'; -import IBrowserPage from '../types/IBrowserPage.js'; +import type IBrowserPage from '../types/IBrowserPage.js'; /** * Browser frame factory. diff --git a/packages/happy-dom/src/browser/utilities/BrowserFrameNavigator.ts b/packages/happy-dom/src/browser/utilities/BrowserFrameNavigator.ts index d6df51bcf..5e88da5cd 100644 --- a/packages/happy-dom/src/browser/utilities/BrowserFrameNavigator.ts +++ b/packages/happy-dom/src/browser/utilities/BrowserFrameNavigator.ts @@ -1,13 +1,13 @@ -import IBrowserFrame from '../types/IBrowserFrame.js'; +import type IBrowserFrame from '../types/IBrowserFrame.js'; import * as PropertySymbol from '../../PropertySymbol.js'; -import IGoToOptions from '../types/IGoToOptions.js'; -import Response from '../../fetch/Response.js'; -import BrowserWindow from '../../window/BrowserWindow.js'; +import type IGoToOptions from '../types/IGoToOptions.js'; +import type Response from '../../fetch/Response.js'; +import type BrowserWindow from '../../window/BrowserWindow.js'; import BrowserFrameFactory from './BrowserFrameFactory.js'; import BrowserFrameURL from './BrowserFrameURL.js'; import BrowserFrameValidator from './BrowserFrameValidator.js'; import AsyncTaskManager from '../../async-task-manager/AsyncTaskManager.js'; -import FormData from '../../form-data/FormData.js'; +import type FormData from '../../form-data/FormData.js'; import HistoryScrollRestorationEnum from '../../history/HistoryScrollRestorationEnum.js'; import DOMExceptionNameEnum from '../../exception/DOMExceptionNameEnum.js'; import Fetch from '../../fetch/Fetch.js'; diff --git a/packages/happy-dom/src/browser/utilities/BrowserFrameScriptEvaluator.ts b/packages/happy-dom/src/browser/utilities/BrowserFrameScriptEvaluator.ts index 684e91b11..79cc6f00b 100644 --- a/packages/happy-dom/src/browser/utilities/BrowserFrameScriptEvaluator.ts +++ b/packages/happy-dom/src/browser/utilities/BrowserFrameScriptEvaluator.ts @@ -2,7 +2,7 @@ import CSSModule from '../../module/CSSModule.js'; import ECMAScriptModule from '../../module/ECMAScriptModule.js'; import JSONModule from '../../module/JSONModule.js'; import ModuleFactory from '../../module/ModuleFactory.js'; -import IBrowserFrame from '../types/IBrowserFrame.js'; +import type IBrowserFrame from '../types/IBrowserFrame.js'; import { Script } from 'vm'; /** @@ -50,7 +50,8 @@ export default class BrowserFrameScriptEvaluator { switch (options?.type || 'esm') { case 'esm': - return await new ECMAScriptModule({ window, url, source }).evaluate(); + const factory = new ModuleFactory(window, url); + return await new ECMAScriptModule({ window, url, source, factory }).evaluate(); case 'json': return await new JSONModule({ window, url, source }).evaluate(); case 'css': diff --git a/packages/happy-dom/src/browser/utilities/BrowserFrameURL.ts b/packages/happy-dom/src/browser/utilities/BrowserFrameURL.ts index 8741d37a6..c30077cde 100644 --- a/packages/happy-dom/src/browser/utilities/BrowserFrameURL.ts +++ b/packages/happy-dom/src/browser/utilities/BrowserFrameURL.ts @@ -1,4 +1,4 @@ -import IBrowserFrame from '../types/IBrowserFrame.js'; +import type IBrowserFrame from '../types/IBrowserFrame.js'; import { URL } from 'url'; import * as PropertySymbol from '../../PropertySymbol.js'; diff --git a/packages/happy-dom/src/browser/utilities/BrowserFrameValidator.ts b/packages/happy-dom/src/browser/utilities/BrowserFrameValidator.ts index 28ba9b15c..ae6460611 100644 --- a/packages/happy-dom/src/browser/utilities/BrowserFrameValidator.ts +++ b/packages/happy-dom/src/browser/utilities/BrowserFrameValidator.ts @@ -1,7 +1,7 @@ -import IBrowserFrame from '../types/IBrowserFrame.js'; -import { URL } from 'url'; +import type IBrowserFrame from '../types/IBrowserFrame.js'; +import type { URL } from 'url'; import BrowserNavigationCrossOriginPolicyEnum from '../enums/BrowserNavigationCrossOriginPolicyEnum.js'; -import DetachedBrowserFrame from '../detached-browser/DetachedBrowserFrame.js'; +import type DetachedBrowserFrame from '../detached-browser/DetachedBrowserFrame.js'; import * as PropertySymbol from '../../PropertySymbol.js'; /** @@ -57,8 +57,9 @@ export default class BrowserFrameValidator { const settings = frame.page.context.browser.settings; // When using the Window instance directly and not via the Browser API we should not navigate the browser frame. + // Only a detached browser has a windowClass property and we want to avoid a circular dependency. if ( - frame instanceof DetachedBrowserFrame && + (frame).page.context.browser.windowClass && frame.page.context === frame.page.context.browser.defaultContext && frame.page.context.pages[0] === frame.page && frame.page.mainFrame === frame diff --git a/packages/happy-dom/src/browser/utilities/BrowserPageUtility.ts b/packages/happy-dom/src/browser/utilities/BrowserPageUtility.ts index 607c92dfb..c5feb9dc0 100644 --- a/packages/happy-dom/src/browser/utilities/BrowserPageUtility.ts +++ b/packages/happy-dom/src/browser/utilities/BrowserPageUtility.ts @@ -1,5 +1,5 @@ -import IBrowserFrame from '../types/IBrowserFrame.js'; -import IBrowserPage from '../types/IBrowserPage.js'; +import type IBrowserFrame from '../types/IBrowserFrame.js'; +import type IBrowserPage from '../types/IBrowserPage.js'; import BrowserFrameFactory from './BrowserFrameFactory.js'; /** diff --git a/packages/happy-dom/src/clipboard/Clipboard.ts b/packages/happy-dom/src/clipboard/Clipboard.ts index da30cd8fc..da07600c4 100644 --- a/packages/happy-dom/src/clipboard/Clipboard.ts +++ b/packages/happy-dom/src/clipboard/Clipboard.ts @@ -1,5 +1,5 @@ -import BrowserWindow from '../window/BrowserWindow.js'; -import ClipboardItem from './ClipboardItem.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; +import type ClipboardItem from './ClipboardItem.js'; import Blob from '../file/Blob.js'; /** diff --git a/packages/happy-dom/src/config/IHTMLElementTagNameMap.ts b/packages/happy-dom/src/config/IHTMLElementTagNameMap.ts index cb1e043f0..796d312d3 100644 --- a/packages/happy-dom/src/config/IHTMLElementTagNameMap.ts +++ b/packages/happy-dom/src/config/IHTMLElementTagNameMap.ts @@ -1,67 +1,67 @@ -import HTMLAnchorElement from '../nodes/html-anchor-element/HTMLAnchorElement.js'; -import HTMLAreaElement from '../nodes/html-area-element/HTMLAreaElement.js'; -import HTMLAudioElement from '../nodes/html-audio-element/HTMLAudioElement.js'; -import HTMLBaseElement from '../nodes/html-base-element/HTMLBaseElement.js'; -import HTMLBodyElement from '../nodes/html-body-element/HTMLBodyElement.js'; -import HTMLBRElement from '../nodes/html-br-element/HTMLBRElement.js'; -import HTMLButtonElement from '../nodes/html-button-element/HTMLButtonElement.js'; -import HTMLCanvasElement from '../nodes/html-canvas-element/HTMLCanvasElement.js'; -import HTMLDListElement from '../nodes/html-d-list-element/HTMLDListElement.js'; -import HTMLDataElement from '../nodes/html-data-element/HTMLDataElement.js'; -import HTMLDataListElement from '../nodes/html-data-list-element/HTMLDataListElement.js'; -import HTMLDetailsElement from '../nodes/html-details-element/HTMLDetailsElement.js'; -import HTMLDialogElement from '../nodes/html-dialog-element/HTMLDialogElement.js'; -import HTMLDivElement from '../nodes/html-div-element/HTMLDivElement.js'; -import HTMLElement from '../nodes/html-element/HTMLElement.js'; -import HTMLEmbedElement from '../nodes/html-embed-element/HTMLEmbedElement.js'; -import HTMLFieldSetElement from '../nodes/html-field-set-element/HTMLFieldSetElement.js'; -import HTMLFormElement from '../nodes/html-form-element/HTMLFormElement.js'; -import HTMLHeadElement from '../nodes/html-head-element/HTMLHeadElement.js'; -import HTMLHeadingElement from '../nodes/html-heading-element/HTMLHeadingElement.js'; -import HTMLHRElement from '../nodes/html-hr-element/HTMLHRElement.js'; -import HTMLHtmlElement from '../nodes/html-html-element/HTMLHtmlElement.js'; -import HTMLIFrameElement from '../nodes/html-iframe-element/HTMLIFrameElement.js'; -import HTMLImageElement from '../nodes/html-image-element/HTMLImageElement.js'; -import HTMLInputElement from '../nodes/html-input-element/HTMLInputElement.js'; -import HTMLLabelElement from '../nodes/html-label-element/HTMLLabelElement.js'; -import HTMLLegendElement from '../nodes/html-legend-element/HTMLLegendElement.js'; -import HTMLLIElement from '../nodes/html-li-element/HTMLLIElement.js'; -import HTMLLinkElement from '../nodes/html-link-element/HTMLLinkElement.js'; -import HTMLMapElement from '../nodes/html-map-element/HTMLMapElement.js'; -import HTMLMenuElement from '../nodes/html-menu-element/HTMLMenuElement.js'; -import HTMLMetaElement from '../nodes/html-meta-element/HTMLMetaElement.js'; -import HTMLMeterElement from '../nodes/html-meter-element/HTMLMeterElement.js'; -import HTMLModElement from '../nodes/html-mod-element/HTMLModElement.js'; -import HTMLOListElement from '../nodes/html-o-list-element/HTMLOListElement.js'; -import HTMLObjectElement from '../nodes/html-object-element/HTMLObjectElement.js'; -import HTMLOptGroupElement from '../nodes/html-opt-group-element/HTMLOptGroupElement.js'; -import HTMLOptionElement from '../nodes/html-option-element/HTMLOptionElement.js'; -import HTMLOutputElement from '../nodes/html-output-element/HTMLOutputElement.js'; -import HTMLParagraphElement from '../nodes/html-paragraph-element/HTMLParagraphElement.js'; -import HTMLParamElement from '../nodes/html-param-element/HTMLParamElement.js'; -import HTMLPictureElement from '../nodes/html-picture-element/HTMLPictureElement.js'; -import HTMLPreElement from '../nodes/html-pre-element/HTMLPreElement.js'; -import HTMLProgressElement from '../nodes/html-progress-element/HTMLProgressElement.js'; -import HTMLQuoteElement from '../nodes/html-quote-element/HTMLQuoteElement.js'; -import HTMLScriptElement from '../nodes/html-script-element/HTMLScriptElement.js'; -import HTMLSelectElement from '../nodes/html-select-element/HTMLSelectElement.js'; -import HTMLSlotElement from '../nodes/html-slot-element/HTMLSlotElement.js'; -import HTMLSourceElement from '../nodes/html-source-element/HTMLSourceElement.js'; -import HTMLSpanElement from '../nodes/html-span-element/HTMLSpanElement.js'; -import HTMLStyleElement from '../nodes/html-style-element/HTMLStyleElement.js'; -import HTMLTableCaptionElement from '../nodes/html-table-caption-element/HTMLTableCaptionElement.js'; -import HTMLTableCellElement from '../nodes/html-table-cell-element/HTMLTableCellElement.js'; -import HTMLTableColElement from '../nodes/html-table-col-element/HTMLTableColElement.js'; -import HTMLTableElement from '../nodes/html-table-element/HTMLTableElement.js'; -import HTMLTableRowElement from '../nodes/html-table-row-element/HTMLTableRowElement.js'; -import HTMLTableSectionElement from '../nodes/html-table-section-element/HTMLTableSectionElement.js'; -import HTMLTemplateElement from '../nodes/html-template-element/HTMLTemplateElement.js'; -import HTMLTextAreaElement from '../nodes/html-text-area-element/HTMLTextAreaElement.js'; -import HTMLTimeElement from '../nodes/html-time-element/HTMLTimeElement.js'; -import HTMLTitleElement from '../nodes/html-title-element/HTMLTitleElement.js'; -import HTMLTrackElement from '../nodes/html-track-element/HTMLTrackElement.js'; -import HTMLUListElement from '../nodes/html-u-list-element/HTMLUListElement.js'; -import HTMLVideoElement from '../nodes/html-video-element/HTMLVideoElement.js'; +import type HTMLAnchorElement from '../nodes/html-anchor-element/HTMLAnchorElement.js'; +import type HTMLAreaElement from '../nodes/html-area-element/HTMLAreaElement.js'; +import type HTMLAudioElement from '../nodes/html-audio-element/HTMLAudioElement.js'; +import type HTMLBaseElement from '../nodes/html-base-element/HTMLBaseElement.js'; +import type HTMLBodyElement from '../nodes/html-body-element/HTMLBodyElement.js'; +import type HTMLBRElement from '../nodes/html-br-element/HTMLBRElement.js'; +import type HTMLButtonElement from '../nodes/html-button-element/HTMLButtonElement.js'; +import type HTMLCanvasElement from '../nodes/html-canvas-element/HTMLCanvasElement.js'; +import type HTMLDListElement from '../nodes/html-d-list-element/HTMLDListElement.js'; +import type HTMLDataElement from '../nodes/html-data-element/HTMLDataElement.js'; +import type HTMLDataListElement from '../nodes/html-data-list-element/HTMLDataListElement.js'; +import type HTMLDetailsElement from '../nodes/html-details-element/HTMLDetailsElement.js'; +import type HTMLDialogElement from '../nodes/html-dialog-element/HTMLDialogElement.js'; +import type HTMLDivElement from '../nodes/html-div-element/HTMLDivElement.js'; +import type HTMLElement from '../nodes/html-element/HTMLElement.js'; +import type HTMLEmbedElement from '../nodes/html-embed-element/HTMLEmbedElement.js'; +import type HTMLFieldSetElement from '../nodes/html-field-set-element/HTMLFieldSetElement.js'; +import type HTMLFormElement from '../nodes/html-form-element/HTMLFormElement.js'; +import type HTMLHeadElement from '../nodes/html-head-element/HTMLHeadElement.js'; +import type HTMLHeadingElement from '../nodes/html-heading-element/HTMLHeadingElement.js'; +import type HTMLHRElement from '../nodes/html-hr-element/HTMLHRElement.js'; +import type HTMLHtmlElement from '../nodes/html-html-element/HTMLHtmlElement.js'; +import type HTMLIFrameElement from '../nodes/html-iframe-element/HTMLIFrameElement.js'; +import type HTMLImageElement from '../nodes/html-image-element/HTMLImageElement.js'; +import type HTMLInputElement from '../nodes/html-input-element/HTMLInputElement.js'; +import type HTMLLabelElement from '../nodes/html-label-element/HTMLLabelElement.js'; +import type HTMLLegendElement from '../nodes/html-legend-element/HTMLLegendElement.js'; +import type HTMLLIElement from '../nodes/html-li-element/HTMLLIElement.js'; +import type HTMLLinkElement from '../nodes/html-link-element/HTMLLinkElement.js'; +import type HTMLMapElement from '../nodes/html-map-element/HTMLMapElement.js'; +import type HTMLMenuElement from '../nodes/html-menu-element/HTMLMenuElement.js'; +import type HTMLMetaElement from '../nodes/html-meta-element/HTMLMetaElement.js'; +import type HTMLMeterElement from '../nodes/html-meter-element/HTMLMeterElement.js'; +import type HTMLModElement from '../nodes/html-mod-element/HTMLModElement.js'; +import type HTMLOListElement from '../nodes/html-o-list-element/HTMLOListElement.js'; +import type HTMLObjectElement from '../nodes/html-object-element/HTMLObjectElement.js'; +import type HTMLOptGroupElement from '../nodes/html-opt-group-element/HTMLOptGroupElement.js'; +import type HTMLOptionElement from '../nodes/html-option-element/HTMLOptionElement.js'; +import type HTMLOutputElement from '../nodes/html-output-element/HTMLOutputElement.js'; +import type HTMLParagraphElement from '../nodes/html-paragraph-element/HTMLParagraphElement.js'; +import type HTMLParamElement from '../nodes/html-param-element/HTMLParamElement.js'; +import type HTMLPictureElement from '../nodes/html-picture-element/HTMLPictureElement.js'; +import type HTMLPreElement from '../nodes/html-pre-element/HTMLPreElement.js'; +import type HTMLProgressElement from '../nodes/html-progress-element/HTMLProgressElement.js'; +import type HTMLQuoteElement from '../nodes/html-quote-element/HTMLQuoteElement.js'; +import type HTMLScriptElement from '../nodes/html-script-element/HTMLScriptElement.js'; +import type HTMLSelectElement from '../nodes/html-select-element/HTMLSelectElement.js'; +import type HTMLSlotElement from '../nodes/html-slot-element/HTMLSlotElement.js'; +import type HTMLSourceElement from '../nodes/html-source-element/HTMLSourceElement.js'; +import type HTMLSpanElement from '../nodes/html-span-element/HTMLSpanElement.js'; +import type HTMLStyleElement from '../nodes/html-style-element/HTMLStyleElement.js'; +import type HTMLTableCaptionElement from '../nodes/html-table-caption-element/HTMLTableCaptionElement.js'; +import type HTMLTableCellElement from '../nodes/html-table-cell-element/HTMLTableCellElement.js'; +import type HTMLTableColElement from '../nodes/html-table-col-element/HTMLTableColElement.js'; +import type HTMLTableElement from '../nodes/html-table-element/HTMLTableElement.js'; +import type HTMLTableRowElement from '../nodes/html-table-row-element/HTMLTableRowElement.js'; +import type HTMLTableSectionElement from '../nodes/html-table-section-element/HTMLTableSectionElement.js'; +import type HTMLTemplateElement from '../nodes/html-template-element/HTMLTemplateElement.js'; +import type HTMLTextAreaElement from '../nodes/html-text-area-element/HTMLTextAreaElement.js'; +import type HTMLTimeElement from '../nodes/html-time-element/HTMLTimeElement.js'; +import type HTMLTitleElement from '../nodes/html-title-element/HTMLTitleElement.js'; +import type HTMLTrackElement from '../nodes/html-track-element/HTMLTrackElement.js'; +import type HTMLUListElement from '../nodes/html-u-list-element/HTMLUListElement.js'; +import type HTMLVideoElement from '../nodes/html-video-element/HTMLVideoElement.js'; export default interface IHTMLElementTagNameMap { a: HTMLAnchorElement; diff --git a/packages/happy-dom/src/config/ISVGElementTagNameMap.ts b/packages/happy-dom/src/config/ISVGElementTagNameMap.ts index 2eb73f187..6e0e4cf00 100644 --- a/packages/happy-dom/src/config/ISVGElementTagNameMap.ts +++ b/packages/happy-dom/src/config/ISVGElementTagNameMap.ts @@ -1,65 +1,65 @@ -import SVGSVGElement from '../nodes/svg-svg-element/SVGSVGElement.js'; -import SVGAnimateElement from '../nodes/svg-animate-element/SVGAnimateElement.js'; -import SVGAnimateMotionElement from '../nodes/svg-animate-motion-element/SVGAnimateMotionElement.js'; -import SVGAnimateTransformElement from '../nodes/svg-animate-transform-element/SVGAnimateTransformElement.js'; -import SVGCircleElement from '../nodes/svg-circle-element/SVGCircleElement.js'; -import SVGClipPathElement from '../nodes/svg-clip-path-element/SVGClipPathElement.js'; -import SVGDefsElement from '../nodes/svg-defs-element/SVGDefsElement.js'; -import SVGDescElement from '../nodes/svg-desc-element/SVGDescElement.js'; -import SVGEllipseElement from '../nodes/svg-ellipse-element/SVGEllipseElement.js'; -import SVGFEBlendElement from '../nodes/svg-fe-blend-element/SVGFEBlendElement.js'; -import SVGFEColorMatrixElement from '../nodes/svg-fe-color-matrix-element/SVGFEColorMatrixElement.js'; -import SVGFEComponentTransferElement from '../nodes/svg-fe-component-transfer-element/SVGFEComponentTransferElement.js'; -import SVGFECompositeElement from '../nodes/svg-fe-composite-element/SVGFECompositeElement.js'; -import SVGFEConvolveMatrixElement from '../nodes/svg-fe-convolve-matrix-element/SVGFEConvolveMatrixElement.js'; -import SVGFEDiffuseLightingElement from '../nodes/svg-fe-diffuse-lighting-element/SVGFEDiffuseLightingElement.js'; -import SVGFEDisplacementMapElement from '../nodes/svg-fe-displacement-map-element/SVGFEDisplacementMapElement.js'; -import SVGFEDistantLightElement from '../nodes/svg-fe-distant-light-element/SVGFEDistantLightElement.js'; -import SVGFEDropShadowElement from '../nodes/svg-fe-drop-shadow-element/SVGFEDropShadowElement.js'; -import SVGFEFloodElement from '../nodes/svg-fe-flood-element/SVGFEFloodElement.js'; -import SVGFEFuncAElement from '../nodes/svg-fe-func-a-element/SVGFEFuncAElement.js'; -import SVGFEFuncBElement from '../nodes/svg-fe-func-b-element/SVGFEFuncBElement.js'; -import SVGFEFuncGElement from '../nodes/svg-fe-func-g-element/SVGFEFuncGElement.js'; -import SVGFEFuncRElement from '../nodes/svg-fe-func-r-element/SVGFEFuncRElement.js'; -import SVGFEGaussianBlurElement from '../nodes/svg-fe-gaussian-blur-element/SVGFEGaussianBlurElement.js'; -import SVGFEImageElement from '../nodes/svg-fe-image-element/SVGFEImageElement.js'; -import SVGFEMergeElement from '../nodes/svg-fe-merge-element/SVGFEMergeElement.js'; -import SVGFEMergeNodeElement from '../nodes/svg-fe-merge-node-element/SVGFEMergeNodeElement.js'; -import SVGFEMorphologyElement from '../nodes/svg-fe-morphology-element/SVGFEMorphologyElement.js'; -import SVGFEOffsetElement from '../nodes/svg-fe-offset-element/SVGFEOffsetElement.js'; -import SVGFEPointLightElement from '../nodes/svg-fe-point-light-element/SVGFEPointLightElement.js'; -import SVGFESpecularLightingElement from '../nodes/svg-fe-specular-lighting-element/SVGFESpecularLightingElement.js'; -import SVGFESpotLightElement from '../nodes/svg-fe-spot-light-element/SVGFESpotLightElement.js'; -import SVGFETileElement from '../nodes/svg-fe-tile-element/SVGFETileElement.js'; -import SVGFETurbulenceElement from '../nodes/svg-fe-turbulence-element/SVGFETurbulenceElement.js'; -import SVGFilterElement from '../nodes/svg-filter-element/SVGFilterElement.js'; -import SVGForeignObjectElement from '../nodes/svg-foreign-object-element/SVGForeignObjectElement.js'; -import SVGGElement from '../nodes/svg-g-element/SVGGElement.js'; -import SVGImageElement from '../nodes/svg-image-element/SVGImageElement.js'; -import SVGLineElement from '../nodes/svg-line-element/SVGLineElement.js'; -import SVGLinearGradientElement from '../nodes/svg-linear-gradient-element/SVGLinearGradientElement.js'; -import SVGMarkerElement from '../nodes/svg-marker-element/SVGMarkerElement.js'; -import SVGMaskElement from '../nodes/svg-mask-element/SVGMaskElement.js'; -import SVGMetadataElement from '../nodes/svg-metadata-element/SVGMetadataElement.js'; -import SVGMPathElement from '../nodes/svg-m-path-element/SVGMPathElement.js'; -import SVGPathElement from '../nodes/svg-path-element/SVGPathElement.js'; -import SVGPatternElement from '../nodes/svg-pattern-element/SVGPatternElement.js'; -import SVGPolygonElement from '../nodes/svg-polygon-element/SVGPolygonElement.js'; -import SVGPolylineElement from '../nodes/svg-polyline-element/SVGPolylineElement.js'; -import SVGRadialGradientElement from '../nodes/svg-radial-gradient-element/SVGRadialGradientElement.js'; -import SVGRectElement from '../nodes/svg-rect-element/SVGRectElement.js'; -import SVGScriptElement from '../nodes/svg-script-element/SVGScriptElement.js'; -import SVGSetElement from '../nodes/svg-set-element/SVGSetElement.js'; -import SVGStopElement from '../nodes/svg-stop-element/SVGStopElement.js'; -import SVGStyleElement from '../nodes/svg-style-element/SVGStyleElement.js'; -import SVGSwitchElement from '../nodes/svg-switch-element/SVGSwitchElement.js'; -import SVGSymbolElement from '../nodes/svg-symbol-element/SVGSymbolElement.js'; -import SVGTextElement from '../nodes/svg-text-element/SVGTextElement.js'; -import SVGTextPathElement from '../nodes/svg-text-path-element/SVGTextPathElement.js'; -import SVGTitleElement from '../nodes/svg-title-element/SVGTitleElement.js'; -import SVGTSpanElement from '../nodes/svg-t-span-element/SVGTSpanElement.js'; -import SVGUseElement from '../nodes/svg-use-element/SVGUseElement.js'; -import SVGViewElement from '../nodes/svg-view-element/SVGViewElement.js'; +import type SVGSVGElement from '../nodes/svg-svg-element/SVGSVGElement.js'; +import type SVGAnimateElement from '../nodes/svg-animate-element/SVGAnimateElement.js'; +import type SVGAnimateMotionElement from '../nodes/svg-animate-motion-element/SVGAnimateMotionElement.js'; +import type SVGAnimateTransformElement from '../nodes/svg-animate-transform-element/SVGAnimateTransformElement.js'; +import type SVGCircleElement from '../nodes/svg-circle-element/SVGCircleElement.js'; +import type SVGClipPathElement from '../nodes/svg-clip-path-element/SVGClipPathElement.js'; +import type SVGDefsElement from '../nodes/svg-defs-element/SVGDefsElement.js'; +import type SVGDescElement from '../nodes/svg-desc-element/SVGDescElement.js'; +import type SVGEllipseElement from '../nodes/svg-ellipse-element/SVGEllipseElement.js'; +import type SVGFEBlendElement from '../nodes/svg-fe-blend-element/SVGFEBlendElement.js'; +import type SVGFEColorMatrixElement from '../nodes/svg-fe-color-matrix-element/SVGFEColorMatrixElement.js'; +import type SVGFEComponentTransferElement from '../nodes/svg-fe-component-transfer-element/SVGFEComponentTransferElement.js'; +import type SVGFECompositeElement from '../nodes/svg-fe-composite-element/SVGFECompositeElement.js'; +import type SVGFEConvolveMatrixElement from '../nodes/svg-fe-convolve-matrix-element/SVGFEConvolveMatrixElement.js'; +import type SVGFEDiffuseLightingElement from '../nodes/svg-fe-diffuse-lighting-element/SVGFEDiffuseLightingElement.js'; +import type SVGFEDisplacementMapElement from '../nodes/svg-fe-displacement-map-element/SVGFEDisplacementMapElement.js'; +import type SVGFEDistantLightElement from '../nodes/svg-fe-distant-light-element/SVGFEDistantLightElement.js'; +import type SVGFEDropShadowElement from '../nodes/svg-fe-drop-shadow-element/SVGFEDropShadowElement.js'; +import type SVGFEFloodElement from '../nodes/svg-fe-flood-element/SVGFEFloodElement.js'; +import type SVGFEFuncAElement from '../nodes/svg-fe-func-a-element/SVGFEFuncAElement.js'; +import type SVGFEFuncBElement from '../nodes/svg-fe-func-b-element/SVGFEFuncBElement.js'; +import type SVGFEFuncGElement from '../nodes/svg-fe-func-g-element/SVGFEFuncGElement.js'; +import type SVGFEFuncRElement from '../nodes/svg-fe-func-r-element/SVGFEFuncRElement.js'; +import type SVGFEGaussianBlurElement from '../nodes/svg-fe-gaussian-blur-element/SVGFEGaussianBlurElement.js'; +import type SVGFEImageElement from '../nodes/svg-fe-image-element/SVGFEImageElement.js'; +import type SVGFEMergeElement from '../nodes/svg-fe-merge-element/SVGFEMergeElement.js'; +import type SVGFEMergeNodeElement from '../nodes/svg-fe-merge-node-element/SVGFEMergeNodeElement.js'; +import type SVGFEMorphologyElement from '../nodes/svg-fe-morphology-element/SVGFEMorphologyElement.js'; +import type SVGFEOffsetElement from '../nodes/svg-fe-offset-element/SVGFEOffsetElement.js'; +import type SVGFEPointLightElement from '../nodes/svg-fe-point-light-element/SVGFEPointLightElement.js'; +import type SVGFESpecularLightingElement from '../nodes/svg-fe-specular-lighting-element/SVGFESpecularLightingElement.js'; +import type SVGFESpotLightElement from '../nodes/svg-fe-spot-light-element/SVGFESpotLightElement.js'; +import type SVGFETileElement from '../nodes/svg-fe-tile-element/SVGFETileElement.js'; +import type SVGFETurbulenceElement from '../nodes/svg-fe-turbulence-element/SVGFETurbulenceElement.js'; +import type SVGFilterElement from '../nodes/svg-filter-element/SVGFilterElement.js'; +import type SVGForeignObjectElement from '../nodes/svg-foreign-object-element/SVGForeignObjectElement.js'; +import type SVGGElement from '../nodes/svg-g-element/SVGGElement.js'; +import type SVGImageElement from '../nodes/svg-image-element/SVGImageElement.js'; +import type SVGLineElement from '../nodes/svg-line-element/SVGLineElement.js'; +import type SVGLinearGradientElement from '../nodes/svg-linear-gradient-element/SVGLinearGradientElement.js'; +import type SVGMarkerElement from '../nodes/svg-marker-element/SVGMarkerElement.js'; +import type SVGMaskElement from '../nodes/svg-mask-element/SVGMaskElement.js'; +import type SVGMetadataElement from '../nodes/svg-metadata-element/SVGMetadataElement.js'; +import type SVGMPathElement from '../nodes/svg-m-path-element/SVGMPathElement.js'; +import type SVGPathElement from '../nodes/svg-path-element/SVGPathElement.js'; +import type SVGPatternElement from '../nodes/svg-pattern-element/SVGPatternElement.js'; +import type SVGPolygonElement from '../nodes/svg-polygon-element/SVGPolygonElement.js'; +import type SVGPolylineElement from '../nodes/svg-polyline-element/SVGPolylineElement.js'; +import type SVGRadialGradientElement from '../nodes/svg-radial-gradient-element/SVGRadialGradientElement.js'; +import type SVGRectElement from '../nodes/svg-rect-element/SVGRectElement.js'; +import type SVGScriptElement from '../nodes/svg-script-element/SVGScriptElement.js'; +import type SVGSetElement from '../nodes/svg-set-element/SVGSetElement.js'; +import type SVGStopElement from '../nodes/svg-stop-element/SVGStopElement.js'; +import type SVGStyleElement from '../nodes/svg-style-element/SVGStyleElement.js'; +import type SVGSwitchElement from '../nodes/svg-switch-element/SVGSwitchElement.js'; +import type SVGSymbolElement from '../nodes/svg-symbol-element/SVGSymbolElement.js'; +import type SVGTextElement from '../nodes/svg-text-element/SVGTextElement.js'; +import type SVGTextPathElement from '../nodes/svg-text-path-element/SVGTextPathElement.js'; +import type SVGTitleElement from '../nodes/svg-title-element/SVGTitleElement.js'; +import type SVGTSpanElement from '../nodes/svg-t-span-element/SVGTSpanElement.js'; +import type SVGUseElement from '../nodes/svg-use-element/SVGUseElement.js'; +import type SVGViewElement from '../nodes/svg-view-element/SVGViewElement.js'; export default interface ISVGElementTagNameMap { svg: SVGSVGElement; diff --git a/packages/happy-dom/src/console/IVirtualConsoleLogEntry.ts b/packages/happy-dom/src/console/IVirtualConsoleLogEntry.ts index 6ae094e29..488800b60 100644 --- a/packages/happy-dom/src/console/IVirtualConsoleLogEntry.ts +++ b/packages/happy-dom/src/console/IVirtualConsoleLogEntry.ts @@ -1,6 +1,6 @@ -import IVirtualConsoleLogGroup from './IVirtualConsoleLogGroup.js'; -import VirtualConsoleLogLevelEnum from './enums/VirtualConsoleLogLevelEnum.js'; -import VirtualConsoleLogTypeEnum from './enums/VirtualConsoleLogTypeEnum.js'; +import type IVirtualConsoleLogGroup from './IVirtualConsoleLogGroup.js'; +import type VirtualConsoleLogLevelEnum from './enums/VirtualConsoleLogLevelEnum.js'; +import type VirtualConsoleLogTypeEnum from './enums/VirtualConsoleLogTypeEnum.js'; export default interface IVirtualConsoleLogEntry { type: VirtualConsoleLogTypeEnum; diff --git a/packages/happy-dom/src/console/IVirtualConsolePrinter.ts b/packages/happy-dom/src/console/IVirtualConsolePrinter.ts index f31f7c2a2..babfa6839 100644 --- a/packages/happy-dom/src/console/IVirtualConsolePrinter.ts +++ b/packages/happy-dom/src/console/IVirtualConsolePrinter.ts @@ -1,6 +1,6 @@ -import IVirtualConsoleLogEntry from './IVirtualConsoleLogEntry.js'; -import VirtualConsoleLogLevelEnum from './enums/VirtualConsoleLogLevelEnum.js'; -import Event from '../event/Event.js'; +import type IVirtualConsoleLogEntry from './IVirtualConsoleLogEntry.js'; +import type VirtualConsoleLogLevelEnum from './enums/VirtualConsoleLogLevelEnum.js'; +import type Event from '../event/Event.js'; /** * Virtual console printer. diff --git a/packages/happy-dom/src/console/VirtualConsole.ts b/packages/happy-dom/src/console/VirtualConsole.ts index a79c3f2ca..7f3f517d5 100644 --- a/packages/happy-dom/src/console/VirtualConsole.ts +++ b/packages/happy-dom/src/console/VirtualConsole.ts @@ -1,8 +1,8 @@ -import IVirtualConsolePrinter from './IVirtualConsolePrinter.js'; +import type IVirtualConsolePrinter from './IVirtualConsolePrinter.js'; import VirtualConsoleLogLevelEnum from './enums/VirtualConsoleLogLevelEnum.js'; import VirtualConsoleLogTypeEnum from './enums/VirtualConsoleLogTypeEnum.js'; -import IVirtualConsoleLogGroup from './IVirtualConsoleLogGroup.js'; -import { ConsoleConstructor } from 'console'; +import type IVirtualConsoleLogGroup from './IVirtualConsoleLogGroup.js'; +import type { ConsoleConstructor } from 'console'; /** * Virtual Console. diff --git a/packages/happy-dom/src/console/VirtualConsolePrinter.ts b/packages/happy-dom/src/console/VirtualConsolePrinter.ts index 502ed0061..7cc599344 100644 --- a/packages/happy-dom/src/console/VirtualConsolePrinter.ts +++ b/packages/happy-dom/src/console/VirtualConsolePrinter.ts @@ -1,8 +1,8 @@ -import IVirtualConsoleLogEntry from './IVirtualConsoleLogEntry.js'; +import type IVirtualConsoleLogEntry from './IVirtualConsoleLogEntry.js'; import VirtualConsoleLogLevelEnum from './enums/VirtualConsoleLogLevelEnum.js'; import Event from '../event/Event.js'; import VirtualConsoleLogEntryStringifier from './utilities/VirtualConsoleLogEntryStringifier.js'; -import IVirtualConsolePrinter from './IVirtualConsolePrinter.js'; +import type IVirtualConsolePrinter from './IVirtualConsolePrinter.js'; /** * Virtual console printer. diff --git a/packages/happy-dom/src/console/utilities/VirtualConsoleLogEntryStringifier.ts b/packages/happy-dom/src/console/utilities/VirtualConsoleLogEntryStringifier.ts index acfdd803a..a4b9c9bdd 100644 --- a/packages/happy-dom/src/console/utilities/VirtualConsoleLogEntryStringifier.ts +++ b/packages/happy-dom/src/console/utilities/VirtualConsoleLogEntryStringifier.ts @@ -1,4 +1,4 @@ -import IVirtualConsoleLogEntry from '../IVirtualConsoleLogEntry.js'; +import type IVirtualConsoleLogEntry from '../IVirtualConsoleLogEntry.js'; import VirtualConsoleLogTypeEnum from '../enums/VirtualConsoleLogTypeEnum.js'; /** diff --git a/packages/happy-dom/src/cookie/CookieContainer.ts b/packages/happy-dom/src/cookie/CookieContainer.ts index 87b208e9b..f7f3d8be2 100644 --- a/packages/happy-dom/src/cookie/CookieContainer.ts +++ b/packages/happy-dom/src/cookie/CookieContainer.ts @@ -1,8 +1,8 @@ -import URL from '../url/URL.js'; +import type URL from '../url/URL.js'; import DefaultCookie from './DefaultCookie.js'; -import ICookie from './ICookie.js'; -import ICookieContainer from './ICookieContainer.js'; -import IOptionalCookie from './IOptionalCookie.js'; +import type ICookie from './ICookie.js'; +import type ICookieContainer from './ICookieContainer.js'; +import type IOptionalCookie from './IOptionalCookie.js'; import CookieExpireUtility from './urilities/CookieExpireUtility.js'; import CookieURLUtility from './urilities/CookieURLUtility.js'; diff --git a/packages/happy-dom/src/cookie/DefaultCookie.ts b/packages/happy-dom/src/cookie/DefaultCookie.ts index 11ac7aac3..a34e605cc 100644 --- a/packages/happy-dom/src/cookie/DefaultCookie.ts +++ b/packages/happy-dom/src/cookie/DefaultCookie.ts @@ -1,5 +1,5 @@ import CookieSameSiteEnum from './enums/CookieSameSiteEnum.js'; -import ICookie from './ICookie.js'; +import type ICookie from './ICookie.js'; export default { // Required diff --git a/packages/happy-dom/src/cookie/ICookie.ts b/packages/happy-dom/src/cookie/ICookie.ts index 94bf9360c..ad827a518 100644 --- a/packages/happy-dom/src/cookie/ICookie.ts +++ b/packages/happy-dom/src/cookie/ICookie.ts @@ -1,4 +1,4 @@ -import CookieSameSiteEnum from './enums/CookieSameSiteEnum.js'; +import type CookieSameSiteEnum from './enums/CookieSameSiteEnum.js'; export default interface ICookie { // Required diff --git a/packages/happy-dom/src/cookie/ICookieContainer.ts b/packages/happy-dom/src/cookie/ICookieContainer.ts index f1430e026..2f6f68d86 100644 --- a/packages/happy-dom/src/cookie/ICookieContainer.ts +++ b/packages/happy-dom/src/cookie/ICookieContainer.ts @@ -1,6 +1,6 @@ -import URL from '../url/URL.js'; -import ICookie from './ICookie.js'; -import IOptionalCookie from './IOptionalCookie.js'; +import type URL from '../url/URL.js'; +import type ICookie from './ICookie.js'; +import type IOptionalCookie from './IOptionalCookie.js'; /** * Cookie Container. diff --git a/packages/happy-dom/src/cookie/IOptionalCookie.ts b/packages/happy-dom/src/cookie/IOptionalCookie.ts index 2c67780ae..cd7dcfcbc 100644 --- a/packages/happy-dom/src/cookie/IOptionalCookie.ts +++ b/packages/happy-dom/src/cookie/IOptionalCookie.ts @@ -1,4 +1,4 @@ -import CookieSameSiteEnum from './enums/CookieSameSiteEnum.js'; +import type CookieSameSiteEnum from './enums/CookieSameSiteEnum.js'; export default interface IOptionalCookie { // Required diff --git a/packages/happy-dom/src/cookie/urilities/CookieExpireUtility.ts b/packages/happy-dom/src/cookie/urilities/CookieExpireUtility.ts index 89d65e461..0910e6573 100644 --- a/packages/happy-dom/src/cookie/urilities/CookieExpireUtility.ts +++ b/packages/happy-dom/src/cookie/urilities/CookieExpireUtility.ts @@ -1,4 +1,4 @@ -import ICookie from '../ICookie.js'; +import type ICookie from '../ICookie.js'; /** * Cookie expire utility. diff --git a/packages/happy-dom/src/cookie/urilities/CookieStringUtility.ts b/packages/happy-dom/src/cookie/urilities/CookieStringUtility.ts index 5b1237aa9..1732e3d80 100644 --- a/packages/happy-dom/src/cookie/urilities/CookieStringUtility.ts +++ b/packages/happy-dom/src/cookie/urilities/CookieStringUtility.ts @@ -1,8 +1,8 @@ import CookieSameSiteEnum from '../enums/CookieSameSiteEnum.js'; -import URL from '../../url/URL.js'; -import ICookie from '../ICookie.js'; +import type URL from '../../url/URL.js'; +import type ICookie from '../ICookie.js'; import DefaultCookie from '../DefaultCookie.js'; -import Location from '../../location/Location.js'; +import type Location from '../../location/Location.js'; /** * Cookie string. diff --git a/packages/happy-dom/src/cookie/urilities/CookieURLUtility.ts b/packages/happy-dom/src/cookie/urilities/CookieURLUtility.ts index 2f30b34f9..872b2ca40 100644 --- a/packages/happy-dom/src/cookie/urilities/CookieURLUtility.ts +++ b/packages/happy-dom/src/cookie/urilities/CookieURLUtility.ts @@ -1,6 +1,6 @@ import CookieSameSiteEnum from '../enums/CookieSameSiteEnum.js'; -import URL from '../../url/URL.js'; -import ICookie from '../ICookie.js'; +import type URL from '../../url/URL.js'; +import type ICookie from '../ICookie.js'; /** * Cookie string. diff --git a/packages/happy-dom/src/css/CSSRule.ts b/packages/happy-dom/src/css/CSSRule.ts index 91098342a..44f9de14b 100644 --- a/packages/happy-dom/src/css/CSSRule.ts +++ b/packages/happy-dom/src/css/CSSRule.ts @@ -1,8 +1,8 @@ -import CSSStyleSheet from './CSSStyleSheet.js'; +import type CSSStyleSheet from './CSSStyleSheet.js'; import CSSRuleTypeEnum from './CSSRuleTypeEnum.js'; import * as PropertySymbol from '../PropertySymbol.js'; -import BrowserWindow from '../window/BrowserWindow.js'; -import CSSParser from './utilities/CSSParser.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; +import type CSSParser from './utilities/CSSParser.js'; /** * CSSRule interface. diff --git a/packages/happy-dom/src/css/CSSStyleSheet.ts b/packages/happy-dom/src/css/CSSStyleSheet.ts index 225417cca..9ce23d664 100644 --- a/packages/happy-dom/src/css/CSSStyleSheet.ts +++ b/packages/happy-dom/src/css/CSSStyleSheet.ts @@ -1,8 +1,8 @@ import DOMExceptionNameEnum from '../exception/DOMExceptionNameEnum.js'; import CSSParser from './utilities/CSSParser.js'; -import CSSRule from './CSSRule.js'; -import MediaList from './MediaList.js'; -import BrowserWindow from '../window/BrowserWindow.js'; +import type CSSRule from './CSSRule.js'; +import type MediaList from './MediaList.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; import * as PropertySymbol from '../PropertySymbol.js'; /** diff --git a/packages/happy-dom/src/css/MediaList.ts b/packages/happy-dom/src/css/MediaList.ts index e6479a5dd..e168317ec 100644 --- a/packages/happy-dom/src/css/MediaList.ts +++ b/packages/happy-dom/src/css/MediaList.ts @@ -1,4 +1,4 @@ -import CSSMediaRule from './rules/CSSMediaRule.js'; +import type CSSMediaRule from './rules/CSSMediaRule.js'; import * as PropertySymbol from '../PropertySymbol.js'; import ClassMethodBinder from '../utilities/ClassMethodBinder.js'; diff --git a/packages/happy-dom/src/css/declaration/CSSStyleDeclaration.ts b/packages/happy-dom/src/css/declaration/CSSStyleDeclaration.ts index 1ef0cc4b8..a94e6ed84 100644 --- a/packages/happy-dom/src/css/declaration/CSSStyleDeclaration.ts +++ b/packages/happy-dom/src/css/declaration/CSSStyleDeclaration.ts @@ -1,9 +1,9 @@ -import Element from '../../nodes/element/Element.js'; -import CSSRule from '../CSSRule.js'; +import type Element from '../../nodes/element/Element.js'; +import type CSSRule from '../CSSRule.js'; import DOMExceptionNameEnum from '../../exception/DOMExceptionNameEnum.js'; import CSSStyleDeclarationPropertyManager from './property-manager/CSSStyleDeclarationPropertyManager.js'; import * as PropertySymbol from '../../PropertySymbol.js'; -import BrowserWindow from '../../window/BrowserWindow.js'; +import type BrowserWindow from '../../window/BrowserWindow.js'; import CSSStyleDeclarationComputedStyle from './computed-style/CSSStyleDeclarationComputedStyle.js'; /** diff --git a/packages/happy-dom/src/css/declaration/computed-style/CSSStyleDeclarationComputedStyle.ts b/packages/happy-dom/src/css/declaration/computed-style/CSSStyleDeclarationComputedStyle.ts index ddb2e7d6c..09e2f0950 100644 --- a/packages/happy-dom/src/css/declaration/computed-style/CSSStyleDeclarationComputedStyle.ts +++ b/packages/happy-dom/src/css/declaration/computed-style/CSSStyleDeclarationComputedStyle.ts @@ -1,15 +1,15 @@ -import ShadowRoot from '../../../nodes/shadow-root/ShadowRoot.js'; +import type ShadowRoot from '../../../nodes/shadow-root/ShadowRoot.js'; import * as PropertySymbol from '../../../PropertySymbol.js'; -import Element from '../../../nodes/element/Element.js'; -import Document from '../../../nodes/document/Document.js'; -import HTMLStyleElement from '../../../nodes/html-style-element/HTMLStyleElement.js'; -import NodeList from '../../../nodes/node/NodeList.js'; +import type Element from '../../../nodes/element/Element.js'; +import type Document from '../../../nodes/document/Document.js'; +import type HTMLStyleElement from '../../../nodes/html-style-element/HTMLStyleElement.js'; +import type NodeList from '../../../nodes/node/NodeList.js'; import CSSStyleDeclarationPropertyManager from '../property-manager/CSSStyleDeclarationPropertyManager.js'; import NodeTypeEnum from '../../../nodes/node/NodeTypeEnum.js'; import CSSRuleTypeEnum from '../../CSSRuleTypeEnum.js'; -import CSSMediaRule from '../../rules/CSSMediaRule.js'; -import CSSRule from '../../CSSRule.js'; -import CSSStyleRule from '../../rules/CSSStyleRule.js'; +import type CSSMediaRule from '../../rules/CSSMediaRule.js'; +import type CSSRule from '../../CSSRule.js'; +import type CSSStyleRule from '../../rules/CSSStyleRule.js'; import CSSStyleDeclarationElementDefaultCSS from './config/CSSStyleDeclarationElementDefaultCSS.js'; import CSSStyleDeclarationElementInheritedProperties from './config/CSSStyleDeclarationElementInheritedProperties.js'; import CSSStyleDeclarationElementMeasurementProperties from './config/CSSStyleDeclarationElementMeasurementProperties.js'; @@ -18,9 +18,9 @@ import QuerySelector from '../../../query-selector/QuerySelector.js'; import CSSMeasurementConverter from '../measurement-converter/CSSMeasurementConverter.js'; import MediaQueryList from '../../../match-media/MediaQueryList.js'; import WindowBrowserContext from '../../../window/WindowBrowserContext.js'; -import CSSSupportsRule from '../../rules/CSSSupportsRule.js'; +import type CSSSupportsRule from '../../rules/CSSSupportsRule.js'; import CSSScopeRule from '../../rules/CSSScopeRule.js'; -import CSSStyleSheet from '../../CSSStyleSheet.js'; +import type CSSStyleSheet from '../../CSSStyleSheet.js'; const CSS_MEASUREMENT_REGEXP = /[0-9.]+(px|rem|em|vw|vh|%|vmin|vmax|cm|mm|in|pt|pc|Q)/g; const HOST_REGEXP = /:host\s*\(([^)]+)\)|:host-context\s*\(([^)]+)\)/; diff --git a/packages/happy-dom/src/css/declaration/measurement-converter/CSSMeasurementConverter.ts b/packages/happy-dom/src/css/declaration/measurement-converter/CSSMeasurementConverter.ts index da0061e56..19b243721 100644 --- a/packages/happy-dom/src/css/declaration/measurement-converter/CSSMeasurementConverter.ts +++ b/packages/happy-dom/src/css/declaration/measurement-converter/CSSMeasurementConverter.ts @@ -1,4 +1,4 @@ -import BrowserWindow from '../../../window/BrowserWindow.js'; +import type BrowserWindow from '../../../window/BrowserWindow.js'; /** * CSS Measurement Converter. diff --git a/packages/happy-dom/src/css/declaration/property-manager/CSSStyleDeclarationPropertyGetParser.ts b/packages/happy-dom/src/css/declaration/property-manager/CSSStyleDeclarationPropertyGetParser.ts index 65b44de2d..11f83138d 100644 --- a/packages/happy-dom/src/css/declaration/property-manager/CSSStyleDeclarationPropertyGetParser.ts +++ b/packages/happy-dom/src/css/declaration/property-manager/CSSStyleDeclarationPropertyGetParser.ts @@ -1,5 +1,5 @@ import CSSStyleDeclarationValueParser from './CSSStyleDeclarationValueParser.js'; -import ICSSStyleDeclarationPropertyValue from './ICSSStyleDeclarationPropertyValue.js'; +import type ICSSStyleDeclarationPropertyValue from './ICSSStyleDeclarationPropertyValue.js'; /** * Computed style property parser. diff --git a/packages/happy-dom/src/css/declaration/property-manager/CSSStyleDeclarationPropertyManager.ts b/packages/happy-dom/src/css/declaration/property-manager/CSSStyleDeclarationPropertyManager.ts index a460b2ef2..e034baaf5 100644 --- a/packages/happy-dom/src/css/declaration/property-manager/CSSStyleDeclarationPropertyManager.ts +++ b/packages/happy-dom/src/css/declaration/property-manager/CSSStyleDeclarationPropertyManager.ts @@ -1,4 +1,4 @@ -import ICSSStyleDeclarationPropertyValue from './ICSSStyleDeclarationPropertyValue.js'; +import type ICSSStyleDeclarationPropertyValue from './ICSSStyleDeclarationPropertyValue.js'; import CSSStyleDeclarationPropertySetParser from './CSSStyleDeclarationPropertySetParser.js'; import CSSStyleDeclarationValueParser from './CSSStyleDeclarationValueParser.js'; import CSSStyleDeclarationPropertyGetParser from './CSSStyleDeclarationPropertyGetParser.js'; diff --git a/packages/happy-dom/src/css/declaration/property-manager/CSSStyleDeclarationPropertySetParser.ts b/packages/happy-dom/src/css/declaration/property-manager/CSSStyleDeclarationPropertySetParser.ts index f95586389..890157fe1 100644 --- a/packages/happy-dom/src/css/declaration/property-manager/CSSStyleDeclarationPropertySetParser.ts +++ b/packages/happy-dom/src/css/declaration/property-manager/CSSStyleDeclarationPropertySetParser.ts @@ -1,5 +1,5 @@ import CSSStyleDeclarationValueParser from './CSSStyleDeclarationValueParser.js'; -import ICSSStyleDeclarationPropertyValue from './ICSSStyleDeclarationPropertyValue.js'; +import type ICSSStyleDeclarationPropertyValue from './ICSSStyleDeclarationPropertyValue.js'; const RECT_REGEXP = /^rect\((.*)\)$/i; const SPLIT_COMMA_SEPARATED_WITH_PARANTHESES_REGEXP = /,(?=(?:(?:(?!\))[\s\S])*\()|[^\(\)]*$)/; // Split on commas that are outside of parentheses diff --git a/packages/happy-dom/src/css/rules/CSSStyleRule.ts b/packages/happy-dom/src/css/rules/CSSStyleRule.ts index 2112496a3..91beb613b 100644 --- a/packages/happy-dom/src/css/rules/CSSStyleRule.ts +++ b/packages/happy-dom/src/css/rules/CSSStyleRule.ts @@ -1,4 +1,4 @@ -import CSSRule from '../CSSRule.js'; +import type CSSRule from '../CSSRule.js'; import * as PropertySymbol from '../../PropertySymbol.js'; import CSSStyleDeclaration from '../declaration/CSSStyleDeclaration.js'; import CSSRuleTypeEnum from '../CSSRuleTypeEnum.js'; diff --git a/packages/happy-dom/src/css/style-property-map/CSSStyleValue.ts b/packages/happy-dom/src/css/style-property-map/CSSStyleValue.ts index 3bde50c0e..4253a02af 100644 --- a/packages/happy-dom/src/css/style-property-map/CSSStyleValue.ts +++ b/packages/happy-dom/src/css/style-property-map/CSSStyleValue.ts @@ -1,4 +1,4 @@ -import CSSStyleDeclaration from '../declaration/CSSStyleDeclaration.js'; +import type CSSStyleDeclaration from '../declaration/CSSStyleDeclaration.js'; import * as PropertySymbol from '../../PropertySymbol.js'; /** diff --git a/packages/happy-dom/src/css/style-property-map/StylePropertyMapReadOnly.ts b/packages/happy-dom/src/css/style-property-map/StylePropertyMapReadOnly.ts index 7c409386e..28592e0cc 100644 --- a/packages/happy-dom/src/css/style-property-map/StylePropertyMapReadOnly.ts +++ b/packages/happy-dom/src/css/style-property-map/StylePropertyMapReadOnly.ts @@ -1,4 +1,4 @@ -import CSSStyleDeclaration from '../declaration/CSSStyleDeclaration.js'; +import type CSSStyleDeclaration from '../declaration/CSSStyleDeclaration.js'; import CSSKeywordValue from './CSSKeywordValue.js'; import CSSStyleValue from './CSSStyleValue.js'; import * as PropertySymbol from '../../PropertySymbol.js'; diff --git a/packages/happy-dom/src/css/utilities/CSSParser.ts b/packages/happy-dom/src/css/utilities/CSSParser.ts index 160e3f988..a397075e3 100644 --- a/packages/happy-dom/src/css/utilities/CSSParser.ts +++ b/packages/happy-dom/src/css/utilities/CSSParser.ts @@ -1,6 +1,6 @@ -import CSSRule from '../CSSRule.js'; +import type CSSRule from '../CSSRule.js'; import * as PropertySymbol from '../../PropertySymbol.js'; -import CSSStyleSheet from '../CSSStyleSheet.js'; +import type CSSStyleSheet from '../CSSStyleSheet.js'; import CSSStyleRule from '../rules/CSSStyleRule.js'; import CSSKeyframeRule from '../rules/CSSKeyframeRule.js'; import CSSKeyframesRule from '../rules/CSSKeyframesRule.js'; diff --git a/packages/happy-dom/src/custom-element/CustomElementReactionStack.ts b/packages/happy-dom/src/custom-element/CustomElementReactionStack.ts index 08dba2eba..25ca27b70 100644 --- a/packages/happy-dom/src/custom-element/CustomElementReactionStack.ts +++ b/packages/happy-dom/src/custom-element/CustomElementReactionStack.ts @@ -1,7 +1,7 @@ -import BrowserWindow from '../window/BrowserWindow.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; import * as PropertySymbol from '../PropertySymbol.js'; import WindowBrowserContext from '../window/WindowBrowserContext.js'; -import Element from '../nodes/element/Element.js'; +import type Element from '../nodes/element/Element.js'; /** * Custom element reaction stack. diff --git a/packages/happy-dom/src/custom-element/CustomElementRegistry.ts b/packages/happy-dom/src/custom-element/CustomElementRegistry.ts index 399df2c38..b1b95a82a 100644 --- a/packages/happy-dom/src/custom-element/CustomElementRegistry.ts +++ b/packages/happy-dom/src/custom-element/CustomElementRegistry.ts @@ -1,11 +1,11 @@ import * as PropertySymbol from '../PropertySymbol.js'; -import HTMLElement from '../nodes/html-element/HTMLElement.js'; -import Node from '../nodes/node/Node.js'; -import BrowserWindow from '../window/BrowserWindow.js'; +import type HTMLElement from '../nodes/html-element/HTMLElement.js'; +import type Node from '../nodes/node/Node.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; import NamespaceURI from '../config/NamespaceURI.js'; import StringUtility from '../utilities/StringUtility.js'; import CustomElementUtility from './CustomElementUtility.js'; -import ICustomElementDefinition from './ICustomElementDefinition.js'; +import type ICustomElementDefinition from './ICustomElementDefinition.js'; /** * Custom elements registry. diff --git a/packages/happy-dom/src/custom-element/ICustomElementDefinition.ts b/packages/happy-dom/src/custom-element/ICustomElementDefinition.ts index b51103bfb..fbdb6d8b0 100644 --- a/packages/happy-dom/src/custom-element/ICustomElementDefinition.ts +++ b/packages/happy-dom/src/custom-element/ICustomElementDefinition.ts @@ -1,4 +1,4 @@ -import HTMLElement from '../nodes/html-element/HTMLElement.js'; +import type HTMLElement from '../nodes/html-element/HTMLElement.js'; export default interface ICustomElementDefinition { elementClass: typeof HTMLElement; diff --git a/packages/happy-dom/src/dom-implementation/DOMImplementation.ts b/packages/happy-dom/src/dom-implementation/DOMImplementation.ts index 32c70d64d..538cc7e3b 100644 --- a/packages/happy-dom/src/dom-implementation/DOMImplementation.ts +++ b/packages/happy-dom/src/dom-implementation/DOMImplementation.ts @@ -1,6 +1,6 @@ import DocumentType from '../nodes/document-type/DocumentType.js'; import * as PropertySymbol from '../PropertySymbol.js'; -import Document from '../nodes/document/Document.js'; +import type Document from '../nodes/document/Document.js'; import NodeFactory from '../nodes/NodeFactory.js'; /** diff --git a/packages/happy-dom/src/dom-parser/DOMParser.ts b/packages/happy-dom/src/dom-parser/DOMParser.ts index da6cd6c59..b2b286942 100644 --- a/packages/happy-dom/src/dom-parser/DOMParser.ts +++ b/packages/happy-dom/src/dom-parser/DOMParser.ts @@ -1,7 +1,7 @@ -import Document from '../nodes/document/Document.js'; +import type Document from '../nodes/document/Document.js'; import * as PropertySymbol from '../PropertySymbol.js'; import XMLParser from '../xml-parser/XMLParser.js'; -import BrowserWindow from '../window/BrowserWindow.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; import HTMLParser from '../html-parser/HTMLParser.js'; /** diff --git a/packages/happy-dom/src/dom/DOMPointReadOnly.ts b/packages/happy-dom/src/dom/DOMPointReadOnly.ts index b51945d9a..97fb0257a 100644 --- a/packages/happy-dom/src/dom/DOMPointReadOnly.ts +++ b/packages/happy-dom/src/dom/DOMPointReadOnly.ts @@ -1,5 +1,5 @@ import * as PropertySymbol from '../PropertySymbol.js'; -import IDOMPointInit from './IDOMPointInit.js'; +import type IDOMPointInit from './IDOMPointInit.js'; /** * DOM Point Readonly. diff --git a/packages/happy-dom/src/dom/DOMRect.ts b/packages/happy-dom/src/dom/DOMRect.ts index addc4f7de..254ebf578 100644 --- a/packages/happy-dom/src/dom/DOMRect.ts +++ b/packages/happy-dom/src/dom/DOMRect.ts @@ -1,6 +1,6 @@ import DOMRectReadOnly from './DOMRectReadOnly.js'; import * as PropertySymbol from '../PropertySymbol.js'; -import IDOMRectInit from './IDOMRectInit.js'; +import type IDOMRectInit from './IDOMRectInit.js'; /** * DOM Rect. diff --git a/packages/happy-dom/src/dom/DOMRectList.ts b/packages/happy-dom/src/dom/DOMRectList.ts index 16f2555e1..8296dce79 100644 --- a/packages/happy-dom/src/dom/DOMRectList.ts +++ b/packages/happy-dom/src/dom/DOMRectList.ts @@ -1,4 +1,4 @@ -import DOMRect from './DOMRect.js'; +import type DOMRect from './DOMRect.js'; import * as PropertySymbol from '../PropertySymbol.js'; /** diff --git a/packages/happy-dom/src/dom/DOMRectReadOnly.ts b/packages/happy-dom/src/dom/DOMRectReadOnly.ts index 6577ea9e3..25346dab0 100644 --- a/packages/happy-dom/src/dom/DOMRectReadOnly.ts +++ b/packages/happy-dom/src/dom/DOMRectReadOnly.ts @@ -1,5 +1,5 @@ import * as PropertySymbol from '../PropertySymbol.js'; -import IDOMRectInit from './IDOMRectInit.js'; +import type IDOMRectInit from './IDOMRectInit.js'; /** * DOM Rect Readonly. diff --git a/packages/happy-dom/src/dom/DOMStringMap.ts b/packages/happy-dom/src/dom/DOMStringMap.ts index 07d6d14c8..d5c2d3f09 100644 --- a/packages/happy-dom/src/dom/DOMStringMap.ts +++ b/packages/happy-dom/src/dom/DOMStringMap.ts @@ -1,4 +1,4 @@ -import Element from '../nodes/element/Element.js'; +import type Element from '../nodes/element/Element.js'; import * as PropertySymbol from '../PropertySymbol.js'; import DOMStringMapUtility from './DOMStringMapUtility.js'; diff --git a/packages/happy-dom/src/dom/DOMTokenList.ts b/packages/happy-dom/src/dom/DOMTokenList.ts index 6b218ecbb..87ac99ec5 100644 --- a/packages/happy-dom/src/dom/DOMTokenList.ts +++ b/packages/happy-dom/src/dom/DOMTokenList.ts @@ -1,5 +1,5 @@ import ClassMethodBinder from '../utilities/ClassMethodBinder.js'; -import Element from '../nodes/element/Element.js'; +import type Element from '../nodes/element/Element.js'; import * as PropertySymbol from '../PropertySymbol.js'; const ATTRIBUTE_SPLIT_REGEXP = /[\t\f\n\r ]+/; diff --git a/packages/happy-dom/src/dom/dom-matrix/DOMMatrix.ts b/packages/happy-dom/src/dom/dom-matrix/DOMMatrix.ts index ef22a058f..e274e61a3 100644 --- a/packages/happy-dom/src/dom/dom-matrix/DOMMatrix.ts +++ b/packages/happy-dom/src/dom/dom-matrix/DOMMatrix.ts @@ -1,7 +1,7 @@ import * as PropertySymbol from '../../PropertySymbol.js'; import DOMMatrixReadOnly from './DOMMatrixReadOnly.js'; -import IDOMMatrixCompatibleObject from './IDOMMatrixCompatibleObject.js'; -import TDOMMatrixInit from './TDOMMatrixInit.js'; +import type IDOMMatrixCompatibleObject from './IDOMMatrixCompatibleObject.js'; +import type { TDOMMatrixInit } from './TDOMMatrixInit.js'; /** * DOM Matrix. diff --git a/packages/happy-dom/src/dom/dom-matrix/DOMMatrixReadOnly.ts b/packages/happy-dom/src/dom/dom-matrix/DOMMatrixReadOnly.ts index 1863640f5..6ee624255 100644 --- a/packages/happy-dom/src/dom/dom-matrix/DOMMatrixReadOnly.ts +++ b/packages/happy-dom/src/dom/dom-matrix/DOMMatrixReadOnly.ts @@ -1,11 +1,11 @@ import DOMPoint from '../DOMPoint.js'; -import IDOMPointInit from '../IDOMPointInit.js'; +import type IDOMPointInit from '../IDOMPointInit.js'; import * as PropertySymbol from '../../PropertySymbol.js'; -import TDOMMatrixInit from './TDOMMatrixInit.js'; -import TDOMMatrix2DArray from './TDOMMatrix2DArray.js'; -import TDOMMatrix3DArray from './TDOMMatrix3DArray.js'; -import IDOMMatrixJSON from './IDOMMatrixJSON.js'; -import IDOMMatrixCompatibleObject from './IDOMMatrixCompatibleObject.js'; +import type { TDOMMatrixInit } from './TDOMMatrixInit.js'; +import type { TDOMMatrix2DArray } from './TDOMMatrix2DArray.js'; +import type { TDOMMatrix3DArray } from './TDOMMatrix3DArray.js'; +import type IDOMMatrixJSON from './IDOMMatrixJSON.js'; +import type IDOMMatrixCompatibleObject from './IDOMMatrixCompatibleObject.js'; const DEFAULT_MATRIX_JSON: IDOMMatrixJSON = { a: 1, diff --git a/packages/happy-dom/src/dom/dom-matrix/TDOMMatrix2DArray.ts b/packages/happy-dom/src/dom/dom-matrix/TDOMMatrix2DArray.ts index 9044d55ed..2cc8dc7a8 100644 --- a/packages/happy-dom/src/dom/dom-matrix/TDOMMatrix2DArray.ts +++ b/packages/happy-dom/src/dom/dom-matrix/TDOMMatrix2DArray.ts @@ -1,3 +1,3 @@ /** An array of 6 numbers representing a 2D matrix. */ -type TDOMMatrix2DArray = [number, number, number, number, number, number]; -export default TDOMMatrix2DArray; + +export type TDOMMatrix2DArray = [number, number, number, number, number, number]; diff --git a/packages/happy-dom/src/dom/dom-matrix/TDOMMatrix3DArray.ts b/packages/happy-dom/src/dom/dom-matrix/TDOMMatrix3DArray.ts index 435f5aad3..43068de08 100644 --- a/packages/happy-dom/src/dom/dom-matrix/TDOMMatrix3DArray.ts +++ b/packages/happy-dom/src/dom/dom-matrix/TDOMMatrix3DArray.ts @@ -1,5 +1,6 @@ /** An array of 16 numbers representing a 3D matrix. */ -type TDOMMatrix3DArray = [ + +export type TDOMMatrix3DArray = [ number, number, number, @@ -17,4 +18,3 @@ type TDOMMatrix3DArray = [ number, number ]; -export default TDOMMatrix3DArray; diff --git a/packages/happy-dom/src/dom/dom-matrix/TDOMMatrixInit.ts b/packages/happy-dom/src/dom/dom-matrix/TDOMMatrixInit.ts index 1a89f7198..1322b23d4 100644 --- a/packages/happy-dom/src/dom/dom-matrix/TDOMMatrixInit.ts +++ b/packages/happy-dom/src/dom/dom-matrix/TDOMMatrixInit.ts @@ -1,4 +1,8 @@ -import IDOMMatrixCompatibleObject from './IDOMMatrixCompatibleObject.js'; +import type IDOMMatrixCompatibleObject from './IDOMMatrixCompatibleObject.js'; -type TDOMMatrixInit = string | any[] | IDOMMatrixCompatibleObject | Float32Array | Float64Array; -export default TDOMMatrixInit; +export type TDOMMatrixInit = + | string + | any[] + | IDOMMatrixCompatibleObject + | Float32Array + | Float64Array; diff --git a/packages/happy-dom/src/event/DataTransfer.ts b/packages/happy-dom/src/event/DataTransfer.ts index 169dad582..cd58fb084 100644 --- a/packages/happy-dom/src/event/DataTransfer.ts +++ b/packages/happy-dom/src/event/DataTransfer.ts @@ -1,4 +1,4 @@ -import File from '../file/File.js'; +import type File from '../file/File.js'; import DataTransferItem from './DataTransferItem.js'; import DataTransferItemList from './DataTransferItemList.js'; diff --git a/packages/happy-dom/src/event/DataTransferItem.ts b/packages/happy-dom/src/event/DataTransferItem.ts index 743b5ce46..e72c992b7 100644 --- a/packages/happy-dom/src/event/DataTransferItem.ts +++ b/packages/happy-dom/src/event/DataTransferItem.ts @@ -1,4 +1,4 @@ -import File from '../file/File.js'; +import type File from '../file/File.js'; /** * Data transfer item. diff --git a/packages/happy-dom/src/event/Event.ts b/packages/happy-dom/src/event/Event.ts index 7f8e22569..bf5905ad1 100644 --- a/packages/happy-dom/src/event/Event.ts +++ b/packages/happy-dom/src/event/Event.ts @@ -1,12 +1,12 @@ -import IEventInit from './IEventInit.js'; +import type IEventInit from './IEventInit.js'; import * as PropertySymbol from '../PropertySymbol.js'; -import Node from '../nodes/node/Node.js'; -import BrowserWindow from '../window/BrowserWindow.js'; -import ShadowRoot from '../nodes/shadow-root/ShadowRoot.js'; -import EventTarget from './EventTarget.js'; +import type Node from '../nodes/node/Node.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; +import type ShadowRoot from '../nodes/shadow-root/ShadowRoot.js'; +import type EventTarget from './EventTarget.js'; import NodeTypeEnum from '../nodes/node/NodeTypeEnum.js'; import EventPhaseEnum from './EventPhaseEnum.js'; -import Document from '../nodes/document/Document.js'; +import type Document from '../nodes/document/Document.js'; /** * Event. diff --git a/packages/happy-dom/src/event/EventTarget.ts b/packages/happy-dom/src/event/EventTarget.ts index 567099f6d..39f83dddf 100644 --- a/packages/happy-dom/src/event/EventTarget.ts +++ b/packages/happy-dom/src/event/EventTarget.ts @@ -1,13 +1,13 @@ import * as PropertySymbol from '../PropertySymbol.js'; -import Event from './Event.js'; -import IEventListenerOptions from './IEventListenerOptions.js'; +import type Event from './Event.js'; +import type IEventListenerOptions from './IEventListenerOptions.js'; import EventPhaseEnum from './EventPhaseEnum.js'; import WindowBrowserContext from '../window/WindowBrowserContext.js'; import BrowserErrorCaptureEnum from '../browser/enums/BrowserErrorCaptureEnum.js'; -import TEventListener from './TEventListener.js'; -import TEventListenerObject from './TEventListenerObject.js'; -import TEventListenerFunction from './TEventListenerFunction.js'; -import BrowserWindow from '../window/BrowserWindow.js'; +import type { TEventListener } from './TEventListener.js'; +import type { TEventListenerObject } from './TEventListenerObject.js'; +import type { TEventListenerFunction } from './TEventListenerFunction.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; /** * Handles events. diff --git a/packages/happy-dom/src/event/IEventListenerOptions.ts b/packages/happy-dom/src/event/IEventListenerOptions.ts index 6cfa88db9..5ff3b49ff 100644 --- a/packages/happy-dom/src/event/IEventListenerOptions.ts +++ b/packages/happy-dom/src/event/IEventListenerOptions.ts @@ -1,4 +1,4 @@ -import AbortSignal from '../fetch/AbortSignal.js'; +import type AbortSignal from '../fetch/AbortSignal.js'; export default interface IEventListenerOptions { once?: boolean; diff --git a/packages/happy-dom/src/event/ITouchInit.ts b/packages/happy-dom/src/event/ITouchInit.ts index 1b45c6c30..6e4ef8b18 100644 --- a/packages/happy-dom/src/event/ITouchInit.ts +++ b/packages/happy-dom/src/event/ITouchInit.ts @@ -1,4 +1,4 @@ -import EventTarget from './EventTarget.js'; +import type EventTarget from './EventTarget.js'; export default interface ITouchInit { identifier: number; diff --git a/packages/happy-dom/src/event/IUIEventInit.ts b/packages/happy-dom/src/event/IUIEventInit.ts index 558607fa7..8a5d7fe15 100644 --- a/packages/happy-dom/src/event/IUIEventInit.ts +++ b/packages/happy-dom/src/event/IUIEventInit.ts @@ -1,5 +1,5 @@ -import BrowserWindow from '../window/BrowserWindow.js'; -import IEventInit from './IEventInit.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; +import type IEventInit from './IEventInit.js'; export default interface IUIEventInit extends IEventInit { detail?: number; diff --git a/packages/happy-dom/src/event/TEventListener.ts b/packages/happy-dom/src/event/TEventListener.ts index 8bb0a9234..9f1e5a274 100644 --- a/packages/happy-dom/src/event/TEventListener.ts +++ b/packages/happy-dom/src/event/TEventListener.ts @@ -1,6 +1,4 @@ -import TEventListenerFunction from './TEventListenerFunction.js'; -import TEventListenerObject from './TEventListenerObject.js'; +import type { TEventListenerFunction } from './TEventListenerFunction.js'; +import type { TEventListenerObject } from './TEventListenerObject.js'; -type TEventListener = TEventListenerFunction | TEventListenerObject; - -export default TEventListener; +export type TEventListener = TEventListenerFunction | TEventListenerObject; diff --git a/packages/happy-dom/src/event/TEventListenerFunction.ts b/packages/happy-dom/src/event/TEventListenerFunction.ts index 900f4ea8e..8509e3488 100644 --- a/packages/happy-dom/src/event/TEventListenerFunction.ts +++ b/packages/happy-dom/src/event/TEventListenerFunction.ts @@ -1,5 +1,3 @@ -import Event from './Event.js'; +import type Event from './Event.js'; -type TEventListenerFunction = (event: Event) => void; - -export default TEventListenerFunction; +export type TEventListenerFunction = (event: Event) => void; diff --git a/packages/happy-dom/src/event/TEventListenerObject.ts b/packages/happy-dom/src/event/TEventListenerObject.ts index 6e5ac8e48..ff427503b 100644 --- a/packages/happy-dom/src/event/TEventListenerObject.ts +++ b/packages/happy-dom/src/event/TEventListenerObject.ts @@ -1,7 +1,5 @@ -import Event from './Event.js'; +import type Event from './Event.js'; -type TEventListenerObject = { +export type TEventListenerObject = { handleEvent(event: Event): void; }; - -export default TEventListenerObject; diff --git a/packages/happy-dom/src/event/Touch.ts b/packages/happy-dom/src/event/Touch.ts index 02ec3c4af..f60e78120 100644 --- a/packages/happy-dom/src/event/Touch.ts +++ b/packages/happy-dom/src/event/Touch.ts @@ -1,5 +1,5 @@ -import EventTarget from './EventTarget.js'; -import ITouchInit from './ITouchInit.js'; +import type EventTarget from './EventTarget.js'; +import type ITouchInit from './ITouchInit.js'; /** * diff --git a/packages/happy-dom/src/event/UIEvent.ts b/packages/happy-dom/src/event/UIEvent.ts index c77edc254..8b44f1e0d 100644 --- a/packages/happy-dom/src/event/UIEvent.ts +++ b/packages/happy-dom/src/event/UIEvent.ts @@ -1,6 +1,6 @@ -import BrowserWindow from '../window/BrowserWindow.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; import Event from './Event.js'; -import IUIEventInit from './IUIEventInit.js'; +import type IUIEventInit from './IUIEventInit.js'; /** * diff --git a/packages/happy-dom/src/event/events/AnimationEvent.ts b/packages/happy-dom/src/event/events/AnimationEvent.ts index 669e26638..924e2476d 100644 --- a/packages/happy-dom/src/event/events/AnimationEvent.ts +++ b/packages/happy-dom/src/event/events/AnimationEvent.ts @@ -1,5 +1,5 @@ import Event from '../Event.js'; -import IAnimationEventInit from './IAnimationEventInit.js'; +import type IAnimationEventInit from './IAnimationEventInit.js'; /** * diff --git a/packages/happy-dom/src/event/events/ClipboardEvent.ts b/packages/happy-dom/src/event/events/ClipboardEvent.ts index 49d4c05ee..b00868466 100644 --- a/packages/happy-dom/src/event/events/ClipboardEvent.ts +++ b/packages/happy-dom/src/event/events/ClipboardEvent.ts @@ -1,6 +1,6 @@ -import DataTransfer from '../DataTransfer.js'; +import type DataTransfer from '../DataTransfer.js'; import Event from '../Event.js'; -import IClipboardEventInit from './IClipboardEventInit.js'; +import type IClipboardEventInit from './IClipboardEventInit.js'; /** * diff --git a/packages/happy-dom/src/event/events/CloseEvent.ts b/packages/happy-dom/src/event/events/CloseEvent.ts index 9f9a6b2bb..369fb86b1 100644 --- a/packages/happy-dom/src/event/events/CloseEvent.ts +++ b/packages/happy-dom/src/event/events/CloseEvent.ts @@ -1,5 +1,5 @@ import Event from '../Event.js'; -import ICloseEventInit from './ICloseEventInit.js'; +import type ICloseEventInit from './ICloseEventInit.js'; /** * diff --git a/packages/happy-dom/src/event/events/CustomEvent.ts b/packages/happy-dom/src/event/events/CustomEvent.ts index 2885f3e7d..4fb77a519 100644 --- a/packages/happy-dom/src/event/events/CustomEvent.ts +++ b/packages/happy-dom/src/event/events/CustomEvent.ts @@ -1,5 +1,5 @@ import Event from '../Event.js'; -import ICustomEventInit from './ICustomEventInit.js'; +import type ICustomEventInit from './ICustomEventInit.js'; import * as PropertySymbol from '../../PropertySymbol.js'; /** diff --git a/packages/happy-dom/src/event/events/ErrorEvent.ts b/packages/happy-dom/src/event/events/ErrorEvent.ts index 1bd1725c5..0c8eb73ac 100644 --- a/packages/happy-dom/src/event/events/ErrorEvent.ts +++ b/packages/happy-dom/src/event/events/ErrorEvent.ts @@ -1,5 +1,5 @@ import UIEvent from '../UIEvent.js'; -import IErrorEventInit from './IErrorEventInit.js'; +import type IErrorEventInit from './IErrorEventInit.js'; /** * diff --git a/packages/happy-dom/src/event/events/FocusEvent.ts b/packages/happy-dom/src/event/events/FocusEvent.ts index 3a6493050..fc293e417 100644 --- a/packages/happy-dom/src/event/events/FocusEvent.ts +++ b/packages/happy-dom/src/event/events/FocusEvent.ts @@ -1,6 +1,6 @@ import UIEvent from '../UIEvent.js'; -import EventTarget from '../EventTarget.js'; -import IFocusEventInit from './IFocusEventInit.js'; +import type EventTarget from '../EventTarget.js'; +import type IFocusEventInit from './IFocusEventInit.js'; /** * diff --git a/packages/happy-dom/src/event/events/HashChangeEvent.ts b/packages/happy-dom/src/event/events/HashChangeEvent.ts index 300bc277d..04d389190 100644 --- a/packages/happy-dom/src/event/events/HashChangeEvent.ts +++ b/packages/happy-dom/src/event/events/HashChangeEvent.ts @@ -1,5 +1,5 @@ import Event from '../Event.js'; -import IHashChangeEventInit from './IHashChangeEventInit.js'; +import type IHashChangeEventInit from './IHashChangeEventInit.js'; /** * Hash change event. diff --git a/packages/happy-dom/src/event/events/IAnimationEventInit.ts b/packages/happy-dom/src/event/events/IAnimationEventInit.ts index b850abb85..071f91ad7 100644 --- a/packages/happy-dom/src/event/events/IAnimationEventInit.ts +++ b/packages/happy-dom/src/event/events/IAnimationEventInit.ts @@ -1,4 +1,4 @@ -import IEventInit from '../IEventInit.js'; +import type IEventInit from '../IEventInit.js'; export default interface IAnimationEventInit extends IEventInit { animationName?: string; diff --git a/packages/happy-dom/src/event/events/IClipboardEventInit.ts b/packages/happy-dom/src/event/events/IClipboardEventInit.ts index a9312f384..c2fe6b3c9 100644 --- a/packages/happy-dom/src/event/events/IClipboardEventInit.ts +++ b/packages/happy-dom/src/event/events/IClipboardEventInit.ts @@ -1,5 +1,5 @@ -import DataTransfer from '../DataTransfer.js'; -import IEventInit from '../IEventInit.js'; +import type DataTransfer from '../DataTransfer.js'; +import type IEventInit from '../IEventInit.js'; export default interface IClipboardEventInit extends IEventInit { clipboardData?: DataTransfer | null; diff --git a/packages/happy-dom/src/event/events/ICloseEventInit.ts b/packages/happy-dom/src/event/events/ICloseEventInit.ts index c92b1f375..b16eefef0 100644 --- a/packages/happy-dom/src/event/events/ICloseEventInit.ts +++ b/packages/happy-dom/src/event/events/ICloseEventInit.ts @@ -1,4 +1,4 @@ -import IEventInit from '../IEventInit.js'; +import type IEventInit from '../IEventInit.js'; export default interface ICloseEventInit extends IEventInit { code?: number; diff --git a/packages/happy-dom/src/event/events/ICustomEventInit.ts b/packages/happy-dom/src/event/events/ICustomEventInit.ts index 1d0ae01d0..2251052f7 100644 --- a/packages/happy-dom/src/event/events/ICustomEventInit.ts +++ b/packages/happy-dom/src/event/events/ICustomEventInit.ts @@ -1,4 +1,4 @@ -import IEventInit from '../IEventInit.js'; +import type IEventInit from '../IEventInit.js'; export default interface ICustomEventInit extends IEventInit { detail?: object | null; diff --git a/packages/happy-dom/src/event/events/IErrorEventInit.ts b/packages/happy-dom/src/event/events/IErrorEventInit.ts index 7b8201792..236a53527 100644 --- a/packages/happy-dom/src/event/events/IErrorEventInit.ts +++ b/packages/happy-dom/src/event/events/IErrorEventInit.ts @@ -1,4 +1,4 @@ -import IEventInit from '../IEventInit.js'; +import type IEventInit from '../IEventInit.js'; export default interface IErrorEventInit extends IEventInit { message?: string; filename?: string; diff --git a/packages/happy-dom/src/event/events/IFocusEventInit.ts b/packages/happy-dom/src/event/events/IFocusEventInit.ts index cc29ef4d9..649656d51 100644 --- a/packages/happy-dom/src/event/events/IFocusEventInit.ts +++ b/packages/happy-dom/src/event/events/IFocusEventInit.ts @@ -1,5 +1,5 @@ -import EventTarget from '../EventTarget.js'; -import IUIEventInit from '../IUIEventInit.js'; +import type EventTarget from '../EventTarget.js'; +import type IUIEventInit from '../IUIEventInit.js'; export default interface IFocusEventInit extends IUIEventInit { relatedTarget?: EventTarget | null; diff --git a/packages/happy-dom/src/event/events/IHashChangeEventInit.ts b/packages/happy-dom/src/event/events/IHashChangeEventInit.ts index 37e86a59a..84b814e4a 100644 --- a/packages/happy-dom/src/event/events/IHashChangeEventInit.ts +++ b/packages/happy-dom/src/event/events/IHashChangeEventInit.ts @@ -1,4 +1,4 @@ -import IEventInit from '../IEventInit.js'; +import type IEventInit from '../IEventInit.js'; export default interface IHashChangeEventInit extends IEventInit { newURL?: string; diff --git a/packages/happy-dom/src/event/events/IInputEventInit.ts b/packages/happy-dom/src/event/events/IInputEventInit.ts index f7d83a95c..900309ae2 100644 --- a/packages/happy-dom/src/event/events/IInputEventInit.ts +++ b/packages/happy-dom/src/event/events/IInputEventInit.ts @@ -1,5 +1,5 @@ -import DataTransfer from '../DataTransfer.js'; -import IUIEventInit from '../IUIEventInit.js'; +import type DataTransfer from '../DataTransfer.js'; +import type IUIEventInit from '../IUIEventInit.js'; export default interface IInputEventInit extends IUIEventInit { inputType?: string; diff --git a/packages/happy-dom/src/event/events/IKeyboardEventInit.ts b/packages/happy-dom/src/event/events/IKeyboardEventInit.ts index 87a09ebad..1027c1f4b 100644 --- a/packages/happy-dom/src/event/events/IKeyboardEventInit.ts +++ b/packages/happy-dom/src/event/events/IKeyboardEventInit.ts @@ -1,4 +1,4 @@ -import IUIEventInit from '../IUIEventInit.js'; +import type IUIEventInit from '../IUIEventInit.js'; export default interface IKeyboardEventInit extends IUIEventInit { key?: string; diff --git a/packages/happy-dom/src/event/events/IMediaQueryListEventInit.ts b/packages/happy-dom/src/event/events/IMediaQueryListEventInit.ts index 84b8357c6..d42d2a2c9 100644 --- a/packages/happy-dom/src/event/events/IMediaQueryListEventInit.ts +++ b/packages/happy-dom/src/event/events/IMediaQueryListEventInit.ts @@ -1,5 +1,5 @@ -import MediaStreamTrack from '../../nodes/html-media-element/MediaStreamTrack.js'; -import IEventInit from '../IEventInit.js'; +import type MediaStreamTrack from '../../nodes/html-media-element/MediaStreamTrack.js'; +import type IEventInit from '../IEventInit.js'; export default interface IMediaQueryListEventInit extends IEventInit { track?: MediaStreamTrack; diff --git a/packages/happy-dom/src/event/events/IMediaQueryListInit.ts b/packages/happy-dom/src/event/events/IMediaQueryListInit.ts index 2746b5968..a86070a4c 100644 --- a/packages/happy-dom/src/event/events/IMediaQueryListInit.ts +++ b/packages/happy-dom/src/event/events/IMediaQueryListInit.ts @@ -1,4 +1,4 @@ -import IEventInit from '../IEventInit.js'; +import type IEventInit from '../IEventInit.js'; export default interface IMediaQueryListInit extends IEventInit { matches?: boolean; diff --git a/packages/happy-dom/src/event/events/IMessageEventInit.ts b/packages/happy-dom/src/event/events/IMessageEventInit.ts index 5a2ce3986..3dc8345e7 100644 --- a/packages/happy-dom/src/event/events/IMessageEventInit.ts +++ b/packages/happy-dom/src/event/events/IMessageEventInit.ts @@ -1,6 +1,6 @@ -import IEventInit from '../IEventInit.js'; -import BrowserWindow from '../../window/BrowserWindow.js'; -import MessagePort from '../MessagePort.js'; +import type IEventInit from '../IEventInit.js'; +import type BrowserWindow from '../../window/BrowserWindow.js'; +import type MessagePort from '../MessagePort.js'; export default interface IMessageEventInit extends IEventInit { data?: unknown | null; diff --git a/packages/happy-dom/src/event/events/IMouseEventInit.ts b/packages/happy-dom/src/event/events/IMouseEventInit.ts index 10424697d..448a7f02d 100644 --- a/packages/happy-dom/src/event/events/IMouseEventInit.ts +++ b/packages/happy-dom/src/event/events/IMouseEventInit.ts @@ -1,5 +1,5 @@ -import EventTarget from '../EventTarget.js'; -import IUIEventInit from '../IUIEventInit.js'; +import type EventTarget from '../EventTarget.js'; +import type IUIEventInit from '../IUIEventInit.js'; export default interface IMouseEventInit extends IUIEventInit { screenX?: number; diff --git a/packages/happy-dom/src/event/events/IPointerEventInit.ts b/packages/happy-dom/src/event/events/IPointerEventInit.ts index 145da4f19..3a5c180d5 100644 --- a/packages/happy-dom/src/event/events/IPointerEventInit.ts +++ b/packages/happy-dom/src/event/events/IPointerEventInit.ts @@ -1,5 +1,5 @@ -import IMouseEventInit from './IMouseEventInit.js'; -import PointerEvent from './PointerEvent.js'; +import type IMouseEventInit from './IMouseEventInit.js'; +import type PointerEvent from './PointerEvent.js'; export default interface IPointerEventInit extends IMouseEventInit { pointerId?: number; diff --git a/packages/happy-dom/src/event/events/IPopStateEventInit.ts b/packages/happy-dom/src/event/events/IPopStateEventInit.ts index c511618a3..2761c5994 100644 --- a/packages/happy-dom/src/event/events/IPopStateEventInit.ts +++ b/packages/happy-dom/src/event/events/IPopStateEventInit.ts @@ -1,4 +1,4 @@ -import IEventInit from '../IEventInit.js'; +import type IEventInit from '../IEventInit.js'; export default interface IPopStateEventInit extends IEventInit { state?: object | null; diff --git a/packages/happy-dom/src/event/events/IProgressEventInit.ts b/packages/happy-dom/src/event/events/IProgressEventInit.ts index 8969056fa..ac4cb7203 100644 --- a/packages/happy-dom/src/event/events/IProgressEventInit.ts +++ b/packages/happy-dom/src/event/events/IProgressEventInit.ts @@ -1,4 +1,4 @@ -import IEventInit from '../IEventInit.js'; +import type IEventInit from '../IEventInit.js'; export default interface IProgressEventInit extends IEventInit { lengthComputable?: boolean; diff --git a/packages/happy-dom/src/event/events/IStorageEventInit.ts b/packages/happy-dom/src/event/events/IStorageEventInit.ts index f0228cc94..7700e66b7 100644 --- a/packages/happy-dom/src/event/events/IStorageEventInit.ts +++ b/packages/happy-dom/src/event/events/IStorageEventInit.ts @@ -1,5 +1,5 @@ -import IEventInit from '../IEventInit.js'; -import Storage from '../../storage/Storage.js'; +import type IEventInit from '../IEventInit.js'; +import type Storage from '../../storage/Storage.js'; export default interface IStorageEventInit extends IEventInit { key?: string; diff --git a/packages/happy-dom/src/event/events/ISubmitEventInit.ts b/packages/happy-dom/src/event/events/ISubmitEventInit.ts index a489bbf1a..cd6473009 100644 --- a/packages/happy-dom/src/event/events/ISubmitEventInit.ts +++ b/packages/happy-dom/src/event/events/ISubmitEventInit.ts @@ -1,5 +1,5 @@ -import HTMLElement from '../../nodes/html-element/HTMLElement.js'; -import IEventInit from '../IEventInit.js'; +import type HTMLElement from '../../nodes/html-element/HTMLElement.js'; +import type IEventInit from '../IEventInit.js'; export default interface ISubmitEventInit extends IEventInit { submitter?: HTMLElement; diff --git a/packages/happy-dom/src/event/events/ITouchEventInit.ts b/packages/happy-dom/src/event/events/ITouchEventInit.ts index 63b0085c3..3b49f764b 100644 --- a/packages/happy-dom/src/event/events/ITouchEventInit.ts +++ b/packages/happy-dom/src/event/events/ITouchEventInit.ts @@ -1,5 +1,5 @@ -import IUIEventInit from '../IUIEventInit.js'; -import Touch from '../Touch.js'; +import type IUIEventInit from '../IUIEventInit.js'; +import type Touch from '../Touch.js'; export default interface ITouchEventInit extends IUIEventInit { touches?: Touch[] | null; diff --git a/packages/happy-dom/src/event/events/IWheelEventInit.ts b/packages/happy-dom/src/event/events/IWheelEventInit.ts index 25c6d0584..1686b5dba 100644 --- a/packages/happy-dom/src/event/events/IWheelEventInit.ts +++ b/packages/happy-dom/src/event/events/IWheelEventInit.ts @@ -1,4 +1,4 @@ -import IUIEventInit from '../IUIEventInit.js'; +import type IUIEventInit from '../IUIEventInit.js'; export default interface IWheelEventInit extends IUIEventInit { deltaX?: number; diff --git a/packages/happy-dom/src/event/events/InputEvent.ts b/packages/happy-dom/src/event/events/InputEvent.ts index c25b12dd0..e5cdb9dff 100644 --- a/packages/happy-dom/src/event/events/InputEvent.ts +++ b/packages/happy-dom/src/event/events/InputEvent.ts @@ -1,6 +1,6 @@ -import DataTransfer from '../DataTransfer.js'; +import type DataTransfer from '../DataTransfer.js'; import UIEvent from '../UIEvent.js'; -import IInputEventInit from './IInputEventInit.js'; +import type IInputEventInit from './IInputEventInit.js'; /** * diff --git a/packages/happy-dom/src/event/events/KeyboardEvent.ts b/packages/happy-dom/src/event/events/KeyboardEvent.ts index a0c1e188a..1cdd3e72d 100644 --- a/packages/happy-dom/src/event/events/KeyboardEvent.ts +++ b/packages/happy-dom/src/event/events/KeyboardEvent.ts @@ -1,5 +1,5 @@ import UIEvent from '../UIEvent.js'; -import IKeyboardEventInit from './IKeyboardEventInit.js'; +import type IKeyboardEventInit from './IKeyboardEventInit.js'; /** * diff --git a/packages/happy-dom/src/event/events/MediaQueryListEvent.ts b/packages/happy-dom/src/event/events/MediaQueryListEvent.ts index 9d9f9e9eb..27c0cc5f8 100644 --- a/packages/happy-dom/src/event/events/MediaQueryListEvent.ts +++ b/packages/happy-dom/src/event/events/MediaQueryListEvent.ts @@ -1,5 +1,5 @@ import Event from '../Event.js'; -import IMediaQueryListInit from './IMediaQueryListInit.js'; +import type IMediaQueryListInit from './IMediaQueryListInit.js'; /** * diff --git a/packages/happy-dom/src/event/events/MediaStreamTrackEvent.ts b/packages/happy-dom/src/event/events/MediaStreamTrackEvent.ts index 55a46280a..e92355965 100644 --- a/packages/happy-dom/src/event/events/MediaStreamTrackEvent.ts +++ b/packages/happy-dom/src/event/events/MediaStreamTrackEvent.ts @@ -1,6 +1,6 @@ -import MediaStreamTrack from '../../nodes/html-media-element/MediaStreamTrack.js'; +import type MediaStreamTrack from '../../nodes/html-media-element/MediaStreamTrack.js'; import Event from '../Event.js'; -import IMediaQueryListEventInit from './IMediaQueryListEventInit.js'; +import type IMediaQueryListEventInit from './IMediaQueryListEventInit.js'; /** * Media Stream Track Event. diff --git a/packages/happy-dom/src/event/events/MessageEvent.ts b/packages/happy-dom/src/event/events/MessageEvent.ts index 1bda0a137..9dc9317d7 100644 --- a/packages/happy-dom/src/event/events/MessageEvent.ts +++ b/packages/happy-dom/src/event/events/MessageEvent.ts @@ -1,7 +1,7 @@ -import BrowserWindow from '../../window/BrowserWindow.js'; +import type BrowserWindow from '../../window/BrowserWindow.js'; import Event from '../Event.js'; -import MessagePort from '../MessagePort.js'; -import IMessageEventInit from './IMessageEventInit.js'; +import type MessagePort from '../MessagePort.js'; +import type IMessageEventInit from './IMessageEventInit.js'; /** * Message event. diff --git a/packages/happy-dom/src/event/events/MouseEvent.ts b/packages/happy-dom/src/event/events/MouseEvent.ts index 48726b815..c31193ef3 100644 --- a/packages/happy-dom/src/event/events/MouseEvent.ts +++ b/packages/happy-dom/src/event/events/MouseEvent.ts @@ -1,6 +1,6 @@ import UIEvent from '../UIEvent.js'; -import EventTarget from '../EventTarget.js'; -import IMouseEventInit from './IMouseEventInit.js'; +import type EventTarget from '../EventTarget.js'; +import type IMouseEventInit from './IMouseEventInit.js'; /** * diff --git a/packages/happy-dom/src/event/events/PointerEvent.ts b/packages/happy-dom/src/event/events/PointerEvent.ts index 32aa9d805..a81eedbf4 100644 --- a/packages/happy-dom/src/event/events/PointerEvent.ts +++ b/packages/happy-dom/src/event/events/PointerEvent.ts @@ -1,5 +1,5 @@ import MouseEvent from './MouseEvent.js'; -import IPointerEventInit from './IPointerEventInit.js'; +import type IPointerEventInit from './IPointerEventInit.js'; /** * diff --git a/packages/happy-dom/src/event/events/PopStateEvent.ts b/packages/happy-dom/src/event/events/PopStateEvent.ts index a7958d3dc..a57bb2e24 100644 --- a/packages/happy-dom/src/event/events/PopStateEvent.ts +++ b/packages/happy-dom/src/event/events/PopStateEvent.ts @@ -1,5 +1,5 @@ import Event from '../Event.js'; -import IPopStateEventInit from './IPopStateEventInit.js'; +import type IPopStateEventInit from './IPopStateEventInit.js'; /** * diff --git a/packages/happy-dom/src/event/events/ProgressEvent.ts b/packages/happy-dom/src/event/events/ProgressEvent.ts index 1ed8dd6da..03ae75e88 100644 --- a/packages/happy-dom/src/event/events/ProgressEvent.ts +++ b/packages/happy-dom/src/event/events/ProgressEvent.ts @@ -1,5 +1,5 @@ import Event from '../Event.js'; -import IProgressEventInit from './IProgressEventInit.js'; +import type IProgressEventInit from './IProgressEventInit.js'; /** * diff --git a/packages/happy-dom/src/event/events/StorageEvent.ts b/packages/happy-dom/src/event/events/StorageEvent.ts index 24ea5498c..5bcc7df91 100644 --- a/packages/happy-dom/src/event/events/StorageEvent.ts +++ b/packages/happy-dom/src/event/events/StorageEvent.ts @@ -1,6 +1,6 @@ import Event from '../Event.js'; -import IStorageEventInit from './IStorageEventInit.js'; -import Storage from '../../storage/Storage.js'; +import type IStorageEventInit from './IStorageEventInit.js'; +import type Storage from '../../storage/Storage.js'; /** * diff --git a/packages/happy-dom/src/event/events/SubmitEvent.ts b/packages/happy-dom/src/event/events/SubmitEvent.ts index 2217d618c..bd33a9358 100644 --- a/packages/happy-dom/src/event/events/SubmitEvent.ts +++ b/packages/happy-dom/src/event/events/SubmitEvent.ts @@ -1,6 +1,6 @@ import Event from '../Event.js'; -import ISubmitEventInit from './ISubmitEventInit.js'; -import HTMLElement from '../../nodes/html-element/HTMLElement.js'; +import type ISubmitEventInit from './ISubmitEventInit.js'; +import type HTMLElement from '../../nodes/html-element/HTMLElement.js'; /** * An event triggered by form submit buttons. diff --git a/packages/happy-dom/src/event/events/TouchEvent.ts b/packages/happy-dom/src/event/events/TouchEvent.ts index 8a1bcceb4..ff9c15d56 100644 --- a/packages/happy-dom/src/event/events/TouchEvent.ts +++ b/packages/happy-dom/src/event/events/TouchEvent.ts @@ -1,6 +1,6 @@ -import ITouchEventInit from './ITouchEventInit.js'; +import type ITouchEventInit from './ITouchEventInit.js'; import UIEvent from '../UIEvent.js'; -import Touch from '../Touch.js'; +import type Touch from '../Touch.js'; /** * diff --git a/packages/happy-dom/src/event/events/WheelEvent.ts b/packages/happy-dom/src/event/events/WheelEvent.ts index 097d06007..58e5038d4 100644 --- a/packages/happy-dom/src/event/events/WheelEvent.ts +++ b/packages/happy-dom/src/event/events/WheelEvent.ts @@ -1,5 +1,5 @@ import UIEvent from '../UIEvent.js'; -import IWheelEventInit from './IWheelEventInit.js'; +import type IWheelEventInit from './IWheelEventInit.js'; /** * diff --git a/packages/happy-dom/src/fetch/AbortController.ts b/packages/happy-dom/src/fetch/AbortController.ts index 7e9dc10e2..103be875d 100644 --- a/packages/happy-dom/src/fetch/AbortController.ts +++ b/packages/happy-dom/src/fetch/AbortController.ts @@ -1,6 +1,6 @@ -import AbortSignal from './AbortSignal.js'; +import type AbortSignal from './AbortSignal.js'; import * as PropertySymbol from '../PropertySymbol.js'; -import BrowserWindow from '../window/BrowserWindow.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; /** * AbortController. diff --git a/packages/happy-dom/src/fetch/AbortSignal.ts b/packages/happy-dom/src/fetch/AbortSignal.ts index 7dba882c6..865c20ea7 100644 --- a/packages/happy-dom/src/fetch/AbortSignal.ts +++ b/packages/happy-dom/src/fetch/AbortSignal.ts @@ -2,7 +2,7 @@ import EventTarget from '../event/EventTarget.js'; import * as PropertySymbol from '../PropertySymbol.js'; import Event from '../event/Event.js'; import DOMExceptionNameEnum from '../exception/DOMExceptionNameEnum.js'; -import BrowserWindow from '../window/BrowserWindow.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; /** * AbortSignal. diff --git a/packages/happy-dom/src/fetch/Fetch.ts b/packages/happy-dom/src/fetch/Fetch.ts index cd8e40b03..77cd62170 100644 --- a/packages/happy-dom/src/fetch/Fetch.ts +++ b/packages/happy-dom/src/fetch/Fetch.ts @@ -1,25 +1,26 @@ -import IRequestInit from './types/IRequestInit.js'; +import type IRequestInit from './types/IRequestInit.js'; import * as PropertySymbol from '../PropertySymbol.js'; -import IRequestInfo from './types/IRequestInfo.js'; -import Headers from './Headers.js'; +import type { TRequestInfo } from './types/TRequestInfo.js'; +import type Headers from './Headers.js'; import FetchRequestReferrerUtility from './utilities/FetchRequestReferrerUtility.js'; import DOMExceptionNameEnum from '../exception/DOMExceptionNameEnum.js'; -import HTTP, { IncomingMessage } from 'http'; +import type { IncomingMessage } from 'http'; +import HTTP from 'http'; import HTTPS from 'https'; import Zlib from 'zlib'; import { URL } from 'url'; import FS from 'fs'; import Path from 'path'; -import { Socket } from 'net'; +import type { Socket } from 'net'; import Stream from 'stream'; import DataURIParser from './data-uri/DataURIParser.js'; import FetchCORSUtility from './utilities/FetchCORSUtility.js'; import Request from './Request.js'; import Response from './Response.js'; -import Event from '../event/Event.js'; -import AbortSignal from './AbortSignal.js'; -import IBrowserFrame from '../browser/types/IBrowserFrame.js'; -import BrowserWindow from '../window/BrowserWindow.js'; +import type Event from '../event/Event.js'; +import type AbortSignal from './AbortSignal.js'; +import type IBrowserFrame from '../browser/types/IBrowserFrame.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; import CachedResponseStateEnum from './cache/response/CachedResponseStateEnum.js'; import FetchRequestHeaderUtility from './utilities/FetchRequestHeaderUtility.js'; import FetchRequestValidationUtility from './utilities/FetchRequestValidationUtility.js'; @@ -28,10 +29,10 @@ import FetchResponseHeaderUtility from './utilities/FetchResponseHeaderUtility.j import FetchHTTPSCertificate from './certificate/FetchHTTPSCertificate.js'; import { Buffer } from 'buffer'; import FetchBodyUtility from './utilities/FetchBodyUtility.js'; -import IFetchInterceptor from './types/IFetchInterceptor.js'; +import type IFetchInterceptor from './types/IFetchInterceptor.js'; import VirtualServerUtility from './utilities/VirtualServerUtility.js'; import PreloadUtility from './preload/PreloadUtility.js'; -import IFetchRequestHeaders from './types/IFetchRequestHeaders.js'; +import type IFetchRequestHeaders from './types/IFetchRequestHeaders.js'; const LAST_CHUNK = Buffer.from('0\r\n\r\n'); @@ -85,7 +86,7 @@ export default class Fetch { constructor(options: { browserFrame: IBrowserFrame; window: BrowserWindow; - url: IRequestInfo; + url: TRequestInfo; init?: IRequestInit; redirectCount?: number; contentType?: string | null; @@ -1016,7 +1017,7 @@ export default class Fetch { this.finalizeRequest(); this.reject!( new this.#window.DOMException( - `Redirect option '${this.request.redirect}' is not a valid value of IRequestRedirect` + `Redirect option '${this.request.redirect}' is not a valid value of TRequestRedirect` ) ); return true; diff --git a/packages/happy-dom/src/fetch/Headers.ts b/packages/happy-dom/src/fetch/Headers.ts index 22dcefd99..a8cd29379 100644 --- a/packages/happy-dom/src/fetch/Headers.ts +++ b/packages/happy-dom/src/fetch/Headers.ts @@ -1,8 +1,8 @@ import DOMException from '../exception/DOMException.js'; import * as PropertySymbol from '../PropertySymbol.js'; import DOMExceptionNameEnum from '../exception/DOMExceptionNameEnum.js'; -import IHeadersInit from './types/IHeadersInit.js'; -import BrowserWindow from '../window/BrowserWindow.js'; +import type { THeadersInit } from './types/THeadersInit.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; /** * Fetch headers. @@ -20,7 +20,7 @@ export default class Headers { * * @param init Headers init. */ - constructor(init?: IHeadersInit | null) { + constructor(init?: THeadersInit | null) { if (init) { if (init instanceof Headers) { this[PropertySymbol.entries] = JSON.parse(JSON.stringify(init[PropertySymbol.entries])); diff --git a/packages/happy-dom/src/fetch/Request.ts b/packages/happy-dom/src/fetch/Request.ts index c86959145..d4822877b 100644 --- a/packages/happy-dom/src/fetch/Request.ts +++ b/packages/happy-dom/src/fetch/Request.ts @@ -1,24 +1,24 @@ import * as PropertySymbol from '../PropertySymbol.js'; -import IRequestInit from './types/IRequestInit.js'; +import type IRequestInit from './types/IRequestInit.js'; import { URL } from 'url'; import DOMExceptionNameEnum from '../exception/DOMExceptionNameEnum.js'; -import IRequestInfo from './types/IRequestInfo.js'; -import Headers from './Headers.js'; +import type { TRequestInfo } from './types/TRequestInfo.js'; +import type Headers from './Headers.js'; import FetchBodyUtility from './utilities/FetchBodyUtility.js'; -import AbortSignal from './AbortSignal.js'; -import { ReadableStream } from 'stream/web'; +import type AbortSignal from './AbortSignal.js'; +import type { ReadableStream } from 'stream/web'; import Blob from '../file/Blob.js'; import FetchRequestValidationUtility from './utilities/FetchRequestValidationUtility.js'; -import IRequestReferrerPolicy from './types/IRequestReferrerPolicy.js'; -import IRequestRedirect from './types/IRequestRedirect.js'; +import type { TRequestReferrerPolicy } from './types/TRequestReferrerPolicy.js'; +import type { TRequestRedirect } from './types/TRequestRedirect.js'; import FetchRequestReferrerUtility from './utilities/FetchRequestReferrerUtility.js'; import FetchRequestHeaderUtility from './utilities/FetchRequestHeaderUtility.js'; -import IRequestCredentials from './types/IRequestCredentials.js'; -import FormData from '../form-data/FormData.js'; +import type { TRequestCredentials } from './types/TRequestCredentials.js'; +import type FormData from '../form-data/FormData.js'; import MultipartFormDataParser from './multipart/MultipartFormDataParser.js'; -import BrowserWindow from '../window/BrowserWindow.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; import WindowBrowserContext from '../window/WindowBrowserContext.js'; -import IRequestMode from './types/IRequestMode.js'; +import type { TRequestMode } from './types/TRequestMode.js'; /** * Fetch request. @@ -35,13 +35,13 @@ export default class Request implements Request { // Public properties public [PropertySymbol.method]: string; public [PropertySymbol.body]: ReadableStream | null; - public [PropertySymbol.mode]: IRequestMode = 'cors'; + public [PropertySymbol.mode]: TRequestMode = 'cors'; public [PropertySymbol.headers]: Headers; - public [PropertySymbol.redirect]: IRequestRedirect; - public [PropertySymbol.referrerPolicy]: IRequestReferrerPolicy; + public [PropertySymbol.redirect]: TRequestRedirect; + public [PropertySymbol.referrerPolicy]: TRequestReferrerPolicy; public [PropertySymbol.signal]: AbortSignal; public [PropertySymbol.bodyUsed]: boolean = false; - public [PropertySymbol.credentials]: IRequestCredentials; + public [PropertySymbol.credentials]: TRequestCredentials; // Internal properties public [PropertySymbol.aborted]: boolean = false; @@ -58,7 +58,7 @@ export default class Request implements Request { * @param input Input. * @param [init] Init. */ - constructor(input: IRequestInfo, init?: IRequestInit) { + constructor(input: TRequestInfo, init?: IRequestInit) { const window = this[PropertySymbol.window]; if (!window) { @@ -69,7 +69,7 @@ export default class Request implements Request { if (typeof input !== `string` && !input) { throw new window.TypeError( - `Failed to contruct 'Request': 1 argument required, only 0 present.` + `Failed to construct 'Request': 1 argument required, only 0 present.` ); } @@ -130,7 +130,7 @@ export default class Request implements Request { } this[PropertySymbol.redirect] = init?.redirect || (input).redirect || 'follow'; - this[PropertySymbol.referrerPolicy] = ( + this[PropertySymbol.referrerPolicy] = ( (init?.referrerPolicy || (input).referrerPolicy || '').toLowerCase() ); this[PropertySymbol.signal] = @@ -195,7 +195,7 @@ export default class Request implements Request { * * @returns Mode. */ - public get mode(): IRequestMode { + public get mode(): TRequestMode { return this[PropertySymbol.mode]; } @@ -213,7 +213,7 @@ export default class Request implements Request { * * @returns Redirect. */ - public get redirect(): IRequestRedirect { + public get redirect(): TRequestRedirect { return this[PropertySymbol.redirect]; } @@ -222,7 +222,7 @@ export default class Request implements Request { * * @returns Referrer policy. */ - public get referrerPolicy(): IRequestReferrerPolicy { + public get referrerPolicy(): TRequestReferrerPolicy { return this[PropertySymbol.referrerPolicy]; } @@ -249,7 +249,7 @@ export default class Request implements Request { * * @returns Credentials. */ - public get credentials(): IRequestCredentials { + public get credentials(): TRequestCredentials { return this[PropertySymbol.credentials]; } diff --git a/packages/happy-dom/src/fetch/ResourceFetch.ts b/packages/happy-dom/src/fetch/ResourceFetch.ts index 7bf43a0b6..584988765 100644 --- a/packages/happy-dom/src/fetch/ResourceFetch.ts +++ b/packages/happy-dom/src/fetch/ResourceFetch.ts @@ -1,13 +1,13 @@ -import BrowserWindow from '../window/BrowserWindow.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; import URL from '../url/URL.js'; import Fetch from './Fetch.js'; import SyncFetch from './SyncFetch.js'; -import IRequestCredentials from './types/IRequestCredentials.js'; +import type { TRequestCredentials } from './types/TRequestCredentials.js'; import WindowBrowserContext from '../window/WindowBrowserContext.js'; import PreloadUtility from './preload/PreloadUtility.js'; import * as PropertySymbol from '../PropertySymbol.js'; -import IRequestReferrerPolicy from './types/IRequestReferrerPolicy.js'; -import IResourceFetchResponse from './types/IResourceFetchResponse.js'; +import type { TRequestReferrerPolicy } from './types/TRequestReferrerPolicy.js'; +import type IResourceFetchResponse from './types/IResourceFetchResponse.js'; /** * Helper class for performing fetch of resources. @@ -37,7 +37,7 @@ export default class ResourceFetch { public async fetch( url: string | URL, destination: 'script' | 'style' | 'module', - options?: { credentials?: IRequestCredentials; referrerPolicy?: IRequestReferrerPolicy } + options?: { credentials?: TRequestCredentials; referrerPolicy?: TRequestReferrerPolicy } ): Promise { const browserFrame = new WindowBrowserContext(this.window).getBrowserFrame(); @@ -119,7 +119,7 @@ export default class ResourceFetch { public fetchSync( url: string, destination: 'script' | 'style' | 'module', - options?: { credentials?: IRequestCredentials; referrerPolicy?: IRequestReferrerPolicy } + options?: { credentials?: TRequestCredentials; referrerPolicy?: TRequestReferrerPolicy } ): IResourceFetchResponse { const browserFrame = new WindowBrowserContext(this.window).getBrowserFrame(); diff --git a/packages/happy-dom/src/fetch/Response.ts b/packages/happy-dom/src/fetch/Response.ts index f5297645e..2b1b3f21b 100644 --- a/packages/happy-dom/src/fetch/Response.ts +++ b/packages/happy-dom/src/fetch/Response.ts @@ -1,17 +1,17 @@ import * as PropertySymbol from '../PropertySymbol.js'; import Blob from '../file/Blob.js'; -import IResponseInit from './types/IResponseInit.js'; -import IResponseBody from './types/IResponseBody.js'; -import Headers from './Headers.js'; +import type IResponseInit from './types/IResponseInit.js'; +import type { TResponseBody } from './types/TResponseBody.js'; +import type Headers from './Headers.js'; import { URLSearchParams } from 'url'; import URL from '../url/URL.js'; -import { ReadableStream } from 'stream/web'; -import FormData from '../form-data/FormData.js'; +import type { ReadableStream } from 'stream/web'; +import type FormData from '../form-data/FormData.js'; import FetchBodyUtility from './utilities/FetchBodyUtility.js'; import DOMExceptionNameEnum from '../exception/DOMExceptionNameEnum.js'; import MultipartFormDataParser from './multipart/MultipartFormDataParser.js'; -import BrowserWindow from '../window/BrowserWindow.js'; -import ICachedResponse from './cache/response/ICachedResponse.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; +import type ICachedResponse from './cache/response/ICachedResponse.js'; import { Buffer } from 'buffer'; import WindowBrowserContext from '../window/WindowBrowserContext.js'; @@ -53,7 +53,7 @@ export default class Response implements Response { * @param body Body. * @param [init] Init. */ - constructor(body?: IResponseBody, init?: IResponseInit) { + constructor(body?: TResponseBody, init?: IResponseInit) { if (!this[PropertySymbol.window]) { throw new TypeError( `Failed to construct '${this.constructor.name}': '${this.constructor.name}' was constructed outside a Window context.` diff --git a/packages/happy-dom/src/fetch/SyncFetch.ts b/packages/happy-dom/src/fetch/SyncFetch.ts index b8deed8ee..a946d6f22 100644 --- a/packages/happy-dom/src/fetch/SyncFetch.ts +++ b/packages/happy-dom/src/fetch/SyncFetch.ts @@ -1,16 +1,16 @@ -import IRequestInit from './types/IRequestInit.js'; +import type IRequestInit from './types/IRequestInit.js'; import * as PropertySymbol from '../PropertySymbol.js'; -import IRequestInfo from './types/IRequestInfo.js'; +import type { TRequestInfo } from './types/TRequestInfo.js'; import DOMExceptionNameEnum from '../exception/DOMExceptionNameEnum.js'; import URL from '../url/URL.js'; import FS from 'fs'; import Path from 'path'; -import Request from './Request.js'; -import IBrowserFrame from '../browser/types/IBrowserFrame.js'; -import BrowserWindow from '../window/BrowserWindow.js'; +import type Request from './Request.js'; +import type IBrowserFrame from '../browser/types/IBrowserFrame.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; import ChildProcess from 'child_process'; -import ISyncResponse from './types/ISyncResponse.js'; -import Headers from './Headers.js'; +import type ISyncResponse from './types/ISyncResponse.js'; +import type Headers from './Headers.js'; import CachedResponseStateEnum from './cache/response/CachedResponseStateEnum.js'; import FetchRequestReferrerUtility from './utilities/FetchRequestReferrerUtility.js'; import FetchRequestValidationUtility from './utilities/FetchRequestValidationUtility.js'; @@ -22,9 +22,9 @@ import Zlib from 'zlib'; import FetchResponseRedirectUtility from './utilities/FetchResponseRedirectUtility.js'; import FetchCORSUtility from './utilities/FetchCORSUtility.js'; import Fetch from './Fetch.js'; -import IFetchInterceptor from './types/IFetchInterceptor.js'; +import type IFetchInterceptor from './types/IFetchInterceptor.js'; import VirtualServerUtility from './utilities/VirtualServerUtility.js'; -import IFetchRequestHeaders from './types/IFetchRequestHeaders.js'; +import type IFetchRequestHeaders from './types/IFetchRequestHeaders.js'; interface ISyncHTTPResponse { error: string; @@ -67,7 +67,7 @@ export default class SyncFetch { constructor(options: { browserFrame: IBrowserFrame; window: BrowserWindow; - url: IRequestInfo; + url: TRequestInfo; init?: IRequestInit; redirectCount?: number; contentType?: string | null; @@ -710,7 +710,7 @@ export default class SyncFetch { return fetch.send(); default: throw new this.#window.DOMException( - `Redirect option '${this.request.redirect}' is not a valid value of IRequestRedirect` + `Redirect option '${this.request.redirect}' is not a valid value of TRequestRedirect` ); } } diff --git a/packages/happy-dom/src/fetch/cache/preflight/ICacheablePreflightRequest.ts b/packages/happy-dom/src/fetch/cache/preflight/ICacheablePreflightRequest.ts index e61e53da8..3ba80741a 100644 --- a/packages/happy-dom/src/fetch/cache/preflight/ICacheablePreflightRequest.ts +++ b/packages/happy-dom/src/fetch/cache/preflight/ICacheablePreflightRequest.ts @@ -1,4 +1,4 @@ -import Headers from '../../Headers.js'; +import type Headers from '../../Headers.js'; export default interface ICacheablePreflightRequest { url: string; diff --git a/packages/happy-dom/src/fetch/cache/preflight/ICacheablePreflightResponse.ts b/packages/happy-dom/src/fetch/cache/preflight/ICacheablePreflightResponse.ts index 544589285..ddf456ae6 100644 --- a/packages/happy-dom/src/fetch/cache/preflight/ICacheablePreflightResponse.ts +++ b/packages/happy-dom/src/fetch/cache/preflight/ICacheablePreflightResponse.ts @@ -1,4 +1,4 @@ -import Headers from '../../Headers.js'; +import type Headers from '../../Headers.js'; export default interface ICacheablePreflightResponse { status: number; diff --git a/packages/happy-dom/src/fetch/cache/preflight/IPreflightResponseCache.ts b/packages/happy-dom/src/fetch/cache/preflight/IPreflightResponseCache.ts index 69b616d68..12e1ae0b6 100644 --- a/packages/happy-dom/src/fetch/cache/preflight/IPreflightResponseCache.ts +++ b/packages/happy-dom/src/fetch/cache/preflight/IPreflightResponseCache.ts @@ -1,6 +1,6 @@ -import ICachedPreflightResponse from './ICachedPreflightResponse.js'; -import ICacheablePreflightRequest from './ICacheablePreflightRequest.js'; -import ICacheablePreflightResponse from './ICacheablePreflightResponse.js'; +import type ICachedPreflightResponse from './ICachedPreflightResponse.js'; +import type ICacheablePreflightRequest from './ICacheablePreflightRequest.js'; +import type ICacheablePreflightResponse from './ICacheablePreflightResponse.js'; /** * Fetch response cache. diff --git a/packages/happy-dom/src/fetch/cache/preflight/PreflightResponseCache.ts b/packages/happy-dom/src/fetch/cache/preflight/PreflightResponseCache.ts index 0487d3b0d..4c21f1cc5 100644 --- a/packages/happy-dom/src/fetch/cache/preflight/PreflightResponseCache.ts +++ b/packages/happy-dom/src/fetch/cache/preflight/PreflightResponseCache.ts @@ -1,7 +1,7 @@ -import IPreflightResponseCache from './IPreflightResponseCache.js'; -import ICacheablePreflightRequest from './ICacheablePreflightRequest.js'; -import ICachedPreflightResponse from './ICachedPreflightResponse.js'; -import ICacheablePreflightResponse from './ICacheablePreflightResponse.js'; +import type IPreflightResponseCache from './IPreflightResponseCache.js'; +import type ICacheablePreflightRequest from './ICacheablePreflightRequest.js'; +import type ICachedPreflightResponse from './ICachedPreflightResponse.js'; +import type ICacheablePreflightResponse from './ICacheablePreflightResponse.js'; /** * Fetch preflight response cache. diff --git a/packages/happy-dom/src/fetch/cache/response/ICacheableRequest.ts b/packages/happy-dom/src/fetch/cache/response/ICacheableRequest.ts index 141444e5c..0fb2da781 100644 --- a/packages/happy-dom/src/fetch/cache/response/ICacheableRequest.ts +++ b/packages/happy-dom/src/fetch/cache/response/ICacheableRequest.ts @@ -1,4 +1,4 @@ -import Headers from '../../Headers.js'; +import type Headers from '../../Headers.js'; export default interface ICacheableRequest { url: string; diff --git a/packages/happy-dom/src/fetch/cache/response/ICacheableResponse.ts b/packages/happy-dom/src/fetch/cache/response/ICacheableResponse.ts index 1aea53506..62e6eadf0 100644 --- a/packages/happy-dom/src/fetch/cache/response/ICacheableResponse.ts +++ b/packages/happy-dom/src/fetch/cache/response/ICacheableResponse.ts @@ -1,4 +1,4 @@ -import Headers from '../../Headers.js'; +import type Headers from '../../Headers.js'; export default interface ICacheableResponse { status: number; diff --git a/packages/happy-dom/src/fetch/cache/response/ICachedResponse.ts b/packages/happy-dom/src/fetch/cache/response/ICachedResponse.ts index bbe6c31be..44817b747 100644 --- a/packages/happy-dom/src/fetch/cache/response/ICachedResponse.ts +++ b/packages/happy-dom/src/fetch/cache/response/ICachedResponse.ts @@ -1,6 +1,6 @@ -import CachedResponseStateEnum from './CachedResponseStateEnum.js'; -import Headers from '../../Headers.js'; -import * as PropertySymbol from '../../../PropertySymbol.js'; +import type CachedResponseStateEnum from './CachedResponseStateEnum.js'; +import type Headers from '../../Headers.js'; +import type * as PropertySymbol from '../../../PropertySymbol.js'; export default interface ICachedResponse { /** Response. */ diff --git a/packages/happy-dom/src/fetch/cache/response/IResponseCache.ts b/packages/happy-dom/src/fetch/cache/response/IResponseCache.ts index cbdb74639..a595a6d8a 100644 --- a/packages/happy-dom/src/fetch/cache/response/IResponseCache.ts +++ b/packages/happy-dom/src/fetch/cache/response/IResponseCache.ts @@ -1,7 +1,7 @@ -import ICachedResponse from './ICachedResponse.js'; -import ICacheableRequest from './ICacheableRequest.js'; -import ICacheableResponse from './ICacheableResponse.js'; -import IResponseCacheFileSystem from './IResponseCacheFileSystem.js'; +import type ICachedResponse from './ICachedResponse.js'; +import type ICacheableRequest from './ICacheableRequest.js'; +import type ICacheableResponse from './ICacheableResponse.js'; +import type IResponseCacheFileSystem from './IResponseCacheFileSystem.js'; /** * Fetch response cache. diff --git a/packages/happy-dom/src/fetch/cache/response/ResponseCache.ts b/packages/happy-dom/src/fetch/cache/response/ResponseCache.ts index cc7272965..77fb362fc 100644 --- a/packages/happy-dom/src/fetch/cache/response/ResponseCache.ts +++ b/packages/happy-dom/src/fetch/cache/response/ResponseCache.ts @@ -1,8 +1,8 @@ -import IResponseCache from './IResponseCache.js'; -import ICachedResponse from './ICachedResponse.js'; +import type IResponseCache from './IResponseCache.js'; +import type ICachedResponse from './ICachedResponse.js'; import CachedResponseStateEnum from './CachedResponseStateEnum.js'; -import ICacheableRequest from './ICacheableRequest.js'; -import ICacheableResponse from './ICacheableResponse.js'; +import type ICacheableRequest from './ICacheableRequest.js'; +import type ICacheableResponse from './ICacheableResponse.js'; import Headers from '../../Headers.js'; import ResponseCacheFileSystem from './ResponseCacheFileSystem.js'; diff --git a/packages/happy-dom/src/fetch/cache/response/ResponseCacheFileSystem.ts b/packages/happy-dom/src/fetch/cache/response/ResponseCacheFileSystem.ts index 75a37241f..b3cbcb7ff 100644 --- a/packages/happy-dom/src/fetch/cache/response/ResponseCacheFileSystem.ts +++ b/packages/happy-dom/src/fetch/cache/response/ResponseCacheFileSystem.ts @@ -1,9 +1,9 @@ -import ICachedResponse from './ICachedResponse.js'; +import type ICachedResponse from './ICachedResponse.js'; import Headers from '../../Headers.js'; import FS from 'fs'; import Path from 'path'; import Crypto from 'crypto'; -import IResponseCacheFileSystem from './IResponseCacheFileSystem.js'; +import type IResponseCacheFileSystem from './IResponseCacheFileSystem.js'; /** * Fetch response cache file system implementation. diff --git a/packages/happy-dom/src/fetch/multipart/MultipartFormDataParser.ts b/packages/happy-dom/src/fetch/multipart/MultipartFormDataParser.ts index 9bacbaf1b..e535c0e15 100644 --- a/packages/happy-dom/src/fetch/multipart/MultipartFormDataParser.ts +++ b/packages/happy-dom/src/fetch/multipart/MultipartFormDataParser.ts @@ -1,10 +1,10 @@ -import FormData from '../../form-data/FormData.js'; +import type FormData from '../../form-data/FormData.js'; import { ReadableStream } from 'stream/web'; import * as PropertySymbol from '../../PropertySymbol.js'; import MultipartReader from './MultipartReader.js'; import DOMExceptionNameEnum from '../../exception/DOMExceptionNameEnum.js'; import { Buffer } from 'buffer'; -import BrowserWindow from '../../window/BrowserWindow.js'; +import type BrowserWindow from '../../window/BrowserWindow.js'; /** * Multipart form data factory. diff --git a/packages/happy-dom/src/fetch/multipart/MultipartReader.ts b/packages/happy-dom/src/fetch/multipart/MultipartReader.ts index d46523af9..f0a0bdcf4 100644 --- a/packages/happy-dom/src/fetch/multipart/MultipartReader.ts +++ b/packages/happy-dom/src/fetch/multipart/MultipartReader.ts @@ -1,6 +1,6 @@ import File from '../../file/File.js'; -import FormData from '../../form-data/FormData.js'; -import BrowserWindow from '../../window/BrowserWindow.js'; +import type FormData from '../../form-data/FormData.js'; +import type BrowserWindow from '../../window/BrowserWindow.js'; enum MultipartParserStateEnum { boundary = 0, diff --git a/packages/happy-dom/src/fetch/preload/PreloadEntry.ts b/packages/happy-dom/src/fetch/preload/PreloadEntry.ts index 12b65845b..6403b07df 100644 --- a/packages/happy-dom/src/fetch/preload/PreloadEntry.ts +++ b/packages/happy-dom/src/fetch/preload/PreloadEntry.ts @@ -1,4 +1,4 @@ -import Response from '../Response.js'; +import type Response from '../Response.js'; /** * Preload entry. diff --git a/packages/happy-dom/src/fetch/preload/PreloadUtility.ts b/packages/happy-dom/src/fetch/preload/PreloadUtility.ts index 05e7ac3dc..ebe0652cf 100644 --- a/packages/happy-dom/src/fetch/preload/PreloadUtility.ts +++ b/packages/happy-dom/src/fetch/preload/PreloadUtility.ts @@ -1,5 +1,5 @@ -import IRequestCredentials from '../types/IRequestCredentials.js'; -import IRequestMode from '../types/IRequestMode.js'; +import type { TRequestCredentials } from '../types/TRequestCredentials.js'; +import type { TRequestMode } from '../types/TRequestMode.js'; /** * Utility for preloading resources. @@ -20,8 +20,8 @@ export default class PreloadUtility { public static getKey(options: { url: string; destination: string; - mode: IRequestMode; - credentialsMode: IRequestCredentials; + mode: TRequestMode; + credentialsMode: TRequestCredentials; }): string { return JSON.stringify({ url: options.url, diff --git a/packages/happy-dom/src/fetch/types/IFetchInterceptor.ts b/packages/happy-dom/src/fetch/types/IFetchInterceptor.ts index 3739b74b6..c9d1820f2 100644 --- a/packages/happy-dom/src/fetch/types/IFetchInterceptor.ts +++ b/packages/happy-dom/src/fetch/types/IFetchInterceptor.ts @@ -1,7 +1,7 @@ -import Request from '../Request.js'; -import BrowserWindow from '../../window/BrowserWindow.js'; -import Response from '../Response.js'; -import ISyncResponse from './ISyncResponse.js'; +import type Request from '../Request.js'; +import type BrowserWindow from '../../window/BrowserWindow.js'; +import type Response from '../Response.js'; +import type ISyncResponse from './ISyncResponse.js'; export default interface IFetchInterceptor { /** diff --git a/packages/happy-dom/src/fetch/types/IHeadersInit.ts b/packages/happy-dom/src/fetch/types/IHeadersInit.ts deleted file mode 100644 index 47349daac..000000000 --- a/packages/happy-dom/src/fetch/types/IHeadersInit.ts +++ /dev/null @@ -1,5 +0,0 @@ -import Headers from '../Headers.js'; - -type IHeadersInit = string[][] | { [key: string]: string } | Headers; - -export default IHeadersInit; diff --git a/packages/happy-dom/src/fetch/types/IRequestBody.ts b/packages/happy-dom/src/fetch/types/IRequestBody.ts deleted file mode 100644 index 2a737119e..000000000 --- a/packages/happy-dom/src/fetch/types/IRequestBody.ts +++ /dev/null @@ -1,16 +0,0 @@ -import { URLSearchParams } from 'url'; -import FormData from '../../form-data/FormData.js'; -import Blob from '../../file/Blob.js'; -import { ReadableStream } from 'stream/web'; - -type IRequestBody = - | ArrayBuffer - | ArrayBufferView - | ReadableStream - | string - | URLSearchParams - | Blob - | FormData - | null; - -export default IRequestBody; diff --git a/packages/happy-dom/src/fetch/types/IRequestCredentials.ts b/packages/happy-dom/src/fetch/types/IRequestCredentials.ts deleted file mode 100644 index 85f4a7e96..000000000 --- a/packages/happy-dom/src/fetch/types/IRequestCredentials.ts +++ /dev/null @@ -1,2 +0,0 @@ -type IRequestCredentials = 'omit' | 'same-origin' | 'include'; -export default IRequestCredentials; diff --git a/packages/happy-dom/src/fetch/types/IRequestInfo.ts b/packages/happy-dom/src/fetch/types/IRequestInfo.ts deleted file mode 100644 index 8e445c122..000000000 --- a/packages/happy-dom/src/fetch/types/IRequestInfo.ts +++ /dev/null @@ -1,6 +0,0 @@ -import URL from '../../url/URL.js'; -import Request from '../Request.js'; - -type IRequestInfo = Request | string | URL; - -export default IRequestInfo; diff --git a/packages/happy-dom/src/fetch/types/IRequestInit.ts b/packages/happy-dom/src/fetch/types/IRequestInit.ts index a1c7c5290..4ecc2f65f 100644 --- a/packages/happy-dom/src/fetch/types/IRequestInit.ts +++ b/packages/happy-dom/src/fetch/types/IRequestInit.ts @@ -1,23 +1,23 @@ -import IHeadersInit from './IHeadersInit.js'; -import AbortSignal from '../AbortSignal.js'; -import URL from '../../url/URL.js'; -import IRequestReferrerPolicy from './IRequestReferrerPolicy.js'; -import IRequestRedirect from './IRequestRedirect.js'; -import IRequestBody from './IRequestBody.js'; -import IRequestCredentials from './IRequestCredentials.js'; -import IRequestMode from './IRequestMode.js'; +import type AbortSignal from '../AbortSignal.js'; +import type URL from '../../url/URL.js'; +import type { TRequestBody } from './TRequestBody.js'; +import type { THeadersInit } from './THeadersInit.js'; +import type { TRequestMode } from './TRequestMode.js'; +import type { TRequestCredentials } from './TRequestCredentials.js'; +import type { TRequestReferrerPolicy } from './TRequestReferrerPolicy.js'; +import type { TRequestRedirect } from './TRequestRedirect.js'; /** * Fetch request init. */ export default interface IRequestInit { - body?: IRequestBody; - headers?: IHeadersInit; + body?: TRequestBody; + headers?: THeadersInit; method?: string; - mode?: IRequestMode; - redirect?: IRequestRedirect; + mode?: TRequestMode; + redirect?: TRequestRedirect; signal?: AbortSignal | null; referrer?: '' | 'no-referrer' | 'client' | string | URL; - credentials?: IRequestCredentials; - referrerPolicy?: IRequestReferrerPolicy; + credentials?: TRequestCredentials; + referrerPolicy?: TRequestReferrerPolicy; } diff --git a/packages/happy-dom/src/fetch/types/IRequestMode.ts b/packages/happy-dom/src/fetch/types/IRequestMode.ts deleted file mode 100644 index 90503b16c..000000000 --- a/packages/happy-dom/src/fetch/types/IRequestMode.ts +++ /dev/null @@ -1,2 +0,0 @@ -type IRequestMode = 'same-origin' | 'cors' | 'no-cors' | 'navigate' | 'websocket'; -export default IRequestMode; diff --git a/packages/happy-dom/src/fetch/types/IRequestRedirect.ts b/packages/happy-dom/src/fetch/types/IRequestRedirect.ts deleted file mode 100644 index 47ee63103..000000000 --- a/packages/happy-dom/src/fetch/types/IRequestRedirect.ts +++ /dev/null @@ -1,3 +0,0 @@ -type IRequestRedirect = 'follow' | 'error' | 'manual'; - -export default IRequestRedirect; diff --git a/packages/happy-dom/src/fetch/types/IResponseBody.ts b/packages/happy-dom/src/fetch/types/IResponseBody.ts deleted file mode 100644 index d346561ef..000000000 --- a/packages/happy-dom/src/fetch/types/IResponseBody.ts +++ /dev/null @@ -1,16 +0,0 @@ -import { ReadableStream } from 'stream/web'; -import { URLSearchParams } from 'url'; -import FormData from '../../form-data/FormData.js'; -import Blob from '../../file/Blob.js'; - -type IResponseBody = - | ArrayBuffer - | ArrayBufferView - | ReadableStream - | string - | URLSearchParams - | Blob - | FormData - | null; - -export default IResponseBody; diff --git a/packages/happy-dom/src/fetch/types/IResponseInit.ts b/packages/happy-dom/src/fetch/types/IResponseInit.ts index 1ab64c574..6bfb728fc 100644 --- a/packages/happy-dom/src/fetch/types/IResponseInit.ts +++ b/packages/happy-dom/src/fetch/types/IResponseInit.ts @@ -1,10 +1,10 @@ -import IHeadersInit from './IHeadersInit.js'; +import type { THeadersInit } from './THeadersInit.js'; /** * Response init. */ export default interface IResponseInit { - headers?: IHeadersInit | undefined; + headers?: THeadersInit | undefined; status?: number | undefined; statusText?: string | undefined; } diff --git a/packages/happy-dom/src/fetch/types/ISyncResponse.ts b/packages/happy-dom/src/fetch/types/ISyncResponse.ts index 79ece8eca..f2be00c58 100644 --- a/packages/happy-dom/src/fetch/types/ISyncResponse.ts +++ b/packages/happy-dom/src/fetch/types/ISyncResponse.ts @@ -1,5 +1,5 @@ -import { PropertySymbol } from '../../index.js'; -import Headers from '../Headers.js'; +import type { PropertySymbol } from '../../index.js'; +import type Headers from '../Headers.js'; /** * Fetch response. diff --git a/packages/happy-dom/src/fetch/types/THeadersInit.ts b/packages/happy-dom/src/fetch/types/THeadersInit.ts new file mode 100644 index 000000000..0f4503cda --- /dev/null +++ b/packages/happy-dom/src/fetch/types/THeadersInit.ts @@ -0,0 +1,3 @@ +import type Headers from '../Headers.js'; + +export type THeadersInit = string[][] | { [key: string]: string } | Headers; diff --git a/packages/happy-dom/src/fetch/types/TRequestBody.ts b/packages/happy-dom/src/fetch/types/TRequestBody.ts new file mode 100644 index 000000000..6e4363554 --- /dev/null +++ b/packages/happy-dom/src/fetch/types/TRequestBody.ts @@ -0,0 +1,14 @@ +import type { URLSearchParams } from 'url'; +import type FormData from '../../form-data/FormData.js'; +import type Blob from '../../file/Blob.js'; +import type { ReadableStream } from 'stream/web'; + +export type TRequestBody = + | ArrayBuffer + | ArrayBufferView + | ReadableStream + | string + | URLSearchParams + | Blob + | FormData + | null; diff --git a/packages/happy-dom/src/fetch/types/TRequestCredentials.ts b/packages/happy-dom/src/fetch/types/TRequestCredentials.ts new file mode 100644 index 000000000..19167846b --- /dev/null +++ b/packages/happy-dom/src/fetch/types/TRequestCredentials.ts @@ -0,0 +1 @@ +export type TRequestCredentials = 'omit' | 'same-origin' | 'include'; diff --git a/packages/happy-dom/src/fetch/types/TRequestInfo.ts b/packages/happy-dom/src/fetch/types/TRequestInfo.ts new file mode 100644 index 000000000..165a4a636 --- /dev/null +++ b/packages/happy-dom/src/fetch/types/TRequestInfo.ts @@ -0,0 +1,4 @@ +import type URL from '../../url/URL.js'; +import type Request from '../Request.js'; + +export type TRequestInfo = Request | string | URL; diff --git a/packages/happy-dom/src/fetch/types/TRequestMode.ts b/packages/happy-dom/src/fetch/types/TRequestMode.ts new file mode 100644 index 000000000..76c02bf01 --- /dev/null +++ b/packages/happy-dom/src/fetch/types/TRequestMode.ts @@ -0,0 +1 @@ +export type TRequestMode = 'same-origin' | 'cors' | 'no-cors' | 'navigate' | 'websocket'; diff --git a/packages/happy-dom/src/fetch/types/TRequestRedirect.ts b/packages/happy-dom/src/fetch/types/TRequestRedirect.ts new file mode 100644 index 000000000..2322a4e8d --- /dev/null +++ b/packages/happy-dom/src/fetch/types/TRequestRedirect.ts @@ -0,0 +1 @@ +export type TRequestRedirect = 'follow' | 'error' | 'manual'; diff --git a/packages/happy-dom/src/fetch/types/IRequestReferrerPolicy.ts b/packages/happy-dom/src/fetch/types/TRequestReferrerPolicy.ts similarity index 73% rename from packages/happy-dom/src/fetch/types/IRequestReferrerPolicy.ts rename to packages/happy-dom/src/fetch/types/TRequestReferrerPolicy.ts index 790c0a8e5..3dd522740 100644 --- a/packages/happy-dom/src/fetch/types/IRequestReferrerPolicy.ts +++ b/packages/happy-dom/src/fetch/types/TRequestReferrerPolicy.ts @@ -1,4 +1,4 @@ -type IRequestReferrerPolicy = +export type TRequestReferrerPolicy = | '' | 'no-referrer' | 'no-referrer-when-downgrade' @@ -8,4 +8,3 @@ type IRequestReferrerPolicy = | 'origin-when-cross-origin' | 'strict-origin-when-cross-origin' | 'unsafe-url'; -export default IRequestReferrerPolicy; diff --git a/packages/happy-dom/src/fetch/types/TResponseBody.ts b/packages/happy-dom/src/fetch/types/TResponseBody.ts new file mode 100644 index 000000000..0af511cec --- /dev/null +++ b/packages/happy-dom/src/fetch/types/TResponseBody.ts @@ -0,0 +1,14 @@ +import type { ReadableStream } from 'stream/web'; +import type { URLSearchParams } from 'url'; +import type FormData from '../../form-data/FormData.js'; +import type Blob from '../../file/Blob.js'; + +export type TResponseBody = + | ArrayBuffer + | ArrayBufferView + | ReadableStream + | string + | URLSearchParams + | Blob + | FormData + | null; diff --git a/packages/happy-dom/src/fetch/utilities/FetchBodyUtility.ts b/packages/happy-dom/src/fetch/utilities/FetchBodyUtility.ts index e1daafa7c..203843137 100644 --- a/packages/happy-dom/src/fetch/utilities/FetchBodyUtility.ts +++ b/packages/happy-dom/src/fetch/utilities/FetchBodyUtility.ts @@ -6,11 +6,11 @@ import FormData from '../../form-data/FormData.js'; import Blob from '../../file/Blob.js'; import DOMException from '../../exception/DOMException.js'; import DOMExceptionNameEnum from '../../exception/DOMExceptionNameEnum.js'; -import IRequestBody from '../types/IRequestBody.js'; -import IResponseBody from '../types/IResponseBody.js'; +import type { TRequestBody } from '../types/TRequestBody.js'; +import type { TResponseBody } from '../types/TResponseBody.js'; import { Buffer } from 'buffer'; import Stream from 'stream'; -import BrowserWindow from '../../window/BrowserWindow.js'; +import type BrowserWindow from '../../window/BrowserWindow.js'; /** * Fetch body utility. @@ -25,7 +25,7 @@ export default class FetchBodyUtility { * @param body Body. * @returns Stream and type. */ - public static getBodyStream(body: IRequestBody | IResponseBody): { + public static getBodyStream(body: TRequestBody | TResponseBody): { contentType: string | null; contentLength: number | null; stream: ReadableStream | null; diff --git a/packages/happy-dom/src/fetch/utilities/FetchRequestHeaderUtility.ts b/packages/happy-dom/src/fetch/utilities/FetchRequestHeaderUtility.ts index 6d548e4eb..3f6fce5a4 100644 --- a/packages/happy-dom/src/fetch/utilities/FetchRequestHeaderUtility.ts +++ b/packages/happy-dom/src/fetch/utilities/FetchRequestHeaderUtility.ts @@ -1,9 +1,9 @@ -import IBrowserFrame from '../../browser/types/IBrowserFrame.js'; +import type IBrowserFrame from '../../browser/types/IBrowserFrame.js'; import * as PropertySymbol from '../../PropertySymbol.js'; -import BrowserWindow from '../../window/BrowserWindow.js'; +import type BrowserWindow from '../../window/BrowserWindow.js'; import CookieStringUtility from '../../cookie/urilities/CookieStringUtility.js'; -import Headers from '../Headers.js'; -import Request from '../Request.js'; +import type Headers from '../Headers.js'; +import type Request from '../Request.js'; import FetchCORSUtility from './FetchCORSUtility.js'; import { URL } from 'url'; diff --git a/packages/happy-dom/src/fetch/utilities/FetchRequestReferrerUtility.ts b/packages/happy-dom/src/fetch/utilities/FetchRequestReferrerUtility.ts index 4a6ad4b00..1f6a0e00f 100644 --- a/packages/happy-dom/src/fetch/utilities/FetchRequestReferrerUtility.ts +++ b/packages/happy-dom/src/fetch/utilities/FetchRequestReferrerUtility.ts @@ -1,13 +1,13 @@ import URL from '../../url/URL.js'; import * as PropertySymbol from '../../PropertySymbol.js'; -import BrowserWindow from '../../window/BrowserWindow.js'; +import type BrowserWindow from '../../window/BrowserWindow.js'; import { isIP } from 'net'; -import Headers from '../Headers.js'; -import IRequestReferrerPolicy from '../types/IRequestReferrerPolicy.js'; -import Request from '../Request.js'; +import type Headers from '../Headers.js'; +import type { TRequestReferrerPolicy } from '../types/TRequestReferrerPolicy.js'; +import type Request from '../Request.js'; const REQUEST_REFERRER_UNSUPPORTED_PROTOCOL_REGEXP = /^(about|blob|data):$/; -const REFERRER_POLICIES: IRequestReferrerPolicy[] = [ +const REFERRER_POLICIES: TRequestReferrerPolicy[] = [ '', 'no-referrer', 'no-referrer-when-downgrade', @@ -70,7 +70,7 @@ export default class FetchRequestReferrerUtility { * @param headers Response headers * @returns Policy. */ - public static getReferrerPolicyFromHeader(headers: Headers): IRequestReferrerPolicy { + public static getReferrerPolicyFromHeader(headers: Headers): TRequestReferrerPolicy { const referrerPolicyHeader = headers.get('Referrer-Policy'); if (!referrerPolicyHeader) { @@ -78,11 +78,11 @@ export default class FetchRequestReferrerUtility { } const policyTokens = referrerPolicyHeader.split(/[,\s]+/); - let policy: IRequestReferrerPolicy = ''; + let policy: TRequestReferrerPolicy = ''; for (const token of policyTokens) { - if (token && REFERRER_POLICIES.includes(token)) { - policy = token; + if (token && REFERRER_POLICIES.includes(token)) { + policy = token; } } diff --git a/packages/happy-dom/src/fetch/utilities/FetchRequestValidationUtility.ts b/packages/happy-dom/src/fetch/utilities/FetchRequestValidationUtility.ts index 3f547e870..031fb217b 100644 --- a/packages/happy-dom/src/fetch/utilities/FetchRequestValidationUtility.ts +++ b/packages/happy-dom/src/fetch/utilities/FetchRequestValidationUtility.ts @@ -1,10 +1,10 @@ import DOMException from '../../exception/DOMException.js'; import * as PropertySymbol from '../../PropertySymbol.js'; import DOMExceptionNameEnum from '../../exception/DOMExceptionNameEnum.js'; -import IRequestReferrerPolicy from '../types/IRequestReferrerPolicy.js'; -import IRequestRedirect from '../types/IRequestRedirect.js'; -import URL from '../../url/URL.js'; -import Request from '../Request.js'; +import type { TRequestReferrerPolicy } from '../types/TRequestReferrerPolicy.js'; +import type { TRequestRedirect } from '../types/TRequestRedirect.js'; +import type URL from '../../url/URL.js'; +import type Request from '../Request.js'; const VALID_REFERRER_POLICIES = [ '', @@ -87,7 +87,7 @@ export default class FetchRequestValidationUtility { * @throws DOMException * @param referrerPolicy Referrer policy. */ - public static validateReferrerPolicy(referrerPolicy: IRequestReferrerPolicy): void { + public static validateReferrerPolicy(referrerPolicy: TRequestReferrerPolicy): void { if (!VALID_REFERRER_POLICIES.includes(referrerPolicy)) { throw new DOMException( `Invalid referrer policy "${referrerPolicy}".`, @@ -102,7 +102,7 @@ export default class FetchRequestValidationUtility { * @throws DOMException * @param redirect Redirect. */ - public static validateRedirect(redirect: IRequestRedirect): void { + public static validateRedirect(redirect: TRequestRedirect): void { if (!VALID_REDIRECTS.includes(redirect)) { throw new DOMException(`Invalid redirect "${redirect}".`, DOMExceptionNameEnum.syntaxError); } diff --git a/packages/happy-dom/src/fetch/utilities/FetchResponseHeaderUtility.ts b/packages/happy-dom/src/fetch/utilities/FetchResponseHeaderUtility.ts index ed6b23885..d6619d335 100644 --- a/packages/happy-dom/src/fetch/utilities/FetchResponseHeaderUtility.ts +++ b/packages/happy-dom/src/fetch/utilities/FetchResponseHeaderUtility.ts @@ -1,6 +1,6 @@ -import IBrowserFrame from '../../browser/types/IBrowserFrame.js'; +import type IBrowserFrame from '../../browser/types/IBrowserFrame.js'; import CookieStringUtility from '../../cookie/urilities/CookieStringUtility.js'; -import Headers from '../Headers.js'; +import type Headers from '../Headers.js'; /** * Fetch request validation utility. diff --git a/packages/happy-dom/src/fetch/utilities/SyncFetchScriptBuilder.ts b/packages/happy-dom/src/fetch/utilities/SyncFetchScriptBuilder.ts index f84da9e23..a78bebd2f 100644 --- a/packages/happy-dom/src/fetch/utilities/SyncFetchScriptBuilder.ts +++ b/packages/happy-dom/src/fetch/utilities/SyncFetchScriptBuilder.ts @@ -1,5 +1,5 @@ import FetchHTTPSCertificate from '../certificate/FetchHTTPSCertificate.js'; -import { Buffer } from 'buffer'; +import type { Buffer } from 'buffer'; /** * Synchronous fetch script builder. diff --git a/packages/happy-dom/src/fetch/utilities/VirtualServerUtility.ts b/packages/happy-dom/src/fetch/utilities/VirtualServerUtility.ts index 04f77cb14..1528f7487 100644 --- a/packages/happy-dom/src/fetch/utilities/VirtualServerUtility.ts +++ b/packages/happy-dom/src/fetch/utilities/VirtualServerUtility.ts @@ -1,8 +1,8 @@ -import BrowserWindow from '../../window/BrowserWindow.js'; +import type BrowserWindow from '../../window/BrowserWindow.js'; import WindowBrowserContext from '../../window/WindowBrowserContext.js'; import Path from 'path'; -import Response from '../Response.js'; -import ISyncResponse from '../types/ISyncResponse.js'; +import type Response from '../Response.js'; +import type ISyncResponse from '../types/ISyncResponse.js'; import * as PropertySymbol from '../../PropertySymbol.js'; const NOT_FOUND_HTML = diff --git a/packages/happy-dom/src/file/File.ts b/packages/happy-dom/src/file/File.ts index 583d5539b..81daf2e22 100644 --- a/packages/happy-dom/src/file/File.ts +++ b/packages/happy-dom/src/file/File.ts @@ -1,5 +1,5 @@ import Blob from './Blob.js'; -import { Buffer } from 'buffer'; +import type { Buffer } from 'buffer'; /** * Reference: diff --git a/packages/happy-dom/src/form-data/FormData.ts b/packages/happy-dom/src/form-data/FormData.ts index e3df93328..57a39bd75 100644 --- a/packages/happy-dom/src/form-data/FormData.ts +++ b/packages/happy-dom/src/form-data/FormData.ts @@ -1,10 +1,10 @@ import Blob from '../file/Blob.js'; import * as PropertySymbol from '../PropertySymbol.js'; import File from '../file/File.js'; -import HTMLInputElement from '../nodes/html-input-element/HTMLInputElement.js'; -import HTMLFormElement from '../nodes/html-form-element/HTMLFormElement.js'; -import BrowserWindow from '../window/BrowserWindow.js'; -import HTMLButtonElement from '../nodes/html-button-element/HTMLButtonElement.js'; +import type HTMLInputElement from '../nodes/html-input-element/HTMLInputElement.js'; +import type HTMLFormElement from '../nodes/html-form-element/HTMLFormElement.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; +import type HTMLButtonElement from '../nodes/html-button-element/HTMLButtonElement.js'; import DOMExceptionNameEnum from '../exception/DOMExceptionNameEnum.js'; type FormDataEntry = { diff --git a/packages/happy-dom/src/history/History.ts b/packages/happy-dom/src/history/History.ts index 76c332734..5a4d73fde 100644 --- a/packages/happy-dom/src/history/History.ts +++ b/packages/happy-dom/src/history/History.ts @@ -1,9 +1,9 @@ -import IBrowserFrame from '../browser/types/IBrowserFrame.js'; +import type IBrowserFrame from '../browser/types/IBrowserFrame.js'; import HistoryScrollRestorationEnum from './HistoryScrollRestorationEnum.js'; import * as PropertySymbol from '../PropertySymbol.js'; import BrowserFrameURL from '../browser/utilities/BrowserFrameURL.js'; import DOMExceptionNameEnum from '../exception/DOMExceptionNameEnum.js'; -import BrowserWindow from '../window/BrowserWindow.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; /** * History API. diff --git a/packages/happy-dom/src/history/HistoryItemList.ts b/packages/happy-dom/src/history/HistoryItemList.ts index 7e24bd0e3..a755d0221 100644 --- a/packages/happy-dom/src/history/HistoryItemList.ts +++ b/packages/happy-dom/src/history/HistoryItemList.ts @@ -1,5 +1,5 @@ import HistoryScrollRestorationEnum from './HistoryScrollRestorationEnum.js'; -import IHistoryItem from './IHistoryItem.js'; +import type IHistoryItem from './IHistoryItem.js'; /** * History item list. diff --git a/packages/happy-dom/src/history/IHistoryItem.ts b/packages/happy-dom/src/history/IHistoryItem.ts index 4a17ebcce..14ff7183c 100644 --- a/packages/happy-dom/src/history/IHistoryItem.ts +++ b/packages/happy-dom/src/history/IHistoryItem.ts @@ -1,5 +1,5 @@ -import FormData from '../form-data/FormData.js'; -import HistoryScrollRestorationEnum from './HistoryScrollRestorationEnum.js'; +import type FormData from '../form-data/FormData.js'; +import type HistoryScrollRestorationEnum from './HistoryScrollRestorationEnum.js'; export default interface IHistoryItem { title: string | null; diff --git a/packages/happy-dom/src/html-parser/HTMLParser.ts b/packages/happy-dom/src/html-parser/HTMLParser.ts index 038a66062..cbd9327bf 100755 --- a/packages/happy-dom/src/html-parser/HTMLParser.ts +++ b/packages/happy-dom/src/html-parser/HTMLParser.ts @@ -1,24 +1,24 @@ -import Document from '../nodes/document/Document.js'; +import type Document from '../nodes/document/Document.js'; import * as PropertySymbol from '../PropertySymbol.js'; import NamespaceURI from '../config/NamespaceURI.js'; -import HTMLScriptElement from '../nodes/html-script-element/HTMLScriptElement.js'; -import Element from '../nodes/element/Element.js'; -import HTMLLinkElement from '../nodes/html-link-element/HTMLLinkElement.js'; -import Node from '../nodes/node/Node.js'; -import DocumentFragment from '../nodes/document-fragment/DocumentFragment.js'; +import type HTMLScriptElement from '../nodes/html-script-element/HTMLScriptElement.js'; +import type Element from '../nodes/element/Element.js'; +import type HTMLLinkElement from '../nodes/html-link-element/HTMLLinkElement.js'; +import type Node from '../nodes/node/Node.js'; +import type DocumentFragment from '../nodes/document-fragment/DocumentFragment.js'; import HTMLElementConfig from '../config/HTMLElementConfig.js'; import HTMLElementConfigContentModelEnum from '../config/HTMLElementConfigContentModelEnum.js'; import SVGElementConfig from '../config/SVGElementConfig.js'; import StringUtility from '../utilities/StringUtility.js'; -import BrowserWindow from '../window/BrowserWindow.js'; -import DocumentType from '../nodes/document-type/DocumentType.js'; -import HTMLHeadElement from '../nodes/html-head-element/HTMLHeadElement.js'; -import HTMLBodyElement from '../nodes/html-body-element/HTMLBodyElement.js'; -import HTMLHtmlElement from '../nodes/html-html-element/HTMLHtmlElement.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; +import type DocumentType from '../nodes/document-type/DocumentType.js'; +import type HTMLHeadElement from '../nodes/html-head-element/HTMLHeadElement.js'; +import type HTMLBodyElement from '../nodes/html-body-element/HTMLBodyElement.js'; +import type HTMLHtmlElement from '../nodes/html-html-element/HTMLHtmlElement.js'; import XMLEncodeUtility from '../utilities/XMLEncodeUtility.js'; import NodeTypeEnum from '../nodes/node/NodeTypeEnum.js'; import NodeFactory from '../nodes/NodeFactory.js'; -import Text from '../nodes/text/Text.js'; +import type Text from '../nodes/text/Text.js'; /** * Markup RegExp. @@ -166,7 +166,10 @@ export default class HTMLParser { rootNode?: Element | DocumentFragment | Document ): Element | DocumentFragment | Document { this.rootNode = rootNode || this.window.document.createDocumentFragment(); - this.rootDocument = this.rootNode instanceof Document ? this.rootNode : this.window.document; + this.rootDocument = + this.rootNode[PropertySymbol.nodeType] === NodeTypeEnum.documentNode + ? this.rootNode + : this.window.document; this.nodeStack = [this.rootNode]; this.tagNameStack = [null]; this.currentNode = this.rootNode; @@ -175,7 +178,7 @@ export default class HTMLParser { this.startTagIndex = 0; this.markupRegExp = new RegExp(MARKUP_REGEXP); - if (this.rootNode instanceof Document) { + if (this.rootNode[PropertySymbol.nodeType] === NodeTypeEnum.documentNode) { const { doctype, documentElement, head, body } = this.rootNode; if (!documentElement || !head || !body) { @@ -196,8 +199,8 @@ export default class HTMLParser { } if (this.rootNode instanceof this.window.HTMLHtmlElement) { - const head = this.rootDocument.createElement('head'); - const body = this.rootDocument.createElement('body'); + const head = this.rootDocument!.createElement('head'); + const body = this.rootDocument!.createElement('body'); while (this.rootNode[PropertySymbol.nodeArray].length > 0) { this.rootNode[PropertySymbol.removeChild]( this.rootNode[PropertySymbol.nodeArray][ diff --git a/packages/happy-dom/src/html-serializer/HTMLSerializer.ts b/packages/happy-dom/src/html-serializer/HTMLSerializer.ts index c8d8d4b61..322461744 100644 --- a/packages/happy-dom/src/html-serializer/HTMLSerializer.ts +++ b/packages/happy-dom/src/html-serializer/HTMLSerializer.ts @@ -1,12 +1,12 @@ -import Element from '../nodes/element/Element.js'; +import type Element from '../nodes/element/Element.js'; import * as PropertySymbol from '../PropertySymbol.js'; import Node from '../nodes/node/Node.js'; -import DocumentType from '../nodes/document-type/DocumentType.js'; -import HTMLTemplateElement from '../nodes/html-template-element/HTMLTemplateElement.js'; +import type DocumentType from '../nodes/document-type/DocumentType.js'; +import type HTMLTemplateElement from '../nodes/html-template-element/HTMLTemplateElement.js'; import NodeTypeEnum from '../nodes/node/NodeTypeEnum.js'; -import ProcessingInstruction from '../nodes/processing-instruction/ProcessingInstruction.js'; -import DocumentFragment from '../nodes/document-fragment/DocumentFragment.js'; -import ShadowRoot from '../nodes/shadow-root/ShadowRoot.js'; +import type ProcessingInstruction from '../nodes/processing-instruction/ProcessingInstruction.js'; +import type DocumentFragment from '../nodes/document-fragment/DocumentFragment.js'; +import type ShadowRoot from '../nodes/shadow-root/ShadowRoot.js'; import HTMLElementConfig from '../config/HTMLElementConfig.js'; import HTMLElementConfigContentModelEnum from '../config/HTMLElementConfigContentModelEnum.js'; import XMLEncodeUtility from '../utilities/XMLEncodeUtility.js'; diff --git a/packages/happy-dom/src/index.ts b/packages/happy-dom/src/index.ts index 911fdff2a..e81a0a7b0 100644 --- a/packages/happy-dom/src/index.ts +++ b/packages/happy-dom/src/index.ts @@ -69,8 +69,6 @@ import AbortSignal from './fetch/AbortSignal.js'; import Headers from './fetch/Headers.js'; import Request from './fetch/Request.js'; import Response from './fetch/Response.js'; -import IFetchInterceptor from './fetch/types/IFetchInterceptor.js'; -import ISyncResponse from './fetch/types/ISyncResponse.js'; import Blob from './file/Blob.js'; import File from './file/File.js'; import FileReader from './file/FileReader.js'; @@ -205,7 +203,7 @@ import type IOptionalCookie from './cookie/IOptionalCookie.js'; import type IEventInit from './event/IEventInit.js'; import type ITouchInit from './event/ITouchInit.js'; import type IUIEventInit from './event/IUIEventInit.js'; -import type TEventListener from './event/TEventListener.js'; +import type { TEventListener } from './event/TEventListener.js'; import type IAnimationEventInit from './event/events/IAnimationEventInit.js'; import type IClipboardEventInit from './event/events/IClipboardEventInit.js'; import type ICustomEventInit from './event/events/ICustomEventInit.js'; @@ -220,6 +218,8 @@ import type IProgressEventInit from './event/events/IProgressEventInit.js'; import type ISubmitEventInit from './event/events/ISubmitEventInit.js'; import type ITouchEventInit from './event/events/ITouchEventInit.js'; import type IWheelEventInit from './event/events/IWheelEventInit.js'; +import type IFetchInterceptor from './fetch/types/IFetchInterceptor.js'; +import type ISyncResponse from './fetch/types/ISyncResponse.js'; import type IVirtualServer from './fetch/types/IVirtualServer.js'; export type { diff --git a/packages/happy-dom/src/intersection-observer/IIntersectionObserverInit.ts b/packages/happy-dom/src/intersection-observer/IIntersectionObserverInit.ts index 7de2dbdd8..aebfac05f 100644 --- a/packages/happy-dom/src/intersection-observer/IIntersectionObserverInit.ts +++ b/packages/happy-dom/src/intersection-observer/IIntersectionObserverInit.ts @@ -1,4 +1,4 @@ -import Element from '../nodes/element/Element.js'; +import type Element from '../nodes/element/Element.js'; export default interface IIntersectionObserverInit { /** diff --git a/packages/happy-dom/src/intersection-observer/IntersectionObserver.ts b/packages/happy-dom/src/intersection-observer/IntersectionObserver.ts index cb6ef7da2..4fbe13a19 100644 --- a/packages/happy-dom/src/intersection-observer/IntersectionObserver.ts +++ b/packages/happy-dom/src/intersection-observer/IntersectionObserver.ts @@ -1,6 +1,6 @@ -import IntersectionObserverEntry from './IntersectionObserverEntry.js'; -import IIntersectionObserverInit from './IIntersectionObserverInit.js'; -import Element from '../nodes/element/Element.js'; +import type IntersectionObserverEntry from './IntersectionObserverEntry.js'; +import type IIntersectionObserverInit from './IIntersectionObserverInit.js'; +import type Element from '../nodes/element/Element.js'; /** * The IntersectionObserver interface of the Intersection Observer API provides a way to asynchronously observe changes in the intersection of a target element with an ancestor element or with a top-level document's viewport. diff --git a/packages/happy-dom/src/intersection-observer/IntersectionObserverEntry.ts b/packages/happy-dom/src/intersection-observer/IntersectionObserverEntry.ts index 7c1c7e4b8..6953bb8b1 100644 --- a/packages/happy-dom/src/intersection-observer/IntersectionObserverEntry.ts +++ b/packages/happy-dom/src/intersection-observer/IntersectionObserverEntry.ts @@ -1,5 +1,5 @@ -import DOMRect from '../dom/DOMRect.js'; -import Node from '../nodes/node/Node.js'; +import type DOMRect from '../dom/DOMRect.js'; +import type Node from '../nodes/node/Node.js'; /** * The IntersectionObserverEntry interface of the Intersection Observer API describes the intersection between the target element and its root container at a specific moment of transition. diff --git a/packages/happy-dom/src/javascript/JavaScriptCompiler.ts b/packages/happy-dom/src/javascript/JavaScriptCompiler.ts index 4d2908e1b..d74134c73 100644 --- a/packages/happy-dom/src/javascript/JavaScriptCompiler.ts +++ b/packages/happy-dom/src/javascript/JavaScriptCompiler.ts @@ -1,8 +1,8 @@ import BrowserErrorCaptureEnum from '../browser/enums/BrowserErrorCaptureEnum.js'; -import BrowserWindow from '../window/BrowserWindow.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; import WindowBrowserContext from '../window/WindowBrowserContext.js'; import * as PropertySymbol from '../PropertySymbol.js'; -import IJavaScriptCompiledResult from './IJavaScriptCompiledResult.js'; +import type IJavaScriptCompiledResult from './IJavaScriptCompiledResult.js'; /** * Statement regexp. diff --git a/packages/happy-dom/src/location/Location.ts b/packages/happy-dom/src/location/Location.ts index f879cc6cd..2ddad894a 100644 --- a/packages/happy-dom/src/location/Location.ts +++ b/packages/happy-dom/src/location/Location.ts @@ -1,4 +1,4 @@ -import IBrowserFrame from '../browser/types/IBrowserFrame.js'; +import type IBrowserFrame from '../browser/types/IBrowserFrame.js'; import HashChangeEvent from '../event/events/HashChangeEvent.js'; import HistoryScrollRestorationEnum from '../history/HistoryScrollRestorationEnum.js'; import * as PropertySymbol from '../PropertySymbol.js'; diff --git a/packages/happy-dom/src/match-media/MediaQueryItem.ts b/packages/happy-dom/src/match-media/MediaQueryItem.ts index d4f0ac9e3..5f526455d 100644 --- a/packages/happy-dom/src/match-media/MediaQueryItem.ts +++ b/packages/happy-dom/src/match-media/MediaQueryItem.ts @@ -1,8 +1,8 @@ import CSSMeasurementConverter from '../css/declaration/measurement-converter/CSSMeasurementConverter.js'; -import BrowserWindow from '../window/BrowserWindow.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; import WindowBrowserContext from '../window/WindowBrowserContext.js'; -import IMediaQueryRange from './IMediaQueryRange.js'; -import IMediaQueryRule from './IMediaQueryRule.js'; +import type IMediaQueryRange from './IMediaQueryRange.js'; +import type IMediaQueryRule from './IMediaQueryRule.js'; import MediaQueryTypeEnum from './MediaQueryTypeEnum.js'; /** diff --git a/packages/happy-dom/src/match-media/MediaQueryList.ts b/packages/happy-dom/src/match-media/MediaQueryList.ts index ed7e49b83..b3077f640 100644 --- a/packages/happy-dom/src/match-media/MediaQueryList.ts +++ b/packages/happy-dom/src/match-media/MediaQueryList.ts @@ -1,10 +1,10 @@ import EventTarget from '../event/EventTarget.js'; import * as PropertySymbol from '../PropertySymbol.js'; -import Event from '../event/Event.js'; -import BrowserWindow from '../window/BrowserWindow.js'; -import TEventListener from '../event/TEventListener.js'; +import type Event from '../event/Event.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; +import type { TEventListener } from '../event/TEventListener.js'; import MediaQueryListEvent from '../event/events/MediaQueryListEvent.js'; -import IMediaQueryItem from './MediaQueryItem.js'; +import type IMediaQueryItem from './MediaQueryItem.js'; import MediaQueryParser from './MediaQueryParser.js'; /** diff --git a/packages/happy-dom/src/match-media/MediaQueryParser.ts b/packages/happy-dom/src/match-media/MediaQueryParser.ts index 5b8355e88..8861e7e0e 100644 --- a/packages/happy-dom/src/match-media/MediaQueryParser.ts +++ b/packages/happy-dom/src/match-media/MediaQueryParser.ts @@ -1,6 +1,6 @@ import MediaQueryItem from './MediaQueryItem.js'; import MediaQueryTypeEnum from './MediaQueryTypeEnum.js'; -import BrowserWindow from '../window/BrowserWindow.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; /** * Media query RegExp. diff --git a/packages/happy-dom/src/module/CSSModule.ts b/packages/happy-dom/src/module/CSSModule.ts index bf7ced261..fecdd4869 100644 --- a/packages/happy-dom/src/module/CSSModule.ts +++ b/packages/happy-dom/src/module/CSSModule.ts @@ -1,8 +1,8 @@ -import BrowserWindow from '../window/BrowserWindow.js'; -import { URL } from 'url'; -import IModule from './types/IModule.js'; -import CSSStyleSheet from '../css/CSSStyleSheet.js'; -import IModuleInit from './types/IModuleInit.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; +import type { URL } from 'url'; +import type IModule from './types/IModule.js'; +import type CSSStyleSheet from '../css/CSSStyleSheet.js'; +import type IModuleInit from './types/IModuleInit.js'; /** * CSS module. diff --git a/packages/happy-dom/src/module/ECMAScriptModule.ts b/packages/happy-dom/src/module/ECMAScriptModule.ts index 1936c1d61..6ade69d2c 100644 --- a/packages/happy-dom/src/module/ECMAScriptModule.ts +++ b/packages/happy-dom/src/module/ECMAScriptModule.ts @@ -1,12 +1,12 @@ -import BrowserWindow from '../window/BrowserWindow.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; import { URL } from 'url'; -import IModule from './types/IModule.js'; +import type IModule from './types/IModule.js'; import ECMAScriptModuleCompiler from './ECMAScriptModuleCompiler.js'; import * as PropertySymbol from '../PropertySymbol.js'; import WindowBrowserContext from '../window/WindowBrowserContext.js'; -import IECMAScriptModuleCompiledResult from './types/IECMAScriptModuleCompiledResult.js'; -import ModuleFactory from './ModuleFactory.js'; -import IECMAScriptModuleInit from './types/IECMAScriptModuleInit.js'; +import type IECMAScriptModuleCompiledResult from './types/IECMAScriptModuleCompiledResult.js'; +import type ModuleFactory from './ModuleFactory.js'; +import type IECMAScriptModuleInit from './types/IECMAScriptModuleInit.js'; const EMPTY_COMPILED_RESULT = { imports: [], execute: async () => {} }; @@ -22,6 +22,7 @@ export default class ECMAScriptModule implements IModule { #compiled: IECMAScriptModuleCompiledResult | null = null; #exports: { [k: string]: any } | null = null; #evaluateQueue: Array<(value: { [key: string]: any }) => void> | null = null; + #factory: ModuleFactory; /** * Constructor. @@ -33,6 +34,7 @@ export default class ECMAScriptModule implements IModule { this.url = init.url; this.#source = init.source; this.#sourceURL = init.sourceURL || null; + this.#factory = init.factory; } /** @@ -68,7 +70,6 @@ export default class ECMAScriptModule implements IModule { const modulePromises: Promise[] = []; const window = this[PropertySymbol.window]; const browserFrame = new WindowBrowserContext(window).getBrowserFrame(); - const moduleFactory = new ModuleFactory(window, this.url); if (!browserFrame) { return {}; @@ -80,7 +81,7 @@ export default class ECMAScriptModule implements IModule { for (const moduleImport of compiled.imports) { modulePromises.push( - moduleFactory.getModule(moduleImport.url, { + this.#factory.getModule(moduleImport.url, { with: { type: moduleImport.type } }) ); @@ -113,7 +114,7 @@ export default class ECMAScriptModule implements IModule { compiled.execute({ dispatchError: window[PropertySymbol.dispatchError].bind(window), - dynamicImport: moduleFactory.importModule.bind(moduleFactory), + dynamicImport: this.#factory.importModule.bind(this.#factory), importMeta: { url: href, resolve: (url: string) => new URL(url, href).href @@ -150,7 +151,6 @@ export default class ECMAScriptModule implements IModule { const modulePromises: Promise[] = []; const window = this[PropertySymbol.window]; const browserFrame = new WindowBrowserContext(window).getBrowserFrame(); - const moduleFactory = new ModuleFactory(window, this.url); if (!browserFrame) { return; @@ -158,7 +158,7 @@ export default class ECMAScriptModule implements IModule { for (const moduleImport of compiled.imports) { modulePromises.push( - moduleFactory.getModule(moduleImport.url, { + this.#factory.getModule(moduleImport.url, { with: { type: moduleImport.type } }) ); diff --git a/packages/happy-dom/src/module/ECMAScriptModuleCompiler.ts b/packages/happy-dom/src/module/ECMAScriptModuleCompiler.ts index 23d2bba38..ccd30a74a 100644 --- a/packages/happy-dom/src/module/ECMAScriptModuleCompiler.ts +++ b/packages/happy-dom/src/module/ECMAScriptModuleCompiler.ts @@ -1,8 +1,8 @@ import BrowserErrorCaptureEnum from '../browser/enums/BrowserErrorCaptureEnum.js'; -import BrowserWindow from '../window/BrowserWindow.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; import WindowBrowserContext from '../window/WindowBrowserContext.js'; -import IECMAScriptModuleCompiledResult from './types/IECMAScriptModuleCompiledResult.js'; -import IECMAScriptModuleImport from './types/IECMAScriptModuleImport.js'; +import type IECMAScriptModuleCompiledResult from './types/IECMAScriptModuleCompiledResult.js'; +import type IECMAScriptModuleImport from './types/IECMAScriptModuleImport.js'; import ModuleURLUtility from './ModuleURLUtility.js'; import * as PropertySymbol from '../PropertySymbol.js'; diff --git a/packages/happy-dom/src/module/JSONModule.ts b/packages/happy-dom/src/module/JSONModule.ts index abd20fe2d..a45ca9eba 100644 --- a/packages/happy-dom/src/module/JSONModule.ts +++ b/packages/happy-dom/src/module/JSONModule.ts @@ -1,7 +1,7 @@ -import BrowserWindow from '../window/BrowserWindow.js'; -import { URL } from 'url'; -import IModule from './types/IModule.js'; -import IModuleInit from './types/IModuleInit.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; +import type { URL } from 'url'; +import type IModule from './types/IModule.js'; +import type IModuleInit from './types/IModuleInit.js'; /** * JSON module. diff --git a/packages/happy-dom/src/module/ModuleFactory.ts b/packages/happy-dom/src/module/ModuleFactory.ts index c5a2b6cd9..ce7dbd34d 100644 --- a/packages/happy-dom/src/module/ModuleFactory.ts +++ b/packages/happy-dom/src/module/ModuleFactory.ts @@ -1,4 +1,4 @@ -import IModule from './types/IModule.js'; +import type IModule from './types/IModule.js'; import * as PropertySymbol from '../PropertySymbol.js'; import CSSModule from './CSSModule.js'; import JSONModule from './JSONModule.js'; @@ -6,10 +6,10 @@ import UnresolvedModule from './UnresolvedModule.js'; import WindowBrowserContext from '../window/WindowBrowserContext.js'; import ResourceFetch from '../fetch/ResourceFetch.js'; import ECMAScriptModule from './ECMAScriptModule.js'; -import BrowserWindow from '../window/BrowserWindow.js'; -import IResourceFetchResponse from '../fetch/types/IResourceFetchResponse.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; +import type IResourceFetchResponse from '../fetch/types/IResourceFetchResponse.js'; import ModuleURLUtility from './ModuleURLUtility.js'; -import Location from '../location/Location.js'; +import type Location from '../location/Location.js'; /** * Module factory. @@ -103,7 +103,8 @@ export default class ModuleFactory { window, url: absoluteURL, source: response.content, - sourceURL: response.virtualServerFile || absoluteURLString + sourceURL: response.virtualServerFile || absoluteURLString, + factory: new ModuleFactory(window, absoluteURL) }); break; } diff --git a/packages/happy-dom/src/module/ModuleURLUtility.ts b/packages/happy-dom/src/module/ModuleURLUtility.ts index f7e11bf64..28ca2ae0a 100644 --- a/packages/happy-dom/src/module/ModuleURLUtility.ts +++ b/packages/happy-dom/src/module/ModuleURLUtility.ts @@ -1,11 +1,11 @@ import { URL } from 'url'; import * as PropertySymbol from '../PropertySymbol.js'; -import BrowserWindow from '../window/BrowserWindow.js'; -import Location from '../location/Location.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; +import type Location from '../location/Location.js'; import WindowBrowserContext from '../window/WindowBrowserContext.js'; import Path from 'path'; import FS from 'fs'; -import IResolveNodeModules from './types/IResolveNodeModules.js'; +import type IResolveNodeModules from './types/IResolveNodeModules.js'; const MAIN_FIELDS = ['module', 'main']; const EXTENSIONS = ['.js', '.mjs']; diff --git a/packages/happy-dom/src/module/UnresolvedModule.ts b/packages/happy-dom/src/module/UnresolvedModule.ts index f981e7039..d2eb18128 100644 --- a/packages/happy-dom/src/module/UnresolvedModule.ts +++ b/packages/happy-dom/src/module/UnresolvedModule.ts @@ -1,6 +1,6 @@ -import BrowserWindow from '../window/BrowserWindow.js'; -import { URL } from 'url'; -import IModule from './types/IModule.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; +import type { URL } from 'url'; +import type IModule from './types/IModule.js'; interface IUnresolvedModuleInit { window: BrowserWindow; diff --git a/packages/happy-dom/src/module/types/IECMAScriptModuleCachedResult.ts b/packages/happy-dom/src/module/types/IECMAScriptModuleCachedResult.ts index 11bf1e3c1..fc468169e 100644 --- a/packages/happy-dom/src/module/types/IECMAScriptModuleCachedResult.ts +++ b/packages/happy-dom/src/module/types/IECMAScriptModuleCachedResult.ts @@ -1,4 +1,4 @@ -import IECMAScriptModuleImport from './IECMAScriptModuleImport.js'; +import type IECMAScriptModuleImport from './IECMAScriptModuleImport.js'; /** * ECMAScript module cached compilation result. diff --git a/packages/happy-dom/src/module/types/IECMAScriptModuleCompiledResult.ts b/packages/happy-dom/src/module/types/IECMAScriptModuleCompiledResult.ts index 72aa9feaf..2b5abad93 100644 --- a/packages/happy-dom/src/module/types/IECMAScriptModuleCompiledResult.ts +++ b/packages/happy-dom/src/module/types/IECMAScriptModuleCompiledResult.ts @@ -1,4 +1,4 @@ -import IECMAScriptModuleImport from './IECMAScriptModuleImport.js'; +import type IECMAScriptModuleImport from './IECMAScriptModuleImport.js'; export default interface IECMAScriptModuleCompiledResult { imports: IECMAScriptModuleImport[]; diff --git a/packages/happy-dom/src/module/types/IECMAScriptModuleInit.ts b/packages/happy-dom/src/module/types/IECMAScriptModuleInit.ts index e20defeab..5c1cf9050 100644 --- a/packages/happy-dom/src/module/types/IECMAScriptModuleInit.ts +++ b/packages/happy-dom/src/module/types/IECMAScriptModuleInit.ts @@ -1,8 +1,10 @@ -import IModuleInit from './IModuleInit.js'; +import type ModuleFactory from '../ModuleFactory.js'; +import type IModuleInit from './IModuleInit.js'; /** * ECMAScript module initialization options. */ export default interface IECMAScriptModuleInit extends IModuleInit { + factory: ModuleFactory; sourceURL?: string | null; } diff --git a/packages/happy-dom/src/module/types/IModuleImportMap.ts b/packages/happy-dom/src/module/types/IModuleImportMap.ts index 498398c8a..1fe88b87c 100644 --- a/packages/happy-dom/src/module/types/IModuleImportMap.ts +++ b/packages/happy-dom/src/module/types/IModuleImportMap.ts @@ -1,5 +1,5 @@ -import IModuleImportMapRule from './IModuleImportMapRule.js'; -import IModuleImportMapScope from './IModuleImportMapScope.js'; +import type IModuleImportMapRule from './IModuleImportMapRule.js'; +import type IModuleImportMapScope from './IModuleImportMapScope.js'; /** * @see https://html.spec.whatwg.org/multipage/webappapis.html#import-map diff --git a/packages/happy-dom/src/module/types/IModuleImportMapScope.ts b/packages/happy-dom/src/module/types/IModuleImportMapScope.ts index 5a7ef7547..817f35718 100644 --- a/packages/happy-dom/src/module/types/IModuleImportMapScope.ts +++ b/packages/happy-dom/src/module/types/IModuleImportMapScope.ts @@ -1,4 +1,4 @@ -import IModuleImportMapRule from './IModuleImportMapRule.js'; +import type IModuleImportMapRule from './IModuleImportMapRule.js'; export default interface IModuleImportMapScope { scope: string; diff --git a/packages/happy-dom/src/module/types/IModuleInit.ts b/packages/happy-dom/src/module/types/IModuleInit.ts index 6ef453588..3a73beba2 100644 --- a/packages/happy-dom/src/module/types/IModuleInit.ts +++ b/packages/happy-dom/src/module/types/IModuleInit.ts @@ -1,6 +1,6 @@ -import Location from '../../location/Location.js'; -import BrowserWindow from '../../window/BrowserWindow.js'; -import { URL } from 'url'; +import type Location from '../../location/Location.js'; +import type BrowserWindow from '../../window/BrowserWindow.js'; +import type { URL } from 'url'; /** * Module initialization options. diff --git a/packages/happy-dom/src/mutation-observer/IMutationListener.ts b/packages/happy-dom/src/mutation-observer/IMutationListener.ts index f1f979863..e28f9dcc5 100644 --- a/packages/happy-dom/src/mutation-observer/IMutationListener.ts +++ b/packages/happy-dom/src/mutation-observer/IMutationListener.ts @@ -1,5 +1,5 @@ -import IMutationObserverInit from './IMutationObserverInit.js'; -import MutationRecord from './MutationRecord.js'; +import type IMutationObserverInit from './IMutationObserverInit.js'; +import type MutationRecord from './MutationRecord.js'; export default interface IMutationListener { options: IMutationObserverInit; diff --git a/packages/happy-dom/src/mutation-observer/MutationObserver.ts b/packages/happy-dom/src/mutation-observer/MutationObserver.ts index 58ee0f89f..62c27e583 100644 --- a/packages/happy-dom/src/mutation-observer/MutationObserver.ts +++ b/packages/happy-dom/src/mutation-observer/MutationObserver.ts @@ -1,9 +1,9 @@ import * as PropertySymbol from '../PropertySymbol.js'; -import Node from '../nodes/node/Node.js'; -import BrowserWindow from '../window/BrowserWindow.js'; -import IMutationObserverInit from './IMutationObserverInit.js'; +import type Node from '../nodes/node/Node.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; +import type IMutationObserverInit from './IMutationObserverInit.js'; import MutationObserverListener from './MutationObserverListener.js'; -import MutationRecord from './MutationRecord.js'; +import type MutationRecord from './MutationRecord.js'; /** * The MutationObserver interface provides the ability to watch for changes being made to the DOM tree. diff --git a/packages/happy-dom/src/mutation-observer/MutationObserverListener.ts b/packages/happy-dom/src/mutation-observer/MutationObserverListener.ts index 8259044b6..68d57de51 100644 --- a/packages/happy-dom/src/mutation-observer/MutationObserverListener.ts +++ b/packages/happy-dom/src/mutation-observer/MutationObserverListener.ts @@ -1,9 +1,9 @@ -import IMutationObserverInit from './IMutationObserverInit.js'; -import MutationObserver from './MutationObserver.js'; -import MutationRecord from './MutationRecord.js'; -import Node from '../nodes/node/Node.js'; -import BrowserWindow from '../window/BrowserWindow.js'; -import IMutationListener from './IMutationListener.js'; +import type IMutationObserverInit from './IMutationObserverInit.js'; +import type MutationObserver from './MutationObserver.js'; +import type MutationRecord from './MutationRecord.js'; +import type Node from '../nodes/node/Node.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; +import type IMutationListener from './IMutationListener.js'; /** * Mutation Observer Listener. diff --git a/packages/happy-dom/src/mutation-observer/MutationRecord.ts b/packages/happy-dom/src/mutation-observer/MutationRecord.ts index 15f873396..b8eb0e498 100644 --- a/packages/happy-dom/src/mutation-observer/MutationRecord.ts +++ b/packages/happy-dom/src/mutation-observer/MutationRecord.ts @@ -1,5 +1,5 @@ -import Node from '../nodes/node/Node.js'; -import MutationTypeEnum from './MutationTypeEnum.js'; +import type Node from '../nodes/node/Node.js'; +import type MutationTypeEnum from './MutationTypeEnum.js'; /** * MutationRecord is a model for a mutation. diff --git a/packages/happy-dom/src/navigator/MimeType.ts b/packages/happy-dom/src/navigator/MimeType.ts index 43b6e46c0..29052acd8 100644 --- a/packages/happy-dom/src/navigator/MimeType.ts +++ b/packages/happy-dom/src/navigator/MimeType.ts @@ -1,4 +1,4 @@ -import Plugin from './Plugin.js'; +import type Plugin from './Plugin.js'; /** * MimeType. diff --git a/packages/happy-dom/src/navigator/Navigator.ts b/packages/happy-dom/src/navigator/Navigator.ts index 641a7d9cd..2d785237c 100644 --- a/packages/happy-dom/src/navigator/Navigator.ts +++ b/packages/happy-dom/src/navigator/Navigator.ts @@ -1,11 +1,11 @@ import MimeTypeArray from './MimeTypeArray.js'; import PluginArray from './PluginArray.js'; -import BrowserWindow from '../window/BrowserWindow.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; import Permissions from '../permissions/Permissions.js'; import Clipboard from '../clipboard/Clipboard.js'; import WindowBrowserContext from '../window/WindowBrowserContext.js'; -import Blob from '../file/Blob.js'; -import FormData from '../form-data/FormData.js'; +import type Blob from '../file/Blob.js'; +import type FormData from '../form-data/FormData.js'; /** * Browser Navigator API. diff --git a/packages/happy-dom/src/nodes/NodeFactory.ts b/packages/happy-dom/src/nodes/NodeFactory.ts index 3e92e093f..2b4604b41 100644 --- a/packages/happy-dom/src/nodes/NodeFactory.ts +++ b/packages/happy-dom/src/nodes/NodeFactory.ts @@ -1,5 +1,5 @@ -import Document from '../nodes/document/Document.js'; -import Node from './node/Node.js'; +import type Document from '../nodes/document/Document.js'; +import type Node from './node/Node.js'; import * as PropertySymbol from '../PropertySymbol.js'; /** diff --git a/packages/happy-dom/src/nodes/attr/Attr.ts b/packages/happy-dom/src/nodes/attr/Attr.ts index 213d16c1e..b9e4c205c 100644 --- a/packages/happy-dom/src/nodes/attr/Attr.ts +++ b/packages/happy-dom/src/nodes/attr/Attr.ts @@ -1,4 +1,4 @@ -import Element from '../element/Element.js'; +import type Element from '../element/Element.js'; import Node from '../node/Node.js'; import * as PropertySymbol from '../../PropertySymbol.js'; import NodeTypeEnum from '../node/NodeTypeEnum.js'; diff --git a/packages/happy-dom/src/nodes/character-data/CharacterData.ts b/packages/happy-dom/src/nodes/character-data/CharacterData.ts index 9b2f27cb7..08ccd61d4 100644 --- a/packages/happy-dom/src/nodes/character-data/CharacterData.ts +++ b/packages/happy-dom/src/nodes/character-data/CharacterData.ts @@ -1,13 +1,13 @@ import Node from '../node/Node.js'; import * as PropertySymbol from '../../PropertySymbol.js'; import CharacterDataUtility from './CharacterDataUtility.js'; -import Element from '../element/Element.js'; +import type Element from '../element/Element.js'; import NonDocumentChildNodeUtility from '../child-node/NonDocumentChildNodeUtility.js'; import ChildNodeUtility from '../child-node/ChildNodeUtility.js'; import MutationRecord from '../../mutation-observer/MutationRecord.js'; import MutationTypeEnum from '../../mutation-observer/MutationTypeEnum.js'; -import IChildNode from '../child-node/IChildNode.js'; -import INonDocumentTypeChildNode from '../child-node/INonDocumentTypeChildNode.js'; +import type IChildNode from '../child-node/IChildNode.js'; +import type INonDocumentTypeChildNode from '../child-node/INonDocumentTypeChildNode.js'; /** * Character data base class. diff --git a/packages/happy-dom/src/nodes/character-data/CharacterDataUtility.ts b/packages/happy-dom/src/nodes/character-data/CharacterDataUtility.ts index 726318054..9a70143ea 100644 --- a/packages/happy-dom/src/nodes/character-data/CharacterDataUtility.ts +++ b/packages/happy-dom/src/nodes/character-data/CharacterDataUtility.ts @@ -1,4 +1,4 @@ -import CharacterData from './CharacterData.js'; +import type CharacterData from './CharacterData.js'; /** * Child node utility. diff --git a/packages/happy-dom/src/nodes/child-node/ChildNodeUtility.ts b/packages/happy-dom/src/nodes/child-node/ChildNodeUtility.ts index 905a81890..7f6a442f6 100644 --- a/packages/happy-dom/src/nodes/child-node/ChildNodeUtility.ts +++ b/packages/happy-dom/src/nodes/child-node/ChildNodeUtility.ts @@ -1,8 +1,8 @@ import DOMException from '../../exception/DOMException.js'; import * as PropertySymbol from '../../PropertySymbol.js'; import Node from '../node/Node.js'; -import IParentNode from '../parent-node/IParentNode.js'; -import IChildNode from './IChildNode.js'; +import type IParentNode from '../parent-node/IParentNode.js'; +import type IChildNode from './IChildNode.js'; /** * Child node utility. diff --git a/packages/happy-dom/src/nodes/child-node/IChildNode.ts b/packages/happy-dom/src/nodes/child-node/IChildNode.ts index e212c0d57..b576fad43 100644 --- a/packages/happy-dom/src/nodes/child-node/IChildNode.ts +++ b/packages/happy-dom/src/nodes/child-node/IChildNode.ts @@ -1,4 +1,4 @@ -import Node from '../node/Node.js'; +import type Node from '../node/Node.js'; export default interface IChildNode extends Node { /** diff --git a/packages/happy-dom/src/nodes/child-node/INonDocumentTypeChildNode.ts b/packages/happy-dom/src/nodes/child-node/INonDocumentTypeChildNode.ts index 3c0ef1a30..831376d56 100644 --- a/packages/happy-dom/src/nodes/child-node/INonDocumentTypeChildNode.ts +++ b/packages/happy-dom/src/nodes/child-node/INonDocumentTypeChildNode.ts @@ -1,5 +1,5 @@ -import Element from '../element/Element.js'; -import Node from '../node/Node.js'; +import type Element from '../element/Element.js'; +import type Node from '../node/Node.js'; export default interface INonDocumentTypeChildNode extends Node { readonly previousElementSibling: Element; diff --git a/packages/happy-dom/src/nodes/child-node/NonDocumentChildNodeUtility.ts b/packages/happy-dom/src/nodes/child-node/NonDocumentChildNodeUtility.ts index 1de8529c3..22f64bfc7 100644 --- a/packages/happy-dom/src/nodes/child-node/NonDocumentChildNodeUtility.ts +++ b/packages/happy-dom/src/nodes/child-node/NonDocumentChildNodeUtility.ts @@ -1,6 +1,6 @@ -import Element from '../element/Element.js'; +import type Element from '../element/Element.js'; import NodeTypeEnum from '../node/NodeTypeEnum.js'; -import INonDocumentTypeChildNode from './INonDocumentTypeChildNode.js'; +import type INonDocumentTypeChildNode from './INonDocumentTypeChildNode.js'; import * as PropertySymbol from '../../PropertySymbol.js'; /** diff --git a/packages/happy-dom/src/nodes/document-fragment/DocumentFragment.ts b/packages/happy-dom/src/nodes/document-fragment/DocumentFragment.ts index ed45c25e8..cc34356e9 100644 --- a/packages/happy-dom/src/nodes/document-fragment/DocumentFragment.ts +++ b/packages/happy-dom/src/nodes/document-fragment/DocumentFragment.ts @@ -1,13 +1,13 @@ import Node from '../node/Node.js'; import * as PropertySymbol from '../../PropertySymbol.js'; -import Element from '../element/Element.js'; +import type Element from '../element/Element.js'; import QuerySelector from '../../query-selector/QuerySelector.js'; import ParentNodeUtility from '../parent-node/ParentNodeUtility.js'; import HTMLCollection from '../element/HTMLCollection.js'; import NodeTypeEnum from '../node/NodeTypeEnum.js'; -import IHTMLElementTagNameMap from '../../config/IHTMLElementTagNameMap.js'; -import ISVGElementTagNameMap from '../../config/ISVGElementTagNameMap.js'; -import NodeList from '../node/NodeList.js'; +import type IHTMLElementTagNameMap from '../../config/IHTMLElementTagNameMap.js'; +import type ISVGElementTagNameMap from '../../config/ISVGElementTagNameMap.js'; +import type NodeList from '../node/NodeList.js'; /** * DocumentFragment. diff --git a/packages/happy-dom/src/nodes/document/Document.ts b/packages/happy-dom/src/nodes/document/Document.ts index c9cfe0429..85ee510c3 100644 --- a/packages/happy-dom/src/nodes/document/Document.ts +++ b/packages/happy-dom/src/nodes/document/Document.ts @@ -1,57 +1,57 @@ import Element from '../element/Element.js'; import * as PropertySymbol from '../../PropertySymbol.js'; -import BrowserWindow from '../../window/BrowserWindow.js'; +import type BrowserWindow from '../../window/BrowserWindow.js'; import Node from '../node/Node.js'; import NodeIterator from '../../tree-walker/NodeIterator.js'; import TreeWalker from '../../tree-walker/TreeWalker.js'; -import DocumentFragment from '../document-fragment/DocumentFragment.js'; +import type DocumentFragment from '../document-fragment/DocumentFragment.js'; import Event from '../../event/Event.js'; import DOMImplementation from '../../dom-implementation/DOMImplementation.js'; -import INodeFilter from '../../tree-walker/INodeFilter.js'; +import type { TNodeFilter } from '../../tree-walker/TNodeFilter.js'; import NamespaceURI from '../../config/NamespaceURI.js'; import DocumentType from '../document-type/DocumentType.js'; import ParentNodeUtility from '../parent-node/ParentNodeUtility.js'; import QuerySelector from '../../query-selector/QuerySelector.js'; -import CSSStyleSheet from '../../css/CSSStyleSheet.js'; -import HTMLScriptElement from '../html-script-element/HTMLScriptElement.js'; -import HTMLElement from '../html-element/HTMLElement.js'; -import Comment from '../comment/Comment.js'; -import Text from '../text/Text.js'; -import NodeList from '../node/NodeList.js'; +import type CSSStyleSheet from '../../css/CSSStyleSheet.js'; +import type HTMLScriptElement from '../html-script-element/HTMLScriptElement.js'; +import type HTMLElement from '../html-element/HTMLElement.js'; +import type Comment from '../comment/Comment.js'; +import type Text from '../text/Text.js'; +import type NodeList from '../node/NodeList.js'; import HTMLCollection from '../element/HTMLCollection.js'; -import HTMLLinkElement from '../html-link-element/HTMLLinkElement.js'; -import HTMLStyleElement from '../html-style-element/HTMLStyleElement.js'; +import type HTMLLinkElement from '../html-link-element/HTMLLinkElement.js'; +import type HTMLStyleElement from '../html-style-element/HTMLStyleElement.js'; import DocumentReadyStateEnum from './DocumentReadyStateEnum.js'; -import Location from '../../location/Location.js'; +import type Location from '../../location/Location.js'; import Selection from '../../selection/Selection.js'; -import ShadowRoot from '../shadow-root/ShadowRoot.js'; -import Range from '../../range/Range.js'; -import Attr from '../attr/Attr.js'; -import ProcessingInstruction from '../processing-instruction/ProcessingInstruction.js'; +import type ShadowRoot from '../shadow-root/ShadowRoot.js'; +import type Range from '../../range/Range.js'; +import type Attr from '../attr/Attr.js'; +import type ProcessingInstruction from '../processing-instruction/ProcessingInstruction.js'; import VisibilityStateEnum from './VisibilityStateEnum.js'; import NodeTypeEnum from '../node/NodeTypeEnum.js'; import CookieStringUtility from '../../cookie/urilities/CookieStringUtility.js'; -import { URL } from 'url'; -import IHTMLElementTagNameMap from '../../config/IHTMLElementTagNameMap.js'; -import ISVGElementTagNameMap from '../../config/ISVGElementTagNameMap.js'; -import SVGElement from '../svg-element/SVGElement.js'; -import HTMLFormElement from '../html-form-element/HTMLFormElement.js'; -import HTMLAnchorElement from '../html-anchor-element/HTMLAnchorElement.js'; +import type { URL } from 'url'; +import type IHTMLElementTagNameMap from '../../config/IHTMLElementTagNameMap.js'; +import type ISVGElementTagNameMap from '../../config/ISVGElementTagNameMap.js'; +import type SVGElement from '../svg-element/SVGElement.js'; +import type HTMLFormElement from '../html-form-element/HTMLFormElement.js'; +import type HTMLAnchorElement from '../html-anchor-element/HTMLAnchorElement.js'; import HTMLElementConfig from '../../config/HTMLElementConfig.js'; -import HTMLHtmlElement from '../html-html-element/HTMLHtmlElement.js'; -import HTMLBodyElement from '../html-body-element/HTMLBodyElement.js'; -import HTMLHeadElement from '../html-head-element/HTMLHeadElement.js'; -import HTMLBaseElement from '../html-base-element/HTMLBaseElement.js'; -import HTMLTitleElement from '../html-title-element/HTMLTitleElement.js'; +import type HTMLHtmlElement from '../html-html-element/HTMLHtmlElement.js'; +import type HTMLBodyElement from '../html-body-element/HTMLBodyElement.js'; +import type HTMLHeadElement from '../html-head-element/HTMLHeadElement.js'; +import type HTMLBaseElement from '../html-base-element/HTMLBaseElement.js'; +import type HTMLTitleElement from '../html-title-element/HTMLTitleElement.js'; import WindowBrowserContext from '../../window/WindowBrowserContext.js'; import NodeFactory from '../NodeFactory.js'; import SVGElementConfig from '../../config/SVGElementConfig.js'; import StringUtility from '../../utilities/StringUtility.js'; import HTMLParser from '../../html-parser/HTMLParser.js'; -import PreloadEntry from '../../fetch/preload/PreloadEntry.js'; +import type PreloadEntry from '../../fetch/preload/PreloadEntry.js'; import DOMExceptionNameEnum from '../../exception/DOMExceptionNameEnum.js'; -import SVGScriptElement from '../svg-script-element/SVGScriptElement.js'; -import ICachedComputedStyleResult from '../node/ICachedComputedStyleResult.js'; +import type SVGScriptElement from '../svg-script-element/SVGScriptElement.js'; +import type ICachedComputedStyleResult from '../node/ICachedComputedStyleResult.js'; const PROCESSING_INSTRUCTION_TARGET_REGEXP = /^[a-z][a-z0-9-]+$/; @@ -1305,10 +1305,7 @@ export default class Document extends Node { this[PropertySymbol.activeElement] = null; } - if ( - this[PropertySymbol.activeElement] && - this[PropertySymbol.activeElement] instanceof Element - ) { + if (this[PropertySymbol.activeElement]) { let rootNode: ShadowRoot | Document = ( this[PropertySymbol.activeElement].getRootNode() ); @@ -2009,7 +2006,7 @@ export default class Document extends Node { public createNodeIterator( root: Node, whatToShow = -1, - filter: INodeFilter | null = null + filter: TNodeFilter | null = null ): NodeIterator { return new NodeIterator(root, whatToShow, filter); } @@ -2024,7 +2021,7 @@ export default class Document extends Node { public createTreeWalker( root: Node, whatToShow = -1, - filter: INodeFilter | null = null + filter: TNodeFilter | null = null ): TreeWalker { return new TreeWalker(root, whatToShow, filter); } diff --git a/packages/happy-dom/src/nodes/document/DocumentReadyStateManager.ts b/packages/happy-dom/src/nodes/document/DocumentReadyStateManager.ts index f6438db43..6def625e6 100644 --- a/packages/happy-dom/src/nodes/document/DocumentReadyStateManager.ts +++ b/packages/happy-dom/src/nodes/document/DocumentReadyStateManager.ts @@ -1,5 +1,5 @@ import AsyncTaskManager from '../../async-task-manager/AsyncTaskManager.js'; -import IBrowserFrame from '../../browser/types/IBrowserFrame.js'; +import type IBrowserFrame from '../../browser/types/IBrowserFrame.js'; /** * Document ready state manager. diff --git a/packages/happy-dom/src/nodes/element/Element.ts b/packages/happy-dom/src/nodes/element/Element.ts index 7e2745a5a..5b2dabc63 100644 --- a/packages/happy-dom/src/nodes/element/Element.ts +++ b/packages/happy-dom/src/nodes/element/Element.ts @@ -1,6 +1,6 @@ import Node from '../node/Node.js'; import * as PropertySymbol from '../../PropertySymbol.js'; -import ShadowRoot from '../shadow-root/ShadowRoot.js'; +import type ShadowRoot from '../shadow-root/ShadowRoot.js'; import DOMRect from '../../dom/DOMRect.js'; import DOMTokenList from '../../dom/DOMTokenList.js'; import QuerySelector from '../../query-selector/QuerySelector.js'; @@ -8,27 +8,27 @@ import ChildNodeUtility from '../child-node/ChildNodeUtility.js'; import ParentNodeUtility from '../parent-node/ParentNodeUtility.js'; import NonDocumentChildNodeUtility from '../child-node/NonDocumentChildNodeUtility.js'; import HTMLCollection from './HTMLCollection.js'; -import Text from '../text/Text.js'; +import type Text from '../text/Text.js'; import DOMRectList from '../../dom/DOMRectList.js'; -import Attr from '../attr/Attr.js'; +import type Attr from '../attr/Attr.js'; import NamedNodeMap from './NamedNodeMap.js'; import Event from '../../event/Event.js'; import NodeTypeEnum from '../node/NodeTypeEnum.js'; -import IHTMLElementTagNameMap from '../../config/IHTMLElementTagNameMap.js'; -import ISVGElementTagNameMap from '../../config/ISVGElementTagNameMap.js'; -import IChildNode from '../child-node/IChildNode.js'; -import INonDocumentTypeChildNode from '../child-node/INonDocumentTypeChildNode.js'; -import IParentNode from '../parent-node/IParentNode.js'; +import type IHTMLElementTagNameMap from '../../config/IHTMLElementTagNameMap.js'; +import type ISVGElementTagNameMap from '../../config/ISVGElementTagNameMap.js'; +import type IChildNode from '../child-node/IChildNode.js'; +import type INonDocumentTypeChildNode from '../child-node/INonDocumentTypeChildNode.js'; +import type IParentNode from '../parent-node/IParentNode.js'; import MutationRecord from '../../mutation-observer/MutationRecord.js'; import MutationTypeEnum from '../../mutation-observer/MutationTypeEnum.js'; import NamespaceURI from '../../config/NamespaceURI.js'; -import NodeList from '../node/NodeList.js'; -import CSSStyleDeclaration from '../../css/declaration/CSSStyleDeclaration.js'; +import type NodeList from '../node/NodeList.js'; +import type CSSStyleDeclaration from '../../css/declaration/CSSStyleDeclaration.js'; import NamedNodeMapProxyFactory from './NamedNodeMapProxyFactory.js'; import NodeFactory from '../NodeFactory.js'; import HTMLSerializer from '../../html-serializer/HTMLSerializer.js'; import HTMLParser from '../../html-parser/HTMLParser.js'; -import IScrollToOptions from '../../window/IScrollToOptions.js'; +import type IScrollToOptions from '../../window/IScrollToOptions.js'; import { AttributeUtility } from '../../utilities/AttributeUtility.js'; import DOMExceptionNameEnum from '../../exception/DOMExceptionNameEnum.js'; import ElementEventAttributeUtility from './ElementEventAttributeUtility.js'; diff --git a/packages/happy-dom/src/nodes/element/ElementEventAttributeUtility.ts b/packages/happy-dom/src/nodes/element/ElementEventAttributeUtility.ts index d2a0de9c4..fa6a60b37 100644 --- a/packages/happy-dom/src/nodes/element/ElementEventAttributeUtility.ts +++ b/packages/happy-dom/src/nodes/element/ElementEventAttributeUtility.ts @@ -1,8 +1,8 @@ import BrowserErrorCaptureEnum from '../../browser/enums/BrowserErrorCaptureEnum.js'; import WindowBrowserContext from '../../window/WindowBrowserContext.js'; import * as PropertySymbol from '../../PropertySymbol.js'; -import Event from '../../event/Event.js'; -import Element from './Element.js'; +import type Event from '../../event/Event.js'; +import type Element from './Element.js'; /** * ECMAScript module compiler. diff --git a/packages/happy-dom/src/nodes/element/HTMLCollection.ts b/packages/happy-dom/src/nodes/element/HTMLCollection.ts index 991542792..53f2a23cb 100644 --- a/packages/happy-dom/src/nodes/element/HTMLCollection.ts +++ b/packages/happy-dom/src/nodes/element/HTMLCollection.ts @@ -1,6 +1,6 @@ import ClassMethodBinder from '../../utilities/ClassMethodBinder.js'; import * as PropertySymbol from '../../PropertySymbol.js'; -import Element from './Element.js'; +import type Element from './Element.js'; /** * HTMLCollection. diff --git a/packages/happy-dom/src/nodes/element/NamedNodeMap.ts b/packages/happy-dom/src/nodes/element/NamedNodeMap.ts index 8b5d3c85a..191505961 100644 --- a/packages/happy-dom/src/nodes/element/NamedNodeMap.ts +++ b/packages/happy-dom/src/nodes/element/NamedNodeMap.ts @@ -1,7 +1,7 @@ import * as PropertySymbol from '../../PropertySymbol.js'; import Attr from '../attr/Attr.js'; import DOMExceptionNameEnum from '../../exception/DOMExceptionNameEnum.js'; -import Element from './Element.js'; +import type Element from './Element.js'; import NamespaceURI from '../../config/NamespaceURI.js'; import StringUtility from '../../utilities/StringUtility.js'; diff --git a/packages/happy-dom/src/nodes/element/THTMLCollectionListener.ts b/packages/happy-dom/src/nodes/element/THTMLCollectionListener.ts index 9c4f6736c..ad43fbb35 100644 --- a/packages/happy-dom/src/nodes/element/THTMLCollectionListener.ts +++ b/packages/happy-dom/src/nodes/element/THTMLCollectionListener.ts @@ -1,7 +1,6 @@ -type THTMLCollectionListener = (details: { +export type THTMLCollectionListener = (details: { index?: number; item?: T; propertyName?: string; propertyValue?: any; }) => void; -export default THTMLCollectionListener; diff --git a/packages/happy-dom/src/nodes/element/TNamedNodeMapListener.ts b/packages/happy-dom/src/nodes/element/TNamedNodeMapListener.ts index d3238a879..047e47e33 100644 --- a/packages/happy-dom/src/nodes/element/TNamedNodeMapListener.ts +++ b/packages/happy-dom/src/nodes/element/TNamedNodeMapListener.ts @@ -1,4 +1,3 @@ -import Attr from '../attr/Attr.js'; +import type Attr from '../attr/Attr.js'; -type TNamedNodeMapListener = (attribute: Attr, replacedAttribute?: Attr | null) => void; -export default TNamedNodeMapListener; +export type TNamedNodeMapListener = (attribute: Attr, replacedAttribute?: Attr | null) => void; diff --git a/packages/happy-dom/src/nodes/html-anchor-element/HTMLAnchorElement.ts b/packages/happy-dom/src/nodes/html-anchor-element/HTMLAnchorElement.ts index 49185cb21..80edb182b 100644 --- a/packages/happy-dom/src/nodes/html-anchor-element/HTMLAnchorElement.ts +++ b/packages/happy-dom/src/nodes/html-anchor-element/HTMLAnchorElement.ts @@ -1,10 +1,10 @@ import HTMLElement from '../html-element/HTMLElement.js'; import * as PropertySymbol from '../../PropertySymbol.js'; import DOMTokenList from '../../dom/DOMTokenList.js'; -import Event from '../../event/Event.js'; +import type Event from '../../event/Event.js'; import EventPhaseEnum from '../../event/EventPhaseEnum.js'; import HTMLHyperlinkElementUtility from '../html-hyperlink-element/HTMLHyperlinkElementUtility.js'; -import IHTMLHyperlinkElement from '../html-hyperlink-element/IHTMLHyperlinkElement.js'; +import type IHTMLHyperlinkElement from '../html-hyperlink-element/IHTMLHyperlinkElement.js'; import MouseEvent from '../../event/events/MouseEvent.js'; /** diff --git a/packages/happy-dom/src/nodes/html-area-element/HTMLAreaElement.ts b/packages/happy-dom/src/nodes/html-area-element/HTMLAreaElement.ts index acde3dccf..fc62a8b5a 100644 --- a/packages/happy-dom/src/nodes/html-area-element/HTMLAreaElement.ts +++ b/packages/happy-dom/src/nodes/html-area-element/HTMLAreaElement.ts @@ -2,8 +2,8 @@ import HTMLElement from '../html-element/HTMLElement.js'; import * as PropertySymbol from '../../PropertySymbol.js'; import DOMTokenList from '../../dom/DOMTokenList.js'; import HTMLHyperlinkElementUtility from '../html-hyperlink-element/HTMLHyperlinkElementUtility.js'; -import IHTMLHyperlinkElement from '../html-hyperlink-element/IHTMLHyperlinkElement.js'; -import Event from '../../event/Event.js'; +import type IHTMLHyperlinkElement from '../html-hyperlink-element/IHTMLHyperlinkElement.js'; +import type Event from '../../event/Event.js'; import EventPhaseEnum from '../../event/EventPhaseEnum.js'; import MouseEvent from '../../event/events/MouseEvent.js'; diff --git a/packages/happy-dom/src/nodes/html-body-element/HTMLBodyElement.ts b/packages/happy-dom/src/nodes/html-body-element/HTMLBodyElement.ts index f8d93782d..43688e1b9 100644 --- a/packages/happy-dom/src/nodes/html-body-element/HTMLBodyElement.ts +++ b/packages/happy-dom/src/nodes/html-body-element/HTMLBodyElement.ts @@ -1,4 +1,4 @@ -import Event from '../../event/Event.js'; +import type Event from '../../event/Event.js'; import ElementEventAttributeUtility from '../element/ElementEventAttributeUtility.js'; import HTMLElement from '../html-element/HTMLElement.js'; import * as PropertySymbol from '../../PropertySymbol.js'; diff --git a/packages/happy-dom/src/nodes/html-button-element/HTMLButtonElement.ts b/packages/happy-dom/src/nodes/html-button-element/HTMLButtonElement.ts index 9127dce00..369a0b860 100644 --- a/packages/happy-dom/src/nodes/html-button-element/HTMLButtonElement.ts +++ b/packages/happy-dom/src/nodes/html-button-element/HTMLButtonElement.ts @@ -3,12 +3,12 @@ import * as PropertySymbol from '../../PropertySymbol.js'; import EventPhaseEnum from '../../event/EventPhaseEnum.js'; import ValidityState from '../../validity-state/ValidityState.js'; import HTMLElement from '../html-element/HTMLElement.js'; -import HTMLFormElement from '../html-form-element/HTMLFormElement.js'; +import type HTMLFormElement from '../html-form-element/HTMLFormElement.js'; import HTMLLabelElementUtility from '../html-label-element/HTMLLabelElementUtility.js'; -import HTMLLabelElement from '../html-label-element/HTMLLabelElement.js'; +import type HTMLLabelElement from '../html-label-element/HTMLLabelElement.js'; import { URL } from 'url'; import MouseEvent from '../../event/events/MouseEvent.js'; -import NodeList from '../node/NodeList.js'; +import type NodeList from '../node/NodeList.js'; const BUTTON_TYPES = ['submit', 'reset', 'button', 'menu']; diff --git a/packages/happy-dom/src/nodes/html-canvas-element/CanvasCaptureMediaStreamTrack.ts b/packages/happy-dom/src/nodes/html-canvas-element/CanvasCaptureMediaStreamTrack.ts index 3d0fa5047..bae760684 100644 --- a/packages/happy-dom/src/nodes/html-canvas-element/CanvasCaptureMediaStreamTrack.ts +++ b/packages/happy-dom/src/nodes/html-canvas-element/CanvasCaptureMediaStreamTrack.ts @@ -1,5 +1,5 @@ import MediaStreamTrack from '../html-media-element/MediaStreamTrack.js'; -import HTMLCanvasElement from './HTMLCanvasElement.js'; +import type HTMLCanvasElement from './HTMLCanvasElement.js'; import * as PropertySymbol from '../../PropertySymbol.js'; /** diff --git a/packages/happy-dom/src/nodes/html-canvas-element/HTMLCanvasElement.ts b/packages/happy-dom/src/nodes/html-canvas-element/HTMLCanvasElement.ts index 1b2e35445..f5c0290c7 100644 --- a/packages/happy-dom/src/nodes/html-canvas-element/HTMLCanvasElement.ts +++ b/packages/happy-dom/src/nodes/html-canvas-element/HTMLCanvasElement.ts @@ -2,8 +2,8 @@ import HTMLElement from '../html-element/HTMLElement.js'; import * as PropertySymbol from '../../PropertySymbol.js'; import Blob from '../../file/Blob.js'; import OffscreenCanvas from './OffscreenCanvas.js'; -import Event from '../../event/Event.js'; -import MediaStream from '../html-media-element/MediaStream.js'; +import type Event from '../../event/Event.js'; +import type MediaStream from '../html-media-element/MediaStream.js'; import ElementEventAttributeUtility from '../element/ElementEventAttributeUtility.js'; const DEVICE_ID = 'S3F/aBCdEfGHIjKlMnOpQRStUvWxYz1234567890+1AbC2DEf2GHi3jK34le+ab12C3+1aBCdEf=='; diff --git a/packages/happy-dom/src/nodes/html-data-list-element/HTMLDataListElement.ts b/packages/happy-dom/src/nodes/html-data-list-element/HTMLDataListElement.ts index 899d2189a..74af444cc 100644 --- a/packages/happy-dom/src/nodes/html-data-list-element/HTMLDataListElement.ts +++ b/packages/happy-dom/src/nodes/html-data-list-element/HTMLDataListElement.ts @@ -1,7 +1,7 @@ import HTMLElement from '../html-element/HTMLElement.js'; import * as PropertySymbol from '../../PropertySymbol.js'; -import HTMLCollection from '../element/HTMLCollection.js'; -import HTMLOptionElement from '../html-option-element/HTMLOptionElement.js'; +import type HTMLCollection from '../element/HTMLCollection.js'; +import type HTMLOptionElement from '../html-option-element/HTMLOptionElement.js'; import ParentNodeUtility from '../parent-node/ParentNodeUtility.js'; /** diff --git a/packages/happy-dom/src/nodes/html-details-element/HTMLDetailsElement.ts b/packages/happy-dom/src/nodes/html-details-element/HTMLDetailsElement.ts index dd64fad19..786a77015 100644 --- a/packages/happy-dom/src/nodes/html-details-element/HTMLDetailsElement.ts +++ b/packages/happy-dom/src/nodes/html-details-element/HTMLDetailsElement.ts @@ -1,11 +1,11 @@ import Event from '../../event/Event.js'; import HTMLElement from '../html-element/HTMLElement.js'; import * as PropertySymbol from '../../PropertySymbol.js'; -import Attr from '../attr/Attr.js'; +import type Attr from '../attr/Attr.js'; import EventPhaseEnum from '../../event/EventPhaseEnum.js'; import MouseEvent from '../../event/events/MouseEvent.js'; import ElementEventAttributeUtility from '../element/ElementEventAttributeUtility.js'; -import Element from '../element/Element.js'; +import type Element from '../element/Element.js'; /** * HTMLDetailsElement diff --git a/packages/happy-dom/src/nodes/html-document/HTMLDocument.ts b/packages/happy-dom/src/nodes/html-document/HTMLDocument.ts index d8befbdcb..ea5be7d66 100644 --- a/packages/happy-dom/src/nodes/html-document/HTMLDocument.ts +++ b/packages/happy-dom/src/nodes/html-document/HTMLDocument.ts @@ -1,6 +1,6 @@ import Document from '../document/Document.js'; import * as PropertySymbol from '../../PropertySymbol.js'; -import Node from '../node/Node.js'; +import type Node from '../node/Node.js'; import NodeTypeEnum from '../node/NodeTypeEnum.js'; /** diff --git a/packages/happy-dom/src/nodes/html-element/HTMLElement.ts b/packages/happy-dom/src/nodes/html-element/HTMLElement.ts index 8aab998a0..aa9dd0d64 100644 --- a/packages/happy-dom/src/nodes/html-element/HTMLElement.ts +++ b/packages/happy-dom/src/nodes/html-element/HTMLElement.ts @@ -3,10 +3,10 @@ import * as PropertySymbol from '../../PropertySymbol.js'; import CSSStyleDeclaration from '../../css/declaration/CSSStyleDeclaration.js'; import PointerEvent from '../../event/events/PointerEvent.js'; import NodeTypeEnum from '../node/NodeTypeEnum.js'; -import Event from '../../event/Event.js'; +import type Event from '../../event/Event.js'; import HTMLElementUtility from './HTMLElementUtility.js'; import DOMStringMap from '../../dom/DOMStringMap.js'; -import Attr from '../attr/Attr.js'; +import type Attr from '../attr/Attr.js'; import ElementEventAttributeUtility from '../element/ElementEventAttributeUtility.js'; /** diff --git a/packages/happy-dom/src/nodes/html-element/HTMLElementUtility.ts b/packages/happy-dom/src/nodes/html-element/HTMLElementUtility.ts index 1db122bd6..a8ae63af5 100644 --- a/packages/happy-dom/src/nodes/html-element/HTMLElementUtility.ts +++ b/packages/happy-dom/src/nodes/html-element/HTMLElementUtility.ts @@ -1,7 +1,7 @@ import FocusEvent from '../../event/events/FocusEvent.js'; import * as PropertySymbol from '../../PropertySymbol.js'; -import HTMLElement from '../html-element/HTMLElement.js'; -import SVGElement from '../svg-element/SVGElement.js'; +import type HTMLElement from '../html-element/HTMLElement.js'; +import type SVGElement from '../svg-element/SVGElement.js'; /** * HTMLElement utility. diff --git a/packages/happy-dom/src/nodes/html-field-set-element/HTMLFieldSetElement.ts b/packages/happy-dom/src/nodes/html-field-set-element/HTMLFieldSetElement.ts index 4283cb27c..487694e5e 100644 --- a/packages/happy-dom/src/nodes/html-field-set-element/HTMLFieldSetElement.ts +++ b/packages/happy-dom/src/nodes/html-field-set-element/HTMLFieldSetElement.ts @@ -1,11 +1,11 @@ import HTMLElement from '../html-element/HTMLElement.js'; import * as PropertySymbol from '../../PropertySymbol.js'; import HTMLCollection from '../element/HTMLCollection.js'; -import HTMLInputElement from '../html-input-element/HTMLInputElement.js'; -import HTMLTextAreaElement from '../html-text-area-element/HTMLTextAreaElement.js'; -import HTMLSelectElement from '../html-select-element/HTMLSelectElement.js'; -import HTMLButtonElement from '../html-button-element/HTMLButtonElement.js'; -import HTMLFormElement from '../html-form-element/HTMLFormElement.js'; +import type HTMLInputElement from '../html-input-element/HTMLInputElement.js'; +import type HTMLTextAreaElement from '../html-text-area-element/HTMLTextAreaElement.js'; +import type HTMLSelectElement from '../html-select-element/HTMLSelectElement.js'; +import type HTMLButtonElement from '../html-button-element/HTMLButtonElement.js'; +import type HTMLFormElement from '../html-form-element/HTMLFormElement.js'; import QuerySelector from '../../query-selector/QuerySelector.js'; type THTMLFieldSetElement = diff --git a/packages/happy-dom/src/nodes/html-form-element/HTMLFormControlsCollection.ts b/packages/happy-dom/src/nodes/html-form-element/HTMLFormControlsCollection.ts index aa03624bf..4f1002a06 100644 --- a/packages/happy-dom/src/nodes/html-form-element/HTMLFormControlsCollection.ts +++ b/packages/happy-dom/src/nodes/html-form-element/HTMLFormControlsCollection.ts @@ -1,8 +1,8 @@ import * as PropertySymbol from '../../PropertySymbol.js'; import HTMLCollection from '../element/HTMLCollection.js'; -import HTMLFormElement from './HTMLFormElement.js'; -import RadioNodeList from './RadioNodeList.js'; -import THTMLFormControlElement from './THTMLFormControlElement.js'; +import type HTMLFormElement from './HTMLFormElement.js'; +import type RadioNodeList from './RadioNodeList.js'; +import type { THTMLFormControlElement } from './THTMLFormControlElement.js'; /** * HTMLFormControlsCollection. diff --git a/packages/happy-dom/src/nodes/html-form-element/HTMLFormElement.ts b/packages/happy-dom/src/nodes/html-form-element/HTMLFormElement.ts index 548126594..cad012ee7 100644 --- a/packages/happy-dom/src/nodes/html-form-element/HTMLFormElement.ts +++ b/packages/happy-dom/src/nodes/html-form-element/HTMLFormElement.ts @@ -3,13 +3,13 @@ import * as PropertySymbol from '../../PropertySymbol.js'; import Event from '../../event/Event.js'; import SubmitEvent from '../../event/events/SubmitEvent.js'; import HTMLFormControlsCollection from './HTMLFormControlsCollection.js'; -import HTMLInputElement from '../html-input-element/HTMLInputElement.js'; -import HTMLSelectElement from '../html-select-element/HTMLSelectElement.js'; -import HTMLButtonElement from '../html-button-element/HTMLButtonElement.js'; -import IBrowserFrame from '../../browser/types/IBrowserFrame.js'; +import type HTMLInputElement from '../html-input-element/HTMLInputElement.js'; +import type HTMLSelectElement from '../html-select-element/HTMLSelectElement.js'; +import type HTMLButtonElement from '../html-button-element/HTMLButtonElement.js'; +import type IBrowserFrame from '../../browser/types/IBrowserFrame.js'; import BrowserFrameNavigator from '../../browser/utilities/BrowserFrameNavigator.js'; -import BrowserWindow from '../../window/BrowserWindow.js'; -import THTMLFormControlElement from './THTMLFormControlElement.js'; +import type BrowserWindow from '../../window/BrowserWindow.js'; +import type { THTMLFormControlElement } from './THTMLFormControlElement.js'; import QuerySelector from '../../query-selector/QuerySelector.js'; import RadioNodeList from './RadioNodeList.js'; import WindowBrowserContext from '../../window/WindowBrowserContext.js'; @@ -17,10 +17,10 @@ import ClassMethodBinder from '../../utilities/ClassMethodBinder.js'; import Node from '../node/Node.js'; import Element from '../element/Element.js'; import EventTarget from '../../event/EventTarget.js'; -import HTMLDialogElement from '../html-dialog-element/HTMLDialogElement.js'; +import type HTMLDialogElement from '../html-dialog-element/HTMLDialogElement.js'; import ElementEventAttributeUtility from '../element/ElementEventAttributeUtility.js'; -import HTMLTextAreaElement from '../html-text-area-element/HTMLTextAreaElement.js'; -import HTMLOutputElement from '../html-output-element/HTMLOutputElement.js'; +import type HTMLTextAreaElement from '../html-text-area-element/HTMLTextAreaElement.js'; +import type HTMLOutputElement from '../html-output-element/HTMLOutputElement.js'; /** * HTML Form Element. diff --git a/packages/happy-dom/src/nodes/html-form-element/RadioNodeList.ts b/packages/happy-dom/src/nodes/html-form-element/RadioNodeList.ts index 4f18cce49..5cd45b0db 100644 --- a/packages/happy-dom/src/nodes/html-form-element/RadioNodeList.ts +++ b/packages/happy-dom/src/nodes/html-form-element/RadioNodeList.ts @@ -1,6 +1,6 @@ -import HTMLInputElement from '../html-input-element/HTMLInputElement.js'; +import type HTMLInputElement from '../html-input-element/HTMLInputElement.js'; import NodeList from '../node/NodeList.js'; -import THTMLFormControlElement from './THTMLFormControlElement.js'; +import type { THTMLFormControlElement } from './THTMLFormControlElement.js'; import * as PropertySymbol from '../../PropertySymbol.js'; /** diff --git a/packages/happy-dom/src/nodes/html-form-element/THTMLFormControlElement.ts b/packages/happy-dom/src/nodes/html-form-element/THTMLFormControlElement.ts index b85331a10..1e7d41a82 100644 --- a/packages/happy-dom/src/nodes/html-form-element/THTMLFormControlElement.ts +++ b/packages/happy-dom/src/nodes/html-form-element/THTMLFormControlElement.ts @@ -1,12 +1,12 @@ -import HTMLButtonElement from '../html-button-element/HTMLButtonElement.js'; -import HTMLFieldSetElement from '../html-field-set-element/HTMLFieldSetElement.js'; -import HTMLInputElement from '../html-input-element/HTMLInputElement.js'; -import HTMLObjectElement from '../html-object-element/HTMLObjectElement.js'; -import HTMLOutputElement from '../html-output-element/HTMLOutputElement.js'; -import HTMLSelectElement from '../html-select-element/HTMLSelectElement.js'; -import HTMLTextAreaElement from '../html-text-area-element/HTMLTextAreaElement.js'; +import type HTMLButtonElement from '../html-button-element/HTMLButtonElement.js'; +import type HTMLFieldSetElement from '../html-field-set-element/HTMLFieldSetElement.js'; +import type HTMLInputElement from '../html-input-element/HTMLInputElement.js'; +import type HTMLObjectElement from '../html-object-element/HTMLObjectElement.js'; +import type HTMLOutputElement from '../html-output-element/HTMLOutputElement.js'; +import type HTMLSelectElement from '../html-select-element/HTMLSelectElement.js'; +import type HTMLTextAreaElement from '../html-text-area-element/HTMLTextAreaElement.js'; -type THTMLFormControlElement = +export type THTMLFormControlElement = | HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement @@ -14,5 +14,3 @@ type THTMLFormControlElement = | HTMLFieldSetElement | HTMLObjectElement | HTMLOutputElement; - -export default THTMLFormControlElement; diff --git a/packages/happy-dom/src/nodes/html-hyperlink-element/HTMLHyperlinkElementUtility.ts b/packages/happy-dom/src/nodes/html-hyperlink-element/HTMLHyperlinkElementUtility.ts index 933d9690a..6efe30fa4 100644 --- a/packages/happy-dom/src/nodes/html-hyperlink-element/HTMLHyperlinkElementUtility.ts +++ b/packages/happy-dom/src/nodes/html-hyperlink-element/HTMLHyperlinkElementUtility.ts @@ -1,4 +1,4 @@ -import HTMLElement from '../html-element/HTMLElement.js'; +import type HTMLElement from '../html-element/HTMLElement.js'; import * as PropertySymbol from '../../PropertySymbol.js'; /** diff --git a/packages/happy-dom/src/nodes/html-iframe-element/HTMLIFrameElement.ts b/packages/happy-dom/src/nodes/html-iframe-element/HTMLIFrameElement.ts index a70c4eb83..c73df6c6d 100644 --- a/packages/happy-dom/src/nodes/html-iframe-element/HTMLIFrameElement.ts +++ b/packages/happy-dom/src/nodes/html-iframe-element/HTMLIFrameElement.ts @@ -1,16 +1,16 @@ import Event from '../../event/Event.js'; import * as PropertySymbol from '../../PropertySymbol.js'; -import BrowserWindow from '../../window/BrowserWindow.js'; -import Document from '../document/Document.js'; +import type BrowserWindow from '../../window/BrowserWindow.js'; +import type Document from '../document/Document.js'; import HTMLElement from '../html-element/HTMLElement.js'; import CrossOriginBrowserWindow from '../../window/CrossOriginBrowserWindow.js'; -import IBrowserFrame from '../../browser/types/IBrowserFrame.js'; +import type IBrowserFrame from '../../browser/types/IBrowserFrame.js'; import DOMTokenList from '../../dom/DOMTokenList.js'; -import Attr from '../attr/Attr.js'; +import type Attr from '../attr/Attr.js'; import BrowserFrameFactory from '../../browser/utilities/BrowserFrameFactory.js'; import BrowserFrameURL from '../../browser/utilities/BrowserFrameURL.js'; import DOMExceptionNameEnum from '../../exception/DOMExceptionNameEnum.js'; -import IRequestReferrerPolicy from '../../fetch/types/IRequestReferrerPolicy.js'; +import type { TRequestReferrerPolicy } from '../../fetch/types/TRequestReferrerPolicy.js'; import WindowBrowserContext from '../../window/WindowBrowserContext.js'; import ElementEventAttributeUtility from '../element/ElementEventAttributeUtility.js'; @@ -433,7 +433,7 @@ export default class HTMLIFrameElement extends HTMLElement { this.#iframe .goto(targetURL.href, { referrer: originURL.origin, - referrerPolicy: this.referrerPolicy + referrerPolicy: this.referrerPolicy }) .then(() => this.dispatchEvent(new Event('load'))) .catch((error) => { diff --git a/packages/happy-dom/src/nodes/html-input-element/FileList.ts b/packages/happy-dom/src/nodes/html-input-element/FileList.ts index 102eabf28..914a663e5 100644 --- a/packages/happy-dom/src/nodes/html-input-element/FileList.ts +++ b/packages/happy-dom/src/nodes/html-input-element/FileList.ts @@ -1,4 +1,4 @@ -import File from '../../file/File.js'; +import type File from '../../file/File.js'; /** * FileList. diff --git a/packages/happy-dom/src/nodes/html-input-element/HTMLInputElement.ts b/packages/happy-dom/src/nodes/html-input-element/HTMLInputElement.ts index d1dc2029e..f574e7b2c 100644 --- a/packages/happy-dom/src/nodes/html-input-element/HTMLInputElement.ts +++ b/packages/happy-dom/src/nodes/html-input-element/HTMLInputElement.ts @@ -6,19 +6,19 @@ import Event from '../../event/Event.js'; import HTMLInputElementValueSanitizer from './HTMLInputElementValueSanitizer.js'; import HTMLInputElementSelectionModeEnum from './HTMLInputElementSelectionModeEnum.js'; import HTMLInputElementSelectionDirectionEnum from './HTMLInputElementSelectionDirectionEnum.js'; -import HTMLFormElement from '../html-form-element/HTMLFormElement.js'; +import type HTMLFormElement from '../html-form-element/HTMLFormElement.js'; import HTMLInputElementValueStepping from './HTMLInputElementValueStepping.js'; import FileList from './FileList.js'; -import HTMLLabelElement from '../html-label-element/HTMLLabelElement.js'; +import type HTMLLabelElement from '../html-label-element/HTMLLabelElement.js'; import EventPhaseEnum from '../../event/EventPhaseEnum.js'; import HTMLInputElementDateUtility from './HTMLInputElementDateUtility.js'; import HTMLLabelElementUtility from '../html-label-element/HTMLLabelElementUtility.js'; -import HTMLDataListElement from '../html-data-list-element/HTMLDataListElement.js'; -import Document from '../document/Document.js'; -import ShadowRoot from '../shadow-root/ShadowRoot.js'; +import type HTMLDataListElement from '../html-data-list-element/HTMLDataListElement.js'; +import type Document from '../document/Document.js'; +import type ShadowRoot from '../shadow-root/ShadowRoot.js'; import { URL } from 'url'; import MouseEvent from '../../event/events/MouseEvent.js'; -import NodeList from '../node/NodeList.js'; +import type NodeList from '../node/NodeList.js'; import ElementEventAttributeUtility from '../element/ElementEventAttributeUtility.js'; /** diff --git a/packages/happy-dom/src/nodes/html-input-element/HTMLInputElementValueSanitizer.ts b/packages/happy-dom/src/nodes/html-input-element/HTMLInputElementValueSanitizer.ts index 9092a30c0..18cc6374d 100644 --- a/packages/happy-dom/src/nodes/html-input-element/HTMLInputElementValueSanitizer.ts +++ b/packages/happy-dom/src/nodes/html-input-element/HTMLInputElementValueSanitizer.ts @@ -1,4 +1,4 @@ -import HTMLInputElement from './HTMLInputElement.js'; +import type HTMLInputElement from './HTMLInputElement.js'; const NEW_LINES_REGEXP = /[\n\r]/gm; const parseInts = (a: string[]): number[] => a.map((v) => parseInt(v, 10)); diff --git a/packages/happy-dom/src/nodes/html-label-element/HTMLLabelElement.ts b/packages/happy-dom/src/nodes/html-label-element/HTMLLabelElement.ts index 302c7d330..42022dcdf 100644 --- a/packages/happy-dom/src/nodes/html-label-element/HTMLLabelElement.ts +++ b/packages/happy-dom/src/nodes/html-label-element/HTMLLabelElement.ts @@ -1,17 +1,17 @@ import HTMLElement from '../html-element/HTMLElement.js'; import * as PropertySymbol from '../../PropertySymbol.js'; -import HTMLFormElement from '../html-form-element/HTMLFormElement.js'; -import Event from '../../event/Event.js'; +import type HTMLFormElement from '../html-form-element/HTMLFormElement.js'; +import type Event from '../../event/Event.js'; import EventPhaseEnum from '../../event/EventPhaseEnum.js'; -import HTMLInputElement from '../html-input-element/HTMLInputElement.js'; -import Document from '../document/Document.js'; +import type HTMLInputElement from '../html-input-element/HTMLInputElement.js'; +import type Document from '../document/Document.js'; import MouseEvent from '../../event/events/MouseEvent.js'; -import HTMLButtonElement from '../html-button-element/HTMLButtonElement.js'; -import HTMLMeterElement from '../html-meter-element/HTMLMeterElement.js'; -import HTMLOutputElement from '../html-output-element/HTMLOutputElement.js'; -import HTMLProgressElement from '../html-progress-element/HTMLProgressElement.js'; -import HTMLSelectElement from '../html-select-element/HTMLSelectElement.js'; -import HTMLTextAreaElement from '../html-text-area-element/HTMLTextAreaElement.js'; +import type HTMLButtonElement from '../html-button-element/HTMLButtonElement.js'; +import type HTMLMeterElement from '../html-meter-element/HTMLMeterElement.js'; +import type HTMLOutputElement from '../html-output-element/HTMLOutputElement.js'; +import type HTMLProgressElement from '../html-progress-element/HTMLProgressElement.js'; +import type HTMLSelectElement from '../html-select-element/HTMLSelectElement.js'; +import type HTMLTextAreaElement from '../html-text-area-element/HTMLTextAreaElement.js'; /** * HTML Label Element. diff --git a/packages/happy-dom/src/nodes/html-label-element/HTMLLabelElementUtility.ts b/packages/happy-dom/src/nodes/html-label-element/HTMLLabelElementUtility.ts index 5ed7458f9..75f0cbae9 100644 --- a/packages/happy-dom/src/nodes/html-label-element/HTMLLabelElementUtility.ts +++ b/packages/happy-dom/src/nodes/html-label-element/HTMLLabelElementUtility.ts @@ -1,10 +1,10 @@ -import Document from '../document/Document.js'; -import HTMLElement from '../html-element/HTMLElement.js'; -import HTMLLabelElement from './HTMLLabelElement.js'; +import type Document from '../document/Document.js'; +import type HTMLElement from '../html-element/HTMLElement.js'; +import type HTMLLabelElement from './HTMLLabelElement.js'; import NodeList from '../node/NodeList.js'; -import ShadowRoot from '../shadow-root/ShadowRoot.js'; +import type ShadowRoot from '../shadow-root/ShadowRoot.js'; import * as PropertySymbol from '../../PropertySymbol.js'; -import Element from '../element/Element.js'; +import type Element from '../element/Element.js'; /** * Utility for finding labels associated with a form element. diff --git a/packages/happy-dom/src/nodes/html-legend-element/HTMLLegendElement.ts b/packages/happy-dom/src/nodes/html-legend-element/HTMLLegendElement.ts index 48e6ec97b..d7121cb73 100644 --- a/packages/happy-dom/src/nodes/html-legend-element/HTMLLegendElement.ts +++ b/packages/happy-dom/src/nodes/html-legend-element/HTMLLegendElement.ts @@ -1,7 +1,7 @@ import HTMLElement from '../html-element/HTMLElement.js'; -import HTMLFormElement from '../html-form-element/HTMLFormElement.js'; +import type HTMLFormElement from '../html-form-element/HTMLFormElement.js'; import HTMLFieldSetElement from '../html-field-set-element/HTMLFieldSetElement.js'; -import Node from '../node/Node.js'; +import type Node from '../node/Node.js'; /** * HTMLLegendElement diff --git a/packages/happy-dom/src/nodes/html-link-element/HTMLLinkElement.ts b/packages/happy-dom/src/nodes/html-link-element/HTMLLinkElement.ts index 089a623e4..ed93a5918 100644 --- a/packages/happy-dom/src/nodes/html-link-element/HTMLLinkElement.ts +++ b/packages/happy-dom/src/nodes/html-link-element/HTMLLinkElement.ts @@ -1,9 +1,9 @@ -import CSSStyleSheet from '../../css/CSSStyleSheet.js'; +import type CSSStyleSheet from '../../css/CSSStyleSheet.js'; import * as PropertySymbol from '../../PropertySymbol.js'; import HTMLElement from '../html-element/HTMLElement.js'; import Event from '../../event/Event.js'; import DOMTokenList from '../../dom/DOMTokenList.js'; -import Attr from '../attr/Attr.js'; +import type Attr from '../attr/Attr.js'; import DOMExceptionNameEnum from '../../exception/DOMExceptionNameEnum.js'; import ResourceFetch from '../../fetch/ResourceFetch.js'; import WindowBrowserContext from '../../window/WindowBrowserContext.js'; @@ -13,7 +13,7 @@ import ModuleFactory from '../../module/ModuleFactory.js'; import PreloadUtility from '../../fetch/preload/PreloadUtility.js'; import PreloadEntry from '../../fetch/preload/PreloadEntry.js'; import ElementEventAttributeUtility from '../element/ElementEventAttributeUtility.js'; -import IResourceFetchResponse from '../../fetch/types/IResourceFetchResponse.js'; +import type IResourceFetchResponse from '../../fetch/types/IResourceFetchResponse.js'; /** * HTML Link Element. diff --git a/packages/happy-dom/src/nodes/html-map-element/HTMLMapElement.ts b/packages/happy-dom/src/nodes/html-map-element/HTMLMapElement.ts index daf876f4a..074f847cb 100644 --- a/packages/happy-dom/src/nodes/html-map-element/HTMLMapElement.ts +++ b/packages/happy-dom/src/nodes/html-map-element/HTMLMapElement.ts @@ -1,7 +1,7 @@ -import HTMLCollection from '../element/HTMLCollection.js'; +import type HTMLCollection from '../element/HTMLCollection.js'; import HTMLElement from '../html-element/HTMLElement.js'; import * as PropertySymbol from '../../PropertySymbol.js'; -import HTMLAreaElement from '../html-area-element/HTMLAreaElement.js'; +import type HTMLAreaElement from '../html-area-element/HTMLAreaElement.js'; import ParentNodeUtility from '../parent-node/ParentNodeUtility.js'; /** diff --git a/packages/happy-dom/src/nodes/html-media-element/HTMLMediaElement.ts b/packages/happy-dom/src/nodes/html-media-element/HTMLMediaElement.ts index d39998be1..7b5284c7f 100644 --- a/packages/happy-dom/src/nodes/html-media-element/HTMLMediaElement.ts +++ b/packages/happy-dom/src/nodes/html-media-element/HTMLMediaElement.ts @@ -3,10 +3,10 @@ import DOMExceptionNameEnum from '../../exception/DOMExceptionNameEnum.js'; import HTMLElement from '../html-element/HTMLElement.js'; import TimeRanges from './TimeRanges.js'; import DOMTokenList from '../../dom/DOMTokenList.js'; -import RemotePlayback from './RemotePlayback.js'; +import type RemotePlayback from './RemotePlayback.js'; import MediaStream from './MediaStream.js'; -import TextTrackList from './TextTrackList.js'; -import TextTrack from './TextTrack.js'; +import type TextTrackList from './TextTrackList.js'; +import type TextTrack from './TextTrack.js'; import TextTrackKindEnum from './TextTrackKindEnum.js'; import * as PropertySymbol from '../../PropertySymbol.js'; import ElementEventAttributeUtility from '../element/ElementEventAttributeUtility.js'; diff --git a/packages/happy-dom/src/nodes/html-media-element/MediaStream.ts b/packages/happy-dom/src/nodes/html-media-element/MediaStream.ts index 84e4c982a..c1acfffff 100644 --- a/packages/happy-dom/src/nodes/html-media-element/MediaStream.ts +++ b/packages/happy-dom/src/nodes/html-media-element/MediaStream.ts @@ -2,7 +2,7 @@ import * as PropertySymbol from '../../PropertySymbol.js'; import Crypto from 'crypto'; import EventTarget from '../../event/EventTarget.js'; import MediaStreamTrackEvent from '../../event/events/MediaStreamTrackEvent.js'; -import MediaStreamTrack from './MediaStreamTrack.js'; +import type MediaStreamTrack from './MediaStreamTrack.js'; /** * MediaStream. diff --git a/packages/happy-dom/src/nodes/html-media-element/MediaStreamTrack.ts b/packages/happy-dom/src/nodes/html-media-element/MediaStreamTrack.ts index 34cf9f40a..12deca32a 100644 --- a/packages/happy-dom/src/nodes/html-media-element/MediaStreamTrack.ts +++ b/packages/happy-dom/src/nodes/html-media-element/MediaStreamTrack.ts @@ -1,9 +1,9 @@ -import Event from '../../event/Event.js'; +import type Event from '../../event/Event.js'; import EventTarget from '../../event/EventTarget.js'; import * as PropertySymbol from '../../PropertySymbol.js'; import Crypto from 'crypto'; -import IMediaTrackCapabilities from './IMediaTrackCapabilities.js'; -import IMediaTrackSettings from './IMediaTrackSettings.js'; +import type IMediaTrackCapabilities from './IMediaTrackCapabilities.js'; +import type IMediaTrackSettings from './IMediaTrackSettings.js'; const CAPABILITIES: IMediaTrackCapabilities = { aspectRatio: { max: 300, diff --git a/packages/happy-dom/src/nodes/html-media-element/TextTrack.ts b/packages/happy-dom/src/nodes/html-media-element/TextTrack.ts index 71a843bd5..2fd80b8b0 100644 --- a/packages/happy-dom/src/nodes/html-media-element/TextTrack.ts +++ b/packages/happy-dom/src/nodes/html-media-element/TextTrack.ts @@ -1,6 +1,6 @@ import EventTarget from '../../event/EventTarget.js'; -import Event from '../../event/Event.js'; -import TextTrackCue from './TextTrackCue.js'; +import type Event from '../../event/Event.js'; +import type TextTrackCue from './TextTrackCue.js'; import TextTrackCueList from './TextTrackCueList.js'; import * as PropertySymbol from '../../PropertySymbol.js'; import TextTrackKindEnum from './TextTrackKindEnum.js'; diff --git a/packages/happy-dom/src/nodes/html-media-element/TextTrackCue.ts b/packages/happy-dom/src/nodes/html-media-element/TextTrackCue.ts index 8e51674a7..2c1f22a9f 100644 --- a/packages/happy-dom/src/nodes/html-media-element/TextTrackCue.ts +++ b/packages/happy-dom/src/nodes/html-media-element/TextTrackCue.ts @@ -1,6 +1,6 @@ import EventTarget from '../../event/EventTarget.js'; -import Event from '../../event/Event.js'; -import TextTrack from './TextTrack.js'; +import type Event from '../../event/Event.js'; +import type TextTrack from './TextTrack.js'; import * as PropertySymbol from '../../PropertySymbol.js'; /** diff --git a/packages/happy-dom/src/nodes/html-media-element/TextTrackCueList.ts b/packages/happy-dom/src/nodes/html-media-element/TextTrackCueList.ts index 0843b3bc4..4c8a0579f 100644 --- a/packages/happy-dom/src/nodes/html-media-element/TextTrackCueList.ts +++ b/packages/happy-dom/src/nodes/html-media-element/TextTrackCueList.ts @@ -1,4 +1,4 @@ -import TextTrackCue from './TextTrackCue.js'; +import type TextTrackCue from './TextTrackCue.js'; import * as PropertySymbol from '../../PropertySymbol.js'; /** diff --git a/packages/happy-dom/src/nodes/html-media-element/VTTCue.ts b/packages/happy-dom/src/nodes/html-media-element/VTTCue.ts index 7036e9ff3..c3febd49e 100644 --- a/packages/happy-dom/src/nodes/html-media-element/VTTCue.ts +++ b/packages/happy-dom/src/nodes/html-media-element/VTTCue.ts @@ -1,6 +1,6 @@ -import DocumentFragment from '../document-fragment/DocumentFragment.js'; +import type DocumentFragment from '../document-fragment/DocumentFragment.js'; import TextTrackCue from './TextTrackCue.js'; -import VTTRegion from './VTTRegion.js'; +import type VTTRegion from './VTTRegion.js'; import * as PropertySymbol from '../../PropertySymbol.js'; /** diff --git a/packages/happy-dom/src/nodes/html-meter-element/HTMLMeterElement.ts b/packages/happy-dom/src/nodes/html-meter-element/HTMLMeterElement.ts index f2ce12440..424de7d09 100644 --- a/packages/happy-dom/src/nodes/html-meter-element/HTMLMeterElement.ts +++ b/packages/happy-dom/src/nodes/html-meter-element/HTMLMeterElement.ts @@ -1,7 +1,7 @@ import HTMLElement from '../html-element/HTMLElement.js'; -import HTMLLabelElement from '../html-label-element/HTMLLabelElement.js'; +import type HTMLLabelElement from '../html-label-element/HTMLLabelElement.js'; import HTMLLabelElementUtility from '../html-label-element/HTMLLabelElementUtility.js'; -import NodeList from '../node/NodeList.js'; +import type NodeList from '../node/NodeList.js'; import * as PropertySymbol from '../../PropertySymbol.js'; /** diff --git a/packages/happy-dom/src/nodes/html-object-element/HTMLObjectElement.ts b/packages/happy-dom/src/nodes/html-object-element/HTMLObjectElement.ts index 8c5d1c7a0..8b2d338e2 100644 --- a/packages/happy-dom/src/nodes/html-object-element/HTMLObjectElement.ts +++ b/packages/happy-dom/src/nodes/html-object-element/HTMLObjectElement.ts @@ -1,8 +1,8 @@ -import BrowserWindow from '../../window/BrowserWindow.js'; -import Document from '../document/Document.js'; +import type BrowserWindow from '../../window/BrowserWindow.js'; +import type Document from '../document/Document.js'; import HTMLElement from '../html-element/HTMLElement.js'; import * as PropertySymbol from '../../PropertySymbol.js'; -import HTMLFormElement from '../html-form-element/HTMLFormElement.js'; +import type HTMLFormElement from '../html-form-element/HTMLFormElement.js'; import ValidityState from '../../validity-state/ValidityState.js'; /** diff --git a/packages/happy-dom/src/nodes/html-option-element/HTMLOptionElement.ts b/packages/happy-dom/src/nodes/html-option-element/HTMLOptionElement.ts index b324e52c9..2576913d8 100644 --- a/packages/happy-dom/src/nodes/html-option-element/HTMLOptionElement.ts +++ b/packages/happy-dom/src/nodes/html-option-element/HTMLOptionElement.ts @@ -1,9 +1,9 @@ import * as PropertySymbol from '../../PropertySymbol.js'; import QuerySelector from '../../query-selector/QuerySelector.js'; -import Attr from '../attr/Attr.js'; +import type Attr from '../attr/Attr.js'; import HTMLElement from '../html-element/HTMLElement.js'; -import HTMLFormElement from '../html-form-element/HTMLFormElement.js'; -import HTMLSelectElement from '../html-select-element/HTMLSelectElement.js'; +import type HTMLFormElement from '../html-form-element/HTMLFormElement.js'; +import type HTMLSelectElement from '../html-select-element/HTMLSelectElement.js'; /** * HTML Option Element. diff --git a/packages/happy-dom/src/nodes/html-output-element/HTMLOutputElement.ts b/packages/happy-dom/src/nodes/html-output-element/HTMLOutputElement.ts index 5b4fac93a..50665c4e2 100644 --- a/packages/happy-dom/src/nodes/html-output-element/HTMLOutputElement.ts +++ b/packages/happy-dom/src/nodes/html-output-element/HTMLOutputElement.ts @@ -1,9 +1,9 @@ import HTMLElement from '../html-element/HTMLElement.js'; import * as PropertySymbol from '../../PropertySymbol.js'; -import HTMLFormElement from '../html-form-element/HTMLFormElement.js'; +import type HTMLFormElement from '../html-form-element/HTMLFormElement.js'; import ValidityState from '../../validity-state/ValidityState.js'; -import NodeList from '../node/NodeList.js'; -import HTMLLabelElement from '../html-label-element/HTMLLabelElement.js'; +import type NodeList from '../node/NodeList.js'; +import type HTMLLabelElement from '../html-label-element/HTMLLabelElement.js'; import HTMLLabelElementUtility from '../html-label-element/HTMLLabelElementUtility.js'; /** diff --git a/packages/happy-dom/src/nodes/html-progress-element/HTMLProgressElement.ts b/packages/happy-dom/src/nodes/html-progress-element/HTMLProgressElement.ts index 96fa9ff9a..c9f10f95d 100644 --- a/packages/happy-dom/src/nodes/html-progress-element/HTMLProgressElement.ts +++ b/packages/happy-dom/src/nodes/html-progress-element/HTMLProgressElement.ts @@ -1,7 +1,7 @@ import HTMLElement from '../html-element/HTMLElement.js'; -import HTMLLabelElement from '../html-label-element/HTMLLabelElement.js'; +import type HTMLLabelElement from '../html-label-element/HTMLLabelElement.js'; import HTMLLabelElementUtility from '../html-label-element/HTMLLabelElementUtility.js'; -import NodeList from '../node/NodeList.js'; +import type NodeList from '../node/NodeList.js'; import * as PropertySymbol from '../../PropertySymbol.js'; /** diff --git a/packages/happy-dom/src/nodes/html-script-element/HTMLScriptElement.ts b/packages/happy-dom/src/nodes/html-script-element/HTMLScriptElement.ts index ac1635cf0..f4396463d 100644 --- a/packages/happy-dom/src/nodes/html-script-element/HTMLScriptElement.ts +++ b/packages/happy-dom/src/nodes/html-script-element/HTMLScriptElement.ts @@ -3,16 +3,16 @@ import * as PropertySymbol from '../../PropertySymbol.js'; import Event from '../../event/Event.js'; import WindowBrowserContext from '../../window/WindowBrowserContext.js'; import BrowserErrorCaptureEnum from '../../browser/enums/BrowserErrorCaptureEnum.js'; -import Attr from '../attr/Attr.js'; +import type Attr from '../attr/Attr.js'; import DOMExceptionNameEnum from '../../exception/DOMExceptionNameEnum.js'; import ResourceFetch from '../../fetch/ResourceFetch.js'; import ECMAScriptModule from '../../module/ECMAScriptModule.js'; import ModuleFactory from '../../module/ModuleFactory.js'; import DOMTokenList from '../../dom/DOMTokenList.js'; -import IModuleImportMap from '../../module/types/IModuleImportMap.js'; -import IRequestReferrerPolicy from '../../fetch/types/IRequestReferrerPolicy.js'; +import type IModuleImportMap from '../../module/types/IModuleImportMap.js'; +import type { TRequestReferrerPolicy } from '../../fetch/types/TRequestReferrerPolicy.js'; import ElementEventAttributeUtility from '../element/ElementEventAttributeUtility.js'; -import IResourceFetchResponse from '../../fetch/types/IResourceFetchResponse.js'; +import type IResourceFetchResponse from '../../fetch/types/IResourceFetchResponse.js'; import JavaScriptCompiler from '../../javascript/JavaScriptCompiler.js'; /** @@ -184,7 +184,7 @@ export default class HTMLScriptElement extends HTMLElement { * * @returns ReferrerPolicy. */ - public get referrerPolicy(): IRequestReferrerPolicy { + public get referrerPolicy(): TRequestReferrerPolicy { const referrerPolicy = this.getAttribute('referrerpolicy'); switch (referrerPolicy) { case 'no-referrer': @@ -422,7 +422,8 @@ export default class HTMLScriptElement extends HTMLElement { this[PropertySymbol.ownerDocument][PropertySymbol.currentScript] = this; - const module = new ECMAScriptModule({ window, url, source }); + const factory = new ModuleFactory(window, url); + const module = new ECMAScriptModule({ window, url, source, factory }); if ( browserSettings.disableErrorCapturing || diff --git a/packages/happy-dom/src/nodes/html-select-element/HTMLOptionsCollection.ts b/packages/happy-dom/src/nodes/html-select-element/HTMLOptionsCollection.ts index 7aa5c8aef..75c83eb3c 100644 --- a/packages/happy-dom/src/nodes/html-select-element/HTMLOptionsCollection.ts +++ b/packages/happy-dom/src/nodes/html-select-element/HTMLOptionsCollection.ts @@ -1,6 +1,6 @@ import HTMLCollection from '../element/HTMLCollection.js'; -import HTMLSelectElement from './HTMLSelectElement.js'; -import HTMLOptionElement from '../html-option-element/HTMLOptionElement.js'; +import type HTMLSelectElement from './HTMLSelectElement.js'; +import type HTMLOptionElement from '../html-option-element/HTMLOptionElement.js'; import * as PropertySymbol from '../../PropertySymbol.js'; import QuerySelector from '../../query-selector/QuerySelector.js'; diff --git a/packages/happy-dom/src/nodes/html-select-element/HTMLSelectElement.ts b/packages/happy-dom/src/nodes/html-select-element/HTMLSelectElement.ts index 91eaf5b1e..f8c4b4ec9 100644 --- a/packages/happy-dom/src/nodes/html-select-element/HTMLSelectElement.ts +++ b/packages/happy-dom/src/nodes/html-select-element/HTMLSelectElement.ts @@ -1,8 +1,8 @@ import HTMLElement from '../html-element/HTMLElement.js'; import * as PropertySymbol from '../../PropertySymbol.js'; -import HTMLFormElement from '../html-form-element/HTMLFormElement.js'; +import type HTMLFormElement from '../html-form-element/HTMLFormElement.js'; import ValidityState from '../../validity-state/ValidityState.js'; -import HTMLLabelElement from '../html-label-element/HTMLLabelElement.js'; +import type HTMLLabelElement from '../html-label-element/HTMLLabelElement.js'; import HTMLOptionElement from '../html-option-element/HTMLOptionElement.js'; import HTMLOptionsCollection from './HTMLOptionsCollection.js'; import Event from '../../event/Event.js'; @@ -10,13 +10,13 @@ import HTMLLabelElementUtility from '../html-label-element/HTMLLabelElementUtili import HTMLCollection from '../element/HTMLCollection.js'; import NodeTypeEnum from '../node/NodeTypeEnum.js'; import QuerySelector from '../../query-selector/QuerySelector.js'; -import NodeList from '../node/NodeList.js'; +import type NodeList from '../node/NodeList.js'; import ClassMethodBinder from '../../utilities/ClassMethodBinder.js'; import Node from '../node/Node.js'; import Element from '../element/Element.js'; import EventTarget from '../../event/EventTarget.js'; import ElementEventAttributeUtility from '../element/ElementEventAttributeUtility.js'; -import BrowserWindow from '../../window/BrowserWindow.js'; +import type BrowserWindow from '../../window/BrowserWindow.js'; /** * HTML Select Element. diff --git a/packages/happy-dom/src/nodes/html-slot-element/HTMLSlotElement.ts b/packages/happy-dom/src/nodes/html-slot-element/HTMLSlotElement.ts index 1f5c617c5..76b700e01 100644 --- a/packages/happy-dom/src/nodes/html-slot-element/HTMLSlotElement.ts +++ b/packages/happy-dom/src/nodes/html-slot-element/HTMLSlotElement.ts @@ -1,11 +1,11 @@ import HTMLElement from '../html-element/HTMLElement.js'; import * as PropertySymbol from '../../PropertySymbol.js'; -import ShadowRoot from '../shadow-root/ShadowRoot.js'; -import Text from '../text/Text.js'; +import type ShadowRoot from '../shadow-root/ShadowRoot.js'; +import type Text from '../text/Text.js'; import Element from '../element/Element.js'; import Node from '../node/Node.js'; import Event from '../../event/Event.js'; -import Attr from '../attr/Attr.js'; +import type Attr from '../attr/Attr.js'; import NodeTypeEnum from '../node/NodeTypeEnum.js'; import ElementEventAttributeUtility from '../element/ElementEventAttributeUtility.js'; diff --git a/packages/happy-dom/src/nodes/html-style-element/HTMLStyleElement.ts b/packages/happy-dom/src/nodes/html-style-element/HTMLStyleElement.ts index 1c880cac8..d6df5e79e 100644 --- a/packages/happy-dom/src/nodes/html-style-element/HTMLStyleElement.ts +++ b/packages/happy-dom/src/nodes/html-style-element/HTMLStyleElement.ts @@ -1,4 +1,4 @@ -import CSSStyleSheet from '../../css/CSSStyleSheet.js'; +import type CSSStyleSheet from '../../css/CSSStyleSheet.js'; import * as PropertySymbol from '../../PropertySymbol.js'; import HTMLElement from '../html-element/HTMLElement.js'; diff --git a/packages/happy-dom/src/nodes/html-table-cell-element/HTMLTableCellElement.ts b/packages/happy-dom/src/nodes/html-table-cell-element/HTMLTableCellElement.ts index 68011e7d7..0252495e5 100644 --- a/packages/happy-dom/src/nodes/html-table-cell-element/HTMLTableCellElement.ts +++ b/packages/happy-dom/src/nodes/html-table-cell-element/HTMLTableCellElement.ts @@ -1,7 +1,7 @@ import QuerySelector from '../../query-selector/QuerySelector.js'; import HTMLElement from '../html-element/HTMLElement.js'; import * as PropertySymbol from '../../PropertySymbol.js'; -import Element from '../element/Element.js'; +import type Element from '../element/Element.js'; /** * HTMLTableCellElement diff --git a/packages/happy-dom/src/nodes/html-table-element/HTMLTableElement.ts b/packages/happy-dom/src/nodes/html-table-element/HTMLTableElement.ts index ecf2796af..6b9009921 100644 --- a/packages/happy-dom/src/nodes/html-table-element/HTMLTableElement.ts +++ b/packages/happy-dom/src/nodes/html-table-element/HTMLTableElement.ts @@ -1,6 +1,6 @@ import HTMLCollection from '../element/HTMLCollection.js'; import HTMLElement from '../html-element/HTMLElement.js'; -import HTMLTableRowElement from '../html-table-row-element/HTMLTableRowElement.js'; +import type HTMLTableRowElement from '../html-table-row-element/HTMLTableRowElement.js'; import * as PropertySymbol from '../../PropertySymbol.js'; import QuerySelector from '../../query-selector/QuerySelector.js'; import HTMLTableCaptionElement from '../html-table-caption-element/HTMLTableCaptionElement.js'; diff --git a/packages/happy-dom/src/nodes/html-table-row-element/HTMLTableRowElement.ts b/packages/happy-dom/src/nodes/html-table-row-element/HTMLTableRowElement.ts index e52a5c3ef..4629d4443 100644 --- a/packages/happy-dom/src/nodes/html-table-row-element/HTMLTableRowElement.ts +++ b/packages/happy-dom/src/nodes/html-table-row-element/HTMLTableRowElement.ts @@ -1,11 +1,11 @@ import HTMLCollection from '../element/HTMLCollection.js'; import HTMLElement from '../html-element/HTMLElement.js'; -import HTMLTableCellElement from '../html-table-cell-element/HTMLTableCellElement.js'; +import type HTMLTableCellElement from '../html-table-cell-element/HTMLTableCellElement.js'; import * as PropertySymbol from '../../PropertySymbol.js'; import QuerySelector from '../../query-selector/QuerySelector.js'; import HTMLTableSectionElement from '../html-table-section-element/HTMLTableSectionElement.js'; import DOMExceptionNameEnum from '../../exception/DOMExceptionNameEnum.js'; -import Element from '../element/Element.js'; +import type Element from '../element/Element.js'; /** * HTMLTableRowElement diff --git a/packages/happy-dom/src/nodes/html-table-section-element/HTMLTableSectionElement.ts b/packages/happy-dom/src/nodes/html-table-section-element/HTMLTableSectionElement.ts index a372bd2f7..8ffdb9341 100644 --- a/packages/happy-dom/src/nodes/html-table-section-element/HTMLTableSectionElement.ts +++ b/packages/happy-dom/src/nodes/html-table-section-element/HTMLTableSectionElement.ts @@ -1,7 +1,7 @@ import QuerySelector from '../../query-selector/QuerySelector.js'; import * as PropertySymbol from '../../PropertySymbol.js'; import HTMLElement from '../html-element/HTMLElement.js'; -import HTMLTableRowElement from '../html-table-row-element/HTMLTableRowElement.js'; +import type HTMLTableRowElement from '../html-table-row-element/HTMLTableRowElement.js'; import DOMExceptionNameEnum from '../../exception/DOMExceptionNameEnum.js'; /** * HTMLTableSectionElement diff --git a/packages/happy-dom/src/nodes/html-template-element/HTMLTemplateElement.ts b/packages/happy-dom/src/nodes/html-template-element/HTMLTemplateElement.ts index 03917de48..bfdcb27c6 100644 --- a/packages/happy-dom/src/nodes/html-template-element/HTMLTemplateElement.ts +++ b/packages/happy-dom/src/nodes/html-template-element/HTMLTemplateElement.ts @@ -1,8 +1,8 @@ import HTMLElement from '../html-element/HTMLElement.js'; import * as PropertySymbol from '../../PropertySymbol.js'; -import DocumentFragment from '../document-fragment/DocumentFragment.js'; -import Node from '../node/Node.js'; -import ShadowRoot from '../shadow-root/ShadowRoot.js'; +import type DocumentFragment from '../document-fragment/DocumentFragment.js'; +import type Node from '../node/Node.js'; +import type ShadowRoot from '../shadow-root/ShadowRoot.js'; import HTMLSerializer from '../../html-serializer/HTMLSerializer.js'; import HTMLParser from '../../html-parser/HTMLParser.js'; diff --git a/packages/happy-dom/src/nodes/html-text-area-element/HTMLTextAreaElement.ts b/packages/happy-dom/src/nodes/html-text-area-element/HTMLTextAreaElement.ts index a014615db..39895b1a2 100644 --- a/packages/happy-dom/src/nodes/html-text-area-element/HTMLTextAreaElement.ts +++ b/packages/happy-dom/src/nodes/html-text-area-element/HTMLTextAreaElement.ts @@ -2,13 +2,13 @@ import Event from '../../event/Event.js'; import * as PropertySymbol from '../../PropertySymbol.js'; import DOMExceptionNameEnum from '../../exception/DOMExceptionNameEnum.js'; import HTMLElement from '../html-element/HTMLElement.js'; -import HTMLFormElement from '../html-form-element/HTMLFormElement.js'; +import type HTMLFormElement from '../html-form-element/HTMLFormElement.js'; import HTMLInputElementSelectionDirectionEnum from '../html-input-element/HTMLInputElementSelectionDirectionEnum.js'; import HTMLInputElementSelectionModeEnum from '../html-input-element/HTMLInputElementSelectionModeEnum.js'; import ValidityState from '../../validity-state/ValidityState.js'; -import HTMLLabelElement from '../html-label-element/HTMLLabelElement.js'; +import type HTMLLabelElement from '../html-label-element/HTMLLabelElement.js'; import HTMLLabelElementUtility from '../html-label-element/HTMLLabelElementUtility.js'; -import NodeList from '../node/NodeList.js'; +import type NodeList from '../node/NodeList.js'; import ElementEventAttributeUtility from '../element/ElementEventAttributeUtility.js'; /** diff --git a/packages/happy-dom/src/nodes/html-track-element/HTMLTrackElement.ts b/packages/happy-dom/src/nodes/html-track-element/HTMLTrackElement.ts index 369c89404..3c83d91ea 100644 --- a/packages/happy-dom/src/nodes/html-track-element/HTMLTrackElement.ts +++ b/packages/happy-dom/src/nodes/html-track-element/HTMLTrackElement.ts @@ -1,9 +1,9 @@ import HTMLElement from '../html-element/HTMLElement.js'; -import TextTrack from '../html-media-element/TextTrack.js'; +import type TextTrack from '../html-media-element/TextTrack.js'; import * as PropertySymbol from '../../PropertySymbol.js'; import TextTrackKindEnum from '../html-media-element/TextTrackKindEnum.js'; import ElementEventAttributeUtility from '../element/ElementEventAttributeUtility.js'; -import Event from '../../event/Event.js'; +import type Event from '../../event/Event.js'; /** * HTMLTrackElement diff --git a/packages/happy-dom/src/nodes/node/ICachedComputedStyleResult.ts b/packages/happy-dom/src/nodes/node/ICachedComputedStyleResult.ts index 218ec2c9c..3bcec2e6d 100644 --- a/packages/happy-dom/src/nodes/node/ICachedComputedStyleResult.ts +++ b/packages/happy-dom/src/nodes/node/ICachedComputedStyleResult.ts @@ -1,5 +1,5 @@ -import CSSStyleDeclarationPropertyManager from '../../css/declaration/property-manager/CSSStyleDeclarationPropertyManager.js'; -import ICachedResult from './ICachedResult.js'; +import type CSSStyleDeclarationPropertyManager from '../../css/declaration/property-manager/CSSStyleDeclarationPropertyManager.js'; +import type ICachedResult from './ICachedResult.js'; export default interface ICachedComputedStyleResult extends ICachedResult { result: WeakRef | null; diff --git a/packages/happy-dom/src/nodes/node/ICachedElementByIdResult.ts b/packages/happy-dom/src/nodes/node/ICachedElementByIdResult.ts index 577f8cb7a..9bfe0071c 100644 --- a/packages/happy-dom/src/nodes/node/ICachedElementByIdResult.ts +++ b/packages/happy-dom/src/nodes/node/ICachedElementByIdResult.ts @@ -1,5 +1,5 @@ -import Element from '../element/Element.js'; -import ICachedResult from './ICachedResult.js'; +import type Element from '../element/Element.js'; +import type ICachedResult from './ICachedResult.js'; export default interface ICachedElementByIdResult extends ICachedResult { result: WeakRef | null; diff --git a/packages/happy-dom/src/nodes/node/ICachedElementByTagNameResult.ts b/packages/happy-dom/src/nodes/node/ICachedElementByTagNameResult.ts index 50237368b..8b150165c 100644 --- a/packages/happy-dom/src/nodes/node/ICachedElementByTagNameResult.ts +++ b/packages/happy-dom/src/nodes/node/ICachedElementByTagNameResult.ts @@ -1,5 +1,5 @@ -import Element from '../element/Element.js'; -import ICachedResult from './ICachedResult.js'; +import type Element from '../element/Element.js'; +import type ICachedResult from './ICachedResult.js'; export default interface ICachedElementByTagNameResult extends ICachedResult { result: WeakRef | null; diff --git a/packages/happy-dom/src/nodes/node/ICachedElementsByTagNameResult.ts b/packages/happy-dom/src/nodes/node/ICachedElementsByTagNameResult.ts index 9c4e0de91..4a5b33b85 100644 --- a/packages/happy-dom/src/nodes/node/ICachedElementsByTagNameResult.ts +++ b/packages/happy-dom/src/nodes/node/ICachedElementsByTagNameResult.ts @@ -1,5 +1,5 @@ -import Element from '../element/Element.js'; -import ICachedResult from './ICachedResult.js'; +import type Element from '../element/Element.js'; +import type ICachedResult from './ICachedResult.js'; export default interface ICachedElementsByTagNameResult extends ICachedResult { result: WeakRef | null; diff --git a/packages/happy-dom/src/nodes/node/ICachedMatchesResult.ts b/packages/happy-dom/src/nodes/node/ICachedMatchesResult.ts index f46b8d25e..c7bafcc05 100644 --- a/packages/happy-dom/src/nodes/node/ICachedMatchesResult.ts +++ b/packages/happy-dom/src/nodes/node/ICachedMatchesResult.ts @@ -1,5 +1,5 @@ -import ISelectorMatch from '../../query-selector/ISelectorMatch.js'; -import ICachedResult from './ICachedResult.js'; +import type ISelectorMatch from '../../query-selector/ISelectorMatch.js'; +import type ICachedResult from './ICachedResult.js'; export default interface ICachedMatchesResult extends ICachedResult { result: { match: ISelectorMatch | null } | null; diff --git a/packages/happy-dom/src/nodes/node/ICachedQuerySelectorAllResult.ts b/packages/happy-dom/src/nodes/node/ICachedQuerySelectorAllResult.ts index 3f1b49654..95fa64df5 100644 --- a/packages/happy-dom/src/nodes/node/ICachedQuerySelectorAllResult.ts +++ b/packages/happy-dom/src/nodes/node/ICachedQuerySelectorAllResult.ts @@ -1,6 +1,6 @@ -import Element from '../element/Element.js'; -import ICachedResult from './ICachedResult.js'; -import NodeList from './NodeList.js'; +import type Element from '../element/Element.js'; +import type ICachedResult from './ICachedResult.js'; +import type NodeList from './NodeList.js'; export default interface ICachedQuerySelectorAllResult extends ICachedResult { result: WeakRef> | null; diff --git a/packages/happy-dom/src/nodes/node/ICachedQuerySelectorResult.ts b/packages/happy-dom/src/nodes/node/ICachedQuerySelectorResult.ts index c7f6cbc6c..620e4c721 100644 --- a/packages/happy-dom/src/nodes/node/ICachedQuerySelectorResult.ts +++ b/packages/happy-dom/src/nodes/node/ICachedQuerySelectorResult.ts @@ -1,5 +1,5 @@ -import Element from '../element/Element.js'; -import ICachedResult from './ICachedResult.js'; +import type Element from '../element/Element.js'; +import type ICachedResult from './ICachedResult.js'; export default interface ICachedQuerySelectorResult extends ICachedResult { result: { element: WeakRef | null } | null; diff --git a/packages/happy-dom/src/nodes/node/ICachedStyleResult.ts b/packages/happy-dom/src/nodes/node/ICachedStyleResult.ts index 657cdb23d..b5a1568eb 100644 --- a/packages/happy-dom/src/nodes/node/ICachedStyleResult.ts +++ b/packages/happy-dom/src/nodes/node/ICachedStyleResult.ts @@ -1,5 +1,5 @@ -import CSSStyleDeclarationPropertyManager from '../../css/declaration/property-manager/CSSStyleDeclarationPropertyManager.js'; -import ICachedResult from './ICachedResult.js'; +import type CSSStyleDeclarationPropertyManager from '../../css/declaration/property-manager/CSSStyleDeclarationPropertyManager.js'; +import type ICachedResult from './ICachedResult.js'; export default interface ICachedStyleResult extends ICachedResult { result: WeakRef | null; diff --git a/packages/happy-dom/src/nodes/node/Node.ts b/packages/happy-dom/src/nodes/node/Node.ts index f30da1870..eabcd8817 100644 --- a/packages/happy-dom/src/nodes/node/Node.ts +++ b/packages/happy-dom/src/nodes/node/Node.ts @@ -1,31 +1,31 @@ import EventTarget from '../../event/EventTarget.js'; import * as PropertySymbol from '../../PropertySymbol.js'; -import Document from '../document/Document.js'; -import Element from '../element/Element.js'; +import type Document from '../document/Document.js'; +import type Element from '../element/Element.js'; import NodeTypeEnum from './NodeTypeEnum.js'; import NodeDocumentPositionEnum from './NodeDocumentPositionEnum.js'; import NodeUtility from './NodeUtility.js'; -import Attr from '../attr/Attr.js'; +import type Attr from '../attr/Attr.js'; import NodeList from './NodeList.js'; import MutationRecord from '../../mutation-observer/MutationRecord.js'; import MutationTypeEnum from '../../mutation-observer/MutationTypeEnum.js'; import DOMExceptionNameEnum from '../../exception/DOMExceptionNameEnum.js'; -import IMutationListener from '../../mutation-observer/IMutationListener.js'; -import ICachedQuerySelectorAllResult from './ICachedQuerySelectorAllResult.js'; -import ICachedQuerySelectorResult from './ICachedQuerySelectorResult.js'; -import ICachedMatchesResult from './ICachedMatchesResult.js'; -import ICachedElementsByTagNameResult from './ICachedElementsByTagNameResult.js'; -import ICachedElementByTagNameResult from './ICachedElementByTagNameResult.js'; -import ICachedComputedStyleResult from './ICachedComputedStyleResult.js'; -import ICachedResult from './ICachedResult.js'; -import ICachedElementByIdResult from './ICachedElementByIdResult.js'; -import HTMLStyleElement from '../html-style-element/HTMLStyleElement.js'; -import HTMLFormElement from '../html-form-element/HTMLFormElement.js'; -import HTMLSelectElement from '../html-select-element/HTMLSelectElement.js'; -import HTMLTextAreaElement from '../html-text-area-element/HTMLTextAreaElement.js'; -import HTMLSlotElement from '../html-slot-element/HTMLSlotElement.js'; +import type IMutationListener from '../../mutation-observer/IMutationListener.js'; +import type ICachedQuerySelectorAllResult from './ICachedQuerySelectorAllResult.js'; +import type ICachedQuerySelectorResult from './ICachedQuerySelectorResult.js'; +import type ICachedMatchesResult from './ICachedMatchesResult.js'; +import type ICachedElementsByTagNameResult from './ICachedElementsByTagNameResult.js'; +import type ICachedElementByTagNameResult from './ICachedElementByTagNameResult.js'; +import type ICachedComputedStyleResult from './ICachedComputedStyleResult.js'; +import type ICachedResult from './ICachedResult.js'; +import type ICachedElementByIdResult from './ICachedElementByIdResult.js'; +import type HTMLStyleElement from '../html-style-element/HTMLStyleElement.js'; +import type HTMLFormElement from '../html-form-element/HTMLFormElement.js'; +import type HTMLSelectElement from '../html-select-element/HTMLSelectElement.js'; +import type HTMLTextAreaElement from '../html-text-area-element/HTMLTextAreaElement.js'; +import type HTMLSlotElement from '../html-slot-element/HTMLSlotElement.js'; import NodeFactory from '../NodeFactory.js'; -import SVGStyleElement from '../svg-style-element/SVGStyleElement.js'; +import type SVGStyleElement from '../svg-style-element/SVGStyleElement.js'; /** * Node. diff --git a/packages/happy-dom/src/nodes/node/NodeList.ts b/packages/happy-dom/src/nodes/node/NodeList.ts index 95aedff6f..944c15709 100644 --- a/packages/happy-dom/src/nodes/node/NodeList.ts +++ b/packages/happy-dom/src/nodes/node/NodeList.ts @@ -1,6 +1,6 @@ import ClassMethodBinder from '../../utilities/ClassMethodBinder.js'; import * as PropertySymbol from '../../PropertySymbol.js'; -import Node from './Node.js'; +import type Node from './Node.js'; /** * NodeList. diff --git a/packages/happy-dom/src/nodes/node/NodeUtility.ts b/packages/happy-dom/src/nodes/node/NodeUtility.ts index 7fef54c54..486de8f05 100644 --- a/packages/happy-dom/src/nodes/node/NodeUtility.ts +++ b/packages/happy-dom/src/nodes/node/NodeUtility.ts @@ -1,13 +1,13 @@ -import Text from '../text/Text.js'; +import type Text from '../text/Text.js'; import * as PropertySymbol from '../../PropertySymbol.js'; -import Comment from '../comment/Comment.js'; -import Node from './Node.js'; +import type Comment from '../comment/Comment.js'; +import type Node from './Node.js'; import NodeTypeEnum from './NodeTypeEnum.js'; -import Element from '../element/Element.js'; -import DocumentType from '../document-type/DocumentType.js'; -import Attr from '../attr/Attr.js'; -import ProcessingInstruction from '../processing-instruction/ProcessingInstruction.js'; -import ShadowRoot from '../shadow-root/ShadowRoot.js'; +import type Element from '../element/Element.js'; +import type DocumentType from '../document-type/DocumentType.js'; +import type Attr from '../attr/Attr.js'; +import type ProcessingInstruction from '../processing-instruction/ProcessingInstruction.js'; +import type ShadowRoot from '../shadow-root/ShadowRoot.js'; /** * Node utility. diff --git a/packages/happy-dom/src/nodes/node/TNodeListListener.ts b/packages/happy-dom/src/nodes/node/TNodeListListener.ts index a7d9f6153..e06c4bd87 100644 --- a/packages/happy-dom/src/nodes/node/TNodeListListener.ts +++ b/packages/happy-dom/src/nodes/node/TNodeListListener.ts @@ -1,2 +1 @@ -type TNodeListListener = (item: T, referenceItem?: T | null) => void; -export default TNodeListListener; +export type TNodeListListener = (item: T, referenceItem?: T | null) => void; diff --git a/packages/happy-dom/src/nodes/parent-node/IParentNode.ts b/packages/happy-dom/src/nodes/parent-node/IParentNode.ts index 1aa2af346..69a6f70d7 100644 --- a/packages/happy-dom/src/nodes/parent-node/IParentNode.ts +++ b/packages/happy-dom/src/nodes/parent-node/IParentNode.ts @@ -1,9 +1,9 @@ -import HTMLCollection from '../element/HTMLCollection.js'; -import Element from '../element/Element.js'; -import Node from '../node/Node.js'; -import NodeList from '../node/NodeList.js'; -import IHTMLElementTagNameMap from '../../config/IHTMLElementTagNameMap.js'; -import ISVGElementTagNameMap from '../../config/ISVGElementTagNameMap.js'; +import type HTMLCollection from '../element/HTMLCollection.js'; +import type Element from '../element/Element.js'; +import type Node from '../node/Node.js'; +import type NodeList from '../node/NodeList.js'; +import type IHTMLElementTagNameMap from '../../config/IHTMLElementTagNameMap.js'; +import type ISVGElementTagNameMap from '../../config/ISVGElementTagNameMap.js'; export default interface IParentNode extends Node { readonly childElementCount: number; diff --git a/packages/happy-dom/src/nodes/parent-node/ParentNodeUtility.ts b/packages/happy-dom/src/nodes/parent-node/ParentNodeUtility.ts index e76007476..bdf4a994a 100644 --- a/packages/happy-dom/src/nodes/parent-node/ParentNodeUtility.ts +++ b/packages/happy-dom/src/nodes/parent-node/ParentNodeUtility.ts @@ -1,12 +1,12 @@ import * as PropertySymbol from '../../PropertySymbol.js'; -import DocumentFragment from '../document-fragment/DocumentFragment.js'; -import Document from '../document/Document.js'; -import Element from '../element/Element.js'; +import type DocumentFragment from '../document-fragment/DocumentFragment.js'; +import type Document from '../document/Document.js'; +import type Element from '../element/Element.js'; import Node from '../node/Node.js'; import NamespaceURI from '../../config/NamespaceURI.js'; import HTMLCollection from '../element/HTMLCollection.js'; import QuerySelector from '../../query-selector/QuerySelector.js'; -import ICachedResult from '../node/ICachedResult.js'; +import type ICachedResult from '../node/ICachedResult.js'; /** * Parent node utility. @@ -284,8 +284,8 @@ export default class ParentNodeUtility { ): Element | null { id = String(id); - if (parentNode instanceof Document) { - const entry = parentNode[PropertySymbol.elementIdMap].get(id); + if (parentNode[PropertySymbol.nodeType] === Node.DOCUMENT_NODE) { + const entry = (parentNode)[PropertySymbol.elementIdMap].get(id); if (entry && entry.elements.length > 0) { return entry.elements[0]; } diff --git a/packages/happy-dom/src/nodes/shadow-root/ShadowRoot.ts b/packages/happy-dom/src/nodes/shadow-root/ShadowRoot.ts index 8f30b038d..1b0abaa23 100644 --- a/packages/happy-dom/src/nodes/shadow-root/ShadowRoot.ts +++ b/packages/happy-dom/src/nodes/shadow-root/ShadowRoot.ts @@ -1,11 +1,11 @@ import DocumentFragment from '../document-fragment/DocumentFragment.js'; import * as PropertySymbol from '../../PropertySymbol.js'; -import Element from '../element/Element.js'; -import CSSStyleSheet from '../../css/CSSStyleSheet.js'; -import HTMLElement from '../../nodes/html-element/HTMLElement.js'; -import Event from '../../event/Event.js'; -import SVGElement from '../svg-element/SVGElement.js'; -import Document from '../document/Document.js'; +import type Element from '../element/Element.js'; +import type CSSStyleSheet from '../../css/CSSStyleSheet.js'; +import type HTMLElement from '../../nodes/html-element/HTMLElement.js'; +import type Event from '../../event/Event.js'; +import type SVGElement from '../svg-element/SVGElement.js'; +import type Document from '../document/Document.js'; import HTMLSerializer from '../../html-serializer/HTMLSerializer.js'; import HTMLParser from '../../html-parser/HTMLParser.js'; diff --git a/packages/happy-dom/src/nodes/svg-animation-element/SVGAnimationElement.ts b/packages/happy-dom/src/nodes/svg-animation-element/SVGAnimationElement.ts index 583bbed78..4cb005346 100644 --- a/packages/happy-dom/src/nodes/svg-animation-element/SVGAnimationElement.ts +++ b/packages/happy-dom/src/nodes/svg-animation-element/SVGAnimationElement.ts @@ -1,7 +1,7 @@ import SVGElement from '../svg-element/SVGElement.js'; import SVGStringList from '../../svg/SVGStringList.js'; import * as PropertySymbol from '../../PropertySymbol.js'; -import Event from '../../event/Event.js'; +import type Event from '../../event/Event.js'; import ElementEventAttributeUtility from '../element/ElementEventAttributeUtility.js'; /** diff --git a/packages/happy-dom/src/nodes/svg-element/SVGElement.ts b/packages/happy-dom/src/nodes/svg-element/SVGElement.ts index b9483024e..902863d3d 100644 --- a/packages/happy-dom/src/nodes/svg-element/SVGElement.ts +++ b/packages/happy-dom/src/nodes/svg-element/SVGElement.ts @@ -1,8 +1,8 @@ import CSSStyleDeclaration from '../../css/declaration/CSSStyleDeclaration.js'; import * as PropertySymbol from '../../PropertySymbol.js'; import Element from '../element/Element.js'; -import SVGSVGElement from '../svg-svg-element/SVGSVGElement.js'; -import Event from '../../event/Event.js'; +import type SVGSVGElement from '../svg-svg-element/SVGSVGElement.js'; +import type Event from '../../event/Event.js'; import HTMLElementUtility from '../html-element/HTMLElementUtility.js'; import DOMStringMap from '../../dom/DOMStringMap.js'; import ElementEventAttributeUtility from '../element/ElementEventAttributeUtility.js'; diff --git a/packages/happy-dom/src/nodes/svg-graphics-element/SVGGraphicsElement.ts b/packages/happy-dom/src/nodes/svg-graphics-element/SVGGraphicsElement.ts index 360477bad..c293a7bf1 100644 --- a/packages/happy-dom/src/nodes/svg-graphics-element/SVGGraphicsElement.ts +++ b/packages/happy-dom/src/nodes/svg-graphics-element/SVGGraphicsElement.ts @@ -4,7 +4,7 @@ import DOMMatrix from '../../dom/dom-matrix/DOMMatrix.js'; import SVGStringList from '../../svg/SVGStringList.js'; import * as PropertySymbol from '../../PropertySymbol.js'; import SVGAnimatedTransformList from '../../svg/SVGAnimatedTransformList.js'; -import Event from '../../event/Event.js'; +import type Event from '../../event/Event.js'; import ElementEventAttributeUtility from '../element/ElementEventAttributeUtility.js'; /** diff --git a/packages/happy-dom/src/nodes/svg-marker-element/SVGMarkerElement.ts b/packages/happy-dom/src/nodes/svg-marker-element/SVGMarkerElement.ts index 8f5375c2e..0b554876c 100644 --- a/packages/happy-dom/src/nodes/svg-marker-element/SVGMarkerElement.ts +++ b/packages/happy-dom/src/nodes/svg-marker-element/SVGMarkerElement.ts @@ -4,7 +4,7 @@ import SVGAnimatedLength from '../../svg/SVGAnimatedLength.js'; import SVGAnimatedAngle from '../../svg/SVGAnimatedAngle.js'; import SVGAnimatedRect from '../../svg/SVGAnimatedRect.js'; import SVGAnimatedPreserveAspectRatio from '../../svg/SVGAnimatedPreserveAspectRatio.js'; -import SVGAngle from '../../svg/SVGAngle.js'; +import type SVGAngle from '../../svg/SVGAngle.js'; import SVGElement from '../svg-element/SVGElement.js'; /** diff --git a/packages/happy-dom/src/nodes/svg-style-element/SVGStyleElement.ts b/packages/happy-dom/src/nodes/svg-style-element/SVGStyleElement.ts index 82d5e1215..1115ab664 100644 --- a/packages/happy-dom/src/nodes/svg-style-element/SVGStyleElement.ts +++ b/packages/happy-dom/src/nodes/svg-style-element/SVGStyleElement.ts @@ -1,4 +1,4 @@ -import CSSStyleSheet from '../../css/CSSStyleSheet.js'; +import type CSSStyleSheet from '../../css/CSSStyleSheet.js'; import * as PropertySymbol from '../../PropertySymbol.js'; import SVGElement from '../svg-element/SVGElement.js'; diff --git a/packages/happy-dom/src/nodes/svg-svg-element/SVGSVGElement.ts b/packages/happy-dom/src/nodes/svg-svg-element/SVGSVGElement.ts index 616293966..fccda858f 100644 --- a/packages/happy-dom/src/nodes/svg-svg-element/SVGSVGElement.ts +++ b/packages/happy-dom/src/nodes/svg-svg-element/SVGSVGElement.ts @@ -6,18 +6,18 @@ import SVGAngle from '../../svg/SVGAngle.js'; import SVGNumber from '../../svg/SVGNumber.js'; import SVGTransform from '../../svg/SVGTransform.js'; import SVGAnimatedRect from '../../svg/SVGAnimatedRect.js'; -import Event from '../../event/Event.js'; +import type Event from '../../event/Event.js'; import * as PropertySymbol from '../../PropertySymbol.js'; import SVGAnimatedPreserveAspectRatio from '../../svg/SVGAnimatedPreserveAspectRatio.js'; import SVGAnimatedLength from '../../svg/SVGAnimatedLength.js'; -import Element from '../element/Element.js'; +import type Element from '../element/Element.js'; import NodeList from '../node/NodeList.js'; -import SVGElement from '../svg-element/SVGElement.js'; +import type SVGElement from '../svg-element/SVGElement.js'; import SVGMatrix from '../../svg/SVGMatrix.js'; -import HTMLCollection from '../element/HTMLCollection.js'; +import type HTMLCollection from '../element/HTMLCollection.js'; import ParentNodeUtility from '../parent-node/ParentNodeUtility.js'; -import IHTMLElementTagNameMap from '../../config/IHTMLElementTagNameMap.js'; -import ISVGElementTagNameMap from '../../config/ISVGElementTagNameMap.js'; +import type IHTMLElementTagNameMap from '../../config/IHTMLElementTagNameMap.js'; +import type ISVGElementTagNameMap from '../../config/ISVGElementTagNameMap.js'; import ElementEventAttributeUtility from '../element/ElementEventAttributeUtility.js'; /** diff --git a/packages/happy-dom/src/nodes/text/Text.ts b/packages/happy-dom/src/nodes/text/Text.ts index 84d0ea4bd..ca42b5397 100644 --- a/packages/happy-dom/src/nodes/text/Text.ts +++ b/packages/happy-dom/src/nodes/text/Text.ts @@ -1,9 +1,9 @@ import * as PropertySymbol from '../../PropertySymbol.js'; import CharacterData from '../character-data/CharacterData.js'; import DOMExceptionNameEnum from '../../exception/DOMExceptionNameEnum.js'; -import HTMLTextAreaElement from '../html-text-area-element/HTMLTextAreaElement.js'; +import type HTMLTextAreaElement from '../html-text-area-element/HTMLTextAreaElement.js'; import NodeTypeEnum from '../node/NodeTypeEnum.js'; -import HTMLStyleElement from '../html-style-element/HTMLStyleElement.js'; +import type HTMLStyleElement from '../html-style-element/HTMLStyleElement.js'; /** * Text node. diff --git a/packages/happy-dom/src/permissions/PermissionStatus.ts b/packages/happy-dom/src/permissions/PermissionStatus.ts index 2a00bab12..31a1f3f15 100644 --- a/packages/happy-dom/src/permissions/PermissionStatus.ts +++ b/packages/happy-dom/src/permissions/PermissionStatus.ts @@ -1,5 +1,5 @@ import EventTarget from '../event/EventTarget.js'; -import Event from '../event/Event.js'; +import type Event from '../event/Event.js'; /** * Permission status. diff --git a/packages/happy-dom/src/permissions/Permissions.ts b/packages/happy-dom/src/permissions/Permissions.ts index d9e308821..ec65a4050 100644 --- a/packages/happy-dom/src/permissions/Permissions.ts +++ b/packages/happy-dom/src/permissions/Permissions.ts @@ -1,6 +1,6 @@ -import PermissionStatus from './PermissionStatus.js'; +import type PermissionStatus from './PermissionStatus.js'; import PermissionNameEnum from './PermissionNameEnum.js'; -import BrowserWindow from '../window/BrowserWindow.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; /** * Permissions API. diff --git a/packages/happy-dom/src/query-selector/ISelectorPseudo.ts b/packages/happy-dom/src/query-selector/ISelectorPseudo.ts index 5dceede1f..5ecb0ac22 100644 --- a/packages/happy-dom/src/query-selector/ISelectorPseudo.ts +++ b/packages/happy-dom/src/query-selector/ISelectorPseudo.ts @@ -1,4 +1,4 @@ -import SelectorItem from './SelectorItem.js'; +import type SelectorItem from './SelectorItem.js'; export default interface ISelectorPseudo { name: string; diff --git a/packages/happy-dom/src/query-selector/QuerySelector.ts b/packages/happy-dom/src/query-selector/QuerySelector.ts index e41d8cab1..924f1faf9 100644 --- a/packages/happy-dom/src/query-selector/QuerySelector.ts +++ b/packages/happy-dom/src/query-selector/QuerySelector.ts @@ -1,18 +1,18 @@ -import Element from '../nodes/element/Element.js'; +import type Element from '../nodes/element/Element.js'; import * as PropertySymbol from '../PropertySymbol.js'; -import SelectorItem from './SelectorItem.js'; +import type SelectorItem from './SelectorItem.js'; import NodeList from '../nodes/node/NodeList.js'; import NodeTypeEnum from '../nodes/node/NodeTypeEnum.js'; import SelectorCombinatorEnum from './SelectorCombinatorEnum.js'; -import Document from '../nodes/document/Document.js'; -import DocumentFragment from '../nodes/document-fragment/DocumentFragment.js'; +import type Document from '../nodes/document/Document.js'; +import type DocumentFragment from '../nodes/document-fragment/DocumentFragment.js'; import SelectorParser from './SelectorParser.js'; -import ISelectorMatch from './ISelectorMatch.js'; -import IHTMLElementTagNameMap from '../config/IHTMLElementTagNameMap.js'; -import ISVGElementTagNameMap from '../config/ISVGElementTagNameMap.js'; -import ICachedQuerySelectorAllItem from '../nodes/node/ICachedQuerySelectorAllResult.js'; -import ICachedQuerySelectorItem from '../nodes/node/ICachedQuerySelectorResult.js'; -import ICachedMatchesItem from '../nodes/node/ICachedMatchesResult.js'; +import type ISelectorMatch from './ISelectorMatch.js'; +import type IHTMLElementTagNameMap from '../config/IHTMLElementTagNameMap.js'; +import type ISVGElementTagNameMap from '../config/ISVGElementTagNameMap.js'; +import type ICachedQuerySelectorAllItem from '../nodes/node/ICachedQuerySelectorAllResult.js'; +import type ICachedQuerySelectorItem from '../nodes/node/ICachedQuerySelectorResult.js'; +import type ICachedMatchesItem from '../nodes/node/ICachedMatchesResult.js'; type DocumentPositionAndElement = { documentPosition: string; diff --git a/packages/happy-dom/src/query-selector/SelectorItem.ts b/packages/happy-dom/src/query-selector/SelectorItem.ts index d6dababf0..882064abc 100644 --- a/packages/happy-dom/src/query-selector/SelectorItem.ts +++ b/packages/happy-dom/src/query-selector/SelectorItem.ts @@ -1,11 +1,11 @@ import * as PropertySymbol from '../PropertySymbol.js'; -import Element from '../nodes/element/Element.js'; -import HTMLInputElement from '../nodes/html-input-element/HTMLInputElement.js'; +import type Element from '../nodes/element/Element.js'; +import type HTMLInputElement from '../nodes/html-input-element/HTMLInputElement.js'; import SelectorCombinatorEnum from './SelectorCombinatorEnum.js'; -import ISelectorAttribute from './ISelectorAttribute.js'; -import ISelectorMatch from './ISelectorMatch.js'; -import ISelectorPseudo from './ISelectorPseudo.js'; -import DocumentFragment from '../nodes/document-fragment/DocumentFragment.js'; +import type ISelectorAttribute from './ISelectorAttribute.js'; +import type ISelectorMatch from './ISelectorMatch.js'; +import type ISelectorPseudo from './ISelectorPseudo.js'; +import type DocumentFragment from '../nodes/document-fragment/DocumentFragment.js'; /** * Selector item. diff --git a/packages/happy-dom/src/query-selector/SelectorParser.ts b/packages/happy-dom/src/query-selector/SelectorParser.ts index 95c3e3e73..89109d9d0 100644 --- a/packages/happy-dom/src/query-selector/SelectorParser.ts +++ b/packages/happy-dom/src/query-selector/SelectorParser.ts @@ -1,9 +1,9 @@ import SelectorItem from './SelectorItem.js'; import SelectorCombinatorEnum from './SelectorCombinatorEnum.js'; import DOMException from '../exception/DOMException.js'; -import ISelectorPseudo from './ISelectorPseudo.js'; -import Element from '../nodes/element/Element.js'; -import DocumentFragment from '../nodes/document-fragment/DocumentFragment.js'; +import type ISelectorPseudo from './ISelectorPseudo.js'; +import type Element from '../nodes/element/Element.js'; +import type DocumentFragment from '../nodes/document-fragment/DocumentFragment.js'; /** * Selector RegExp. diff --git a/packages/happy-dom/src/range/IRangeBoundaryPoint.ts b/packages/happy-dom/src/range/IRangeBoundaryPoint.ts index 480755174..0145cbabc 100644 --- a/packages/happy-dom/src/range/IRangeBoundaryPoint.ts +++ b/packages/happy-dom/src/range/IRangeBoundaryPoint.ts @@ -1,4 +1,4 @@ -import Node from '../nodes/node/Node.js'; +import type Node from '../nodes/node/Node.js'; /** * Range boundary point. diff --git a/packages/happy-dom/src/range/Range.ts b/packages/happy-dom/src/range/Range.ts index 1bd476c6d..ac14d9784 100644 --- a/packages/happy-dom/src/range/Range.ts +++ b/packages/happy-dom/src/range/Range.ts @@ -1,18 +1,18 @@ -import Node from '../nodes/node/Node.js'; +import type Node from '../nodes/node/Node.js'; import * as PropertySymbol from '../PropertySymbol.js'; -import Document from '../nodes/document/Document.js'; -import DocumentFragment from '../nodes/document-fragment/DocumentFragment.js'; +import type Document from '../nodes/document/Document.js'; +import type DocumentFragment from '../nodes/document-fragment/DocumentFragment.js'; import DOMRect from '../dom/DOMRect.js'; import RangeHowEnum from './RangeHowEnum.js'; import DOMExceptionNameEnum from '../exception/DOMExceptionNameEnum.js'; import RangeUtility from './RangeUtility.js'; import NodeTypeEnum from '../nodes/node/NodeTypeEnum.js'; import NodeUtility from '../nodes/node/NodeUtility.js'; -import Comment from '../nodes/comment/Comment.js'; -import Text from '../nodes/text/Text.js'; +import type Comment from '../nodes/comment/Comment.js'; +import type Text from '../nodes/text/Text.js'; import DOMRectList from '../dom/DOMRectList.js'; -import IRangeBoundaryPoint from './IRangeBoundaryPoint.js'; -import BrowserWindow from '../window/BrowserWindow.js'; +import type IRangeBoundaryPoint from './IRangeBoundaryPoint.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; import HTMLParser from '../html-parser/HTMLParser.js'; /** diff --git a/packages/happy-dom/src/range/RangeUtility.ts b/packages/happy-dom/src/range/RangeUtility.ts index 98ab3bce5..83d1291a9 100644 --- a/packages/happy-dom/src/range/RangeUtility.ts +++ b/packages/happy-dom/src/range/RangeUtility.ts @@ -2,10 +2,10 @@ import DOMException from '../exception/DOMException.js'; import * as PropertySymbol from '../PropertySymbol.js'; import DOMExceptionNameEnum from '../exception/DOMExceptionNameEnum.js'; import NodeTypeEnum from '../nodes/node/NodeTypeEnum.js'; -import Node from '../nodes/node/Node.js'; +import type Node from '../nodes/node/Node.js'; import NodeUtility from '../nodes/node/NodeUtility.js'; -import Range from './Range.js'; -import IRangeBoundaryPoint from './IRangeBoundaryPoint.js'; +import type Range from './Range.js'; +import type IRangeBoundaryPoint from './IRangeBoundaryPoint.js'; /** * Range utility. diff --git a/packages/happy-dom/src/selection/Selection.ts b/packages/happy-dom/src/selection/Selection.ts index 95a1fb24d..a1d890b07 100644 --- a/packages/happy-dom/src/selection/Selection.ts +++ b/packages/happy-dom/src/selection/Selection.ts @@ -1,11 +1,11 @@ import Event from '../event/Event.js'; import * as PropertySymbol from '../PropertySymbol.js'; import DOMExceptionNameEnum from '../exception/DOMExceptionNameEnum.js'; -import Document from '../nodes/document/Document.js'; -import Node from '../nodes/node/Node.js'; +import type Document from '../nodes/document/Document.js'; +import type Node from '../nodes/node/Node.js'; import NodeTypeEnum from '../nodes/node/NodeTypeEnum.js'; import NodeUtility from '../nodes/node/NodeUtility.js'; -import Range from '../range/Range.js'; +import type Range from '../range/Range.js'; import RangeUtility from '../range/RangeUtility.js'; import SelectionDirectionEnum from './SelectionDirectionEnum.js'; diff --git a/packages/happy-dom/src/svg/SVGAngle.ts b/packages/happy-dom/src/svg/SVGAngle.ts index 1aec1014f..7238bd509 100644 --- a/packages/happy-dom/src/svg/SVGAngle.ts +++ b/packages/happy-dom/src/svg/SVGAngle.ts @@ -1,6 +1,6 @@ import SVGAngleTypeEnum from './SVGAngleTypeEnum.js'; import * as PropertySymbol from '../PropertySymbol.js'; -import BrowserWindow from '../window/BrowserWindow.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; const ATTRIBUTE_REGEXP = /^(\d+|\d+\.\d+)(deg|rad|grad|turn|)$/; diff --git a/packages/happy-dom/src/svg/SVGAnimatedAngle.ts b/packages/happy-dom/src/svg/SVGAnimatedAngle.ts index 8b3048ed8..05ffdeed1 100644 --- a/packages/happy-dom/src/svg/SVGAnimatedAngle.ts +++ b/packages/happy-dom/src/svg/SVGAnimatedAngle.ts @@ -1,6 +1,6 @@ import * as PropertySymbol from '../PropertySymbol.js'; import SVGAngle from './SVGAngle.js'; -import BrowserWindow from '../window/BrowserWindow.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; /** * SVG Animated Angle. diff --git a/packages/happy-dom/src/svg/SVGAnimatedBoolean.ts b/packages/happy-dom/src/svg/SVGAnimatedBoolean.ts index e72225f91..032f99182 100644 --- a/packages/happy-dom/src/svg/SVGAnimatedBoolean.ts +++ b/packages/happy-dom/src/svg/SVGAnimatedBoolean.ts @@ -1,5 +1,5 @@ import * as PropertySymbol from '../PropertySymbol.js'; -import BrowserWindow from '../window/BrowserWindow.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; /** * SVG Animated Boolean. diff --git a/packages/happy-dom/src/svg/SVGAnimatedEnumeration.ts b/packages/happy-dom/src/svg/SVGAnimatedEnumeration.ts index 66830d664..93d80777c 100644 --- a/packages/happy-dom/src/svg/SVGAnimatedEnumeration.ts +++ b/packages/happy-dom/src/svg/SVGAnimatedEnumeration.ts @@ -1,5 +1,5 @@ import * as PropertySymbol from '../PropertySymbol.js'; -import BrowserWindow from '../window/BrowserWindow.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; /** * SVG Animated Enumaration. diff --git a/packages/happy-dom/src/svg/SVGAnimatedInteger.ts b/packages/happy-dom/src/svg/SVGAnimatedInteger.ts index 13b73f795..d0c6fde83 100644 --- a/packages/happy-dom/src/svg/SVGAnimatedInteger.ts +++ b/packages/happy-dom/src/svg/SVGAnimatedInteger.ts @@ -1,5 +1,5 @@ import * as PropertySymbol from '../PropertySymbol.js'; -import BrowserWindow from '../window/BrowserWindow.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; /** * SVG Animated Integer. diff --git a/packages/happy-dom/src/svg/SVGAnimatedLength.ts b/packages/happy-dom/src/svg/SVGAnimatedLength.ts index ff8e19b6b..a585810c6 100644 --- a/packages/happy-dom/src/svg/SVGAnimatedLength.ts +++ b/packages/happy-dom/src/svg/SVGAnimatedLength.ts @@ -1,6 +1,6 @@ import * as PropertySymbol from '../PropertySymbol.js'; import SVGLength from './SVGLength.js'; -import BrowserWindow from '../window/BrowserWindow.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; /** * SVG Animated Length. diff --git a/packages/happy-dom/src/svg/SVGAnimatedLengthList.ts b/packages/happy-dom/src/svg/SVGAnimatedLengthList.ts index 260e05b81..fc16acd60 100644 --- a/packages/happy-dom/src/svg/SVGAnimatedLengthList.ts +++ b/packages/happy-dom/src/svg/SVGAnimatedLengthList.ts @@ -1,5 +1,5 @@ import * as PropertySymbol from '../PropertySymbol.js'; -import BrowserWindow from '../window/BrowserWindow.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; import SVGLengthList from './SVGLengthList.js'; /** diff --git a/packages/happy-dom/src/svg/SVGAnimatedNumber.ts b/packages/happy-dom/src/svg/SVGAnimatedNumber.ts index 05ecada8f..056800d4a 100644 --- a/packages/happy-dom/src/svg/SVGAnimatedNumber.ts +++ b/packages/happy-dom/src/svg/SVGAnimatedNumber.ts @@ -1,5 +1,5 @@ import * as PropertySymbol from '../PropertySymbol.js'; -import BrowserWindow from '../window/BrowserWindow.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; /** * SVG Animated Number. diff --git a/packages/happy-dom/src/svg/SVGAnimatedNumberList.ts b/packages/happy-dom/src/svg/SVGAnimatedNumberList.ts index 0c9e9a716..37ce14c65 100644 --- a/packages/happy-dom/src/svg/SVGAnimatedNumberList.ts +++ b/packages/happy-dom/src/svg/SVGAnimatedNumberList.ts @@ -1,6 +1,6 @@ import SVGNumberList from './SVGNumberList.js'; import * as PropertySymbol from '../PropertySymbol.js'; -import BrowserWindow from '../window/BrowserWindow.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; /** * The SVGAnimatedNumberList interface is used for attributes which take a list of numbers and which can be animated. diff --git a/packages/happy-dom/src/svg/SVGAnimatedPreserveAspectRatio.ts b/packages/happy-dom/src/svg/SVGAnimatedPreserveAspectRatio.ts index d15b3e9d1..e9fecab2a 100644 --- a/packages/happy-dom/src/svg/SVGAnimatedPreserveAspectRatio.ts +++ b/packages/happy-dom/src/svg/SVGAnimatedPreserveAspectRatio.ts @@ -1,5 +1,5 @@ import * as PropertySymbol from '../PropertySymbol.js'; -import BrowserWindow from '../window/BrowserWindow.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; import SVGPreserveAspectRatio from './SVGPreserveAspectRatio.js'; /** diff --git a/packages/happy-dom/src/svg/SVGAnimatedRect.ts b/packages/happy-dom/src/svg/SVGAnimatedRect.ts index afba732c6..305562b00 100644 --- a/packages/happy-dom/src/svg/SVGAnimatedRect.ts +++ b/packages/happy-dom/src/svg/SVGAnimatedRect.ts @@ -1,6 +1,6 @@ import * as PropertySymbol from '../PropertySymbol.js'; import SVGRect from './SVGRect.js'; -import BrowserWindow from '../window/BrowserWindow.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; /** * SVG Animated Number. diff --git a/packages/happy-dom/src/svg/SVGAnimatedString.ts b/packages/happy-dom/src/svg/SVGAnimatedString.ts index f0f367b22..9d4350a88 100644 --- a/packages/happy-dom/src/svg/SVGAnimatedString.ts +++ b/packages/happy-dom/src/svg/SVGAnimatedString.ts @@ -1,5 +1,5 @@ import * as PropertySymbol from '../PropertySymbol.js'; -import BrowserWindow from '../window/BrowserWindow.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; /** * SVG Animated String. diff --git a/packages/happy-dom/src/svg/SVGAnimatedTransformList.ts b/packages/happy-dom/src/svg/SVGAnimatedTransformList.ts index 1dd1398bb..803954885 100644 --- a/packages/happy-dom/src/svg/SVGAnimatedTransformList.ts +++ b/packages/happy-dom/src/svg/SVGAnimatedTransformList.ts @@ -1,6 +1,6 @@ import SVGTransformList from './SVGTransformList.js'; import * as PropertySymbol from '../PropertySymbol.js'; -import BrowserWindow from '../window/BrowserWindow.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; /** * The SVGAnimatedTransformList interface is used for attributes which take a list of numbers and which can be animated. diff --git a/packages/happy-dom/src/svg/SVGLength.ts b/packages/happy-dom/src/svg/SVGLength.ts index 938571659..c81f049ff 100644 --- a/packages/happy-dom/src/svg/SVGLength.ts +++ b/packages/happy-dom/src/svg/SVGLength.ts @@ -1,6 +1,6 @@ import * as PropertySymbol from '../PropertySymbol.js'; import SVGLengthTypeEnum from './SVGLengthTypeEnum.js'; -import BrowserWindow from '../window/BrowserWindow.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; const ATTRIBUTE_REGEXP = /^(\d+|\d+\.\d+)(px|em|ex|cm|mm|in|pt|pc|%|)$/; diff --git a/packages/happy-dom/src/svg/SVGLengthList.ts b/packages/happy-dom/src/svg/SVGLengthList.ts index 91d1aea2d..cac65fa9d 100644 --- a/packages/happy-dom/src/svg/SVGLengthList.ts +++ b/packages/happy-dom/src/svg/SVGLengthList.ts @@ -1,7 +1,7 @@ import ClassMethodBinder from '../utilities/ClassMethodBinder.js'; import DOMExceptionNameEnum from '../exception/DOMExceptionNameEnum.js'; import * as PropertySymbol from '../PropertySymbol.js'; -import BrowserWindow from '../window/BrowserWindow.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; import SVGLength from './SVGLength.js'; const ATTRIBUTE_SEPARATOR_REGEXP = /[\t\f\n\r, ]+/; diff --git a/packages/happy-dom/src/svg/SVGMatrix.ts b/packages/happy-dom/src/svg/SVGMatrix.ts index 1e98df0db..d6467cdd7 100644 --- a/packages/happy-dom/src/svg/SVGMatrix.ts +++ b/packages/happy-dom/src/svg/SVGMatrix.ts @@ -1,5 +1,5 @@ import * as PropertySymbol from '../PropertySymbol.js'; -import BrowserWindow from '../window/BrowserWindow.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; import DOMMatrix from '../dom/dom-matrix/DOMMatrix.js'; const TRANSFORM_REGEXP = /([a-zA-Z0-9]+)\(([^)]+)\)/; diff --git a/packages/happy-dom/src/svg/SVGNumber.ts b/packages/happy-dom/src/svg/SVGNumber.ts index 76d34f484..fb3a62e10 100644 --- a/packages/happy-dom/src/svg/SVGNumber.ts +++ b/packages/happy-dom/src/svg/SVGNumber.ts @@ -1,5 +1,5 @@ import * as PropertySymbol from '../PropertySymbol.js'; -import BrowserWindow from '../window/BrowserWindow.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; /** * SVG number. diff --git a/packages/happy-dom/src/svg/SVGNumberList.ts b/packages/happy-dom/src/svg/SVGNumberList.ts index b361118ce..577989fd8 100644 --- a/packages/happy-dom/src/svg/SVGNumberList.ts +++ b/packages/happy-dom/src/svg/SVGNumberList.ts @@ -1,7 +1,7 @@ import ClassMethodBinder from '../utilities/ClassMethodBinder.js'; import DOMExceptionNameEnum from '../exception/DOMExceptionNameEnum.js'; import * as PropertySymbol from '../PropertySymbol.js'; -import BrowserWindow from '../window/BrowserWindow.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; import SVGNumber from './SVGNumber.js'; const ATTRIBUTE_SEPARATOR_REGEXP = /[\t\f\n\r, ]+/; diff --git a/packages/happy-dom/src/svg/SVGPoint.ts b/packages/happy-dom/src/svg/SVGPoint.ts index 408c01dd6..6e6dea8f5 100644 --- a/packages/happy-dom/src/svg/SVGPoint.ts +++ b/packages/happy-dom/src/svg/SVGPoint.ts @@ -1,5 +1,5 @@ import * as PropertySymbol from '../PropertySymbol.js'; -import BrowserWindow from '../window/BrowserWindow.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; const ATTRIBUTE_SEPARATOR_REGEXP = /[\t\f\n\r, ]+/; diff --git a/packages/happy-dom/src/svg/SVGPointList.ts b/packages/happy-dom/src/svg/SVGPointList.ts index c20186ff8..f6caf97a4 100644 --- a/packages/happy-dom/src/svg/SVGPointList.ts +++ b/packages/happy-dom/src/svg/SVGPointList.ts @@ -1,7 +1,7 @@ import ClassMethodBinder from '../utilities/ClassMethodBinder.js'; import DOMExceptionNameEnum from '../exception/DOMExceptionNameEnum.js'; import * as PropertySymbol from '../PropertySymbol.js'; -import BrowserWindow from '../window/BrowserWindow.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; import SVGPoint from './SVGPoint.js'; const ATTRIBUTE_SEPARATOR_REGEXP = /[\t\f\n\r, ]+/; diff --git a/packages/happy-dom/src/svg/SVGPreserveAspectRatio.ts b/packages/happy-dom/src/svg/SVGPreserveAspectRatio.ts index e49498c65..22035a4cb 100644 --- a/packages/happy-dom/src/svg/SVGPreserveAspectRatio.ts +++ b/packages/happy-dom/src/svg/SVGPreserveAspectRatio.ts @@ -1,7 +1,7 @@ import * as PropertySymbol from '../PropertySymbol.js'; import SVGPreserveAspectRatioMeetOrSliceEnum from './SVGPreserveAspectRatioMeetOrSliceEnum.js'; import SVGPreserveAspectRatioAlignEnum from './SVGPreserveAspectRatioAlignEnum.js'; -import BrowserWindow from '../window/BrowserWindow.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; const ALIGN_KEYS = Object.values(SVGPreserveAspectRatioAlignEnum); ALIGN_KEYS.length = ALIGN_KEYS.indexOf(0); diff --git a/packages/happy-dom/src/svg/SVGRect.ts b/packages/happy-dom/src/svg/SVGRect.ts index 355131f7b..60f1c3a77 100644 --- a/packages/happy-dom/src/svg/SVGRect.ts +++ b/packages/happy-dom/src/svg/SVGRect.ts @@ -1,5 +1,5 @@ import * as PropertySymbol from '../PropertySymbol.js'; -import BrowserWindow from '../window/BrowserWindow.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; /** * Rect object. diff --git a/packages/happy-dom/src/svg/SVGStringList.ts b/packages/happy-dom/src/svg/SVGStringList.ts index 7ddbdab8d..f0c982095 100644 --- a/packages/happy-dom/src/svg/SVGStringList.ts +++ b/packages/happy-dom/src/svg/SVGStringList.ts @@ -1,7 +1,7 @@ import ClassMethodBinder from '../utilities/ClassMethodBinder.js'; import DOMExceptionNameEnum from '../exception/DOMExceptionNameEnum.js'; import * as PropertySymbol from '../PropertySymbol.js'; -import BrowserWindow from '../window/BrowserWindow.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; const ATTRIBUTE_SPLIT_REGEXP = /[\t\f\n\r ,]+/; diff --git a/packages/happy-dom/src/svg/SVGTransform.ts b/packages/happy-dom/src/svg/SVGTransform.ts index 2d25fa8b2..4e70a039c 100644 --- a/packages/happy-dom/src/svg/SVGTransform.ts +++ b/packages/happy-dom/src/svg/SVGTransform.ts @@ -1,5 +1,5 @@ import * as PropertySymbol from '../PropertySymbol.js'; -import BrowserWindow from '../window/BrowserWindow.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; import SVGMatrix from './SVGMatrix.js'; import SVGTransformTypeEnum from './SVGTransformTypeEnum.js'; diff --git a/packages/happy-dom/src/svg/SVGTransformList.ts b/packages/happy-dom/src/svg/SVGTransformList.ts index 90be6c2e5..98b853dc9 100644 --- a/packages/happy-dom/src/svg/SVGTransformList.ts +++ b/packages/happy-dom/src/svg/SVGTransformList.ts @@ -1,7 +1,7 @@ import ClassMethodBinder from '../utilities/ClassMethodBinder.js'; import DOMExceptionNameEnum from '../exception/DOMExceptionNameEnum.js'; import * as PropertySymbol from '../PropertySymbol.js'; -import BrowserWindow from '../window/BrowserWindow.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; import SVGTransform from './SVGTransform.js'; const TRANSFORM_REGEXP = /([a-zA-Z0-9]+)\(([^)]+)\)/gm; diff --git a/packages/happy-dom/src/tree-walker/INodeFilter.ts b/packages/happy-dom/src/tree-walker/INodeFilter.ts deleted file mode 100644 index 6642a6ad2..000000000 --- a/packages/happy-dom/src/tree-walker/INodeFilter.ts +++ /dev/null @@ -1,5 +0,0 @@ -import Node from '../nodes/node/Node.js'; - -type INodeFilter = ((node: Node) => number) | { acceptNode(node: Node): number }; - -export default INodeFilter; diff --git a/packages/happy-dom/src/tree-walker/NodeIterator.ts b/packages/happy-dom/src/tree-walker/NodeIterator.ts index 1ce24e4bf..2ed4194a5 100644 --- a/packages/happy-dom/src/tree-walker/NodeIterator.ts +++ b/packages/happy-dom/src/tree-walker/NodeIterator.ts @@ -1,6 +1,6 @@ -import INodeFilter from './INodeFilter.js'; +import type { TNodeFilter } from './TNodeFilter.js'; import TreeWalker from './TreeWalker.js'; -import Node from '../nodes/node/Node.js'; +import type Node from '../nodes/node/Node.js'; import * as PropertySymbol from '../PropertySymbol.js'; import NodeFilter from './NodeFilter.js'; @@ -13,7 +13,7 @@ import NodeFilter from './NodeFilter.js'; export default class NodeIterator { #root: Node; #whatToShow = -1; - #filter: INodeFilter | null = null; + #filter: TNodeFilter | null = null; #walker: TreeWalker; #atRoot = true; @@ -24,7 +24,7 @@ export default class NodeIterator { * @param [whatToShow] What to show. * @param [filter] Filter. */ - constructor(root: Node, whatToShow = -1, filter: INodeFilter | null = null) { + constructor(root: Node, whatToShow = -1, filter: TNodeFilter | null = null) { this.#root = root; this.#whatToShow = whatToShow; this.#filter = filter; @@ -54,7 +54,7 @@ export default class NodeIterator { * * @returns Filter. */ - public get filter(): INodeFilter | null { + public get filter(): TNodeFilter | null { return this.#filter; } diff --git a/packages/happy-dom/src/tree-walker/TNodeFilter.ts b/packages/happy-dom/src/tree-walker/TNodeFilter.ts new file mode 100644 index 000000000..c2611b494 --- /dev/null +++ b/packages/happy-dom/src/tree-walker/TNodeFilter.ts @@ -0,0 +1,3 @@ +import type Node from '../nodes/node/Node.js'; + +export type TNodeFilter = ((node: Node) => number) | { acceptNode(node: Node): number }; diff --git a/packages/happy-dom/src/tree-walker/TreeWalker.ts b/packages/happy-dom/src/tree-walker/TreeWalker.ts index 1e13784e9..ad1228737 100644 --- a/packages/happy-dom/src/tree-walker/TreeWalker.ts +++ b/packages/happy-dom/src/tree-walker/TreeWalker.ts @@ -1,6 +1,6 @@ import Node from '../nodes/node/Node.js'; import * as PropertySymbol from '../PropertySymbol.js'; -import INodeFilter from './INodeFilter.js'; +import type { TNodeFilter } from './TNodeFilter.js'; import NodeFilterMask from './NodeFilterMask.js'; import DOMException from '../exception/DOMException.js'; import NodeFilter from './NodeFilter.js'; @@ -24,7 +24,7 @@ enum TraverseSiblingsTypeEnum { export default class TreeWalker { public root: Node; public whatToShow = -1; - public filter: INodeFilter | null = null; + public filter: TNodeFilter | null = null; #currentNode: Node | null = null; /** @@ -34,7 +34,7 @@ export default class TreeWalker { * @param [whatToShow] What to show. * @param [filter] Filter. */ - constructor(root: Node, whatToShow = -1, filter: INodeFilter | null = null) { + constructor(root: Node, whatToShow = -1, filter: TNodeFilter | null = null) { if (!(root instanceof Node)) { throw new DOMException('Parameter 1 was not of type Node.'); } diff --git a/packages/happy-dom/src/url/URL.ts b/packages/happy-dom/src/url/URL.ts index 6ba7d1a55..b95f2bc00 100644 --- a/packages/happy-dom/src/url/URL.ts +++ b/packages/happy-dom/src/url/URL.ts @@ -2,7 +2,7 @@ import { URL as NodeJSURL } from 'url'; import * as PropertySymbol from '../PropertySymbol.js'; import { Blob as NodeJSBlob } from 'buffer'; import Blob from '../file/Blob.js'; -import BrowserWindow from '../window/BrowserWindow.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; /** * URL. diff --git a/packages/happy-dom/src/validity-state/ValidityState.ts b/packages/happy-dom/src/validity-state/ValidityState.ts index 705eabc7e..5ddbddf19 100644 --- a/packages/happy-dom/src/validity-state/ValidityState.ts +++ b/packages/happy-dom/src/validity-state/ValidityState.ts @@ -1,12 +1,12 @@ -import HTMLButtonElement from '../nodes/html-button-element/HTMLButtonElement.js'; +import type HTMLButtonElement from '../nodes/html-button-element/HTMLButtonElement.js'; import * as PropertySymbol from '../PropertySymbol.js'; -import HTMLFormElement from '../nodes/html-form-element/HTMLFormElement.js'; -import HTMLInputElement from '../nodes/html-input-element/HTMLInputElement.js'; -import HTMLSelectElement from '../nodes/html-select-element/HTMLSelectElement.js'; -import HTMLTextAreaElement from '../nodes/html-text-area-element/HTMLTextAreaElement.js'; -import ShadowRoot from '../nodes/shadow-root/ShadowRoot.js'; -import HTMLObjectElement from '../nodes/html-object-element/HTMLObjectElement.js'; -import HTMLOutputElement from '../nodes/html-output-element/HTMLOutputElement.js'; +import type HTMLFormElement from '../nodes/html-form-element/HTMLFormElement.js'; +import type HTMLInputElement from '../nodes/html-input-element/HTMLInputElement.js'; +import type HTMLSelectElement from '../nodes/html-select-element/HTMLSelectElement.js'; +import type HTMLTextAreaElement from '../nodes/html-text-area-element/HTMLTextAreaElement.js'; +import type ShadowRoot from '../nodes/shadow-root/ShadowRoot.js'; +import type HTMLObjectElement from '../nodes/html-object-element/HTMLObjectElement.js'; +import type HTMLOutputElement from '../nodes/html-output-element/HTMLOutputElement.js'; const EMAIL_REGEXP = /^([^\x00-\x20\x22\x28\x29\x2c\x2e\x3a-\x3c\x3e\x40\x5b-\x5d\x7f-\xff]+|\x22([^\x0d\x22\x5c\x80-\xff]|\x5c[\x00-\x7f])*\x22)(\x2e([^\x00-\x20\x22\x28\x29\x2c\x2e\x3a-\x3c\x3e\x40\x5b-\x5d\x7f-\xff]+|\x22([^\x0d\x22\x5c\x80-\xff]|\x5c[\x00-\x7f])*\x22))*\x40([^\x00-\x20\x22\x28\x29\x2c\x2e\x3a-\x3c\x3e\x40\x5b-\x5d\x7f-\xff]+|\x5b([^\x0d\x5b-\x5d\x80-\xff]|\x5c[\x00-\x7f])*\x5d)(\x2e([^\x00-\x20\x22\x28\x29\x2c\x2e\x3a-\x3c\x3e\x40\x5b-\x5d\x7f-\xff]+|\x5b([^\x0d\x5b-\x5d\x80-\xff]|\x5c[\x00-\x7f])*\x5d))*$/; @@ -54,10 +54,10 @@ export default class ValidityState { */ public get badInput(): boolean { return ( - this.element instanceof HTMLInputElement && + this.element[PropertySymbol.localName] === 'input' && (this.element.type === 'number' || this.element.type === 'range') && - this.element.value.length > 0 && - !/^[-+]?(?:\d+|\d*[.,]\d+)$/.test(this.element.value) + (this.element).value.length > 0 && + !/^[-+]?(?:\d+|\d*[.,]\d+)$/.test((this.element).value) ); } @@ -77,10 +77,13 @@ export default class ValidityState { */ public get patternMismatch(): boolean { return ( - this.element instanceof HTMLInputElement && + this.element[PropertySymbol.localName] === 'input' && this.element.hasAttribute('pattern') && - this.element.value.length > 0 && - this.element.value.replace(new RegExp(this.element.getAttribute('pattern')!), '').length > 0 + (this.element).value.length > 0 && + (this.element).value.replace( + new RegExp(this.element.getAttribute('pattern')!), + '' + ).length > 0 ); } @@ -91,11 +94,11 @@ export default class ValidityState { */ public get rangeOverflow(): boolean { return ( - this.element instanceof HTMLInputElement && + this.element[PropertySymbol.localName] === 'input' && this.element.hasAttribute('max') && (this.element.type === 'number' || this.element.type === 'range') && - this.element.value.length > 0 && - Number(this.element.value) > Number(this.element.getAttribute('max')) + (this.element).value.length > 0 && + Number((this.element).value) > Number(this.element.getAttribute('max')) ); } @@ -106,11 +109,11 @@ export default class ValidityState { */ public get rangeUnderflow(): boolean { return ( - this.element instanceof HTMLInputElement && + this.element[PropertySymbol.localName] === 'input' && this.element.hasAttribute('min') && (this.element.type === 'number' || this.element.type === 'range') && - this.element.value.length > 0 && - Number(this.element.value) < Number(this.element.getAttribute('min')) + (this.element).value.length > 0 && + Number((this.element).value) < Number(this.element.getAttribute('min')) ); } @@ -121,12 +124,15 @@ export default class ValidityState { */ public get stepMismatch(): boolean { return ( - this.element instanceof HTMLInputElement && + this.element[PropertySymbol.localName] === 'input' && (this.element.type === 'number' || this.element.type === 'range') && ((this.element.hasAttribute('step') && this.element.getAttribute('step') !== 'any' && - Number(this.element.value) % Number(this.element.getAttribute('step')) !== 0) || - (!this.element.hasAttribute('step') && Number(this.element.value) % 1 !== 0)) + Number((this.element).value) % + Number(this.element.getAttribute('step')) !== + 0) || + (!this.element.hasAttribute('step') && + Number((this.element).value) % 1 !== 0)) ); } @@ -137,9 +143,10 @@ export default class ValidityState { */ public get tooLong(): boolean { return ( - (this.element instanceof HTMLInputElement || this.element instanceof HTMLTextAreaElement) && - this.element.maxLength > 0 && - this.element.value.length > this.element.maxLength + (this.element[PropertySymbol.localName] === 'input' || + this.element[PropertySymbol.localName] === 'textarea') && + (this.element).maxLength > 0 && + (this.element).value.length > (this.element).maxLength ); } @@ -150,10 +157,11 @@ export default class ValidityState { */ public get tooShort(): boolean { return ( - (this.element instanceof HTMLInputElement || this.element instanceof HTMLTextAreaElement) && - this.element.minLength > 0 && - this.element.value.length > 0 && - this.element.value.length < this.element.minLength + (this.element[PropertySymbol.localName] === 'input' || + this.element[PropertySymbol.localName] === 'textarea') && + (this.element).minLength > 0 && + (this.element).value.length > 0 && + (this.element).value.length < (this.element).minLength ); } @@ -164,10 +172,11 @@ export default class ValidityState { */ public get typeMismatch(): boolean { return ( - this.element instanceof HTMLInputElement && - this.element.value.length > 0 && - ((this.element.type === 'email' && !EMAIL_REGEXP.test(this.element.value)) || - (this.element.type === 'url' && !URL_REGEXP.test(this.element.value))) + this.element[PropertySymbol.localName] === 'input' && + (this.element).value.length > 0 && + ((this.element.type === 'email' && + !EMAIL_REGEXP.test((this.element).value)) || + (this.element.type === 'url' && !URL_REGEXP.test((this.element).value))) ); } @@ -179,16 +188,16 @@ export default class ValidityState { public get valueMissing(): boolean { if ( !(this.element).required || - this.element instanceof HTMLObjectElement || - this.element instanceof HTMLOutputElement + this.element[PropertySymbol.localName] === 'object' || + this.element[PropertySymbol.localName] === 'output' ) { return false; } - if (this.element instanceof HTMLInputElement) { + if (this.element[PropertySymbol.localName] === 'input') { if (this.element.type === 'checkbox') { - return !this.element.checked; + return !(this.element).checked; } else if (this.element.type === 'radio') { - if (this.element.checked) { + if ((this.element).checked) { return false; } if (!this.element.name) { @@ -200,7 +209,7 @@ export default class ValidityState { return !root || !root.querySelector(`input[name="${this.element.name}"]:checked`); } } - return this.element.value.length === 0; + return (this.element).value.length === 0; } /** diff --git a/packages/happy-dom/src/window/BrowserWindow.ts b/packages/happy-dom/src/window/BrowserWindow.ts index a9d20db28..b84e17eea 100644 --- a/packages/happy-dom/src/window/BrowserWindow.ts +++ b/packages/happy-dom/src/window/BrowserWindow.ts @@ -8,12 +8,12 @@ import VM from 'vm'; import * as PropertySymbol from '../PropertySymbol.js'; import Base64 from '../base64/Base64.js'; import BrowserErrorCaptureEnum from '../browser/enums/BrowserErrorCaptureEnum.js'; -import IBrowserFrame from '../browser/types/IBrowserFrame.js'; +import type IBrowserFrame from '../browser/types/IBrowserFrame.js'; import Clipboard from '../clipboard/Clipboard.js'; import ClipboardItem from '../clipboard/ClipboardItem.js'; import CSS from '../css/CSS.js'; import CSSRule from '../css/CSSRule.js'; -import CSSStyleSheet from '../css/CSSStyleSheet.js'; +import type CSSStyleSheet from '../css/CSSStyleSheet.js'; import CSSUnitValue from '../css/CSSUnitValue.js'; import CSSStyleDeclaration from '../css/declaration/CSSStyleDeclaration.js'; import CSSContainerRule from '../css/rules/CSSContainerRule.js'; @@ -24,13 +24,13 @@ import CSSMediaRule from '../css/rules/CSSMediaRule.js'; import CSSStyleRule from '../css/rules/CSSStyleRule.js'; import CSSSupportsRule from '../css/rules/CSSSupportsRule.js'; import CustomElementRegistry from '../custom-element/CustomElementRegistry.js'; -import DOMParser from '../dom-parser/DOMParser.js'; +import type DOMParser from '../dom-parser/DOMParser.js'; import DataTransfer from '../event/DataTransfer.js'; import DataTransferItem from '../event/DataTransferItem.js'; import DataTransferItemList from '../event/DataTransferItemList.js'; import Event from '../event/Event.js'; import EventTarget from '../event/EventTarget.js'; -import MessagePort from '../event/MessagePort.js'; +import type MessagePort from '../event/MessagePort.js'; import Touch from '../event/Touch.js'; import UIEvent from '../event/UIEvent.js'; import AnimationEvent from '../event/events/AnimationEvent.js'; @@ -50,26 +50,26 @@ import StorageEvent from '../event/events/StorageEvent.js'; import SubmitEvent from '../event/events/SubmitEvent.js'; import TouchEvent from '../event/events/TouchEvent.js'; import WheelEvent from '../event/events/WheelEvent.js'; -import DOMException from '../exception/DOMException.js'; +import type DOMException from '../exception/DOMException.js'; import DOMExceptionNameEnum from '../exception/DOMExceptionNameEnum.js'; -import AbortController from '../fetch/AbortController.js'; -import AbortSignal from '../fetch/AbortSignal.js'; +import type AbortController from '../fetch/AbortController.js'; +import type AbortSignal from '../fetch/AbortSignal.js'; import Fetch from '../fetch/Fetch.js'; -import Headers from '../fetch/Headers.js'; -import Request from '../fetch/Request.js'; -import Response from '../fetch/Response.js'; -import IRequestInfo from '../fetch/types/IRequestInfo.js'; -import IRequestInit from '../fetch/types/IRequestInit.js'; +import type Headers from '../fetch/Headers.js'; +import type Request from '../fetch/Request.js'; +import type Response from '../fetch/Response.js'; +import type { TRequestInfo } from '../fetch/types/TRequestInfo.js'; +import type IRequestInit from '../fetch/types/IRequestInit.js'; import Blob from '../file/Blob.js'; import File from '../file/File.js'; -import FileReader from '../file/FileReader.js'; -import FormData from '../form-data/FormData.js'; +import type FileReader from '../file/FileReader.js'; +import type FormData from '../form-data/FormData.js'; import History from '../history/History.js'; import IntersectionObserver from '../intersection-observer/IntersectionObserver.js'; import IntersectionObserverEntry from '../intersection-observer/IntersectionObserverEntry.js'; import Location from '../location/Location.js'; import MediaQueryList from '../match-media/MediaQueryList.js'; -import MutationObserver from '../mutation-observer/MutationObserver.js'; +import type MutationObserver from '../mutation-observer/MutationObserver.js'; import MutationRecord from '../mutation-observer/MutationRecord.js'; import MimeType from '../navigator/MimeType.js'; import MimeTypeArray from '../navigator/MimeTypeArray.js'; @@ -78,10 +78,10 @@ import Plugin from '../navigator/Plugin.js'; import PluginArray from '../navigator/PluginArray.js'; import Attr from '../nodes/attr/Attr.js'; import CharacterData from '../nodes/character-data/CharacterData.js'; -import Comment from '../nodes/comment/Comment.js'; -import DocumentFragment from '../nodes/document-fragment/DocumentFragment.js'; +import type Comment from '../nodes/comment/Comment.js'; +import type DocumentFragment from '../nodes/document-fragment/DocumentFragment.js'; import DocumentType from '../nodes/document-type/DocumentType.js'; -import Document from '../nodes/document/Document.js'; +import type Document from '../nodes/document/Document.js'; import DocumentReadyStateEnum from '../nodes/document/DocumentReadyStateEnum.js'; import DocumentReadyStateManager from '../nodes/document/DocumentReadyStateManager.js'; import DOMRect from '../dom/DOMRect.js'; @@ -91,7 +91,7 @@ import HTMLCollection from '../nodes/element/HTMLCollection.js'; import NamedNodeMap from '../nodes/element/NamedNodeMap.js'; import HTMLAnchorElement from '../nodes/html-anchor-element/HTMLAnchorElement.js'; import HTMLAreaElement from '../nodes/html-area-element/HTMLAreaElement.js'; -import Audio from '../nodes/html-audio-element/Audio.js'; +import type Audio from '../nodes/html-audio-element/Audio.js'; import HTMLAudioElement from '../nodes/html-audio-element/HTMLAudioElement.js'; import HTMLBaseElement from '../nodes/html-base-element/HTMLBaseElement.js'; import HTMLBodyElement from '../nodes/html-body-element/HTMLBodyElement.js'; @@ -104,7 +104,7 @@ import HTMLDataListElement from '../nodes/html-data-list-element/HTMLDataListEle import HTMLDetailsElement from '../nodes/html-details-element/HTMLDetailsElement.js'; import HTMLDialogElement from '../nodes/html-dialog-element/HTMLDialogElement.js'; import HTMLDivElement from '../nodes/html-div-element/HTMLDivElement.js'; -import HTMLDocument from '../nodes/html-document/HTMLDocument.js'; +import type HTMLDocument from '../nodes/html-document/HTMLDocument.js'; import HTMLElement from '../nodes/html-element/HTMLElement.js'; import HTMLEmbedElement from '../nodes/html-embed-element/HTMLEmbedElement.js'; import HTMLFieldSetElement from '../nodes/html-field-set-element/HTMLFieldSetElement.js'; @@ -117,7 +117,7 @@ import HTMLHRElement from '../nodes/html-hr-element/HTMLHRElement.js'; import HTMLHtmlElement from '../nodes/html-html-element/HTMLHtmlElement.js'; import HTMLIFrameElement from '../nodes/html-iframe-element/HTMLIFrameElement.js'; import HTMLImageElement from '../nodes/html-image-element/HTMLImageElement.js'; -import Image from '../nodes/html-image-element/Image.js'; +import type Image from '../nodes/html-image-element/Image.js'; import FileList from '../nodes/html-input-element/FileList.js'; import HTMLInputElement from '../nodes/html-input-element/HTMLInputElement.js'; import HTMLLabelElement from '../nodes/html-label-element/HTMLLabelElement.js'; @@ -126,15 +126,15 @@ import HTMLLIElement from '../nodes/html-li-element/HTMLLIElement.js'; import HTMLLinkElement from '../nodes/html-link-element/HTMLLinkElement.js'; import HTMLMapElement from '../nodes/html-map-element/HTMLMapElement.js'; import HTMLMediaElement from '../nodes/html-media-element/HTMLMediaElement.js'; -import MediaStream from '../nodes/html-media-element/MediaStream.js'; -import MediaStreamTrack from '../nodes/html-media-element/MediaStreamTrack.js'; -import RemotePlayback from '../nodes/html-media-element/RemotePlayback.js'; -import TextTrack from '../nodes/html-media-element/TextTrack.js'; -import TextTrackCue from '../nodes/html-media-element/TextTrackCue.js'; +import type MediaStream from '../nodes/html-media-element/MediaStream.js'; +import type MediaStreamTrack from '../nodes/html-media-element/MediaStreamTrack.js'; +import type RemotePlayback from '../nodes/html-media-element/RemotePlayback.js'; +import type TextTrack from '../nodes/html-media-element/TextTrack.js'; +import type TextTrackCue from '../nodes/html-media-element/TextTrackCue.js'; import TextTrackCueList from '../nodes/html-media-element/TextTrackCueList.js'; -import TextTrackList from '../nodes/html-media-element/TextTrackList.js'; +import type TextTrackList from '../nodes/html-media-element/TextTrackList.js'; import TimeRanges from '../nodes/html-media-element/TimeRanges.js'; -import VTTCue from '../nodes/html-media-element/VTTCue.js'; +import type VTTCue from '../nodes/html-media-element/VTTCue.js'; import HTMLMenuElement from '../nodes/html-menu-element/HTMLMenuElement.js'; import HTMLMetaElement from '../nodes/html-meta-element/HTMLMetaElement.js'; import HTMLMeterElement from '../nodes/html-meter-element/HTMLMeterElement.js'; @@ -175,11 +175,11 @@ import NodeList from '../nodes/node/NodeList.js'; import ProcessingInstruction from '../nodes/processing-instruction/ProcessingInstruction.js'; import ShadowRoot from '../nodes/shadow-root/ShadowRoot.js'; import SVGElement from '../nodes/svg-element/SVGElement.js'; -import Text from '../nodes/text/Text.js'; -import XMLDocument from '../nodes/xml-document/XMLDocument.js'; -import PermissionStatus from '../permissions/PermissionStatus.js'; +import type Text from '../nodes/text/Text.js'; +import type XMLDocument from '../nodes/xml-document/XMLDocument.js'; +import type PermissionStatus from '../permissions/PermissionStatus.js'; import Permissions from '../permissions/Permissions.js'; -import Range from '../range/Range.js'; +import type Range from '../range/Range.js'; import ResizeObserver from '../resize-observer/ResizeObserver.js'; import Screen from '../screen/Screen.js'; import Selection from '../selection/Selection.js'; @@ -187,26 +187,23 @@ import Storage from '../storage/Storage.js'; import NodeFilter from '../tree-walker/NodeFilter.js'; import NodeIterator from '../tree-walker/NodeIterator.js'; import TreeWalker from '../tree-walker/TreeWalker.js'; -import URL from '../url/URL.js'; +import type URL from '../url/URL.js'; import ValidityState from '../validity-state/ValidityState.js'; -import XMLHttpRequest from '../xml-http-request/XMLHttpRequest.js'; -import XMLHttpRequestEventTarget from '../xml-http-request/XMLHttpRequestEventTarget.js'; -import XMLHttpRequestUpload from '../xml-http-request/XMLHttpRequestUpload.js'; +import type XMLHttpRequest from '../xml-http-request/XMLHttpRequest.js'; +import type XMLHttpRequestEventTarget from '../xml-http-request/XMLHttpRequestEventTarget.js'; +import type XMLHttpRequestUpload from '../xml-http-request/XMLHttpRequestUpload.js'; import XMLSerializer from '../xml-serializer/XMLSerializer.js'; -import CrossOriginBrowserWindow from './CrossOriginBrowserWindow.js'; -import INodeJSGlobal from './INodeJSGlobal.js'; +import type CrossOriginBrowserWindow from './CrossOriginBrowserWindow.js'; +import type INodeJSGlobal from './INodeJSGlobal.js'; import VMGlobalPropertyScript from './VMGlobalPropertyScript.js'; import WindowPageOpenUtility from './WindowPageOpenUtility.js'; -import { - PerformanceObserver, - PerformanceEntry, - PerformanceObserverEntryList as IPerformanceObserverEntryList -} from 'node:perf_hooks'; +import type { PerformanceObserverEntryList as IPerformanceObserverEntryList } from 'node:perf_hooks'; +import { PerformanceObserver, PerformanceEntry } from 'node:perf_hooks'; import EventPhaseEnum from '../event/EventPhaseEnum.js'; import HTMLOptionsCollection from '../nodes/html-select-element/HTMLOptionsCollection.js'; import WindowContextClassExtender from './WindowContextClassExtender.js'; import WindowBrowserContext from './WindowBrowserContext.js'; -import CanvasCaptureMediaStreamTrack from '../nodes/html-canvas-element/CanvasCaptureMediaStreamTrack.js'; +import type CanvasCaptureMediaStreamTrack from '../nodes/html-canvas-element/CanvasCaptureMediaStreamTrack.js'; import SVGSVGElement from '../nodes/svg-svg-element/SVGSVGElement.js'; import SVGGraphicsElement from '../nodes/svg-graphics-element/SVGGraphicsElement.js'; import SVGAnimateElement from '../nodes/svg-animate-element/SVGAnimateElement.js'; @@ -305,9 +302,9 @@ import SVGUnitTypes from '../svg/SVGUnitTypes.js'; import DOMPoint from '../dom/DOMPoint.js'; import SVGAnimatedLengthList from '../svg/SVGAnimatedLengthList.js'; import CustomElementReactionStack from '../custom-element/CustomElementReactionStack.js'; -import IScrollToOptions from './IScrollToOptions.js'; -import IModule from '../module/types/IModule.js'; -import IModuleImportMap from '../module/types/IModuleImportMap.js'; +import type IScrollToOptions from './IScrollToOptions.js'; +import type IModule from '../module/types/IModule.js'; +import type IModuleImportMap from '../module/types/IModuleImportMap.js'; import StylePropertyMapReadOnly from '../css/style-property-map/StylePropertyMapReadOnly.js'; import StylePropertyMap from '../css/style-property-map/StylePropertyMap.js'; import MediaList from '../css/MediaList.js'; @@ -317,9 +314,9 @@ import CSSConditionRule from '../css/rules/CSSConditionRule.js'; import CSSGroupingRule from '../css/rules/CSSGroupingRule.js'; import CSSScopeRule from '../css/rules/CSSScopeRule.js'; import PopStateEvent from '../event/events/PopStateEvent.js'; -import ITimerLoopsLimit from './ITimerLoopsLimit.js'; +import type ITimerLoopsLimit from './ITimerLoopsLimit.js'; import CloseEvent from '../event/events/CloseEvent.js'; -import WebSocket from '../web-socket/WebSocket.js'; +import type WebSocket from '../web-socket/WebSocket.js'; const TIMER = { setTimeout: globalThis.setTimeout.bind(globalThis), @@ -1686,7 +1683,7 @@ export default class BrowserWindow extends EventTarget implements INodeJSGlobal * @param [init] Init. * @returns Promise. */ - public async fetch(url: IRequestInfo, init?: IRequestInit): Promise { + public async fetch(url: TRequestInfo, init?: IRequestInit): Promise { if (this.closed) { return Promise.reject( new this.DOMException( diff --git a/packages/happy-dom/src/window/CrossOriginBrowserWindow.ts b/packages/happy-dom/src/window/CrossOriginBrowserWindow.ts index c1bd07a6d..affe205b0 100644 --- a/packages/happy-dom/src/window/CrossOriginBrowserWindow.ts +++ b/packages/happy-dom/src/window/CrossOriginBrowserWindow.ts @@ -1,8 +1,8 @@ import EventTarget from '../event/EventTarget.js'; -import BrowserWindow from './BrowserWindow.js'; +import type BrowserWindow from './BrowserWindow.js'; import DOMException from '../exception/DOMException.js'; import DOMExceptionNameEnum from '../exception/DOMExceptionNameEnum.js'; -import Location from '../location/Location.js'; +import type Location from '../location/Location.js'; import * as PropertySymbol from '../PropertySymbol.js'; /** diff --git a/packages/happy-dom/src/window/DetachedWindowAPI.ts b/packages/happy-dom/src/window/DetachedWindowAPI.ts index 824ca2f9d..d284b50f5 100644 --- a/packages/happy-dom/src/window/DetachedWindowAPI.ts +++ b/packages/happy-dom/src/window/DetachedWindowAPI.ts @@ -1,7 +1,7 @@ -import VirtualConsolePrinter from '../console/VirtualConsolePrinter.js'; -import IOptionalBrowserPageViewport from '../browser/types/IOptionalBrowserPageViewport.js'; -import IBrowserFrame from '../browser/types/IBrowserFrame.js'; -import IBrowserSettings from '../browser/types/IBrowserSettings.js'; +import type VirtualConsolePrinter from '../console/VirtualConsolePrinter.js'; +import type IOptionalBrowserPageViewport from '../browser/types/IOptionalBrowserPageViewport.js'; +import type IBrowserFrame from '../browser/types/IBrowserFrame.js'; +import type IBrowserSettings from '../browser/types/IBrowserSettings.js'; /** * API for detached windows to be able to access features of the browser. diff --git a/packages/happy-dom/src/window/INodeJSGlobal.ts b/packages/happy-dom/src/window/INodeJSGlobal.ts index e1559d871..cc3ac65a3 100644 --- a/packages/happy-dom/src/window/INodeJSGlobal.ts +++ b/packages/happy-dom/src/window/INodeJSGlobal.ts @@ -1,4 +1,4 @@ -import { Buffer } from 'buffer'; +import type { Buffer } from 'buffer'; /* eslint-disable @typescript-eslint/no-explicit-any */ diff --git a/packages/happy-dom/src/window/Window.ts b/packages/happy-dom/src/window/Window.ts index ea71c50cf..a08fb62c1 100644 --- a/packages/happy-dom/src/window/Window.ts +++ b/packages/happy-dom/src/window/Window.ts @@ -1,5 +1,5 @@ import DetachedWindowAPI from './DetachedWindowAPI.js'; -import IOptionalBrowserSettings from '../browser/types/IOptionalBrowserSettings.js'; +import type IOptionalBrowserSettings from '../browser/types/IOptionalBrowserSettings.js'; import BrowserWindow from './BrowserWindow.js'; import DetachedBrowser from '../browser/detached-browser/DetachedBrowser.js'; import * as PropertySymbol from '../PropertySymbol.js'; diff --git a/packages/happy-dom/src/window/WindowBrowserContext.ts b/packages/happy-dom/src/window/WindowBrowserContext.ts index e50ae9a99..c20fa3148 100644 --- a/packages/happy-dom/src/window/WindowBrowserContext.ts +++ b/packages/happy-dom/src/window/WindowBrowserContext.ts @@ -1,11 +1,11 @@ -import AsyncTaskManager from '../async-task-manager/AsyncTaskManager.js'; -import IBrowser from '../browser/types/IBrowser.js'; -import IBrowserContext from '../browser/types/IBrowserContext.js'; -import IBrowserFrame from '../browser/types/IBrowserFrame.js'; -import IBrowserPage from '../browser/types/IBrowserPage.js'; -import IBrowserSettings from '../browser/types/IBrowserSettings.js'; +import type AsyncTaskManager from '../async-task-manager/AsyncTaskManager.js'; +import type IBrowser from '../browser/types/IBrowser.js'; +import type IBrowserContext from '../browser/types/IBrowserContext.js'; +import type IBrowserFrame from '../browser/types/IBrowserFrame.js'; +import type IBrowserPage from '../browser/types/IBrowserPage.js'; +import type IBrowserSettings from '../browser/types/IBrowserSettings.js'; import * as PropertySymbol from '../PropertySymbol.js'; -import BrowserWindow from './BrowserWindow.js'; +import type BrowserWindow from './BrowserWindow.js'; /** * API for accessing the Browser in a Window context without exposing the Browser as accessible properties. diff --git a/packages/happy-dom/src/window/WindowContextClassExtender.ts b/packages/happy-dom/src/window/WindowContextClassExtender.ts index 5f8c52d53..b8d1dff2f 100644 --- a/packages/happy-dom/src/window/WindowContextClassExtender.ts +++ b/packages/happy-dom/src/window/WindowContextClassExtender.ts @@ -1,4 +1,4 @@ -import BrowserWindow from './BrowserWindow.js'; +import type BrowserWindow from './BrowserWindow.js'; import * as PropertySymbol from '../PropertySymbol.js'; import DocumentImplementation from '../nodes/document/Document.js'; diff --git a/packages/happy-dom/src/window/WindowPageOpenUtility.ts b/packages/happy-dom/src/window/WindowPageOpenUtility.ts index 64da646a0..97a9ffe04 100644 --- a/packages/happy-dom/src/window/WindowPageOpenUtility.ts +++ b/packages/happy-dom/src/window/WindowPageOpenUtility.ts @@ -1,6 +1,6 @@ -import BrowserWindow from './BrowserWindow.js'; +import type BrowserWindow from './BrowserWindow.js'; import CrossOriginBrowserWindow from './CrossOriginBrowserWindow.js'; -import IBrowserFrame from '../browser/types/IBrowserFrame.js'; +import type IBrowserFrame from '../browser/types/IBrowserFrame.js'; import FetchCORSUtility from '../fetch/utilities/FetchCORSUtility.js'; import BrowserFrameURL from '../browser/utilities/BrowserFrameURL.js'; import { URL } from 'url'; diff --git a/packages/happy-dom/src/xml-http-request/XMLHttpRequest.ts b/packages/happy-dom/src/xml-http-request/XMLHttpRequest.ts index a0787391a..fc0b3614c 100644 --- a/packages/happy-dom/src/xml-http-request/XMLHttpRequest.ts +++ b/packages/happy-dom/src/xml-http-request/XMLHttpRequest.ts @@ -2,26 +2,26 @@ import XMLHttpRequestEventTarget from './XMLHttpRequestEventTarget.js'; import * as PropertySymbol from '../PropertySymbol.js'; import XMLHttpRequestReadyStateEnum from './XMLHttpRequestReadyStateEnum.js'; import Event from '../event/Event.js'; -import Document from '../nodes/document/Document.js'; -import Blob from '../file/Blob.js'; -import XMLHttpRequestUpload from './XMLHttpRequestUpload.js'; +import type Document from '../nodes/document/Document.js'; +import type Blob from '../file/Blob.js'; +import type XMLHttpRequestUpload from './XMLHttpRequestUpload.js'; import DOMException from '../exception/DOMException.js'; import DOMExceptionNameEnum from '../exception/DOMExceptionNameEnum.js'; import XMLHttpResponseTypeEnum from './XMLHttpResponseTypeEnum.js'; import ErrorEvent from '../event/events/ErrorEvent.js'; import Fetch from '../fetch/Fetch.js'; import SyncFetch from '../fetch/SyncFetch.js'; -import Request from '../fetch/Request.js'; -import ISyncResponse from '../fetch/types/ISyncResponse.js'; -import AbortController from '../fetch/AbortController.js'; +import type Request from '../fetch/Request.js'; +import type ISyncResponse from '../fetch/types/ISyncResponse.js'; +import type AbortController from '../fetch/AbortController.js'; import ProgressEvent from '../event/events/ProgressEvent.js'; import NodeTypeEnum from '../nodes/node/NodeTypeEnum.js'; -import IRequestBody from '../fetch/types/IRequestBody.js'; +import type { TRequestBody } from '../fetch/types/TRequestBody.js'; import XMLHttpRequestResponseDataParser from './XMLHttpRequestResponseDataParser.js'; import FetchRequestHeaderUtility from '../fetch/utilities/FetchRequestHeaderUtility.js'; -import Response from '../fetch/Response.js'; +import type Response from '../fetch/Response.js'; import WindowBrowserContext from '../window/WindowBrowserContext.js'; -import BrowserWindow from '../window/BrowserWindow.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; import BrowserErrorCaptureEnum from '../browser/enums/BrowserErrorCaptureEnum.js'; /** @@ -305,7 +305,7 @@ export default class XMLHttpRequest extends XMLHttpRequestEventTarget { * * @param body Optional data to send as request body. */ - public send(body?: Document | IRequestBody): void { + public send(body?: Document | TRequestBody): void { const window = this[PropertySymbol.window]; if (this.readyState != XMLHttpRequestReadyStateEnum.opened) { @@ -325,11 +325,11 @@ export default class XMLHttpRequest extends XMLHttpRequestEventTarget { } if (this.#async) { - this.#sendAsync(body).catch((error) => { + this.#sendAsync(body).catch((error) => { throw error; }); } else { - this.#sendSync(body); + this.#sendSync(body); } } @@ -370,7 +370,7 @@ export default class XMLHttpRequest extends XMLHttpRequestEventTarget { * * @param body Optional data to send as request body. */ - async #sendAsync(body?: IRequestBody): Promise { + async #sendAsync(body?: TRequestBody): Promise { const window = this[PropertySymbol.window]; const browserFrame = new WindowBrowserContext(window).getBrowserFrame(); @@ -498,7 +498,7 @@ export default class XMLHttpRequest extends XMLHttpRequestEventTarget { * * @param body Optional data to send as request body. */ - #sendSync(body?: IRequestBody): void { + #sendSync(body?: TRequestBody): void { const window = this[PropertySymbol.window]; const browserFrame = new WindowBrowserContext(window).getBrowserFrame(); diff --git a/packages/happy-dom/src/xml-http-request/XMLHttpRequestEventTarget.ts b/packages/happy-dom/src/xml-http-request/XMLHttpRequestEventTarget.ts index 98707e8a2..49c2bff97 100644 --- a/packages/happy-dom/src/xml-http-request/XMLHttpRequestEventTarget.ts +++ b/packages/happy-dom/src/xml-http-request/XMLHttpRequestEventTarget.ts @@ -1,4 +1,4 @@ -import ProgressEvent from '../event/events/ProgressEvent.js'; +import type ProgressEvent from '../event/events/ProgressEvent.js'; import EventTarget from '../event/EventTarget.js'; import * as PropertySymbol from '../PropertySymbol.js'; diff --git a/packages/happy-dom/src/xml-http-request/XMLHttpRequestResponseDataParser.ts b/packages/happy-dom/src/xml-http-request/XMLHttpRequestResponseDataParser.ts index 0b2ac146d..0af439510 100644 --- a/packages/happy-dom/src/xml-http-request/XMLHttpRequestResponseDataParser.ts +++ b/packages/happy-dom/src/xml-http-request/XMLHttpRequestResponseDataParser.ts @@ -1,8 +1,8 @@ import XMLHttpResponseTypeEnum from './XMLHttpResponseTypeEnum.js'; -import BrowserWindow from '../window/BrowserWindow.js'; -import Blob from '../file/Blob.js'; -import Document from '../nodes/document/Document.js'; -import { Buffer } from 'buffer'; +import type BrowserWindow from '../window/BrowserWindow.js'; +import type Blob from '../file/Blob.js'; +import type Document from '../nodes/document/Document.js'; +import type { Buffer } from 'buffer'; /** * diff --git a/packages/happy-dom/src/xml-parser/XMLParser.ts b/packages/happy-dom/src/xml-parser/XMLParser.ts index c955c2917..e9fcf4c4a 100755 --- a/packages/happy-dom/src/xml-parser/XMLParser.ts +++ b/packages/happy-dom/src/xml-parser/XMLParser.ts @@ -1,9 +1,9 @@ import * as PropertySymbol from '../PropertySymbol.js'; import NamespaceURI from '../config/NamespaceURI.js'; -import Element from '../nodes/element/Element.js'; +import type Element from '../nodes/element/Element.js'; import Node from '../nodes/node/Node.js'; -import BrowserWindow from '../window/BrowserWindow.js'; -import XMLDocument from '../nodes/xml-document/XMLDocument.js'; +import type BrowserWindow from '../window/BrowserWindow.js'; +import type XMLDocument from '../nodes/xml-document/XMLDocument.js'; import XMLEncodeUtility from '../utilities/XMLEncodeUtility.js'; import NodeFactory from '../nodes/NodeFactory.js'; diff --git a/packages/happy-dom/src/xml-serializer/XMLSerializer.ts b/packages/happy-dom/src/xml-serializer/XMLSerializer.ts index 366634ec7..5d5650919 100644 --- a/packages/happy-dom/src/xml-serializer/XMLSerializer.ts +++ b/packages/happy-dom/src/xml-serializer/XMLSerializer.ts @@ -1,13 +1,13 @@ -import Element from '../nodes/element/Element.js'; +import type Element from '../nodes/element/Element.js'; import * as PropertySymbol from '../PropertySymbol.js'; import Node from '../nodes/node/Node.js'; -import DocumentType from '../nodes/document-type/DocumentType.js'; -import HTMLTemplateElement from '../nodes/html-template-element/HTMLTemplateElement.js'; +import type DocumentType from '../nodes/document-type/DocumentType.js'; +import type HTMLTemplateElement from '../nodes/html-template-element/HTMLTemplateElement.js'; import NodeTypeEnum from '../nodes/node/NodeTypeEnum.js'; -import DocumentFragment from '../nodes/document-fragment/DocumentFragment.js'; +import type DocumentFragment from '../nodes/document-fragment/DocumentFragment.js'; import HTMLElementConfig from '../config/HTMLElementConfig.js'; import HTMLElementConfigContentModelEnum from '../config/HTMLElementConfigContentModelEnum.js'; -import ProcessingInstruction from '../nodes/processing-instruction/ProcessingInstruction.js'; +import type ProcessingInstruction from '../nodes/processing-instruction/ProcessingInstruction.js'; import NamespaceURI from '../config/NamespaceURI.js'; import XMLEncodeUtility from '../utilities/XMLEncodeUtility.js'; diff --git a/packages/happy-dom/test/AdoptedStyleSheetCustomElement.ts b/packages/happy-dom/test/AdoptedStyleSheetCustomElement.ts index fcd379865..b9ddd01d8 100644 --- a/packages/happy-dom/test/AdoptedStyleSheetCustomElement.ts +++ b/packages/happy-dom/test/AdoptedStyleSheetCustomElement.ts @@ -1,4 +1,4 @@ -import ShadowRoot from '../src/nodes/shadow-root/ShadowRoot.js'; +import type ShadowRoot from '../src/nodes/shadow-root/ShadowRoot.js'; import HTMLElement from '../src/nodes/html-element/HTMLElement.js'; import CSSStyleSheet from '../src/css/CSSStyleSheet.js'; diff --git a/packages/happy-dom/test/CustomElement.ts b/packages/happy-dom/test/CustomElement.ts index ea110b3a0..9ea227025 100644 --- a/packages/happy-dom/test/CustomElement.ts +++ b/packages/happy-dom/test/CustomElement.ts @@ -1,4 +1,4 @@ -import ShadowRoot from '../src/nodes/shadow-root/ShadowRoot.js'; +import type ShadowRoot from '../src/nodes/shadow-root/ShadowRoot.js'; import HTMLElement from '../src/nodes/html-element/HTMLElement.js'; /** diff --git a/packages/happy-dom/test/browser/BrowserFrame.test.ts b/packages/happy-dom/test/browser/BrowserFrame.test.ts index f3edf7cf7..a55af9eb6 100644 --- a/packages/happy-dom/test/browser/BrowserFrame.test.ts +++ b/packages/happy-dom/test/browser/BrowserFrame.test.ts @@ -2,8 +2,8 @@ import { Script } from 'vm'; import Browser from '../../src/browser/Browser'; import Event from '../../src/event/Event'; import BrowserWindow from '../../src/window/BrowserWindow'; -import Request from '../../src/fetch/Request'; -import Response from '../../src/fetch/Response'; +import type Request from '../../src/fetch/Request'; +import type Response from '../../src/fetch/Response'; import { describe, it, expect, afterEach, vi } from 'vitest'; import Fetch from '../../src/fetch/Fetch'; import DOMExceptionNameEnum from '../../src/exception/DOMExceptionNameEnum'; @@ -12,7 +12,7 @@ import BrowserFrameFactory from '../../src/browser/utilities/BrowserFrameFactory import BrowserErrorCaptureEnum from '../../src/browser/enums/BrowserErrorCaptureEnum'; import Headers from '../../src/fetch/Headers'; import * as PropertySymbol from '../../src/PropertySymbol'; -import HashChangeEvent from '../../src/event/events/HashChangeEvent'; +import type HashChangeEvent from '../../src/event/events/HashChangeEvent'; const STACK_TRACE_REGEXP = />.+$\s*/gm; diff --git a/packages/happy-dom/test/browser/BrowserPage.test.ts b/packages/happy-dom/test/browser/BrowserPage.test.ts index 9e1714229..e7996a8d8 100644 --- a/packages/happy-dom/test/browser/BrowserPage.test.ts +++ b/packages/happy-dom/test/browser/BrowserPage.test.ts @@ -3,9 +3,9 @@ import BrowserFrame from '../../src/browser/BrowserFrame'; import BrowserWindow from '../../src/window/BrowserWindow'; import VirtualConsolePrinter from '../../src/console/VirtualConsolePrinter'; import VirtualConsole from '../../src/console/VirtualConsole'; -import Response from '../../src/fetch/Response'; +import type Response from '../../src/fetch/Response'; import { describe, it, expect, afterEach, vi } from 'vitest'; -import IGoToOptions from '../../src/browser/types/IGoToOptions'; +import type IGoToOptions from '../../src/browser/types/IGoToOptions'; import BrowserFrameFactory from '../../src/browser/utilities/BrowserFrameFactory'; import Event from '../../src/event/Event'; import * as PropertySymbol from '../../src/PropertySymbol'; diff --git a/packages/happy-dom/test/browser/detached-browser/DetachedBrowserFrame.test.ts b/packages/happy-dom/test/browser/detached-browser/DetachedBrowserFrame.test.ts index 24bd9a0f7..3a0d3c23b 100644 --- a/packages/happy-dom/test/browser/detached-browser/DetachedBrowserFrame.test.ts +++ b/packages/happy-dom/test/browser/detached-browser/DetachedBrowserFrame.test.ts @@ -2,8 +2,8 @@ import { Script } from 'vm'; import DetachedBrowser from '../../../src/browser/detached-browser/DetachedBrowser'; import Event from '../../../src/event/Event'; import BrowserWindow from '../../../src/window/BrowserWindow'; -import Request from '../../../src/fetch/Request'; -import Response from '../../../src/fetch/Response'; +import type Request from '../../../src/fetch/Request'; +import type Response from '../../../src/fetch/Response'; import { describe, it, expect, afterEach, vi } from 'vitest'; import Fetch from '../../../src/fetch/Fetch'; import DOMException from '../../../src/exception/DOMException'; @@ -13,7 +13,7 @@ import BrowserFrameFactory from '../../../src/browser/utilities/BrowserFrameFact import BrowserErrorCaptureEnum from '../../../src/browser/enums/BrowserErrorCaptureEnum'; import Headers from '../../../src/fetch/Headers'; import * as PropertySymbol from '../../../src/PropertySymbol'; -import HashChangeEvent from '../../../src/event/events/HashChangeEvent'; +import type HashChangeEvent from '../../../src/event/events/HashChangeEvent'; describe('DetachedBrowserFrame', () => { afterEach(() => { diff --git a/packages/happy-dom/test/browser/detached-browser/DetachedBrowserPage.test.ts b/packages/happy-dom/test/browser/detached-browser/DetachedBrowserPage.test.ts index 5d38452c9..a7f0d7376 100644 --- a/packages/happy-dom/test/browser/detached-browser/DetachedBrowserPage.test.ts +++ b/packages/happy-dom/test/browser/detached-browser/DetachedBrowserPage.test.ts @@ -4,9 +4,9 @@ import Window from '../../../src/window/Window'; import BrowserWindow from '../../../src/window/BrowserWindow'; import VirtualConsolePrinter from '../../../src/console/VirtualConsolePrinter'; import VirtualConsole from '../../../src/console/VirtualConsole'; -import Response from '../../../src/fetch/Response'; +import type Response from '../../../src/fetch/Response'; import { describe, it, expect, afterEach, vi } from 'vitest'; -import IGoToOptions from '../../../src/browser/types/IGoToOptions'; +import type IGoToOptions from '../../../src/browser/types/IGoToOptions'; import BrowserFrameFactory from '../../../src/browser/utilities/BrowserFrameFactory'; import Event from '../../../src/event/Event'; diff --git a/packages/happy-dom/test/cookie/CookieContainer.test.ts b/packages/happy-dom/test/cookie/CookieContainer.test.ts index fd1a1cec3..3550fddc8 100644 --- a/packages/happy-dom/test/cookie/CookieContainer.test.ts +++ b/packages/happy-dom/test/cookie/CookieContainer.test.ts @@ -1,7 +1,7 @@ import CookieContainer from '../../src/cookie/CookieContainer.js'; import CookieSameSiteEnum from '../../src/cookie/enums/CookieSameSiteEnum.js'; -import ICookie from '../../src/cookie/ICookie.js'; -import ICookieContainer from '../../src/cookie/ICookieContainer.js'; +import type ICookie from '../../src/cookie/ICookie.js'; +import type ICookieContainer from '../../src/cookie/ICookieContainer.js'; import CookieStringUtility from '../../src/cookie/urilities/CookieStringUtility.js'; import URL from '../../src/url/URL.js'; import { beforeEach, afterEach, describe, it, expect, vi } from 'vitest'; diff --git a/packages/happy-dom/test/cookie/urilities/CookieURLUtility.test.ts b/packages/happy-dom/test/cookie/urilities/CookieURLUtility.test.ts index 6c9535b8b..91bf1199c 100644 --- a/packages/happy-dom/test/cookie/urilities/CookieURLUtility.test.ts +++ b/packages/happy-dom/test/cookie/urilities/CookieURLUtility.test.ts @@ -1,6 +1,6 @@ import CookieURLUtility from '../../../src/cookie/urilities/CookieURLUtility.js'; import CookieSameSiteEnum from '../../../src/cookie/enums/CookieSameSiteEnum.js'; -import ICookie from '../../../src/cookie/ICookie.js'; +import type ICookie from '../../../src/cookie/ICookie.js'; import URL from '../../../src/url/URL.js'; import { describe, it, expect } from 'vitest'; diff --git a/packages/happy-dom/test/css/CSS.test.ts b/packages/happy-dom/test/css/CSS.test.ts index 10a7085a1..46a4fbdb4 100644 --- a/packages/happy-dom/test/css/CSS.test.ts +++ b/packages/happy-dom/test/css/CSS.test.ts @@ -1,6 +1,6 @@ import CSS from '../../src/css/CSS.js'; import CSSUnits from '../../src/css/CSSUnits.js'; -import CSSUnitValue from '../../src/css/CSSUnitValue.js'; +import type CSSUnitValue from '../../src/css/CSSUnitValue.js'; import { beforeEach, describe, it, expect } from 'vitest'; describe('CSS', () => { diff --git a/packages/happy-dom/test/css/CSSParser.test.ts b/packages/happy-dom/test/css/CSSParser.test.ts index 6003eb047..01edf9555 100644 --- a/packages/happy-dom/test/css/CSSParser.test.ts +++ b/packages/happy-dom/test/css/CSSParser.test.ts @@ -1,12 +1,12 @@ import CSSStyleSheet from '../../src/css/CSSStyleSheet.js'; import CSSParser from '../../src/css/utilities/CSSParser.js'; -import CSSStyleRule from '../../src/css/rules/CSSStyleRule.js'; -import CSSMediaRule from '../../src/css/rules/CSSMediaRule.js'; +import type CSSStyleRule from '../../src/css/rules/CSSStyleRule.js'; +import type CSSMediaRule from '../../src/css/rules/CSSMediaRule.js'; import CSSParserInput from './data/CSSParserInput.js'; -import CSSKeyframeRule from '../../src/css/rules/CSSKeyframeRule.js'; -import CSSKeyframesRule from '../../src/css/rules/CSSKeyframesRule.js'; -import CSSContainerRule from '../../src/css/rules/CSSContainerRule.js'; -import CSSSupportsRule from '../../src/css/rules/CSSSupportsRule.js'; +import type CSSKeyframeRule from '../../src/css/rules/CSSKeyframeRule.js'; +import type CSSKeyframesRule from '../../src/css/rules/CSSKeyframesRule.js'; +import type CSSContainerRule from '../../src/css/rules/CSSContainerRule.js'; +import type CSSSupportsRule from '../../src/css/rules/CSSSupportsRule.js'; import { describe, it, expect } from 'vitest'; describe('CSSParser', () => { diff --git a/packages/happy-dom/test/css/CSSRule.test.ts b/packages/happy-dom/test/css/CSSRule.test.ts index 8ad0906f9..c0ac3001a 100644 --- a/packages/happy-dom/test/css/CSSRule.test.ts +++ b/packages/happy-dom/test/css/CSSRule.test.ts @@ -1,9 +1,9 @@ import { describe, it, expect, beforeEach } from 'vitest'; import * as PropertySymbol from '../../src/PropertySymbol.js'; -import BrowserWindow from '../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../src/window/BrowserWindow.js'; import Window from '../../src/window/Window.js'; import CSSParser from '../../src/css/utilities/CSSParser.js'; -import CSSStyleSheet from '../../src/css/CSSStyleSheet.js'; +import type CSSStyleSheet from '../../src/css/CSSStyleSheet.js'; import CSSRuleTypeEnum from '../../src/css/CSSRuleTypeEnum.js'; import CSSStyleRule from '../../src/css/rules/CSSStyleRule.js'; import CSSRule from '../../src/css/CSSRule.js'; diff --git a/packages/happy-dom/test/css/CSSStyleSheet.test.ts b/packages/happy-dom/test/css/CSSStyleSheet.test.ts index 4e7fe9c63..167811729 100644 --- a/packages/happy-dom/test/css/CSSStyleSheet.test.ts +++ b/packages/happy-dom/test/css/CSSStyleSheet.test.ts @@ -1,8 +1,8 @@ import DOMException from '../../src/exception/DOMException.js'; import DOMExceptionNameEnum from '../../src/exception/DOMExceptionNameEnum.js'; -import CSSStyleSheet from '../../src/css/CSSStyleSheet.js'; +import type CSSStyleSheet from '../../src/css/CSSStyleSheet.js'; import { beforeEach, describe, it, expect } from 'vitest'; -import BrowserWindow from '../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../src/window/BrowserWindow.js'; import Window from '../../src/window/Window.js'; describe('CSSStyleSheet', () => { diff --git a/packages/happy-dom/test/css/MediaList.test.ts b/packages/happy-dom/test/css/MediaList.test.ts index 1e37480dc..098a9b92a 100644 --- a/packages/happy-dom/test/css/MediaList.test.ts +++ b/packages/happy-dom/test/css/MediaList.test.ts @@ -1,9 +1,9 @@ import { describe, it, expect, beforeEach } from 'vitest'; import * as PropertySymbol from '../../src/PropertySymbol.js'; -import BrowserWindow from '../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../src/window/BrowserWindow.js'; import Window from '../../src/window/Window.js'; import CSSParser from '../../src/css/utilities/CSSParser.js'; -import CSSStyleSheet from '../../src/css/CSSStyleSheet.js'; +import type CSSStyleSheet from '../../src/css/CSSStyleSheet.js'; import CSSMediaRule from '../../src/css/rules/CSSMediaRule.js'; describe('MediaList', () => { diff --git a/packages/happy-dom/test/css/declaration/CSSStyleDeclaration.test.ts b/packages/happy-dom/test/css/declaration/CSSStyleDeclaration.test.ts index 757885e78..ead481e94 100644 --- a/packages/happy-dom/test/css/declaration/CSSStyleDeclaration.test.ts +++ b/packages/happy-dom/test/css/declaration/CSSStyleDeclaration.test.ts @@ -1,7 +1,7 @@ import CSSStyleDeclaration from '../../../src/css/declaration/CSSStyleDeclaration.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; -import HTMLElement from '../../../src/nodes/html-element/HTMLElement.js'; +import type Document from '../../../src/nodes/document/Document.js'; +import type HTMLElement from '../../../src/nodes/html-element/HTMLElement.js'; import * as PropertySymbol from '../../../src/PropertySymbol.js'; import { beforeEach, describe, it, expect } from 'vitest'; diff --git a/packages/happy-dom/test/css/declaration/computed-style/CSSStyleDeclarationComputedStyle.test.ts b/packages/happy-dom/test/css/declaration/computed-style/CSSStyleDeclarationComputedStyle.test.ts index 3c7f019c7..ad4518204 100644 --- a/packages/happy-dom/test/css/declaration/computed-style/CSSStyleDeclarationComputedStyle.test.ts +++ b/packages/happy-dom/test/css/declaration/computed-style/CSSStyleDeclarationComputedStyle.test.ts @@ -1,6 +1,6 @@ import Window from '../../../../src/window/Window.js'; -import Document from '../../../../src/nodes/document/Document.js'; -import HTMLElement from '../../../../src/nodes/html-element/HTMLElement.js'; +import type Document from '../../../../src/nodes/document/Document.js'; +import type HTMLElement from '../../../../src/nodes/html-element/HTMLElement.js'; import CSSStyleDeclarationElementStyle from '../../../../src/css/declaration/computed-style/CSSStyleDeclarationComputedStyle.js'; import { beforeEach, describe, it, expect } from 'vitest'; diff --git a/packages/happy-dom/test/css/rules/CSSConditionRule.test.ts b/packages/happy-dom/test/css/rules/CSSConditionRule.test.ts index 2ba2dfede..f304973f3 100644 --- a/packages/happy-dom/test/css/rules/CSSConditionRule.test.ts +++ b/packages/happy-dom/test/css/rules/CSSConditionRule.test.ts @@ -1,9 +1,9 @@ import { describe, it, expect, beforeEach } from 'vitest'; import * as PropertySymbol from '../../../src/PropertySymbol.js'; -import BrowserWindow from '../../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../../src/window/BrowserWindow.js'; import Window from '../../../src/window/Window.js'; import CSSParser from '../../../src/css/utilities/CSSParser'; -import CSSStyleSheet from '../../../src/css/CSSStyleSheet'; +import type CSSStyleSheet from '../../../src/css/CSSStyleSheet'; import CSSSupportsRule from '../../../src/css/rules/CSSSupportsRule'; describe('CSSConditionRule', () => { diff --git a/packages/happy-dom/test/css/rules/CSSContainerRule.test.ts b/packages/happy-dom/test/css/rules/CSSContainerRule.test.ts index bd6869324..edca5d12e 100644 --- a/packages/happy-dom/test/css/rules/CSSContainerRule.test.ts +++ b/packages/happy-dom/test/css/rules/CSSContainerRule.test.ts @@ -1,9 +1,9 @@ import { describe, it, expect, beforeEach } from 'vitest'; import * as PropertySymbol from '../../../src/PropertySymbol.js'; -import BrowserWindow from '../../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../../src/window/BrowserWindow.js'; import Window from '../../../src/window/Window.js'; import CSSParser from '../../../src/css/utilities/CSSParser.js'; -import CSSStyleSheet from '../../../src/css/CSSStyleSheet.js'; +import type CSSStyleSheet from '../../../src/css/CSSStyleSheet.js'; import CSSContainerRule from '../../../src/css/rules/CSSContainerRule.js'; import CSSRuleTypeEnum from '../../../src/css/CSSRuleTypeEnum.js'; diff --git a/packages/happy-dom/test/css/rules/CSSFontFaceRule.test.ts b/packages/happy-dom/test/css/rules/CSSFontFaceRule.test.ts index 00480d7e1..7816d1519 100644 --- a/packages/happy-dom/test/css/rules/CSSFontFaceRule.test.ts +++ b/packages/happy-dom/test/css/rules/CSSFontFaceRule.test.ts @@ -1,9 +1,9 @@ import { describe, it, expect, beforeEach } from 'vitest'; import * as PropertySymbol from '../../../src/PropertySymbol.js'; -import BrowserWindow from '../../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../../src/window/BrowserWindow.js'; import Window from '../../../src/window/Window.js'; import CSSParser from '../../../src/css/utilities/CSSParser.js'; -import CSSStyleSheet from '../../../src/css/CSSStyleSheet.js'; +import type CSSStyleSheet from '../../../src/css/CSSStyleSheet.js'; import CSSFontFaceRule from '../../../src/css/rules/CSSFontFaceRule.js'; import CSSRuleTypeEnum from '../../../src/css/CSSRuleTypeEnum.js'; diff --git a/packages/happy-dom/test/css/rules/CSSGroupingRule.test.ts b/packages/happy-dom/test/css/rules/CSSGroupingRule.test.ts index 33b39e4e8..df6417dd1 100644 --- a/packages/happy-dom/test/css/rules/CSSGroupingRule.test.ts +++ b/packages/happy-dom/test/css/rules/CSSGroupingRule.test.ts @@ -1,9 +1,9 @@ import { describe, it, expect, beforeEach } from 'vitest'; import * as PropertySymbol from '../../../src/PropertySymbol.js'; -import BrowserWindow from '../../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../../src/window/BrowserWindow.js'; import Window from '../../../src/window/Window.js'; import CSSParser from '../../../src/css/utilities/CSSParser.js'; -import CSSStyleSheet from '../../../src/css/CSSStyleSheet.js'; +import type CSSStyleSheet from '../../../src/css/CSSStyleSheet.js'; import CSSScopeRule from '../../../src/css/rules/CSSScopeRule.js'; import CSSStyleRule from '../../../src/css/rules/CSSStyleRule.js'; import DOMExceptionNameEnum from '../../../src/exception/DOMExceptionNameEnum.js'; diff --git a/packages/happy-dom/test/css/rules/CSSKeyframeRule.test.ts b/packages/happy-dom/test/css/rules/CSSKeyframeRule.test.ts index 02e36ce23..583831cf1 100644 --- a/packages/happy-dom/test/css/rules/CSSKeyframeRule.test.ts +++ b/packages/happy-dom/test/css/rules/CSSKeyframeRule.test.ts @@ -1,9 +1,9 @@ import { describe, it, expect, beforeEach } from 'vitest'; import * as PropertySymbol from '../../../src/PropertySymbol.js'; -import BrowserWindow from '../../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../../src/window/BrowserWindow.js'; import Window from '../../../src/window/Window.js'; import CSSParser from '../../../src/css/utilities/CSSParser.js'; -import CSSStyleSheet from '../../../src/css/CSSStyleSheet.js'; +import type CSSStyleSheet from '../../../src/css/CSSStyleSheet.js'; import CSSRuleTypeEnum from '../../../src/css/CSSRuleTypeEnum.js'; import CSSKeyframeRule from '../../../src/css/rules/CSSKeyframeRule.js'; diff --git a/packages/happy-dom/test/css/rules/CSSKeyframesRule.test.ts b/packages/happy-dom/test/css/rules/CSSKeyframesRule.test.ts index 360bac062..6e55d2623 100644 --- a/packages/happy-dom/test/css/rules/CSSKeyframesRule.test.ts +++ b/packages/happy-dom/test/css/rules/CSSKeyframesRule.test.ts @@ -1,9 +1,9 @@ import { describe, it, expect, beforeEach } from 'vitest'; import * as PropertySymbol from '../../../src/PropertySymbol.js'; -import BrowserWindow from '../../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../../src/window/BrowserWindow.js'; import Window from '../../../src/window/Window.js'; import CSSParser from '../../../src/css/utilities/CSSParser.js'; -import CSSStyleSheet from '../../../src/css/CSSStyleSheet.js'; +import type CSSStyleSheet from '../../../src/css/CSSStyleSheet.js'; import CSSRuleTypeEnum from '../../../src/css/CSSRuleTypeEnum.js'; import CSSKeyframesRule from '../../../src/css/rules/CSSKeyframesRule.js'; import CSSKeyframeRule from '../../../src/css/rules/CSSKeyframeRule.js'; diff --git a/packages/happy-dom/test/css/rules/CSSMediaRule.test.ts b/packages/happy-dom/test/css/rules/CSSMediaRule.test.ts index 984762c2b..97b4452de 100644 --- a/packages/happy-dom/test/css/rules/CSSMediaRule.test.ts +++ b/packages/happy-dom/test/css/rules/CSSMediaRule.test.ts @@ -1,9 +1,9 @@ import { describe, it, expect, beforeEach } from 'vitest'; import * as PropertySymbol from '../../../src/PropertySymbol.js'; -import BrowserWindow from '../../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../../src/window/BrowserWindow.js'; import Window from '../../../src/window/Window.js'; import CSSParser from '../../../src/css/utilities/CSSParser.js'; -import CSSStyleSheet from '../../../src/css/CSSStyleSheet.js'; +import type CSSStyleSheet from '../../../src/css/CSSStyleSheet.js'; import CSSRuleTypeEnum from '../../../src/css/CSSRuleTypeEnum.js'; import CSSMediaRule from '../../../src/css/rules/CSSMediaRule.js'; import MediaList from '../../../src/css/MediaList.js'; diff --git a/packages/happy-dom/test/css/rules/CSSScopeRule.test.ts b/packages/happy-dom/test/css/rules/CSSScopeRule.test.ts index 4ec0d92b4..f183f7927 100644 --- a/packages/happy-dom/test/css/rules/CSSScopeRule.test.ts +++ b/packages/happy-dom/test/css/rules/CSSScopeRule.test.ts @@ -1,9 +1,9 @@ import { describe, it, expect, beforeEach } from 'vitest'; import * as PropertySymbol from '../../../src/PropertySymbol.js'; -import BrowserWindow from '../../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../../src/window/BrowserWindow.js'; import Window from '../../../src/window/Window.js'; import CSSParser from '../../../src/css/utilities/CSSParser.js'; -import CSSStyleSheet from '../../../src/css/CSSStyleSheet.js'; +import type CSSStyleSheet from '../../../src/css/CSSStyleSheet.js'; import CSSRuleTypeEnum from '../../../src/css/CSSRuleTypeEnum.js'; import CSSScopeRule from '../../../src/css/rules/CSSScopeRule.js'; diff --git a/packages/happy-dom/test/css/rules/CSSStyleRule.test.ts b/packages/happy-dom/test/css/rules/CSSStyleRule.test.ts index d1fd78c2a..71634ba55 100644 --- a/packages/happy-dom/test/css/rules/CSSStyleRule.test.ts +++ b/packages/happy-dom/test/css/rules/CSSStyleRule.test.ts @@ -1,9 +1,9 @@ import { describe, it, expect, beforeEach } from 'vitest'; import * as PropertySymbol from '../../../src/PropertySymbol.js'; -import BrowserWindow from '../../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../../src/window/BrowserWindow.js'; import Window from '../../../src/window/Window.js'; import CSSParser from '../../../src/css/utilities/CSSParser.js'; -import CSSStyleSheet from '../../../src/css/CSSStyleSheet.js'; +import type CSSStyleSheet from '../../../src/css/CSSStyleSheet.js'; import CSSRuleTypeEnum from '../../../src/css/CSSRuleTypeEnum.js'; import CSSStyleRule from '../../../src/css/rules/CSSStyleRule.js'; diff --git a/packages/happy-dom/test/css/style-property-map/StylePropertyMap.test.ts b/packages/happy-dom/test/css/style-property-map/StylePropertyMap.test.ts index 2d0fd6346..bee9916f7 100644 --- a/packages/happy-dom/test/css/style-property-map/StylePropertyMap.test.ts +++ b/packages/happy-dom/test/css/style-property-map/StylePropertyMap.test.ts @@ -1,6 +1,6 @@ import { describe, it, expect, beforeEach } from 'vitest'; import * as PropertySymbol from '../../../src/PropertySymbol.js'; -import BrowserWindow from '../../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../../src/window/BrowserWindow.js'; import Window from '../../../src/window/Window.js'; import StylePropertyMap from '../../../src/css/style-property-map/StylePropertyMap.js'; import CSSStyleDeclaration from '../../../src/css/declaration/CSSStyleDeclaration.js'; diff --git a/packages/happy-dom/test/css/style-property-map/StylePropertyMapReadOnly.test.ts b/packages/happy-dom/test/css/style-property-map/StylePropertyMapReadOnly.test.ts index 086cfe6cb..a70219918 100644 --- a/packages/happy-dom/test/css/style-property-map/StylePropertyMapReadOnly.test.ts +++ b/packages/happy-dom/test/css/style-property-map/StylePropertyMapReadOnly.test.ts @@ -1,6 +1,6 @@ import { describe, it, expect, beforeEach } from 'vitest'; import * as PropertySymbol from '../../../src/PropertySymbol.js'; -import BrowserWindow from '../../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../../src/window/BrowserWindow.js'; import Window from '../../../src/window/Window.js'; import StylePropertyMapReadOnly from '../../../src/css/style-property-map/StylePropertyMapReadOnly.js'; import CSSStyleDeclaration from '../../../src/css/declaration/CSSStyleDeclaration.js'; diff --git a/packages/happy-dom/test/custom-element/CustomElementRegistry.test.ts b/packages/happy-dom/test/custom-element/CustomElementRegistry.test.ts index 7be28404e..4ab9c7d07 100644 --- a/packages/happy-dom/test/custom-element/CustomElementRegistry.test.ts +++ b/packages/happy-dom/test/custom-element/CustomElementRegistry.test.ts @@ -1,11 +1,11 @@ import CustomElement from '../CustomElement.js'; import CustomElementRegistry from '../../src/custom-element/CustomElementRegistry.js'; import Window from '../../src/window/Window.js'; -import Document from '../../src/nodes/document/Document.js'; +import type Document from '../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import * as PropertySymbol from '../../src/PropertySymbol.js'; import NamespaceURI from '../../src/config/NamespaceURI.js'; -import ICustomElementDefinition from '../../src/custom-element/ICustomElementDefinition.js'; +import type ICustomElementDefinition from '../../src/custom-element/ICustomElementDefinition.js'; describe('CustomElementRegistry', () => { let customElements; diff --git a/packages/happy-dom/test/dom-parser/DOMParser.test.ts b/packages/happy-dom/test/dom-parser/DOMParser.test.ts index 6cf543737..fc8d375a6 100644 --- a/packages/happy-dom/test/dom-parser/DOMParser.test.ts +++ b/packages/happy-dom/test/dom-parser/DOMParser.test.ts @@ -1,11 +1,11 @@ import Window from '../../src/window/Window.js'; import HTMLSerializer from '../../src/html-serializer/HTMLSerializer.js'; -import DOMParser from '../../src/dom-parser/DOMParser.js'; +import type DOMParser from '../../src/dom-parser/DOMParser.js'; import DOMParserHTML from './data/DOMParserHTML.js'; import { beforeEach, describe, it, expect } from 'vitest'; import XMLSerializer from '../../src/xml-serializer/XMLSerializer.js'; import HTMLElement from '../../src/nodes/html-element/HTMLElement.js'; -import Document from '../../src/nodes/document/Document.js'; +import type Document from '../../src/nodes/document/Document.js'; describe('DOMParser', () => { let domParser: DOMParser; diff --git a/packages/happy-dom/test/dom/DOMTokenList.test.ts b/packages/happy-dom/test/dom/DOMTokenList.test.ts index 9e16fa695..f3163749b 100644 --- a/packages/happy-dom/test/dom/DOMTokenList.test.ts +++ b/packages/happy-dom/test/dom/DOMTokenList.test.ts @@ -1,6 +1,6 @@ import Window from '../../src/window/Window.js'; -import Document from '../../src/nodes/document/Document.js'; -import Element from '../../src/nodes/element/Element.js'; +import type Document from '../../src/nodes/document/Document.js'; +import type Element from '../../src/nodes/element/Element.js'; import { beforeEach, describe, it, expect } from 'vitest'; import DOMTokenList from '../../src/dom/DOMTokenList.js'; import * as PropertySymbol from '../../src/PropertySymbol.js'; diff --git a/packages/happy-dom/test/event/Event.test.ts b/packages/happy-dom/test/event/Event.test.ts index db78d23b6..e12bb0ece 100644 --- a/packages/happy-dom/test/event/Event.test.ts +++ b/packages/happy-dom/test/event/Event.test.ts @@ -1,9 +1,9 @@ import Window from '../../src/window/Window.js'; -import Document from '../../src/nodes/document/Document.js'; +import type Document from '../../src/nodes/document/Document.js'; import Event from '../../src/event/Event.js'; import CustomElement from '../CustomElement.js'; import { beforeEach, afterEach, describe, it, expect, vi } from 'vitest'; -import EventTarget from '../../src/event/EventTarget.js'; +import type EventTarget from '../../src/event/EventTarget.js'; describe('Event', () => { let window: Window; diff --git a/packages/happy-dom/test/event/EventTarget.test.ts b/packages/happy-dom/test/event/EventTarget.test.ts index bb59e7789..618bd8d57 100644 --- a/packages/happy-dom/test/event/EventTarget.test.ts +++ b/packages/happy-dom/test/event/EventTarget.test.ts @@ -1,5 +1,5 @@ import Window from '../../src/window/Window.js'; -import EventTarget from '../../src/event/EventTarget.js'; +import type EventTarget from '../../src/event/EventTarget.js'; import Event from '../../src/event/Event.js'; import CustomEvent from '../../src/event/events/CustomEvent.js'; import * as PropertySymbol from '../../src/PropertySymbol.js'; diff --git a/packages/happy-dom/test/event/events/TouchEvent.test.ts b/packages/happy-dom/test/event/events/TouchEvent.test.ts index 74be6a78e..6bdb21624 100644 --- a/packages/happy-dom/test/event/events/TouchEvent.test.ts +++ b/packages/happy-dom/test/event/events/TouchEvent.test.ts @@ -1,5 +1,5 @@ import Touch from '../../../src/event/Touch.js'; -import ITouchEventInit from '../../../src/event/events/ITouchEventInit.js'; +import type ITouchEventInit from '../../../src/event/events/ITouchEventInit.js'; import TouchEvent from '../../../src/event/events/TouchEvent.js'; import Window from '../../../src/window/Window.js'; import { describe, it, expect } from 'vitest'; diff --git a/packages/happy-dom/test/fetch/AbortController.test.ts b/packages/happy-dom/test/fetch/AbortController.test.ts index 60c7015a3..eafd11418 100644 --- a/packages/happy-dom/test/fetch/AbortController.test.ts +++ b/packages/happy-dom/test/fetch/AbortController.test.ts @@ -1,7 +1,7 @@ -import Event from '../../src/event/Event.js'; +import type Event from '../../src/event/Event.js'; import AbortController from '../../src/fetch/AbortController.js'; import { describe, it, expect, beforeEach, vi } from 'vitest'; -import BrowserWindow from '../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../src/window/BrowserWindow.js'; import Window from '../../src/window/Window.js'; describe('AbortController', () => { diff --git a/packages/happy-dom/test/fetch/AbortSignal.test.ts b/packages/happy-dom/test/fetch/AbortSignal.test.ts index a63ec30cc..44e6d2e72 100644 --- a/packages/happy-dom/test/fetch/AbortSignal.test.ts +++ b/packages/happy-dom/test/fetch/AbortSignal.test.ts @@ -1,7 +1,7 @@ -import Event from '../../src/event/Event.js'; +import type Event from '../../src/event/Event.js'; import { describe, it, expect, beforeEach, vi } from 'vitest'; import * as PropertySymbol from '../../src/PropertySymbol.js'; -import BrowserWindow from '../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../src/window/BrowserWindow.js'; import Window from '../../src/window/Window.js'; describe('AbortSignal', () => { diff --git a/packages/happy-dom/test/fetch/Fetch.test.ts b/packages/happy-dom/test/fetch/Fetch.test.ts index c37892b19..3272d2087 100644 --- a/packages/happy-dom/test/fetch/Fetch.test.ts +++ b/packages/happy-dom/test/fetch/Fetch.test.ts @@ -3,8 +3,9 @@ import Response from '../../src/fetch/Response.js'; import Headers from '../../src/fetch/Headers.js'; import DOMException from '../../src/exception/DOMException.js'; import DOMExceptionNameEnum from '../../src/exception/DOMExceptionNameEnum.js'; -import HTTP, { ClientRequest } from 'http'; -import Net from 'net'; +import type { ClientRequest } from 'http'; +import type HTTP from 'http'; +import type Net from 'net'; import Stream from 'stream'; import Zlib from 'zlib'; import { TextEncoder } from 'util'; diff --git a/packages/happy-dom/test/fetch/Request.test.ts b/packages/happy-dom/test/fetch/Request.test.ts index b84c8e2f4..d84a0ec01 100644 --- a/packages/happy-dom/test/fetch/Request.test.ts +++ b/packages/happy-dom/test/fetch/Request.test.ts @@ -1,13 +1,13 @@ import Window from '../../src/window/Window.js'; -import Document from '../../src/nodes/document/Document.js'; +import type Document from '../../src/nodes/document/Document.js'; import Request from '../../src/fetch/Request.js'; import URL from '../../src/url/URL.js'; import Headers from '../../src/fetch/Headers.js'; import AbortSignal from '../../src/fetch/AbortSignal.js'; import DOMException from '../../src/exception/DOMException.js'; import DOMExceptionNameEnum from '../../src/exception/DOMExceptionNameEnum.js'; -import IRequestReferrerPolicy from '../../src/fetch/types/IRequestReferrerPolicy.js'; -import IRequestRedirect from '../../src/fetch/types/IRequestRedirect.js'; +import type TRequestReferrerPolicy from '../../src/fetch/types/TRequestReferrerPolicy.js'; +import type TRequestRedirect from '../../src/fetch/types/TRequestRedirect.js'; import FetchBodyUtility from '../../src/fetch/utilities/FetchBodyUtility.js'; import Blob from '../../src/file/Blob.js'; import FormData from '../../src/form-data/FormData.js'; @@ -468,7 +468,7 @@ describe('Request', () => { it('Throws error when invalid referrer policy.', () => { let error: Error | null = null; try { - new window.Request(TEST_URL, { referrerPolicy: 'invalid' }); + new window.Request(TEST_URL, { referrerPolicy: 'invalid' }); } catch (e) { error = e; } @@ -481,7 +481,7 @@ describe('Request', () => { it('Throws error when invalid referrer policy.', () => { let error: Error | null = null; try { - new window.Request(TEST_URL, { referrerPolicy: 'invalid' }); + new window.Request(TEST_URL, { referrerPolicy: 'invalid' }); } catch (e) { error = e; } @@ -494,7 +494,7 @@ describe('Request', () => { it('Throws error when invalid referrer policy.', () => { let error: Error | null = null; try { - new window.Request(TEST_URL, { redirect: 'invalid' }); + new window.Request(TEST_URL, { redirect: 'invalid' }); } catch (e) { error = e; } diff --git a/packages/happy-dom/test/fetch/ResourceFetch.test.ts b/packages/happy-dom/test/fetch/ResourceFetch.test.ts index faf892acd..5646eb07b 100644 --- a/packages/happy-dom/test/fetch/ResourceFetch.test.ts +++ b/packages/happy-dom/test/fetch/ResourceFetch.test.ts @@ -1,11 +1,11 @@ -import BrowserWindow from '../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../src/window/BrowserWindow.js'; import ResourceFetch from '../../src/fetch/ResourceFetch.js'; -import Response from '../../src/fetch/Response.js'; +import type Response from '../../src/fetch/Response.js'; import { beforeEach, afterEach, describe, it, expect, vi } from 'vitest'; import Browser from '../../src/browser/Browser.js'; import Fetch from '../../src/fetch/Fetch.js'; import SyncFetch from '../../src/fetch/SyncFetch.js'; -import ISyncResponse from '../../src/fetch/types/ISyncResponse.js'; +import type ISyncResponse from '../../src/fetch/types/ISyncResponse.js'; import { PropertySymbol } from '../../src/index.js'; import PreloadUtility from '../../src/fetch/preload/PreloadUtility.js'; import PreloadEntry from '../../src/fetch/preload/PreloadEntry.js'; diff --git a/packages/happy-dom/test/fetch/Response.test.ts b/packages/happy-dom/test/fetch/Response.test.ts index 6c916e1f8..4eca7953f 100644 --- a/packages/happy-dom/test/fetch/Response.test.ts +++ b/packages/happy-dom/test/fetch/Response.test.ts @@ -10,7 +10,7 @@ import FetchBodyUtility from '../../src/fetch/utilities/FetchBodyUtility.js'; import Blob from '../../src/file/Blob.js'; import File from '../../src/file/File.js'; import FormData from '../../src/form-data/FormData.js'; -import Document from '../../src/nodes/document/Document.js'; +import type Document from '../../src/nodes/document/Document.js'; import Window from '../../src/window/Window.js'; import * as PropertySymbol from '../../src/PropertySymbol.js'; import { ReadableStream } from 'stream/web'; diff --git a/packages/happy-dom/test/fetch/SyncFetch.test.ts b/packages/happy-dom/test/fetch/SyncFetch.test.ts index c266d8f70..10c28d17d 100644 --- a/packages/happy-dom/test/fetch/SyncFetch.test.ts +++ b/packages/happy-dom/test/fetch/SyncFetch.test.ts @@ -1,4 +1,4 @@ -import BrowserWindow from '../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../src/window/BrowserWindow.js'; import Headers from '../../src/fetch/Headers.js'; import DOMException from '../../src/exception/DOMException.js'; import DOMExceptionNameEnum from '../../src/exception/DOMExceptionNameEnum.js'; @@ -10,7 +10,7 @@ import { URLSearchParams } from 'url'; import { beforeEach, afterEach, describe, it, expect, vi } from 'vitest'; import SyncFetchScriptBuilder from '../../src/fetch/utilities/SyncFetchScriptBuilder.js'; import SyncFetch from '../../src/fetch/SyncFetch.js'; -import IBrowserFrame from '../../src/browser/types/IBrowserFrame.js'; +import type IBrowserFrame from '../../src/browser/types/IBrowserFrame.js'; import Browser from '../../src/browser/Browser.js'; import FS from 'fs'; import Path from 'path'; diff --git a/packages/happy-dom/test/fetch/cache/response/ResponseCacheFileSystem.test.ts b/packages/happy-dom/test/fetch/cache/response/ResponseCacheFileSystem.test.ts index 017794b0e..1af24c863 100644 --- a/packages/happy-dom/test/fetch/cache/response/ResponseCacheFileSystem.test.ts +++ b/packages/happy-dom/test/fetch/cache/response/ResponseCacheFileSystem.test.ts @@ -1,4 +1,4 @@ -import ICachedResponse from '../../../../src/fetch/cache/response/ICachedResponse'; +import type ICachedResponse from '../../../../src/fetch/cache/response/ICachedResponse'; import ResponseCacheFileSystem from '../../../../src/fetch/cache/response/ResponseCacheFileSystem'; import FS from 'fs'; import Path from 'path'; diff --git a/packages/happy-dom/test/file/FileReader.test.ts b/packages/happy-dom/test/file/FileReader.test.ts index edcce55a0..9d79a7912 100644 --- a/packages/happy-dom/test/file/FileReader.test.ts +++ b/packages/happy-dom/test/file/FileReader.test.ts @@ -1,5 +1,5 @@ import Blob from '../../src/file/Blob.js'; -import FileReader from '../../src/file/FileReader.js'; +import type FileReader from '../../src/file/FileReader.js'; import Window from '../../src/window/Window.js'; import { beforeEach, describe, it, expect } from 'vitest'; diff --git a/packages/happy-dom/test/form-data/FormData.test.ts b/packages/happy-dom/test/form-data/FormData.test.ts index 8391d4587..fe49fb625 100644 --- a/packages/happy-dom/test/form-data/FormData.test.ts +++ b/packages/happy-dom/test/form-data/FormData.test.ts @@ -1,5 +1,5 @@ import Window from '../../src/window/Window.js'; -import Document from '../../src/nodes/document/Document.js'; +import type Document from '../../src/nodes/document/Document.js'; import File from '../../src/file/File.js'; import { beforeEach, afterEach, describe, it, expect, vi } from 'vitest'; import Blob from '../../src/file/Blob.js'; diff --git a/packages/happy-dom/test/history/History.test.ts b/packages/happy-dom/test/history/History.test.ts index 2bc44c18c..788846fc7 100644 --- a/packages/happy-dom/test/history/History.test.ts +++ b/packages/happy-dom/test/history/History.test.ts @@ -1,12 +1,12 @@ -import IBrowserFrame from '../../src/browser/types/IBrowserFrame.js'; +import type IBrowserFrame from '../../src/browser/types/IBrowserFrame.js'; import Browser from '../../src/browser/Browser.js'; import HistoryScrollRestorationEnum from '../../src/history/HistoryScrollRestorationEnum.js'; import { beforeEach, describe, it, expect, vi } from 'vitest'; import * as PropertySymbol from '../../src/PropertySymbol.js'; import Fetch from '../../src/fetch/Fetch.js'; -import Request from '../../src/fetch/Request'; -import Response from '../../src/fetch/Response'; -import PopStateEvent from '../../src/event/events/PopStateEvent.js'; +import type Request from '../../src/fetch/Request'; +import type Response from '../../src/fetch/Response'; +import type PopStateEvent from '../../src/event/events/PopStateEvent.js'; describe('History', () => { let browserFrame: IBrowserFrame; diff --git a/packages/happy-dom/test/html-parser/HTMLParser.test.ts b/packages/happy-dom/test/html-parser/HTMLParser.test.ts index 993cfc1b9..f63538e35 100644 --- a/packages/happy-dom/test/html-parser/HTMLParser.test.ts +++ b/packages/happy-dom/test/html-parser/HTMLParser.test.ts @@ -1,12 +1,12 @@ import HTMLParser from '../../src/html-parser/HTMLParser.js'; import Window from '../../src/window/Window.js'; -import Document from '../../src/nodes/document/Document.js'; +import type Document from '../../src/nodes/document/Document.js'; import Node from '../../src/nodes/node/Node.js'; -import HTMLElement from '../../src/nodes/html-element/HTMLElement.js'; +import type HTMLElement from '../../src/nodes/html-element/HTMLElement.js'; import NamespaceURI from '../../src/config/NamespaceURI.js'; -import DocumentType from '../../src/nodes/document-type/DocumentType.js'; +import type DocumentType from '../../src/nodes/document-type/DocumentType.js'; import HTMLSerializer from '../../src/html-serializer/HTMLSerializer.js'; -import HTMLTemplateElement from '../../src/nodes/html-template-element/HTMLTemplateElement.js'; +import type HTMLTemplateElement from '../../src/nodes/html-template-element/HTMLTemplateElement.js'; import NodeTypeEnum from '../../src/nodes/node/NodeTypeEnum.js'; import { beforeEach, describe, it, expect } from 'vitest'; import CustomElement from '../CustomElement.js'; diff --git a/packages/happy-dom/test/html-serializer/HTMLSerializer.test.ts b/packages/happy-dom/test/html-serializer/HTMLSerializer.test.ts index 8391023ed..53ece5c98 100644 --- a/packages/happy-dom/test/html-serializer/HTMLSerializer.test.ts +++ b/packages/happy-dom/test/html-serializer/HTMLSerializer.test.ts @@ -1,6 +1,6 @@ import HTMLSerializer from '../../src/html-serializer/HTMLSerializer.js'; import Window from '../../src/window/Window.js'; -import Document from '../../src/nodes/document/Document.js'; +import type Document from '../../src/nodes/document/Document.js'; import CustomElement from '../CustomElement.js'; import { beforeEach, afterEach, describe, it, expect } from 'vitest'; diff --git a/packages/happy-dom/test/intersection-observer/IntersectionObserver.test.ts b/packages/happy-dom/test/intersection-observer/IntersectionObserver.test.ts index d40f349b1..a47e4148f 100644 --- a/packages/happy-dom/test/intersection-observer/IntersectionObserver.test.ts +++ b/packages/happy-dom/test/intersection-observer/IntersectionObserver.test.ts @@ -1,5 +1,5 @@ import Window from '../../src/window/Window.js'; -import Document from '../../src/nodes/document/Document.js'; +import type Document from '../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; describe('IntersectionObserver', () => { diff --git a/packages/happy-dom/test/javascript/JavaScriptCompiler.test.ts b/packages/happy-dom/test/javascript/JavaScriptCompiler.test.ts index fb82eb9c8..149e0e0e3 100644 --- a/packages/happy-dom/test/javascript/JavaScriptCompiler.test.ts +++ b/packages/happy-dom/test/javascript/JavaScriptCompiler.test.ts @@ -1,6 +1,6 @@ import { beforeEach, describe, it, expect } from 'vitest'; import JavaScriptCompiler from '../../src/javascript/JavaScriptCompiler.js'; -import BrowserWindow from '../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../src/window/BrowserWindow.js'; import Window from '../../src/window/Window.js'; import BrowserErrorCaptureEnum from '../../src/browser/enums/BrowserErrorCaptureEnum.js'; diff --git a/packages/happy-dom/test/location/Location.test.ts b/packages/happy-dom/test/location/Location.test.ts index 3e63ba9c4..f774da0cd 100644 --- a/packages/happy-dom/test/location/Location.test.ts +++ b/packages/happy-dom/test/location/Location.test.ts @@ -1,11 +1,11 @@ import Browser from '../../src/browser/Browser.js'; import BrowserFrame from '../../src/browser/BrowserFrame.js'; -import IBrowserFrame from '../../src/browser/types/IBrowserFrame.js'; -import IGoToOptions from '../../src/browser/types/IGoToOptions.js'; -import Response from '../../src/fetch/Response.js'; +import type IBrowserFrame from '../../src/browser/types/IBrowserFrame.js'; +import type IGoToOptions from '../../src/browser/types/IGoToOptions.js'; +import type Response from '../../src/fetch/Response.js'; import Location from '../../src/location/Location.js'; import { beforeEach, describe, it, expect, vi } from 'vitest'; -import HashChangeEvent from '../../src/event/events/HashChangeEvent.js'; +import type HashChangeEvent from '../../src/event/events/HashChangeEvent.js'; const HREF = 'https://google.com/some-path/?key=value&key2=value2#hash'; diff --git a/packages/happy-dom/test/match-media/MediaQueryList.test.ts b/packages/happy-dom/test/match-media/MediaQueryList.test.ts index 81c20dc61..e7aa3aaa6 100644 --- a/packages/happy-dom/test/match-media/MediaQueryList.test.ts +++ b/packages/happy-dom/test/match-media/MediaQueryList.test.ts @@ -1,6 +1,6 @@ import Window from '../../src/window/Window.js'; import MediaQueryList from '../../src/match-media/MediaQueryList.js'; -import MediaQueryListEvent from '../../src/event/events/MediaQueryListEvent.js'; +import type MediaQueryListEvent from '../../src/event/events/MediaQueryListEvent.js'; import { beforeEach, describe, it, expect } from 'vitest'; describe('MediaQueryList', () => { diff --git a/packages/happy-dom/test/module/ECMAScriptModuleCompiler.test.ts b/packages/happy-dom/test/module/ECMAScriptModuleCompiler.test.ts index f68efeec9..dfcd1f597 100644 --- a/packages/happy-dom/test/module/ECMAScriptModuleCompiler.test.ts +++ b/packages/happy-dom/test/module/ECMAScriptModuleCompiler.test.ts @@ -1,6 +1,6 @@ import { beforeEach, describe, it, expect } from 'vitest'; import ECMAScriptModuleCompiler from '../../src/module/ECMAScriptModuleCompiler.js'; -import BrowserWindow from '../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../src/window/BrowserWindow.js'; import Window from '../../src/window/Window.js'; import BrowserErrorCaptureEnum from '../../src/browser/enums/BrowserErrorCaptureEnum.js'; import Browser from '../../src/browser/Browser.js'; diff --git a/packages/happy-dom/test/mutation-observer/MutationObserver.test.ts b/packages/happy-dom/test/mutation-observer/MutationObserver.test.ts index 6cbfd1281..7d3c045bb 100644 --- a/packages/happy-dom/test/mutation-observer/MutationObserver.test.ts +++ b/packages/happy-dom/test/mutation-observer/MutationObserver.test.ts @@ -1,7 +1,7 @@ import Window from '../../src/window/Window.js'; -import Document from '../../src/nodes/document/Document.js'; +import type Document from '../../src/nodes/document/Document.js'; import MutationObserver from '../../src/mutation-observer/MutationObserver.js'; -import MutationRecord from '../../src/mutation-observer/MutationRecord.js'; +import type MutationRecord from '../../src/mutation-observer/MutationRecord.js'; import { beforeEach, describe, it, expect } from 'vitest'; describe('MutationObserver', () => { diff --git a/packages/happy-dom/test/navigator/Navigator.test.ts b/packages/happy-dom/test/navigator/Navigator.test.ts index d72d344e8..2db70edc2 100644 --- a/packages/happy-dom/test/navigator/Navigator.test.ts +++ b/packages/happy-dom/test/navigator/Navigator.test.ts @@ -4,10 +4,10 @@ import { beforeEach, afterEach, describe, it, expect, vi } from 'vitest'; import Permissions from '../../src/permissions/Permissions.js'; import Clipboard from '../../src/clipboard/Clipboard.js'; import PackageVersion from '../../src/version.js'; -import Response from '../../src/fetch/Response.js'; -import Request from '../../src/fetch/Request.js'; +import type Response from '../../src/fetch/Response.js'; +import type Request from '../../src/fetch/Request.js'; import Fetch from '../../src/fetch/Fetch.js'; -import Stream from 'stream'; +import type Stream from 'stream'; const PLATFORM = 'X11; ' + diff --git a/packages/happy-dom/test/nodes/attr/Attr.test.ts b/packages/happy-dom/test/nodes/attr/Attr.test.ts index aaf1a2902..c2aede830 100644 --- a/packages/happy-dom/test/nodes/attr/Attr.test.ts +++ b/packages/happy-dom/test/nodes/attr/Attr.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import * as PropertySymbol from '../../../src/PropertySymbol.js'; import NodeTypeEnum from '../../../src/nodes/node/NodeTypeEnum.js'; diff --git a/packages/happy-dom/test/nodes/character-data/CharacterDataUtility.test.ts b/packages/happy-dom/test/nodes/character-data/CharacterDataUtility.test.ts index e60ff244f..b14c7bca2 100644 --- a/packages/happy-dom/test/nodes/character-data/CharacterDataUtility.test.ts +++ b/packages/happy-dom/test/nodes/character-data/CharacterDataUtility.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import CharacterDataUtility from '../../../src/nodes/character-data/CharacterDataUtility.js'; import { beforeEach, describe, it, expect } from 'vitest'; diff --git a/packages/happy-dom/test/nodes/character-data/CharaterData.test.ts b/packages/happy-dom/test/nodes/character-data/CharaterData.test.ts index e3b8edf72..2fe329c13 100644 --- a/packages/happy-dom/test/nodes/character-data/CharaterData.test.ts +++ b/packages/happy-dom/test/nodes/character-data/CharaterData.test.ts @@ -1,9 +1,9 @@ import CharacterDataUtility from '../../../src/nodes/character-data/CharacterDataUtility.js'; import NonDocumentChildNodeUtility from '../../../src/nodes/child-node/NonDocumentChildNodeUtility.js'; import ChildNodeUtility from '../../../src/nodes/child-node/ChildNodeUtility.js'; -import CharacterData from '../../../src/nodes/character-data/CharacterData.js'; +import type CharacterData from '../../../src/nodes/character-data/CharacterData.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, afterEach, describe, it, expect, vi } from 'vitest'; describe('CharaterData', () => { diff --git a/packages/happy-dom/test/nodes/child-node/ChildNodeUtility.test.ts b/packages/happy-dom/test/nodes/child-node/ChildNodeUtility.test.ts index f61416678..d36fde132 100644 --- a/packages/happy-dom/test/nodes/child-node/ChildNodeUtility.test.ts +++ b/packages/happy-dom/test/nodes/child-node/ChildNodeUtility.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import ChildNodeUtility from '../../../src/nodes/child-node/ChildNodeUtility.js'; import { beforeEach, describe, it, expect } from 'vitest'; diff --git a/packages/happy-dom/test/nodes/child-node/NonDocumentChildNodeUtility.test.ts b/packages/happy-dom/test/nodes/child-node/NonDocumentChildNodeUtility.test.ts index 5e0a08be4..c9fbdd4a4 100644 --- a/packages/happy-dom/test/nodes/child-node/NonDocumentChildNodeUtility.test.ts +++ b/packages/happy-dom/test/nodes/child-node/NonDocumentChildNodeUtility.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import NonDocumentChildNodeUtility from '../../../src/nodes/child-node/NonDocumentChildNodeUtility.js'; import { beforeEach, describe, it, expect } from 'vitest'; diff --git a/packages/happy-dom/test/nodes/comment/Comment.test.ts b/packages/happy-dom/test/nodes/comment/Comment.test.ts index 35eaddba1..83edd2159 100644 --- a/packages/happy-dom/test/nodes/comment/Comment.test.ts +++ b/packages/happy-dom/test/nodes/comment/Comment.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import Comment from '../../../src/nodes/comment/Comment.js'; import { beforeEach, describe, it, expect } from 'vitest'; diff --git a/packages/happy-dom/test/nodes/document-fragment/DocumentFragment.test.ts b/packages/happy-dom/test/nodes/document-fragment/DocumentFragment.test.ts index 620484e10..e9ea6031e 100644 --- a/packages/happy-dom/test/nodes/document-fragment/DocumentFragment.test.ts +++ b/packages/happy-dom/test/nodes/document-fragment/DocumentFragment.test.ts @@ -1,13 +1,13 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import DocumentFragment from '../../../src/nodes/document-fragment/DocumentFragment.js'; import Node from '../../../src/nodes/node/Node.js'; import ParentNodeUtility from '../../../src/nodes/parent-node/ParentNodeUtility.js'; import QuerySelector from '../../../src/query-selector/QuerySelector.js'; -import HTMLTemplateElement from '../../../src/nodes/html-template-element/HTMLTemplateElement.js'; -import Text from '../../../src/nodes/text/Text.js'; +import type HTMLTemplateElement from '../../../src/nodes/html-template-element/HTMLTemplateElement.js'; +import type Text from '../../../src/nodes/text/Text.js'; import NodeList from '../../../src/nodes/node/NodeList.js'; -import Element from '../../../src/nodes/element/Element.js'; +import type Element from '../../../src/nodes/element/Element.js'; import { beforeEach, afterEach, describe, it, expect, vi } from 'vitest'; import * as PropertySymbol from '../../../src/PropertySymbol.js'; diff --git a/packages/happy-dom/test/nodes/document/Document.test.ts b/packages/happy-dom/test/nodes/document/Document.test.ts index b9fb69e95..f9227a498 100644 --- a/packages/happy-dom/test/nodes/document/Document.test.ts +++ b/packages/happy-dom/test/nodes/document/Document.test.ts @@ -8,7 +8,7 @@ import NodeIterator from '../../../src/tree-walker/NodeIterator.js'; import TreeWalker from '../../../src/tree-walker/TreeWalker.js'; import Node from '../../../src/nodes/node/Node.js'; import Document from '../../../src/nodes/document/Document.js'; -import Element from '../../../src/nodes/element/Element.js'; +import type Element from '../../../src/nodes/element/Element.js'; import Event from '../../../src/event/Event.js'; import SVGSVGElement from '../../../src/nodes/svg-svg-element/SVGSVGElement.js'; import SVGElement from '../../../src/nodes/svg-element/SVGElement.js'; @@ -17,24 +17,24 @@ import Attr from '../../../src/nodes/attr/Attr.js'; import ParentNodeUtility from '../../../src/nodes/parent-node/ParentNodeUtility.js'; import QuerySelector from '../../../src/query-selector/QuerySelector.js'; import NodeFilter from '../../../src/tree-walker/NodeFilter.js'; -import HTMLTemplateElement from '../../../src/nodes/html-template-element/HTMLTemplateElement.js'; +import type HTMLTemplateElement from '../../../src/nodes/html-template-element/HTMLTemplateElement.js'; import HTMLCollection from '../../../src/nodes/element/HTMLCollection.js'; import NodeList from '../../../src/nodes/node/NodeList.js'; -import HTMLLinkElement from '../../../src/nodes/html-link-element/HTMLLinkElement.js'; -import Response from '../../../src/fetch/Response.js'; +import type HTMLLinkElement from '../../../src/nodes/html-link-element/HTMLLinkElement.js'; +import type Response from '../../../src/fetch/Response.js'; import ResourceFetch from '../../../src/fetch/ResourceFetch.js'; -import HTMLScriptElement from '../../../src/nodes/html-script-element/HTMLScriptElement.js'; +import type HTMLScriptElement from '../../../src/nodes/html-script-element/HTMLScriptElement.js'; import DocumentReadyStateEnum from '../../../src/nodes/document/DocumentReadyStateEnum.js'; import CustomEvent from '../../../src/event/events/CustomEvent.js'; import Selection from '../../../src/selection/Selection.js'; import Range from '../../../src/range/Range.js'; import { beforeEach, afterEach, describe, it, expect, vi } from 'vitest'; -import ShadowRoot from '../../../src/nodes/shadow-root/ShadowRoot.js'; -import BrowserWindow from '../../../src/window/BrowserWindow.js'; +import type ShadowRoot from '../../../src/nodes/shadow-root/ShadowRoot.js'; +import type BrowserWindow from '../../../src/window/BrowserWindow.js'; import Fetch from '../../../src/fetch/Fetch.js'; import * as PropertySymbol from '../../../src/PropertySymbol.js'; import HTMLUnknownElement from '../../../src/nodes/html-unknown-element/HTMLUnknownElement.js'; -import EventTarget from '../../../src/event/EventTarget.js'; +import type EventTarget from '../../../src/event/EventTarget.js'; import SVGGraphicsElement from '../../../src/nodes/svg-graphics-element/SVGGraphicsElement.js'; import SVGPolygonElement from '../../../src/nodes/svg-polygon-element/SVGPolygonElement.js'; import SVGFETurbulenceElement from '../../../src/nodes/svg-fe-turbulence-element/SVGFETurbulenceElement.js'; diff --git a/packages/happy-dom/test/nodes/element/Element.test.ts b/packages/happy-dom/test/nodes/element/Element.test.ts index 9314a6861..7ae364e9c 100644 --- a/packages/happy-dom/test/nodes/element/Element.test.ts +++ b/packages/happy-dom/test/nodes/element/Element.test.ts @@ -3,19 +3,19 @@ import HTMLSerializer from '../../../src/html-serializer/HTMLSerializer.js'; import HTMLParser from '../../../src/html-parser/HTMLParser.js'; import CustomElement from '../../CustomElement.js'; import ShadowRoot from '../../../src/nodes/shadow-root/ShadowRoot.js'; -import Document from '../../../src/nodes/document/Document.js'; -import Text from '../../../src/nodes/text/Text.js'; +import type Document from '../../../src/nodes/document/Document.js'; +import type Text from '../../../src/nodes/text/Text.js'; import DOMRect from '../../../src/dom/DOMRect.js'; import NamespaceURI from '../../../src/config/NamespaceURI.js'; import ParentNodeUtility from '../../../src/nodes/parent-node/ParentNodeUtility.js'; import QuerySelector from '../../../src/query-selector/QuerySelector.js'; import ChildNodeUtility from '../../../src/nodes/child-node/ChildNodeUtility.js'; import NonDocumentChildNodeUtility from '../../../src/nodes/child-node/NonDocumentChildNodeUtility.js'; -import HTMLTemplateElement from '../../../src/nodes/html-template-element/HTMLTemplateElement.js'; +import type HTMLTemplateElement from '../../../src/nodes/html-template-element/HTMLTemplateElement.js'; import Node from '../../../src/nodes/node/Node.js'; import HTMLCollection from '../../../src/nodes/element/HTMLCollection.js'; import Element from '../../../src/nodes/element/Element.js'; -import NodeList from '../../../src/nodes/node/NodeList.js'; +import type NodeList from '../../../src/nodes/node/NodeList.js'; import Event from '../../../src/event/Event.js'; import { beforeEach, afterEach, describe, it, expect, vi } from 'vitest'; import * as PropertySymbol from '../../../src/PropertySymbol.js'; diff --git a/packages/happy-dom/test/nodes/element/HTMLCollection.test.ts b/packages/happy-dom/test/nodes/element/HTMLCollection.test.ts index fd0e81aa3..beabe7dbb 100644 --- a/packages/happy-dom/test/nodes/element/HTMLCollection.test.ts +++ b/packages/happy-dom/test/nodes/element/HTMLCollection.test.ts @@ -1,10 +1,10 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; -import HTMLElement from '../../../src/nodes/html-element/HTMLElement.js'; +import type HTMLElement from '../../../src/nodes/html-element/HTMLElement.js'; import * as PropertySymbol from '../../../src/PropertySymbol.js'; import HTMLCollection from '../../../src/nodes/element/HTMLCollection.js'; -import Element from '../../../src/nodes/element/Element.js'; +import type Element from '../../../src/nodes/element/Element.js'; describe('HTMLCollection', () => { let window: Window; diff --git a/packages/happy-dom/test/nodes/element/NamedNodeMap.test.ts b/packages/happy-dom/test/nodes/element/NamedNodeMap.test.ts index f51db6068..34c6d9fe2 100644 --- a/packages/happy-dom/test/nodes/element/NamedNodeMap.test.ts +++ b/packages/happy-dom/test/nodes/element/NamedNodeMap.test.ts @@ -1,7 +1,7 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; -import Element from '../../../src/nodes/element/Element.js'; -import Attr from '../../../src/nodes/attr/Attr.js'; +import type Document from '../../../src/nodes/document/Document.js'; +import type Element from '../../../src/nodes/element/Element.js'; +import type Attr from '../../../src/nodes/attr/Attr.js'; import DOMException from '../../../src/exception/DOMException.js'; import DOMExceptionNameEnum from '../../../src/exception/DOMExceptionNameEnum.js'; import { beforeEach, describe, it, expect } from 'vitest'; diff --git a/packages/happy-dom/test/nodes/html-anchor-element/HTMLAnchorElement.test.ts b/packages/happy-dom/test/nodes/html-anchor-element/HTMLAnchorElement.test.ts index 889937597..43e2312f7 100644 --- a/packages/happy-dom/test/nodes/html-anchor-element/HTMLAnchorElement.test.ts +++ b/packages/happy-dom/test/nodes/html-anchor-element/HTMLAnchorElement.test.ts @@ -1,10 +1,10 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; -import HTMLAnchorElement from '../../../src/nodes/html-anchor-element/HTMLAnchorElement.js'; +import type Document from '../../../src/nodes/document/Document.js'; +import type HTMLAnchorElement from '../../../src/nodes/html-anchor-element/HTMLAnchorElement.js'; import { beforeEach, describe, it, expect, vi } from 'vitest'; import PointerEvent from '../../../src/event/events/PointerEvent.js'; -import Request from '../../../src/fetch/Request.js'; -import Response from '../../../src/fetch/Response.js'; +import type Request from '../../../src/fetch/Request.js'; +import type Response from '../../../src/fetch/Response.js'; import Fetch from '../../../src/fetch/Fetch.js'; import Browser from '../../../src/browser/Browser.js'; import MouseEvent from '../../../src/event/events/MouseEvent.js'; diff --git a/packages/happy-dom/test/nodes/html-area-element/HTMLAreaElement.test.ts b/packages/happy-dom/test/nodes/html-area-element/HTMLAreaElement.test.ts index 0f901801d..1247a30e6 100644 --- a/packages/happy-dom/test/nodes/html-area-element/HTMLAreaElement.test.ts +++ b/packages/happy-dom/test/nodes/html-area-element/HTMLAreaElement.test.ts @@ -1,10 +1,10 @@ import HTMLAreaElement from '../../../src/nodes/html-area-element/HTMLAreaElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect, vi } from 'vitest'; import PointerEvent from '../../../src/event/events/PointerEvent.js'; -import Request from '../../../src/fetch/Request.js'; -import Response from '../../../src/fetch/Response.js'; +import type Request from '../../../src/fetch/Request.js'; +import type Response from '../../../src/fetch/Response.js'; import Browser from '../../../src/browser/Browser.js'; import Fetch from '../../../src/fetch/Fetch.js'; import DOMTokenList from '../../../src/dom/DOMTokenList.js'; diff --git a/packages/happy-dom/test/nodes/html-base-element/HTMLBaseElement.test.ts b/packages/happy-dom/test/nodes/html-base-element/HTMLBaseElement.test.ts index 1191adfcb..139431257 100644 --- a/packages/happy-dom/test/nodes/html-base-element/HTMLBaseElement.test.ts +++ b/packages/happy-dom/test/nodes/html-base-element/HTMLBaseElement.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; describe('HTMLBaseElement', () => { diff --git a/packages/happy-dom/test/nodes/html-body-element/HTMLBodyElement.test.ts b/packages/happy-dom/test/nodes/html-body-element/HTMLBodyElement.test.ts index dfc0309a6..d942f8697 100644 --- a/packages/happy-dom/test/nodes/html-body-element/HTMLBodyElement.test.ts +++ b/packages/happy-dom/test/nodes/html-body-element/HTMLBodyElement.test.ts @@ -1,6 +1,6 @@ import HTMLBodyElement from '../../../src/nodes/html-body-element/HTMLBodyElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import Event from '../../../src/event/Event.js'; diff --git a/packages/happy-dom/test/nodes/html-br-element/HTMLBRElement.test.ts b/packages/happy-dom/test/nodes/html-br-element/HTMLBRElement.test.ts index 38bc4b062..6d835420f 100644 --- a/packages/happy-dom/test/nodes/html-br-element/HTMLBRElement.test.ts +++ b/packages/happy-dom/test/nodes/html-br-element/HTMLBRElement.test.ts @@ -1,6 +1,6 @@ import HTMLBRElement from '../../../src/nodes/html-br-element/HTMLBRElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; describe('HTMLBRElement', () => { diff --git a/packages/happy-dom/test/nodes/html-button-element/HTMLButtonElement.test.ts b/packages/happy-dom/test/nodes/html-button-element/HTMLButtonElement.test.ts index 8cb1f5e79..b2b1d842d 100644 --- a/packages/happy-dom/test/nodes/html-button-element/HTMLButtonElement.test.ts +++ b/packages/happy-dom/test/nodes/html-button-element/HTMLButtonElement.test.ts @@ -1,10 +1,10 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; -import HTMLButtonElement from '../../../src/nodes/html-button-element/HTMLButtonElement.js'; -import Event from '../../../src/event/Event.js'; -import SubmitEvent from '../../../src/event/events/SubmitEvent'; -import HTMLElement from '../../../src/nodes/html-element/HTMLElement.js'; -import HTMLFormElement from '../../../src/nodes/html-form-element/HTMLFormElement.js'; +import type Document from '../../../src/nodes/document/Document.js'; +import type HTMLButtonElement from '../../../src/nodes/html-button-element/HTMLButtonElement.js'; +import type Event from '../../../src/event/Event.js'; +import type SubmitEvent from '../../../src/event/events/SubmitEvent'; +import type HTMLElement from '../../../src/nodes/html-element/HTMLElement.js'; +import type HTMLFormElement from '../../../src/nodes/html-form-element/HTMLFormElement.js'; import ValidityState from '../../../src/validity-state/ValidityState.js'; import { beforeEach, afterEach, describe, it, expect } from 'vitest'; import MouseEvent from '../../../src/event/events/MouseEvent.js'; diff --git a/packages/happy-dom/test/nodes/html-canvas-element/CanvasCaptureMediaStreamTrack.test.ts b/packages/happy-dom/test/nodes/html-canvas-element/CanvasCaptureMediaStreamTrack.test.ts index 33582025e..4dac67a7e 100644 --- a/packages/happy-dom/test/nodes/html-canvas-element/CanvasCaptureMediaStreamTrack.test.ts +++ b/packages/happy-dom/test/nodes/html-canvas-element/CanvasCaptureMediaStreamTrack.test.ts @@ -1,6 +1,6 @@ -import HTMLCanvasElement from '../../../src/nodes/html-canvas-element/HTMLCanvasElement.js'; +import type HTMLCanvasElement from '../../../src/nodes/html-canvas-element/HTMLCanvasElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import * as PropertySymbol from '../../../src/PropertySymbol.js'; import MediaStreamTrack from '../../../src/nodes/html-media-element/MediaStreamTrack.js'; diff --git a/packages/happy-dom/test/nodes/html-canvas-element/HTMLCanvasElement.test.ts b/packages/happy-dom/test/nodes/html-canvas-element/HTMLCanvasElement.test.ts index 76ea4b31d..d00a4ccf1 100644 --- a/packages/happy-dom/test/nodes/html-canvas-element/HTMLCanvasElement.test.ts +++ b/packages/happy-dom/test/nodes/html-canvas-element/HTMLCanvasElement.test.ts @@ -1,6 +1,6 @@ import HTMLCanvasElement from '../../../src/nodes/html-canvas-element/HTMLCanvasElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import CanvasCaptureMediaStreamTrack from '../../../src/nodes/html-canvas-element/CanvasCaptureMediaStreamTrack.js'; import Blob from '../../../src/file/Blob.js'; diff --git a/packages/happy-dom/test/nodes/html-d-list-element/HTMLDListElement.test.ts b/packages/happy-dom/test/nodes/html-d-list-element/HTMLDListElement.test.ts index 8645889c4..9ac9b6e0b 100644 --- a/packages/happy-dom/test/nodes/html-d-list-element/HTMLDListElement.test.ts +++ b/packages/happy-dom/test/nodes/html-d-list-element/HTMLDListElement.test.ts @@ -1,6 +1,6 @@ import HTMLDListElement from '../../../src/nodes/html-d-list-element/HTMLDListElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; describe('HTMLDListElement', () => { diff --git a/packages/happy-dom/test/nodes/html-data-element/HTMLDataElement.test.ts b/packages/happy-dom/test/nodes/html-data-element/HTMLDataElement.test.ts index 6c360ebd9..d50122317 100644 --- a/packages/happy-dom/test/nodes/html-data-element/HTMLDataElement.test.ts +++ b/packages/happy-dom/test/nodes/html-data-element/HTMLDataElement.test.ts @@ -1,6 +1,6 @@ import HTMLDataElement from '../../../src/nodes/html-data-element/HTMLDataElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; describe('HTMLDataElement', () => { diff --git a/packages/happy-dom/test/nodes/html-data-list-element/HTMLDataListElement.test.ts b/packages/happy-dom/test/nodes/html-data-list-element/HTMLDataListElement.test.ts index d9eb918ee..d0e89fd0e 100644 --- a/packages/happy-dom/test/nodes/html-data-list-element/HTMLDataListElement.test.ts +++ b/packages/happy-dom/test/nodes/html-data-list-element/HTMLDataListElement.test.ts @@ -1,6 +1,6 @@ import HTMLDataListElement from '../../../src/nodes/html-data-list-element/HTMLDataListElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import HTMLCollection from '../../../src/nodes/element/HTMLCollection.js'; diff --git a/packages/happy-dom/test/nodes/html-details-element/HTMLDetailsElement.test.ts b/packages/happy-dom/test/nodes/html-details-element/HTMLDetailsElement.test.ts index f004df2dc..dfc80992c 100644 --- a/packages/happy-dom/test/nodes/html-details-element/HTMLDetailsElement.test.ts +++ b/packages/happy-dom/test/nodes/html-details-element/HTMLDetailsElement.test.ts @@ -1,6 +1,6 @@ import HTMLDetailsElement from '../../../src/nodes/html-details-element/HTMLDetailsElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect, vi } from 'vitest'; import Event from '../../../src/event/Event.js'; import MouseEvent from '../../../src/event/events/MouseEvent.js'; diff --git a/packages/happy-dom/test/nodes/html-dialog-element/HTMLDialogElement.test.ts b/packages/happy-dom/test/nodes/html-dialog-element/HTMLDialogElement.test.ts index fff44b2df..9b7a8ab26 100644 --- a/packages/happy-dom/test/nodes/html-dialog-element/HTMLDialogElement.test.ts +++ b/packages/happy-dom/test/nodes/html-dialog-element/HTMLDialogElement.test.ts @@ -1,7 +1,7 @@ import Event from '../../../src/event/Event.js'; -import HTMLDialogElement from '../../../src/nodes/html-dialog-element/HTMLDialogElement.js'; +import type HTMLDialogElement from '../../../src/nodes/html-dialog-element/HTMLDialogElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import KeyboardEvent from '../../../src/event/events/KeyboardEvent.js'; diff --git a/packages/happy-dom/test/nodes/html-div-element/HTMLDivElement.test.ts b/packages/happy-dom/test/nodes/html-div-element/HTMLDivElement.test.ts index 8371a64a3..455d8ac7a 100644 --- a/packages/happy-dom/test/nodes/html-div-element/HTMLDivElement.test.ts +++ b/packages/happy-dom/test/nodes/html-div-element/HTMLDivElement.test.ts @@ -1,6 +1,6 @@ import HTMLDivElement from '../../../src/nodes/html-div-element/HTMLDivElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; describe('HTMLDivElement', () => { diff --git a/packages/happy-dom/test/nodes/html-element/HTMLElement.test.ts b/packages/happy-dom/test/nodes/html-element/HTMLElement.test.ts index 54f4b3374..cb3558c1d 100644 --- a/packages/happy-dom/test/nodes/html-element/HTMLElement.test.ts +++ b/packages/happy-dom/test/nodes/html-element/HTMLElement.test.ts @@ -1,14 +1,14 @@ import PointerEvent from '../../../src/event/events/PointerEvent.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import HTMLElement from '../../../src/nodes/html-element/HTMLElement.js'; import HTMLElementUtility from '../../../src/nodes/html-element/HTMLElementUtility.js'; -import SVGElement from '../../../src/nodes/svg-element/SVGElement.js'; +import type SVGElement from '../../../src/nodes/svg-element/SVGElement.js'; import Window from '../../../src/window/Window.js'; import CustomElement from '../../CustomElement.js'; import * as PropertySymbol from '../../../src/PropertySymbol.js'; -import CustomElementRegistry from '../../../src/custom-element/CustomElementRegistry.js'; +import type CustomElementRegistry from '../../../src/custom-element/CustomElementRegistry.js'; import { beforeEach, afterEach, describe, it, expect, vi } from 'vitest'; -import EventTarget from '../../../src/event/EventTarget.js'; +import type EventTarget from '../../../src/event/EventTarget.js'; import Event from '../../../src/event/Event.js'; describe('HTMLElement', () => { diff --git a/packages/happy-dom/test/nodes/html-element/HTMLElementUtility.test.ts b/packages/happy-dom/test/nodes/html-element/HTMLElementUtility.test.ts index 99e197407..730e72f9f 100644 --- a/packages/happy-dom/test/nodes/html-element/HTMLElementUtility.test.ts +++ b/packages/happy-dom/test/nodes/html-element/HTMLElementUtility.test.ts @@ -1,10 +1,10 @@ -import SVGElement from '../../../src/nodes/svg-element/SVGElement.js'; -import FocusEvent from '../../../src/event/events/FocusEvent.js'; -import Document from '../../../src/nodes/document/Document.js'; -import HTMLElement from '../../../src/nodes/html-element/HTMLElement.js'; +import type SVGElement from '../../../src/nodes/svg-element/SVGElement.js'; +import type FocusEvent from '../../../src/event/events/FocusEvent.js'; +import type Document from '../../../src/nodes/document/Document.js'; +import type HTMLElement from '../../../src/nodes/html-element/HTMLElement.js'; import Window from '../../../src/window/Window.js'; import { beforeEach, describe, it, expect } from 'vitest'; -import EventTarget from '../../../src/event/EventTarget.js'; +import type EventTarget from '../../../src/event/EventTarget.js'; describe('HTMLElementUtility', () => { let window: Window; diff --git a/packages/happy-dom/test/nodes/html-embed-element/HTMLEmbedElement.test.ts b/packages/happy-dom/test/nodes/html-embed-element/HTMLEmbedElement.test.ts index 8acb448ad..31a4fd63f 100644 --- a/packages/happy-dom/test/nodes/html-embed-element/HTMLEmbedElement.test.ts +++ b/packages/happy-dom/test/nodes/html-embed-element/HTMLEmbedElement.test.ts @@ -1,6 +1,6 @@ import HTMLEmbedElement from '../../../src/nodes/html-embed-element/HTMLEmbedElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; describe('HTMLEmbedElement', () => { diff --git a/packages/happy-dom/test/nodes/html-field-set-element/HTMLFieldSetElement.test.ts b/packages/happy-dom/test/nodes/html-field-set-element/HTMLFieldSetElement.test.ts index e20496d9f..7dde662a2 100644 --- a/packages/happy-dom/test/nodes/html-field-set-element/HTMLFieldSetElement.test.ts +++ b/packages/happy-dom/test/nodes/html-field-set-element/HTMLFieldSetElement.test.ts @@ -1,9 +1,9 @@ import HTMLFieldSetElement from '../../../src/nodes/html-field-set-element/HTMLFieldSetElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; -import HTMLFormElement from '../../../src/nodes/html-form-element/HTMLFormElement.js'; -import HTMLElement from '../../../src/nodes/html-element/HTMLElement.js'; +import type HTMLFormElement from '../../../src/nodes/html-form-element/HTMLFormElement.js'; +import type HTMLElement from '../../../src/nodes/html-element/HTMLElement.js'; describe('HTMLFieldSetElement', () => { let window: Window; diff --git a/packages/happy-dom/test/nodes/html-form-element/HTMLFormElement.test.ts b/packages/happy-dom/test/nodes/html-form-element/HTMLFormElement.test.ts index 1b2162ad1..734c84dd7 100644 --- a/packages/happy-dom/test/nodes/html-form-element/HTMLFormElement.test.ts +++ b/packages/happy-dom/test/nodes/html-form-element/HTMLFormElement.test.ts @@ -1,26 +1,26 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; -import HTMLFormElement from '../../../src/nodes/html-form-element/HTMLFormElement.js'; +import type Document from '../../../src/nodes/document/Document.js'; +import type HTMLFormElement from '../../../src/nodes/html-form-element/HTMLFormElement.js'; import RadioNodeList from '../../../src/nodes/html-form-element/RadioNodeList.js'; -import HTMLInputElement from '../../../src/nodes/html-input-element/HTMLInputElement.js'; +import type HTMLInputElement from '../../../src/nodes/html-input-element/HTMLInputElement.js'; import Event from '../../../src/event/Event.js'; import SubmitEvent from '../../../src/event/events/SubmitEvent.js'; -import HTMLSelectElement from '../../../src/nodes/html-select-element/HTMLSelectElement.js'; -import HTMLTextAreaElement from '../../../src/nodes/html-text-area-element/HTMLTextAreaElement.js'; -import HTMLButtonElement from '../../../src/nodes/html-button-element/HTMLButtonElement.js'; +import type HTMLSelectElement from '../../../src/nodes/html-select-element/HTMLSelectElement.js'; +import type HTMLTextAreaElement from '../../../src/nodes/html-text-area-element/HTMLTextAreaElement.js'; +import type HTMLButtonElement from '../../../src/nodes/html-button-element/HTMLButtonElement.js'; import Fetch from '../../../src/fetch/Fetch.js'; -import Request from '../../../src/fetch/Request.js'; -import Response from '../../../src/fetch/Response.js'; +import type Request from '../../../src/fetch/Request.js'; +import type Response from '../../../src/fetch/Response.js'; import Browser from '../../../src/browser/Browser.js'; -import File from '../../../src/file/File.js'; -import HTMLElement from '../../../src/nodes/html-element/HTMLElement.js'; -import HTMLIFrameElement from '../../../src/nodes/html-iframe-element/HTMLIFrameElement.js'; -import BrowserWindow from '../../../src/window/BrowserWindow.js'; +import type File from '../../../src/file/File.js'; +import type HTMLElement from '../../../src/nodes/html-element/HTMLElement.js'; +import type HTMLIFrameElement from '../../../src/nodes/html-iframe-element/HTMLIFrameElement.js'; +import type BrowserWindow from '../../../src/window/BrowserWindow.js'; import { beforeEach, describe, it, expect, vi } from 'vitest'; -import THTMLFormControlElement from '../../../src/nodes/html-form-element/THTMLFormControlElement.js'; -import HTMLOutputElement from '../../../src/nodes/html-output-element/HTMLOutputElement.js'; +import type THTMLFormControlElement from '../../../src/nodes/html-form-element/THTMLFormControlElement.js'; +import type HTMLOutputElement from '../../../src/nodes/html-output-element/HTMLOutputElement.js'; import * as PropertySymbol from '../../../src/PropertySymbol.js'; -import EventTarget from '../../../src/event/EventTarget.js'; +import type EventTarget from '../../../src/event/EventTarget.js'; describe('HTMLFormElement', () => { let window: Window; diff --git a/packages/happy-dom/test/nodes/html-head-element/HTMLHeadElement.test.ts b/packages/happy-dom/test/nodes/html-head-element/HTMLHeadElement.test.ts index a01a4d6be..63e6489a5 100644 --- a/packages/happy-dom/test/nodes/html-head-element/HTMLHeadElement.test.ts +++ b/packages/happy-dom/test/nodes/html-head-element/HTMLHeadElement.test.ts @@ -1,6 +1,6 @@ import HTMLHeadElement from '../../../src/nodes/html-head-element/HTMLHeadElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; describe('HTMLHeadElement', () => { diff --git a/packages/happy-dom/test/nodes/html-heading-element/HTMLHeadingElement.test.ts b/packages/happy-dom/test/nodes/html-heading-element/HTMLHeadingElement.test.ts index 0c34c1d3d..872a4f23c 100644 --- a/packages/happy-dom/test/nodes/html-heading-element/HTMLHeadingElement.test.ts +++ b/packages/happy-dom/test/nodes/html-heading-element/HTMLHeadingElement.test.ts @@ -1,6 +1,6 @@ import HTMLHeadingElement from '../../../src/nodes/html-heading-element/HTMLHeadingElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; describe('HTMLHeadingElement', () => { diff --git a/packages/happy-dom/test/nodes/html-hr-element/HTMLHRElement.test.ts b/packages/happy-dom/test/nodes/html-hr-element/HTMLHRElement.test.ts index 6a2c590cb..c78fcbb1e 100644 --- a/packages/happy-dom/test/nodes/html-hr-element/HTMLHRElement.test.ts +++ b/packages/happy-dom/test/nodes/html-hr-element/HTMLHRElement.test.ts @@ -1,6 +1,6 @@ import HTMLHRElement from '../../../src/nodes/html-hr-element/HTMLHRElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; describe('HTMLHRElement', () => { diff --git a/packages/happy-dom/test/nodes/html-html-element/HTMLHtmlElement.test.ts b/packages/happy-dom/test/nodes/html-html-element/HTMLHtmlElement.test.ts index 11c650536..5257ccf8e 100644 --- a/packages/happy-dom/test/nodes/html-html-element/HTMLHtmlElement.test.ts +++ b/packages/happy-dom/test/nodes/html-html-element/HTMLHtmlElement.test.ts @@ -1,6 +1,6 @@ import HTMLHtmlElement from '../../../src/nodes/html-html-element/HTMLHtmlElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; describe('HTMLHtmlElement', () => { diff --git a/packages/happy-dom/test/nodes/html-iframe-element/HTMLIFrameElement.test.ts b/packages/happy-dom/test/nodes/html-iframe-element/HTMLIFrameElement.test.ts index 5f57cddf0..ff5f45056 100644 --- a/packages/happy-dom/test/nodes/html-iframe-element/HTMLIFrameElement.test.ts +++ b/packages/happy-dom/test/nodes/html-iframe-element/HTMLIFrameElement.test.ts @@ -1,9 +1,9 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; -import HTMLIFrameElement from '../../../src/nodes/html-iframe-element/HTMLIFrameElement.js'; -import Response from '../../../src/fetch/Response.js'; +import type Document from '../../../src/nodes/document/Document.js'; +import type HTMLIFrameElement from '../../../src/nodes/html-iframe-element/HTMLIFrameElement.js'; +import type Response from '../../../src/fetch/Response.js'; import CrossOriginBrowserWindow from '../../../src/window/CrossOriginBrowserWindow.js'; -import MessageEvent from '../../../src/event/events/MessageEvent.js'; +import type MessageEvent from '../../../src/event/events/MessageEvent.js'; import DOMExceptionNameEnum from '../../../src/exception/DOMExceptionNameEnum.js'; import DOMException from '../../../src/exception/DOMException.js'; import { beforeEach, describe, it, expect, vi, afterEach } from 'vitest'; diff --git a/packages/happy-dom/test/nodes/html-image-element/HTMLImageElement.test.ts b/packages/happy-dom/test/nodes/html-image-element/HTMLImageElement.test.ts index db71a2979..f8309b31d 100644 --- a/packages/happy-dom/test/nodes/html-image-element/HTMLImageElement.test.ts +++ b/packages/happy-dom/test/nodes/html-image-element/HTMLImageElement.test.ts @@ -1,6 +1,6 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; -import HTMLImageElement from '../../../src/nodes/html-image-element/HTMLImageElement.js'; +import type Document from '../../../src/nodes/document/Document.js'; +import type HTMLImageElement from '../../../src/nodes/html-image-element/HTMLImageElement.js'; import { beforeEach, describe, it, expect } from 'vitest'; describe('HTMLImageElement', () => { diff --git a/packages/happy-dom/test/nodes/html-input-element/FileList.test.ts b/packages/happy-dom/test/nodes/html-input-element/FileList.test.ts index 264f66aa9..d9478c75f 100644 --- a/packages/happy-dom/test/nodes/html-input-element/FileList.test.ts +++ b/packages/happy-dom/test/nodes/html-input-element/FileList.test.ts @@ -1,7 +1,7 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import File from '../../../src/file/File.js'; -import HTMLInputElement from '../../../src/nodes/html-input-element/HTMLInputElement.js'; +import type HTMLInputElement from '../../../src/nodes/html-input-element/HTMLInputElement.js'; import { beforeEach, afterEach, describe, it, expect } from 'vitest'; describe('FileList', () => { diff --git a/packages/happy-dom/test/nodes/html-input-element/HTMLInputElement.test.ts b/packages/happy-dom/test/nodes/html-input-element/HTMLInputElement.test.ts index b112d1901..dd2e8972e 100644 --- a/packages/happy-dom/test/nodes/html-input-element/HTMLInputElement.test.ts +++ b/packages/happy-dom/test/nodes/html-input-element/HTMLInputElement.test.ts @@ -1,19 +1,19 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; -import HTMLInputElement from '../../../src/nodes/html-input-element/HTMLInputElement.js'; +import type Document from '../../../src/nodes/document/Document.js'; +import type HTMLInputElement from '../../../src/nodes/html-input-element/HTMLInputElement.js'; import DOMException from '../../../src/exception/DOMException.js'; import File from '../../../src/file/File.js'; import Event from '../../../src/event/Event.js'; import HTMLInputElementSelectionModeEnum from '../../../src/nodes/html-input-element/HTMLInputElementSelectionModeEnum.js'; import HTMLInputElementSelectionDirectionEnum from '../../../src/nodes/html-input-element/HTMLInputElementSelectionDirectionEnum.js'; import ValidityState from '../../../src/validity-state/ValidityState.js'; -import HTMLFormElement from '../../../src/nodes/html-form-element/HTMLFormElement.js'; +import type HTMLFormElement from '../../../src/nodes/html-form-element/HTMLFormElement.js'; import DOMExceptionNameEnum from '../../../src/exception/DOMExceptionNameEnum.js'; -import SubmitEvent from '../../../src/event/events/SubmitEvent.js'; +import type SubmitEvent from '../../../src/event/events/SubmitEvent.js'; import { beforeEach, describe, it, expect } from 'vitest'; import PointerEvent from '../../../src/event/events/PointerEvent.js'; import MouseEvent from '../../../src/event/events/MouseEvent.js'; -import HTMLElement from '../../../src/nodes/html-element/HTMLElement.js'; +import type HTMLElement from '../../../src/nodes/html-element/HTMLElement.js'; describe('HTMLInputElement', () => { let window: Window; diff --git a/packages/happy-dom/test/nodes/html-input-element/HTMLInputElementValueSanitizer.test.ts b/packages/happy-dom/test/nodes/html-input-element/HTMLInputElementValueSanitizer.test.ts index 6cc2cdbea..310f1f6b0 100644 --- a/packages/happy-dom/test/nodes/html-input-element/HTMLInputElementValueSanitizer.test.ts +++ b/packages/happy-dom/test/nodes/html-input-element/HTMLInputElementValueSanitizer.test.ts @@ -1,6 +1,6 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; -import HTMLInputElement from '../../../src/nodes/html-input-element/HTMLInputElement.js'; +import type Document from '../../../src/nodes/document/Document.js'; +import type HTMLInputElement from '../../../src/nodes/html-input-element/HTMLInputElement.js'; import HTMLInputElementValueSanitizer from '../../../src/nodes/html-input-element/HTMLInputElementValueSanitizer.js'; import { beforeEach, describe, it, expect } from 'vitest'; diff --git a/packages/happy-dom/test/nodes/html-label-element/HTMLLabelElement.test.ts b/packages/happy-dom/test/nodes/html-label-element/HTMLLabelElement.test.ts index 2aa1b31e3..324baf2dd 100644 --- a/packages/happy-dom/test/nodes/html-label-element/HTMLLabelElement.test.ts +++ b/packages/happy-dom/test/nodes/html-label-element/HTMLLabelElement.test.ts @@ -1,7 +1,7 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; -import HTMLLabelElement from '../../../src/nodes/html-label-element/HTMLLabelElement.js'; -import HTMLInputElement from '../../../src/nodes/html-input-element/HTMLInputElement.js'; +import type Document from '../../../src/nodes/document/Document.js'; +import type HTMLLabelElement from '../../../src/nodes/html-label-element/HTMLLabelElement.js'; +import type HTMLInputElement from '../../../src/nodes/html-input-element/HTMLInputElement.js'; import { beforeEach, describe, it, expect } from 'vitest'; import MouseEvent from '../../../src/event/events/MouseEvent.js'; diff --git a/packages/happy-dom/test/nodes/html-legend-element/HTMLLegendElement.test.ts b/packages/happy-dom/test/nodes/html-legend-element/HTMLLegendElement.test.ts index 4c889ec89..ac1d70372 100644 --- a/packages/happy-dom/test/nodes/html-legend-element/HTMLLegendElement.test.ts +++ b/packages/happy-dom/test/nodes/html-legend-element/HTMLLegendElement.test.ts @@ -1,6 +1,6 @@ import HTMLLegendElement from '../../../src/nodes/html-legend-element/HTMLLegendElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; describe('HTMLLegendElement', () => { diff --git a/packages/happy-dom/test/nodes/html-li-element/HTMLLIElement.test.ts b/packages/happy-dom/test/nodes/html-li-element/HTMLLIElement.test.ts index 7175662a3..cf0ae075b 100644 --- a/packages/happy-dom/test/nodes/html-li-element/HTMLLIElement.test.ts +++ b/packages/happy-dom/test/nodes/html-li-element/HTMLLIElement.test.ts @@ -1,6 +1,6 @@ import HTMLLIElement from '../../../src/nodes/html-li-element/HTMLLIElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; describe('HTMLLIElement', () => { diff --git a/packages/happy-dom/test/nodes/html-link-element/HTMLLinkElement.test.ts b/packages/happy-dom/test/nodes/html-link-element/HTMLLinkElement.test.ts index b45def44d..10f7cfd28 100644 --- a/packages/happy-dom/test/nodes/html-link-element/HTMLLinkElement.test.ts +++ b/packages/happy-dom/test/nodes/html-link-element/HTMLLinkElement.test.ts @@ -1,10 +1,10 @@ import Window from '../../../src/window/Window.js'; -import BrowserWindow from '../../../src/window/BrowserWindow.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type BrowserWindow from '../../../src/window/BrowserWindow.js'; +import type Document from '../../../src/nodes/document/Document.js'; import ResourceFetch from '../../../src/fetch/ResourceFetch.js'; import Event from '../../../src/event/Event.js'; import { beforeEach, afterEach, describe, it, expect, vi } from 'vitest'; -import EventTarget from '../../../src/event/EventTarget.js'; +import type EventTarget from '../../../src/event/EventTarget.js'; import BrowserErrorCaptureEnum from '../../../src/browser/enums/BrowserErrorCaptureEnum.js'; import DOMTokenList from '../../../src/dom/DOMTokenList.js'; diff --git a/packages/happy-dom/test/nodes/html-map-element/HTMLMapElement.test.ts b/packages/happy-dom/test/nodes/html-map-element/HTMLMapElement.test.ts index b7273a08f..d411c3842 100644 --- a/packages/happy-dom/test/nodes/html-map-element/HTMLMapElement.test.ts +++ b/packages/happy-dom/test/nodes/html-map-element/HTMLMapElement.test.ts @@ -1,6 +1,6 @@ import HTMLMapElement from '../../../src/nodes/html-map-element/HTMLMapElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; describe('HTMLMapElement', () => { diff --git a/packages/happy-dom/test/nodes/html-media-element/HTMLMediaElement.test.ts b/packages/happy-dom/test/nodes/html-media-element/HTMLMediaElement.test.ts index fef06cfbc..dba857045 100644 --- a/packages/happy-dom/test/nodes/html-media-element/HTMLMediaElement.test.ts +++ b/packages/happy-dom/test/nodes/html-media-element/HTMLMediaElement.test.ts @@ -1,6 +1,6 @@ import Window from '../../../src/window/Window.js'; import DOMExceptionNameEnum from '../../../src/exception/DOMExceptionNameEnum.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import HTMLMediaElement from '../../../src/nodes/html-media-element/HTMLMediaElement.js'; import Event from '../../../src/event/Event.js'; import { beforeEach, describe, it, expect } from 'vitest'; diff --git a/packages/happy-dom/test/nodes/html-media-element/MediaStream.test.ts b/packages/happy-dom/test/nodes/html-media-element/MediaStream.test.ts index 8993a22da..2c8b1f30b 100644 --- a/packages/happy-dom/test/nodes/html-media-element/MediaStream.test.ts +++ b/packages/happy-dom/test/nodes/html-media-element/MediaStream.test.ts @@ -1,7 +1,7 @@ import { describe, it, expect, beforeEach } from 'vitest'; import MediaStream from '../../../src/nodes/html-media-element/MediaStream.js'; import * as PropertySymbol from '../../../src/PropertySymbol.js'; -import BrowserWindow from '../../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../../src/window/BrowserWindow.js'; import Window from '../../../src/window/Window.js'; describe('MediaStream', () => { diff --git a/packages/happy-dom/test/nodes/html-media-element/MediaStreamTrack.test.ts b/packages/happy-dom/test/nodes/html-media-element/MediaStreamTrack.test.ts index 79a814740..d02f1a388 100644 --- a/packages/happy-dom/test/nodes/html-media-element/MediaStreamTrack.test.ts +++ b/packages/happy-dom/test/nodes/html-media-element/MediaStreamTrack.test.ts @@ -1,7 +1,7 @@ import { describe, it, expect, beforeEach } from 'vitest'; import * as PropertySymbol from '../../../src/PropertySymbol.js'; import EventTarget from '../../../src/event/EventTarget.js'; -import BrowserWindow from '../../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../../src/window/BrowserWindow.js'; import Window from '../../../src/window/Window.js'; describe('MediaStreamTrack', () => { diff --git a/packages/happy-dom/test/nodes/html-media-element/RemotePlayback.test.ts b/packages/happy-dom/test/nodes/html-media-element/RemotePlayback.test.ts index 33669b5c9..3ef295a67 100644 --- a/packages/happy-dom/test/nodes/html-media-element/RemotePlayback.test.ts +++ b/packages/happy-dom/test/nodes/html-media-element/RemotePlayback.test.ts @@ -1,5 +1,5 @@ import { describe, it, expect, beforeEach } from 'vitest'; -import BrowserWindow from '../../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../../src/window/BrowserWindow.js'; import Window from '../../../src/window/Window.js'; describe('RemotePlayback', () => { diff --git a/packages/happy-dom/test/nodes/html-media-element/TextTrack.test.ts b/packages/happy-dom/test/nodes/html-media-element/TextTrack.test.ts index 4fdda56e2..57969cf19 100644 --- a/packages/happy-dom/test/nodes/html-media-element/TextTrack.test.ts +++ b/packages/happy-dom/test/nodes/html-media-element/TextTrack.test.ts @@ -2,7 +2,7 @@ import { describe, it, expect, beforeEach } from 'vitest'; import TextTrack from '../../../src/nodes/html-media-element/TextTrack.js'; import TextTrackKindEnum from '../../../src/nodes/html-media-element/TextTrackKindEnum.js'; import * as PropertySymbol from '../../../src/PropertySymbol.js'; -import BrowserWindow from '../../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../../src/window/BrowserWindow.js'; import Window from '../../../src/window/Window.js'; import EventTarget from '../../../src/event/EventTarget.js'; diff --git a/packages/happy-dom/test/nodes/html-media-element/TextTrackCue.test.ts b/packages/happy-dom/test/nodes/html-media-element/TextTrackCue.test.ts index a719a0fd8..d93bc25a5 100644 --- a/packages/happy-dom/test/nodes/html-media-element/TextTrackCue.test.ts +++ b/packages/happy-dom/test/nodes/html-media-element/TextTrackCue.test.ts @@ -1,6 +1,6 @@ import { describe, it, expect, beforeEach } from 'vitest'; import * as PropertySymbol from '../../../src/PropertySymbol.js'; -import BrowserWindow from '../../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../../src/window/BrowserWindow.js'; import Window from '../../../src/window/Window.js'; describe('TextTrackCue', () => { diff --git a/packages/happy-dom/test/nodes/html-media-element/TextTrackCueList.test.ts b/packages/happy-dom/test/nodes/html-media-element/TextTrackCueList.test.ts index 4b26ef2cb..a3c61cadc 100644 --- a/packages/happy-dom/test/nodes/html-media-element/TextTrackCueList.test.ts +++ b/packages/happy-dom/test/nodes/html-media-element/TextTrackCueList.test.ts @@ -1,6 +1,6 @@ import { describe, it, expect, beforeEach } from 'vitest'; import TextTrackCueList from '../../../src/nodes/html-media-element/TextTrackCueList.js'; -import BrowserWindow from '../../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../../src/window/BrowserWindow.js'; import Window from '../../../src/window/Window.js'; import * as PropertySymbol from '../../../src/PropertySymbol.js'; diff --git a/packages/happy-dom/test/nodes/html-media-element/TextTrackList.test.ts b/packages/happy-dom/test/nodes/html-media-element/TextTrackList.test.ts index 46784db1c..e6c1b8d4b 100644 --- a/packages/happy-dom/test/nodes/html-media-element/TextTrackList.test.ts +++ b/packages/happy-dom/test/nodes/html-media-element/TextTrackList.test.ts @@ -1,9 +1,9 @@ import { describe, it, expect, beforeEach } from 'vitest'; import TextTrackList from '../../../src/nodes/html-media-element/TextTrackList.js'; -import BrowserWindow from '../../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../../src/window/BrowserWindow.js'; import Window from '../../../src/window/Window.js'; import * as PropertySymbol from '../../../src/PropertySymbol.js'; -import TextTrack from '../../../src/nodes/html-media-element/TextTrack.js'; +import type TextTrack from '../../../src/nodes/html-media-element/TextTrack.js'; import EventTarget from '../../../src/event/EventTarget.js'; describe('TextTrackList', () => { diff --git a/packages/happy-dom/test/nodes/html-media-element/VTTCue.test.ts b/packages/happy-dom/test/nodes/html-media-element/VTTCue.test.ts index 55d33862a..1ac7ea7b5 100644 --- a/packages/happy-dom/test/nodes/html-media-element/VTTCue.test.ts +++ b/packages/happy-dom/test/nodes/html-media-element/VTTCue.test.ts @@ -1,5 +1,5 @@ import { describe, it, expect, beforeEach } from 'vitest'; -import BrowserWindow from '../../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../../src/window/BrowserWindow.js'; import Window from '../../../src/window/Window.js'; import TextTrackCue from '../../../src/nodes/html-media-element/TextTrackCue.js'; diff --git a/packages/happy-dom/test/nodes/html-menu-element/HTMLMenuElement.test.ts b/packages/happy-dom/test/nodes/html-menu-element/HTMLMenuElement.test.ts index 28db6781e..1fc25e79d 100644 --- a/packages/happy-dom/test/nodes/html-menu-element/HTMLMenuElement.test.ts +++ b/packages/happy-dom/test/nodes/html-menu-element/HTMLMenuElement.test.ts @@ -1,6 +1,6 @@ import HTMLMenuElement from '../../../src/nodes/html-menu-element/HTMLMenuElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; describe('HTMLMenuElement', () => { diff --git a/packages/happy-dom/test/nodes/html-meta-element/HTMLMetaElement.test.ts b/packages/happy-dom/test/nodes/html-meta-element/HTMLMetaElement.test.ts index 58dcc37b8..e70fe97a1 100644 --- a/packages/happy-dom/test/nodes/html-meta-element/HTMLMetaElement.test.ts +++ b/packages/happy-dom/test/nodes/html-meta-element/HTMLMetaElement.test.ts @@ -1,6 +1,6 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; -import HTMLMetaElement from '../../../src/nodes/html-meta-element/HTMLMetaElement.js'; +import type Document from '../../../src/nodes/document/Document.js'; +import type HTMLMetaElement from '../../../src/nodes/html-meta-element/HTMLMetaElement.js'; import { beforeEach, describe, it, expect } from 'vitest'; describe('HTMLMetaElement', () => { diff --git a/packages/happy-dom/test/nodes/html-meter-element/HTMLMeterElement.test.ts b/packages/happy-dom/test/nodes/html-meter-element/HTMLMeterElement.test.ts index 92e6ad6e8..f848a3da4 100644 --- a/packages/happy-dom/test/nodes/html-meter-element/HTMLMeterElement.test.ts +++ b/packages/happy-dom/test/nodes/html-meter-element/HTMLMeterElement.test.ts @@ -1,6 +1,6 @@ import HTMLMeterElement from '../../../src/nodes/html-meter-element/HTMLMeterElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; describe('HTMLMeterElement', () => { diff --git a/packages/happy-dom/test/nodes/html-mod-element/HTMLModElement.test.ts b/packages/happy-dom/test/nodes/html-mod-element/HTMLModElement.test.ts index c44eeb06b..14592b0d0 100644 --- a/packages/happy-dom/test/nodes/html-mod-element/HTMLModElement.test.ts +++ b/packages/happy-dom/test/nodes/html-mod-element/HTMLModElement.test.ts @@ -1,6 +1,6 @@ import HTMLModElement from '../../../src/nodes/html-mod-element/HTMLModElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; describe('HTMLModElement', () => { diff --git a/packages/happy-dom/test/nodes/html-o-list-element/HTMLOListElement.test.ts b/packages/happy-dom/test/nodes/html-o-list-element/HTMLOListElement.test.ts index 1120d85d2..d3604604d 100644 --- a/packages/happy-dom/test/nodes/html-o-list-element/HTMLOListElement.test.ts +++ b/packages/happy-dom/test/nodes/html-o-list-element/HTMLOListElement.test.ts @@ -1,6 +1,6 @@ import HTMLOListElement from '../../../src/nodes/html-o-list-element/HTMLOListElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; describe('HTMLOListElement', () => { diff --git a/packages/happy-dom/test/nodes/html-object-element/HTMLObjectElement.test.ts b/packages/happy-dom/test/nodes/html-object-element/HTMLObjectElement.test.ts index e93d3b6c3..774f363df 100644 --- a/packages/happy-dom/test/nodes/html-object-element/HTMLObjectElement.test.ts +++ b/packages/happy-dom/test/nodes/html-object-element/HTMLObjectElement.test.ts @@ -1,6 +1,6 @@ import HTMLObjectElement from '../../../src/nodes/html-object-element/HTMLObjectElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import ValidityState from '../../../src/validity-state/ValidityState.js'; diff --git a/packages/happy-dom/test/nodes/html-opt-group-element/HTMLOptGroupElement.test.ts b/packages/happy-dom/test/nodes/html-opt-group-element/HTMLOptGroupElement.test.ts index 78eb2ef21..797fcb056 100644 --- a/packages/happy-dom/test/nodes/html-opt-group-element/HTMLOptGroupElement.test.ts +++ b/packages/happy-dom/test/nodes/html-opt-group-element/HTMLOptGroupElement.test.ts @@ -1,6 +1,6 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; -import HTMLOptGroupElement from '../../../src/nodes/html-opt-group-element/HTMLOptGroupElement.js'; +import type Document from '../../../src/nodes/document/Document.js'; +import type HTMLOptGroupElement from '../../../src/nodes/html-opt-group-element/HTMLOptGroupElement.js'; import { beforeEach, describe, it, expect } from 'vitest'; describe('HTMLOptGroupElement', () => { diff --git a/packages/happy-dom/test/nodes/html-option-element/HTMLOptionElement.test.ts b/packages/happy-dom/test/nodes/html-option-element/HTMLOptionElement.test.ts index 36d9df483..5d5b59e77 100644 --- a/packages/happy-dom/test/nodes/html-option-element/HTMLOptionElement.test.ts +++ b/packages/happy-dom/test/nodes/html-option-element/HTMLOptionElement.test.ts @@ -1,7 +1,7 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; -import HTMLOptionElement from '../../../src/nodes/html-option-element/HTMLOptionElement.js'; -import HTMLSelectElement from '../../../src/nodes/html-select-element/HTMLSelectElement.js'; +import type Document from '../../../src/nodes/document/Document.js'; +import type HTMLOptionElement from '../../../src/nodes/html-option-element/HTMLOptionElement.js'; +import type HTMLSelectElement from '../../../src/nodes/html-select-element/HTMLSelectElement.js'; import { beforeEach, describe, it, expect } from 'vitest'; describe('HTMLOptionElement', () => { diff --git a/packages/happy-dom/test/nodes/html-option-element/HTMLOptionsCollection.test.ts b/packages/happy-dom/test/nodes/html-option-element/HTMLOptionsCollection.test.ts index 58c6c0765..0959963b6 100644 --- a/packages/happy-dom/test/nodes/html-option-element/HTMLOptionsCollection.test.ts +++ b/packages/happy-dom/test/nodes/html-option-element/HTMLOptionsCollection.test.ts @@ -1,7 +1,7 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; -import HTMLSelectElement from '../../../src/nodes/html-select-element/HTMLSelectElement.js'; -import HTMLOptionElement from '../../../src/nodes/html-option-element/HTMLOptionElement.js'; +import type Document from '../../../src/nodes/document/Document.js'; +import type HTMLSelectElement from '../../../src/nodes/html-select-element/HTMLSelectElement.js'; +import type HTMLOptionElement from '../../../src/nodes/html-option-element/HTMLOptionElement.js'; import DOMException from '../../../src/exception/DOMException.js'; import { beforeEach, describe, it, expect } from 'vitest'; diff --git a/packages/happy-dom/test/nodes/html-output-element/HTMLOutputElement.test.ts b/packages/happy-dom/test/nodes/html-output-element/HTMLOutputElement.test.ts index da1a31013..6b57f6469 100644 --- a/packages/happy-dom/test/nodes/html-output-element/HTMLOutputElement.test.ts +++ b/packages/happy-dom/test/nodes/html-output-element/HTMLOutputElement.test.ts @@ -1,6 +1,6 @@ import HTMLOutputElement from '../../../src/nodes/html-output-element/HTMLOutputElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import ValidityState from '../../../src/validity-state/ValidityState.js'; diff --git a/packages/happy-dom/test/nodes/html-paragraph-element/HTMLParagraphElement.test.ts b/packages/happy-dom/test/nodes/html-paragraph-element/HTMLParagraphElement.test.ts index f04a93dff..d6cd0acfa 100644 --- a/packages/happy-dom/test/nodes/html-paragraph-element/HTMLParagraphElement.test.ts +++ b/packages/happy-dom/test/nodes/html-paragraph-element/HTMLParagraphElement.test.ts @@ -1,6 +1,6 @@ import HTMLParagraphElement from '../../../src/nodes/html-paragraph-element/HTMLParagraphElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; describe('HTMLParagraphElement', () => { diff --git a/packages/happy-dom/test/nodes/html-param-element/HTMLParamElement.test.ts b/packages/happy-dom/test/nodes/html-param-element/HTMLParamElement.test.ts index 07b7ff5ff..a97118bd3 100644 --- a/packages/happy-dom/test/nodes/html-param-element/HTMLParamElement.test.ts +++ b/packages/happy-dom/test/nodes/html-param-element/HTMLParamElement.test.ts @@ -1,6 +1,6 @@ import HTMLParamElement from '../../../src/nodes/html-param-element/HTMLParamElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; describe('HTMLParamElement', () => { diff --git a/packages/happy-dom/test/nodes/html-picture-element/HTMLPictureElement.test.ts b/packages/happy-dom/test/nodes/html-picture-element/HTMLPictureElement.test.ts index 244230088..dd1544d8f 100644 --- a/packages/happy-dom/test/nodes/html-picture-element/HTMLPictureElement.test.ts +++ b/packages/happy-dom/test/nodes/html-picture-element/HTMLPictureElement.test.ts @@ -1,6 +1,6 @@ import HTMLPictureElement from '../../../src/nodes/html-picture-element/HTMLPictureElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; describe('HTMLPictureElement', () => { diff --git a/packages/happy-dom/test/nodes/html-pre-element/HTMLPreElement.test.ts b/packages/happy-dom/test/nodes/html-pre-element/HTMLPreElement.test.ts index 78566fa3c..be09720bb 100644 --- a/packages/happy-dom/test/nodes/html-pre-element/HTMLPreElement.test.ts +++ b/packages/happy-dom/test/nodes/html-pre-element/HTMLPreElement.test.ts @@ -1,6 +1,6 @@ import HTMLPreElement from '../../../src/nodes/html-pre-element/HTMLPreElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; describe('HTMLPreElement', () => { diff --git a/packages/happy-dom/test/nodes/html-progress-element/HTMLProgressElement.test.ts b/packages/happy-dom/test/nodes/html-progress-element/HTMLProgressElement.test.ts index 7a750787a..b7556660d 100644 --- a/packages/happy-dom/test/nodes/html-progress-element/HTMLProgressElement.test.ts +++ b/packages/happy-dom/test/nodes/html-progress-element/HTMLProgressElement.test.ts @@ -1,6 +1,6 @@ import HTMLProgressElement from '../../../src/nodes/html-progress-element/HTMLProgressElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; describe('HTMLProgressElement', () => { diff --git a/packages/happy-dom/test/nodes/html-quote-element/HTMLQuoteElement.test.ts b/packages/happy-dom/test/nodes/html-quote-element/HTMLQuoteElement.test.ts index b7f377eb9..8c8a317d2 100644 --- a/packages/happy-dom/test/nodes/html-quote-element/HTMLQuoteElement.test.ts +++ b/packages/happy-dom/test/nodes/html-quote-element/HTMLQuoteElement.test.ts @@ -1,6 +1,6 @@ import HTMLQuoteElement from '../../../src/nodes/html-quote-element/HTMLQuoteElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; describe('HTMLQuoteElement', () => { diff --git a/packages/happy-dom/test/nodes/html-script-element/HTMLScriptElement.test.ts b/packages/happy-dom/test/nodes/html-script-element/HTMLScriptElement.test.ts index 384c34cea..87a01a102 100644 --- a/packages/happy-dom/test/nodes/html-script-element/HTMLScriptElement.test.ts +++ b/packages/happy-dom/test/nodes/html-script-element/HTMLScriptElement.test.ts @@ -1,16 +1,16 @@ import Window from '../../../src/window/Window.js'; -import HTMLScriptElement from '../../../src/nodes/html-script-element/HTMLScriptElement.js'; -import Document from '../../../src/nodes/document/Document.js'; -import Response from '../../../src/fetch/Response.js'; +import type HTMLScriptElement from '../../../src/nodes/html-script-element/HTMLScriptElement.js'; +import type Document from '../../../src/nodes/document/Document.js'; +import type Response from '../../../src/fetch/Response.js'; import ResourceFetch from '../../../src/fetch/ResourceFetch.js'; import { beforeEach, afterEach, describe, it, expect, vi } from 'vitest'; import Event from '../../../src/event/Event.js'; -import ErrorEvent from '../../../src/event/events/ErrorEvent.js'; -import BrowserWindow from '../../../src/window/BrowserWindow.js'; +import type ErrorEvent from '../../../src/event/events/ErrorEvent.js'; +import type BrowserWindow from '../../../src/window/BrowserWindow.js'; import Fetch from '../../../src/fetch/Fetch.js'; import BrowserErrorCaptureEnum from '../../../src/browser/enums/BrowserErrorCaptureEnum.js'; -import EventTarget from '../../../src/event/EventTarget.js'; -import HTMLElement from '../../../src/nodes/html-element/HTMLElement.js'; +import type EventTarget from '../../../src/event/EventTarget.js'; +import type HTMLElement from '../../../src/nodes/html-element/HTMLElement.js'; import DOMTokenList from '../../../src/dom/DOMTokenList.js'; import Path from 'path'; diff --git a/packages/happy-dom/test/nodes/html-script-element/modules-with-circular-dependency/CircularDependency.js b/packages/happy-dom/test/nodes/html-script-element/modules-with-circular-dependency/CircularDependency.js index 22fcc6fdb..57e2744bf 100644 --- a/packages/happy-dom/test/nodes/html-script-element/modules-with-circular-dependency/CircularDependency.js +++ b/packages/happy-dom/test/nodes/html-script-element/modules-with-circular-dependency/CircularDependency.js @@ -1,3 +1,4 @@ +// eslint-disable-next-line import/no-cycle import { topFunction } from './TopDependency.js'; export function circularFunction() { diff --git a/packages/happy-dom/test/nodes/html-script-element/modules-with-circular-dependency/TopDependency.js b/packages/happy-dom/test/nodes/html-script-element/modules-with-circular-dependency/TopDependency.js index 86529c185..1b298ee1b 100644 --- a/packages/happy-dom/test/nodes/html-script-element/modules-with-circular-dependency/TopDependency.js +++ b/packages/happy-dom/test/nodes/html-script-element/modules-with-circular-dependency/TopDependency.js @@ -1,3 +1,4 @@ +// eslint-disable-next-line import/no-cycle import { circularFunction } from './CircularDependency.js'; export function topFunction() { diff --git a/packages/happy-dom/test/nodes/html-select-element/HTMLSelectElement.test.ts b/packages/happy-dom/test/nodes/html-select-element/HTMLSelectElement.test.ts index a2b738e06..1ff2f6d4b 100644 --- a/packages/happy-dom/test/nodes/html-select-element/HTMLSelectElement.test.ts +++ b/packages/happy-dom/test/nodes/html-select-element/HTMLSelectElement.test.ts @@ -1,12 +1,12 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; -import HTMLSelectElement from '../../../src/nodes/html-select-element/HTMLSelectElement.js'; -import HTMLOptionElement from '../../../src/nodes/html-option-element/HTMLOptionElement.js'; +import type Document from '../../../src/nodes/document/Document.js'; +import type HTMLSelectElement from '../../../src/nodes/html-select-element/HTMLSelectElement.js'; +import type HTMLOptionElement from '../../../src/nodes/html-option-element/HTMLOptionElement.js'; import ValidityState from '../../../src/validity-state/ValidityState.js'; import Event from '../../../src/event/Event.js'; import { beforeEach, describe, it, expect } from 'vitest'; import HTMLCollection from '../../../src/nodes/element/HTMLCollection.js'; -import EventTarget from '../../../src/event/EventTarget.js'; +import type EventTarget from '../../../src/event/EventTarget.js'; describe('HTMLSelectElement', () => { let window: Window; diff --git a/packages/happy-dom/test/nodes/html-slot-element/CustomElementWithNamedSlots.ts b/packages/happy-dom/test/nodes/html-slot-element/CustomElementWithNamedSlots.ts index 4beb00502..6759d8c47 100644 --- a/packages/happy-dom/test/nodes/html-slot-element/CustomElementWithNamedSlots.ts +++ b/packages/happy-dom/test/nodes/html-slot-element/CustomElementWithNamedSlots.ts @@ -1,5 +1,5 @@ import HTMLElement from '../../../src/nodes/html-element/HTMLElement.js'; -import ShadowRoot from '../../../src/nodes/shadow-root/ShadowRoot.js'; +import type ShadowRoot from '../../../src/nodes/shadow-root/ShadowRoot.js'; /** * Custom element test class. diff --git a/packages/happy-dom/test/nodes/html-slot-element/CustomElementWithSlot.ts b/packages/happy-dom/test/nodes/html-slot-element/CustomElementWithSlot.ts index bca0dc66f..7ab2d01e0 100644 --- a/packages/happy-dom/test/nodes/html-slot-element/CustomElementWithSlot.ts +++ b/packages/happy-dom/test/nodes/html-slot-element/CustomElementWithSlot.ts @@ -1,5 +1,5 @@ import HTMLElement from '../../../src/nodes/html-element/HTMLElement.js'; -import ShadowRoot from '../../../src/nodes/shadow-root/ShadowRoot.js'; +import type ShadowRoot from '../../../src/nodes/shadow-root/ShadowRoot.js'; /** * Custom element test class. diff --git a/packages/happy-dom/test/nodes/html-slot-element/HTMLSlotElement.test.ts b/packages/happy-dom/test/nodes/html-slot-element/HTMLSlotElement.test.ts index 15baeff88..22c02ec13 100644 --- a/packages/happy-dom/test/nodes/html-slot-element/HTMLSlotElement.test.ts +++ b/packages/happy-dom/test/nodes/html-slot-element/HTMLSlotElement.test.ts @@ -1,12 +1,12 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; -import HTMLSlotElement from '../../../src/nodes/html-slot-element/HTMLSlotElement.js'; +import type Document from '../../../src/nodes/document/Document.js'; +import type HTMLSlotElement from '../../../src/nodes/html-slot-element/HTMLSlotElement.js'; import CustomElementWithNamedSlots from './CustomElementWithNamedSlots.js'; import CustomElementWithSlot from './CustomElementWithSlot.js'; import Event from '../../../src/event/Event.js'; import { beforeEach, describe, it, expect } from 'vitest'; import HTMLElement from '../../../src/nodes/html-element/HTMLElement.js'; -import ShadowRoot from '../../../src/nodes/shadow-root/ShadowRoot.js'; +import type ShadowRoot from '../../../src/nodes/shadow-root/ShadowRoot.js'; describe('HTMLSlotElement', () => { let window: Window; diff --git a/packages/happy-dom/test/nodes/html-source-element/HTMLSourceElement.test.ts b/packages/happy-dom/test/nodes/html-source-element/HTMLSourceElement.test.ts index 85a9d2aa8..2b7006bae 100644 --- a/packages/happy-dom/test/nodes/html-source-element/HTMLSourceElement.test.ts +++ b/packages/happy-dom/test/nodes/html-source-element/HTMLSourceElement.test.ts @@ -1,6 +1,6 @@ import HTMLSourceElement from '../../../src/nodes/html-source-element/HTMLSourceElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; describe('HTMLSourceElement', () => { diff --git a/packages/happy-dom/test/nodes/html-span-element/HTMLSpanElement.test.ts b/packages/happy-dom/test/nodes/html-span-element/HTMLSpanElement.test.ts index ecdd5dd50..20703853e 100644 --- a/packages/happy-dom/test/nodes/html-span-element/HTMLSpanElement.test.ts +++ b/packages/happy-dom/test/nodes/html-span-element/HTMLSpanElement.test.ts @@ -1,6 +1,6 @@ import HTMLSpanElement from '../../../src/nodes/html-span-element/HTMLSpanElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; describe('HTMLSpanElement', () => { diff --git a/packages/happy-dom/test/nodes/html-style-element/HTMLStyleElement.test.ts b/packages/happy-dom/test/nodes/html-style-element/HTMLStyleElement.test.ts index 68918f1e1..932263d82 100644 --- a/packages/happy-dom/test/nodes/html-style-element/HTMLStyleElement.test.ts +++ b/packages/happy-dom/test/nodes/html-style-element/HTMLStyleElement.test.ts @@ -1,9 +1,9 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import HTMLStyleElement from '../../../src/nodes/html-style-element/HTMLStyleElement.js'; import { beforeEach, describe, it, expect } from 'vitest'; import HTMLElement from '../../../src/nodes/html-element/HTMLElement.js'; -import DOMImplementation from '../../../src/dom-implementation/DOMImplementation.js'; +import type DOMImplementation from '../../../src/dom-implementation/DOMImplementation.js'; import CSSStyleRule from '../../../src/css/rules/CSSStyleRule.js'; import * as PropertySymbol from '../../../src/PropertySymbol.js'; diff --git a/packages/happy-dom/test/nodes/html-table-caption-element/HTMLTableCaptionElement.test.ts b/packages/happy-dom/test/nodes/html-table-caption-element/HTMLTableCaptionElement.test.ts index b97191214..a4be2f1ea 100644 --- a/packages/happy-dom/test/nodes/html-table-caption-element/HTMLTableCaptionElement.test.ts +++ b/packages/happy-dom/test/nodes/html-table-caption-element/HTMLTableCaptionElement.test.ts @@ -1,6 +1,6 @@ import HTMLTableCaptionElement from '../../../src/nodes/html-table-caption-element/HTMLTableCaptionElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; describe('HTMLTableCaptionElement', () => { diff --git a/packages/happy-dom/test/nodes/html-table-cell-element/HTMLTableCellElement.test.ts b/packages/happy-dom/test/nodes/html-table-cell-element/HTMLTableCellElement.test.ts index c2b36e4a0..53082d9c0 100644 --- a/packages/happy-dom/test/nodes/html-table-cell-element/HTMLTableCellElement.test.ts +++ b/packages/happy-dom/test/nodes/html-table-cell-element/HTMLTableCellElement.test.ts @@ -1,6 +1,6 @@ import HTMLTableCellElement from '../../../src/nodes/html-table-cell-element/HTMLTableCellElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import DOMTokenList from '../../../src/dom/DOMTokenList.js'; diff --git a/packages/happy-dom/test/nodes/html-table-col-element/HTMLTableColElement.test.ts b/packages/happy-dom/test/nodes/html-table-col-element/HTMLTableColElement.test.ts index 98862a0a5..275ac389b 100644 --- a/packages/happy-dom/test/nodes/html-table-col-element/HTMLTableColElement.test.ts +++ b/packages/happy-dom/test/nodes/html-table-col-element/HTMLTableColElement.test.ts @@ -1,6 +1,6 @@ import HTMLTableColElement from '../../../src/nodes/html-table-col-element/HTMLTableColElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; describe('HTMLTableColElement', () => { diff --git a/packages/happy-dom/test/nodes/html-table-element/HTMLTableElement.test.ts b/packages/happy-dom/test/nodes/html-table-element/HTMLTableElement.test.ts index a07241b8b..30f9829b3 100644 --- a/packages/happy-dom/test/nodes/html-table-element/HTMLTableElement.test.ts +++ b/packages/happy-dom/test/nodes/html-table-element/HTMLTableElement.test.ts @@ -1,8 +1,8 @@ import HTMLTableElement from '../../../src/nodes/html-table-element/HTMLTableElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; -import HTMLTableCaptionElement from '../../../src/nodes/html-table-caption-element/HTMLTableCaptionElement.js'; +import type HTMLTableCaptionElement from '../../../src/nodes/html-table-caption-element/HTMLTableCaptionElement.js'; import HTMLCollection from '../../../src/nodes/element/HTMLCollection.js'; describe('HTMLTableElement', () => { diff --git a/packages/happy-dom/test/nodes/html-table-row-element/HTMLTableRowElement.test.ts b/packages/happy-dom/test/nodes/html-table-row-element/HTMLTableRowElement.test.ts index fc7e2817a..5f2f0d392 100644 --- a/packages/happy-dom/test/nodes/html-table-row-element/HTMLTableRowElement.test.ts +++ b/packages/happy-dom/test/nodes/html-table-row-element/HTMLTableRowElement.test.ts @@ -1,6 +1,6 @@ import HTMLTableRowElement from '../../../src/nodes/html-table-row-element/HTMLTableRowElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import HTMLCollection from '../../../src/nodes/element/HTMLCollection.js'; diff --git a/packages/happy-dom/test/nodes/html-table-section-element/HTMLTableSectionElement.test.ts b/packages/happy-dom/test/nodes/html-table-section-element/HTMLTableSectionElement.test.ts index e94d49405..e97ccfb1c 100644 --- a/packages/happy-dom/test/nodes/html-table-section-element/HTMLTableSectionElement.test.ts +++ b/packages/happy-dom/test/nodes/html-table-section-element/HTMLTableSectionElement.test.ts @@ -1,6 +1,6 @@ import HTMLTableSectionElement from '../../../src/nodes/html-table-section-element/HTMLTableSectionElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; describe('HTMLTableSectionElement', () => { diff --git a/packages/happy-dom/test/nodes/html-template-element/HTMLTemplateElement.test.ts b/packages/happy-dom/test/nodes/html-template-element/HTMLTemplateElement.test.ts index 608c1be57..8bfab20f2 100644 --- a/packages/happy-dom/test/nodes/html-template-element/HTMLTemplateElement.test.ts +++ b/packages/happy-dom/test/nodes/html-template-element/HTMLTemplateElement.test.ts @@ -1,6 +1,6 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; -import HTMLTemplateElement from '../../../src/nodes/html-template-element/HTMLTemplateElement.js'; +import type Document from '../../../src/nodes/document/Document.js'; +import type HTMLTemplateElement from '../../../src/nodes/html-template-element/HTMLTemplateElement.js'; import HTMLSerializer from '../../../src/html-serializer/HTMLSerializer.js'; import { beforeEach, afterEach, describe, it, expect, vi } from 'vitest'; import CustomElement from '../../CustomElement.js'; diff --git a/packages/happy-dom/test/nodes/html-text-area-element/HTMLTextAreaElement.test.ts b/packages/happy-dom/test/nodes/html-text-area-element/HTMLTextAreaElement.test.ts index f4beaec11..40fc83c53 100644 --- a/packages/happy-dom/test/nodes/html-text-area-element/HTMLTextAreaElement.test.ts +++ b/packages/happy-dom/test/nodes/html-text-area-element/HTMLTextAreaElement.test.ts @@ -1,11 +1,11 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; -import HTMLTextAreaElement from '../../../src/nodes/html-text-area-element/HTMLTextAreaElement.js'; +import type Document from '../../../src/nodes/document/Document.js'; +import type HTMLTextAreaElement from '../../../src/nodes/html-text-area-element/HTMLTextAreaElement.js'; import HTMLInputElementSelectionModeEnum from '../../../src/nodes/html-input-element/HTMLInputElementSelectionModeEnum.js'; import HTMLInputElementSelectionDirectionEnum from '../../../src/nodes/html-input-element/HTMLInputElementSelectionDirectionEnum.js'; import ValidityState from '../../../src/validity-state/ValidityState.js'; import Event from '../../../src/event/Event.js'; -import Text from '../../../src/nodes/text/Text.js'; +import type Text from '../../../src/nodes/text/Text.js'; import { beforeEach, describe, it, expect } from 'vitest'; describe('HTMLTextAreaElement', () => { diff --git a/packages/happy-dom/test/nodes/html-time-element/HTMLTimeElement.test.ts b/packages/happy-dom/test/nodes/html-time-element/HTMLTimeElement.test.ts index ff89c561a..757638b60 100644 --- a/packages/happy-dom/test/nodes/html-time-element/HTMLTimeElement.test.ts +++ b/packages/happy-dom/test/nodes/html-time-element/HTMLTimeElement.test.ts @@ -1,5 +1,5 @@ import { beforeEach, describe, expect, it } from 'vitest'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import HTMLTimeElement from '../../../src/nodes/html-time-element/HTMLTimeElement.js'; import Window from '../../../src/window/Window.js'; diff --git a/packages/happy-dom/test/nodes/html-title-element/HTMLTitleElement.test.ts b/packages/happy-dom/test/nodes/html-title-element/HTMLTitleElement.test.ts index c50864658..521f8200e 100644 --- a/packages/happy-dom/test/nodes/html-title-element/HTMLTitleElement.test.ts +++ b/packages/happy-dom/test/nodes/html-title-element/HTMLTitleElement.test.ts @@ -1,8 +1,8 @@ import HTMLTitleElement from '../../../src/nodes/html-title-element/HTMLTitleElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; -import Text from '../../../src/nodes/text/Text.js'; +import type Text from '../../../src/nodes/text/Text.js'; describe('HTMLTitleElement', () => { let window: Window; diff --git a/packages/happy-dom/test/nodes/html-track-element/HTMLTrackElement.test.ts b/packages/happy-dom/test/nodes/html-track-element/HTMLTrackElement.test.ts index bc2e82798..806800308 100644 --- a/packages/happy-dom/test/nodes/html-track-element/HTMLTrackElement.test.ts +++ b/packages/happy-dom/test/nodes/html-track-element/HTMLTrackElement.test.ts @@ -1,6 +1,6 @@ import HTMLTrackElement from '../../../src/nodes/html-track-element/HTMLTrackElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import TextTrackKindEnum from '../../../src/nodes/html-media-element/TextTrackKindEnum.js'; import Event from '../../../src/event/Event.js'; diff --git a/packages/happy-dom/test/nodes/html-u-list-element/HTMLUListElement.test.ts b/packages/happy-dom/test/nodes/html-u-list-element/HTMLUListElement.test.ts index 329a5aeba..b889fc7b4 100644 --- a/packages/happy-dom/test/nodes/html-u-list-element/HTMLUListElement.test.ts +++ b/packages/happy-dom/test/nodes/html-u-list-element/HTMLUListElement.test.ts @@ -1,6 +1,6 @@ import HTMLUListElement from '../../../src/nodes/html-u-list-element/HTMLUListElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; describe('HTMLUListElement', () => { diff --git a/packages/happy-dom/test/nodes/node/Node.test.ts b/packages/happy-dom/test/nodes/node/Node.test.ts index a563669c5..d0d7fa6c2 100644 --- a/packages/happy-dom/test/nodes/node/Node.test.ts +++ b/packages/happy-dom/test/nodes/node/Node.test.ts @@ -1,17 +1,17 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import Node from '../../../src/nodes/node/Node.js'; import HTMLElement from '../../../src/nodes/html-element/HTMLElement.js'; -import HTMLTemplateElement from '../../../src/nodes/html-template-element/HTMLTemplateElement.js'; +import type HTMLTemplateElement from '../../../src/nodes/html-template-element/HTMLTemplateElement.js'; import Event from '../../../src/event/Event.js'; import DOMExceptionNameEnum from '../../../src/exception/DOMExceptionNameEnum.js'; import Text from '../../../src/nodes/text/Text.js'; import EventPhaseEnum from '../../../src/event/EventPhaseEnum.js'; -import ErrorEvent from '../../../src/event/events/ErrorEvent.js'; +import type ErrorEvent from '../../../src/event/events/ErrorEvent.js'; import { beforeEach, describe, it, expect } from 'vitest'; -import ShadowRoot from '../../../src/nodes/shadow-root/ShadowRoot.js'; +import type ShadowRoot from '../../../src/nodes/shadow-root/ShadowRoot.js'; import * as PropertySymbol from '../../../src/PropertySymbol.js'; -import EventTarget from '../../../src/event/EventTarget.js'; +import type EventTarget from '../../../src/event/EventTarget.js'; import NodeFactory from '../../../src/nodes/NodeFactory.js'; describe('Node', () => { diff --git a/packages/happy-dom/test/nodes/node/NodeList.test.ts b/packages/happy-dom/test/nodes/node/NodeList.test.ts index 3908b8cac..3898ef310 100644 --- a/packages/happy-dom/test/nodes/node/NodeList.test.ts +++ b/packages/happy-dom/test/nodes/node/NodeList.test.ts @@ -1,9 +1,9 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import * as PropertySymbol from '../../../src/PropertySymbol.js'; import NodeList from '../../../src/nodes/node/NodeList.js'; -import Node from '../../../src/nodes/node/Node.js'; +import type Node from '../../../src/nodes/node/Node.js'; describe('NodeList', () => { let window: Window; diff --git a/packages/happy-dom/test/nodes/node/NodeUtility.test.ts b/packages/happy-dom/test/nodes/node/NodeUtility.test.ts index 8c7346b28..c61c4e992 100644 --- a/packages/happy-dom/test/nodes/node/NodeUtility.test.ts +++ b/packages/happy-dom/test/nodes/node/NodeUtility.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import NodeUtility from '../../../src/nodes/node/NodeUtility.js'; import NodeTypeEnum from '../../../src/nodes/node/NodeTypeEnum.js'; import * as PropertySymbol from '../../../src/PropertySymbol.js'; diff --git a/packages/happy-dom/test/nodes/parent-node/ParentNodeUtility.test.ts b/packages/happy-dom/test/nodes/parent-node/ParentNodeUtility.test.ts index b5f813a4d..178d62ba0 100644 --- a/packages/happy-dom/test/nodes/parent-node/ParentNodeUtility.test.ts +++ b/packages/happy-dom/test/nodes/parent-node/ParentNodeUtility.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import ParentNodeUtility from '../../../src/nodes/parent-node/ParentNodeUtility.js'; import NamespaceURI from '../../../src/config/NamespaceURI.js'; import HTMLCollection from '../../../src/nodes/element/HTMLCollection.js'; diff --git a/packages/happy-dom/test/nodes/shadow-root/ShadowRoot.test.ts b/packages/happy-dom/test/nodes/shadow-root/ShadowRoot.test.ts index b772fea67..f05888212 100644 --- a/packages/happy-dom/test/nodes/shadow-root/ShadowRoot.test.ts +++ b/packages/happy-dom/test/nodes/shadow-root/ShadowRoot.test.ts @@ -1,8 +1,8 @@ -import HTMLElement from '../../../src/nodes/html-element/HTMLElement.js'; +import type HTMLElement from '../../../src/nodes/html-element/HTMLElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import CustomElement from '../../CustomElement.js'; -import ShadowRoot from '../../../src/nodes/shadow-root/ShadowRoot.js'; +import type ShadowRoot from '../../../src/nodes/shadow-root/ShadowRoot.js'; import { beforeEach, describe, it, expect } from 'vitest'; import CSSStyleSheet from '../../../src/css/CSSStyleSheet.js'; import * as PropertySymbol from '../../../src/PropertySymbol.js'; diff --git a/packages/happy-dom/test/nodes/svg-animate-element/SVGAnimateElement.test.ts b/packages/happy-dom/test/nodes/svg-animate-element/SVGAnimateElement.test.ts index c992a21d8..05aa178fc 100644 --- a/packages/happy-dom/test/nodes/svg-animate-element/SVGAnimateElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-animate-element/SVGAnimateElement.test.ts @@ -1,6 +1,6 @@ import SVGAnimateElement from '../../../src/nodes/svg-animate-element/SVGAnimateElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGAnimationElement from '../../../src/nodes/svg-animation-element/SVGAnimationElement.js'; diff --git a/packages/happy-dom/test/nodes/svg-animate-motion-element/SVGAnimateMotionElement.test.ts b/packages/happy-dom/test/nodes/svg-animate-motion-element/SVGAnimateMotionElement.test.ts index 87f841354..6acce2868 100644 --- a/packages/happy-dom/test/nodes/svg-animate-motion-element/SVGAnimateMotionElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-animate-motion-element/SVGAnimateMotionElement.test.ts @@ -1,6 +1,6 @@ import SVGAnimateMotionElement from '../../../src/nodes/svg-animate-motion-element/SVGAnimateMotionElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGAnimationElement from '../../../src/nodes/svg-animation-element/SVGAnimationElement.js'; diff --git a/packages/happy-dom/test/nodes/svg-animate-transform-element/SVGAnimateTransformElement.test.ts b/packages/happy-dom/test/nodes/svg-animate-transform-element/SVGAnimateTransformElement.test.ts index ac6378560..ea79f0034 100644 --- a/packages/happy-dom/test/nodes/svg-animate-transform-element/SVGAnimateTransformElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-animate-transform-element/SVGAnimateTransformElement.test.ts @@ -1,6 +1,6 @@ import SVGAnimateTransformElement from '../../../src/nodes/svg-animate-transform-element/SVGAnimateTransformElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGAnimationElement from '../../../src/nodes/svg-animation-element/SVGAnimationElement.js'; diff --git a/packages/happy-dom/test/nodes/svg-animation-element/SVGAnimationElement.test.ts b/packages/happy-dom/test/nodes/svg-animation-element/SVGAnimationElement.test.ts index eae09c96e..0360f2611 100644 --- a/packages/happy-dom/test/nodes/svg-animation-element/SVGAnimationElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-animation-element/SVGAnimationElement.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGAnimationElement from '../../../src/nodes/svg-animation-element/SVGAnimationElement.js'; import SVGElement from '../../../src/nodes/svg-element/SVGElement.js'; diff --git a/packages/happy-dom/test/nodes/svg-circle-element/SVGCircleElement.test.ts b/packages/happy-dom/test/nodes/svg-circle-element/SVGCircleElement.test.ts index 792385e16..f8979b212 100644 --- a/packages/happy-dom/test/nodes/svg-circle-element/SVGCircleElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-circle-element/SVGCircleElement.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGCircleElement from '../../../src/nodes/svg-circle-element/SVGCircleElement.js'; import SVGGeometryElement from '../../../src/nodes/svg-geometry-element/SVGGeometryElement.js'; diff --git a/packages/happy-dom/test/nodes/svg-clip-path-element/SVGClipPathElement.test.ts b/packages/happy-dom/test/nodes/svg-clip-path-element/SVGClipPathElement.test.ts index a7900a399..275d4bd55 100644 --- a/packages/happy-dom/test/nodes/svg-clip-path-element/SVGClipPathElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-clip-path-element/SVGClipPathElement.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGClipPathElement from '../../../src/nodes/svg-clip-path-element/SVGClipPathElement.js'; import SVGElement from '../../../src/nodes/svg-element/SVGElement.js'; diff --git a/packages/happy-dom/test/nodes/svg-component-transfer-function-element/SVGComponentTransferFunctionElement.test.ts b/packages/happy-dom/test/nodes/svg-component-transfer-function-element/SVGComponentTransferFunctionElement.test.ts index 21a44ab70..92d18fba5 100644 --- a/packages/happy-dom/test/nodes/svg-component-transfer-function-element/SVGComponentTransferFunctionElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-component-transfer-function-element/SVGComponentTransferFunctionElement.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGComponentTransferFunctionElement from '../../../src/nodes/svg-component-transfer-function-element/SVGComponentTransferFunctionElement.js'; import SVGElement from '../../../src/nodes/svg-element/SVGElement.js'; diff --git a/packages/happy-dom/test/nodes/svg-defs-element/SVGDefsElement.test.ts b/packages/happy-dom/test/nodes/svg-defs-element/SVGDefsElement.test.ts index 0a2ca4c02..a8ab8ff35 100644 --- a/packages/happy-dom/test/nodes/svg-defs-element/SVGDefsElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-defs-element/SVGDefsElement.test.ts @@ -1,6 +1,6 @@ import SVGDefsElement from '../../../src/nodes/svg-defs-element/SVGDefsElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGGraphicsElement from '../../../src/nodes/svg-graphics-element/SVGGraphicsElement.js'; diff --git a/packages/happy-dom/test/nodes/svg-desc-element/SVGDescElement.test.ts b/packages/happy-dom/test/nodes/svg-desc-element/SVGDescElement.test.ts index 3074efe9c..610081f6e 100644 --- a/packages/happy-dom/test/nodes/svg-desc-element/SVGDescElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-desc-element/SVGDescElement.test.ts @@ -1,6 +1,6 @@ import SVGDescElement from '../../../src/nodes/svg-desc-element/SVGDescElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGElement from '../../../src/nodes/svg-element/SVGElement.js'; diff --git a/packages/happy-dom/test/nodes/svg-element/SVGElement.test.ts b/packages/happy-dom/test/nodes/svg-element/SVGElement.test.ts index c8a0842e6..c9ea29e83 100644 --- a/packages/happy-dom/test/nodes/svg-element/SVGElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-element/SVGElement.test.ts @@ -1,9 +1,9 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import SVGElement from '../../../src/nodes/svg-element/SVGElement.js'; import HTMLElementUtility from '../../../src/nodes/html-element/HTMLElementUtility.js'; import { beforeEach, describe, it, expect, vi, afterEach } from 'vitest'; -import HTMLElement from '../../../src/nodes/html-element/HTMLElement.js'; +import type HTMLElement from '../../../src/nodes/html-element/HTMLElement.js'; import Element from '../../../src/nodes/element/Element.js'; import Event from '../../../src/event/Event.js'; diff --git a/packages/happy-dom/test/nodes/svg-ellipse-element/SVGEllipseElement.test.ts b/packages/happy-dom/test/nodes/svg-ellipse-element/SVGEllipseElement.test.ts index 16103630c..a70075ad4 100644 --- a/packages/happy-dom/test/nodes/svg-ellipse-element/SVGEllipseElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-ellipse-element/SVGEllipseElement.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGEllipseElement from '../../../src/nodes/svg-ellipse-element/SVGEllipseElement.js'; import SVGGeometryElement from '../../../src/nodes/svg-geometry-element/SVGGeometryElement.js'; diff --git a/packages/happy-dom/test/nodes/svg-fe-blend-element/SVGFEBlendElement.test.ts b/packages/happy-dom/test/nodes/svg-fe-blend-element/SVGFEBlendElement.test.ts index 12948817d..f443bc492 100644 --- a/packages/happy-dom/test/nodes/svg-fe-blend-element/SVGFEBlendElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-fe-blend-element/SVGFEBlendElement.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGFEBlendElement from '../../../src/nodes/svg-fe-blend-element/SVGFEBlendElement.js'; import SVGLength from '../../../src/svg/SVGLength.js'; diff --git a/packages/happy-dom/test/nodes/svg-fe-color-matrix-element/SVGFEColorMatrixElement.test.ts b/packages/happy-dom/test/nodes/svg-fe-color-matrix-element/SVGFEColorMatrixElement.test.ts index 38d4e55fa..fd457836b 100644 --- a/packages/happy-dom/test/nodes/svg-fe-color-matrix-element/SVGFEColorMatrixElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-fe-color-matrix-element/SVGFEColorMatrixElement.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGFEColorMatrixElement from '../../../src/nodes/svg-fe-color-matrix-element/SVGFEColorMatrixElement.js'; import SVGLength from '../../../src/svg/SVGLength.js'; diff --git a/packages/happy-dom/test/nodes/svg-fe-component-transfer-element/SVGFEComponentTransferElement.test.ts b/packages/happy-dom/test/nodes/svg-fe-component-transfer-element/SVGFEComponentTransferElement.test.ts index 4a61eeb3a..eabcb2849 100644 --- a/packages/happy-dom/test/nodes/svg-fe-component-transfer-element/SVGFEComponentTransferElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-fe-component-transfer-element/SVGFEComponentTransferElement.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGFEComponentTransferElement from '../../../src/nodes/svg-fe-component-transfer-element/SVGFEComponentTransferElement.js'; import SVGLength from '../../../src/svg/SVGLength.js'; diff --git a/packages/happy-dom/test/nodes/svg-fe-composite-element/SVGFECompositeElement.test.ts b/packages/happy-dom/test/nodes/svg-fe-composite-element/SVGFECompositeElement.test.ts index 82fbdda3d..bce53979e 100644 --- a/packages/happy-dom/test/nodes/svg-fe-composite-element/SVGFECompositeElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-fe-composite-element/SVGFECompositeElement.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGFECompositeElement from '../../../src/nodes/svg-fe-composite-element/SVGFECompositeElement.js'; import SVGLength from '../../../src/svg/SVGLength.js'; diff --git a/packages/happy-dom/test/nodes/svg-fe-convolve-matrix-element/SVGFEConvolveMatrixElement.test.ts b/packages/happy-dom/test/nodes/svg-fe-convolve-matrix-element/SVGFEConvolveMatrixElement.test.ts index c8d04eee9..19c96bccd 100644 --- a/packages/happy-dom/test/nodes/svg-fe-convolve-matrix-element/SVGFEConvolveMatrixElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-fe-convolve-matrix-element/SVGFEConvolveMatrixElement.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGFEConvolveMatrixElement from '../../../src/nodes/svg-fe-convolve-matrix-element/SVGFEConvolveMatrixElement.js'; import SVGLength from '../../../src/svg/SVGLength.js'; diff --git a/packages/happy-dom/test/nodes/svg-fe-diffuse-lighting-element/SVGFEDiffuseLightingElement.test.ts b/packages/happy-dom/test/nodes/svg-fe-diffuse-lighting-element/SVGFEDiffuseLightingElement.test.ts index d9ff37f4e..8cb8295f0 100644 --- a/packages/happy-dom/test/nodes/svg-fe-diffuse-lighting-element/SVGFEDiffuseLightingElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-fe-diffuse-lighting-element/SVGFEDiffuseLightingElement.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGFEDiffuseLightingElement from '../../../src/nodes/svg-fe-diffuse-lighting-element/SVGFEDiffuseLightingElement.js'; import SVGLength from '../../../src/svg/SVGLength.js'; diff --git a/packages/happy-dom/test/nodes/svg-fe-displacement-map-element/SVGFEDisplacementMapElement.test.ts b/packages/happy-dom/test/nodes/svg-fe-displacement-map-element/SVGFEDisplacementMapElement.test.ts index a1df011aa..cb0a2f60c 100644 --- a/packages/happy-dom/test/nodes/svg-fe-displacement-map-element/SVGFEDisplacementMapElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-fe-displacement-map-element/SVGFEDisplacementMapElement.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGFEDisplacementMapElement from '../../../src/nodes/svg-fe-displacement-map-element/SVGFEDisplacementMapElement.js'; import SVGLength from '../../../src/svg/SVGLength.js'; diff --git a/packages/happy-dom/test/nodes/svg-fe-distant-light-element/SVGFEDistantLightElement.test.ts b/packages/happy-dom/test/nodes/svg-fe-distant-light-element/SVGFEDistantLightElement.test.ts index b7651c6d5..cd07e29b5 100644 --- a/packages/happy-dom/test/nodes/svg-fe-distant-light-element/SVGFEDistantLightElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-fe-distant-light-element/SVGFEDistantLightElement.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGFEDistantLightElement from '../../../src/nodes/svg-fe-distant-light-element/SVGFEDistantLightElement.js'; import SVGLength from '../../../src/svg/SVGLength.js'; diff --git a/packages/happy-dom/test/nodes/svg-fe-drop-shadow-element/SVGFEDropShadowElement.test.ts b/packages/happy-dom/test/nodes/svg-fe-drop-shadow-element/SVGFEDropShadowElement.test.ts index 1fd4024a3..8b3de33ec 100644 --- a/packages/happy-dom/test/nodes/svg-fe-drop-shadow-element/SVGFEDropShadowElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-fe-drop-shadow-element/SVGFEDropShadowElement.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGFEDropShadowElement from '../../../src/nodes/svg-fe-drop-shadow-element/SVGFEDropShadowElement.js'; import SVGLength from '../../../src/svg/SVGLength.js'; diff --git a/packages/happy-dom/test/nodes/svg-fe-flood-element/SVGFEFloodElement.test.ts b/packages/happy-dom/test/nodes/svg-fe-flood-element/SVGFEFloodElement.test.ts index a76347c56..b024d983a 100644 --- a/packages/happy-dom/test/nodes/svg-fe-flood-element/SVGFEFloodElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-fe-flood-element/SVGFEFloodElement.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGFEFloodElement from '../../../src/nodes/svg-fe-flood-element/SVGFEFloodElement.js'; import SVGLength from '../../../src/svg/SVGLength.js'; diff --git a/packages/happy-dom/test/nodes/svg-fe-func-a-element/SVGFEFuncAElement.test.ts b/packages/happy-dom/test/nodes/svg-fe-func-a-element/SVGFEFuncAElement.test.ts index 6471689b2..05ccd8a75 100644 --- a/packages/happy-dom/test/nodes/svg-fe-func-a-element/SVGFEFuncAElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-fe-func-a-element/SVGFEFuncAElement.test.ts @@ -1,6 +1,6 @@ import SVGFEFuncAElement from '../../../src/nodes/svg-fe-func-a-element/SVGFEFuncAElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGComponentTransferFunctionElement from '../../../src/nodes/svg-component-transfer-function-element/SVGComponentTransferFunctionElement.js'; diff --git a/packages/happy-dom/test/nodes/svg-fe-func-b-element/SVGFEFuncBElement.test.ts b/packages/happy-dom/test/nodes/svg-fe-func-b-element/SVGFEFuncBElement.test.ts index b928ecb63..3ab74c36d 100644 --- a/packages/happy-dom/test/nodes/svg-fe-func-b-element/SVGFEFuncBElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-fe-func-b-element/SVGFEFuncBElement.test.ts @@ -1,6 +1,6 @@ import SVGFEFuncBElement from '../../../src/nodes/svg-fe-func-b-element/SVGFEFuncBElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGComponentTransferFunctionElement from '../../../src/nodes/svg-component-transfer-function-element/SVGComponentTransferFunctionElement.js'; diff --git a/packages/happy-dom/test/nodes/svg-fe-func-g-element/SVGFEFuncGElement.test.ts b/packages/happy-dom/test/nodes/svg-fe-func-g-element/SVGFEFuncGElement.test.ts index ad50721cc..8b2d320d4 100644 --- a/packages/happy-dom/test/nodes/svg-fe-func-g-element/SVGFEFuncGElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-fe-func-g-element/SVGFEFuncGElement.test.ts @@ -1,6 +1,6 @@ import SVGFEFuncGElement from '../../../src/nodes/svg-fe-func-g-element/SVGFEFuncGElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGComponentTransferFunctionElement from '../../../src/nodes/svg-component-transfer-function-element/SVGComponentTransferFunctionElement.js'; diff --git a/packages/happy-dom/test/nodes/svg-fe-func-r-element/SVGFEFuncRElement.test.ts b/packages/happy-dom/test/nodes/svg-fe-func-r-element/SVGFEFuncRElement.test.ts index cdce7e3c6..ae445bb4a 100644 --- a/packages/happy-dom/test/nodes/svg-fe-func-r-element/SVGFEFuncRElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-fe-func-r-element/SVGFEFuncRElement.test.ts @@ -1,6 +1,6 @@ import SVGFEFuncRElement from '../../../src/nodes/svg-fe-func-r-element/SVGFEFuncRElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGComponentTransferFunctionElement from '../../../src/nodes/svg-component-transfer-function-element/SVGComponentTransferFunctionElement.js'; diff --git a/packages/happy-dom/test/nodes/svg-fe-gaussian-blur-element/SVGFEGaussianBlurElement.test.ts b/packages/happy-dom/test/nodes/svg-fe-gaussian-blur-element/SVGFEGaussianBlurElement.test.ts index 04bf4d657..b355816fa 100644 --- a/packages/happy-dom/test/nodes/svg-fe-gaussian-blur-element/SVGFEGaussianBlurElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-fe-gaussian-blur-element/SVGFEGaussianBlurElement.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGFEGaussianBlurElement from '../../../src/nodes/svg-fe-gaussian-blur-element/SVGFEGaussianBlurElement.js'; import SVGLength from '../../../src/svg/SVGLength.js'; diff --git a/packages/happy-dom/test/nodes/svg-fe-image-element/SVGFEImageElement.test.ts b/packages/happy-dom/test/nodes/svg-fe-image-element/SVGFEImageElement.test.ts index 8c61448c6..bfdbc4f8a 100644 --- a/packages/happy-dom/test/nodes/svg-fe-image-element/SVGFEImageElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-fe-image-element/SVGFEImageElement.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGFEImageElement from '../../../src/nodes/svg-fe-image-element/SVGFEImageElement.js'; import SVGLength from '../../../src/svg/SVGLength.js'; diff --git a/packages/happy-dom/test/nodes/svg-fe-merge-element/SVGFEMergeElement.test.ts b/packages/happy-dom/test/nodes/svg-fe-merge-element/SVGFEMergeElement.test.ts index 852f5a304..a2c92b7b6 100644 --- a/packages/happy-dom/test/nodes/svg-fe-merge-element/SVGFEMergeElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-fe-merge-element/SVGFEMergeElement.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGFEMergeElement from '../../../src/nodes/svg-fe-merge-element/SVGFEMergeElement.js'; import SVGLength from '../../../src/svg/SVGLength.js'; diff --git a/packages/happy-dom/test/nodes/svg-fe-merge-node-element/SVGFEMergeNodeElement.test.ts b/packages/happy-dom/test/nodes/svg-fe-merge-node-element/SVGFEMergeNodeElement.test.ts index 672e02f78..f2044b818 100644 --- a/packages/happy-dom/test/nodes/svg-fe-merge-node-element/SVGFEMergeNodeElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-fe-merge-node-element/SVGFEMergeNodeElement.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGFEMergeNodeElement from '../../../src/nodes/svg-fe-merge-node-element/SVGFEMergeNodeElement.js'; import SVGElement from '../../../src/nodes/svg-element/SVGElement.js'; diff --git a/packages/happy-dom/test/nodes/svg-fe-morphology-element/SVGFEMorphologyElement.test.ts b/packages/happy-dom/test/nodes/svg-fe-morphology-element/SVGFEMorphologyElement.test.ts index 51481a299..a123a3268 100644 --- a/packages/happy-dom/test/nodes/svg-fe-morphology-element/SVGFEMorphologyElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-fe-morphology-element/SVGFEMorphologyElement.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGFEMorphologyElement from '../../../src/nodes/svg-fe-morphology-element/SVGFEMorphologyElement.js'; import SVGElement from '../../../src/nodes/svg-element/SVGElement.js'; diff --git a/packages/happy-dom/test/nodes/svg-fe-offset-element/SVGFEOffsetElement.test.ts b/packages/happy-dom/test/nodes/svg-fe-offset-element/SVGFEOffsetElement.test.ts index 2bf044e7c..d775a6733 100644 --- a/packages/happy-dom/test/nodes/svg-fe-offset-element/SVGFEOffsetElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-fe-offset-element/SVGFEOffsetElement.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGFEOffsetElement from '../../../src/nodes/svg-fe-offset-element/SVGFEOffsetElement.js'; import SVGElement from '../../../src/nodes/svg-element/SVGElement.js'; diff --git a/packages/happy-dom/test/nodes/svg-fe-point-light-element/SVGFEPointLightElement.test.ts b/packages/happy-dom/test/nodes/svg-fe-point-light-element/SVGFEPointLightElement.test.ts index a4e6ce5b8..4d2684e94 100644 --- a/packages/happy-dom/test/nodes/svg-fe-point-light-element/SVGFEPointLightElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-fe-point-light-element/SVGFEPointLightElement.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGFEPointLightElement from '../../../src/nodes/svg-fe-point-light-element/SVGFEPointLightElement.js'; import SVGElement from '../../../src/nodes/svg-element/SVGElement.js'; diff --git a/packages/happy-dom/test/nodes/svg-fe-specular-lighting-element/SVGFESpecularLightingElement.test.ts b/packages/happy-dom/test/nodes/svg-fe-specular-lighting-element/SVGFESpecularLightingElement.test.ts index 98d5a93dc..edcbf684b 100644 --- a/packages/happy-dom/test/nodes/svg-fe-specular-lighting-element/SVGFESpecularLightingElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-fe-specular-lighting-element/SVGFESpecularLightingElement.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGFESpecularLightingElement from '../../../src/nodes/svg-fe-specular-lighting-element/SVGFESpecularLightingElement.js'; import SVGElement from '../../../src/nodes/svg-element/SVGElement.js'; diff --git a/packages/happy-dom/test/nodes/svg-fe-spot-light-element/SVGFESpotLightElement.test.ts b/packages/happy-dom/test/nodes/svg-fe-spot-light-element/SVGFESpotLightElement.test.ts index be2bb8a98..70803af1f 100644 --- a/packages/happy-dom/test/nodes/svg-fe-spot-light-element/SVGFESpotLightElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-fe-spot-light-element/SVGFESpotLightElement.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGFESpotLightElement from '../../../src/nodes/svg-fe-spot-light-element/SVGFESpotLightElement.js'; import SVGElement from '../../../src/nodes/svg-element/SVGElement.js'; diff --git a/packages/happy-dom/test/nodes/svg-fe-tile-element/SVGFETileElement.test.ts b/packages/happy-dom/test/nodes/svg-fe-tile-element/SVGFETileElement.test.ts index 32df5f96d..7210c9882 100644 --- a/packages/happy-dom/test/nodes/svg-fe-tile-element/SVGFETileElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-fe-tile-element/SVGFETileElement.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGFETileElement from '../../../src/nodes/svg-fe-tile-element/SVGFETileElement.js'; import SVGElement from '../../../src/nodes/svg-element/SVGElement.js'; diff --git a/packages/happy-dom/test/nodes/svg-fe-turbulence-element/SVGFETurbulenceElement.test.ts b/packages/happy-dom/test/nodes/svg-fe-turbulence-element/SVGFETurbulenceElement.test.ts index 18d864d01..4b60aac24 100644 --- a/packages/happy-dom/test/nodes/svg-fe-turbulence-element/SVGFETurbulenceElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-fe-turbulence-element/SVGFETurbulenceElement.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGFETurbulenceElement from '../../../src/nodes/svg-fe-turbulence-element/SVGFETurbulenceElement.js'; import SVGElement from '../../../src/nodes/svg-element/SVGElement.js'; diff --git a/packages/happy-dom/test/nodes/svg-filter-element/SVGFilterElement.test.ts b/packages/happy-dom/test/nodes/svg-filter-element/SVGFilterElement.test.ts index 0fb17297e..61774697f 100644 --- a/packages/happy-dom/test/nodes/svg-filter-element/SVGFilterElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-filter-element/SVGFilterElement.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGFilterElement from '../../../src/nodes/svg-filter-element/SVGFilterElement.js'; import SVGElement from '../../../src/nodes/svg-element/SVGElement.js'; diff --git a/packages/happy-dom/test/nodes/svg-foreign-object-element/SVGForeignObjectElement.test.ts b/packages/happy-dom/test/nodes/svg-foreign-object-element/SVGForeignObjectElement.test.ts index c43923366..d4051effb 100644 --- a/packages/happy-dom/test/nodes/svg-foreign-object-element/SVGForeignObjectElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-foreign-object-element/SVGForeignObjectElement.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGForeignObjectElement from '../../../src/nodes/svg-foreign-object-element/SVGForeignObjectElement.js'; import SVGLength from '../../../src/svg/SVGLength.js'; diff --git a/packages/happy-dom/test/nodes/svg-g-element/SVGGElement.test.ts b/packages/happy-dom/test/nodes/svg-g-element/SVGGElement.test.ts index d6b9400c4..9d8389772 100644 --- a/packages/happy-dom/test/nodes/svg-g-element/SVGGElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-g-element/SVGGElement.test.ts @@ -1,9 +1,9 @@ import SVGGElement from '../../../src/nodes/svg-g-element/SVGGElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGGraphicsElement from '../../../src/nodes/svg-graphics-element/SVGGraphicsElement.js'; -import BrowserWindow from '../../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../../src/window/BrowserWindow.js'; describe('SVGGElement', () => { let window: BrowserWindow; diff --git a/packages/happy-dom/test/nodes/svg-geometry-element/SVGGeometryElement.test.ts b/packages/happy-dom/test/nodes/svg-geometry-element/SVGGeometryElement.test.ts index 92b072e76..1c4a2aa37 100644 --- a/packages/happy-dom/test/nodes/svg-geometry-element/SVGGeometryElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-geometry-element/SVGGeometryElement.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGGeometryElement from '../../../src/nodes/svg-geometry-element/SVGGeometryElement.js'; import SVGGraphicsElement from '../../../src/nodes/svg-graphics-element/SVGGraphicsElement.js'; diff --git a/packages/happy-dom/test/nodes/svg-gradient-element/SVGGradientElement.test.ts b/packages/happy-dom/test/nodes/svg-gradient-element/SVGGradientElement.test.ts index 1cbe65d4d..cee62ae98 100644 --- a/packages/happy-dom/test/nodes/svg-gradient-element/SVGGradientElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-gradient-element/SVGGradientElement.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGGradientElement from '../../../src/nodes/svg-gradient-element/SVGGradientElement.js'; import SVGGraphicsElement from '../../../src/nodes/svg-graphics-element/SVGGraphicsElement.js'; diff --git a/packages/happy-dom/test/nodes/svg-graphics-element/SVGGraphicsElement.test.ts b/packages/happy-dom/test/nodes/svg-graphics-element/SVGGraphicsElement.test.ts index b27754673..f22cd6d6b 100644 --- a/packages/happy-dom/test/nodes/svg-graphics-element/SVGGraphicsElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-graphics-element/SVGGraphicsElement.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGGraphicsElement from '../../../src/nodes/svg-graphics-element/SVGGraphicsElement.js'; import SVGTransformTypeEnum from '../../../src/svg/SVGTransformTypeEnum.js'; diff --git a/packages/happy-dom/test/nodes/svg-image-element/SVGImageElement.test.ts b/packages/happy-dom/test/nodes/svg-image-element/SVGImageElement.test.ts index 2f34c67ea..1bc0177af 100644 --- a/packages/happy-dom/test/nodes/svg-image-element/SVGImageElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-image-element/SVGImageElement.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGImageElement from '../../../src/nodes/svg-image-element/SVGImageElement.js'; import SVGGraphicsElement from '../../../src/nodes/svg-graphics-element/SVGGraphicsElement.js'; diff --git a/packages/happy-dom/test/nodes/svg-line-element/SVGLineElement.test.ts b/packages/happy-dom/test/nodes/svg-line-element/SVGLineElement.test.ts index cf60e826c..104ed40b0 100644 --- a/packages/happy-dom/test/nodes/svg-line-element/SVGLineElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-line-element/SVGLineElement.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGLineElement from '../../../src/nodes/svg-line-element/SVGLineElement.js'; import SVGLength from '../../../src/svg/SVGLength.js'; diff --git a/packages/happy-dom/test/nodes/svg-linear-gradient-element/SVGLinearGradientElement.test.ts b/packages/happy-dom/test/nodes/svg-linear-gradient-element/SVGLinearGradientElement.test.ts index 763ddddf7..2ebde8ece 100644 --- a/packages/happy-dom/test/nodes/svg-linear-gradient-element/SVGLinearGradientElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-linear-gradient-element/SVGLinearGradientElement.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGLinearGradientElement from '../../../src/nodes/svg-linear-gradient-element/SVGLinearGradientElement.js'; import SVGLength from '../../../src/svg/SVGLength.js'; diff --git a/packages/happy-dom/test/nodes/svg-m-path-element/SVGMPathElement.test.ts b/packages/happy-dom/test/nodes/svg-m-path-element/SVGMPathElement.test.ts index 794f47beb..0214e55db 100644 --- a/packages/happy-dom/test/nodes/svg-m-path-element/SVGMPathElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-m-path-element/SVGMPathElement.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGMPathElement from '../../../src/nodes/svg-m-path-element/SVGMPathElement.js'; import SVGElement from '../../../src/nodes/svg-element/SVGElement.js'; diff --git a/packages/happy-dom/test/nodes/svg-marker-element/SVGMarkerElement.test.ts b/packages/happy-dom/test/nodes/svg-marker-element/SVGMarkerElement.test.ts index fb2fdf02d..4803c0a2f 100644 --- a/packages/happy-dom/test/nodes/svg-marker-element/SVGMarkerElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-marker-element/SVGMarkerElement.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGMarkerElement from '../../../src/nodes/svg-marker-element/SVGMarkerElement.js'; import SVGElement from '../../../src/nodes/svg-element/SVGElement.js'; diff --git a/packages/happy-dom/test/nodes/svg-mask-element/SVGMaskElement.test.ts b/packages/happy-dom/test/nodes/svg-mask-element/SVGMaskElement.test.ts index 90db456c1..8c2d61e9a 100644 --- a/packages/happy-dom/test/nodes/svg-mask-element/SVGMaskElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-mask-element/SVGMaskElement.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGMaskElement from '../../../src/nodes/svg-mask-element/SVGMaskElement.js'; import SVGElement from '../../../src/nodes/svg-element/SVGElement.js'; diff --git a/packages/happy-dom/test/nodes/svg-metadata-element/SVGMetadataElement.test.ts b/packages/happy-dom/test/nodes/svg-metadata-element/SVGMetadataElement.test.ts index 3aee0e2d7..64811b1a9 100644 --- a/packages/happy-dom/test/nodes/svg-metadata-element/SVGMetadataElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-metadata-element/SVGMetadataElement.test.ts @@ -1,6 +1,6 @@ import SVGMetadataElement from '../../../src/nodes/svg-metadata-element/SVGMetadataElement.js'; -import BrowserWindow from '../../../src/window/BrowserWindow.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type BrowserWindow from '../../../src/window/BrowserWindow.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGElement from '../../../src/nodes/svg-element/SVGElement.js'; import Window from '../../../src/window/Window.js'; diff --git a/packages/happy-dom/test/nodes/svg-path-element/SVGPathElement.test.ts b/packages/happy-dom/test/nodes/svg-path-element/SVGPathElement.test.ts index 51e452e31..c852359e7 100644 --- a/packages/happy-dom/test/nodes/svg-path-element/SVGPathElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-path-element/SVGPathElement.test.ts @@ -1,9 +1,9 @@ import SVGPathElement from '../../../src/nodes/svg-path-element/SVGPathElement.js'; import Window from '../../../src/window/Window.js'; -import BrowserWindow from '../../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../../src/window/BrowserWindow.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGGeometryElement from '../../../src/nodes/svg-geometry-element/SVGGeometryElement.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; describe('SVGPathElement', () => { let window: BrowserWindow; diff --git a/packages/happy-dom/test/nodes/svg-pattern-element/SVGPatternElement.test.ts b/packages/happy-dom/test/nodes/svg-pattern-element/SVGPatternElement.test.ts index 6fe611a30..b629eae1c 100644 --- a/packages/happy-dom/test/nodes/svg-pattern-element/SVGPatternElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-pattern-element/SVGPatternElement.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGPatternElement from '../../../src/nodes/svg-pattern-element/SVGPatternElement.js'; import SVGElement from '../../../src/nodes/svg-element/SVGElement.js'; diff --git a/packages/happy-dom/test/nodes/svg-polygon-element/SVGPolygonElement.test.ts b/packages/happy-dom/test/nodes/svg-polygon-element/SVGPolygonElement.test.ts index 9e9b06197..9a62c01f7 100644 --- a/packages/happy-dom/test/nodes/svg-polygon-element/SVGPolygonElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-polygon-element/SVGPolygonElement.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGPolygonElement from '../../../src/nodes/svg-polygon-element/SVGPolygonElement.js'; import * as PropertySymbol from '../../../src/PropertySymbol.js'; diff --git a/packages/happy-dom/test/nodes/svg-polyline-element/SVGPolylineElement.test.ts b/packages/happy-dom/test/nodes/svg-polyline-element/SVGPolylineElement.test.ts index 91eb94cca..ed01de6ec 100644 --- a/packages/happy-dom/test/nodes/svg-polyline-element/SVGPolylineElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-polyline-element/SVGPolylineElement.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGPolylineElement from '../../../src/nodes/svg-polyline-element/SVGPolylineElement.js'; import * as PropertySymbol from '../../../src/PropertySymbol.js'; diff --git a/packages/happy-dom/test/nodes/svg-radial-gradient-element/SVGRadialGradientElement.test.ts b/packages/happy-dom/test/nodes/svg-radial-gradient-element/SVGRadialGradientElement.test.ts index 0885834d6..fb2f0bbaf 100644 --- a/packages/happy-dom/test/nodes/svg-radial-gradient-element/SVGRadialGradientElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-radial-gradient-element/SVGRadialGradientElement.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGRadialGradientElement from '../../../src/nodes/svg-radial-gradient-element/SVGRadialGradientElement.js'; import SVGLength from '../../../src/svg/SVGLength.js'; diff --git a/packages/happy-dom/test/nodes/svg-rect-element/SVGRectElement.test.ts b/packages/happy-dom/test/nodes/svg-rect-element/SVGRectElement.test.ts index 6e7b0a38a..b86660ae2 100644 --- a/packages/happy-dom/test/nodes/svg-rect-element/SVGRectElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-rect-element/SVGRectElement.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGRectElement from '../../../src/nodes/svg-rect-element/SVGRectElement.js'; import SVGLength from '../../../src/svg/SVGLength.js'; diff --git a/packages/happy-dom/test/nodes/svg-script-element/SVGScriptElement.test.ts b/packages/happy-dom/test/nodes/svg-script-element/SVGScriptElement.test.ts index 16a628b6a..380afe608 100644 --- a/packages/happy-dom/test/nodes/svg-script-element/SVGScriptElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-script-element/SVGScriptElement.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGScriptElement from '../../../src/nodes/svg-script-element/SVGScriptElement.js'; import SVGGraphicsElement from '../../../src/nodes/svg-graphics-element/SVGGraphicsElement.js'; diff --git a/packages/happy-dom/test/nodes/svg-set-element/SVGSetElement.test.ts b/packages/happy-dom/test/nodes/svg-set-element/SVGSetElement.test.ts index a34555790..b84cb533c 100644 --- a/packages/happy-dom/test/nodes/svg-set-element/SVGSetElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-set-element/SVGSetElement.test.ts @@ -1,9 +1,9 @@ import SVGSetElement from '../../../src/nodes/svg-set-element/SVGSetElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGAnimationElement from '../../../src/nodes/svg-animation-element/SVGAnimationElement.js'; -import BrowserWindow from '../../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../../src/window/BrowserWindow.js'; describe('SVGSetElement', () => { let window: BrowserWindow; diff --git a/packages/happy-dom/test/nodes/svg-stop-element/SVGStopElement.test.ts b/packages/happy-dom/test/nodes/svg-stop-element/SVGStopElement.test.ts index ae1520c9c..b9ca04903 100644 --- a/packages/happy-dom/test/nodes/svg-stop-element/SVGStopElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-stop-element/SVGStopElement.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGStopElement from '../../../src/nodes/svg-stop-element/SVGStopElement.js'; import SVGElement from '../../../src/nodes/svg-element/SVGElement.js'; diff --git a/packages/happy-dom/test/nodes/svg-style-element/SVGStyleElement.test.ts b/packages/happy-dom/test/nodes/svg-style-element/SVGStyleElement.test.ts index 049569c1b..8f0b6c731 100644 --- a/packages/happy-dom/test/nodes/svg-style-element/SVGStyleElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-style-element/SVGStyleElement.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import SVGStyleElement from '../../../src/nodes/svg-style-element/SVGStyleElement.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGElement from '../../../src/nodes/svg-element/SVGElement.js'; diff --git a/packages/happy-dom/test/nodes/svg-svg-element/SVGSVGElement.test.ts b/packages/happy-dom/test/nodes/svg-svg-element/SVGSVGElement.test.ts index a3fd07318..99a79062b 100644 --- a/packages/happy-dom/test/nodes/svg-svg-element/SVGSVGElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-svg-element/SVGSVGElement.test.ts @@ -1,6 +1,6 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; -import SVGSVGElement from '../../../src/nodes/svg-svg-element/SVGSVGElement.js'; +import type Document from '../../../src/nodes/document/Document.js'; +import type SVGSVGElement from '../../../src/nodes/svg-svg-element/SVGSVGElement.js'; import SVGRect from '../../../src/svg/SVGRect.js'; import SVGPoint from '../../../src/svg/SVGPoint.js'; import SVGAnimatedRect from '../../../src/svg/SVGAnimatedRect.js'; @@ -14,7 +14,7 @@ import SVGPreserveAspectRatioMeetOrSliceEnum from '../../../src/svg/SVGPreserveA import ParentNodeUtility from '../../../src/nodes/parent-node/ParentNodeUtility.js'; import * as PropertySymbol from '../../../src/PropertySymbol.js'; import HTMLCollection from '../../../src/nodes/element/HTMLCollection.js'; -import Element from '../../../src/nodes/element/Element.js'; +import type Element from '../../../src/nodes/element/Element.js'; import NodeList from '../../../src/nodes/node/NodeList.js'; import SVGMatrix from '../../../src/svg/SVGMatrix.js'; import Event from '../../../src/event/Event.js'; diff --git a/packages/happy-dom/test/nodes/svg-switch-element/SVGSwitchElement.test.ts b/packages/happy-dom/test/nodes/svg-switch-element/SVGSwitchElement.test.ts index 665951d93..0fb71ed88 100644 --- a/packages/happy-dom/test/nodes/svg-switch-element/SVGSwitchElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-switch-element/SVGSwitchElement.test.ts @@ -1,8 +1,8 @@ import SVGSwitchElement from '../../../src/nodes/svg-switch-element/SVGSwitchElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; -import BrowserWindow from '../../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../../src/window/BrowserWindow.js'; import SVGGraphicsElement from '../../../src/nodes/svg-graphics-element/SVGGraphicsElement.js'; describe('SVGSwitchElement', () => { diff --git a/packages/happy-dom/test/nodes/svg-symbol-element/SVGSymbolElement.test.ts b/packages/happy-dom/test/nodes/svg-symbol-element/SVGSymbolElement.test.ts index 86a59cf89..856762a14 100644 --- a/packages/happy-dom/test/nodes/svg-symbol-element/SVGSymbolElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-symbol-element/SVGSymbolElement.test.ts @@ -1,8 +1,8 @@ import SVGSymbolElement from '../../../src/nodes/svg-symbol-element/SVGSymbolElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; -import BrowserWindow from '../../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../../src/window/BrowserWindow.js'; import SVGGraphicsElement from '../../../src/nodes/svg-graphics-element/SVGGraphicsElement.js'; describe('SVGSymbolElement', () => { diff --git a/packages/happy-dom/test/nodes/svg-t-span-element/SVGTSpanElement.test.ts b/packages/happy-dom/test/nodes/svg-t-span-element/SVGTSpanElement.test.ts index ce14c4d49..f902932b2 100644 --- a/packages/happy-dom/test/nodes/svg-t-span-element/SVGTSpanElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-t-span-element/SVGTSpanElement.test.ts @@ -1,8 +1,8 @@ import SVGTSpanElement from '../../../src/nodes/svg-t-span-element/SVGTSpanElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; -import BrowserWindow from '../../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../../src/window/BrowserWindow.js'; import SVGTextPositioningElement from '../../../src/nodes/svg-text-positioning-element/SVGTextPositioningElement.js'; describe('SVGTSpanElement', () => { diff --git a/packages/happy-dom/test/nodes/svg-text-content-element/SVGTextContentElement.test.ts b/packages/happy-dom/test/nodes/svg-text-content-element/SVGTextContentElement.test.ts index 12d2f0557..cae5ce6de 100644 --- a/packages/happy-dom/test/nodes/svg-text-content-element/SVGTextContentElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-text-content-element/SVGTextContentElement.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGTextContentElement from '../../../src/nodes/svg-text-content-element/SVGTextContentElement.js'; import SVGLength from '../../../src/svg/SVGLength.js'; diff --git a/packages/happy-dom/test/nodes/svg-text-element/SVGTextElement.test.ts b/packages/happy-dom/test/nodes/svg-text-element/SVGTextElement.test.ts index 07dfac4c4..88567432d 100644 --- a/packages/happy-dom/test/nodes/svg-text-element/SVGTextElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-text-element/SVGTextElement.test.ts @@ -1,8 +1,8 @@ import SVGTextElement from '../../../src/nodes/svg-text-element/SVGTextElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; -import BrowserWindow from '../../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../../src/window/BrowserWindow.js'; import SVGTextPositioningElement from '../../../src/nodes/svg-text-positioning-element/SVGTextPositioningElement.js'; describe('SVGTextElement', () => { diff --git a/packages/happy-dom/test/nodes/svg-text-positioning-element/SVGTextPositioningElement.test.ts b/packages/happy-dom/test/nodes/svg-text-positioning-element/SVGTextPositioningElement.test.ts index db46929ed..5ee57dbf9 100644 --- a/packages/happy-dom/test/nodes/svg-text-positioning-element/SVGTextPositioningElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-text-positioning-element/SVGTextPositioningElement.test.ts @@ -1,7 +1,7 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; -import SVGTextPositioningElement from '../../../src/nodes/svg-text-positioning-element/SVGTextPositioningElement.js'; +import type SVGTextPositioningElement from '../../../src/nodes/svg-text-positioning-element/SVGTextPositioningElement.js'; import SVGLength from '../../../src/svg/SVGLength.js'; describe('SVGTextPositioningElement', () => { diff --git a/packages/happy-dom/test/nodes/svg-title-element/SVGTitleElement.test.ts b/packages/happy-dom/test/nodes/svg-title-element/SVGTitleElement.test.ts index b7109a346..e5e7e0368 100644 --- a/packages/happy-dom/test/nodes/svg-title-element/SVGTitleElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-title-element/SVGTitleElement.test.ts @@ -1,8 +1,8 @@ import SVGTitleElement from '../../../src/nodes/svg-title-element/SVGTitleElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; -import BrowserWindow from '../../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../../src/window/BrowserWindow.js'; import SVGElement from '../../../src/nodes/svg-element/SVGElement.js'; describe('SVGTitleElement', () => { diff --git a/packages/happy-dom/test/nodes/svg-use-element/SVGUseElement.test.ts b/packages/happy-dom/test/nodes/svg-use-element/SVGUseElement.test.ts index 46ce5fe34..673be63b8 100644 --- a/packages/happy-dom/test/nodes/svg-use-element/SVGUseElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-use-element/SVGUseElement.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; import SVGUseElement from '../../../src/nodes/svg-use-element/SVGUseElement.js'; import SVGGraphicsElement from '../../../src/nodes/svg-graphics-element/SVGGraphicsElement.js'; diff --git a/packages/happy-dom/test/nodes/svg-view-element/SVGViewElement.test.ts b/packages/happy-dom/test/nodes/svg-view-element/SVGViewElement.test.ts index 923c260f1..006f00b1b 100644 --- a/packages/happy-dom/test/nodes/svg-view-element/SVGViewElement.test.ts +++ b/packages/happy-dom/test/nodes/svg-view-element/SVGViewElement.test.ts @@ -1,8 +1,8 @@ import SVGViewElement from '../../../src/nodes/svg-view-element/SVGViewElement.js'; import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; -import BrowserWindow from '../../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../../src/window/BrowserWindow.js'; import SVGElement from '../../../src/nodes/svg-element/SVGElement.js'; describe('SVGViewElement', () => { diff --git a/packages/happy-dom/test/nodes/text/Text.test.ts b/packages/happy-dom/test/nodes/text/Text.test.ts index 584c1ef1a..d1774c9b4 100644 --- a/packages/happy-dom/test/nodes/text/Text.test.ts +++ b/packages/happy-dom/test/nodes/text/Text.test.ts @@ -1,5 +1,5 @@ import Window from '../../../src/window/Window.js'; -import Document from '../../../src/nodes/document/Document.js'; +import type Document from '../../../src/nodes/document/Document.js'; import DOMException from '../../../src/exception/DOMException.js'; import Text from '../../../src/nodes/text/Text.js'; import { beforeEach, describe, it, expect } from 'vitest'; diff --git a/packages/happy-dom/test/query-selector/QuerySelector.attributeCase.test.ts b/packages/happy-dom/test/query-selector/QuerySelector.attributeCase.test.ts index be282c082..1d795adc5 100644 --- a/packages/happy-dom/test/query-selector/QuerySelector.attributeCase.test.ts +++ b/packages/happy-dom/test/query-selector/QuerySelector.attributeCase.test.ts @@ -1,5 +1,5 @@ import Window from '../../src/window/Window.js'; -import Document from '../../src/nodes/document/Document.js'; +import type Document from '../../src/nodes/document/Document.js'; import { beforeEach, describe, it, expect } from 'vitest'; describe('QuerySelector - Attribute Case Sensitivity', () => { diff --git a/packages/happy-dom/test/query-selector/QuerySelector.test.ts b/packages/happy-dom/test/query-selector/QuerySelector.test.ts index 05be773cf..f1cdbe2a5 100644 --- a/packages/happy-dom/test/query-selector/QuerySelector.test.ts +++ b/packages/happy-dom/test/query-selector/QuerySelector.test.ts @@ -1,9 +1,9 @@ -import HTMLElement from '../../src/nodes/html-element/HTMLElement.js'; +import type HTMLElement from '../../src/nodes/html-element/HTMLElement.js'; import Window from '../../src/window/Window.js'; -import Document from '../../src/nodes/document/Document.js'; +import type Document from '../../src/nodes/document/Document.js'; import QuerySelectorHTML from './data/QuerySelectorHTML.js'; import QuerySelectorNthChildHTML from './data/QuerySelectorNthChildHTML.js'; -import HTMLInputElement from '../../src/nodes/html-input-element/HTMLInputElement.js'; +import type HTMLInputElement from '../../src/nodes/html-input-element/HTMLInputElement.js'; import { beforeEach, describe, it, expect } from 'vitest'; import QuerySelector from '../../src/query-selector/QuerySelector.js'; import DOMException from '../../src/exception/DOMException.js'; diff --git a/packages/happy-dom/test/range/Range.test.ts b/packages/happy-dom/test/range/Range.test.ts index 3485d2823..afabfd4ec 100644 --- a/packages/happy-dom/test/range/Range.test.ts +++ b/packages/happy-dom/test/range/Range.test.ts @@ -1,11 +1,11 @@ import Window from '../../src/window/Window.js'; -import Document from '../../src/nodes/document/Document.js'; +import type Document from '../../src/nodes/document/Document.js'; import Range from '../../src/range/Range.js'; import NodeTypeEnum from '../../src/nodes/node/NodeTypeEnum.js'; -import Text from '../../src/nodes/text/Text.js'; +import type Text from '../../src/nodes/text/Text.js'; import DOMRect from '../../src/dom/DOMRect.js'; import { beforeEach, describe, it, expect } from 'vitest'; -import Node from '../../src/nodes/node/Node.js'; +import type Node from '../../src/nodes/node/Node.js'; describe('Range', () => { let window: Window; diff --git a/packages/happy-dom/test/selection/Selection.test.ts b/packages/happy-dom/test/selection/Selection.test.ts index 966b91dee..5aca7942d 100644 --- a/packages/happy-dom/test/selection/Selection.test.ts +++ b/packages/happy-dom/test/selection/Selection.test.ts @@ -1,11 +1,11 @@ import Window from '../../src/window/Window.js'; -import Document from '../../src/nodes/document/Document.js'; +import type Document from '../../src/nodes/document/Document.js'; import Selection from '../../src/selection/Selection.js'; import SelectionDirectionEnum from '../../src/selection/SelectionDirectionEnum.js'; import DOMExceptionNameEnum from '../../src/exception/DOMExceptionNameEnum.js'; import NodeTypeEnum from '../../src/nodes/node/NodeTypeEnum.js'; import { beforeEach, describe, it, expect } from 'vitest'; -import Event from '../../src/event/Event.js'; +import type Event from '../../src/event/Event.js'; describe('Selection', () => { let window: Window; diff --git a/packages/happy-dom/test/svg/SVGAngle.test.ts b/packages/happy-dom/test/svg/SVGAngle.test.ts index d000b13cb..9811c2079 100644 --- a/packages/happy-dom/test/svg/SVGAngle.test.ts +++ b/packages/happy-dom/test/svg/SVGAngle.test.ts @@ -1,6 +1,6 @@ import { beforeEach, describe, it, expect } from 'vitest'; import SVGAngle from '../../src/svg/SVGAngle.js'; -import BrowserWindow from '../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../src/window/BrowserWindow.js'; import Window from '../../src/window/Window.js'; import * as PropertySymbol from '../../src/PropertySymbol.js'; import SVGAngleTypeEnum from '../../src/svg/SVGAngleTypeEnum.js'; diff --git a/packages/happy-dom/test/svg/SVGAnimatedAngle.test.ts b/packages/happy-dom/test/svg/SVGAnimatedAngle.test.ts index fb49af8d2..10314ca0c 100644 --- a/packages/happy-dom/test/svg/SVGAnimatedAngle.test.ts +++ b/packages/happy-dom/test/svg/SVGAnimatedAngle.test.ts @@ -1,6 +1,6 @@ import { beforeEach, describe, it, expect } from 'vitest'; import SVGAngle from '../../src/svg/SVGAngle.js'; -import BrowserWindow from '../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../src/window/BrowserWindow.js'; import Window from '../../src/window/Window.js'; import * as PropertySymbol from '../../src/PropertySymbol.js'; import SVGAngleTypeEnum from '../../src/svg/SVGAngleTypeEnum.js'; diff --git a/packages/happy-dom/test/svg/SVGAnimatedBoolean.test.ts b/packages/happy-dom/test/svg/SVGAnimatedBoolean.test.ts index 8aa31bf1c..9a358b25c 100644 --- a/packages/happy-dom/test/svg/SVGAnimatedBoolean.test.ts +++ b/packages/happy-dom/test/svg/SVGAnimatedBoolean.test.ts @@ -1,5 +1,5 @@ import { beforeEach, describe, it, expect } from 'vitest'; -import BrowserWindow from '../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../src/window/BrowserWindow.js'; import Window from '../../src/window/Window.js'; import * as PropertySymbol from '../../src/PropertySymbol.js'; import SVGAnimatedBoolean from '../../src/svg/SVGAnimatedBoolean.js'; diff --git a/packages/happy-dom/test/svg/SVGAnimatedEnumeration.test.ts b/packages/happy-dom/test/svg/SVGAnimatedEnumeration.test.ts index fb3d1132a..ee9e8ff6f 100644 --- a/packages/happy-dom/test/svg/SVGAnimatedEnumeration.test.ts +++ b/packages/happy-dom/test/svg/SVGAnimatedEnumeration.test.ts @@ -1,5 +1,5 @@ import { beforeEach, describe, it, expect } from 'vitest'; -import BrowserWindow from '../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../src/window/BrowserWindow.js'; import Window from '../../src/window/Window.js'; import * as PropertySymbol from '../../src/PropertySymbol.js'; import SVGAnimatedEnumeration from '../../src/svg/SVGAnimatedEnumeration.js'; diff --git a/packages/happy-dom/test/svg/SVGAnimatedInteger.test.ts b/packages/happy-dom/test/svg/SVGAnimatedInteger.test.ts index 9b7b21a62..cf22ff701 100644 --- a/packages/happy-dom/test/svg/SVGAnimatedInteger.test.ts +++ b/packages/happy-dom/test/svg/SVGAnimatedInteger.test.ts @@ -1,5 +1,5 @@ import { beforeEach, describe, it, expect } from 'vitest'; -import BrowserWindow from '../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../src/window/BrowserWindow.js'; import Window from '../../src/window/Window.js'; import * as PropertySymbol from '../../src/PropertySymbol.js'; import SVGAnimatedInteger from '../../src/svg/SVGAnimatedInteger.js'; diff --git a/packages/happy-dom/test/svg/SVGAnimatedLength.test.ts b/packages/happy-dom/test/svg/SVGAnimatedLength.test.ts index 593456383..95e2125a1 100644 --- a/packages/happy-dom/test/svg/SVGAnimatedLength.test.ts +++ b/packages/happy-dom/test/svg/SVGAnimatedLength.test.ts @@ -1,5 +1,5 @@ import { beforeEach, describe, it, expect } from 'vitest'; -import BrowserWindow from '../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../src/window/BrowserWindow.js'; import Window from '../../src/window/Window.js'; import * as PropertySymbol from '../../src/PropertySymbol.js'; import SVGAnimatedLength from '../../src/svg/SVGAnimatedLength.js'; diff --git a/packages/happy-dom/test/svg/SVGAnimatedLengthList.test.ts b/packages/happy-dom/test/svg/SVGAnimatedLengthList.test.ts index 47ef81623..499ce46cd 100644 --- a/packages/happy-dom/test/svg/SVGAnimatedLengthList.test.ts +++ b/packages/happy-dom/test/svg/SVGAnimatedLengthList.test.ts @@ -1,5 +1,5 @@ import { beforeEach, describe, it, expect } from 'vitest'; -import BrowserWindow from '../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../src/window/BrowserWindow.js'; import Window from '../../src/window/Window.js'; import * as PropertySymbol from '../../src/PropertySymbol.js'; import SVGAnimatedLengthList from '../../src/svg/SVGAnimatedLengthList.js'; diff --git a/packages/happy-dom/test/svg/SVGAnimatedNumber.test.ts b/packages/happy-dom/test/svg/SVGAnimatedNumber.test.ts index b4e15106c..9684b2584 100644 --- a/packages/happy-dom/test/svg/SVGAnimatedNumber.test.ts +++ b/packages/happy-dom/test/svg/SVGAnimatedNumber.test.ts @@ -1,5 +1,5 @@ import { beforeEach, describe, it, expect } from 'vitest'; -import BrowserWindow from '../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../src/window/BrowserWindow.js'; import Window from '../../src/window/Window.js'; import * as PropertySymbol from '../../src/PropertySymbol.js'; import SVGAnimatedNumber from '../../src/svg/SVGAnimatedNumber.js'; diff --git a/packages/happy-dom/test/svg/SVGAnimatedNumberList.test.ts b/packages/happy-dom/test/svg/SVGAnimatedNumberList.test.ts index 2f97a37e8..a5d2c0660 100644 --- a/packages/happy-dom/test/svg/SVGAnimatedNumberList.test.ts +++ b/packages/happy-dom/test/svg/SVGAnimatedNumberList.test.ts @@ -1,5 +1,5 @@ import { beforeEach, describe, it, expect } from 'vitest'; -import BrowserWindow from '../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../src/window/BrowserWindow.js'; import Window from '../../src/window/Window.js'; import * as PropertySymbol from '../../src/PropertySymbol.js'; import SVGAnimatedNumberList from '../../src/svg/SVGAnimatedNumberList.js'; diff --git a/packages/happy-dom/test/svg/SVGAnimatedPreserveAspectRatio.test.ts b/packages/happy-dom/test/svg/SVGAnimatedPreserveAspectRatio.test.ts index f79bcdcc5..5390e8b69 100644 --- a/packages/happy-dom/test/svg/SVGAnimatedPreserveAspectRatio.test.ts +++ b/packages/happy-dom/test/svg/SVGAnimatedPreserveAspectRatio.test.ts @@ -1,5 +1,5 @@ import { beforeEach, describe, it, expect } from 'vitest'; -import BrowserWindow from '../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../src/window/BrowserWindow.js'; import Window from '../../src/window/Window.js'; import * as PropertySymbol from '../../src/PropertySymbol.js'; import SVGAnimatedPreserveAspectRatio from '../../src/svg/SVGAnimatedPreserveAspectRatio.js'; diff --git a/packages/happy-dom/test/svg/SVGAnimatedRect.test.ts b/packages/happy-dom/test/svg/SVGAnimatedRect.test.ts index 6a55f3cff..dd7f79b28 100644 --- a/packages/happy-dom/test/svg/SVGAnimatedRect.test.ts +++ b/packages/happy-dom/test/svg/SVGAnimatedRect.test.ts @@ -1,5 +1,5 @@ import { beforeEach, describe, it, expect } from 'vitest'; -import BrowserWindow from '../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../src/window/BrowserWindow.js'; import Window from '../../src/window/Window.js'; import * as PropertySymbol from '../../src/PropertySymbol.js'; import SVGAnimatedRect from '../../src/svg/SVGAnimatedRect.js'; diff --git a/packages/happy-dom/test/svg/SVGAnimatedString.test.ts b/packages/happy-dom/test/svg/SVGAnimatedString.test.ts index 734ea3b3a..3d947ecab 100644 --- a/packages/happy-dom/test/svg/SVGAnimatedString.test.ts +++ b/packages/happy-dom/test/svg/SVGAnimatedString.test.ts @@ -1,5 +1,5 @@ import { beforeEach, describe, it, expect } from 'vitest'; -import BrowserWindow from '../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../src/window/BrowserWindow.js'; import Window from '../../src/window/Window.js'; import * as PropertySymbol from '../../src/PropertySymbol.js'; import SVGAnimatedString from '../../src/svg/SVGAnimatedString.js'; diff --git a/packages/happy-dom/test/svg/SVGAnimatedTransformList.test.ts b/packages/happy-dom/test/svg/SVGAnimatedTransformList.test.ts index 3b2cacb2c..ba1518312 100644 --- a/packages/happy-dom/test/svg/SVGAnimatedTransformList.test.ts +++ b/packages/happy-dom/test/svg/SVGAnimatedTransformList.test.ts @@ -1,5 +1,5 @@ import { beforeEach, describe, it, expect } from 'vitest'; -import BrowserWindow from '../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../src/window/BrowserWindow.js'; import Window from '../../src/window/Window.js'; import * as PropertySymbol from '../../src/PropertySymbol.js'; import SVGAnimatedTransformList from '../../src/svg/SVGAnimatedTransformList.js'; diff --git a/packages/happy-dom/test/svg/SVGLength.test.ts b/packages/happy-dom/test/svg/SVGLength.test.ts index 4b5312a67..cbb38dd92 100644 --- a/packages/happy-dom/test/svg/SVGLength.test.ts +++ b/packages/happy-dom/test/svg/SVGLength.test.ts @@ -1,6 +1,6 @@ import { beforeEach, describe, it, expect } from 'vitest'; import SVGLength from '../../src/svg/SVGLength.js'; -import BrowserWindow from '../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../src/window/BrowserWindow.js'; import Window from '../../src/window/Window.js'; import * as PropertySymbol from '../../src/PropertySymbol.js'; import SVGLengthTypeEnum from '../../src/svg/SVGLengthTypeEnum.js'; diff --git a/packages/happy-dom/test/svg/SVGLengthList.test.ts b/packages/happy-dom/test/svg/SVGLengthList.test.ts index f2d378b39..c013d58a1 100644 --- a/packages/happy-dom/test/svg/SVGLengthList.test.ts +++ b/packages/happy-dom/test/svg/SVGLengthList.test.ts @@ -1,6 +1,6 @@ import { beforeEach, describe, it, expect } from 'vitest'; import SVGLength from '../../src/svg/SVGLength.js'; -import BrowserWindow from '../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../src/window/BrowserWindow.js'; import Window from '../../src/window/Window.js'; import * as PropertySymbol from '../../src/PropertySymbol.js'; import SVGLengthTypeEnum from '../../src/svg/SVGLengthTypeEnum.js'; diff --git a/packages/happy-dom/test/svg/SVGMatrix.test.ts b/packages/happy-dom/test/svg/SVGMatrix.test.ts index e70510d4a..bba39f72d 100644 --- a/packages/happy-dom/test/svg/SVGMatrix.test.ts +++ b/packages/happy-dom/test/svg/SVGMatrix.test.ts @@ -1,5 +1,5 @@ import { beforeEach, describe, it, expect } from 'vitest'; -import BrowserWindow from '../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../src/window/BrowserWindow.js'; import Window from '../../src/window/Window.js'; import * as PropertySymbol from '../../src/PropertySymbol.js'; import SVGMatrix from '../../src/svg/SVGMatrix.js'; diff --git a/packages/happy-dom/test/svg/SVGNumber.test.ts b/packages/happy-dom/test/svg/SVGNumber.test.ts index bfd30fc83..60b2e0e8c 100644 --- a/packages/happy-dom/test/svg/SVGNumber.test.ts +++ b/packages/happy-dom/test/svg/SVGNumber.test.ts @@ -1,5 +1,5 @@ import { beforeEach, describe, it, expect } from 'vitest'; -import BrowserWindow from '../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../src/window/BrowserWindow.js'; import Window from '../../src/window/Window.js'; import * as PropertySymbol from '../../src/PropertySymbol.js'; import SVGNumber from '../../src/svg/SVGNumber.js'; diff --git a/packages/happy-dom/test/svg/SVGNumberList.test.ts b/packages/happy-dom/test/svg/SVGNumberList.test.ts index 12d2de6f6..d116d1efb 100644 --- a/packages/happy-dom/test/svg/SVGNumberList.test.ts +++ b/packages/happy-dom/test/svg/SVGNumberList.test.ts @@ -1,6 +1,6 @@ import { beforeEach, describe, it, expect } from 'vitest'; import SVGNumber from '../../src/svg/SVGNumber.js'; -import BrowserWindow from '../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../src/window/BrowserWindow.js'; import Window from '../../src/window/Window.js'; import * as PropertySymbol from '../../src/PropertySymbol.js'; import SVGNumberList from '../../src/svg/SVGNumberList.js'; diff --git a/packages/happy-dom/test/svg/SVGPoint.test.ts b/packages/happy-dom/test/svg/SVGPoint.test.ts index 497d2fcd4..18c6132a2 100644 --- a/packages/happy-dom/test/svg/SVGPoint.test.ts +++ b/packages/happy-dom/test/svg/SVGPoint.test.ts @@ -1,5 +1,5 @@ import { beforeEach, describe, it, expect } from 'vitest'; -import BrowserWindow from '../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../src/window/BrowserWindow.js'; import Window from '../../src/window/Window.js'; import * as PropertySymbol from '../../src/PropertySymbol.js'; import SVGPoint from '../../src/svg/SVGPoint.js'; diff --git a/packages/happy-dom/test/svg/SVGPointList.test.ts b/packages/happy-dom/test/svg/SVGPointList.test.ts index a6030a630..97775cef2 100644 --- a/packages/happy-dom/test/svg/SVGPointList.test.ts +++ b/packages/happy-dom/test/svg/SVGPointList.test.ts @@ -1,6 +1,6 @@ import { beforeEach, describe, it, expect } from 'vitest'; import SVGPoint from '../../src/svg/SVGPoint.js'; -import BrowserWindow from '../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../src/window/BrowserWindow.js'; import Window from '../../src/window/Window.js'; import * as PropertySymbol from '../../src/PropertySymbol.js'; import SVGPointList from '../../src/svg/SVGPointList.js'; diff --git a/packages/happy-dom/test/svg/SVGPreserveAspectRatio.test.ts b/packages/happy-dom/test/svg/SVGPreserveAspectRatio.test.ts index 71628a8f9..9547875b8 100644 --- a/packages/happy-dom/test/svg/SVGPreserveAspectRatio.test.ts +++ b/packages/happy-dom/test/svg/SVGPreserveAspectRatio.test.ts @@ -1,5 +1,5 @@ import { beforeEach, describe, it, expect } from 'vitest'; -import BrowserWindow from '../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../src/window/BrowserWindow.js'; import Window from '../../src/window/Window.js'; import * as PropertySymbol from '../../src/PropertySymbol.js'; import SVGPreserveAspectRatio from '../../src/svg/SVGPreserveAspectRatio.js'; diff --git a/packages/happy-dom/test/svg/SVGRect.test.ts b/packages/happy-dom/test/svg/SVGRect.test.ts index 972e43146..87e27c01c 100644 --- a/packages/happy-dom/test/svg/SVGRect.test.ts +++ b/packages/happy-dom/test/svg/SVGRect.test.ts @@ -1,5 +1,5 @@ import { beforeEach, describe, it, expect } from 'vitest'; -import BrowserWindow from '../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../src/window/BrowserWindow.js'; import Window from '../../src/window/Window.js'; import * as PropertySymbol from '../../src/PropertySymbol.js'; import SVGRect from '../../src/svg/SVGRect.js'; diff --git a/packages/happy-dom/test/svg/SVGStringList.test.ts b/packages/happy-dom/test/svg/SVGStringList.test.ts index b88df7a59..ce0f30182 100644 --- a/packages/happy-dom/test/svg/SVGStringList.test.ts +++ b/packages/happy-dom/test/svg/SVGStringList.test.ts @@ -1,5 +1,5 @@ import { beforeEach, describe, it, expect } from 'vitest'; -import BrowserWindow from '../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../src/window/BrowserWindow.js'; import Window from '../../src/window/Window.js'; import * as PropertySymbol from '../../src/PropertySymbol.js'; import SVGStringList from '../../src/svg/SVGStringList.js'; diff --git a/packages/happy-dom/test/svg/SVGTransform.test.ts b/packages/happy-dom/test/svg/SVGTransform.test.ts index 58663947f..97f5de4a5 100644 --- a/packages/happy-dom/test/svg/SVGTransform.test.ts +++ b/packages/happy-dom/test/svg/SVGTransform.test.ts @@ -1,10 +1,10 @@ import { beforeEach, describe, it, expect } from 'vitest'; -import BrowserWindow from '../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../src/window/BrowserWindow.js'; import Window from '../../src/window/Window.js'; import * as PropertySymbol from '../../src/PropertySymbol.js'; import SVGTransform from '../../src/svg/SVGTransform.js'; import SVGTransformTypeEnum from '../../src/svg/SVGTransformTypeEnum.js'; -import SVGMatrix from '../../src/svg/SVGMatrix.js'; +import type SVGMatrix from '../../src/svg/SVGMatrix.js'; describe('SVGTransform', () => { let window: BrowserWindow; diff --git a/packages/happy-dom/test/svg/SVGTransformList.test.ts b/packages/happy-dom/test/svg/SVGTransformList.test.ts index 89c4ecc2f..c38b7ac9d 100644 --- a/packages/happy-dom/test/svg/SVGTransformList.test.ts +++ b/packages/happy-dom/test/svg/SVGTransformList.test.ts @@ -1,6 +1,6 @@ import { beforeEach, describe, it, expect } from 'vitest'; import SVGTransform from '../../src/svg/SVGTransform.js'; -import BrowserWindow from '../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../src/window/BrowserWindow.js'; import Window from '../../src/window/Window.js'; import * as PropertySymbol from '../../src/PropertySymbol.js'; import SVGTransformList from '../../src/svg/SVGTransformList.js'; diff --git a/packages/happy-dom/test/svg/SVGUnitTypes.test.ts b/packages/happy-dom/test/svg/SVGUnitTypes.test.ts index 23f6fcab4..760e1577a 100644 --- a/packages/happy-dom/test/svg/SVGUnitTypes.test.ts +++ b/packages/happy-dom/test/svg/SVGUnitTypes.test.ts @@ -1,5 +1,5 @@ import { beforeEach, describe, it, expect } from 'vitest'; -import BrowserWindow from '../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../src/window/BrowserWindow.js'; import Window from '../../src/window/Window.js'; import * as PropertySymbol from '../../src/PropertySymbol.js'; import SVGUnitTypes from '../../src/svg/SVGUnitTypes.js'; diff --git a/packages/happy-dom/test/tree-walker/NodeIterator.test.ts b/packages/happy-dom/test/tree-walker/NodeIterator.test.ts index 9619dea56..16c77840b 100644 --- a/packages/happy-dom/test/tree-walker/NodeIterator.test.ts +++ b/packages/happy-dom/test/tree-walker/NodeIterator.test.ts @@ -1,5 +1,5 @@ import Window from '../../src/window/Window.js'; -import Document from '../../src/nodes/document/Document.js'; +import type Document from '../../src/nodes/document/Document.js'; import NodeFilter from '../../src/tree-walker/NodeFilter.js'; import Element from '../../src/nodes/element/Element.js'; import Comment from '../../src/nodes/comment/Comment.js'; diff --git a/packages/happy-dom/test/tree-walker/TreeWalker.test.ts b/packages/happy-dom/test/tree-walker/TreeWalker.test.ts index 143a9c9f8..3b649780d 100644 --- a/packages/happy-dom/test/tree-walker/TreeWalker.test.ts +++ b/packages/happy-dom/test/tree-walker/TreeWalker.test.ts @@ -1,5 +1,5 @@ import Window from '../../src/window/Window.js'; -import Document from '../../src/nodes/document/Document.js'; +import type Document from '../../src/nodes/document/Document.js'; import NodeFilter from '../../src/tree-walker/NodeFilter.js'; import TreeWalker from '../../src/tree-walker/TreeWalker.js'; import Element from '../../src/nodes/element/Element.js'; diff --git a/packages/happy-dom/test/url/URL.test.ts b/packages/happy-dom/test/url/URL.test.ts index 036b71e12..abdc993f1 100644 --- a/packages/happy-dom/test/url/URL.test.ts +++ b/packages/happy-dom/test/url/URL.test.ts @@ -1,6 +1,6 @@ import URL from '../../src/url/URL.js'; import Blob from '../../src/file/Blob.js'; -import BrowserWindow from '../../src/window/BrowserWindow.js'; +import type BrowserWindow from '../../src/window/BrowserWindow.js'; import Window from '../../src/window/Window.js'; import { Blob as NodeJSBlob } from 'buffer'; import { beforeEach, describe, it, expect } from 'vitest'; diff --git a/packages/happy-dom/test/validity-state/ValidityState.test.ts b/packages/happy-dom/test/validity-state/ValidityState.test.ts index 34fd41ac5..8b38b8d1d 100644 --- a/packages/happy-dom/test/validity-state/ValidityState.test.ts +++ b/packages/happy-dom/test/validity-state/ValidityState.test.ts @@ -1,6 +1,6 @@ import Window from '../../src/window/Window.js'; -import Document from '../../src/nodes/document/Document.js'; -import HTMLInputElement from '../../src/nodes/html-input-element/HTMLInputElement.js'; +import type Document from '../../src/nodes/document/Document.js'; +import type HTMLInputElement from '../../src/nodes/html-input-element/HTMLInputElement.js'; import { beforeEach, describe, it, expect } from 'vitest'; describe('ValidityState', () => { diff --git a/packages/happy-dom/test/web-socket/WebSocket.test.ts b/packages/happy-dom/test/web-socket/WebSocket.test.ts index 706a1007e..7fc323ce6 100644 --- a/packages/happy-dom/test/web-socket/WebSocket.test.ts +++ b/packages/happy-dom/test/web-socket/WebSocket.test.ts @@ -1,9 +1,9 @@ import Window from '../../src/window/Window.js'; import { beforeEach, describe, it, vi, expect } from 'vitest'; -import Event from '../../src/event/Event.js'; +import type Event from '../../src/event/Event.js'; import * as PropertySymbol from '../../src/PropertySymbol.js'; -import MessageEvent from '../../src/event/events/MessageEvent.js'; -import CloseEvent from '../../src/event/events/CloseEvent.js'; +import type MessageEvent from '../../src/event/events/MessageEvent.js'; +import type CloseEvent from '../../src/event/events/CloseEvent.js'; import DOMExceptionNameEnum from '../../src/exception/DOMExceptionNameEnum.js'; vi.mock('ws', () => { diff --git a/packages/happy-dom/test/window/BrowserWindow.test.ts b/packages/happy-dom/test/window/BrowserWindow.test.ts index da42ba8fe..5793630bf 100644 --- a/packages/happy-dom/test/window/BrowserWindow.test.ts +++ b/packages/happy-dom/test/window/BrowserWindow.test.ts @@ -1,10 +1,10 @@ import CSSStyleDeclaration from '../../src/css/declaration/CSSStyleDeclaration.js'; import Document from '../../src/nodes/document/Document.js'; -import HTMLLinkElement from '../../src/nodes/html-link-element/HTMLLinkElement.js'; +import type HTMLLinkElement from '../../src/nodes/html-link-element/HTMLLinkElement.js'; import HTMLElement from '../../src/nodes/html-element/HTMLElement.js'; import ResourceFetch from '../../src/fetch/ResourceFetch.js'; -import HTMLScriptElement from '../../src/nodes/html-script-element/HTMLScriptElement.js'; -import Window from '../../src/window/Window.js'; +import type HTMLScriptElement from '../../src/nodes/html-script-element/HTMLScriptElement.js'; +import type Window from '../../src/window/Window.js'; import BrowserWindow from '../../src/window/BrowserWindow.js'; import Navigator from '../../src/navigator/Navigator.js'; import Headers from '../../src/fetch/Headers.js'; @@ -15,27 +15,27 @@ import CustomElement from '../CustomElement.js'; import Request from '../../src/fetch/Request.js'; import Response from '../../src/fetch/Response.js'; import Fetch from '../../src/fetch/Fetch.js'; -import MessageEvent from '../../src/event/events/MessageEvent.js'; -import Event from '../../src/event/Event.js'; -import ErrorEvent from '../../src/event/events/ErrorEvent.js'; +import type MessageEvent from '../../src/event/events/MessageEvent.js'; +import type Event from '../../src/event/Event.js'; +import type ErrorEvent from '../../src/event/events/ErrorEvent.js'; import { beforeEach, afterEach, describe, it, expect, vi } from 'vitest'; import Permissions from '../../src/permissions/Permissions.js'; import Clipboard from '../../src/clipboard/Clipboard.js'; import PackageVersion from '../../src/version.js'; -import HTMLDialogElement from '../../src/nodes/html-dialog-element/HTMLDialogElement.js'; +import type HTMLDialogElement from '../../src/nodes/html-dialog-element/HTMLDialogElement.js'; import Browser from '../../src/browser/Browser.js'; import CrossOriginBrowserWindow from '../../src/window/CrossOriginBrowserWindow.js'; import BrowserFrameFactory from '../../src/browser/utilities/BrowserFrameFactory.js'; -import IBrowser from '../../src/browser/types/IBrowser.js'; -import IBrowserFrame from '../../src/browser/types/IBrowserFrame.js'; -import IBrowserPage from '../../src/browser/types/IBrowserPage.js'; +import type IBrowser from '../../src/browser/types/IBrowser.js'; +import type IBrowserFrame from '../../src/browser/types/IBrowserFrame.js'; +import type IBrowserPage from '../../src/browser/types/IBrowserPage.js'; import AdoptedStyleSheetCustomElement from '../AdoptedStyleSheetCustomElement.js'; import CSSStyleSheet from '../../src/css/CSSStyleSheet.js'; import Location from '../../src/location/Location.js'; import HTMLElementConfig from '../../src/config/HTMLElementConfig.js'; import '../types.d.js'; -import EventTarget from '../../src/event/EventTarget.js'; +import type EventTarget from '../../src/event/EventTarget.js'; import EventPhaseEnum from '../../src/event/EventPhaseEnum.js'; import { PerformanceEntry, PerformanceObserver } from 'perf_hooks'; import { URLSearchParams } from 'url'; diff --git a/packages/happy-dom/test/window/DetachedWindowAPI.test.ts b/packages/happy-dom/test/window/DetachedWindowAPI.test.ts index 77ec7a600..4ba718215 100644 --- a/packages/happy-dom/test/window/DetachedWindowAPI.test.ts +++ b/packages/happy-dom/test/window/DetachedWindowAPI.test.ts @@ -1,8 +1,8 @@ import Window from '../../src/window/Window.js'; -import HTTP from 'http'; +import type HTTP from 'http'; import Stream from 'stream'; import { beforeEach, afterEach, describe, it, expect, vi } from 'vitest'; -import DetachedWindowAPI from '../../src/window/DetachedWindowAPI.js'; +import type DetachedWindowAPI from '../../src/window/DetachedWindowAPI.js'; import VirtualConsolePrinter from '../../src/console/VirtualConsolePrinter.js'; import DefaultBrowserSettings from '../../src/browser/DefaultBrowserSettings.js'; import '../types.d.js'; diff --git a/packages/happy-dom/test/window/Window.test.ts b/packages/happy-dom/test/window/Window.test.ts index 1cc8095a9..4c8166348 100644 --- a/packages/happy-dom/test/window/Window.test.ts +++ b/packages/happy-dom/test/window/Window.test.ts @@ -1,14 +1,14 @@ -import Document from '../../src/nodes/document/Document.js'; +import type Document from '../../src/nodes/document/Document.js'; import Window from '../../src/window/Window.js'; import Headers from '../../src/fetch/Headers.js'; import CustomElement from '../../test/CustomElement.js'; -import Response from '../../src/fetch/Response.js'; +import type Response from '../../src/fetch/Response.js'; import Fetch from '../../src/fetch/Fetch.js'; import { beforeEach, afterEach, describe, it, expect, vi } from 'vitest'; import VirtualConsole from '../../src/console/VirtualConsole.js'; import VirtualConsolePrinter from '../../src/console/VirtualConsolePrinter.js'; import PackageVersion from '../../src/version.js'; -import HTMLIFrameElement from '../../src/nodes/html-iframe-element/HTMLIFrameElement.js'; +import type HTMLIFrameElement from '../../src/nodes/html-iframe-element/HTMLIFrameElement.js'; import DetachedWindowAPI from '../../src/window/DetachedWindowAPI.js'; import '../types.d.js'; import BrowserErrorCaptureEnum from '../../src/browser/enums/BrowserErrorCaptureEnum.js'; diff --git a/packages/happy-dom/test/xml-http-request/XMLHttpRequest.test.ts b/packages/happy-dom/test/xml-http-request/XMLHttpRequest.test.ts index 6ad4ece0a..f8e7e9daf 100644 --- a/packages/happy-dom/test/xml-http-request/XMLHttpRequest.test.ts +++ b/packages/happy-dom/test/xml-http-request/XMLHttpRequest.test.ts @@ -1,16 +1,16 @@ -import XMLHttpRequest from '../../src/xml-http-request/XMLHttpRequest.js'; +import type XMLHttpRequest from '../../src/xml-http-request/XMLHttpRequest.js'; import Window from '../../src/window/Window.js'; import XMLHttpRequestReadyStateEnum from '../../src/xml-http-request/XMLHttpRequestReadyStateEnum.js'; import XMLHttpResponseTypeEnum from '../../src/xml-http-request/XMLHttpResponseTypeEnum.js'; -import ProgressEvent from '../../src/event/events/ProgressEvent.js'; +import type ProgressEvent from '../../src/event/events/ProgressEvent.js'; import Blob from '../../src/file/Blob.js'; -import Document from '../../src/nodes/document/Document.js'; +import type Document from '../../src/nodes/document/Document.js'; import type { IncomingMessage } from 'http'; import Stream from 'stream'; import { beforeEach, afterEach, describe, it, expect, vi } from 'vitest'; import SyncFetch from '../../src/fetch/SyncFetch.js'; -import Response from '../../src/fetch/Response.js'; -import ISyncResponse from '../../src/fetch/types/ISyncResponse.js'; +import type Response from '../../src/fetch/Response.js'; +import type ISyncResponse from '../../src/fetch/types/ISyncResponse.js'; import Fetch from '../../src/fetch/Fetch.js'; import Headers from '../../src/fetch/Headers.js'; import DOMException from '../../src/exception/DOMException.js'; diff --git a/packages/happy-dom/test/xml-parser/XMLParser.test.ts b/packages/happy-dom/test/xml-parser/XMLParser.test.ts index e3dbadb55..5fe3f9f90 100644 --- a/packages/happy-dom/test/xml-parser/XMLParser.test.ts +++ b/packages/happy-dom/test/xml-parser/XMLParser.test.ts @@ -1,15 +1,15 @@ import XMLParser from '../../src/xml-parser/XMLParser.js'; import Window from '../../src/window/Window.js'; -import Document from '../../src/nodes/document/Document.js'; -import HTMLElement from '../../src/nodes/html-element/HTMLElement.js'; +import type Document from '../../src/nodes/document/Document.js'; +import type HTMLElement from '../../src/nodes/html-element/HTMLElement.js'; import NamespaceURI from '../../src/config/NamespaceURI.js'; -import DocumentType from '../../src/nodes/document-type/DocumentType.js'; +import type DocumentType from '../../src/nodes/document-type/DocumentType.js'; import XMLSerializer from '../../src/xml-serializer/XMLSerializer.js'; import NodeTypeEnum from '../../src/nodes/node/NodeTypeEnum.js'; import { beforeEach, describe, it, expect } from 'vitest'; import CustomElement from '../CustomElement.js'; -import Element from '../../src/nodes/element/Element.js'; -import ProcessingInstruction from '../../src/nodes/processing-instruction/ProcessingInstruction.js'; +import type Element from '../../src/nodes/element/Element.js'; +import type ProcessingInstruction from '../../src/nodes/processing-instruction/ProcessingInstruction.js'; describe('XMLParser', () => { let window: Window; diff --git a/packages/happy-dom/test/xml-serializer/XMLSerializer.test.ts b/packages/happy-dom/test/xml-serializer/XMLSerializer.test.ts index d62c79d66..25a7306a9 100644 --- a/packages/happy-dom/test/xml-serializer/XMLSerializer.test.ts +++ b/packages/happy-dom/test/xml-serializer/XMLSerializer.test.ts @@ -1,11 +1,11 @@ import XMLSerializer from '../../src/xml-serializer/XMLSerializer.js'; import Window from '../../src/window/Window.js'; -import Document from '../../src/nodes/document/Document.js'; +import type Document from '../../src/nodes/document/Document.js'; import CustomElement from '../CustomElement.js'; import * as PropertySymbol from '../../src/PropertySymbol.js'; import { beforeEach, afterEach, describe, it, expect } from 'vitest'; import HTMLParser from '../../src/html-parser/HTMLParser.js'; -import DocumentType from '../../src/nodes/document-type/DocumentType.js'; +import type DocumentType from '../../src/nodes/document-type/DocumentType.js'; import NamespaceURI from '../../src/config/NamespaceURI.js'; import XMLParser from '../../src/xml-parser/XMLParser.js'; diff --git a/packages/happy-dom/tsconfig.json b/packages/happy-dom/tsconfig.json index 4bc0fa412..97e5a514e 100644 --- a/packages/happy-dom/tsconfig.json +++ b/packages/happy-dom/tsconfig.json @@ -13,29 +13,22 @@ "resolveJsonModule": true, "noUnusedLocals": true, "noUnusedParameters": true, - "noImplicitReturns": false, - "noImplicitAny" : true, - "removeComments": false, + "noImplicitReturns": false, + "noImplicitAny": true, + "removeComments": false, "preserveConstEnums": true, - "strict": true, + "strict": true, "sourceMap": true, "skipLibCheck": true, "baseUrl": ".", "composite": true, "incremental": true, - "tsBuildInfoFile": ".turbo/.tsbuildinfo", - "lib": [ - "ES2022" - ], - "types": [ - "node" - ] + "importsNotUsedAsValues": "remove", + "verbatimModuleSyntax": true, + "tsBuildInfoFile": ".turbo/.tsbuildinfo", + "lib": ["ES2022"], + "types": ["node"] }, - "include": [ - "@types/node", - "src" - ], - "exclude": [ - "@types/dom" - ] -} \ No newline at end of file + "include": ["@types/node", "src"], + "exclude": ["@types/dom"] +} From a2ae86aced19d56350554b3e3d8f10f21b7afbb6 Mon Sep 17 00:00:00 2001 From: David Ortner Date: Tue, 3 Feb 2026 00:32:13 +0100 Subject: [PATCH 2/3] chore: [#2055] Removes eslint rule --- .eslintrc.cjs | 7 ------- 1 file changed, 7 deletions(-) diff --git a/.eslintrc.cjs b/.eslintrc.cjs index 967e9acbc..807afbdf1 100644 --- a/.eslintrc.cjs +++ b/.eslintrc.cjs @@ -140,13 +140,6 @@ module.exports = { 'import/no-named-as-default': WARN, 'import/no-extraneous-dependencies': WARN, 'import/no-absolute-path': WARN, - 'import/no-cycle': [ - WARN, - { - maxDepth: 20, - ignoreExternal: true - } - ], '@typescript-eslint/consistent-type-imports': [ WARN, { From a2eab144c76d27aef9bc2e1c0b07b33e6a596d5d Mon Sep 17 00:00:00 2001 From: David Ortner Date: Tue, 3 Feb 2026 00:42:32 +0100 Subject: [PATCH 3/3] chore: [#2055] Fix build --- .github/workflows/pull_request.yml | 3 --- package.json | 2 +- turbo.json | 9 ++++++--- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/.github/workflows/pull_request.yml b/.github/workflows/pull_request.yml index 8e0275f22..37ab263a3 100644 --- a/.github/workflows/pull_request.yml +++ b/.github/workflows/pull_request.yml @@ -62,6 +62,3 @@ jobs: - name: Test run: npm run test - - - name: Test circular dependencies - run: npm run test:circular-dependencies diff --git a/package.json b/package.json index 35876c909..cbc3cc8de 100644 --- a/package.json +++ b/package.json @@ -13,7 +13,7 @@ "clean": "git clean -Xdfq", "lint": "eslint --max-warnings 0 --cache --cache-location ./.turbo/eslint.turbo .", "lint:fix": "eslint --max-warnings 0 --cache --cache-location ./.turbo/eslint.turbo --fix .", - "test": "DO_NOT_TRACK=1 turbo run test", + "test": "DO_NOT_TRACK=1 turbo run test && turbo run test:circular-dependencies", "test:watch": "DO_NOT_TRACK=1 turbo run test:watch --parallel", "prepare": "husky" }, diff --git a/turbo.json b/turbo.json index 8d466221f..174f091a3 100644 --- a/turbo.json +++ b/turbo.json @@ -20,8 +20,7 @@ "dependsOn": ["happy-dom#compile"] }, "happy-dom#test": { - "dependsOn": ["^compile"], - "inputs": ["vitest.config.ts", "package.json"], + "inputs": ["src/**", "test/**", "vitest.config.ts", "package.json"], "outputs": ["node_modules/vitest/**"] }, "global-registrator#test": { @@ -35,7 +34,11 @@ "dependsOn": ["happy-dom#compile", "^compile"] }, "test": { - "inputs": ["test/**"] + "inputs": ["src/**", "test/**"] + }, + "test:circular-dependencies": { + "dependsOn": ["^compile"], + "inputs": ["lib/**"] } } }