| 1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- /**
- * Side-effect module: initializes JSDOM globals BEFORE any other imports.
- * Must be imported before @testing-library/preact to ensure `document` exists
- * when @testing-library/dom's `screen` is initialized at module load time.
- */
- import { JSDOM } from "jsdom";
- const jsdom = new JSDOM("<!DOCTYPE html><html><body></body></html>", {
- url: "http://localhost",
- pretendToBeVisual: true,
- });
- const win = jsdom.window;
- // deno-lint-ignore no-explicit-any
- (globalThis as any).document = win.document;
- // deno-lint-ignore no-explicit-any
- (globalThis as any).window = win;
- // deno-lint-ignore no-explicit-any
- (globalThis as any).navigator = win.navigator;
- // deno-lint-ignore no-explicit-any
- (globalThis as any).HTMLElement = win.HTMLElement;
- // deno-lint-ignore no-explicit-any
- (globalThis as any).HTMLInputElement = win.HTMLInputElement;
- // deno-lint-ignore no-explicit-any
- (globalThis as any).HTMLTextAreaElement = win.HTMLTextAreaElement;
- // deno-lint-ignore no-explicit-any
- (globalThis as any).HTMLButtonElement = win.HTMLButtonElement;
- // deno-lint-ignore no-explicit-any
- (globalThis as any).Event = win.Event;
- // deno-lint-ignore no-explicit-any
- (globalThis as any).CustomEvent = win.CustomEvent;
- // deno-lint-ignore no-explicit-any
- (globalThis as any).MouseEvent = win.MouseEvent;
- // deno-lint-ignore no-explicit-any
- (globalThis as any).InputEvent = win.InputEvent;
- // deno-lint-ignore no-explicit-any
- (globalThis as any).Node = win.Node;
- // deno-lint-ignore no-explicit-any
- (globalThis as any).requestAnimationFrame = win.requestAnimationFrame.bind(win);
- // deno-lint-ignore no-explicit-any
- (globalThis as any).cancelAnimationFrame = win.cancelAnimationFrame.bind(win);
- // deno-lint-ignore no-explicit-any
- (globalThis as any).MutationObserver = win.MutationObserver;
|