diff --git a/packages/layerchart/src/routes/_NavMenu.svelte b/packages/layerchart/src/routes/_NavMenu.svelte index 67bc6dd62..7217667b0 100644 --- a/packages/layerchart/src/routes/_NavMenu.svelte +++ b/packages/layerchart/src/routes/_NavMenu.svelte @@ -28,6 +28,7 @@ 'Scatter', 'Sparkbar', 'Sparkline', + 'SyncBrushContext', 'Threshold', ], Hierarchy: ['Pack', 'Partition', 'Sunburst', 'Tree', 'Treemap'], diff --git a/packages/layerchart/src/routes/docs/examples/SyncBrushContext/+page.svelte b/packages/layerchart/src/routes/docs/examples/SyncBrushContext/+page.svelte new file mode 100644 index 000000000..56fe5e050 --- /dev/null +++ b/packages/layerchart/src/routes/docs/examples/SyncBrushContext/+page.svelte @@ -0,0 +1,128 @@ + + +

Sync BrushContext

+ + +
+ { + // Invert deltaX for more natural horizontal scrolling + translateXDomain(-deltaX); + return { x: 0, y: 0 }; + }, + }} + > + + + + + + + + + + +
+ +
+ (xDomain = e.xDomain), + onreset: () => (xDomain = undefined), + }} + > + + + + +
+
diff --git a/packages/layerchart/src/routes/docs/examples/SyncBrushContext/+page.ts b/packages/layerchart/src/routes/docs/examples/SyncBrushContext/+page.ts new file mode 100644 index 000000000..f34b8d0af --- /dev/null +++ b/packages/layerchart/src/routes/docs/examples/SyncBrushContext/+page.ts @@ -0,0 +1,15 @@ +import { parse } from '@layerstack/utils'; + +import pageSource from './+page.svelte?raw'; +import type { AppleStockData } from '$static/data/examples/date/apple-stock.js'; + +export async function load({ fetch }) { + return { + appleStock: await fetch('/data/examples/date/apple-stock.json').then(async (r) => + parse(await r.text()) + ), + meta: { + pageSource, + }, + }; +}