WORK-098
ID:WORK-098Status:ready

Vite plugin — behavior init helper export

Export a thin initBehaviors() wrapper from @refrakt-md/vite/behaviors that frameworks can call after navigation to re-initialize interactive rune behaviors (accordion, tabs, datatable, etc.).

Priority:lowComplexity:trivialMilestone:v1.0.0Source:SPEC-031

Acceptance Criteria

  • @refrakt-md/vite/behaviors export path works (package.json exports field)
  • initBehaviors(root?: Element) wraps initRuneBehaviors() from @refrakt-md/behaviors
  • Works in SPA re-navigation (SvelteKit afterNavigate, Vue onMounted/watch)
  • MPA frameworks (Astro) don't need it — behaviors self-init on page load
  • @refrakt-md/behaviors is a dependency of @refrakt-md/vite
  • TypeScript types exported for the helper

Approach

  1. Add src/behaviors.ts — thin wrapper around initRuneBehaviors()
  2. Add ./behaviors subpath export in package.json exports field
  3. Document usage patterns for SvelteKit, Vue/Nuxt, and Astro in JSDoc

Dependencies

References

History

  1. 59ded4a
    Content edited
  2. f262d7b
    source+SPEC-031
  3. 027eaee
    Created (ready, low, trivial, vite, behaviors, v1.0.0)