unstale

npm / driver.js

driver.js

What changed in driver.js 1, from its official release notes, upgrade guides and advisories. Sources checked 2026-10-18.

5 breaking21 new APIs and options1 performance5 behavior and defaults17 fixes and other

See which of these apply to your code, ranked, in your agent:

npx @unstale/cli init

@unstale/cli 0.1.1 on npm

driver.js 149 changes

Breaking changes 5

  • Starting a tour or highlight closes any other active instance; that instance gets onDeselected and onDestroyed, but not onDestroyStarted.

    1.9.0release notes

  • Custom popover footer buttons are no longer auto styled; style them using this selector.

    1.6.0release notes

  • Drops the CSS selector for broader browser compatibility.

    1.6.0release notes

  • Unicode characters have been removed from buttons.

    1.5.0release notes

  • Button text-shadow ghost text has been removed.

    1.5.0release notes

New APIs and options 21

  • Adds launcher: false to disable the floating checklist launcher.

    1.10.1release notes

  • Added support for checklists.

    1.10.0release notes

  • A new reason option on destroy hooks distinguishes between destroy reasons.

    1.10.0release notes

  • Adds a driver- and step-level option to set the close button’s aria-label for translated tours; defaults to Close.

    1.9.0release notes

  • Adds the none behavior to ignore overlay clicks while Escape and the close button still close the tour.

    1.9.0release notes

  • Adds a driver- and step-level option to advance the tour by clicking the highlighted element.

    1.8.0release notes

  • Adds pulsing beacons that open a popover on click; the overlay is optional and the page stays interactive.

    1.8.0release notes

  • Adds a driver- and step-level option to wait up to N ms for a step's element before treating it as missing.

    1.8.0release notes

  • Set this CSS variable to choose the popover font.

    1.7.0release notes

  • Hook options now include index.

    1.7.0release notes

  • Popover titles and descriptions now render in the default font stack; set --driver-popover-font-family to use a custom font.

    1.7.0release notes

  • Add this option to skip a step when its target element is missing.

    1.7.0release notes

  • Adds a config option to lock body scroll while a tour is active.

    1.6.0release notes

  • Adds a config option to control how long the highlight transition takes.

    1.6.0release notes

  • Adds a step property for passing arbitrary data, accessible from hooks for custom per-step logic.

    1.6.0release notes

  • The popover exposes alignment-specific classes according to the rendered alignment.

    1.6.0release notes

  • The popover exposes side-specific classes according to the rendered side.

    1.6.0release notes

  • Adds a hook that fires when the done button on the final step is clicked.

    1.6.0release notes

  • The next button now has the done-btn class, allowing developers to target it with styling.

    1.5.0release notes

  • The driver API now includes getNextStep.

    1.5.0release notes

  • overlayClickBehavior now supports callbacks.

    1.4.0release notes

Performance 1

  • Adds a package.json field for better tree-shaking.

    1.8.0release notes

Behavior and default changes 5

  • Arrow keys do nothing when their popover button is hidden or disabled, and Escape does nothing when the close button is disabled.

    1.9.0release notes

  • Now fires when moving between two steps on the same element or between two steps without an element.

    1.9.0release notes

  • When steps are skipped, the last reachable step now shows Done and runs onDoneClick; step queries such as isLastStep() account for skips.

    1.8.0release notes

  • Each driver() call now keeps its own config, steps, and state.

    1.7.0release notes

  • The onDestroyed hook now receives the final state.

    1.5.0release notes

Fixes and other changes 17

  • Hints and popovers now work with the dialog element.

    1.10.1release notes

  • Clicking a popover no longer throws when the event target is a text node.

    1.10.1release notes

  • The close button only darkens for keyboard focus, so it no longer opens dark after a tour is started with a mouse click.

    1.10.0release notes

  • Calling destroy() on an inactive instance is now a no-op instead of tearing down another instance's tour.

    1.9.0release notes

  • The driver-level setting now applies to tour steps; a step's own setting still replaces it.

    1.9.0release notes

  • The highlighted element's aria-controls, aria-expanded and aria-haspopup are restored when the highlight moves on or the tour ends, instead of being removed.

    1.9.0release notes

  • Fixes a small white square appearing between steps without an element.

    1.9.0release notes

  • The current popover is hidden while waiting for the next step's element, preventing a stale step from staying on screen.

    1.9.0release notes

  • Icon fonts inside a step description are no longer overridden.

    1.7.0release notes

  • The popover no longer jumps when images in its content load after render.

    1.7.0release notes

  • Arrow positioning has been fixed.

    1.6.0release notes

  • The close button on a single-element highlight() popover now closes it by default, respecting allowClose and any custom onCloseClick.

    1.6.0release notes

  • Positioned highlighted elements and their children, such as dropdown menus, no longer get clipped.

    1.6.0release notes

  • Fixes a document event listener leak that left handlers attached after the tour was destroyed.

    1.6.0release notes

  • Fixes a removeChild DOMException when re-rendering a popover whose wrapper was already detached from the DOM.

    1.6.0release notes

  • The onNextClick callback now fires when overlay nextStep is used.

    1.5.0release notes

  • Pressing arrow-left at step 1 now keeps the tour open.

    1.5.0release notes