[NOTE: this has been temporarily rolled-back/undeployed as we investigate issues]
The team has wrapped up a large project that spanned months, but should mean more stability for you: the components are live in the admin, and will soak in the admin before we deploy to the CDN.
Additionally, the Polaris types package on npm has been updated to the latest, and includes a Custom Element Manifest that should enable tooling (such as IDE auto-complete) to be effective no matter the language you’re using.
Note: this thread is meant for providing updates on changes that have been made to the library; if you need support or help or want to report a bug with the update, please open a new Topic so that we can better help (and so that it’s easier for others to find in the future).
Changelog:
Checkbox
- Checkbox: add
aria-checked=“mixed”when in indeterminate state for correct screen reader announcement - Add onblur support for checkable elements
Chip
- Add
removableandonRemoveprops. Whenremovableis set, a dismiss button appears and firesonRemovewhen clicked.
ChoiceList
- Fixed ChoiceList selected radio buttons color
DatePicker
- DatePicker: no longer fires a second
input/changeevent when the samevalueis assigned back onto the element. This fixes doubleonChangehandlers and double navigation in controlled consumers; programmatic writes to a different value still fire events as before. - Fix DatePicker multi range selection hover states
- Add visual arrows for range selection in DatePicker
Menu
- Add color for disabled menu items
Modal
- Fixed Safari regressions related to Modal focus restoration and dialog initialization
- Fix mobile Modal footer being pushed off-screen when content changes dynamically after mount.
- Fixed Modal positioning in right to left direction
- Move Modal focus trap from Preact useEffect to aftershow chain for deterministic activation
- Fix Modal footer visibility on mobile
NumberField
- Add support for scientific notation on NumberField
Page
- Updated Page to allow for Menus with Sections to be rendered in secondaryActions slot when not rolled up
Popover
- Added
maxInlineSizesupport to Popover
Select
- Fix Select displaying empty text on initial HTML render by seeding selectedTextContent synchronously
- Fixed Select value getter breaking when the value contains double quotes by replacing CSS attribute selector interpolation with direct value comparison
TextArea
- Fixed vertical alignment issue with TextArea labels on mobile devices
Thumbnail
- Fixed Thumbnail border-radius mismatch on small-200 size variant
Tooltip
- Tooltip: remove explicit
aria-hidden=“false”when visible — only setaria-hidden=“true”when hidden
General / cross-cutting
- Optimize rendering and style adoption for certain sub-elements
- Reduce CSS bundle size by ~2.2% (7,306 bytes)
- Guard
console.warnagainst environments that intercept and JSON.stringify console arguments. The warn utility now catches serialization errors from non-standard console overrides and falls back to logging a CSS-selector-style ancestor path instead of the raw DOM element. - Updated Preact to fix issue when other Preact instances would see
events that are already stamped, so handlers would not fire correctly. - Fix queueMicrotask timing gap with rendering components’ shadow dom
- Fix commandFor activator flicker by syncing aria-expanded on click
- Fix bug where onkeyup handler was not being fired after close event is triggered
- Add Custom Elements Manifest (custom-elements.json) for Polaris web components using
@custom-elements-manifest/analyzervia the@shopify/polaris-typespackage

