Compatibility record
Which browsers and frameworks support smart-mailto?
smart-mailto targets ES2020 and is automatically exercised in Chromium. Firefox, Safari, WebKit, iOS, and Android browsers are unverified, not claimed as supported.
Current test boundary
Browser coverage
The ES2020 build target describes emitted JavaScript syntax. It does not replace testing the browser APIs used by the picker.
| Environment | Status | What is covered | Evidence |
|---|---|---|---|
| Playwright Chromium | Automated | Core picker behavior plus React, Vue, and Svelte mount, open, cleanup, and remount paths. | CI workflowbrowser tests |
| Firefox | Not automated | No Firefox release or version is claimed yet. | Playwright projects |
| Safari / WebKit | Not automated | Desktop Safari and iOS Safari are not currently exercised in CI. | Playwright projects |
| Android browsers | Not automated | No Android browser or device matrix is currently exercised in CI. | Playwright projects |
Published packages
Framework version ranges
Peer ranges are the public compatibility contract. The automated host column names the exact dependency version currently installed in the browser smoke app.
| Package | Declared range | Automated host | Evidence |
|---|---|---|---|
| @smart-mailto/core | No framework peer | ES2020 build; picker exercised in Chromium | build targetmodal test |
| @smart-mailto/react | React 17+ | React 18.3.1 host in Chromium | peer rangehost versionbuild target |
| @smart-mailto/vue | Vue 3+ | Vue 3.5.40 host in Chromium | peer rangehost versionbuild target |
| @smart-mailto/svelte | Svelte 5+ | Svelte 5.56.8 host in Chromium | peer rangehost versionbuild target |
Runtime requirements
Browser APIs
Required APIs power the picker itself. Optional APIs have a fallback or disable one non-essential behavior when unavailable.
DOM events, Element.closest, Shadow DOM, and requestAnimationFrame
RequiredIntercepts mailto links and renders the isolated provider picker.
interceptormodalURL and URLSearchParams
RequiredParses mailto fields and builds provider compose URLs.
parserprovidersIntl.DateTimeFormat and navigator locale signals
OptionalImproves provider ordering; missing signals fall back to the default provider order.
geo signalswindow.open
RequiredOpens the selected webmail compose page after a visitor chooses a provider.
provider openClipboard API
OptionalUsed first for Copy address; a textarea copy fallback is included.
copy fallbacklocalStorage
OptionalRemembers a provider choice. Blocked storage disables only that preference.
storage fallback