From 22b5fd52ec8a85acf91a3abf3fdcdbbcc87c5626 Mon Sep 17 00:00:00 2001 From: Chris Williams Date: Wed, 6 May 2020 14:05:45 -0700 Subject: [PATCH] new(vx-demo): convert ZoomI to codesandbox --- packages/vx-demo/src/components/Gallery.tsx | 2 +- .../examples/vx-zoom-i/Example.tsx} | 21 +++++++++----- .../src/docs-v2/examples/vx-zoom-i/index.tsx | 11 ++++++++ .../docs-v2/examples/vx-zoom-i/package.json | 28 +++++++++++++++++++ .../examples/vx-zoom-i/sandbox-styles.css | 8 ++++++ packages/vx-demo/src/pages/Zoom-i.tsx | 16 +++++------ 6 files changed, 69 insertions(+), 17 deletions(-) rename packages/vx-demo/src/{components/tiles/Zoom-i.tsx => docs-v2/examples/vx-zoom-i/Example.tsx} (94%) create mode 100644 packages/vx-demo/src/docs-v2/examples/vx-zoom-i/index.tsx create mode 100644 packages/vx-demo/src/docs-v2/examples/vx-zoom-i/package.json create mode 100644 packages/vx-demo/src/docs-v2/examples/vx-zoom-i/sandbox-styles.css diff --git a/packages/vx-demo/src/components/Gallery.tsx b/packages/vx-demo/src/components/Gallery.tsx index 840622325..39a90ba24 100644 --- a/packages/vx-demo/src/components/Gallery.tsx +++ b/packages/vx-demo/src/components/Gallery.tsx @@ -49,7 +49,7 @@ import LinkTypes from './tiles/LinkTypes'; import Threshold from './tiles/Threshold'; import Chord from '../docs-v2/examples/vx-chord/Example'; import Polygons from './tiles/Polygons'; -import ZoomI from './tiles/Zoom-i'; +import ZoomI from '../docs-v2/examples/vx-zoom-i/Example'; import Brush from './tiles/Brush'; const items = [ diff --git a/packages/vx-demo/src/components/tiles/Zoom-i.tsx b/packages/vx-demo/src/docs-v2/examples/vx-zoom-i/Example.tsx similarity index 94% rename from packages/vx-demo/src/components/tiles/Zoom-i.tsx rename to packages/vx-demo/src/docs-v2/examples/vx-zoom-i/Example.tsx index 62c61ce57..5115cf273 100644 --- a/packages/vx-demo/src/components/tiles/Zoom-i.tsx +++ b/packages/vx-demo/src/docs-v2/examples/vx-zoom-i/Example.tsx @@ -1,5 +1,6 @@ -/* eslint-disable react/jsx-handler-names */ +/* eslint react/jsx-handler-names: "off" */ import React, { useState } from 'react'; +import { interpolateRainbow } from 'd3-scale-chromatic'; import { Zoom } from '@vx/zoom'; import { localPoint } from '@vx/event'; import { RectClipPath } from '@vx/clip-path'; @@ -8,8 +9,6 @@ import genPhyllotaxis, { PhyllotaxisPoint, } from '@vx/mock-data/lib/generators/genPhyllotaxis'; import { scaleLinear } from '@vx/scale'; -import { interpolateRainbow } from 'd3-scale-chromatic'; -import { ShowProvidedProps } from '../../types'; const bg = '#0a0a0a'; const points = [...new Array(1000)]; @@ -26,11 +25,16 @@ const initialTransform = { skewY: 0, }; -export default function ZoomI({ width, height }: ShowProvidedProps) { +type Props = { + width: number; + height: number; +}; + +export default function ZoomI({ width, height }: Props) { const [showMiniMap, setShowMiniMap] = useState(true); - const gen: GenPhyllotaxisFunction = genPhyllotaxis({ radius: 10, width, height }); - const phyllotaxis: PhyllotaxisPoint[] = points.map((d, i) => gen(i)); + const genenerator: GenPhyllotaxisFunction = genPhyllotaxis({ radius: 10, width, height }); + const phyllotaxis: PhyllotaxisPoint[] = points.map((d, i) => genenerator(i)); return ( <> @@ -44,7 +48,7 @@ export default function ZoomI({ width, height }: ShowProvidedProps) { transformMatrix={initialTransform} > {zoom => ( -
+
); diff --git a/packages/vx-demo/src/docs-v2/examples/vx-zoom-i/index.tsx b/packages/vx-demo/src/docs-v2/examples/vx-zoom-i/index.tsx new file mode 100644 index 000000000..3313ec317 --- /dev/null +++ b/packages/vx-demo/src/docs-v2/examples/vx-zoom-i/index.tsx @@ -0,0 +1,11 @@ +import React from 'react'; +import { render } from 'react-dom'; +import ParentSize from '@vx/responsive/lib/components/ParentSize'; + +import Example from './Example'; +import './sandbox-styles.css'; + +render( + {({ width, height }) => }, + document.getElementById('root'), +); diff --git a/packages/vx-demo/src/docs-v2/examples/vx-zoom-i/package.json b/packages/vx-demo/src/docs-v2/examples/vx-zoom-i/package.json new file mode 100644 index 000000000..4e355f865 --- /dev/null +++ b/packages/vx-demo/src/docs-v2/examples/vx-zoom-i/package.json @@ -0,0 +1,28 @@ +{ + "name": "@vx/demo-zoom-i", + "description": "Standalone vx zoom demo.", + "main": "index.tsx", + "dependencies": { + "@babel/runtime": "^7.8.4", + "@types/react": "^16", + "@types/react-dom": "^16", + "@vx/clip-path": "latest", + "@vx/event": "latest", + "@vx/mock-data": "latest", + "@vx/responsive": "latest", + "@vx/scale": "latest", + "@vx/zoom": "latest", + "d3-scale-chromatic": "^1.5.0", + "react": "^16.8", + "react-dom": "^16.8", + "react-scripts-ts": "3.1.0", + "typescript": "^3" + }, + "keywords": [ + "visualization", + "d3", + "react", + "vx", + "zoom" + ] +} diff --git a/packages/vx-demo/src/docs-v2/examples/vx-zoom-i/sandbox-styles.css b/packages/vx-demo/src/docs-v2/examples/vx-zoom-i/sandbox-styles.css new file mode 100644 index 000000000..b91993723 --- /dev/null +++ b/packages/vx-demo/src/docs-v2/examples/vx-zoom-i/sandbox-styles.css @@ -0,0 +1,8 @@ +html, +body, +#root { + height: 100%; + font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, + 'Open Sans', 'Helvetica Neue', sans-serif; + line-height: 2em; +} diff --git a/packages/vx-demo/src/pages/Zoom-i.tsx b/packages/vx-demo/src/pages/Zoom-i.tsx index ab9cb1c55..5e6eede04 100644 --- a/packages/vx-demo/src/pages/Zoom-i.tsx +++ b/packages/vx-demo/src/pages/Zoom-i.tsx @@ -1,12 +1,10 @@ import React from 'react'; import Show from '../components/Show'; -import ZoomI from '../components/tiles/Zoom-i'; -import ZoomISource from '!!raw-loader!../components/tiles/Zoom-i'; +import ZoomI from '../docs-v2/examples/vx-zoom-i/Example'; +import ZoomISource from '!!raw-loader!../docs-v2/examples/vx-zoom-i/Example'; -export default () => { - return ( - - {ZoomISource} - - ); -}; +export default () => ( + + {ZoomISource} + +);