@pie-lib/plot 2.25.0 → 2.27.0-mui-update.0

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/lib/root.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/root.jsx"],"names":["Root","props","g","graphProps","onMouseMove","scale","snap","coords","_groups","x","invert","y","snapped","newValue","side","labels","onChangeLabels","isChart","titleElement","titleRef","titleHeight","clientHeight","setState","prevTitle","title","resizeObserver","ResizeObserver","setupVisibilityObserver","setTimeout","measureTitleHeight","entries","entry","contentRect","width","height","observe","disconnect","state","on","mouseMove","bind","cleanupVisibilityObserver","prevProps","disabledTitle","disabledLabels","labelsPlaceholders","titlePlaceholder","children","classes","defineChart","onChangeTitle","showLabels","showPixelGuides","showTitle","rootRef","mathMlOptions","labelsCharactersLimit","size","domain","range","topPadding","leftPadding","left","rightPadding","right","finalWidth","padding","finalHeight","activeTitlePlugins","actualHeight","nbOfVerticalLines","parseInt","nbOfHorizontalLines","sideGridlinesPadding","root","topPixelGuides","marginLeft","Array","keys","map","value","topPixelIndicator","r","display","chartTitle","graphTitle","__html","rightMargin","noPadding","noBorder","handleKeyDown","top","onChangeLabel","wrapper","chart","graphBox","sidePixelGuides","paddingTop","marginTop","reverse","sidePixelIndicator","bottom","React","Component","PropTypes","string","ChildrenType","bool","GraphPropsType","isRequired","object","func","number","styles","theme","border","color","primaryLight","defaults","TEXT","backgroundColor","palette","common","white","touchAction","position","boxSizing","svg","paddingLeft","overflow","cursor","userSelect","fontSize","typography","spacing","unit","textAlign","pointerEvents","marginRight","flexDirection","alignItems","marginBottom"],"mappings":"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","sourcesContent":["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 this.resizeObserver = null;\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 this.setupVisibilityObserver();\n }\n\n componentWillUnmount() {\n const g = select(this.g);\n g.on('mousemove', null);\n this.cleanupVisibilityObserver();\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 if (!this.resizeObserver && typeof ResizeObserver !== 'undefined') {\n this.setupVisibilityObserver();\n }\n }\n };\n\n handleKeyDown = () => {\n setTimeout(() => {\n this.measureTitleHeight();\n }, 0);\n };\n\n // handle edge case where chart is hidden with display:none and then shown with display:block\n setupVisibilityObserver = () => {\n if (typeof ResizeObserver !== 'undefined' && this.titleRef) {\n this.resizeObserver = new ResizeObserver((entries) => {\n for (let entry of entries) {\n const { width, height } = entry.contentRect;\n // trigger if element becomes visible and we haven't measured this height yet\n if (width > 0 && height > 0) {\n setTimeout(() => {\n this.measureTitleHeight();\n }, 10);\n break;\n }\n }\n });\n\n this.resizeObserver.observe(this.titleRef);\n }\n };\n\n cleanupVisibilityObserver = () => {\n if (this.resizeObserver) {\n this.resizeObserver.disconnect();\n this.resizeObserver = null;\n }\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"],"file":"root.js"}
1
+ {"version":3,"file":"root.js","names":["_react","_interopRequireDefault","require","_styles","_propTypes","_d3Selection","_classnames","_renderUi","_editableHtml","_types","_label","_utils","_createForOfIteratorHelper","r","e","t","Symbol","iterator","Array","isArray","_unsupportedIterableToArray","length","_n","F","s","n","done","value","f","TypeError","o","a","u","call","next","_arrayLikeToArray","toString","slice","constructor","name","from","test","ownKeys","Object","keys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","_callSuper","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","Boolean","prototype","valueOf","StyledRoot","styled","_ref","theme","border","concat","color","primaryLight","defaults","TEXT","backgroundColor","palette","common","white","touchAction","position","boxSizing","Wrapper","display","DefineChartSvg","paddingLeft","overflow","ChartSvg","GraphBox","cursor","userSelect","GraphTitle","_ref2","fontSize","typography","padding","spacing","textAlign","pointerEvents","marginRight","ChartTitle","_ref3","TopPixelGuides","paddingTop","TopPixelIndicator","flexDirection","alignItems","width","SidePixelGuides","SidePixelIndicator","height","marginBottom","Root","exports","_React$Component","props","_this","_classCallCheck2","g","_this$props","graphProps","onMouseMove","scale","snap","coords","mouse","_groups","x","invert","y","snapped","newValue","side","_this$props2","labels","onChangeLabels","isChart","titleElement","titleRef","titleHeight","clientHeight","setState","prevTitle","title","resizeObserver","ResizeObserver","setupVisibilityObserver","setTimeout","measureTitleHeight","entries","_iterator","_step","entry","_entry$contentRect","contentRect","err","observe","disconnect","state","_inherits2","_createClass2","key","componentDidMount","select","on","mouseMove","bind","componentWillUnmount","cleanupVisibilityObserver","componentDidUpdate","prevProps","render","_this2","_this$props3","disabledTitle","disabledLabels","labelsPlaceholders","titlePlaceholder","children","defineChart","onChangeTitle","showLabels","showPixelGuides","showTitle","rootRef","_this$props3$mathMlOp","mathMlOptions","labelsCharactersLimit","_graphProps$size","size","_graphProps$size$widt","_graphProps$size$heig","domain","range","topPadding","leftPadding","isEmptyString","extractTextFromHTML","left","isEmptyObject","rightPadding","right","finalWidth","finalHeight","activeTitlePlugins","actualHeight","nbOfVerticalLines","parseInt","nbOfHorizontalLines","sideGridlinesPadding","createElement","style","marginLeft","_toConsumableArray2","map","Readable","ref","className","dangerouslySetInnerHTML","__html","cn","rightMargin","markup","onChange","placeholder","toolbarOpts","noPadding","noBorder","activePlugins","disableScrollbar","onKeyDown","handleKeyDown","text","top","disabledLabel","graphHeight","graphWidth","onChangeLabel","charactersLimit","isChartLeftLabel","isDefineChartLeftLabel","transform","marginTop","reverse","bottom","isChartBottomLabel","isDefineChartBottomLabel","React","Component","PropTypes","string","ChildrenType","bool","GraphPropsType","isRequired","object","func","number","_default"],"sources":["../src/root.jsx"],"sourcesContent":["import React from 'react';\nimport { styled } from '@mui/material/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\nconst StyledRoot = styled('div')(({ theme }) => ({\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\nconst Wrapper = styled('div')({\n display: 'flex',\n position: 'relative',\n});\n\nconst DefineChartSvg = styled('svg')({\n paddingLeft: '50px',\n overflow: 'visible',\n});\n\nconst ChartSvg = styled('svg')({\n overflow: 'visible',\n});\n\nconst GraphBox = styled('g')({\n cursor: 'pointer',\n userSelect: 'none',\n});\n\nconst GraphTitle = styled('div')(({ theme }) => ({\n color: color.defaults.TEXT,\n fontSize: theme.typography.fontSize + 2,\n padding: `${theme.spacing(1.5)} ${theme.spacing(0.5)} 0`,\n textAlign: 'center',\n '&.disabled': {\n pointerEvents: 'none',\n },\n '&.rightMargin': {\n marginRight: '74px',\n },\n}));\n\nconst ChartTitle = styled('div')(({ theme }) => ({\n color: color.defaults.TEXT,\n fontSize: theme.typography.fontSize + 4,\n padding: `${theme.spacing(1.5)} ${theme.spacing(0.5)} 0`,\n textAlign: 'center',\n '&.disabled': {\n pointerEvents: 'none',\n },\n '&.rightMargin': {\n marginRight: '74px',\n },\n}));\n\nconst TopPixelGuides = styled('div')({\n display: 'flex',\n paddingTop: '6px',\n});\n\nconst TopPixelIndicator = styled('div')({\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n width: '100px',\n pointerEvents: 'none',\n userSelect: 'none',\n});\n\nconst SidePixelGuides = styled('div')({\n width: '70px',\n display: 'flex',\n flexDirection: 'column',\n marginRight: '6px',\n});\n\nconst SidePixelIndicator = styled('div')({\n textAlign: 'right',\n height: '20px',\n pointerEvents: 'none',\n userSelect: 'none',\n '&:not(:last-child)': {\n marginBottom: '80px',\n },\n});\n\nexport class Root extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n titleHeight: 0,\n };\n this.resizeObserver = null;\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 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 this.setupVisibilityObserver();\n }\n\n componentWillUnmount() {\n const g = select(this.g);\n g.on('mousemove', null);\n this.cleanupVisibilityObserver();\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 if (!this.resizeObserver && typeof ResizeObserver !== 'undefined') {\n this.setupVisibilityObserver();\n }\n }\n };\n\n handleKeyDown = () => {\n setTimeout(() => {\n this.measureTitleHeight();\n }, 0);\n };\n\n // handle edge case where chart is hidden with display:none and then shown with display:block\n setupVisibilityObserver = () => {\n if (typeof ResizeObserver !== 'undefined' && this.titleRef) {\n this.resizeObserver = new ResizeObserver((entries) => {\n for (let entry of entries) {\n const { width, height } = entry.contentRect;\n // trigger if element becomes visible and we haven't measured this height yet\n if (width > 0 && height > 0) {\n setTimeout(() => {\n this.measureTitleHeight();\n }, 10);\n break;\n }\n }\n });\n\n this.resizeObserver.observe(this.titleRef);\n }\n };\n\n cleanupVisibilityObserver = () => {\n if (this.resizeObserver) {\n this.resizeObserver.disconnect();\n this.resizeObserver = null;\n }\n };\n\n render() {\n const {\n disabledTitle,\n disabledLabels,\n labels,\n labelsPlaceholders,\n titlePlaceholder,\n graphProps,\n children,\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 \n return (\n <StyledRoot>\n {showPixelGuides && (\n <TopPixelGuides style={{ marginLeft: isChart ? 80 : showLabels ? 30 : 10 }}>\n {[...Array(nbOfVerticalLines + 1).keys()].map((value) => (\n <Readable false key={`top-guide-${value}`}>\n <TopPixelIndicator>\n <div>{value * 100}px</div>\n <div>|</div>\n </TopPixelIndicator>\n </Readable>\n ))}\n </TopPixelGuides>\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 >\n {isChart ? (\n <ChartTitle className=\"disabled\" dangerouslySetInnerHTML={{ __html: title || '' }} />\n ) : (\n <GraphTitle className=\"disabled\" dangerouslySetInnerHTML={{ __html: title || '' }} />\n )}\n </div>\n ) : (\n <div ref={(r) => (this.titleRef = r)}>\n {isChart ? (\n <ChartTitle className={cn({ rightMargin: showPixelGuides })}>\n <EditableHtml\n style={\n isChart && {\n width: finalWidth,\n }\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 </ChartTitle>\n ) : (\n <GraphTitle className={cn({ rightMargin: showPixelGuides })}>\n <EditableHtml\n style={\n isChart && {\n width: finalWidth,\n }\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 </GraphTitle>\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 <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 {defineChart ? (\n <DefineChartSvg width={finalWidth} height={finalHeight}>\n <GraphBox\n ref={(r) => {\n this.g = r;\n if (rootRef) {\n rootRef(r);\n }\n }}\n transform={`translate(${leftPadding + (domain.padding || 0)}, ${topPadding + (range.padding || 0)})`}\n >\n {children}\n </GraphBox>\n </DefineChartSvg>\n ) : (\n <ChartSvg width={finalWidth} height={finalHeight}>\n <GraphBox\n ref={(r) => {\n this.g = r;\n if (rootRef) {\n rootRef(r);\n }\n }}\n transform={`translate(${leftPadding + (domain.padding || 0)}, ${topPadding + (range.padding || 0)})`}\n >\n {children}\n </GraphBox>\n </ChartSvg>\n )}\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 <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 <SidePixelIndicator>━ {value * 100}px</SidePixelIndicator>\n </Readable>\n ))}\n </SidePixelGuides>\n )}\n </Wrapper>\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 </StyledRoot>\n );\n }\n}\n\nexport default Root;\n"],"mappings":"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","ignoreList":[]}
package/lib/trig.js CHANGED
@@ -1,27 +1,18 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports.toRadians = exports.toDegrees = exports.hypotenuse = exports.getOpposingSide = exports.edges = exports.diffEdge = exports.angle = exports.acuteYAngle = exports.acuteXAngle = void 0;
9
-
10
8
  var _utils = require("./utils");
