Releases: capricorn86/happy-dom
Releases · capricorn86/happy-dom
v14.2.1
👷♂️ Patch fixes
- Binds getters and setters on all Window classes (not only
GlobalWindow
), so that they will be available when callingObject.getOwnPropertyDescriptors()
- By @capricorn86 in task #1343- The reason for this change is that JSDOM and browsers has these properties as part of the Window instance and not the prototype
- Happy DOM will now behave correctly when overriding a property on Window with
spyOn(window, 'property')
orObject.defineProperty(window, 'property')
v14.2.0
🎨 Features
- Adds support for the pseudo selectors
:is()
and:where()
- By @capricorn86 in task #1333
v14.1.2
👷♂️ Patch fixes
- Fixes problem with properties defined as getters and setters not being registered globally by Vitest - By @capricorn86 in task #1339
- The problem occurred as Vitest is using
Object.getOwnPropertyDescriptors(window)
to read which properties to register globally, but getters and setters are defined on the prototype - To solve the problem,
GlobalWindow
now defines the properties on the instance when it is constructed
- The problem occurred as Vitest is using
v14.1.1
👷♂️ Patch fixes
- Changes
location
,history
,navigator
,screen
,sessionStorage
andlocalStorage
to be getters instead of properties onWindow
- By @capricorn86 in task #1336 - Adds setter for
Window.location
- By @capricorn86 in task #1336
v14.1.0
🎨 Features
- Adds support for the setting
handleDisabledFileLoadingAsSuccess
, that can be used for triggering a "load" event instead of an "error" event when file loading is disabled - By @capricorn86 in task #1334
v14.0.0
💣 Breaking Changes
- Removes unnecessary interfaces implemented by
Window
,Node
andElement
classes and by classes with a dependency to them - By @capricorn86 in task #1330- Interfaces was used to solve problems with circular dependencies (e.g.
Window
=>Document
=>Window
) - Newer versions of Typescript has solved this problem
- This release is only breaking if you are using the interfaces. Then you can import and use the class as type instead (e.g. use
HTMLElement
instead ofIHTMLElement
)
- Interfaces was used to solve problems with circular dependencies (e.g.
v13.10.1
👷♂️ Patch fixes
- Fixes bug where cloning a response without a body caused the error
TypeError: Cannot read properties of null (reading 'Symbol(nodeStream)')
to be thrown - By @capricorn86 in task #1325
v13.10.0
🎨 Features
- Adds support for the
Headers.getSetCookie()
- By @ushiboy and @capricorn86 in task #1315
v13.9.0
🎨 Features
- Adds support for
AbortSignal.throwIfAborted()
- By @capricorn86 in task #1255