@pie-lib/plot 2.23.1-next.0 → 2.24.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm/index.js +1278 -0
- package/esm/index.js.map +1 -0
- package/package.json +12 -5
package/esm/index.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/types.js","../src/utils.js","../src/label.jsx","../src/root.jsx","../src/draggable.jsx","../src/grid-draggable.jsx","../src/trig.js","../src/graph-props.js"],"sourcesContent":["import PropTypes from 'prop-types';\n\nexport const BaseDomainRangeType = {\n min: PropTypes.number.isRequired,\n max: PropTypes.number.isRequired,\n step: PropTypes.number,\n};\n\nexport const DomainType = PropTypes.shape(BaseDomainRangeType);\n\nexport const RangeType = PropTypes.shape(BaseDomainRangeType);\n\nexport const SizeType = PropTypes.shape({\n width: PropTypes.number.isRequired,\n height: PropTypes.number.isRequired,\n});\n\nexport const PointType = PropTypes.shape({\n x: PropTypes.number.isRequired,\n y: PropTypes.number.isRequired,\n});\n\nexport const ChildrenType = PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]).isRequired;\n\nexport const ScaleType = PropTypes.shape({\n x: PropTypes.func.isRequired,\n y: PropTypes.func.isRequired,\n});\n\nexport const SnapType = PropTypes.shape({\n x: PropTypes.func.isRequired,\n y: PropTypes.func.isRequired,\n});\n\nexport const GraphPropsType = PropTypes.shape({\n scale: ScaleType.isRequired,\n snap: SnapType.isRequired,\n domain: DomainType.isRequired,\n range: RangeType.isRequired,\n size: SizeType.isRequired,\n});\n","import invariant from 'invariant';\nimport range from 'lodash/range';\nimport Point from '@mapbox/point-geometry';\nimport head from 'lodash/head';\nimport tail from 'lodash/tail';\nimport isEqual from 'lodash/isEqual';\n\nexport const xy = (x, y) => ({ x, y });\n\nexport const buildSizeArray = (size, padding) => {\n padding = Number.isFinite(padding) ? Math.max(padding, 0) : 0;\n invariant(padding < size, 'padding must be less than size');\n const half = Math.round(padding * 0.5);\n return [half, size - half];\n};\n\nexport const tickCount = (min, max, step) => {\n invariant(min < max, 'min must be less than max');\n const size = Math.abs(min - max);\n return Math.round(size / step);\n};\n\nexport function getInterval(domain, ticks) {\n const { min, max } = domain;\n const { major, minor } = ticks;\n\n if (min >= max) {\n throw new Error(`min is > max: ${min} > ${max}`);\n }\n\n const distance = max - min;\n const minorTicks = minor > 0 ? minor + 1 : 1;\n const normalizedMajor = major - 1;\n\n if (isNaN(normalizedMajor)) {\n throw new Error('Tick Frequency must be 2 or higher');\n }\n\n if (normalizedMajor <= 0) {\n throw new Error('Tick Frequency must be 2 or higher');\n }\n\n const divider = normalizedMajor * minorTicks;\n const raw = distance / divider;\n return parseFloat(Number(raw).toFixed(4));\n}\n\nconst mkRange = (min, max, interval) => {\n const raw = range(min, max, interval);\n /* Fix the last step due to rounding errors */\n raw.splice(raw.length, 1, max);\n return raw;\n};\n\nexport function snapTo(min, max, interval, value) {\n if (value >= max) {\n return max;\n }\n\n if (value <= min) {\n return min;\n }\n\n let rng = mkRange(min, max, interval);\n\n rng = rng.filter((v) => {\n return Math.abs(value - v) <= interval;\n });\n\n return (\n rng.length &&\n rng.reduce((prev, curr) => {\n const currentDistance = Math.abs(curr - value);\n const previousDistance = Math.abs(prev - value);\n return currentDistance <= previousDistance ? curr : prev;\n })\n );\n}\n\nexport function buildTickModel(domain, ticks, interval, scaleFn) {\n const rng = mkRange(domain.min, domain.max, interval);\n\n return rng.map((r, index) => {\n const isMajor = index % (ticks.minor + 1) === 0;\n\n return {\n value: r,\n major: isMajor,\n x: scaleFn(r),\n };\n });\n}\n\nexport const polygonToArea = (points) => {\n const h = head(points);\n const area = {\n left: h.x,\n top: h.y,\n bottom: h.y,\n right: h.x,\n };\n return tail(points).reduce((a, p) => {\n a.left = Math.min(a.left, p.x);\n a.top = Math.max(a.top, p.y);\n a.bottom = Math.min(a.bottom, p.y);\n a.right = Math.max(a.right, p.x);\n return a;\n }, area);\n};\n\nexport const lineToArea = (from, to) => {\n const left = Math.min(from.x, to.x);\n const top = Math.max(from.y, to.y);\n const bottom = Math.min(from.y, to.y);\n const right = Math.max(from.x, to.x);\n return { left, top, bottom, right };\n};\n\nexport const bounds = (area, domain, range) => {\n return {\n left: domain.min - area.left,\n right: Math.abs(area.right - domain.max),\n top: Math.abs(area.top - range.max),\n bottom: range.min - area.bottom,\n };\n};\n\nexport const point = (o) => new Point(o.x, o.y);\nexport const getDelta = (from, to) => {\n return point(to).sub(point(from));\n};\n\nexport const bandKey = (d, index) => `${index}-${d.label || '-'}`;\n\nexport const isDomainRangeEqual = (graphProps, nextGraphProps) => {\n return isEqual(graphProps.domain, nextGraphProps.domain) && isEqual(graphProps.range, nextGraphProps.range);\n};\n\n// findLongestWord is also used in graphing\nexport const findLongestWord = (label) => {\n let longestWord = (label || '')\n .replace(/<[^>]+>/g, '')\n .split(' ')\n .sort((a, b) => b.length - a.length);\n\n return longestWord[0].length;\n};\n\n// amountToIncreaseWidth is also used in graphing\nexport const amountToIncreaseWidth = (longestWord) => {\n if (!longestWord) {\n return 0;\n }\n\n return longestWord * 20;\n};\n\nexport const extractTextFromHTML = (htmlString) => {\n const parser = new DOMParser();\n const doc = parser?.parseFromString(htmlString, 'text/html');\n return doc?.body?.textContent || '';\n};\n\nexport const isEmptyObject = (obj) => {\n return obj && Object.keys(obj).length === 0 && obj.constructor === Object;\n};\n\nexport const isEmptyString = (str) => {\n return typeof str === 'string' && str.trim() === '';\n};\n","import React, { useState } from 'react';\nimport { color, Readable } from '@pie-lib/render-ui';\nimport cn from 'classnames';\nimport EditableHtml from '@pie-lib/editable-html';\nimport { withStyles } from '@material-ui/core/styles';\nimport PropTypes from 'prop-types';\nimport { extractTextFromHTML, isEmptyString } from './utils';\nconst LabelComponent = (props) => {\n const {\n classes,\n disabledLabel,\n graphHeight,\n graphWidth,\n isChartBottomLabel,\n isDefineChartBottomLabel,\n isChartLeftLabel,\n isDefineChartLeftLabel,\n placeholder,\n text,\n side,\n onChange,\n mathMlOptions = {},\n charactersLimit,\n titleHeight,\n } = props;\n const [rotatedToHorizontal, setRotatedToHorizontal] = useState(false);\n const activePlugins = [\n 'bold',\n 'italic',\n 'underline',\n 'strikethrough',\n 'math',\n // 'languageCharacters'\n ];\n\n const isChart = isChartBottomLabel || isChartLeftLabel || isDefineChartBottomLabel || isDefineChartLeftLabel;\n\n const chartValue = side === 'left' && isDefineChartLeftLabel && graphHeight - 220;\n const defaultStyle = {\n width: chartValue || (side === 'left' || side === 'right' ? graphHeight - 8 : graphWidth - 8),\n top:\n chartValue ||\n (isChartLeftLabel && `${graphHeight - 70}px`) ||\n (side === 'left' && `${graphHeight - 8}px`) ||\n (isChartBottomLabel && `${graphHeight - 60 + titleHeight}px`) ||\n (side === 'bottom' && `${graphHeight - 120 + titleHeight}px`) ||\n 0,\n left:\n (side === 'right' && `${graphWidth - 8}px`) ||\n ((isDefineChartLeftLabel || isDefineChartBottomLabel) && '40px') ||\n (isChartBottomLabel && '-10px') ||\n 0,\n };\n\n const rotatedStyle = {\n width: graphWidth - 8,\n top: (side === 'right' && `${graphHeight - 22}px`) || 0,\n left: 0,\n };\n\n const rotateLabel = () => !disabledLabel && (side === 'left' || side === 'right') && setRotatedToHorizontal(true);\n\n return (\n <Readable false>\n <div\n className={cn(isChart ? classes.chartLabel : classes.axisLabel, {\n [classes.rotateLeftLabel]: side === 'left' && !rotatedToHorizontal,\n [classes.rotateRightLabel]: side === 'right' && !rotatedToHorizontal,\n [classes.editLabel]: rotatedToHorizontal,\n [classes.customBottom]: isChartBottomLabel || isDefineChartBottomLabel,\n [classes.displayNone]: disabledLabel && !isChart && isEmptyString(extractTextFromHTML(text)),\n })}\n style={rotatedToHorizontal ? rotatedStyle : defaultStyle}\n onClick={rotateLabel}\n >\n {disabledLabel ? (\n <div className={classes.disabledLabel} dangerouslySetInnerHTML={{ __html: text || '' }} />\n ) : (\n <EditableHtml\n markup={text || ''}\n onChange={onChange}\n placeholder={!disabledLabel && placeholder}\n toolbarOpts={{\n position: side === 'bottom' ? 'top' : 'bottom',\n noPadding: true,\n noBorder: true,\n }}\n disableScrollbar\n activePlugins={activePlugins}\n onDone={() => setRotatedToHorizontal(false)}\n mathMlOptions={mathMlOptions}\n charactersLimit={charactersLimit}\n />\n )}\n </div>\n </Readable>\n );\n};\nLabelComponent.propTypes = {\n classes: PropTypes.object,\n disabledLabel: PropTypes.bool,\n graphHeight: PropTypes.number,\n graphWidth: PropTypes.number,\n isChartBottomLabel: PropTypes.bool,\n isDefineChartBottomLabel: PropTypes.bool,\n isChartLeftLabel: PropTypes.bool,\n isDefineChartLeftLabel: PropTypes.bool,\n placeholder: PropTypes.string,\n text: PropTypes.string,\n side: PropTypes.string,\n onChange: PropTypes.func,\n mathMlOptions: PropTypes.object,\n charactersLimit: PropTypes.number,\n titleHeight: PropTypes.number,\n};\n\nexport default withStyles((theme) => ({\n label: {\n fill: color.secondary(),\n },\n axisLabel: {\n fontSize: theme.typography.fontSize - 2,\n textAlign: 'center',\n margin: theme.spacing.unit / 2,\n padding: `${theme.spacing.unit / 2}px 0`,\n },\n chartLabel: {\n fontSize: theme.typography.fontSize + 2,\n textAlign: 'center',\n margin: theme.spacing.unit / 2,\n padding: `${theme.spacing.unit / 2}px 0`,\n },\n disabledLabel: {\n pointerEvents: 'none',\n width: '100%',\n },\n editLabel: {\n position: 'absolute',\n backgroundColor: 'white',\n borderRadius: '4px',\n boxShadow: '0px 5px 8px rgba(0, 0, 0, 0.15)',\n zIndex: 10,\n },\n rotateLeftLabel: {\n '-webkit-transform': 'rotate(-90deg)',\n transformOrigin: '0 0',\n transformStyle: 'preserve-3d',\n position: 'absolute',\n },\n rotateRightLabel: {\n '-webkit-transform': 'rotate(90deg)',\n transformOrigin: '0 0',\n transformStyle: 'preserve-3d',\n position: 'absolute',\n },\n customBottom: {\n position: 'absolute',\n },\n displayNone: {\n display: 'none',\n },\n}))(LabelComponent);\n","import React from 'react';\nimport { withStyles } from '@material-ui/core/styles';\nimport PropTypes from 'prop-types';\nimport { select, mouse } from 'd3-selection';\nimport cn from 'classnames';\n\nimport { color, Readable } from '@pie-lib/render-ui';\nimport EditableHtml from '@pie-lib/editable-html';\nimport { ChildrenType } from './types';\nimport { GraphPropsType } from './types';\nimport Label from './label';\nimport { extractTextFromHTML, isEmptyObject, isEmptyString } from './utils';\n\nexport class Root extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n titleHeight: 0,\n };\n }\n\n static propTypes = {\n title: PropTypes.string,\n children: ChildrenType,\n defineChart: PropTypes.bool,\n disabledLabels: PropTypes.bool,\n disabledTitle: PropTypes.bool,\n graphProps: GraphPropsType.isRequired,\n isChart: PropTypes.bool,\n labels: PropTypes.object,\n labelsPlaceholders: PropTypes.object,\n onChangeTitle: PropTypes.func,\n onMouseMove: PropTypes.func,\n classes: PropTypes.object.isRequired,\n showLabels: PropTypes.bool,\n showTitle: PropTypes.bool,\n showPixelGuides: PropTypes.bool,\n rootRef: PropTypes.func,\n onChangeLabels: PropTypes.func,\n titlePlaceholder: PropTypes.string,\n mathMlOptions: PropTypes.object,\n labelsCharactersLimit: PropTypes.number,\n };\n\n mouseMove = (g) => {\n const { graphProps, onMouseMove } = this.props;\n\n if (!onMouseMove) {\n return;\n }\n\n const { scale, snap } = graphProps;\n const coords = mouse(g._groups[0][0]);\n const x = scale.x.invert(coords[0]);\n const y = scale.y.invert(coords[1]);\n\n const snapped = {\n x: snap.x(x),\n y: snap.y(y),\n };\n\n onMouseMove(snapped);\n };\n\n componentDidMount() {\n const g = select(this.g);\n g.on('mousemove', this.mouseMove.bind(this, g));\n this.measureTitleHeight();\n }\n\n componentWillUnmount() {\n const g = select(this.g);\n g.on('mousemove', null);\n }\n\n componentDidUpdate(prevProps) {\n if (prevProps.title !== this.props.title) {\n this.measureTitleHeight();\n }\n }\n\n onChangeLabel = (newValue, side) => {\n const { labels, onChangeLabels, isChart } = this.props;\n\n if (!onChangeLabels) {\n return;\n }\n\n if (isChart) {\n if (side === 'left') {\n onChangeLabels('range', newValue);\n } else {\n onChangeLabels('domain', newValue);\n }\n\n return;\n }\n\n onChangeLabels({\n ...labels,\n [side]: newValue,\n });\n };\n\n measureTitleHeight = () => {\n const titleElement = this.titleRef;\n if (titleElement) {\n const titleHeight = titleElement.clientHeight;\n this.setState({ titleHeight, prevTitle: this.props.title });\n }\n };\n\n handleKeyDown = () => {\n setTimeout(this.measureTitleHeight, 0);\n };\n\n render() {\n const {\n disabledTitle,\n disabledLabels,\n labels,\n labelsPlaceholders,\n titlePlaceholder,\n graphProps,\n children,\n classes,\n defineChart,\n onChangeTitle,\n isChart,\n showLabels,\n showPixelGuides,\n showTitle,\n title,\n rootRef,\n mathMlOptions = {},\n labelsCharactersLimit,\n } = this.props;\n const {\n size: { width = 500, height = 500 },\n domain,\n range,\n } = graphProps;\n\n const topPadding = 40;\n const leftPadding = isEmptyString(extractTextFromHTML(labels?.left)) && isEmptyObject(labelsPlaceholders) ? 48 : 70;\n const rightPadding =\n isEmptyString(extractTextFromHTML(labels?.right)) && isEmptyObject(labelsPlaceholders) ? 48 : 70;\n const finalWidth = width + leftPadding + rightPadding + (domain.padding || 0) * 2;\n const finalHeight = height + topPadding * 2 + (range.padding || 0) * 2;\n\n const activeTitlePlugins = [\n 'bold',\n 'italic',\n 'underline',\n 'superscript',\n 'subscript',\n 'strikethrough',\n 'math',\n // 'languageCharacters'\n ];\n\n const actualHeight = defineChart && showPixelGuides ? height - 160 : height;\n const nbOfVerticalLines = parseInt(width / 100);\n const nbOfHorizontalLines = parseInt(actualHeight / 100);\n const sideGridlinesPadding = parseInt(actualHeight % 100);\n const { titleHeight } = this.state;\n return (\n <div className={classes.root}>\n {showPixelGuides && (\n <div className={classes.topPixelGuides} style={{ marginLeft: isChart ? 80 : showLabels ? 30 : 10 }}>\n {[...Array(nbOfVerticalLines + 1).keys()].map((value) => (\n <Readable false key={`top-guide-${value}`}>\n <div className={classes.topPixelIndicator}>\n <div>{value * 100}px</div>\n <div>|</div>\n </div>\n </Readable>\n ))}\n </div>\n )}\n {showTitle &&\n (disabledTitle ? (\n <div\n ref={(r) => (this.titleRef = r)}\n style={{\n ...(isChart && { width: finalWidth }),\n ...(isEmptyString(extractTextFromHTML(title)) && { display: 'none' }),\n }}\n className={cn(isChart ? classes.chartTitle : classes.graphTitle, classes.disabledTitle)}\n dangerouslySetInnerHTML={{ __html: title || '' }}\n />\n ) : (\n <div ref={(r) => (this.titleRef = r)}>\n <EditableHtml\n style={\n isChart && {\n width: finalWidth,\n }\n }\n className={cn(\n { [classes.rightMargin]: showPixelGuides },\n isChart ? classes.chartTitle : classes.graphTitle,\n )}\n markup={title || ''}\n onChange={onChangeTitle}\n placeholder={\n (defineChart && titlePlaceholder) || (!disabledTitle && 'Click here to add a title for this graph')\n }\n toolbarOpts={{ noPadding: true, noBorder: true }}\n activePlugins={activeTitlePlugins}\n disableScrollbar\n onKeyDown={this.handleKeyDown}\n />\n </div>\n ))}\n {showLabels && !isChart && (\n <Label\n side=\"top\"\n text={labels.top}\n disabledLabel={disabledLabels}\n placeholder={labelsPlaceholders?.top}\n graphHeight={finalHeight}\n graphWidth={finalWidth}\n onChange={(value) => this.onChangeLabel(value, 'top')}\n mathMlOptions={mathMlOptions}\n charactersLimit={labelsCharactersLimit}\n />\n )}\n <div className={classes.wrapper}>\n {showLabels && (\n <Label\n side=\"left\"\n text={labels.left}\n disabledLabel={disabledLabels}\n placeholder={labelsPlaceholders?.left}\n graphHeight={finalHeight}\n graphWidth={finalWidth}\n isChartLeftLabel={isChart && !defineChart}\n isDefineChartLeftLabel={isChart && defineChart}\n onChange={(value) => this.onChangeLabel(value, 'left')}\n mathMlOptions={mathMlOptions}\n charactersLimit={labelsCharactersLimit}\n />\n )}\n <svg width={finalWidth} height={finalHeight} className={defineChart ? classes.defineChart : classes.chart}>\n <g\n ref={(r) => {\n this.g = r;\n if (rootRef) {\n rootRef(r);\n }\n }}\n className={classes.graphBox}\n transform={`translate(${leftPadding + (domain.padding || 0)}, ${topPadding + (range.padding || 0)})`}\n >\n {children}\n </g>\n </svg>\n {showLabels && !isChart && (\n <Label\n side=\"right\"\n text={labels.right}\n disabledLabel={disabledLabels}\n placeholder={labelsPlaceholders?.right}\n graphHeight={finalHeight}\n graphWidth={finalWidth}\n onChange={(value) => this.onChangeLabel(value, 'right')}\n mathMlOptions={mathMlOptions}\n charactersLimit={labelsCharactersLimit}\n />\n )}\n {showPixelGuides && (\n <div\n className={classes.sidePixelGuides}\n style={{\n paddingTop: sideGridlinesPadding,\n marginTop: 31,\n }}\n >\n {[...Array(nbOfHorizontalLines + 1).keys()].reverse().map((value) => (\n <Readable false key={`top-guide-${value}`}>\n <div className={classes.sidePixelIndicator}>━ {value * 100}px</div>\n </Readable>\n ))}\n </div>\n )}\n </div>\n {showLabels && (\n <Label\n side=\"bottom\"\n text={labels.bottom}\n disabledLabel={disabledLabels}\n placeholder={labelsPlaceholders?.bottom}\n graphHeight={finalHeight}\n graphWidth={finalWidth}\n titleHeight={titleHeight}\n isChartBottomLabel={isChart && !defineChart}\n isDefineChartBottomLabel={isChart && defineChart}\n onChange={(value) => this.onChangeLabel(value, 'bottom')}\n mathMlOptions={mathMlOptions}\n charactersLimit={labelsCharactersLimit}\n />\n )}\n </div>\n );\n }\n}\n\n// use default color theme style to avoid color contrast issues\nconst styles = (theme) => ({\n root: {\n border: `solid 1px ${color.primaryLight()}`,\n color: color.defaults.TEXT,\n backgroundColor: theme.palette.common.white,\n touchAction: 'none',\n position: 'relative',\n boxSizing: 'unset', // to override the default border-box in IBX that breaks the component width layout\n },\n wrapper: {\n display: 'flex',\n position: 'relative',\n },\n svg: {},\n defineChart: {\n paddingLeft: '50px',\n overflow: 'visible',\n },\n chart: {\n overflow: 'visible',\n },\n graphBox: {\n cursor: 'pointer',\n userSelect: 'none',\n },\n graphTitle: {\n color: color.defaults.TEXT,\n fontSize: theme.typography.fontSize + 2,\n padding: `${theme.spacing.unit * 1.5}px ${theme.spacing.unit / 2}px 0`,\n textAlign: 'center',\n },\n chartTitle: {\n color: color.defaults.TEXT,\n fontSize: theme.typography.fontSize + 4,\n padding: `${theme.spacing.unit * 1.5}px ${theme.spacing.unit / 2}px 0`,\n textAlign: 'center',\n },\n disabledTitle: {\n pointerEvents: 'none',\n },\n rightMargin: {\n marginRight: '74px',\n },\n topPixelGuides: {\n display: 'flex',\n paddingTop: '6px',\n },\n topPixelIndicator: {\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n width: '100px',\n pointerEvents: 'none',\n userSelect: 'none',\n },\n sidePixelGuides: {\n width: '70px',\n display: 'flex',\n flexDirection: 'column',\n marginRight: '6px',\n },\n sidePixelIndicator: {\n textAlign: 'right',\n height: '20px',\n pointerEvents: 'none',\n userSelect: 'none',\n\n '&:not(:last-child)': {\n marginBottom: '80px',\n },\n },\n});\n\nexport default withStyles(styles)(Root);\n","import Draggable, { DraggableCore } from 'react-draggable';\n\nexport default class LocalDraggable extends Draggable {\n componentWillReceiveProps(next) {\n super.componentWillReceiveProps(next);\n //Remove the x/y state as these values have now been updated and will come through as props.\n this.setState({ x: 0, y: 0 });\n }\n}\n\nexport { DraggableCore };\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { GraphPropsType } from './types';\nimport { DraggableCore } from './draggable';\nimport debug from 'debug';\nimport * as utils from './utils';\nimport isFunction from 'lodash/isFunction';\nimport invariant from 'invariant';\nimport { clientPoint } from 'd3-selection';\n\nconst log = debug('pie-lib:plot:grid-draggable');\n\nexport const deltaFn = (scale, snap, val) => (delta) => {\n const normalized = delta + scale(0);\n const inverted = scale.invert(normalized);\n\n const fixDecimalsArithmetic = (snap(val + inverted).toFixed(4) * 1000) / 1000;\n\n return fixDecimalsArithmetic;\n};\n\n/**\n * Creates a Component that is draggable, within a bounded grid.\n * @param {*} opts\n */\nexport const gridDraggable = (opts) => (Comp) => {\n invariant(\n !!opts && isFunction(opts.fromDelta) && isFunction(opts.bounds) && isFunction(opts.anchorPoint),\n 'You must supply an object with: { anchorPoint: Function, fromDelta: Function, bounds: Function }',\n );\n return class GridDraggable extends React.Component {\n static propTypes = {\n disabled: PropTypes.bool,\n onDragStart: PropTypes.func,\n onDrag: PropTypes.func,\n onDragStop: PropTypes.func,\n onClick: PropTypes.func,\n onMove: PropTypes.func,\n graphProps: GraphPropsType.isRequired,\n };\n grid = () => {\n const { graphProps } = this.props;\n const { scale, domain, range } = graphProps;\n return {\n x: scale.x(domain.step) - scale.x(0),\n y: scale.y(range.step) - scale.y(0),\n };\n };\n onStart = (e) => {\n const { onDragStart } = this.props;\n if (document.activeElement) {\n document.activeElement.blur();\n }\n this.setState({ startX: e.clientX, startY: e.clientY });\n if (onDragStart) {\n onDragStart();\n }\n };\n position = () => {\n const { x, y } = opts.anchorPoint(this.props);\n const { graphProps } = this.props;\n const { scale, snap } = graphProps;\n\n return {\n anchorPoint: {\n x,\n y,\n },\n x: deltaFn(scale.x, snap.x, x),\n y: deltaFn(scale.y, snap.y, y),\n };\n };\n\n tiny = (key, event) => {\n const K = key.toUpperCase();\n const end = event[`client${K}`];\n const start = this.state[`start${K}`];\n const delta = Math.abs(end - start);\n const out = delta < Math.abs(this.grid()[key]) / 10;\n log('[tiny] key: ', key, 'delta: ', delta, 'out: ', out);\n return out;\n };\n\n getScaledBounds = () => {\n const bounds = opts.bounds(this.props, this.props.graphProps);\n log('bounds: ', bounds);\n const grid = this.grid();\n\n const scaled = {\n left: (bounds.left / grid.interval) * grid.x,\n right: (bounds.right / grid.interval) * grid.x,\n top: (bounds.top / grid.interval) * grid.y,\n bottom: (bounds.bottom / grid.interval) * grid.y,\n };\n log('[getScaledBounds]: ', scaled);\n return scaled;\n };\n\n /**\n * Retrieves the coordinates of a mouse or touch event relative to an SVG element.\n * This method has been overwritten from the d3-selection library's clientPoint to handle touch events and improve clarity.\n * @param {Element} node - The SVG element.\n * @param {Event} event - The mouse or touch event.\n * @returns {Array} - An array containing the coordinates [x, y] relative to the SVG element.\n */\n getClientPoint = (node, event) => {\n if (!node || !event) {\n return null;\n }\n const svg = node.ownerSVGElement || node;\n\n if (svg && svg.createSVGPoint) {\n let point = svg.createSVGPoint();\n // Check if it's a touch event and use the first touch point\n if (event.touches && event.touches.length > 0) {\n const touch = event.touches[0];\n point.x = touch.clientX;\n point.y = touch.clientY;\n } else {\n // Fall back to mouse event properties\n point.x = event.clientX;\n point.y = event.clientY;\n }\n if (node.getScreenCTM) {\n point = point.matrixTransform(node.getScreenCTM().inverse());\n return [point.x, point.y];\n } else {\n return null;\n }\n }\n\n const rect = node.getBoundingClientRect();\n if (rect) {\n return [event.clientX - rect.left - node.clientLeft, event.clientY - rect.top - node.clientTop];\n } else {\n return null;\n }\n };\n\n skipDragOutsideOfBounds = (dd, e, graphProps) => {\n // Ignore drag movement outside of the domain and range.\n const rootNode = graphProps.getRootNode();\n const clientPoint = this.getClientPoint(rootNode, e);\n\n if (clientPoint === null) {\n return true; // Indicate that the drag is outside of bounds\n }\n\n const [rawX, rawY] = clientPoint;\n const { scale, domain, range } = graphProps;\n let x = scale.x.invert(rawX);\n let y = scale.y.invert(rawY);\n\n const xOutside = (dd.deltaX > 0 && x < domain.min) || (dd.deltaX < 0 && x > domain.max);\n const yOutside = (dd.deltaY > 0 && y > range.max) || (dd.deltaY < 0 && y < range.min);\n return xOutside || yOutside;\n };\n\n onDrag = (e, dd) => {\n const { onDrag, graphProps } = this.props;\n\n if (!onDrag) {\n return;\n }\n\n const bounds = this.getScaledBounds();\n\n if (dd.deltaX < 0 && dd.deltaX < bounds.left) {\n return;\n }\n\n if (dd.deltaX > 0 && dd.deltaX > bounds.right) {\n return;\n }\n\n if (dd.deltaY < 0 && dd.deltaY < bounds.top) {\n return;\n }\n\n if (dd.deltaY > 0 && dd.deltaY > bounds.bottom) {\n return;\n }\n\n if (this.skipDragOutsideOfBounds(dd, e, graphProps)) {\n return;\n }\n\n const dragArg = this.applyDelta({ x: dd.deltaX, y: dd.deltaY });\n\n if (dragArg !== undefined || dragArg !== null) {\n onDrag(dragArg);\n }\n };\n\n getDelta = (point) => {\n const pos = this.position();\n\n const p = {\n x: pos.x(point.x),\n y: pos.y(point.y),\n };\n\n return utils.getDelta(pos.anchorPoint, p);\n };\n\n applyDelta = (point) => {\n const delta = this.getDelta(point);\n log('[applyDelta] delta:', delta);\n return opts.fromDelta(this.props, delta);\n };\n\n onStop = (e, dd) => {\n log('[onStop] dd:', dd);\n const { onDragStop, onClick } = this.props;\n\n if (onDragStop) {\n onDragStop();\n }\n\n log('[onStop] lastX/Y: ', dd.lastX, dd.lastY);\n const isClick = this.tiny('x', e) && this.tiny('y', e);\n\n if (isClick) {\n if (onClick) {\n log('call onClick');\n this.setState({ startX: null });\n const { graphProps } = this.props;\n const { scale, snap } = graphProps;\n const [rawX, rawY] = clientPoint(e.target, e);\n let x = scale.x.invert(rawX);\n let y = scale.y.invert(rawY);\n x = snap.x(x);\n y = snap.y(y);\n onClick({ x, y });\n return false;\n }\n }\n\n this.setState({ startX: null, startY: null });\n // return false to prevent state updates in the underlying draggable - a move will have triggered an update already.\n return false;\n };\n\n render() {\n const { disabled, ...rest } = this.props;\n const grid = this.grid();\n\n // prevent the text select icon from rendering.\n const onMouseDown = (e) => e.nativeEvent.preventDefault();\n\n /**\n * TODO: This shouldnt be necessary, we should be able to use the r-d classnames.\n * But they aren't being unset. If we continue with this lib, we'll have to fix this.\n */\n const isDragging = this.state ? !!this.state.startX : false;\n\n return (\n <DraggableCore\n disabled={disabled}\n onMouseDown={onMouseDown}\n onStart={this.onStart}\n onDrag={this.onDrag}\n onStop={this.onStop}\n axis={opts.axis || 'both'}\n grid={[grid.x, grid.y]}\n >\n <Comp {...rest} disabled={disabled} isDragging={isDragging} />\n </DraggableCore>\n );\n }\n };\n};\n","import { xy } from './utils';\nimport Point from '@mapbox/point-geometry';\nimport debug from 'debug';\nconst log = debug('pie-lib:plot:trig');\n\nexport const toDegrees = (radians) => radians * (180 / Math.PI);\nexport const toRadians = (degrees) => degrees * (Math.PI / 180);\n/**\n * return angle in radians between 2 points using counting degrees counter clockwise\n *\n * 0,0 + 1,1 = 45 in radians\n * 1,1 + 0,0 = 45?\n * @param {Point} a\n * @param {Point} b\n */\nexport const angle = (a, b) => {\n const vd = b.y - a.y;\n const hd = b.x - a.x;\n log(a, b, 'vd: ', vd, 'hd: ', hd);\n const radians = Math.atan2(vd, hd);\n return radians < 0 ? radians + Math.PI * 2 : radians;\n};\n\nconst NINETY = Math.PI / 2;\nconst ONE_EIGHTY = Math.PI;\nconst TWO_SEVENTY = ONE_EIGHTY + NINETY;\n\nexport const acuteXAngle = (a) => {\n log(toDegrees(a));\n\n if (a < NINETY) {\n return a;\n }\n\n if (a < ONE_EIGHTY) {\n return Math.abs(ONE_EIGHTY - a);\n }\n\n if (a < TWO_SEVENTY) {\n return Math.abs(ONE_EIGHTY - a);\n }\n\n return Math.abs(Math.PI * 2 - a);\n};\n\nexport const acuteYAngle = (a) => NINETY - acuteXAngle(a);\n\nexport const hypotenuse = (a, alpha) => {\n const out = Math.abs(a / Math.sin(alpha));\n\n return out;\n};\n\n/**\n * return 2 edge points for a,b within domain + range.\n * - one edge is from following a -> b to the bounds\n * - one edge is from following b -> a to the bounds\n * @param {{min: number, max: number}} domain\n * @param {{min: number, max: number}} range\n * @param {{x: number, y: number}} a\n * @param {{x: number, y: number}} b\n * @returns [{x: number, y: number}, {x: number, y: number}]\n */\nexport const edges = (domain, range) => (a, b) => {\n // const xDest =\n const destX = a.x < b.x ? domain.max : domain.min;\n const destY = a.y < b.y ? range.max : range.min;\n const aToB = diffEdge(xy(destX, destY), a, b);\n\n const dX = b.x < a.x ? domain.max : domain.min;\n const dY = b.y < a.y ? range.max : range.min;\n const bToA = diffEdge(xy(dX, dY), b, a);\n return [aToB, bToA];\n};\n\n/** get length of side A of a triangle from H and angle Alpha */\nexport const getOpposingSide = (hyp, angle) => {\n log('[getOpposingSide] hyp: ', hyp, 'angle:', angle);\n return Math.abs(hyp * Math.sin(angle));\n};\n\nconst getShortestSide = (xh, yh) => {\n if (Number.isFinite(xh) && Number.isFinite(yh)) {\n if (xh === 0 && yh > 0) {\n return 'y';\n }\n if (yh === 0 && xh > 0) {\n return 'x';\n }\n return xh < yh ? 'x' : 'y';\n }\n if (isNaN(xh) && !isNaN(yh)) {\n return 'y';\n }\n if (!isNaN(xh) && isNaN(yh)) {\n return 'x';\n }\n if (xh === Infinity) {\n return 'y';\n }\n if (yh === Infinity) {\n return 'x';\n }\n\n // eslint-disable-next-line no-console\n console.warn('hypotenuse - which is shorter? x:', xh, 'y:', yh);\n};\n/**\n * return the difference between bounds and a as a Point\n * @param {*} bounds\n */\nexport const diffEdge = (bounds, a, b) => {\n let l = log.enabled ? log.bind(log, `diffEdge: [${a.x},${a.y} -> ${b.x},${b.y}]`) : () => {};\n const xRadians = angle(a, b);\n l('x angle', toDegrees(xRadians));\n const yRadians = Math.abs(xRadians - toRadians(90));\n l('y angle', toDegrees(yRadians));\n const xSide = Math.abs(a.x - bounds.x);\n\n /**\n * Draw 2 triangles:\n * 1 with a horizontal line from a to the graph x edge\n * 1 with a vertical line from a to the graph y edge\n * Calculate the hypotenuse for both, whichever is shorter\n * indicates that we should use that triangle to get the edge point.\n */\n const xH = hypotenuse(xSide, yRadians);\n\n const ySide = Math.abs(a.y - bounds.y);\n const yH = hypotenuse(ySide, xRadians);\n\n l('x: side', xSide, 'h:', xH);\n l('y: side', ySide, 'h:', yH);\n const side = getShortestSide(xH, yH);\n\n if (side !== 'x' && side !== 'y') {\n throw new Error('Cant decide which hypotenuse to use');\n }\n const point =\n side === 'x' ? new Point(xSide, getOpposingSide(xH, xRadians)) : new Point(getOpposingSide(yH, yRadians), ySide);\n\n l('point:', point);\n const multiplier = new Point(b.x < a.x ? -1 : 1, b.y < a.y ? -1 : 1);\n l('multiplier:', multiplier);\n const out = point.multByPoint(multiplier);\n l('out:', out);\n const normalized = out.add(new Point(a.x, a.y));\n l('normalized:', normalized);\n return normalized;\n};\n","import invariant from 'invariant';\nimport { snapTo } from './utils';\nimport { scaleLinear } from 'd3-scale';\n\nconst createSnapMinAndMax = ({ min, max, step }) => {\n // for graphing, if step is a value with decimals, we have to calculate the min & max for the grid taking in consideration that 0 has to be exactly in the middle\n // for example, if min: -5 & max: 5 & step: 0.75, in order to keep 0 in the middle we have to set min: -4.5 & max: 4.5\n\n return {\n step,\n min: parseInt(min / step) * step,\n max: parseInt(max / step) * step,\n };\n};\n\nexport const create = (domain, range, size, getRootNode) => {\n invariant(domain.min < domain.max, 'domain: min must be less than max');\n invariant(range.min < range.max, 'range: min must be less than max');\n\n const domainMinMax = createSnapMinAndMax(domain);\n const rangeMinMax = createSnapMinAndMax(range);\n\n const scale = {\n x: scaleLinear()\n .domain([domain.min, domain.max])\n .range([0, size.width]),\n y: scaleLinear()\n .domain([range.max, range.min])\n .range([0, size.height]),\n };\n\n const snap = {\n x: snapTo.bind(null, domainMinMax.min, domainMinMax.max, domainMinMax.step),\n y: snapTo.bind(null, rangeMinMax.min, rangeMinMax.max, rangeMinMax.step),\n };\n\n return { scale, snap, domain, range, size, getRootNode };\n};\n"],"names":["BaseDomainRangeType","min","PropTypes","number","isRequired","max","step","DomainType","shape","RangeType","SizeType","width","height","PointType","x","y","ChildrenType","oneOfType","arrayOf","node","ScaleType","func","SnapType","GraphPropsType","scale","snap","domain","range","size","xy","buildSizeArray","padding","Number","isFinite","Math","invariant","half","round","tickCount","abs","getInterval","ticks","major","minor","Error","distance","minorTicks","normalizedMajor","isNaN","divider","raw","parseFloat","toFixed","mkRange","interval","splice","length","snapTo","value","rng","filter","v","reduce","prev","curr","currentDistance","previousDistance","buildTickModel","scaleFn","map","r","index","isMajor","polygonToArea","points","h","head","area","left","top","bottom","right","tail","a","p","lineToArea","from","to","bounds","point","o","Point","getDelta","sub","bandKey","d","label","isDomainRangeEqual","graphProps","nextGraphProps","isEqual","findLongestWord","longestWord","replace","split","sort","b","amountToIncreaseWidth","extractTextFromHTML","htmlString","parser","DOMParser","doc","parseFromString","body","textContent","isEmptyObject","obj","Object","keys","constructor","isEmptyString","str","trim","LabelComponent","props","classes","disabledLabel","graphHeight","graphWidth","isChartBottomLabel","isDefineChartBottomLabel","isChartLeftLabel","isDefineChartLeftLabel","placeholder","text","side","onChange","mathMlOptions","charactersLimit","titleHeight","rotatedToHorizontal","setRotatedToHorizontal","useState","activePlugins","isChart","chartValue","defaultStyle","rotatedStyle","rotateLabel","cn","chartLabel","axisLabel","rotateLeftLabel","rotateRightLabel","editLabel","customBottom","displayNone","__html","position","noPadding","noBorder","propTypes","object","bool","string","withStyles","theme","fill","color","secondary","fontSize","typography","textAlign","margin","spacing","unit","pointerEvents","backgroundColor","borderRadius","boxShadow","zIndex","transformOrigin","transformStyle","display","Root","React","Component","mouseMove","g","onMouseMove","coords","mouse","_groups","invert","snapped","onChangeLabel","newValue","labels","onChangeLabels","measureTitleHeight","titleElement","titleRef","clientHeight","setState","prevTitle","title","handleKeyDown","setTimeout","state","componentDidMount","select","on","bind","componentWillUnmount","componentDidUpdate","prevProps","render","disabledTitle","disabledLabels","labelsPlaceholders","titlePlaceholder","children","defineChart","onChangeTitle","showLabels","showPixelGuides","showTitle","rootRef","labelsCharactersLimit","topPadding","leftPadding","rightPadding","finalWidth","finalHeight","activeTitlePlugins","actualHeight","nbOfVerticalLines","parseInt","nbOfHorizontalLines","sideGridlinesPadding","root","topPixelGuides","marginLeft","Array","topPixelIndicator","chartTitle","graphTitle","rightMargin","wrapper","chart","graphBox","sidePixelGuides","paddingTop","marginTop","reverse","sidePixelIndicator","styles","border","primaryLight","defaults","TEXT","palette","common","white","touchAction","boxSizing","svg","paddingLeft","overflow","cursor","userSelect","marginRight","flexDirection","alignItems","marginBottom","LocalDraggable","Draggable","componentWillReceiveProps","next","log","debug","deltaFn","val","delta","normalized","inverted","fixDecimalsArithmetic","gridDraggable","opts","Comp","isFunction","fromDelta","anchorPoint","GridDraggable","grid","onStart","e","onDragStart","document","activeElement","blur","startX","clientX","startY","clientY","tiny","key","event","K","toUpperCase","end","start","out","getScaledBounds","scaled","getClientPoint","ownerSVGElement","createSVGPoint","touches","touch","getScreenCTM","matrixTransform","inverse","rect","getBoundingClientRect","clientLeft","clientTop","skipDragOutsideOfBounds","dd","rootNode","getRootNode","clientPoint","rawX","rawY","xOutside","deltaX","yOutside","deltaY","onDrag","dragArg","applyDelta","undefined","pos","utils","onStop","onDragStop","onClick","lastX","lastY","isClick","target","disabled","rest","onMouseDown","nativeEvent","preventDefault","isDragging","axis","onMove","toDegrees","radians","PI","toRadians","degrees","angle","vd","hd","atan2","NINETY","ONE_EIGHTY","TWO_SEVENTY","acuteXAngle","acuteYAngle","hypotenuse","alpha","sin","edges","destX","destY","aToB","diffEdge","dX","dY","bToA","getOpposingSide","hyp","getShortestSide","xh","yh","Infinity","console","warn","l","enabled","xRadians","yRadians","xSide","xH","ySide","yH","multiplier","multByPoint","add","createSnapMinAndMax","create","domainMinMax","rangeMinMax","scaleLinear"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"publishConfig": {
|
|
4
4
|
"access": "public"
|
|
5
5
|
},
|
|
6
|
-
"version": "2.
|
|
6
|
+
"version": "2.24.1",
|
|
7
7
|
"description": "Some underlying components for building charts/graphs",
|
|
8
8
|
"keywords": [
|
|
9
9
|
"react",
|
|
@@ -18,8 +18,8 @@
|
|
|
18
18
|
"dependencies": {
|
|
19
19
|
"@mapbox/point-geometry": "^0.1.0",
|
|
20
20
|
"@material-ui/core": "^3.8.3",
|
|
21
|
-
"@pie-lib/editable-html": "^11.
|
|
22
|
-
"@pie-lib/render-ui": "^4.
|
|
21
|
+
"@pie-lib/editable-html": "^11.18.1",
|
|
22
|
+
"@pie-lib/render-ui": "^4.32.1",
|
|
23
23
|
"@vx/axis": "^0.0.183",
|
|
24
24
|
"@vx/event": "^0.0.182",
|
|
25
25
|
"@vx/grid": "^0.0.183",
|
|
@@ -41,6 +41,13 @@
|
|
|
41
41
|
"peerDependencies": {
|
|
42
42
|
"react": "^16.8.1"
|
|
43
43
|
},
|
|
44
|
-
"gitHead": "
|
|
45
|
-
"scripts": {}
|
|
44
|
+
"gitHead": "be0b7951407a81d53b8b8b4861b8407b31728809",
|
|
45
|
+
"scripts": {},
|
|
46
|
+
"exports": {
|
|
47
|
+
".": {
|
|
48
|
+
"import": "./esm/index.js",
|
|
49
|
+
"require": "./lib/index.js",
|
|
50
|
+
"default": "./esm/index.js"
|
|
51
|
+
}
|
|
52
|
+
}
|
|
46
53
|
}
|