Library:
- Update all dev dependencies to latest (vite 4->8, vitest 0.34->4,
typescript 5.2->6, @types/node 26, dts-bundle-generator 9, prettier 3.8)
- Replace deprecated @vitest/coverage-c8 with @vitest/coverage-v8
- Drop unused ts-node; add jsdom and a jsdom test environment
- ESM vite config, modern tsconfig (ES2020, Bundler resolution),
Rollup 4 asset-name handling so the CSS still emits as driver.css
Playground:
- Replace the 1,165-line index.html with playground/, a self-contained
Astro app that imports the library from source with HMR
- Each scenario is its own file under playground/src/examples grouped into
Highlight / Popover & Buttons / Tour / API, listed in a sidebar and run
on its own page; shared demo markup lives in Stage.astro
- All 41 original scenarios ported and type-checked against the library types
- Wire `pnpm dev` to the playground; document local development in the readme
This PR is related to adding scoped classNames into the driver-popover-item.
I temporary wrapped it in a React Component which handles this isolation in order to protect
from getting to the style css collision problem since the selectors are shared between all usages.
You can specifiy the className in the Driver instance options and at the popover options level. classNames of popover will
be merged with the general driver className if exist.