- π BUGFIX: Improve compatibility with jsdom and happydom -- #291
- π INTERNAL: Upgrade dependencies
- π BUGFIX: Allow dot notation in
layerNameoption -- #286 - π INTERNAL: Upgrade dependencies
- π NEW: Add
layerNameoption (see documentation) -- #283 - π DOCS: Document
:whereselector option -- #276 - π INTERNAL: Pin node for Playwright support -- #284
- π INTERNAL: Upgrade dependencies
- π BUGFIX: Respect
defaultPreventedinpopovertargetclick handler -- #251 - π DOCS: Add position notes -- #252
- π DOCS: Add example for
backdrop-- #247 - π DOCS: Document browser support -- #250
- π INTERNAL: Upgrade dependencies
- π NEW: Support for
popover=hint-- #240 - π NEW: Support object options syntax for
togglePopoverandshowPopover-- #243 - π NEW: Return showing status from
togglePopoverby @jamesnw -- #246 - π DOCS: Clean up styles for older browsers -- #236
- π INTERNAL: Upgrade dependencies
- π DOCS: Add favicon, sponsor text, and new demo page URL -- #230
- π INTERNAL: Upgrade dependencies
- π BUGFIX: Fix setting
el.popover = null-- #229 - π INTERNAL: Upgrade dependencies
- π₯ BREAKING:
mainentry point (used byrequire("@oddbird/popover-polyfill")) now points to the default build, which automatically applies the polyfill -- #223 - π NEW: Add CommonJS build -- #223
- π INTERNAL: Upgrade dependencies
- π BUGFIX: Add support for slotting elements into popovers -- #215
- π DOCS: Expand and style the demo page -- #187
- π INTERNAL: Add issue templates, Code of Conduct, and Security policies -- #206 and #207
- π INTERNAL: Upgrade dependencies
- π BUGFIX: Check for
windowbefore applying polyfill -- #201 - π BUGFIX: Expose
injectStylesfunction -- #200
- π BUGFIX: Fix support for
dialogpopovers -- #199 - π INTERNAL: Upgrade dependencies
- π NEW: Add
isPolyfilledmethod to check if polyfill is applied -- #193 - π BUGFIX: Support environments (e.g. SSR) that don't have
window-- #194 - π BUGFIX: Support nested popovers inside shadow DOM -- #190
- π DOCS: Add note about FOUC workarounds -- #182
- π INTERNAL: Switch to Dependabot for dependency updates
- π INTERNAL: Upgrade dependencies
- π NEW: Add support for CSS cascade layers -- #178
- π BUGFIX: Ensure click events correctly cross out of shadow DOM -- #177
- π INTERNAL: Upgrade dependencies
- π BUGFIX: Allow synthetic click events to target popovers -- #170
- π INTERNAL: Upgrade dependencies
- π BUGFIX: Fix crash in Firefox with shadowed popovers -- #160
- π DOCS: Add better ESM use examples -- #161
- π INTERNAL: Upgrade dependencies
- π BUGFIX: Fix incorrect
isFocusableresult forShadowRoot-- #155 - π NEW: Prepend default styles to lower specificity in the cascade -- #156
- π NEW: Wrap styles in
:where()to lower specificity in the cascade -- #153
- π 98DD BUGFIX: Check slotted content for autofocus delegate -- #150
- π INTERNAL: Upgrade dependencies
- π NEW: Update TypeScript definitions to be compatible with v5 -- #146
- π INTERNAL: Upgrade dependencies
- π BUGFIX: Assign to
adoptedStyleSheetsrather than usingpush-- #141 - π INTERNAL: Upgrade dependencies
- π₯ BREAKING: Automatically inject styles from JS -- #137
- π INTERNAL: Upgrade dependencies
- π₯ BREAKING: Drop
:openstyles -- #128 - π DOCS: Fix link in README -- #108
- π INTERNAL: Upgrade dependencies
- π NEW: Add support for older browsers, e.g. Firefox 91, Chrome ~80 -- #103
- π BUGFIX: Do not error if
querySelectorAPIs are invoked withnullorundefined-- #105 - π INTERNAL: Upgrade dependencies
- π BUGFIX: Fix infinite loop for removed popovers -- #99
- π BUGFIX: Expose CSS entry point as
@oddbird/popover-polyfill/cssand@oddbird/popover-polyfill/dist/popover.css - π INTERNAL: Upgrade dependencies
- π NEW: Support for
:popover-openpseudo selector, including a polyfill for JavaScript API methods (querySelector,querySelectorAll,matches, andclosest) -- #84 - π BUGFIX: Return
nullfor disconnected elements -- #90 - π INTERNAL: Upgrade dependencies
- π BUGFIX: Fix regression when targets have nested elements -- #88
- π DOCS: Add demo site: https://popover.oddbird.net/
- π₯ BREAKING: Drop support for
popovertoggletarget,popovershowtargetandpopoverhidetarget. These are nowpopovertargetandpopovertargetaction. - π₯ BREAKING: Invalid popover attribute values now default to manual, meaning
popover=invalidis, in fact, a valid popover. - The old
BeforeToggleEventhas been replaced withToggleEventwhich has a type of'beforetoggle'or'toggle', and the oldcurrentStateis nowoldState.newStateremains the same. - π INTERNAL: Upgrade dependencies
- π NEW: Add support for Escape to dismiss auto popovers -- #82
- π NEW: Showing an
autopopover closes otherautopopovers -- #83 - π NEW: Add support for focus restoration on popover close -- #81
- π INTERNAL: Upgrade dependencies
- π NEW: Add support for
aria-expandedon invokers -- #77 - π INTERNAL: Upgrade dependencies
- π NEW: Add support for JavaScript (IDL) reflections (e.g.
popoverToggleTargetElement) -- #70 - π INTERNAL: Upgrade dependencies
- π NEW: Add support for new
beforetoggleevent -- #68 - π INTERNAL: Upgrade dependencies
- π BUGFIX: Fix display issue with native popups -- #64
- π BUGFIX: Remove
stopPropagationto allow handlers -- #63 - π INTERNAL: Upgrade dependencies
- π NEW: Update CSS to align closer to Chrome's user-agent CSS -- #60
- π INTERNAL: Upgrade dependencies
- π NEW: Support popovers in shadow roots -- #49
- π NEW: Use system text and background colors -- #55, #56
- π DOCS: Include CSS in CDN section -- #52
- π INTERNAL: Upgrade dependencies
- π BUGFIX: Fix event handling of buttons -- #40
- π INTERNAL: Upgrade dependencies
- π₯ BREAKING: Drop support for
hintanddefaultopen - π DOCS: Improve documentation
- π INTERNAL: Rename popup to popover
- π INTERNAL: Upgrade dependencies
- π DOCS: Fix links in documentation
- π Initial release