feat: replace MUI X Charts Pro with d3-sankey custom Sankey

Remove paid MUI dependency. Use d3-sankey (MIT, ~5KB) for layout
algorithm + custom SVG rendering. Same visual quality: smooth bezier
ribbon links, proper node spacing via sankeyJustify, label backgrounds,
hover dimming, exit nodes.
This commit is contained in:
Usman Baig
2026-03-12 22:17:16 +01:00
parent 281a9f237a
commit 54daf14c6a
3 changed files with 312 additions and 1088 deletions

View File

@@ -14,10 +14,6 @@
"dependencies": {
"@ciphera-net/ui": "^0.2.5",
"@ducanh2912/next-pwa": "^10.2.9",
"@emotion/react": "^11.14.0",
"@emotion/styled": "^11.14.1",
"@mui/material": "^7.3.9",
"@mui/x-charts-pro": "^8.27.5",
"@phosphor-icons/react": "^2.1.10",
"@simplewebauthn/browser": "^13.2.2",
"@stripe/react-stripe-js": "^5.6.0",
@@ -27,6 +23,7 @@
"class-variance-authority": "^0.7.1",
"cobe": "^0.6.5",
"country-flag-icons": "^1.6.4",
"d3-sankey": "^0.12.3",
"d3-scale": "^4.0.2",
"framer-motion": "^12.23.26",
"html-to-image": "^1.11.13",
@@ -55,6 +52,7 @@
"@tailwindcss/typography": "^0.5.19",
"@testing-library/jest-dom": "^6.9.1",
"@testing-library/react": "^16.3.2",
"@types/d3-sankey": "^0.12.5",
"@types/d3-scale": "^4.0.9",
"@types/node": "^20.14.12",
"@types/react": "^19.2.14",