Skip to content

feat: add svelte5 support with source-shipping packaging#18

Open
meherhowji wants to merge 3 commits into
developfrom
feat/svelte-5-support
Open

feat: add svelte5 support with source-shipping packaging#18
meherhowji wants to merge 3 commits into
developfrom
feat/svelte-5-support

Conversation

@meherhowji

@meherhowji meherhowji commented Jun 17, 2026

Copy link
Copy Markdown
Contributor

What this does

  • Ships the raw .svelte source instead of a prebuilt file, so the same package works on both Svelte 4 and 5
  • Fixes 4 Svelte 5 bugs that broke charts, including one where bind:chart wasn't ready in time, which broke the drill-down demo
  • Adds TypeScript types (index.d.ts)
  • Points all 33 Svelte 4 examples at the source
  • Adds examples-v5/: a Vite + Svelte 5 app with 7 sample charts
  • Bumps to v2.0.0, fixes the repo links and license to FusionCharts

Example fixes

  • Two demos (fetch from JSON/XML URL) were loading a sample file that no longer exists (404). Moved them to the live CDN and set up CORS so the fetch works.
  • Checked every chart in both apps in a real browser, all render, drill-down included
  • Dropped the renderAt prop everywhere, it never actually did anything (the wrapper renders into its own div), so it was just confusing
  • Used native Svelte 5 event syntax in the v5 samples (onclick instead of on:click)
  • Small cleanups: fixed a support link that pointed at someone's old fork, updated the footer copyright, and removed a stale version note in the FusionTime section

Security

  • No more Critical or High vulnerabilities anywhere in the repo. What I did:
    • Deleted a leftover root package-lock.json from the old build — it was flagging 3 High issues for packages we don't even use anymore
    • Bumped dompurify in the v5 example
    • Removed the unused serve dep from the v4 example and pinned uuid + http-proxy-middleware to safe versions
    • Started committing the v4 lockfile so the fixes stay put
  • The only things left are 6 medium warnings on svelte@4.2.20. That's the last Svelte 4 ever released and the fixes only exist in Svelte 5, so there's nothing to upgrade to. They're dev-only and never ship to anyone. If it matters, the answer is just to use Svelte 5, which this package now supports.

Heads up (breaking change)

  • The prebuilt index.js/index.mjs are gone. You now need a bundler that understands Svelte (basically any Svelte setup already does).

Still to do

  • Tidy up the folder structure to something more modern (proper examples, lib, etc.)

@meherhowji meherhowji force-pushed the feat/svelte-5-support branch from ad585ef to c597f57 Compare June 17, 2026 10:48
@meherhowji meherhowji assigned meherhowji and unassigned meherhowji Jun 17, 2026
@meherhowji meherhowji added the enhancement New feature or request label Jun 17, 2026
@meherhowji meherhowji self-assigned this Jun 17, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant