From 25d86d5d3c2c3c05649478162348b63bae80981a Mon Sep 17 00:00:00 2001
From: Davis SHYAKA <87414827+davis-shyaka@users.noreply.github.com>
Date: Wed, 25 Sep 2024 13:39:47 +0200
Subject: [PATCH 01/27] feat: Charts
---
pnpm-lock.yaml | 286 +++++++++++++++++-
sites/docs/package.json | 4 +
.../lib/components/docs/announcement.svelte | 23 +-
.../lib/components/docs/chart-display.svelte | 25 ++
.../src/lib/components/docs/charts-nav.svelte | 62 ++++
sites/docs/src/lib/components/docs/index.ts | 2 +
.../lib/components/docs/nav/main-nav.svelte | 33 +-
.../page-header/page-header-actions.svelte | 10 +-
.../page-header-description.svelte | 13 +-
.../page-header/page-header-heading.svelte | 9 +-
.../docs/page-header/page-header.svelte | 9 +-
sites/docs/src/lib/config/docs.ts | 12 +-
.../block/charts/chart-area-axes.svelte | 93 ++++++
.../block/charts/chart-area-default.svelte | 84 +++++
.../block/charts/chart-area-gradient.svelte | 0
.../block/charts/chart-area-icons.svelte | 95 ++++++
.../charts/chart-area-interactive.svelte | 0
.../block/charts/chart-area-legend.svelte | 0
.../block/charts/chart-area-linear.svelte | 79 +++++
.../charts/chart-area-stacked-expand.svelte | 0
.../block/charts/chart-area-stacked.svelte | 93 ++++++
.../block/charts/chart-area-step.svelte | 81 +++++
.../block/charts/chart-bar-multiple.svelte | 78 +++++
.../block/charts/chart-pie-donut-text.svelte | 0
.../registry/new-york/block/charts/index.ts | 14 +
.../new-york/ui/chart/chart-container.svelte | 31 ++
.../new-york/ui/chart/chart-legend.svelte | 0
.../new-york/ui/chart/chart-tooltip.svelte | 83 +++++
.../lib/registry/new-york/ui/chart/index.ts | 56 ++++
.../src/routes/(app)/charts/+layout.svelte | 22 ++
.../docs/src/routes/(app)/charts/+page.svelte | 68 +++++
.../docs/src/routes/(app)/colors/+page.svelte | 2 +-
.../docs/src/routes/(app)/themes/+page.svelte | 2 +-
sites/docs/src/styles/globals.css | 12 +
34 files changed, 1323 insertions(+), 58 deletions(-)
create mode 100644 sites/docs/src/lib/components/docs/chart-display.svelte
create mode 100644 sites/docs/src/lib/components/docs/charts-nav.svelte
create mode 100644 sites/docs/src/lib/registry/new-york/block/charts/chart-area-axes.svelte
create mode 100644 sites/docs/src/lib/registry/new-york/block/charts/chart-area-default.svelte
create mode 100644 sites/docs/src/lib/registry/new-york/block/charts/chart-area-gradient.svelte
create mode 100644 sites/docs/src/lib/registry/new-york/block/charts/chart-area-icons.svelte
create mode 100644 sites/docs/src/lib/registry/new-york/block/charts/chart-area-interactive.svelte
create mode 100644 sites/docs/src/lib/registry/new-york/block/charts/chart-area-legend.svelte
create mode 100644 sites/docs/src/lib/registry/new-york/block/charts/chart-area-linear.svelte
create mode 100644 sites/docs/src/lib/registry/new-york/block/charts/chart-area-stacked-expand.svelte
create mode 100644 sites/docs/src/lib/registry/new-york/block/charts/chart-area-stacked.svelte
create mode 100644 sites/docs/src/lib/registry/new-york/block/charts/chart-area-step.svelte
create mode 100644 sites/docs/src/lib/registry/new-york/block/charts/chart-bar-multiple.svelte
create mode 100644 sites/docs/src/lib/registry/new-york/block/charts/chart-pie-donut-text.svelte
create mode 100644 sites/docs/src/lib/registry/new-york/block/charts/index.ts
create mode 100644 sites/docs/src/lib/registry/new-york/ui/chart/chart-container.svelte
create mode 100644 sites/docs/src/lib/registry/new-york/ui/chart/chart-legend.svelte
create mode 100644 sites/docs/src/lib/registry/new-york/ui/chart/chart-tooltip.svelte
create mode 100644 sites/docs/src/lib/registry/new-york/ui/chart/index.ts
create mode 100644 sites/docs/src/routes/(app)/charts/+layout.svelte
create mode 100644 sites/docs/src/routes/(app)/charts/+page.svelte
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 859c438b0..16ff91a41 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -215,6 +215,9 @@ importers:
'@internationalized/date':
specifier: ^3.5.2
version: 3.5.5
+ '@layerstack/utils':
+ specifier: ^0.0.4
+ version: 0.0.4
'@unovis/svelte':
specifier: 1.3.6-beta.1
version: 1.3.6-beta.1(@unovis/ts@1.3.6-beta.1)(svelte@4.2.18)
@@ -233,6 +236,9 @@ importers:
d3-scale:
specifier: ^4.0.2
version: 4.0.2
+ d3-shape:
+ specifier: ^3.2.0
+ version: 3.2.0
embla-carousel-autoplay:
specifier: 8.0.0-rc19
version: 8.0.0-rc19(embla-carousel@8.0.0-rc19)
@@ -242,6 +248,9 @@ importers:
formsnap:
specifier: ^0.5.1
version: 0.5.1(svelte@4.2.18)(sveltekit-superforms@2.16.1(@sveltejs/kit@2.5.20(@sveltejs/vite-plugin-svelte@3.1.1(svelte@4.2.18)(vite@5.3.5(@types/node@18.19.43)))(svelte@4.2.18)(vite@5.3.5(@types/node@18.19.43)))(svelte@4.2.18))
+ layerchart:
+ specifier: ^0.51.2
+ version: 0.51.2(svelte@4.2.18)(typescript@5.5.4)
lucide-svelte:
specifier: ^0.363.0
version: 0.363.0(svelte@4.2.18)
@@ -300,6 +309,9 @@ importers:
'@types/d3-scale':
specifier: ^4.0.8
version: 4.0.8
+ '@types/d3-shape':
+ specifier: ^3.1.6
+ version: 3.1.6
'@types/hast':
specifier: ^3.0.4
version: 3.0.4
@@ -1378,6 +1390,18 @@ packages:
'@juggle/resize-observer@3.4.0':
resolution: {integrity: sha512-dfLbk+PwWvFzSxwk3n5ySL0hfBog779o8h68wK/7/APo/7cgyWp5jcXockbxdk5kFRkbeXWm4Fbi9FrdN381sA==}
+ '@layerstack/svelte-actions@0.0.4':
+ resolution: {integrity: sha512-tC6+KfqU0t/ugj222sPljb9qkmIpZljaXh2YVKKhsyHGmTS5FRSinr3GFOONOJbQxCQjA7XhIgcSGkFHypaJig==}
+
+ '@layerstack/svelte-stores@0.0.4':
+ resolution: {integrity: sha512-pO5N+5XtSlGn1a7BhNgQJj/KQQ6IEYZImlGZbIboKJ5nlnvHpSywwqJaUvzPP7yRNGQQEDje/mnIm0m1Rbxrwg==}
+
+ '@layerstack/tailwind@0.0.6':
+ resolution: {integrity: sha512-gmBwg3JYddylrodNd6Y4cz0xT/3HVWKsu/QEi5u2fps7hCsYMuI/gr3sil/zDCeuUXm2OOxerWosRBYfX7YqWA==}
+
+ '@layerstack/utils@0.0.4':
+ resolution: {integrity: sha512-EjN9SoJlOo9GAX0KMy+3D3Tpw63n46owHwmo1vK4niZFpQA0gdoDfwHTw6yVkxe71mcHDKKyV62Yc/buezWXwg==}
+
'@manypkg/find-root@1.1.0':
resolution: {integrity: sha512-mki5uBvhHzO8kYYix/WRy2WX8S3B5wdVSc9D6KcU5lQNglP2yt58/VfLuAK49glRXChosY8ap2oJ1qgma3GUVA==}
@@ -2121,6 +2145,9 @@ packages:
arktype@2.0.0-beta.0:
resolution: {integrity: sha512-fE3ssMiXjr/bLqFPzlDhRlXngdyHQreu7p7i8+dtcY1CA+f8WrVUcue6JxywhnqEJXPG4HOcIwQcC+q4VfeUMQ==}
+ array-source@0.0.4:
+ resolution: {integrity: sha512-frNdc+zBn80vipY+GdcJkLEbMWj3xmzArYApmUGxoiV8uAu/ygcs9icPdsGdA26h0MkHUMW6EN2piIvVx+M5Mw==}
+
array-union@2.1.0:
resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==}
engines: {node: '>=8'}
@@ -2404,6 +2431,10 @@ packages:
csstype@3.1.3:
resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==}
+ culori@4.0.1:
+ resolution: {integrity: sha512-LSnjA6HuIUOlkfKVbzi2OlToZE8OjFi667JWN9qNymXVXzGDmvuP60SSgC+e92sd7B7158f7Fy3Mb6rXS5EDPw==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+
d3-array@2.12.1:
resolution: {integrity: sha512-B0ErZK/66mHtEsR1TkPEEkwdy+WDesimkM5gpZr5Dsg54BiTA5RXtYW5qTLIAcekaS9xfZrzBLF/OAkB3Qn1YQ==}
@@ -2472,6 +2503,10 @@ packages:
engines: {node: '>=12'}
hasBin: true
+ d3-geo-voronoi@2.1.0:
+ resolution: {integrity: sha512-kqE4yYuOjPbKdBXG0xztCacPwkVSK2REF1opSNrnqqtXJmNcM++UbwQ8SxvwP6IQTj9RvIjjK4qeiVsEfj0Z2Q==}
+ engines: {node: '>=12'}
+
d3-geo@3.1.1:
resolution: {integrity: sha512-637ln3gXKXOwhalDzinUgY83KzNWZRKbYubaG+fGVuc/dxO64RRljtCTnf5ecMyE1RIdtqpkVcq0IbtU2S8j2Q==}
engines: {node: '>=12'}
@@ -2528,6 +2563,9 @@ packages:
resolution: {integrity: sha512-SaLBuwGm3MOViRq2ABk3eLoxwZELpH6zhl3FbAoJ7Vm1gofKx6El1Ib5z23NUEhF9AsGl7y+dzLe5Cw2AArGTA==}
engines: {node: '>=12'}
+ d3-tile@1.0.0:
+ resolution: {integrity: sha512-79fnTKpPMPDS5xQ0xuS9ir0165NEwwkFpe/DSOmc2Gl9ldYzKKRDWogmTTE8wAJ8NA7PMapNfEcyKhI9Lxdu5Q==}
+
d3-time-format@4.1.0:
resolution: {integrity: sha512-dJxPBlzC7NugB2PDLwo9Q8JiTR3M3e4/XANkreKSUxF8vvXKqm1Yfq4Q5dl8budlunRVlUUaDUgFt7eA8D6NLg==}
engines: {node: '>=12'}
@@ -2546,6 +2584,10 @@ packages:
peerDependencies:
d3-selection: 2 - 3
+ d3-tricontour@1.0.2:
+ resolution: {integrity: sha512-HIRxHzHagPtUPNabjOlfcyismJYIsc+Xlq4mlsts4e8eAcwyq9Tgk/sYdyhlBpQ0MHwVquc/8j+e29YjXnmxeA==}
+ engines: {node: '>=12'}
+
d3-zoom@3.0.0:
resolution: {integrity: sha512-b8AmV3kfQaqWAuacbPuNbL6vahnOJflOhexLzMMNLga62+/nh0JzvJ0aO/5a5MVgUFGS7Hu1P9P03o3fJkDCyw==}
engines: {node: '>=12'}
@@ -2554,6 +2596,9 @@ packages:
resolution: {integrity: sha512-e1U46jVP+w7Iut8Jt8ri1YsPOvFpg46k+K8TpCb0P+zjCkjkPnV7WzfDJzMHy1LnA+wj5pLT1wjO901gLXeEhA==}
engines: {node: '>=12'}
+ date-fns@3.6.0:
+ resolution: {integrity: sha512-fRHTG8g/Gif+kSh50gaGEdToemgfj74aRX3swtiouboip5JDLAyDE9F11nHMIcvOaXeOC6D7SpNhi7uFyB7Uww==}
+
dayjs@1.11.12:
resolution: {integrity: sha512-Rt2g+nTbLlDWZTwwrIXjy9MeiZmSDI375FvZs72ngxx8PDC6YXOeR3q5LAuPzjZQxhiWdRKac7RKV+YyQYfYIg==}
@@ -3001,10 +3046,16 @@ packages:
fastq@1.15.0:
resolution: {integrity: sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==}
+ fflate@0.4.8:
+ resolution: {integrity: sha512-FJqqoDBR00Mdj9ppamLa/Y7vxm+PRmNWA67N846RvsoYVMKB4q3y/de5PA7gUmRMYK/8CMz2GDZQmCRN1wBcWA==}
+
file-entry-cache@8.0.0:
resolution: {integrity: sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==}
engines: {node: '>=16.0.0'}
+ file-source@0.6.1:
+ resolution: {integrity: sha512-1R1KneL7eTXmXfKxC10V/9NeGOdbsAXJ+lQ//fvvcHUgtaZcZDWNJNblxAoVOyV1cj45pOtUrR3vZTBwqcW8XA==}
+
fill-range@7.0.1:
resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==}
engines: {node: '>=8'}
@@ -3267,6 +3318,9 @@ packages:
resolution: {integrity: sha512-XDUx3Ac1VrZ4XF5eAJNYdHbFXRPNyebHFrwJsZ4WHb7X2MitOVW23cFphSDByT3MH5rdWdxKr4edSW2agChvDg==}
engines: {node: '>=18.0.0'}
+ immer@10.1.1:
+ resolution: {integrity: sha512-s2MPrmjovJcoMaHtx6K11Ra7oD05NT97w1IC5zpMkT6Atjr7H8LjaDd81iIxUYpMKSRRNMJE703M1Fhr/TctHw==}
+
import-fresh@3.3.0:
resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==}
engines: {node: '>=6'}
@@ -3476,6 +3530,17 @@ packages:
known-css-properties@0.34.0:
resolution: {integrity: sha512-tBECoUqNFbyAY4RrbqsBQqDFpGXAEbdD5QKr8kACx3+rnArmuuR22nKQWKazvp07N9yjTyDZaw/20UIH8tL9DQ==}
+ layercake@8.3.4:
+ resolution: {integrity: sha512-r5OrzTxpDp0BQm9m5kJTIzsD5o9nbOkxXTaMzce1LPTigs9PnQfvfjnsAdj/tXpe15BJaP1RVWFgnMDSghJhXw==}
+ peerDependencies:
+ svelte: 3 - 5 || >=5.0.0-next.120
+ typescript: ^5.0.2
+
+ layerchart@0.51.2:
+ resolution: {integrity: sha512-AC4j5vcOCCB9YNSdXcA2YHy6RjHQ6s2fmkXetEVD2jDGzFxVB5F5szJUBYYe6QZnd9MzIsASz/hEe4JiHUmu7w==}
+ peerDependencies:
+ svelte: ^3.56.0 || ^4.0.0 || ^5.0.0-next.120
+
leaflet@1.7.1:
resolution: {integrity: sha512-/xwPEBidtg69Q3HlqPdU3DnrXQOvQU/CCHA1tcDQVzOwm91YMYaILjNp7L4Eaw5Z4sOYdbBz6koWyibppd8Zqw==}
@@ -3986,6 +4051,9 @@ packages:
resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==}
engines: {node: '>=16 || 14 >=14.18'}
+ path-source@0.1.3:
+ resolution: {integrity: sha512-dWRHm5mIw5kw0cs3QZLNmpUWty48f5+5v9nWD2dw3Y0Hf+s01Ag8iJEWV0Sm0kocE8kK27DrIowha03e1YR+Qw==}
+
path-type@4.0.0:
resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==}
engines: {node: '>=8'}
@@ -4149,9 +4217,15 @@ packages:
resolution: {integrity: sha512-TesUflQ0WKZqAvg52PWL6kHgLKP6xB6heTOdoYM0Wt2UHyxNa4K25EZZMgKns3BH1RLVbZCREPpLY0rhnNoHVQ==}
engines: {node: ^10 || ^12 || >=14}
+ posthog-js@1.164.3:
+ resolution: {integrity: sha512-MKtvSfaFgrkBUD9X8tJUKsJ/FXKTMR+Qg1AYrMfLXabsCawAe3HFLhwMpWVlbBXHRj/oumtchNbd69jtAMexEQ==}
+
potpack@1.0.2:
resolution: {integrity: sha512-choctRBIV9EMT9WGAZHn3V7t0Z2pMQyl0EZE6pFc/6ml3ssw7Dlf/oAOvFwjm1HVsqfQN8GfeFyJ+d8tRzqueQ==}
+ preact@10.24.1:
+ resolution: {integrity: sha512-PnBAwFI3Yjxxcxw75n6VId/5TFxNW/81zexzWD9jn1+eSrOP84NdsS38H5IkF/UH3frqRPT+MvuCoVHjTDTnDw==}
+
preferred-pm@3.0.3:
resolution: {integrity: sha512-+wZgbxNES/KlJs9q40F/1sfOd/j7f1O9JaHcW5Dsn3aUUOZg3L2bjpVUcKV2jvtElYfoTuQiNeMfQJ4kwUAhCQ==}
engines: {node: '>=10'}
@@ -4420,6 +4494,10 @@ packages:
set-cookie-parser@2.7.0:
resolution: {integrity: sha512-lXLOiqpkUumhRdFF3k1osNXCy9akgx/dyPZ5p8qAg9seJzXr5ZrlqZuWIMuY6ejOsVLE6flJ5/h3lsn57fQ/PQ==}
+ shapefile@0.6.6:
+ resolution: {integrity: sha512-rLGSWeK2ufzCVx05wYd+xrWnOOdSV7xNUW5/XFgx3Bc02hBkpMlrd2F1dDII7/jhWzv0MSyBFh5uJIy9hLdfuw==}
+ hasBin: true
+
sharp@0.33.4:
resolution: {integrity: sha512-7i/dt5kGl7qR4gwPRD2biwD2/SvBn3O04J77XKFgL2OnZtQw+AG9wnuS/csmu80nPRHLYE9E41fyEiG8nhH6/Q==}
engines: {libvips: '>=8.15.2', node: ^18.17.0 || ^20.3.0 || >=21.0.0}
@@ -4474,6 +4552,9 @@ packages:
slashes@3.0.12:
resolution: {integrity: sha512-Q9VME8WyGkc7pJf6QEkj3wE+2CnvZMI+XJhwdTPR8Z/kWQRXi7boAWLDibRPyHRTUTPx5FaU7MsyrjI3yLB4HA==}
+ slice-source@0.4.1:
+ resolution: {integrity: sha512-YiuPbxpCj4hD9Qs06hGAz/OZhQ0eDuALN0lRWJez0eD/RevzKqGdUx1IOMUnXgpr+sXZLq3g8ERwbAH0bCb8vg==}
+
sorcery@0.11.1:
resolution: {integrity: sha512-o7npfeJE6wi6J9l0/5LKshFzZ2rMatRiCDwYeDQaOzqdzRJwALhX7mk/A/ecg6wjMu7wdZbmXfD2S/vpOg0bdQ==}
hasBin: true
@@ -4530,6 +4611,9 @@ packages:
std-env@3.7.0:
resolution: {integrity: sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg==}
+ stream-source@0.3.5:
+ resolution: {integrity: sha512-ZuEDP9sgjiAwUVoDModftG0JtYiLUV8K4ljYD1VyUMRWtbVf92474o4kuuul43iZ8t/hRuiDAx1dIJSvirrK/g==}
+
string-argv@0.3.2:
resolution: {integrity: sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q==}
engines: {node: '>=0.6.19'}
@@ -4744,12 +4828,20 @@ packages:
tailwind-merge@2.4.0:
resolution: {integrity: sha512-49AwoOQNKdqKPd9CViyH5wJoSKsCDjUlzL8DxuGp3P1FsGY36NJDAa18jLZcaHAUUuTj+JB8IAo8zWgBNvBF7A==}
+ tailwind-merge@2.5.2:
+ resolution: {integrity: sha512-kjEBm+pvD+6eAwzJL2Bi+02/9LFLal1Gs61+QB7HvTfQQ0aXwC5LGT8PEt1gS0CWKktKe6ysPTAy3cBC5MeiIg==}
+
tailwind-variants@0.1.20:
resolution: {integrity: sha512-AMh7x313t/V+eTySKB0Dal08RHY7ggYK0MSn/ad8wKWOrDUIzyiWNayRUm2PIJ4VRkvRnfNuyRuKbLV3EN+ewQ==}
engines: {node: '>=16.x', pnpm: '>=7.x'}
peerDependencies:
tailwindcss: '*'
+ tailwindcss@3.4.13:
+ resolution: {integrity: sha512-KqjHOJKogOUt5Bs752ykCeiwvi0fKVkr5oqsFNt/8px/tA8scFPIlkygsf6jXrfCqGHz7VflA6+yytWuM+XhFw==}
+ engines: {node: '>=14.0.0'}
+ hasBin: true
+
tailwindcss@3.4.7:
resolution: {integrity: sha512-rxWZbe87YJb4OcSopb7up2Ba4U82BoiSGUdoDr3Ydrg9ckxFS/YWsvhN323GMcddgU65QRy7JndC7ahhInhvlQ==}
engines: {node: '>=14.0.0'}
@@ -4763,6 +4855,10 @@ packages:
resolution: {integrity: sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg==}
engines: {node: '>=8'}
+ text-encoding@0.6.4:
+ resolution: {integrity: sha512-hJnc6Qg3dWoOMkqP53F0dzRIgtmsAge09kxUIqGrEUS4qr5rWLckGYaQAVr+opBrIMRErGgy6f5aPnyPpyGRfg==}
+ deprecated: no longer maintained
+
text-table@0.2.0:
resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==}
@@ -5155,6 +5251,9 @@ packages:
web-namespaces@2.0.1:
resolution: {integrity: sha512-bKr1DkiNa2krS7qxNtdrtHAmzuYGFQLiQ13TsorsdT6ULTkPLKuu5+GsFpDlg6JFjUTwX2DyhMPG2be8uPrqsQ==}
+ web-vitals@4.2.3:
+ resolution: {integrity: sha512-/CFAm1mNxSmOj6i0Co+iGFJ58OS4NRGVP+AWS/l509uIK5a1bSoIVaHz/ZumpHTfHSZBpgrJ+wjfpAOrTHok5Q==}
+
webidl-conversions@4.0.2:
resolution: {integrity: sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==}
@@ -5269,7 +5368,7 @@ snapshots:
'@antfu/install-pkg': 0.3.3
'@clack/prompts': 0.7.0
'@stylistic/eslint-plugin': 2.6.1(eslint@9.8.0)(typescript@5.5.4)
- '@typescript-eslint/eslint-plugin': 8.0.1(@typescript-eslint/parser@8.0.1(eslint@9.8.0)(typescript@5.5.4))(eslint@9.8.0)(typescript@5.5.4)
+ '@typescript-eslint/eslint-plugin': 8.0.1(@typescript-eslint/parser@7.18.0(eslint@9.8.0)(typescript@5.5.4))(eslint@9.8.0)(typescript@5.5.4)
'@typescript-eslint/parser': 8.0.1(eslint@9.8.0)(typescript@5.5.4)
eslint: 9.8.0
eslint-config-flat-gitignore: 0.1.8
@@ -5288,8 +5387,8 @@ snapshots:
eslint-plugin-regexp: 2.6.0(eslint@9.8.0)
eslint-plugin-toml: 0.11.1(eslint@9.8.0)
eslint-plugin-unicorn: 55.0.0(eslint@9.8.0)
- eslint-plugin-unused-imports: 4.0.1(@typescript-eslint/eslint-plugin@8.0.1(@typescript-eslint/parser@7.18.0(eslint@9.8.0)(typescript@5.5.4))(eslint@9.8.0)(typescript@5.5.4))(eslint@9.8.0)
- eslint-plugin-vitest: 0.5.4(@typescript-eslint/eslint-plugin@8.0.1(@typescript-eslint/parser@7.18.0(eslint@9.8.0)(typescript@5.5.4))(eslint@9.8.0)(typescript@5.5.4))(eslint@9.8.0)(typescript@5.5.4)(vitest@1.6.0(@types/node@18.19.43))
+ eslint-plugin-unused-imports: 4.0.1(@typescript-eslint/eslint-plugin@8.0.1(@typescript-eslint/parser@8.0.1(eslint@9.8.0)(typescript@5.5.4))(eslint@9.8.0)(typescript@5.5.4))(eslint@9.8.0)
+ eslint-plugin-vitest: 0.5.4(@typescript-eslint/eslint-plugin@8.0.1(@typescript-eslint/parser@8.0.1(eslint@9.8.0)(typescript@5.5.4))(eslint@9.8.0)(typescript@5.5.4))(eslint@9.8.0)(typescript@5.5.4)(vitest@1.6.0(@types/node@18.19.43))
eslint-plugin-vue: 9.27.0(eslint@9.8.0)
eslint-plugin-yml: 1.14.0(eslint@9.8.0)
eslint-processor-vue-blocks: 0.1.2(@vue/compiler-sfc@3.4.36)(eslint@9.8.0)
@@ -6131,6 +6230,43 @@ snapshots:
'@juggle/resize-observer@3.4.0': {}
+ '@layerstack/svelte-actions@0.0.4':
+ dependencies:
+ '@floating-ui/dom': 1.6.10
+ '@layerstack/utils': 0.0.4
+ d3-array: 3.2.4
+ d3-scale: 4.0.2
+ date-fns: 3.6.0
+ lodash-es: 4.17.21
+
+ '@layerstack/svelte-stores@0.0.4':
+ dependencies:
+ '@layerstack/utils': 0.0.4
+ d3-array: 3.2.4
+ date-fns: 3.6.0
+ immer: 10.1.1
+ lodash-es: 4.17.21
+ zod: 3.23.8
+
+ '@layerstack/tailwind@0.0.6':
+ dependencies:
+ '@layerstack/utils': 0.0.4
+ clsx: 2.1.1
+ culori: 4.0.1
+ d3-array: 3.2.4
+ date-fns: 3.6.0
+ lodash-es: 4.17.21
+ tailwind-merge: 2.5.2
+ tailwindcss: 3.4.13
+ transitivePeerDependencies:
+ - ts-node
+
+ '@layerstack/utils@0.0.4':
+ dependencies:
+ d3-array: 3.2.4
+ date-fns: 3.6.0
+ lodash-es: 4.17.21
+
'@manypkg/find-root@1.1.0':
dependencies:
'@babel/runtime': 7.21.5
@@ -6693,10 +6829,10 @@ snapshots:
transitivePeerDependencies:
- supports-color
- '@typescript-eslint/eslint-plugin@8.0.1(@typescript-eslint/parser@8.0.1(eslint@9.8.0)(typescript@5.5.4))(eslint@9.8.0)(typescript@5.5.4)':
+ '@typescript-eslint/eslint-plugin@8.0.1(@typescript-eslint/parser@7.18.0(eslint@9.8.0)(typescript@5.5.4))(eslint@9.8.0)(typescript@5.5.4)':
dependencies:
'@eslint-community/regexpp': 4.11.0
- '@typescript-eslint/parser': 8.0.1(eslint@9.8.0)(typescript@5.5.4)
+ '@typescript-eslint/parser': 7.18.0(eslint@9.8.0)(typescript@5.5.4)
'@typescript-eslint/scope-manager': 8.0.1
'@typescript-eslint/type-utils': 8.0.1(eslint@9.8.0)(typescript@5.5.4)
'@typescript-eslint/utils': 8.0.1(eslint@9.8.0)(typescript@5.5.4)
@@ -7056,6 +7192,8 @@ snapshots:
'@ark/util': 0.1.0
optional: true
+ array-source@0.0.4: {}
+
array-union@2.1.0: {}
assertion-error@1.1.0: {}
@@ -7326,6 +7464,8 @@ snapshots:
csstype@3.1.3: {}
+ culori@4.0.1: {}
+
d3-array@2.12.1:
dependencies:
internmap: 1.0.1
@@ -7393,6 +7533,13 @@ snapshots:
d3-array: 3.2.4
d3-geo: 3.1.1
+ d3-geo-voronoi@2.1.0:
+ dependencies:
+ d3-array: 3.2.4
+ d3-delaunay: 6.0.4
+ d3-geo: 3.1.1
+ d3-tricontour: 1.0.2
+
d3-geo@3.1.1:
dependencies:
d3-array: 3.2.4
@@ -7443,6 +7590,8 @@ snapshots:
dependencies:
d3-path: 3.1.0
+ d3-tile@1.0.0: {}
+
d3-time-format@4.1.0:
dependencies:
d3-time: 3.1.0
@@ -7462,6 +7611,11 @@ snapshots:
d3-selection: 3.0.0
d3-timer: 3.0.1
+ d3-tricontour@1.0.2:
+ dependencies:
+ d3-delaunay: 6.0.4
+ d3-scale: 4.0.2
+
d3-zoom@3.0.0:
dependencies:
d3-dispatch: 3.0.1
@@ -7503,6 +7657,8 @@ snapshots:
d3-transition: 3.0.1(d3-selection@3.0.0)
d3-zoom: 3.0.0
+ date-fns@3.6.0: {}
+
dayjs@1.11.12:
optional: true
@@ -7920,19 +8076,19 @@ snapshots:
semver: 7.6.3
strip-indent: 3.0.0
- eslint-plugin-unused-imports@4.0.1(@typescript-eslint/eslint-plugin@8.0.1(@typescript-eslint/parser@7.18.0(eslint@9.8.0)(typescript@5.5.4))(eslint@9.8.0)(typescript@5.5.4))(eslint@9.8.0):
+ eslint-plugin-unused-imports@4.0.1(@typescript-eslint/eslint-plugin@8.0.1(@typescript-eslint/parser@8.0.1(eslint@9.8.0)(typescript@5.5.4))(eslint@9.8.0)(typescript@5.5.4))(eslint@9.8.0):
dependencies:
eslint: 9.8.0
eslint-rule-composer: 0.3.0
optionalDependencies:
- '@typescript-eslint/eslint-plugin': 8.0.1(@typescript-eslint/parser@8.0.1(eslint@9.8.0)(typescript@5.5.4))(eslint@9.8.0)(typescript@5.5.4)
+ '@typescript-eslint/eslint-plugin': 8.0.1(@typescript-eslint/parser@7.18.0(eslint@9.8.0)(typescript@5.5.4))(eslint@9.8.0)(typescript@5.5.4)
- eslint-plugin-vitest@0.5.4(@typescript-eslint/eslint-plugin@8.0.1(@typescript-eslint/parser@7.18.0(eslint@9.8.0)(typescript@5.5.4))(eslint@9.8.0)(typescript@5.5.4))(eslint@9.8.0)(typescript@5.5.4)(vitest@1.6.0(@types/node@18.19.43)):
+ eslint-plugin-vitest@0.5.4(@typescript-eslint/eslint-plugin@8.0.1(@typescript-eslint/parser@8.0.1(eslint@9.8.0)(typescript@5.5.4))(eslint@9.8.0)(typescript@5.5.4))(eslint@9.8.0)(typescript@5.5.4)(vitest@1.6.0(@types/node@18.19.43)):
dependencies:
'@typescript-eslint/utils': 7.18.0(eslint@9.8.0)(typescript@5.5.4)
eslint: 9.8.0
optionalDependencies:
- '@typescript-eslint/eslint-plugin': 8.0.1(@typescript-eslint/parser@8.0.1(eslint@9.8.0)(typescript@5.5.4))(eslint@9.8.0)(typescript@5.5.4)
+ '@typescript-eslint/eslint-plugin': 8.0.1(@typescript-eslint/parser@7.18.0(eslint@9.8.0)(typescript@5.5.4))(eslint@9.8.0)(typescript@5.5.4)
vitest: 1.6.0(@types/node@18.19.43)
transitivePeerDependencies:
- supports-color
@@ -8126,10 +8282,16 @@ snapshots:
dependencies:
reusify: 1.0.4
+ fflate@0.4.8: {}
+
file-entry-cache@8.0.0:
dependencies:
flat-cache: 4.0.1
+ file-source@0.6.1:
+ dependencies:
+ stream-source: 0.3.5
+
fill-range@7.0.1:
dependencies:
to-regex-range: 5.0.1
@@ -8467,6 +8629,8 @@ snapshots:
imagetools-core@7.0.1: {}
+ immer@10.1.1: {}
+
import-fresh@3.3.0:
dependencies:
parent-module: 1.0.1
@@ -8633,6 +8797,51 @@ snapshots:
known-css-properties@0.34.0: {}
+ layercake@8.3.4(svelte@4.2.18)(typescript@5.5.4):
+ dependencies:
+ d3-array: 3.2.4
+ d3-color: 3.1.0
+ d3-scale: 4.0.2
+ d3-shape: 3.2.0
+ svelte: 4.2.18
+ typescript: 5.5.4
+
+ layerchart@0.51.2(svelte@4.2.18)(typescript@5.5.4):
+ dependencies:
+ '@layerstack/svelte-actions': 0.0.4
+ '@layerstack/svelte-stores': 0.0.4
+ '@layerstack/tailwind': 0.0.6
+ '@layerstack/utils': 0.0.4
+ d3-array: 3.2.4
+ d3-color: 3.1.0
+ d3-delaunay: 6.0.4
+ d3-dsv: 3.0.1
+ d3-force: 3.0.0
+ d3-geo: 3.1.1
+ d3-geo-voronoi: 2.1.0
+ d3-hierarchy: 3.1.2
+ d3-interpolate: 3.0.1
+ d3-interpolate-path: 2.3.0
+ d3-path: 3.1.0
+ d3-quadtree: 3.0.1
+ d3-random: 3.0.1
+ d3-sankey: 0.12.3
+ d3-scale: 4.0.2
+ d3-scale-chromatic: 3.1.0
+ d3-shape: 3.2.0
+ d3-tile: 1.0.0
+ d3-time: 3.1.0
+ date-fns: 3.6.0
+ layercake: 8.3.4(svelte@4.2.18)(typescript@5.5.4)
+ lodash-es: 4.17.21
+ posthog-js: 1.164.3
+ shapefile: 0.6.6
+ svelte: 4.2.18
+ topojson-client: 3.1.0
+ transitivePeerDependencies:
+ - ts-node
+ - typescript
+
leaflet@1.7.1: {}
levn@0.4.1:
@@ -9326,6 +9535,11 @@ snapshots:
lru-cache: 10.4.3
minipass: 7.1.2
+ path-source@0.1.3:
+ dependencies:
+ array-source: 0.0.4
+ file-source: 0.6.1
+
path-type@4.0.0: {}
pathe@1.1.2: {}
@@ -9445,8 +9659,16 @@ snapshots:
picocolors: 1.0.1
source-map-js: 1.2.0
+ posthog-js@1.164.3:
+ dependencies:
+ fflate: 0.4.8
+ preact: 10.24.1
+ web-vitals: 4.2.3
+
potpack@1.0.2: {}
+ preact@10.24.1: {}
+
preferred-pm@3.0.3:
dependencies:
find-up: 5.0.0
@@ -9709,6 +9931,15 @@ snapshots:
set-cookie-parser@2.7.0: {}
+ shapefile@0.6.6:
+ dependencies:
+ array-source: 0.0.4
+ commander: 2.20.3
+ path-source: 0.1.3
+ slice-source: 0.4.1
+ stream-source: 0.3.5
+ text-encoding: 0.6.4
+
sharp@0.33.4:
dependencies:
color: 4.2.3
@@ -9776,6 +10007,8 @@ snapshots:
slashes@3.0.12: {}
+ slice-source@0.4.1: {}
+
sorcery@0.11.1:
dependencies:
'@jridgewell/sourcemap-codec': 1.5.0
@@ -9832,6 +10065,8 @@ snapshots:
std-env@3.7.0: {}
+ stream-source@0.3.5: {}
+
string-argv@0.3.2: {}
string-width@4.2.3:
@@ -10092,11 +10327,40 @@ snapshots:
tailwind-merge@2.4.0: {}
+ tailwind-merge@2.5.2: {}
+
tailwind-variants@0.1.20(tailwindcss@3.4.7):
dependencies:
tailwind-merge: 1.14.0
tailwindcss: 3.4.7
+ tailwindcss@3.4.13:
+ dependencies:
+ '@alloc/quick-lru': 5.2.0
+ arg: 5.0.2
+ chokidar: 3.6.0
+ didyoumean: 1.2.2
+ dlv: 1.1.3
+ fast-glob: 3.3.2
+ glob-parent: 6.0.2
+ is-glob: 4.0.3
+ jiti: 1.21.6
+ lilconfig: 2.1.0
+ micromatch: 4.0.5
+ normalize-path: 3.0.0
+ object-hash: 3.0.0
+ picocolors: 1.0.1
+ postcss: 8.4.41
+ postcss-import: 15.1.0(postcss@8.4.41)
+ postcss-js: 4.0.1(postcss@8.4.41)
+ postcss-load-config: 4.0.2(postcss@8.4.41)
+ postcss-nested: 6.2.0(postcss@8.4.41)
+ postcss-selector-parser: 6.1.1
+ resolve: 1.22.8
+ sucrase: 3.35.0
+ transitivePeerDependencies:
+ - ts-node
+
tailwindcss@3.4.7:
dependencies:
'@alloc/quick-lru': 5.2.0
@@ -10128,6 +10392,8 @@ snapshots:
term-size@2.2.1: {}
+ text-encoding@0.6.4: {}
+
text-table@0.2.0: {}
thenify-all@1.6.0:
@@ -10571,6 +10837,8 @@ snapshots:
web-namespaces@2.0.1: {}
+ web-vitals@4.2.3: {}
+
webidl-conversions@4.0.2: {}
whatwg-url@7.1.0:
diff --git a/sites/docs/package.json b/sites/docs/package.json
index 798900e81..f57274880 100644
--- a/sites/docs/package.json
+++ b/sites/docs/package.json
@@ -31,6 +31,7 @@
"@sveltejs/kit": "^2.5.2",
"@sveltejs/vite-plugin-svelte": "^3.0.2",
"@types/d3-scale": "^4.0.8",
+ "@types/d3-shape": "^3.1.6",
"@types/hast": "^3.0.4",
"@types/lodash.template": "^4.5.3",
"@types/mdast": "^4.0.3",
@@ -64,15 +65,18 @@
"type": "module",
"dependencies": {
"@internationalized/date": "^3.5.2",
+ "@layerstack/utils": "^0.0.4",
"@unovis/svelte": "1.3.6-beta.1",
"@unovis/ts": "1.3.6-beta.1",
"bits-ui": "0.21.4",
"clsx": "^2.1.0",
"cmdk-sv": "^0.0.15",
"d3-scale": "^4.0.2",
+ "d3-shape": "^3.2.0",
"embla-carousel-autoplay": "8.0.0-rc19",
"embla-carousel-svelte": "8.0.0-rc19",
"formsnap": "^0.5.1",
+ "layerchart": "^0.51.2",
"lucide-svelte": "^0.363.0",
"mode-watcher": "^0.2.2",
"nanoid": "^5.0.6",
diff --git a/sites/docs/src/lib/components/docs/announcement.svelte b/sites/docs/src/lib/components/docs/announcement.svelte
index 1411bc843..c577de11b 100644
--- a/sites/docs/src/lib/components/docs/announcement.svelte
+++ b/sites/docs/src/lib/components/docs/announcement.svelte
@@ -1,23 +1,12 @@
-
-