11
-
12
9
  var _pointGeometry = _interopRequireDefault(require("@mapbox/point-geometry"));
13
-
14
10
  var _debug = _interopRequireDefault(require("debug"));
15
-
16
11
  var log = (0, _debug["default"])('pie-lib:plot:trig');
17
-
18
- var toDegrees = function toDegrees(radians) {
12
+ var toDegrees = exports.toDegrees = function toDegrees(radians) {
19
13
  return radians * (180 / Math.PI);
20
14
  };
21
-
22
- exports.toDegrees = toDegrees;
23
-
24
- var toRadians = function toRadians(degrees) {
15
+ var toRadians = exports.toRadians = function toRadians(degrees) {
25
16
  return degrees * (Math.PI / 180);
26
17
  };
27
18
  /**
@@ -32,53 +23,37 @@ var toRadians = function toRadians(degrees) {
32
23
  * @param {Point} a
33
24
  * @param {Point} b
34
25
  */
35
-
36
-
37
- exports.toRadians = toRadians;
38
-
39
- var angle = function angle(a, b) {
26
+ var angle = exports.angle = function angle(a, b) {
40
27
  var vd = b.y - a.y;
41
28
  var hd = b.x - a.x;
42
29
  log(a, b, 'vd: ', vd, 'hd: ', hd);
43
30
  var radians = Math.atan2(vd, hd);
44
31
  return radians < 0 ? radians + Math.PI * 2 : radians;
45
32
  };
46
-
47
- exports.angle = angle;
48
33
  var NINETY = Math.PI / 2;
49
34
  var ONE_EIGHTY = Math.PI;
50
35
  var TWO_SEVENTY = ONE_EIGHTY + NINETY;
51
-
52
- var acuteXAngle = function acuteXAngle(a) {
36
+ var acuteXAngle = exports.acuteXAngle = function acuteXAngle(a) {
53
37
  log(toDegrees(a));
54
-
55
38
  if (a < NINETY) {
56
39
  return a;
57
40
  }
58
-
59
41
  if (a < ONE_EIGHTY) {
60
42
  return Math.abs(ONE_EIGHTY - a);
61
43
  }
62
-
63
44
  if (a < TWO_SEVENTY) {
64
45
  return Math.abs(ONE_EIGHTY - a);
65
46
  }
66
-
67
47
  return Math.abs(Math.PI * 2 - a);
68
48
  };
69
-
70
- exports.acuteXAngle = acuteXAngle;
71
-
72
- var acuteYAngle = function acuteYAngle(a) {
49
+ var acuteYAngle = exports.acuteYAngle = function acuteYAngle(a) {
73
50
  return NINETY - acuteXAngle(a);
74
51
  };
75
-
76
- exports.acuteYAngle = acuteYAngle;
77
-
78
- var hypotenuse = function hypotenuse(a, alpha) {
52
+ var hypotenuse = exports.hypotenuse = function hypotenuse(a, alpha) {
79
53
  var out = Math.abs(a / Math.sin(alpha));
80
54
  return out;
81
55
  };
56
+
82
57
  /**
83
58
  * return 2 edge points for a,b within domain + range.
84
59
  * - one edge is from following a -> b to the bounds
@@ -89,11 +64,7 @@ var hypotenuse = function hypotenuse(a, alpha) {
89
64
  * @param {{x: number, y: number}} b
90
65
  * @returns [{x: number, y: number}, {x: number, y: number}]
91
66
  */
92
-
93
-
94
- exports.hypotenuse = hypotenuse;
95
-
96
- var edges = function edges(domain, range) {
67
+ var edges = exports.edges = function edges(domain, range) {
97
68
  return function (a, b) {
98
69
  // const xDest =
99
70
  var destX = a.x < b.x ? domain.max : domain.min;
@@ -105,63 +76,50 @@ var edges = function edges(domain, range) {
105
76
  return [aToB, bToA];
106
77
  };
107
78
  };
108
- /** get length of side A of a triangle from H and angle Alpha */
109
79
 
110
-
111
- exports.edges = edges;
112
-
113
- var getOpposingSide = function getOpposingSide(hyp, angle) {
80
+ /** get length of side A of a triangle from H and angle Alpha */
81
+ var getOpposingSide = exports.getOpposingSide = function getOpposingSide(hyp, angle) {
114
82
  log('[getOpposingSide] hyp: ', hyp, 'angle:', angle);
115
83
  return Math.abs(hyp * Math.sin(angle));
116
84
  };
117
-
118
- exports.getOpposingSide = getOpposingSide;
119
-
120
85
  var getShortestSide = function getShortestSide(xh, yh) {
121
86
  if (Number.isFinite(xh) && Number.isFinite(yh)) {
122
87
  if (xh === 0 && yh > 0) {
123
88
  return 'y';
124
89
  }
125
-
126
90
  if (yh === 0 && xh > 0) {
127
91
  return 'x';
128
92
  }
129
-
130
93
  return xh < yh ? 'x' : 'y';
131
94
  }
132
-
133
95
  if (isNaN(xh) && !isNaN(yh)) {
134
96
  return 'y';
135
97
  }
136
-
137
98
  if (!isNaN(xh) && isNaN(yh)) {
138
99
  return 'x';
139
100
  }
140
-
141
101
  if (xh === Infinity) {
142
102
  return 'y';
143
103
  }
144
-
145
104
  if (yh === Infinity) {
146
105
  return 'x';
147
- } // eslint-disable-next-line no-console
148
-
106
+ }
149
107
 
108
+ // eslint-disable-next-line no-console
150
109
  console.warn('hypotenuse - which is shorter? x:', xh, 'y:', yh);
151
110
  };
152
111
  /**
153
112
  * return the difference between bounds and a as a Point
154
113
  * @param {*} bounds
155
114
  */
156
-
157
-
158
- var diffEdge = function diffEdge(bounds, a, b) {
115
+ var diffEdge = exports.diffEdge = function diffEdge(bounds, a, b) {
159
116
  var l = log.enabled ? log.bind(log, "diffEdge: [".concat(a.x, ",").concat(a.y, " -> ").concat(b.x, ",").concat(b.y, "]")) : function () {};
160
117
  var xRadians = angle(a, b);
161
118
  l('x angle', toDegrees(xRadians));
162
119
  var yRadians = Math.abs(xRadians - toRadians(90));
163
120
  l('y angle', toDegrees(yRadians));
164
121
  var xSide = Math.abs(a.x - bounds.x);
122
+
165
123
  /**
166
124
  * Draw 2 triangles:
167
125
  * 1 with a horizontal line from a to the graph x edge
@@ -169,18 +127,15 @@ var diffEdge = function diffEdge(bounds, a, b) {
169
127
  * Calculate the hypotenuse for both, whichever is shorter
170
128
  * indicates that we should use that triangle to get the edge point.
171
129
  */
172
-
173
130
  var xH = hypotenuse(xSide, yRadians);
174
131
  var ySide = Math.abs(a.y - bounds.y);
175
132
  var yH = hypotenuse(ySide, xRadians);
176
133
  l('x: side', xSide, 'h:', xH);
177
134
  l('y: side', ySide, 'h:', yH);
178
135
  var side = getShortestSide(xH, yH);
179
-
180
136
  if (side !== 'x' && side !== 'y') {
181
137
  throw new Error('Cant decide which hypotenuse to use');
182
138
  }
183
-
184
139
  var point = side === 'x' ? new _pointGeometry["default"](xSide, getOpposingSide(xH, xRadians)) : new _pointGeometry["default"](getOpposingSide(yH, yRadians), ySide);
185
140
  l('point:', point);
186
141
  var multiplier = new _pointGeometry["default"](b.x < a.x ? -1 : 1, b.y < a.y ? -1 : 1);
@@ -191,6 +146,4 @@ var diffEdge = function diffEdge(bounds, a, b) {
191
146
  l('normalized:', normalized);
192
147
  return normalized;
193
148
  };
194
-
195
- exports.diffEdge = diffEdge;
196
149
  //# sourceMappingURL=trig.js.map
package/lib/trig.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/trig.js"],"names":["log","toDegrees","radians","Math","PI","toRadians","degrees","angle","a","b","vd","y","hd","x","atan2","NINETY","ONE_EIGHTY","TWO_SEVENTY","acuteXAngle","abs","acuteYAngle","hypotenuse","alpha","out","sin","edges","domain","range","destX","max","min","destY","aToB","diffEdge","dX","dY","bToA","getOpposingSide","hyp","getShortestSide","xh","yh","Number","isFinite","isNaN","Infinity","console","warn","bounds","l","enabled","bind","xRadians","yRadians","xSide","xH","ySide","yH","side","Error","point","Point","multiplier","multByPoint","normalized","add"],"mappings":"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","sourcesContent":["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"],"file":"trig.js"}
1
+ {"version":3,"file":"trig.js","names":["_utils","require","_pointGeometry","_interopRequireDefault","_debug","log","debug","toDegrees","exports","radians","Math","PI","toRadians","degrees","angle","a","b","vd","y","hd","x","atan2","NINETY","ONE_EIGHTY","TWO_SEVENTY","acuteXAngle","abs","acuteYAngle","hypotenuse","alpha","out","sin","edges","domain","range","destX","max","min","destY","aToB","diffEdge","xy","dX","dY","bToA","getOpposingSide","hyp","getShortestSide","xh","yh","Number","isFinite","isNaN","Infinity","console","warn","bounds","l","enabled","bind","concat","xRadians","yRadians","xSide","xH","ySide","yH","side","Error","point","Point","multiplier","multByPoint","normalized","add"],"sources":["../src/trig.js"],"sourcesContent":["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"],"mappings":"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","ignoreList":[]}
package/lib/types.js CHANGED
@@ -1,68 +1,40 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports.SnapType = exports.SizeType = exports.ScaleType = exports.RangeType = exports.PointType = exports.GraphPropsType = exports.DomainType = exports.ChildrenType = exports.BaseDomainRangeType = void 0;
9
-
10
8
  var _propTypes = _interopRequireDefault(require("prop-types"));
11
-
12
- var BaseDomainRangeType = {
9
+ var BaseDomainRangeType = exports.BaseDomainRangeType = {
13
10
  min: _propTypes["default"].number.isRequired,
14
11
  max: _propTypes["default"].number.isRequired,
15
12
  step: _propTypes["default"].number
16
13
  };
17
- exports.BaseDomainRangeType = BaseDomainRangeType;
18
-
19
- var DomainType = _propTypes["default"].shape(BaseDomainRangeType);
20
-
21
- exports.DomainType = DomainType;
22
-
23
- var RangeType = _propTypes["default"].shape(BaseDomainRangeType);
24
-
25
- exports.RangeType = RangeType;
26
-
27
- var SizeType = _propTypes["default"].shape({
14
+ var DomainType = exports.DomainType = _propTypes["default"].shape(BaseDomainRangeType);
15
+ var RangeType = exports.RangeType = _propTypes["default"].shape(BaseDomainRangeType);
16
+ var SizeType = exports.SizeType = _propTypes["default"].shape({
28
17
  width: _propTypes["default"].number.isRequired,
29
18
  height: _propTypes["default"].number.isRequired
30
19
  });
31
-
32
- exports.SizeType = SizeType;
33
-
34
- var PointType = _propTypes["default"].shape({
20
+ var PointType = exports.PointType = _propTypes["default"].shape({
35
21
  x: _propTypes["default"].number.isRequired,
36
22
  y: _propTypes["default"].number.isRequired
37
23
  });
38
-
39
- exports.PointType = PointType;
40
-
41
- var ChildrenType = _propTypes["default"].oneOfType([_propTypes["default"].arrayOf(_propTypes["default"].node), _propTypes["default"].node]).isRequired;
42
-
43
- exports.ChildrenType = ChildrenType;
44
-
45
- var ScaleType = _propTypes["default"].shape({
24
+ var ChildrenType = exports.ChildrenType = _propTypes["default"].oneOfType([_propTypes["default"].arrayOf(_propTypes["default"].node), _propTypes["default"].node]).isRequired;
25
+ var ScaleType = exports.ScaleType = _propTypes["default"].shape({
46
26
  x: _propTypes["default"].func.isRequired,
47
27
  y: _propTypes["default"].func.isRequired
48
28
  });
49
-
50
- exports.ScaleType = ScaleType;
51
-
52
- var SnapType = _propTypes["default"].shape({
29
+ var SnapType = exports.SnapType = _propTypes["default"].shape({
53
30
  x: _propTypes["default"].func.isRequired,
54
31
  y: _propTypes["default"].func.isRequired
55
32
  });
56
-
57
- exports.SnapType = SnapType;
58
-
59
- var GraphPropsType = _propTypes["default"].shape({
33
+ var GraphPropsType = exports.GraphPropsType = _propTypes["default"].shape({
60
34
  scale: ScaleType.isRequired,
61
35
  snap: SnapType.isRequired,
62
36
  domain: DomainType.isRequired,
63
37
  range: RangeType.isRequired,
64
38
  size: SizeType.isRequired
65
39
  });
66
-
67
- exports.GraphPropsType = GraphPropsType;
68
40
  //# sourceMappingURL=types.js.map
package/lib/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/types.js"],"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"],"mappings":";;;;;;;;;AAAA;;AAEO,IAAMA,mBAAmB,GAAG;AACjCC,EAAAA,GAAG,EAAEC,sBAAUC,MAAV,CAAiBC,UADW;AAEjCC,EAAAA,GAAG,EAAEH,sBAAUC,MAAV,CAAiBC,UAFW;AAGjCE,EAAAA,IAAI,EAAEJ,sBAAUC;AAHiB,CAA5B;;;AAMA,IAAMI,UAAU,GAAGL,sBAAUM,KAAV,CAAgBR,mBAAhB,CAAnB;;;;AAEA,IAAMS,SAAS,GAAGP,sBAAUM,KAAV,CAAgBR,mBAAhB,CAAlB;;;;AAEA,IAAMU,QAAQ,GAAGR,sBAAUM,KAAV,CAAgB;AACtCG,EAAAA,KAAK,EAAET,sBAAUC,MAAV,CAAiBC,UADc;AAEtCQ,EAAAA,MAAM,EAAEV,sBAAUC,MAAV,CAAiBC;AAFa,CAAhB,CAAjB;;;;AAKA,IAAMS,SAAS,GAAGX,sBAAUM,KAAV,CAAgB;AACvCM,EAAAA,CAAC,EAAEZ,sBAAUC,MAAV,CAAiBC,UADmB;AAEvCW,EAAAA,CAAC,EAAEb,sBAAUC,MAAV,CAAiBC;AAFmB,CAAhB,CAAlB;;;;AAKA,IAAMY,YAAY,GAAGd,sBAAUe,SAAV,CAAoB,CAACf,sBAAUgB,OAAV,CAAkBhB,sBAAUiB,IAA5B,CAAD,EAAoCjB,sBAAUiB,IAA9C,CAApB,EAAyEf,UAA9F;;;;AAEA,IAAMgB,SAAS,GAAGlB,sBAAUM,KAAV,CAAgB;AACvCM,EAAAA,CAAC,EAAEZ,sBAAUmB,IAAV,CAAejB,UADqB;AAEvCW,EAAAA,CAAC,EAAEb,sBAAUmB,IAAV,CAAejB;AAFqB,CAAhB,CAAlB;;;;AAKA,IAAMkB,QAAQ,GAAGpB,sBAAUM,KAAV,CAAgB;AACtCM,EAAAA,CAAC,EAAEZ,sBAAUmB,IAAV,CAAejB,UADoB;AAEtCW,EAAAA,CAAC,EAAEb,sBAAUmB,IAAV,CAAejB;AAFoB,CAAhB,CAAjB;;;;AAKA,IAAMmB,cAAc,GAAGrB,sBAAUM,KAAV,CAAgB;AAC5CgB,EAAAA,KAAK,EAAEJ,SAAS,CAAChB,UAD2B;AAE5CqB,EAAAA,IAAI,EAAEH,QAAQ,CAAClB,UAF6B;AAG5CsB,EAAAA,MAAM,EAAEnB,UAAU,CAACH,UAHyB;AAI5CuB,EAAAA,KAAK,EAAElB,SAAS,CAACL,UAJ2B;AAK5CwB,EAAAA,IAAI,EAAElB,QAAQ,CAACN;AAL6B,CAAhB,CAAvB","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"],"file":"types.js"}
1
+ {"version":3,"file":"types.js","names":["_propTypes","_interopRequireDefault","require","BaseDomainRangeType","exports","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"],"sources":["../src/types.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"],"mappings":";;;;;;;AAAA,IAAAA,UAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEO,IAAMC,mBAAmB,GAAAC,OAAA,CAAAD,mBAAA,GAAG;EACjCE,GAAG,EAAEC,qBAAS,CAACC,MAAM,CAACC,UAAU;EAChCC,GAAG,EAAEH,qBAAS,CAACC,MAAM,CAACC,UAAU;EAChCE,IAAI,EAAEJ,qBAAS,CAACC;AAClB,CAAC;AAEM,IAAMI,UAAU,GAAAP,OAAA,CAAAO,UAAA,GAAGL,qBAAS,CAACM,KAAK,CAACT,mBAAmB,CAAC;AAEvD,IAAMU,SAAS,GAAAT,OAAA,CAAAS,SAAA,GAAGP,qBAAS,CAACM,KAAK,CAACT,mBAAmB,CAAC;AAEtD,IAAMW,QAAQ,GAAAV,OAAA,CAAAU,QAAA,GAAGR,qBAAS,CAACM,KAAK,CAAC;EACtCG,KAAK,EAAET,qBAAS,CAACC,MAAM,CAACC,UAAU;EAClCQ,MAAM,EAAEV,qBAAS,CAACC,MAAM,CAACC;AAC3B,CAAC,CAAC;AAEK,IAAMS,SAAS,GAAAb,OAAA,CAAAa,SAAA,GAAGX,qBAAS,CAACM,KAAK,CAAC;EACvCM,CAAC,EAAEZ,qBAAS,CAACC,MAAM,CAACC,UAAU;EAC9BW,CAAC,EAAEb,qBAAS,CAACC,MAAM,CAACC;AACtB,CAAC,CAAC;AAEK,IAAMY,YAAY,GAAAhB,OAAA,CAAAgB,YAAA,GAAGd,qBAAS,CAACe,SAAS,CAAC,CAACf,qBAAS,CAACgB,OAAO,CAAChB,qBAAS,CAACiB,IAAI,CAAC,EAAEjB,qBAAS,CAACiB,IAAI,CAAC,CAAC,CAACf,UAAU;AAExG,IAAMgB,SAAS,GAAApB,OAAA,CAAAoB,SAAA,GAAGlB,qBAAS,CAACM,KAAK,CAAC;EACvCM,CAAC,EAAEZ,qBAAS,CAACmB,IAAI,CAACjB,UAAU;EAC5BW,CAAC,EAAEb,qBAAS,CAACmB,IAAI,CAACjB;AACpB,CAAC,CAAC;AAEK,IAAMkB,QAAQ,GAAAtB,OAAA,CAAAsB,QAAA,GAAGpB,qBAAS,CAACM,KAAK,CAAC;EACtCM,CAAC,EAAEZ,qBAAS,CAACmB,IAAI,CAACjB,UAAU;EAC5BW,CAAC,EAAEb,qBAAS,CAACmB,IAAI,CAACjB;AACpB,CAAC,CAAC;AAEK,IAAMmB,cAAc,GAAAvB,OAAA,CAAAuB,cAAA,GAAGrB,qBAAS,CAACM,KAAK,CAAC;EAC5CgB,KAAK,EAAEJ,SAAS,CAAChB,UAAU;EAC3BqB,IAAI,EAAEH,QAAQ,CAAClB,UAAU;EACzBsB,MAAM,EAAEnB,UAAU,CAACH,UAAU;EAC7BuB,KAAK,EAAElB,SAAS,CAACL,UAAU;EAC3BwB,IAAI,EAAElB,QAAQ,CAACN;AACjB,CAAC,CAAC","ignoreList":[]}