@semcore/d3-chart 3.59.1-prerelease.8 → 16.0.0-prerelease.2
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/CHANGELOG.md +6 -0
- package/lib/cjs/AnimatedClipPath.js +3 -4
- package/lib/cjs/AnimatedClipPath.js.map +1 -1
- package/lib/cjs/Area.js +14 -15
- package/lib/cjs/Area.js.map +1 -1
- package/lib/cjs/Axis.js +15 -16
- package/lib/cjs/Axis.js.map +1 -1
- package/lib/cjs/Bar.js +18 -19
- package/lib/cjs/Bar.js.map +1 -1
- package/lib/cjs/Bubble.js +13 -14
- package/lib/cjs/Bubble.js.map +1 -1
- package/lib/cjs/CompactHorizontalBar.js +20 -21
- package/lib/cjs/CompactHorizontalBar.js.map +1 -1
- package/lib/cjs/Donut.js +12 -13
- package/lib/cjs/Donut.js.map +1 -1
- package/lib/cjs/Dots.js +10 -11
- package/lib/cjs/Dots.js.map +1 -1
- package/lib/cjs/GroupBar.js +2 -2
- package/lib/cjs/GroupBar.js.map +1 -1
- package/lib/cjs/HorizontalBar.js +18 -19
- package/lib/cjs/HorizontalBar.js.map +1 -1
- package/lib/cjs/Hover.js +5 -6
- package/lib/cjs/Hover.js.map +1 -1
- package/lib/cjs/Line.js +11 -12
- package/lib/cjs/Line.js.map +1 -1
- package/lib/cjs/Pattern.js +1 -1
- package/lib/cjs/Pattern.js.map +1 -1
- package/lib/cjs/Plot.js +9 -11
- package/lib/cjs/Plot.js.map +1 -1
- package/lib/cjs/Radar.js +23 -24
- package/lib/cjs/Radar.js.map +1 -1
- package/lib/cjs/RadialTree.js +17 -18
- package/lib/cjs/RadialTree.js.map +1 -1
- package/lib/cjs/Reference.js +14 -15
- package/lib/cjs/Reference.js.map +1 -1
- package/lib/cjs/ResponsiveContainer.js +6 -7
- package/lib/cjs/ResponsiveContainer.js.map +1 -1
- package/lib/cjs/ScatterPlot.js +11 -12
- package/lib/cjs/ScatterPlot.js.map +1 -1
- package/lib/cjs/StackBar.js +1 -1
- package/lib/cjs/StackBar.js.map +1 -1
- package/lib/cjs/StackedArea.js +1 -1
- package/lib/cjs/StackedArea.js.map +1 -1
- package/lib/cjs/Tooltip.js +11 -12
- package/lib/cjs/Tooltip.js.map +1 -1
- package/lib/cjs/Venn.js +11 -12
- package/lib/cjs/Venn.js.map +1 -1
- package/lib/cjs/a11y/PlotA11yModule.js +3 -4
- package/lib/cjs/a11y/PlotA11yModule.js.map +1 -1
- package/lib/cjs/a11y/PlotA11yView.js +3 -4
- package/lib/cjs/a11y/PlotA11yView.js.map +1 -1
- package/lib/cjs/a11y/focus.js +1 -1
- package/lib/cjs/a11y/focus.js.map +1 -1
- package/lib/cjs/a11y/hints.js +1 -1
- package/lib/cjs/a11y/hints.js.map +1 -1
- package/lib/cjs/component/Chart/AbstractChart.js +2 -2
- package/lib/cjs/component/Chart/AbstractChart.js.map +1 -1
- package/lib/cjs/component/Chart/AbstractChart.type.js.map +1 -1
- package/lib/cjs/component/Chart/AreaChart.js +3 -3
- package/lib/cjs/component/Chart/AreaChart.js.map +1 -1
- package/lib/cjs/component/Chart/BarChart.js +3 -3
- package/lib/cjs/component/Chart/BarChart.js.map +1 -1
- package/lib/cjs/component/Chart/BubbleChart.js +3 -3
- package/lib/cjs/component/Chart/BubbleChart.js.map +1 -1
- package/lib/cjs/component/Chart/CigaretteChart.js +5 -6
- package/lib/cjs/component/Chart/CigaretteChart.js.map +1 -1
- package/lib/cjs/component/Chart/CompactHorizontalBarChart.js +3 -3
- package/lib/cjs/component/Chart/CompactHorizontalBarChart.js.map +1 -1
- package/lib/cjs/component/Chart/DonutChart.js +3 -3
- package/lib/cjs/component/Chart/DonutChart.js.map +1 -1
- package/lib/cjs/component/Chart/HistogramChart.js +3 -3
- package/lib/cjs/component/Chart/HistogramChart.js.map +1 -1
- package/lib/cjs/component/Chart/LineChart.js +3 -3
- package/lib/cjs/component/Chart/LineChart.js.map +1 -1
- package/lib/cjs/component/Chart/RadarChart.js +3 -3
- package/lib/cjs/component/Chart/RadarChart.js.map +1 -1
- package/lib/cjs/component/Chart/ScatterPlotChart.js +3 -3
- package/lib/cjs/component/Chart/ScatterPlotChart.js.map +1 -1
- package/lib/cjs/component/Chart/VennChart.js +3 -3
- package/lib/cjs/component/Chart/VennChart.js.map +1 -1
- package/lib/cjs/component/ChartLegend/LegendFlex/LegendFlex.js +7 -9
- package/lib/cjs/component/ChartLegend/LegendFlex/LegendFlex.js.map +1 -1
- package/lib/cjs/component/ChartLegend/LegendItem/LegendItem.js +21 -23
- package/lib/cjs/component/ChartLegend/LegendItem/LegendItem.js.map +1 -1
- package/lib/cjs/component/ChartLegend/LegendTable/LegendTable.js +8 -10
- package/lib/cjs/component/ChartLegend/LegendTable/LegendTable.js.map +1 -1
- package/lib/cjs/component/Cigarette/Cigarette.js +2 -2
- package/lib/cjs/component/Cigarette/Cigarette.js.map +1 -1
- package/lib/cjs/createElement.js +6 -7
- package/lib/cjs/createElement.js.map +1 -1
- package/lib/cjs/style/hover.shadow.css +2 -2
- package/lib/cjs/utils.js +1 -1
- package/lib/cjs/utils.js.map +1 -1
- package/lib/es6/AnimatedClipPath.js +2 -2
- package/lib/es6/AnimatedClipPath.js.map +1 -1
- package/lib/es6/Area.js +14 -14
- package/lib/es6/Area.js.map +1 -1
- package/lib/es6/Axis.js +15 -15
- package/lib/es6/Bar.js +18 -18
- package/lib/es6/Bar.js.map +1 -1
- package/lib/es6/Bubble.js +14 -14
- package/lib/es6/Bubble.js.map +1 -1
- package/lib/es6/CompactHorizontalBar.js +21 -21
- package/lib/es6/CompactHorizontalBar.js.map +1 -1
- package/lib/es6/Donut.js +13 -13
- package/lib/es6/Donut.js.map +1 -1
- package/lib/es6/Dots.js +10 -10
- package/lib/es6/Dots.js.map +1 -1
- package/lib/es6/GroupBar.js +2 -2
- package/lib/es6/GroupBar.js.map +1 -1
- package/lib/es6/HorizontalBar.js +18 -18
- package/lib/es6/HorizontalBar.js.map +1 -1
- package/lib/es6/Hover.js +6 -6
- package/lib/es6/Hover.js.map +1 -1
- package/lib/es6/Line.js +11 -11
- package/lib/es6/Line.js.map +1 -1
- package/lib/es6/Pattern.js +1 -1
- package/lib/es6/Pattern.js.map +1 -1
- package/lib/es6/Plot.js +9 -9
- package/lib/es6/Plot.js.map +1 -1
- package/lib/es6/Radar.js +24 -24
- package/lib/es6/Radar.js.map +1 -1
- package/lib/es6/RadialTree.js +17 -17
- package/lib/es6/RadialTree.js.map +1 -1
- package/lib/es6/Reference.js +14 -14
- package/lib/es6/Reference.js.map +1 -1
- package/lib/es6/ResponsiveContainer.js +5 -5
- package/lib/es6/ResponsiveContainer.js.map +1 -1
- package/lib/es6/ScatterPlot.js +12 -12
- package/lib/es6/ScatterPlot.js.map +1 -1
- package/lib/es6/StackBar.js +1 -1
- package/lib/es6/StackBar.js.map +1 -1
- package/lib/es6/StackedArea.js +1 -1
- package/lib/es6/StackedArea.js.map +1 -1
- package/lib/es6/Tooltip.js +12 -12
- package/lib/es6/Tooltip.js.map +1 -1
- package/lib/es6/Venn.js +12 -12
- package/lib/es6/Venn.js.map +1 -1
- package/lib/es6/a11y/PlotA11yModule.js +4 -4
- package/lib/es6/a11y/PlotA11yModule.js.map +1 -1
- package/lib/es6/a11y/PlotA11yView.js +4 -4
- package/lib/es6/a11y/PlotA11yView.js.map +1 -1
- package/lib/es6/a11y/focus.js +1 -1
- package/lib/es6/a11y/focus.js.map +1 -1
- package/lib/es6/a11y/hints.js +1 -1
- package/lib/es6/a11y/hints.js.map +1 -1
- package/lib/es6/component/Chart/AbstractChart.js +2 -2
- package/lib/es6/component/Chart/AbstractChart.js.map +1 -1
- package/lib/es6/component/Chart/AbstractChart.type.js.map +1 -1
- package/lib/es6/component/Chart/AreaChart.js +2 -2
- package/lib/es6/component/Chart/AreaChart.js.map +1 -1
- package/lib/es6/component/Chart/BarChart.js +2 -2
- package/lib/es6/component/Chart/BarChart.js.map +1 -1
- package/lib/es6/component/Chart/BubbleChart.js +2 -2
- package/lib/es6/component/Chart/BubbleChart.js.map +1 -1
- package/lib/es6/component/Chart/CigaretteChart.js +4 -4
- package/lib/es6/component/Chart/CigaretteChart.js.map +1 -1
- package/lib/es6/component/Chart/CompactHorizontalBarChart.js +2 -2
- package/lib/es6/component/Chart/CompactHorizontalBarChart.js.map +1 -1
- package/lib/es6/component/Chart/DonutChart.js +2 -2
- package/lib/es6/component/Chart/DonutChart.js.map +1 -1
- package/lib/es6/component/Chart/HistogramChart.js +2 -2
- package/lib/es6/component/Chart/HistogramChart.js.map +1 -1
- package/lib/es6/component/Chart/LineChart.js +2 -2
- package/lib/es6/component/Chart/LineChart.js.map +1 -1
- package/lib/es6/component/Chart/RadarChart.js +2 -2
- package/lib/es6/component/Chart/RadarChart.js.map +1 -1
- package/lib/es6/component/Chart/ScatterPlotChart.js +2 -2
- package/lib/es6/component/Chart/ScatterPlotChart.js.map +1 -1
- package/lib/es6/component/Chart/VennChart.js +2 -2
- package/lib/es6/component/Chart/VennChart.js.map +1 -1
- package/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.js +7 -7
- package/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.js.map +1 -1
- package/lib/es6/component/ChartLegend/LegendItem/LegendItem.js +21 -21
- package/lib/es6/component/ChartLegend/LegendItem/LegendItem.js.map +1 -1
- package/lib/es6/component/ChartLegend/LegendTable/LegendTable.js +8 -8
- package/lib/es6/component/ChartLegend/LegendTable/LegendTable.js.map +1 -1
- package/lib/es6/component/Cigarette/Cigarette.js +2 -2
- package/lib/es6/component/Cigarette/Cigarette.js.map +1 -1
- package/lib/es6/createElement.js +5 -5
- package/lib/es6/createElement.js.map +1 -1
- package/lib/es6/style/hover.shadow.css +2 -2
- package/lib/es6/utils.js +1 -1
- package/lib/es6/utils.js.map +1 -1
- package/lib/types/component/Chart/AbstractChart.type.d.ts +1 -1
- package/lib/types/utils.d.ts +1 -1
- package/package.json +9 -12
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScatterPlot.js","names":["_core","require","_react","_interopRequireDefault","_d3Transition","_canUseDOM","_uniqueID","_createElement","_utils","_Tooltip","_Pattern","style","_index","sstyled","insert","ScatterPlotRoot","_Component","_inherits2","_super","_createSuper2","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty2","_assertThisInitialized2","canUseDOM","document","createElement","visible","props","tooltipProps","_ref4","clientX","clientY","eventEmitter","asProps","emit","_createClass2","key","value","generateGetBoundingClientRect","x","undefined","y","width","height","top","right","bottom","left","animationCircle","_this$asProps","duration","uid","r","radius","getScatterPlotRadius","selectRect","transition","selection","selectAll","attr","selectRectNode","node","componentDidUpdate","prevProps","data","componentDidMount","renderCircle","d","i","_ref2","_this$asProps2","color","scale","offset","styles","valueColor","transparent","resolveColor","patterns","_scale","_slicedToArray2","xScale","yScale","SScatterPlot","Element","SValue","Number","isNaN","cn","bindHandlerTooltip","xIndex","index","PatternFill","render","_this$asProps3","_scale2","xSize","Math","abs","range","ySize","xMargin","min","yMargin","dataHintsHandler","specifyDataRowFields","establishDataType","Fragment","map","bind","id","Component","uniqueIDEnhancement","ScatterPlotTooltip","_ref","arguments[0]","_ref3","SScatterPlotTooltip","Tooltip","_objectSpread2","assignProps","ScatterPlot","_______childrenComponents","_default","exports"],"sources":["../../src/ScatterPlot.jsx"],"sourcesContent":["import React from 'react';\nimport { transition } from 'd3-transition';\nimport { Component, Root, sstyled } from '@semcore/core';\nimport canUseDOM from '@semcore/utils/lib/canUseDOM';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\nimport createElement from './createElement';\nimport { getScatterPlotRadius } from './utils';\nimport Tooltip from './Tooltip';\nimport { PatternFill } from './Pattern';\n\nimport style from './style/scatterplot.shadow.css';\n\nclass ScatterPlotRoot extends Component {\n static displayName = 'ScatterPlot';\n static style = style;\n static enhance = [uniqueIDEnhancement()];\n\n static defaultProps = {\n offset: [0, 0],\n duration: 500,\n };\n\n virtualElement = canUseDOM() ? document.createElement('div') : {};\n\n generateGetBoundingClientRect(x = 0, y = 0) {\n return () => ({ width: 0, height: 0, top: y, right: x, bottom: y, left: x });\n }\n\n bindHandlerTooltip = (visible, props, tooltipProps) => ({ clientX, clientY }) => {\n const { eventEmitter } = this.asProps;\n\n eventEmitter.emit('setTooltipPosition', clientX, clientY);\n eventEmitter.emit('setTooltipRenderingProps', props, tooltipProps);\n eventEmitter.emit('setTooltipVisible', visible);\n };\n\n animationCircle() {\n const { duration, uid, r, value } = this.asProps;\n const radius = r ? r : getScatterPlotRadius(value);\n const selectRect = transition().selection().selectAll(`[id^=${uid}]`).attr('r', 0);\n const selectRectNode = selectRect.node();\n\n if (duration > 0 && selectRectNode) {\n selectRect.transition().duration(duration).attr('r', radius);\n }\n }\n\n componentDidUpdate(prevProps) {\n if (prevProps.data !== this.props.data) {\n this.animationCircle();\n }\n }\n\n componentDidMount() {\n this.animationCircle();\n }\n\n renderCircle(d, i) {\n const {\n color,\n scale,\n x,\n y,\n r,\n offset,\n styles,\n uid,\n duration,\n value,\n valueColor,\n transparent,\n resolveColor,\n patterns,\n } = this.asProps;\n const [xScale, yScale] = scale;\n const SScatterPlot = this.Element;\n const SValue = 'text';\n\n if (Number.isNaN(d[x]) || Number.isNaN(d[y])) {\n return null;\n }\n\n return sstyled(styles)(\n <g\n aria-hidden\n key={`circle(#${i})`}\n onMouseMove={this.bindHandlerTooltip(true, this.props, { xIndex: i, index: i, patterns })}\n onMouseLeave={this.bindHandlerTooltip(false, this.props, { xIndex: i, index: i, patterns })}\n >\n <SScatterPlot\n aria-hidden\n id={`${uid}${i}`}\n index={i}\n render='circle'\n clipPath={`url(#${uid})`}\n cx={xScale(d[x]) + offset[0]}\n cy={yScale(d[y]) + offset[1]}\n color={resolveColor(color)}\n pattern={patterns ? `url(#${uid}-${i}-pattern)` : undefined}\n r={r}\n use:duration={`${duration}ms`}\n transparent={transparent}\n />\n {patterns && (\n <PatternFill\n id={`${uid}-${i}-pattern`}\n patternKey={color}\n color={resolveColor(color)}\n patterns={patterns}\n />\n )}\n {d[value] !== undefined && (\n <SValue\n aria-hidden\n x={xScale(d[x]) + offset[0]}\n y={yScale(d[y]) + offset[1]}\n dy='.3em'\n clipPath={`url(#${uid})`}\n color={resolveColor(valueColor)}\n transparent={transparent}\n >\n {d[value]}\n </SValue>\n )}\n </g>,\n );\n }\n\n render() {\n const { data, uid, scale, x, y, value } = this.asProps;\n const [xScale, yScale] = scale;\n const xSize = Math.abs(xScale.range()[0] - xScale.range()[1]);\n const ySize = Math.abs(yScale.range()[0] - yScale.range()[1]);\n const xMargin = Math.min(xScale.range()[0], xScale.range()[1]);\n const yMargin = Math.min(yScale.range()[0], yScale.range()[1]);\n\n this.asProps.dataHintsHandler.specifyDataRowFields(x, y, value);\n this.asProps.dataHintsHandler.establishDataType('points-cloud');\n\n return (\n <>\n {data.map(this.renderCircle.bind(this))}\n <clipPath id={uid}>\n <rect x={xMargin} y={yMargin} width={`${xSize}px`} height={`${ySize}px`} />\n </clipPath>\n </>\n );\n }\n}\n\nconst ScatterPlotTooltip = (props) => {\n const SScatterPlotTooltip = Root;\n return sstyled(props.styles)(<SScatterPlotTooltip render={Tooltip} excludeAnchorProps />);\n};\n\nconst ScatterPlot = createElement(ScatterPlotRoot, {\n Tooltip: [ScatterPlotTooltip, Tooltip._______childrenComponents],\n});\n\nexport default ScatterPlot;\n"],"mappings":";;;;;;;;;;;;;;;;AAEA,IAAAA,KAAA,GAAAC,OAAA;AAFA,IAAAC,MAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,aAAA,GAAAH,OAAA;AAEA,IAAAI,UAAA,GAAAF,sBAAA,CAAAF,OAAA;AACA,IAAAK,SAAA,GAAAH,sBAAA,CAAAF,OAAA;AACA,IAAAM,cAAA,GAAAJ,sBAAA,CAAAF,OAAA;AACA,IAAAO,MAAA,GAAAP,OAAA;AACA,IAAAQ,QAAA,GAAAN,sBAAA,CAAAF,OAAA;AACA,IAAAS,QAAA,GAAAT,OAAA;AAAwC;AAAA,IAAAU,KAAA,+BAAAC,MAAA,CAAAC,OAAA,CAAAC,MAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;AAAA;AAAA,IAIlCC,eAAe,0BAAAC,UAAA;EAAA,IAAAC,UAAA,aAAAF,eAAA,EAAAC,UAAA;EAAA,IAAAE,MAAA,OAAAC,aAAA,aAAAJ,eAAA;EAAA,SAAAA,gBAAA;IAAA,IAAAK,KAAA;IAAA,IAAAC,gBAAA,mBAAAN,eAAA;IAAA,SAAAO,IAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAC,IAAA,OAAAC,KAAA,CAAAJ,IAAA,GAAAK,IAAA,MAAAA,IAAA,GAAAL,IAAA,EAAAK,IAAA;MAAAF,IAAA,CAAAE,IAAA,IAAAJ,SAAA,CAAAI,IAAA;IAAA;IAAAP,KAAA,GAAAF,MAAA,CAAAU,IAAA,CAAAC,KAAA,CAAAX,MAAA,SAAAY,MAAA,CAAAL,IAAA;IAAA,IAAAM,gBAAA,iBAAAC,uBAAA,aAAAZ,KAAA,qBAUF,IAAAa,qBAAS,GAAE,GAAGC,QAAQ,CAACC,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAAA,IAAAJ,gBAAA,iBAAAC,uBAAA,aAAAZ,KAAA,yBAM5C,UAACgB,OAAO,EAAEC,KAAK,EAAEC,YAAY;MAAA,OAAK,UAAAC,KAAA,EAA0B;QAAA,IAAvBC,OAAO,GAAAD,KAAA,CAAPC,OAAO;UAAEC,OAAO,GAAAF,KAAA,CAAPE,OAAO;QACxE,IAAQC,YAAY,GAAKtB,KAAA,CAAKuB,OAAO,CAA7BD,YAAY;QAEpBA,YAAY,CAACE,IAAI,CAAC,oBAAoB,EAAEJ,OAAO,EAAEC,OAAO,CAAC;QACzDC,YAAY,CAACE,IAAI,CAAC,0BAA0B,EAAEP,KAAK,EAAEC,YAAY,CAAC;QAClEI,YAAY,CAACE,IAAI,CAAC,mBAAmB,EAAER,OAAO,CAAC;MACjD,CAAC;IAAA;IAAA,OAAAhB,KAAA;EAAA;EAAA,IAAAyB,aAAA,aAAA9B,eAAA;IAAA+B,GAAA;IAAAC,KAAA,EAVD,SAAAC,8BAAA,EAA4C;MAAA,IAAdC,CAAC,GAAA1B,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAA2B,SAAA,GAAA3B,SAAA,MAAG,CAAC;MAAA,IAAE4B,CAAC,GAAA5B,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAA2B,SAAA,GAAA3B,SAAA,MAAG,CAAC;MACxC,OAAO;QAAA,OAAO;UAAE6B,KAAK,EAAE,CAAC;UAAEC,MAAM,EAAE,CAAC;UAAEC,GAAG,EAAEH,CAAC;UAAEI,KAAK,EAAEN,CAAC;UAAEO,MAAM,EAAEL,CAAC;UAAEM,IAAI,EAAER;QAAE,CAAC;MAAA,CAAC;IAC9E;EAAC;IAAAH,GAAA;IAAAC,KAAA,EAUD,SAAAW,gBAAA,EAAkB;MAChB,IAAAC,aAAA,GAAoC,IAAI,CAAChB,OAAO;QAAxCiB,QAAQ,GAAAD,aAAA,CAARC,QAAQ;QAAEC,GAAG,GAAAF,aAAA,CAAHE,GAAG;QAAEC,CAAC,GAAAH,aAAA,CAADG,CAAC;QAAEf,KAAK,GAAAY,aAAA,CAALZ,KAAK;MAC/B,IAAMgB,MAAM,GAAGD,CAAC,GAAGA,CAAC,GAAG,IAAAE,2BAAoB,EAACjB,KAAK,CAAC;MAClD,IAAMkB,UAAU,GAAG,IAAAC,wBAAU,GAAE,CAACC,SAAS,EAAE,CAACC,SAAS,SAAAtC,MAAA,CAAS+B,GAAG,OAAI,CAACQ,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;MAClF,IAAMC,cAAc,GAAGL,UAAU,CAACM,IAAI,EAAE;MAExC,IAAIX,QAAQ,GAAG,CAAC,IAAIU,cAAc,EAAE;QAClCL,UAAU,CAACC,UAAU,EAAE,CAACN,QAAQ,CAACA,QAAQ,CAAC,CAACS,IAAI,CAAC,GAAG,EAAEN,MAAM,CAAC;MAC9D;IACF;EAAC;IAAAjB,GAAA;IAAAC,KAAA,EAED,SAAAyB,mBAAmBC,SAAS,EAAE;MAC5B,IAAIA,SAAS,CAACC,IAAI,KAAK,IAAI,CAACrC,KAAK,CAACqC,IAAI,EAAE;QACtC,IAAI,CAAChB,eAAe,EAAE;MACxB;IACF;EAAC;IAAAZ,GAAA;IAAAC,KAAA,EAED,SAAA4B,kBAAA,EAAoB;MAClB,IAAI,CAACjB,eAAe,EAAE;IACxB;EAAC;IAAAZ,GAAA;IAAAC,KAAA,EAED,SAAA6B,aAAaC,CAAC,EAAEC,CAAC,EAAE;MAAA,IAAAC,KAAA;MACjB,IAAAC,cAAA,GAeI,IAAI,CAACrC,OAAO;QAddsC,KAAK,GAAAD,cAAA,CAALC,KAAK;QACLC,KAAK,GAAAF,cAAA,CAALE,KAAK;QACLjC,CAAC,GAAA+B,cAAA,CAAD/B,CAAC;QACDE,CAAC,GAAA6B,cAAA,CAAD7B,CAAC;QACDW,CAAC,GAAAkB,cAAA,CAADlB,CAAC;QACDqB,MAAM,GAAAH,cAAA,CAANG,MAAM;QACNC,MAAM,GAAAJ,cAAA,CAANI,MAAM;QACNvB,GAAG,GAAAmB,cAAA,CAAHnB,GAAG;QACHD,QAAQ,GAAAoB,cAAA,CAARpB,QAAQ;QACRb,KAAK,GAAAiC,cAAA,CAALjC,KAAK;QACLsC,UAAU,GAAAL,cAAA,CAAVK,UAAU;QACVC,WAAW,GAAAN,cAAA,CAAXM,WAAW;QACXC,YAAY,GAAAP,cAAA,CAAZO,YAAY;QACZC,QAAQ,GAAAR,cAAA,CAARQ,QAAQ;MAEV,IAAAC,MAAA,OAAAC,eAAA,aAAyBR,KAAK;QAAvBS,MAAM,GAAAF,MAAA;QAAEG,MAAM,GAAAH,MAAA;MACrB,IAAMI,YAAY,GAAG,IAAI,CAACC,OAAO;MACjC,IAAMC,MAAM,GAAG,MAAM;MAErB,IAAIC,MAAM,CAACC,KAAK,CAACpB,CAAC,CAAC5B,CAAC,CAAC,CAAC,IAAI+C,MAAM,CAACC,KAAK,CAACpB,CAAC,CAAC1B,CAAC,CAAC,CAAC,EAAE;QAC5C,OAAO,IAAI;MACb;MAEA,OAAA4B,KAAA,GAAO,IAAAlE,aAAO,EAACuE,MAAM,CAAC,eACpBlF,MAAA,YAAAiC,aAAA,MAAA4C,KAAA,CAAAmB,EAAA;QAAA;QAAA,kBAAApE,MAAA,CAEkBgD,CAAC;QAAA,eACJ,IAAI,CAACqB,kBAAkB,CAAC,IAAI,EAAE,IAAI,CAAC9D,KAAK,EAAE;UAAE+D,MAAM,EAAEtB,CAAC;UAAEuB,KAAK,EAAEvB,CAAC;UAAEU,QAAQ,EAARA;QAAS,CAAC,CAAC;QAAA,gBAC3E,IAAI,CAACW,kBAAkB,CAAC,KAAK,EAAE,IAAI,CAAC9D,KAAK,EAAE;UAAE+D,MAAM,EAAEtB,CAAC;UAAEuB,KAAK,EAAEvB,CAAC;UAAEU,QAAQ,EAARA;QAAS,CAAC;MAAC,iBAE3FtF,MAAA,YAAAiC,aAAA,CAAC0D,YAAY,EAAAd,KAAA,CAAAmB,EAAA;QAAA;QAAA,SAAApE,MAAA,CAEJ+B,GAAG,EAAA/B,MAAA,CAAGgD,CAAC;QAAA,SACPA,CAAC;QAAA,UACD,QAAQ;QAAA,oBAAAhD,MAAA,CACG+B,GAAG;QAAA,MACjB8B,MAAM,CAACd,CAAC,CAAC5B,CAAC,CAAC,CAAC,GAAGkC,MAAM,CAAC,CAAC,CAAC;QAAA,MACxBS,MAAM,CAACf,CAAC,CAAC1B,CAAC,CAAC,CAAC,GAAGgC,MAAM,CAAC,CAAC,CAAC;QAAA,SACrBI,YAAY,CAACN,KAAK,CAAC;QAAA,WACjBO,QAAQ,WAAA1D,MAAA,CAAW+B,GAAG,OAAA/B,MAAA,CAAIgD,CAAC,iBAAc5B,SAAS;QAAA,KACxDY,CAAC;QAAA,mBAAAhC,MAAA,CACa8B,QAAQ;QAAA,eACZ0B;MAAW,GACxB,EACDE,QAAQ,iBACPtF,MAAA,YAAAiC,aAAA,CAACzB,QAAA,CAAA4F,WAAW,EAAAvB,KAAA,CAAAmB,EAAA;QAAA,SAAApE,MAAA,CACH+B,GAAG,OAAA/B,MAAA,CAAIgD,CAAC;QAAA,cACHG,KAAK;QAAA,SACVM,YAAY,CAACN,KAAK,CAAC;QAAA,YAChBO;MAAQ,GAErB,EACAX,CAAC,CAAC9B,KAAK,CAAC,KAAKG,SAAS,iBACrBhD,MAAA,YAAAiC,aAAA,CAAC4D,MAAM,EAAAhB,KAAA,CAAAmB,EAAA;QAAA;QAAA,KAEFP,MAAM,CAACd,CAAC,CAAC5B,CAAC,CAAC,CAAC,GAAGkC,MAAM,CAAC,CAAC,CAAC;QAAA,KACxBS,MAAM,CAACf,CAAC,CAAC1B,CAAC,CAAC,CAAC,GAAGgC,MAAM,CAAC,CAAC,CAAC;QAAA,MACxB,MAAM;QAAA,oBAAArD,MAAA,CACS+B,GAAG;QAAA,SACd0B,YAAY,CAACF,UAAU,CAAC;QAAA,eAClBC;MAAW,IAEvBT,CAAC,CAAC9B,KAAK,CAAC,CAEZ,CACC;IAER;EAAC;IAAAD,GAAA;IAAAC,KAAA,EAED,SAAAwD,OAAA,EAAS;MACP,IAAAC,cAAA,GAA0C,IAAI,CAAC7D,OAAO;QAA9C+B,IAAI,GAAA8B,cAAA,CAAJ9B,IAAI;QAAEb,GAAG,GAAA2C,cAAA,CAAH3C,GAAG;QAAEqB,KAAK,GAAAsB,cAAA,CAALtB,KAAK;QAAEjC,CAAC,GAAAuD,cAAA,CAADvD,CAAC;QAAEE,CAAC,GAAAqD,cAAA,CAADrD,CAAC;QAAEJ,KAAK,GAAAyD,cAAA,CAALzD,KAAK;MACrC,IAAA0D,OAAA,OAAAf,eAAA,aAAyBR,KAAK;QAAvBS,MAAM,GAAAc,OAAA;QAAEb,MAAM,GAAAa,OAAA;MACrB,IAAMC,KAAK,GAAGC,IAAI,CAACC,GAAG,CAACjB,MAAM,CAACkB,KAAK,EAAE,CAAC,CAAC,CAAC,GAAGlB,MAAM,CAACkB,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;MAC7D,IAAMC,KAAK,GAAGH,IAAI,CAACC,GAAG,CAAChB,MAAM,CAACiB,KAAK,EAAE,CAAC,CAAC,CAAC,GAAGjB,MAAM,CAACiB,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;MAC7D,IAAME,OAAO,GAAGJ,IAAI,CAACK,GAAG,CAACrB,MAAM,CAACkB,KAAK,EAAE,CAAC,CAAC,CAAC,EAAElB,MAAM,CAACkB,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;MAC9D,IAAMI,OAAO,GAAGN,IAAI,CAACK,GAAG,CAACpB,MAAM,CAACiB,KAAK,EAAE,CAAC,CAAC,CAAC,EAAEjB,MAAM,CAACiB,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;MAE9D,IAAI,CAAClE,OAAO,CAACuE,gBAAgB,CAACC,oBAAoB,CAAClE,CAAC,EAAEE,CAAC,EAAEJ,KAAK,CAAC;MAC/D,IAAI,CAACJ,OAAO,CAACuE,gBAAgB,CAACE,iBAAiB,CAAC,cAAc,CAAC;MAE/D,oBACElH,MAAA,YAAAiC,aAAA,CAAAjC,MAAA,YAAAmH,QAAA,QACG3C,IAAI,CAAC4C,GAAG,CAAC,IAAI,CAAC1C,YAAY,CAAC2C,IAAI,CAAC,IAAI,CAAC,CAAC,eACvCrH,MAAA,YAAAiC,aAAA;QAAUqF,EAAE,EAAE3D;MAAI,gBAChB3D,MAAA,YAAAiC,aAAA;QAAMc,CAAC,EAAE8D,OAAQ;QAAC5D,CAAC,EAAE8D,OAAQ;QAAC7D,KAAK,KAAAtB,MAAA,CAAK4E,KAAK,OAAK;QAACrD,MAAM,KAAAvB,MAAA,CAAKgF,KAAK;MAAK,EAAG,CAClE,CACV;IAEP;EAAC;EAAA,OAAA/F,eAAA;AAAA,EAvI2B0G,eAAS;AAAA,IAAA1F,gBAAA,aAAjChB,eAAe,iBACE,aAAa;AAAA,IAAAgB,gBAAA,aAD9BhB,eAAe,WAEJJ,KAAK;AAAA,IAAAoB,gBAAA,aAFhBhB,eAAe,aAGF,CAAC,IAAA2G,oBAAmB,GAAE,CAAC;AAAA,IAAA3F,gBAAA,aAHpChB,eAAe,kBAKG;EACpBoE,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;EACdvB,QAAQ,EAAE;AACZ,CAAC;AAkIH,IAAM+D,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAItF,KAAK,EAAK;EAAA,IAAAuF,IAAA,GAAAC,YAAA;IAAAC,KAAA;EACpC,IAAMC,mBAAmB,GACiCC,mBAAO;EAAjE,OAAAF,KAAA,GAAO,IAAAjH,aAAO,EAACwB,KAAK,CAAC+C,MAAM,CAAC,eAAClF,MAAA,YAAAiC,aAAA,CAAC4F,mBAAmB,EAAAD,KAAA,CAAA5B,EAAA,4BAAA+B,cAAA,qBAAAjI,KAAA,CAAAkI,WAAA;IAAA;EAAA,GAAAN,IAAA,IAAuC;AAC1F,CAAC;AAED,IAAMO,WAAW,GAAG,IAAAhG,yBAAa,EAACpB,eAAe,EAAE;EACjDiH,OAAO,EAAE,CAACL,kBAAkB,EAAEK,mBAAO,CAACI,yBAAyB;AACjE,CAAC,CAAC;AAAC,IAAAC,QAAA,GAEYF,WAAW;AAAAG,OAAA,cAAAD,QAAA"}
|
|
1
|
+
{"version":3,"file":"ScatterPlot.js","names":["_core","require","_react","_interopRequireDefault","_d3Transition","_canUseDOM","_uniqueID","_createElement","_utils","_Tooltip","_Pattern","style","sstyled","insert","ScatterPlotRoot","_Component","_inherits2","_super","_createSuper2","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty2","_assertThisInitialized2","canUseDOM","document","createElement","visible","props","tooltipProps","_ref4","clientX","clientY","eventEmitter","asProps","emit","_createClass2","key","value","generateGetBoundingClientRect","x","undefined","y","width","height","top","right","bottom","left","animationCircle","_this$asProps","duration","uid","r","radius","getScatterPlotRadius","selectRect","transition","selection","selectAll","attr","selectRectNode","node","componentDidUpdate","prevProps","data","componentDidMount","renderCircle","d","i","_ref2","_this$asProps2","color","scale","offset","styles","valueColor","transparent","resolveColor","patterns","_scale","_slicedToArray2","xScale","yScale","SScatterPlot","Element","SValue","Number","isNaN","cn","bindHandlerTooltip","xIndex","index","PatternFill","render","_this$asProps3","_scale2","xSize","Math","abs","range","ySize","xMargin","min","yMargin","dataHintsHandler","specifyDataRowFields","establishDataType","Fragment","map","bind","id","Component","uniqueIDEnhancement","ScatterPlotTooltip","_ref","arguments[0]","_ref3","SScatterPlotTooltip","Tooltip","_objectSpread2","assignProps","ScatterPlot","_______childrenComponents","_default","exports"],"sources":["../../src/ScatterPlot.jsx"],"sourcesContent":["import React from 'react';\nimport { transition } from 'd3-transition';\nimport { Component, Root, sstyled } from '@semcore/core';\nimport canUseDOM from '@semcore/core/lib/utils/canUseDOM';\nimport uniqueIDEnhancement from '@semcore/core/lib/utils/uniqueID';\nimport createElement from './createElement';\nimport { getScatterPlotRadius } from './utils';\nimport Tooltip from './Tooltip';\nimport { PatternFill } from './Pattern';\n\nimport style from './style/scatterplot.shadow.css';\n\nclass ScatterPlotRoot extends Component {\n static displayName = 'ScatterPlot';\n static style = style;\n static enhance = [uniqueIDEnhancement()];\n\n static defaultProps = {\n offset: [0, 0],\n duration: 500,\n };\n\n virtualElement = canUseDOM() ? document.createElement('div') : {};\n\n generateGetBoundingClientRect(x = 0, y = 0) {\n return () => ({ width: 0, height: 0, top: y, right: x, bottom: y, left: x });\n }\n\n bindHandlerTooltip = (visible, props, tooltipProps) => ({ clientX, clientY }) => {\n const { eventEmitter } = this.asProps;\n\n eventEmitter.emit('setTooltipPosition', clientX, clientY);\n eventEmitter.emit('setTooltipRenderingProps', props, tooltipProps);\n eventEmitter.emit('setTooltipVisible', visible);\n };\n\n animationCircle() {\n const { duration, uid, r, value } = this.asProps;\n const radius = r ? r : getScatterPlotRadius(value);\n const selectRect = transition().selection().selectAll(`[id^=${uid}]`).attr('r', 0);\n const selectRectNode = selectRect.node();\n\n if (duration > 0 && selectRectNode) {\n selectRect.transition().duration(duration).attr('r', radius);\n }\n }\n\n componentDidUpdate(prevProps) {\n if (prevProps.data !== this.props.data) {\n this.animationCircle();\n }\n }\n\n componentDidMount() {\n this.animationCircle();\n }\n\n renderCircle(d, i) {\n const {\n color,\n scale,\n x,\n y,\n r,\n offset,\n styles,\n uid,\n duration,\n value,\n valueColor,\n transparent,\n resolveColor,\n patterns,\n } = this.asProps;\n const [xScale, yScale] = scale;\n const SScatterPlot = this.Element;\n const SValue = 'text';\n\n if (Number.isNaN(d[x]) || Number.isNaN(d[y])) {\n return null;\n }\n\n return sstyled(styles)(\n <g\n aria-hidden\n key={`circle(#${i})`}\n onMouseMove={this.bindHandlerTooltip(true, this.props, { xIndex: i, index: i, patterns })}\n onMouseLeave={this.bindHandlerTooltip(false, this.props, { xIndex: i, index: i, patterns })}\n >\n <SScatterPlot\n aria-hidden\n id={`${uid}${i}`}\n index={i}\n render='circle'\n clipPath={`url(#${uid})`}\n cx={xScale(d[x]) + offset[0]}\n cy={yScale(d[y]) + offset[1]}\n color={resolveColor(color)}\n pattern={patterns ? `url(#${uid}-${i}-pattern)` : undefined}\n r={r}\n use:duration={`${duration}ms`}\n transparent={transparent}\n />\n {patterns && (\n <PatternFill\n id={`${uid}-${i}-pattern`}\n patternKey={color}\n color={resolveColor(color)}\n patterns={patterns}\n />\n )}\n {d[value] !== undefined && (\n <SValue\n aria-hidden\n x={xScale(d[x]) + offset[0]}\n y={yScale(d[y]) + offset[1]}\n dy='.3em'\n clipPath={`url(#${uid})`}\n color={resolveColor(valueColor)}\n transparent={transparent}\n >\n {d[value]}\n </SValue>\n )}\n </g>,\n );\n }\n\n render() {\n const { data, uid, scale, x, y, value } = this.asProps;\n const [xScale, yScale] = scale;\n const xSize = Math.abs(xScale.range()[0] - xScale.range()[1]);\n const ySize = Math.abs(yScale.range()[0] - yScale.range()[1]);\n const xMargin = Math.min(xScale.range()[0], xScale.range()[1]);\n const yMargin = Math.min(yScale.range()[0], yScale.range()[1]);\n\n this.asProps.dataHintsHandler.specifyDataRowFields(x, y, value);\n this.asProps.dataHintsHandler.establishDataType('points-cloud');\n\n return (\n <>\n {data.map(this.renderCircle.bind(this))}\n <clipPath id={uid}>\n <rect x={xMargin} y={yMargin} width={`${xSize}px`} height={`${ySize}px`} />\n </clipPath>\n </>\n );\n }\n}\n\nconst ScatterPlotTooltip = (props) => {\n const SScatterPlotTooltip = Root;\n return sstyled(props.styles)(<SScatterPlotTooltip render={Tooltip} excludeAnchorProps />);\n};\n\nconst ScatterPlot = createElement(ScatterPlotRoot, {\n Tooltip: [ScatterPlotTooltip, Tooltip._______childrenComponents],\n});\n\nexport default ScatterPlot;\n"],"mappings":";;;;;;;;;;;;;;;AAEA,IAAAA,KAAA,GAAAC,OAAA;AAFA,IAAAC,MAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,aAAA,GAAAH,OAAA;AAEA,IAAAI,UAAA,GAAAF,sBAAA,CAAAF,OAAA;AACA,IAAAK,SAAA,GAAAH,sBAAA,CAAAF,OAAA;AACA,IAAAM,cAAA,GAAAJ,sBAAA,CAAAF,OAAA;AACA,IAAAO,MAAA,GAAAP,OAAA;AACA,IAAAQ,QAAA,GAAAN,sBAAA,CAAAF,OAAA;AACA,IAAAS,QAAA,GAAAT,OAAA;AAAwC;AAAA,IAAAU,KAAA,+BAAAX,KAAA,CAAAY,OAAA,CAAAC,MAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;AAAA;AAAA,IAIlCC,eAAe,0BAAAC,UAAA;EAAA,IAAAC,UAAA,aAAAF,eAAA,EAAAC,UAAA;EAAA,IAAAE,MAAA,OAAAC,aAAA,aAAAJ,eAAA;EAAA,SAAAA,gBAAA;IAAA,IAAAK,KAAA;IAAA,IAAAC,gBAAA,mBAAAN,eAAA;IAAA,SAAAO,IAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAC,IAAA,OAAAC,KAAA,CAAAJ,IAAA,GAAAK,IAAA,MAAAA,IAAA,GAAAL,IAAA,EAAAK,IAAA;MAAAF,IAAA,CAAAE,IAAA,IAAAJ,SAAA,CAAAI,IAAA;IAAA;IAAAP,KAAA,GAAAF,MAAA,CAAAU,IAAA,CAAAC,KAAA,CAAAX,MAAA,SAAAY,MAAA,CAAAL,IAAA;IAAA,IAAAM,gBAAA,iBAAAC,uBAAA,aAAAZ,KAAA,qBAUF,IAAAa,qBAAS,GAAE,GAAGC,QAAQ,CAACC,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAAA,IAAAJ,gBAAA,iBAAAC,uBAAA,aAAAZ,KAAA,yBAM5C,UAACgB,OAAO,EAAEC,KAAK,EAAEC,YAAY;MAAA,OAAK,UAAAC,KAAA,EAA0B;QAAA,IAAvBC,OAAO,GAAAD,KAAA,CAAPC,OAAO;UAAEC,OAAO,GAAAF,KAAA,CAAPE,OAAO;QACxE,IAAQC,YAAY,GAAKtB,KAAA,CAAKuB,OAAO,CAA7BD,YAAY;QAEpBA,YAAY,CAACE,IAAI,CAAC,oBAAoB,EAAEJ,OAAO,EAAEC,OAAO,CAAC;QACzDC,YAAY,CAACE,IAAI,CAAC,0BAA0B,EAAEP,KAAK,EAAEC,YAAY,CAAC;QAClEI,YAAY,CAACE,IAAI,CAAC,mBAAmB,EAAER,OAAO,CAAC;MACjD,CAAC;IAAA;IAAA,OAAAhB,KAAA;EAAA;EAAA,IAAAyB,aAAA,aAAA9B,eAAA;IAAA+B,GAAA;IAAAC,KAAA,EAVD,SAAAC,8BAAA,EAA4C;MAAA,IAAdC,CAAC,GAAA1B,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAA2B,SAAA,GAAA3B,SAAA,MAAG,CAAC;MAAA,IAAE4B,CAAC,GAAA5B,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAA2B,SAAA,GAAA3B,SAAA,MAAG,CAAC;MACxC,OAAO;QAAA,OAAO;UAAE6B,KAAK,EAAE,CAAC;UAAEC,MAAM,EAAE,CAAC;UAAEC,GAAG,EAAEH,CAAC;UAAEI,KAAK,EAAEN,CAAC;UAAEO,MAAM,EAAEL,CAAC;UAAEM,IAAI,EAAER;QAAE,CAAC;MAAA,CAAC;IAC9E;EAAC;IAAAH,GAAA;IAAAC,KAAA,EAUD,SAAAW,gBAAA,EAAkB;MAChB,IAAAC,aAAA,GAAoC,IAAI,CAAChB,OAAO;QAAxCiB,QAAQ,GAAAD,aAAA,CAARC,QAAQ;QAAEC,GAAG,GAAAF,aAAA,CAAHE,GAAG;QAAEC,CAAC,GAAAH,aAAA,CAADG,CAAC;QAAEf,KAAK,GAAAY,aAAA,CAALZ,KAAK;MAC/B,IAAMgB,MAAM,GAAGD,CAAC,GAAGA,CAAC,GAAG,IAAAE,2BAAoB,EAACjB,KAAK,CAAC;MAClD,IAAMkB,UAAU,GAAG,IAAAC,wBAAU,GAAE,CAACC,SAAS,EAAE,CAACC,SAAS,SAAAtC,MAAA,CAAS+B,GAAG,OAAI,CAACQ,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;MAClF,IAAMC,cAAc,GAAGL,UAAU,CAACM,IAAI,EAAE;MAExC,IAAIX,QAAQ,GAAG,CAAC,IAAIU,cAAc,EAAE;QAClCL,UAAU,CAACC,UAAU,EAAE,CAACN,QAAQ,CAACA,QAAQ,CAAC,CAACS,IAAI,CAAC,GAAG,EAAEN,MAAM,CAAC;MAC9D;IACF;EAAC;IAAAjB,GAAA;IAAAC,KAAA,EAED,SAAAyB,mBAAmBC,SAAS,EAAE;MAC5B,IAAIA,SAAS,CAACC,IAAI,KAAK,IAAI,CAACrC,KAAK,CAACqC,IAAI,EAAE;QACtC,IAAI,CAAChB,eAAe,EAAE;MACxB;IACF;EAAC;IAAAZ,GAAA;IAAAC,KAAA,EAED,SAAA4B,kBAAA,EAAoB;MAClB,IAAI,CAACjB,eAAe,EAAE;IACxB;EAAC;IAAAZ,GAAA;IAAAC,KAAA,EAED,SAAA6B,aAAaC,CAAC,EAAEC,CAAC,EAAE;MAAA,IAAAC,KAAA;MACjB,IAAAC,cAAA,GAeI,IAAI,CAACrC,OAAO;QAddsC,KAAK,GAAAD,cAAA,CAALC,KAAK;QACLC,KAAK,GAAAF,cAAA,CAALE,KAAK;QACLjC,CAAC,GAAA+B,cAAA,CAAD/B,CAAC;QACDE,CAAC,GAAA6B,cAAA,CAAD7B,CAAC;QACDW,CAAC,GAAAkB,cAAA,CAADlB,CAAC;QACDqB,MAAM,GAAAH,cAAA,CAANG,MAAM;QACNC,MAAM,GAAAJ,cAAA,CAANI,MAAM;QACNvB,GAAG,GAAAmB,cAAA,CAAHnB,GAAG;QACHD,QAAQ,GAAAoB,cAAA,CAARpB,QAAQ;QACRb,KAAK,GAAAiC,cAAA,CAALjC,KAAK;QACLsC,UAAU,GAAAL,cAAA,CAAVK,UAAU;QACVC,WAAW,GAAAN,cAAA,CAAXM,WAAW;QACXC,YAAY,GAAAP,cAAA,CAAZO,YAAY;QACZC,QAAQ,GAAAR,cAAA,CAARQ,QAAQ;MAEV,IAAAC,MAAA,OAAAC,eAAA,aAAyBR,KAAK;QAAvBS,MAAM,GAAAF,MAAA;QAAEG,MAAM,GAAAH,MAAA;MACrB,IAAMI,YAAY,GAAG,IAAI,CAACC,OAAO;MACjC,IAAMC,MAAM,GAAG,MAAM;MAErB,IAAIC,MAAM,CAACC,KAAK,CAACpB,CAAC,CAAC5B,CAAC,CAAC,CAAC,IAAI+C,MAAM,CAACC,KAAK,CAACpB,CAAC,CAAC1B,CAAC,CAAC,CAAC,EAAE;QAC5C,OAAO,IAAI;MACb;MAEA,OAAA4B,KAAA,GAAO,IAAAlE,aAAO,EAACuE,MAAM,CAAC,eACpBjF,MAAA,YAAAgC,aAAA,MAAA4C,KAAA,CAAAmB,EAAA;QAAA;QAAA,kBAAApE,MAAA,CAEkBgD,CAAC;QAAA,eACJ,IAAI,CAACqB,kBAAkB,CAAC,IAAI,EAAE,IAAI,CAAC9D,KAAK,EAAE;UAAE+D,MAAM,EAAEtB,CAAC;UAAEuB,KAAK,EAAEvB,CAAC;UAAEU,QAAQ,EAARA;QAAS,CAAC,CAAC;QAAA,gBAC3E,IAAI,CAACW,kBAAkB,CAAC,KAAK,EAAE,IAAI,CAAC9D,KAAK,EAAE;UAAE+D,MAAM,EAAEtB,CAAC;UAAEuB,KAAK,EAAEvB,CAAC;UAAEU,QAAQ,EAARA;QAAS,CAAC;MAAC,iBAE3FrF,MAAA,YAAAgC,aAAA,CAAC0D,YAAY,EAAAd,KAAA,CAAAmB,EAAA;QAAA;QAAA,SAAApE,MAAA,CAEJ+B,GAAG,EAAA/B,MAAA,CAAGgD,CAAC;QAAA,SACPA,CAAC;QAAA,UACD,QAAQ;QAAA,oBAAAhD,MAAA,CACG+B,GAAG;QAAA,MACjB8B,MAAM,CAACd,CAAC,CAAC5B,CAAC,CAAC,CAAC,GAAGkC,MAAM,CAAC,CAAC,CAAC;QAAA,MACxBS,MAAM,CAACf,CAAC,CAAC1B,CAAC,CAAC,CAAC,GAAGgC,MAAM,CAAC,CAAC,CAAC;QAAA,SACrBI,YAAY,CAACN,KAAK,CAAC;QAAA,WACjBO,QAAQ,WAAA1D,MAAA,CAAW+B,GAAG,OAAA/B,MAAA,CAAIgD,CAAC,iBAAc5B,SAAS;QAAA,KACxDY,CAAC;QAAA,mBAAAhC,MAAA,CACa8B,QAAQ;QAAA,eACZ0B;MAAW,GACxB,EACDE,QAAQ,iBACPrF,MAAA,YAAAgC,aAAA,CAACxB,QAAA,CAAA2F,WAAW,EAAAvB,KAAA,CAAAmB,EAAA;QAAA,SAAApE,MAAA,CACH+B,GAAG,OAAA/B,MAAA,CAAIgD,CAAC;QAAA,cACHG,KAAK;QAAA,SACVM,YAAY,CAACN,KAAK,CAAC;QAAA,YAChBO;MAAQ,GAErB,EACAX,CAAC,CAAC9B,KAAK,CAAC,KAAKG,SAAS,iBACrB/C,MAAA,YAAAgC,aAAA,CAAC4D,MAAM,EAAAhB,KAAA,CAAAmB,EAAA;QAAA;QAAA,KAEFP,MAAM,CAACd,CAAC,CAAC5B,CAAC,CAAC,CAAC,GAAGkC,MAAM,CAAC,CAAC,CAAC;QAAA,KACxBS,MAAM,CAACf,CAAC,CAAC1B,CAAC,CAAC,CAAC,GAAGgC,MAAM,CAAC,CAAC,CAAC;QAAA,MACxB,MAAM;QAAA,oBAAArD,MAAA,CACS+B,GAAG;QAAA,SACd0B,YAAY,CAACF,UAAU,CAAC;QAAA,eAClBC;MAAW,IAEvBT,CAAC,CAAC9B,KAAK,CAAC,CAEZ,CACC;IAER;EAAC;IAAAD,GAAA;IAAAC,KAAA,EAED,SAAAwD,OAAA,EAAS;MACP,IAAAC,cAAA,GAA0C,IAAI,CAAC7D,OAAO;QAA9C+B,IAAI,GAAA8B,cAAA,CAAJ9B,IAAI;QAAEb,GAAG,GAAA2C,cAAA,CAAH3C,GAAG;QAAEqB,KAAK,GAAAsB,cAAA,CAALtB,KAAK;QAAEjC,CAAC,GAAAuD,cAAA,CAADvD,CAAC;QAAEE,CAAC,GAAAqD,cAAA,CAADrD,CAAC;QAAEJ,KAAK,GAAAyD,cAAA,CAALzD,KAAK;MACrC,IAAA0D,OAAA,OAAAf,eAAA,aAAyBR,KAAK;QAAvBS,MAAM,GAAAc,OAAA;QAAEb,MAAM,GAAAa,OAAA;MACrB,IAAMC,KAAK,GAAGC,IAAI,CAACC,GAAG,CAACjB,MAAM,CAACkB,KAAK,EAAE,CAAC,CAAC,CAAC,GAAGlB,MAAM,CAACkB,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;MAC7D,IAAMC,KAAK,GAAGH,IAAI,CAACC,GAAG,CAAChB,MAAM,CAACiB,KAAK,EAAE,CAAC,CAAC,CAAC,GAAGjB,MAAM,CAACiB,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;MAC7D,IAAME,OAAO,GAAGJ,IAAI,CAACK,GAAG,CAACrB,MAAM,CAACkB,KAAK,EAAE,CAAC,CAAC,CAAC,EAAElB,MAAM,CAACkB,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;MAC9D,IAAMI,OAAO,GAAGN,IAAI,CAACK,GAAG,CAACpB,MAAM,CAACiB,KAAK,EAAE,CAAC,CAAC,CAAC,EAAEjB,MAAM,CAACiB,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;MAE9D,IAAI,CAAClE,OAAO,CAACuE,gBAAgB,CAACC,oBAAoB,CAAClE,CAAC,EAAEE,CAAC,EAAEJ,KAAK,CAAC;MAC/D,IAAI,CAACJ,OAAO,CAACuE,gBAAgB,CAACE,iBAAiB,CAAC,cAAc,CAAC;MAE/D,oBACEjH,MAAA,YAAAgC,aAAA,CAAAhC,MAAA,YAAAkH,QAAA,QACG3C,IAAI,CAAC4C,GAAG,CAAC,IAAI,CAAC1C,YAAY,CAAC2C,IAAI,CAAC,IAAI,CAAC,CAAC,eACvCpH,MAAA,YAAAgC,aAAA;QAAUqF,EAAE,EAAE3D;MAAI,gBAChB1D,MAAA,YAAAgC,aAAA;QAAMc,CAAC,EAAE8D,OAAQ;QAAC5D,CAAC,EAAE8D,OAAQ;QAAC7D,KAAK,KAAAtB,MAAA,CAAK4E,KAAK,OAAK;QAACrD,MAAM,KAAAvB,MAAA,CAAKgF,KAAK;MAAK,EAAG,CAClE,CACV;IAEP;EAAC;EAAA,OAAA/F,eAAA;AAAA,EAvI2B0G,eAAS;AAAA,IAAA1F,gBAAA,aAAjChB,eAAe,iBACE,aAAa;AAAA,IAAAgB,gBAAA,aAD9BhB,eAAe,WAEJH,KAAK;AAAA,IAAAmB,gBAAA,aAFhBhB,eAAe,aAGF,CAAC,IAAA2G,oBAAmB,GAAE,CAAC;AAAA,IAAA3F,gBAAA,aAHpChB,eAAe,kBAKG;EACpBoE,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;EACdvB,QAAQ,EAAE;AACZ,CAAC;AAkIH,IAAM+D,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAItF,KAAK,EAAK;EAAA,IAAAuF,IAAA,GAAAC,YAAA;IAAAC,KAAA;EACpC,IAAMC,mBAAmB,GACiCC,mBAAO;EAAjE,OAAAF,KAAA,GAAO,IAAAjH,aAAO,EAACwB,KAAK,CAAC+C,MAAM,CAAC,eAACjF,MAAA,YAAAgC,aAAA,CAAC4F,mBAAmB,EAAAD,KAAA,CAAA5B,EAAA,4BAAA+B,cAAA,qBAAAhI,KAAA,CAAAiI,WAAA;IAAA;EAAA,GAAAN,IAAA,IAAuC;AAC1F,CAAC;AAED,IAAMO,WAAW,GAAG,IAAAhG,yBAAa,EAACpB,eAAe,EAAE;EACjDiH,OAAO,EAAE,CAACL,kBAAkB,EAAEK,mBAAO,CAACI,yBAAyB;AACjE,CAAC,CAAC;AAAC,IAAAC,QAAA,GAEYF,WAAW;AAAAG,OAAA,cAAAD,QAAA"}
|
package/lib/cjs/StackBar.js
CHANGED
|
@@ -17,7 +17,7 @@ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/de
|
|
|
17
17
|
var _react = _interopRequireDefault(require("react"));
|
|
18
18
|
var _d3Shape = require("d3-shape");
|
|
19
19
|
var _core = require("@semcore/core");
|
|
20
|
-
var _getOriginChildren = _interopRequireDefault(require("@semcore/
|
|
20
|
+
var _getOriginChildren = _interopRequireDefault(require("@semcore/core/lib/utils/getOriginChildren"));
|
|
21
21
|
var _createElement = _interopRequireDefault(require("./createElement"));
|
|
22
22
|
var _Bar = _interopRequireWildcard(require("./Bar"));
|
|
23
23
|
var _HorizontalBar = _interopRequireWildcard(require("./HorizontalBar"));
|
package/lib/cjs/StackBar.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StackBar.js","names":["_react","_interopRequireDefault","require","_d3Shape","_core","_getOriginChildren","_createElement","_Bar","_interopRequireWildcard","_HorizontalBar","_utils","DEFAULT_INSTANCE","Symbol","XY0","StackBarRoot","_Component","_inherits2","_super","_createSuper2","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty2","_assertThisInitialized2","_createClass2","key","value","getSeries","_this$asProps","asProps","Children","data","stack","keys","React","toArray","getOriginChildren","reduce","acc","child","isValidElement","type","StackBar","Bar","props","hide","push","y","HorizontalBar","x","getBarProps","_ref","index","_this2","_this$offsetBars$seri","_ref$hMin","hMin","MIN_HEIGHT","_this$asProps2","r","scale","maxBarSize","patterns","_scale","_slicedToArray2","yScale","seriesIndex","series","findIndex","s","rBar","map","i","slice","some","bar","offsetBars","_objectSpread2","_objectSpread4","calcOffset","_d$XY","_d$XY2","offset","offsetBar","_offsetBar$i","d","absHeight","Math","abs","min","domain","isEmptyValue","Number","offsetValue","y0","groupKey","color","getChartDefaultColorName","getHorizontalBarProps","_ref2","_this3","_this$offsetBars$seri2","_ref2$wMin","wMin","MIN_WIDTH","_this$asProps3","_scale2","xScale","_objectSpread3","_d$XY3","_d$XY4","_offsetBar$i2","absWidth","max","x0","render","Element","dataHintsHandler","establishDataType","createElement","Component","d3Stack","_default","exports"],"sources":["../../src/StackBar.jsx"],"sourcesContent":["import React from 'react';\nimport { stack as d3Stack } from 'd3-shape';\nimport { Component } from '@semcore/core';\nimport getOriginChildren from '@semcore/utils/lib/getOriginChildren';\nimport createElement from './createElement';\nimport Bar, { MIN_HEIGHT } from './Bar';\nimport HorizontalBar, { MIN_WIDTH } from './HorizontalBar';\nimport { getChartDefaultColorName } from './utils';\n\nconst DEFAULT_INSTANCE = Symbol('DEFAULT_INSTANCE');\nconst XY0 = Symbol('XY0');\n\nclass StackBarRoot extends Component {\n static displayName = 'StackBar';\n\n static defaultProps = () => {\n const stack = d3Stack();\n stack[DEFAULT_INSTANCE] = true;\n return { stack, r: 2 };\n };\n\n offsetBars = [];\n\n getSeries() {\n const { Children, data, stack } = this.asProps;\n\n if (stack[DEFAULT_INSTANCE]) {\n const keys = React.Children.toArray(getOriginChildren(Children)).reduce((acc, child) => {\n if (React.isValidElement(child) && child.type === StackBar.Bar && !child.props.hide) {\n acc.push(child.props.y);\n }\n if (\n React.isValidElement(child) &&\n child.type === StackBar.HorizontalBar &&\n !child.props.hide\n ) {\n acc.push(child.props.x);\n }\n return acc;\n }, []);\n stack.keys(keys);\n }\n\n return stack(data);\n }\n\n getBarProps({ y, hMin = MIN_HEIGHT }, index) {\n const { x, r, scale, maxBarSize, patterns } = this.asProps;\n const [, yScale] = scale;\n\n const seriesIndex = this.series.findIndex((s) => s.key === y);\n // or [] if hide bar\n const series = this.series[seriesIndex] || [];\n\n const rBar = series.map((s, i) =>\n this.series.slice(seriesIndex + 1).some((bar) => bar[i][0] !== bar[i][1]) ? 0 : r,\n );\n\n this.offsetBars[seriesIndex] = this.offsetBars[seriesIndex] ?? [];\n const data = series.map((s) => ({\n ...s.data,\n [y]: s[1],\n [XY0]: s[0],\n }));\n\n const calcOffset = (i) => {\n const offset = this.offsetBars.reduce((offset, offsetBar) => offset - (offsetBar[i] ?? 0), 0);\n const d = data[i];\n const absHeight = Math.abs(\n yScale(d[y]) - Math.min(yScale(yScale.domain()[0]), yScale(d[XY0] ?? 0)),\n );\n\n const isEmptyValue = Number(d[y] - (d[XY0] ?? 0)) === 0;\n\n if (isEmptyValue || absHeight >= hMin) {\n this.offsetBars[seriesIndex][i] = 0;\n } else {\n const offsetValue = hMin - absHeight;\n this.offsetBars[seriesIndex][i] = d[y] > 0 ? offsetValue : -offsetValue;\n }\n\n return [0, offset];\n };\n\n return {\n data,\n hMin,\n y0: XY0,\n x,\n r: rBar,\n groupKey: x,\n offset: calcOffset,\n maxBarSize,\n color: getChartDefaultColorName(index),\n patterns,\n };\n }\n\n getHorizontalBarProps({ x, wMin = MIN_WIDTH }, index) {\n const { y, r, scale, maxBarSize, patterns } = this.asProps;\n const [xScale] = scale;\n\n const seriesIndex = this.series.findIndex((s) => s.key === x);\n const series = this.series[seriesIndex];\n\n const rBar = series.map((s, i) =>\n this.series.slice(seriesIndex + 1).some((bar) => bar[i][0] !== bar[i][1]) ? 0 : r,\n );\n\n this.offsetBars[seriesIndex] = this.offsetBars[seriesIndex] ?? [];\n const data = series.map((s) => ({\n ...s.data,\n [x]: s[1],\n [XY0]: s[0],\n }));\n\n const calcOffset = (i) => {\n const offset = this.offsetBars.reduce((offset, offsetBar) => offset - (offsetBar[i] ?? 0), 0);\n const d = data[i];\n const absWidth = Math.abs(\n xScale(d[x]) - Math.max(xScale(xScale.domain()[0]), xScale(d[XY0] ?? 0)),\n );\n this.offsetBars[seriesIndex][i] =\n Number(d[x] - (d[XY0] ?? 0)) === 0 ? 0 : absWidth >= wMin ? 0 : d[x] > 0 ? -wMin : wMin;\n return [offset, 0];\n };\n\n return {\n data,\n wMin,\n x0: XY0,\n y,\n r: rBar,\n groupKey: y,\n offset: calcOffset,\n maxBarSize,\n color: getChartDefaultColorName(index),\n patterns,\n };\n }\n\n render() {\n const Element = this.Element;\n this.series = this.getSeries();\n\n this.asProps.dataHintsHandler.establishDataType('grouped-values');\n\n this.offsetBars = [];\n\n return <Element aria-hidden render='g' series={this.series} />;\n }\n}\n\nconst StackBar = createElement(StackBarRoot, {\n Bar,\n HorizontalBar,\n});\n\nexport default StackBar;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"StackBar.js","names":["_react","_interopRequireDefault","require","_d3Shape","_core","_getOriginChildren","_createElement","_Bar","_interopRequireWildcard","_HorizontalBar","_utils","DEFAULT_INSTANCE","Symbol","XY0","StackBarRoot","_Component","_inherits2","_super","_createSuper2","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty2","_assertThisInitialized2","_createClass2","key","value","getSeries","_this$asProps","asProps","Children","data","stack","keys","React","toArray","getOriginChildren","reduce","acc","child","isValidElement","type","StackBar","Bar","props","hide","push","y","HorizontalBar","x","getBarProps","_ref","index","_this2","_this$offsetBars$seri","_ref$hMin","hMin","MIN_HEIGHT","_this$asProps2","r","scale","maxBarSize","patterns","_scale","_slicedToArray2","yScale","seriesIndex","series","findIndex","s","rBar","map","i","slice","some","bar","offsetBars","_objectSpread2","_objectSpread4","calcOffset","_d$XY","_d$XY2","offset","offsetBar","_offsetBar$i","d","absHeight","Math","abs","min","domain","isEmptyValue","Number","offsetValue","y0","groupKey","color","getChartDefaultColorName","getHorizontalBarProps","_ref2","_this3","_this$offsetBars$seri2","_ref2$wMin","wMin","MIN_WIDTH","_this$asProps3","_scale2","xScale","_objectSpread3","_d$XY3","_d$XY4","_offsetBar$i2","absWidth","max","x0","render","Element","dataHintsHandler","establishDataType","createElement","Component","d3Stack","_default","exports"],"sources":["../../src/StackBar.jsx"],"sourcesContent":["import React from 'react';\nimport { stack as d3Stack } from 'd3-shape';\nimport { Component } from '@semcore/core';\nimport getOriginChildren from '@semcore/core/lib/utils/getOriginChildren';\nimport createElement from './createElement';\nimport Bar, { MIN_HEIGHT } from './Bar';\nimport HorizontalBar, { MIN_WIDTH } from './HorizontalBar';\nimport { getChartDefaultColorName } from './utils';\n\nconst DEFAULT_INSTANCE = Symbol('DEFAULT_INSTANCE');\nconst XY0 = Symbol('XY0');\n\nclass StackBarRoot extends Component {\n static displayName = 'StackBar';\n\n static defaultProps = () => {\n const stack = d3Stack();\n stack[DEFAULT_INSTANCE] = true;\n return { stack, r: 2 };\n };\n\n offsetBars = [];\n\n getSeries() {\n const { Children, data, stack } = this.asProps;\n\n if (stack[DEFAULT_INSTANCE]) {\n const keys = React.Children.toArray(getOriginChildren(Children)).reduce((acc, child) => {\n if (React.isValidElement(child) && child.type === StackBar.Bar && !child.props.hide) {\n acc.push(child.props.y);\n }\n if (\n React.isValidElement(child) &&\n child.type === StackBar.HorizontalBar &&\n !child.props.hide\n ) {\n acc.push(child.props.x);\n }\n return acc;\n }, []);\n stack.keys(keys);\n }\n\n return stack(data);\n }\n\n getBarProps({ y, hMin = MIN_HEIGHT }, index) {\n const { x, r, scale, maxBarSize, patterns } = this.asProps;\n const [, yScale] = scale;\n\n const seriesIndex = this.series.findIndex((s) => s.key === y);\n // or [] if hide bar\n const series = this.series[seriesIndex] || [];\n\n const rBar = series.map((s, i) =>\n this.series.slice(seriesIndex + 1).some((bar) => bar[i][0] !== bar[i][1]) ? 0 : r,\n );\n\n this.offsetBars[seriesIndex] = this.offsetBars[seriesIndex] ?? [];\n const data = series.map((s) => ({\n ...s.data,\n [y]: s[1],\n [XY0]: s[0],\n }));\n\n const calcOffset = (i) => {\n const offset = this.offsetBars.reduce((offset, offsetBar) => offset - (offsetBar[i] ?? 0), 0);\n const d = data[i];\n const absHeight = Math.abs(\n yScale(d[y]) - Math.min(yScale(yScale.domain()[0]), yScale(d[XY0] ?? 0)),\n );\n\n const isEmptyValue = Number(d[y] - (d[XY0] ?? 0)) === 0;\n\n if (isEmptyValue || absHeight >= hMin) {\n this.offsetBars[seriesIndex][i] = 0;\n } else {\n const offsetValue = hMin - absHeight;\n this.offsetBars[seriesIndex][i] = d[y] > 0 ? offsetValue : -offsetValue;\n }\n\n return [0, offset];\n };\n\n return {\n data,\n hMin,\n y0: XY0,\n x,\n r: rBar,\n groupKey: x,\n offset: calcOffset,\n maxBarSize,\n color: getChartDefaultColorName(index),\n patterns,\n };\n }\n\n getHorizontalBarProps({ x, wMin = MIN_WIDTH }, index) {\n const { y, r, scale, maxBarSize, patterns } = this.asProps;\n const [xScale] = scale;\n\n const seriesIndex = this.series.findIndex((s) => s.key === x);\n const series = this.series[seriesIndex];\n\n const rBar = series.map((s, i) =>\n this.series.slice(seriesIndex + 1).some((bar) => bar[i][0] !== bar[i][1]) ? 0 : r,\n );\n\n this.offsetBars[seriesIndex] = this.offsetBars[seriesIndex] ?? [];\n const data = series.map((s) => ({\n ...s.data,\n [x]: s[1],\n [XY0]: s[0],\n }));\n\n const calcOffset = (i) => {\n const offset = this.offsetBars.reduce((offset, offsetBar) => offset - (offsetBar[i] ?? 0), 0);\n const d = data[i];\n const absWidth = Math.abs(\n xScale(d[x]) - Math.max(xScale(xScale.domain()[0]), xScale(d[XY0] ?? 0)),\n );\n this.offsetBars[seriesIndex][i] =\n Number(d[x] - (d[XY0] ?? 0)) === 0 ? 0 : absWidth >= wMin ? 0 : d[x] > 0 ? -wMin : wMin;\n return [offset, 0];\n };\n\n return {\n data,\n wMin,\n x0: XY0,\n y,\n r: rBar,\n groupKey: y,\n offset: calcOffset,\n maxBarSize,\n color: getChartDefaultColorName(index),\n patterns,\n };\n }\n\n render() {\n const Element = this.Element;\n this.series = this.getSeries();\n\n this.asProps.dataHintsHandler.establishDataType('grouped-values');\n\n this.offsetBars = [];\n\n return <Element aria-hidden render='g' series={this.series} />;\n }\n}\n\nconst StackBar = createElement(StackBarRoot, {\n Bar,\n HorizontalBar,\n});\n\nexport default StackBar;\n"],"mappings":"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"}
|
package/lib/cjs/StackedArea.js
CHANGED
|
@@ -14,7 +14,7 @@ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/de
|
|
|
14
14
|
var _react = _interopRequireDefault(require("react"));
|
|
15
15
|
var _d3Shape = require("d3-shape");
|
|
16
16
|
var _core = require("@semcore/core");
|
|
17
|
-
var _getOriginChildren = _interopRequireDefault(require("@semcore/
|
|
17
|
+
var _getOriginChildren = _interopRequireDefault(require("@semcore/core/lib/utils/getOriginChildren"));
|
|
18
18
|
var _createElement = _interopRequireDefault(require("./createElement"));
|
|
19
19
|
var _Area = _interopRequireDefault(require("./Area"));
|
|
20
20
|
var _utils = require("./utils");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StackedArea.js","names":["_react","_interopRequireDefault","require","_d3Shape","_core","_getOriginChildren","_createElement","_Area","_utils","DEFAULT_INSTANCE","Symbol","Y0","StackedAreaRoot","_Component","_inherits2","_super","_createSuper2","_classCallCheck2","apply","arguments","_createClass2","key","value","getSeries","_this$asProps","asProps","Children","data","stack","keys","React","toArray","getOriginChildren","reduce","acc","child","isValidElement","type","StackedArea","Area","props","hide","push","y","reverse","getAreaProps","_ref","index","_this$asProps2","x","patterns","series","find","s","color","getChartDefaultColorName","map","_objectSpread2","_objectSpread3","_defineProperty2","y0","render","Element","createElement","Component","d3Stack","_default","exports"],"sources":["../../src/StackedArea.jsx"],"sourcesContent":["import React from 'react';\nimport { stack as d3Stack } from 'd3-shape';\nimport { Component } from '@semcore/core';\nimport getOriginChildren from '@semcore/
|
|
1
|
+
{"version":3,"file":"StackedArea.js","names":["_react","_interopRequireDefault","require","_d3Shape","_core","_getOriginChildren","_createElement","_Area","_utils","DEFAULT_INSTANCE","Symbol","Y0","StackedAreaRoot","_Component","_inherits2","_super","_createSuper2","_classCallCheck2","apply","arguments","_createClass2","key","value","getSeries","_this$asProps","asProps","Children","data","stack","keys","React","toArray","getOriginChildren","reduce","acc","child","isValidElement","type","StackedArea","Area","props","hide","push","y","reverse","getAreaProps","_ref","index","_this$asProps2","x","patterns","series","find","s","color","getChartDefaultColorName","map","_objectSpread2","_objectSpread3","_defineProperty2","y0","render","Element","createElement","Component","d3Stack","_default","exports"],"sources":["../../src/StackedArea.jsx"],"sourcesContent":["import React from 'react';\nimport { stack as d3Stack } from 'd3-shape';\nimport { Component } from '@semcore/core';\nimport getOriginChildren from '@semcore/core/lib/utils/getOriginChildren';\nimport createElement from './createElement';\nimport Area from './Area';\nimport { getChartDefaultColorName } from './utils';\n\nconst DEFAULT_INSTANCE = Symbol('DEFAULT_INSTANCE');\nconst Y0 = Symbol('Y0');\n\nclass StackedAreaRoot extends Component {\n static displayName = 'StackedArea';\n\n static defaultProps = () => {\n const stack = d3Stack();\n stack[DEFAULT_INSTANCE] = true;\n return { stack };\n };\n\n getSeries() {\n const { Children, data, stack } = this.asProps;\n\n if (stack[DEFAULT_INSTANCE]) {\n const keys = React.Children.toArray(getOriginChildren(Children)).reduce((acc, child) => {\n if (React.isValidElement(child) && child.type === StackedArea.Area && !child.props.hide) {\n acc.push(child.props.y);\n }\n return acc;\n }, []);\n stack.keys(keys.reverse());\n }\n\n return stack(data);\n }\n\n getAreaProps({ y }, index) {\n const { x, patterns } = this.asProps;\n // or [] if hide area\n const series = this.series.find((s) => s.key === y) || [];\n return {\n color: getChartDefaultColorName(index),\n patterns,\n data: series.map((s) => ({\n ...s.data,\n // if null is passed in the data, then we pass it, because d3 null leads to 0\n [y]: s.data[y] === null ? null : s[1],\n [Y0]: s[0],\n })),\n y0: Y0,\n x,\n };\n }\n\n render() {\n const Element = this.Element;\n this.series = this.getSeries();\n return <Element aria-hidden render='g' series={this.series} />;\n }\n}\n\nconst StackedArea = createElement(StackedAreaRoot, { Area });\n\nexport default StackedArea;\n"],"mappings":"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"}
|
package/lib/cjs/Tooltip.js
CHANGED
|
@@ -13,27 +13,26 @@ var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/hel
|
|
|
13
13
|
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
14
14
|
var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper"));
|
|
15
15
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
16
|
-
var _index = require("@semcore/utils/lib/core/index");
|
|
17
16
|
var _core = require("@semcore/core");
|
|
18
17
|
var _react = _interopRequireDefault(require("react"));
|
|
19
18
|
var _popper = _interopRequireDefault(require("@semcore/popper"));
|
|
20
19
|
var _flexBox = require("@semcore/flex-box");
|
|
21
|
-
var _findComponent = _interopRequireDefault(require("@semcore/
|
|
20
|
+
var _findComponent = _interopRequireDefault(require("@semcore/core/lib/utils/findComponent"));
|
|
22
21
|
var _createElement = _interopRequireDefault(require("./createElement"));
|
|
23
22
|
var _utils = require("./utils");
|
|
24
|
-
var _useColorResolver = require("@semcore/
|
|
23
|
+
var _useColorResolver = require("@semcore/core/lib/utils/use/useColorResolver");
|
|
25
24
|
var _Pattern = require("./Pattern");
|
|
26
25
|
var _excluded = ["Children", "children", "tag", "forcedAdvancedMode", "onClick"];
|
|
27
26
|
/*__reshadow-styles__:"./style/tooltip.shadow.css"*/
|
|
28
|
-
var style = ( /*__reshadow_css_start__*/
|
|
29
|
-
"__STooltip": "
|
|
30
|
-
"__STitle": "
|
|
31
|
-
"__SDotGroup": "
|
|
32
|
-
"__SDot": "
|
|
33
|
-
"__SDotCircle": "
|
|
34
|
-
"_color": "
|
|
35
|
-
"--color": "--
|
|
36
|
-
"__SFooter": "
|
|
27
|
+
var style = ( /*__reshadow_css_start__*/_core.sstyled.insert( /*__inner_css_start__*/".___STooltip_3vrmv_gg_{font-size:var(--intergalactic-fs-100, 12px);line-height:var(--intergalactic-lh-100, 133%);position:relative;background-color:var(--intergalactic-bg-primary-neutral, #ffffff);border-radius:var(--intergalactic-popper-rounded, 6px);border:1px solid var(--intergalactic-border-secondary, #e0e1e9);box-sizing:border-box;box-shadow:var(--intergalactic-box-shadow-popper, 0px 1px 12px 0px rgba(25, 27, 35, 0.15));padding:var(--intergalactic-spacing-3x, 12px)}.___STitle_3vrmv_gg_{color:var(--intergalactic-text-secondary, #6c6e79);margin-bottom:var(--intergalactic-spacing-2x, 8px)}.___SDotGroup_3vrmv_gg_{display:flex;align-items:center}.___SDot_3vrmv_gg_{margin-right:var(--intergalactic-spacing-2x, 8px)}.___SDotCircle_3vrmv_gg_.__color_3vrmv_gg_{background-color:var(--color_3vrmv);width:8px;height:8px;border-radius:50%}.___SFooter_3vrmv_gg_{background:var(--intergalactic-bg-secondary-neutral, #f4f5f9);padding:var(--intergalactic-spacing-1x, 4px) var(--intergalactic-spacing-3x, 12px);border-radius:0 0 var(--intergalactic-rounded-medium, 6px) var(--intergalactic-rounded-medium, 6px);margin:var(--intergalactic-spacing-3x, 12px) calc(-1*var(--intergalactic-spacing-3x, 12px)) calc(-1*var(--intergalactic-spacing-3x, 12px))}" /*__inner_css_end__*/, "3vrmv_gg_") /*__reshadow_css_end__*/, {
|
|
28
|
+
"__STooltip": "___STooltip_3vrmv_gg_",
|
|
29
|
+
"__STitle": "___STitle_3vrmv_gg_",
|
|
30
|
+
"__SDotGroup": "___SDotGroup_3vrmv_gg_",
|
|
31
|
+
"__SDot": "___SDot_3vrmv_gg_",
|
|
32
|
+
"__SDotCircle": "___SDotCircle_3vrmv_gg_",
|
|
33
|
+
"_color": "__color_3vrmv_gg_",
|
|
34
|
+
"--color": "--color_3vrmv",
|
|
35
|
+
"__SFooter": "___SFooter_3vrmv_gg_"
|
|
37
36
|
});
|
|
38
37
|
/**
|
|
39
38
|
* `TooltipDotRenderContext` is a hack to bypass problem that getDotProps doesn't work for D3 tooltip.
|
package/lib/cjs/Tooltip.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tooltip.js","names":["_core","require","_react","_interopRequireDefault","_popper","_flexBox","_findComponent","_createElement","_utils","_useColorResolver","_Pattern","_excluded","style","_index","sstyled","insert","TooltipDotRenderContext","React","createContext","index","indexKeysCache","Set","TooltipRoot","_Component","_inherits2","_super","_createSuper2","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty2","_assertThisInitialized2","$visible","anchorProps","tooltipProps","x","y","e","onClick","asProps","_this$state$tooltipPr","state","xIndex","yIndex","_createClass2","key","value","getTriggerProps","_this$asProps","hideHoverLine","getPopperProps","excludeAnchorProps","_objectSpread2","componentDidMount","_this2","eventEmitter","unsubscribe","push","subscribe","setState","visible","_this2$popper$current","virtualElementPosition","virtualTriggerElement","setTimeout","setPopperTrigger","getBoundingClientRect","_this2$virtualElement","width","height","top","right","bottom","left","popper","current","update","componentWillUnmount","forEach","render","_ref","_this$asProps$pattern","_this3","_this$asProps2","Children","children","tag","forcedAdvancedMode","other","_objectWithoutProperties2","advancedMode","findComponent","Tooltip","Trigger","displayName","Popper","renderContext","clear","patterns","createElement","Provider","assignProps","handlerCancel","allowedAutoPlacements","_ref9","_this3$popper$current","setTrigger","Fragment","handleTriggerClick","Component","PopperPopper","props","_ref5","STooltip","Element","styles","useCallback","cn","Title","_ref2","arguments[0]","_ref6","STitle","Box","Dot","_ref3","_ref7","_props$patterns","color","resolveColor","useColorResolver","useContext","defaultColor","getChartDefaultColorName","has","add","SDotGroup","SDot","SDotCircle","PatternSymbol","Footer","_ref4","_ref8","SFooter","_default","exports"],"sources":["../../src/Tooltip.jsx"],"sourcesContent":["import React from 'react';\nimport { Component, Root, sstyled } from '@semcore/core';\nimport Popper from '@semcore/popper';\nimport { Box } from '@semcore/flex-box';\nimport findComponent from '@semcore/utils/lib/findComponent';\nimport createElement from './createElement';\nimport { getChartDefaultColorName } from './utils';\nimport { useColorResolver } from '@semcore/utils/lib/use/useColorResolver';\n\nimport style from './style/tooltip.shadow.css';\nimport { PatternSymbol } from './Pattern';\n\n/**\n * `TooltipDotRenderContext` is a hack to bypass problem that getDotProps doesn't work for D3 tooltip.\n * Probably it may be removed after migrating to a new core.\n */\nconst TooltipDotRenderContext = React.createContext({ index: -1, indexKeysCache: new Set() });\n\nclass TooltipRoot extends Component {\n static displayName = 'Tooltip';\n\n static style = style;\n\n state = {\n $visible: false,\n anchorProps: {},\n tooltipProps: {},\n };\n\n renderContext = { index: -1, indexKeysCache: new Set() };\n\n handlerCancel = () => false;\n\n getTriggerProps() {\n const { x, y, hideHoverLine } = this.asProps;\n return { x, y, hideHoverLine };\n }\n\n getPopperProps() {\n if (this.asProps.excludeAnchorProps) {\n return {\n $visible: this.state.$visible,\n ...this.state.tooltipProps,\n };\n }\n\n return {\n $visible: this.state.$visible,\n ...this.state.anchorProps,\n ...this.state.tooltipProps,\n };\n }\n\n virtualElementPosition = { x: 0, y: 0 };\n virtualTriggerElement = null;\n unsubscribe = [];\n componentDidMount() {\n const { eventEmitter } = this.asProps;\n this.unsubscribe.push(\n eventEmitter.subscribe('setTooltipRenderingProps', (anchorProps, tooltipProps) => {\n this.setState({ anchorProps, tooltipProps });\n }),\n eventEmitter.subscribe('setTooltipVisible', (visible) =>\n this.setState({ $visible: visible }),\n ),\n eventEmitter.subscribe('setTooltipPosition', (x, y) => {\n this.virtualElementPosition.x = x;\n this.virtualElementPosition.y = y;\n if (this.virtualTriggerElement === null) {\n this.virtualTriggerElement = {};\n setTimeout(() => {\n this.setPopperTrigger(this.virtualTriggerElement);\n }, 0);\n }\n this.virtualTriggerElement.getBoundingClientRect = () => {\n const { x, y } = this.virtualElementPosition;\n return { width: 0, height: 0, top: y, right: x, bottom: y, left: x };\n };\n this.popper.current?.update();\n }),\n );\n }\n\n componentWillUnmount() {\n this.unsubscribe.forEach((unsubscribe) => unsubscribe());\n }\n\n handleTriggerClick = (e) => {\n const { onClick } = this.asProps;\n const { xIndex, yIndex } = this.state.tooltipProps;\n\n const index = xIndex ?? yIndex;\n\n onClick?.(index, e);\n };\n\n render() {\n const { Children, children, tag, forcedAdvancedMode, onClick, ...other } = this.asProps;\n\n const advancedMode =\n forcedAdvancedMode ||\n !!findComponent(Children, [Tooltip.Trigger.displayName, Tooltip.Popper.displayName]);\n this.renderContext.index = -1;\n this.renderContext.indexKeysCache.clear();\n this.renderContext.patterns = this.asProps.patterns ?? this.state.tooltipProps.patterns;\n\n return (\n <TooltipDotRenderContext.Provider value={this.renderContext}>\n <Root\n render={Popper}\n visible={this.state.$visible}\n onFirstUpdate={this.handlerCancel}\n onOutsideClick={this.handlerCancel}\n interaction='none'\n explicitTriggerSet\n offset={8}\n flip={{ allowedAutoPlacements: ['left', 'right'] }}\n >\n {({ popper, setTrigger }) => {\n this.setPopperTrigger = setTrigger;\n this.popper = popper;\n this.popper.current?.update();\n return advancedMode ? (\n <Children />\n ) : (\n <>\n {tag && <Tooltip.Trigger tag={tag} onClick={this.handleTriggerClick} />}\n <Tooltip.Popper {...other}>{children}</Tooltip.Popper>\n </>\n );\n }}\n </Root>\n </TooltipDotRenderContext.Provider>\n );\n }\n}\n\nfunction PopperPopper(props) {\n const { Element: STooltip, styles, $visible, x, y } = props;\n\n const handlerCancel = React.useCallback(() => false, []);\n\n if (!$visible) return null;\n\n return sstyled(styles)(\n <STooltip\n render={Popper.Popper}\n childrenPosition='inside'\n onMouseMove={handlerCancel}\n x={x}\n y={y}\n />,\n );\n}\nPopperPopper.style = style;\n\nfunction Title(props) {\n const STitle = Root;\n const { styles } = props;\n return sstyled(styles)(<STitle render={Box} __excludeProps={['data', 'scale']} />);\n}\nTitle.style = style;\n\nfunction Dot(props) {\n const { styles, color, Children } = props;\n const resolveColor = useColorResolver();\n const renderContext = React.useContext(TooltipDotRenderContext);\n const defaultColor = getChartDefaultColorName(renderContext.index);\n const patterns = props.patterns ?? renderContext.patterns;\n\n const key = Children;\n if (!renderContext.indexKeysCache.has(key)) {\n renderContext.indexKeysCache.add(key);\n renderContext.index += 1;\n }\n const SDotGroup = Root;\n const SDot = Box;\n const SDotCircle = Box;\n return sstyled(styles)(\n <SDotGroup render={Box} __excludeProps={['data', 'scale']}>\n {patterns ? (\n <SDot>\n <PatternSymbol\n color={resolveColor(color ?? defaultColor)}\n patternKey={color ?? defaultColor}\n />\n </SDot>\n ) : (\n <SDot>\n <SDotCircle color={resolveColor(color ?? defaultColor)} />\n </SDot>\n )}\n <Children />\n </SDotGroup>,\n );\n}\nDot.style = style;\n\nfunction Footer(props) {\n const { styles } = props;\n const SFooter = Root;\n return sstyled(styles)(<SFooter render={Box} __excludeProps={['data', 'scale']} />);\n}\nFooter.style = style;\n\nconst Tooltip = createElement(TooltipRoot, {\n Trigger: Popper.Trigger,\n Popper: PopperPopper,\n Title,\n Footer,\n Dot,\n});\n\nexport default Tooltip;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Tooltip.js","names":["_core","require","_react","_interopRequireDefault","_popper","_flexBox","_findComponent","_createElement","_utils","_useColorResolver","_Pattern","_excluded","style","sstyled","insert","TooltipDotRenderContext","React","createContext","index","indexKeysCache","Set","TooltipRoot","_Component","_inherits2","_super","_createSuper2","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty2","_assertThisInitialized2","$visible","anchorProps","tooltipProps","x","y","e","onClick","asProps","_this$state$tooltipPr","state","xIndex","yIndex","_createClass2","key","value","getTriggerProps","_this$asProps","hideHoverLine","getPopperProps","excludeAnchorProps","_objectSpread2","componentDidMount","_this2","eventEmitter","unsubscribe","push","subscribe","setState","visible","_this2$popper$current","virtualElementPosition","virtualTriggerElement","setTimeout","setPopperTrigger","getBoundingClientRect","_this2$virtualElement","width","height","top","right","bottom","left","popper","current","update","componentWillUnmount","forEach","render","_ref","_this$asProps$pattern","_this3","_this$asProps2","Children","children","tag","forcedAdvancedMode","other","_objectWithoutProperties2","advancedMode","findComponent","Tooltip","Trigger","displayName","Popper","renderContext","clear","patterns","createElement","Provider","assignProps","handlerCancel","allowedAutoPlacements","_ref9","_this3$popper$current","setTrigger","Fragment","handleTriggerClick","Component","PopperPopper","props","_ref5","STooltip","Element","styles","useCallback","cn","Title","_ref2","arguments[0]","_ref6","STitle","Box","Dot","_ref3","_ref7","_props$patterns","color","resolveColor","useColorResolver","useContext","defaultColor","getChartDefaultColorName","has","add","SDotGroup","SDot","SDotCircle","PatternSymbol","Footer","_ref4","_ref8","SFooter","_default","exports"],"sources":["../../src/Tooltip.jsx"],"sourcesContent":["import React from 'react';\nimport { Component, Root, sstyled } from '@semcore/core';\nimport Popper from '@semcore/popper';\nimport { Box } from '@semcore/flex-box';\nimport findComponent from '@semcore/core/lib/utils/findComponent';\nimport createElement from './createElement';\nimport { getChartDefaultColorName } from './utils';\nimport { useColorResolver } from '@semcore/core/lib/utils/use/useColorResolver';\n\nimport style from './style/tooltip.shadow.css';\nimport { PatternSymbol } from './Pattern';\n\n/**\n * `TooltipDotRenderContext` is a hack to bypass problem that getDotProps doesn't work for D3 tooltip.\n * Probably it may be removed after migrating to a new core.\n */\nconst TooltipDotRenderContext = React.createContext({ index: -1, indexKeysCache: new Set() });\n\nclass TooltipRoot extends Component {\n static displayName = 'Tooltip';\n\n static style = style;\n\n state = {\n $visible: false,\n anchorProps: {},\n tooltipProps: {},\n };\n\n renderContext = { index: -1, indexKeysCache: new Set() };\n\n handlerCancel = () => false;\n\n getTriggerProps() {\n const { x, y, hideHoverLine } = this.asProps;\n return { x, y, hideHoverLine };\n }\n\n getPopperProps() {\n if (this.asProps.excludeAnchorProps) {\n return {\n $visible: this.state.$visible,\n ...this.state.tooltipProps,\n };\n }\n\n return {\n $visible: this.state.$visible,\n ...this.state.anchorProps,\n ...this.state.tooltipProps,\n };\n }\n\n virtualElementPosition = { x: 0, y: 0 };\n virtualTriggerElement = null;\n unsubscribe = [];\n componentDidMount() {\n const { eventEmitter } = this.asProps;\n this.unsubscribe.push(\n eventEmitter.subscribe('setTooltipRenderingProps', (anchorProps, tooltipProps) => {\n this.setState({ anchorProps, tooltipProps });\n }),\n eventEmitter.subscribe('setTooltipVisible', (visible) =>\n this.setState({ $visible: visible }),\n ),\n eventEmitter.subscribe('setTooltipPosition', (x, y) => {\n this.virtualElementPosition.x = x;\n this.virtualElementPosition.y = y;\n if (this.virtualTriggerElement === null) {\n this.virtualTriggerElement = {};\n setTimeout(() => {\n this.setPopperTrigger(this.virtualTriggerElement);\n }, 0);\n }\n this.virtualTriggerElement.getBoundingClientRect = () => {\n const { x, y } = this.virtualElementPosition;\n return { width: 0, height: 0, top: y, right: x, bottom: y, left: x };\n };\n this.popper.current?.update();\n }),\n );\n }\n\n componentWillUnmount() {\n this.unsubscribe.forEach((unsubscribe) => unsubscribe());\n }\n\n handleTriggerClick = (e) => {\n const { onClick } = this.asProps;\n const { xIndex, yIndex } = this.state.tooltipProps;\n\n const index = xIndex ?? yIndex;\n\n onClick?.(index, e);\n };\n\n render() {\n const { Children, children, tag, forcedAdvancedMode, onClick, ...other } = this.asProps;\n\n const advancedMode =\n forcedAdvancedMode ||\n !!findComponent(Children, [Tooltip.Trigger.displayName, Tooltip.Popper.displayName]);\n this.renderContext.index = -1;\n this.renderContext.indexKeysCache.clear();\n this.renderContext.patterns = this.asProps.patterns ?? this.state.tooltipProps.patterns;\n\n return (\n <TooltipDotRenderContext.Provider value={this.renderContext}>\n <Root\n render={Popper}\n visible={this.state.$visible}\n onFirstUpdate={this.handlerCancel}\n onOutsideClick={this.handlerCancel}\n interaction='none'\n explicitTriggerSet\n offset={8}\n flip={{ allowedAutoPlacements: ['left', 'right'] }}\n >\n {({ popper, setTrigger }) => {\n this.setPopperTrigger = setTrigger;\n this.popper = popper;\n this.popper.current?.update();\n return advancedMode ? (\n <Children />\n ) : (\n <>\n {tag && <Tooltip.Trigger tag={tag} onClick={this.handleTriggerClick} />}\n <Tooltip.Popper {...other}>{children}</Tooltip.Popper>\n </>\n );\n }}\n </Root>\n </TooltipDotRenderContext.Provider>\n );\n }\n}\n\nfunction PopperPopper(props) {\n const { Element: STooltip, styles, $visible, x, y } = props;\n\n const handlerCancel = React.useCallback(() => false, []);\n\n if (!$visible) return null;\n\n return sstyled(styles)(\n <STooltip\n render={Popper.Popper}\n childrenPosition='inside'\n onMouseMove={handlerCancel}\n x={x}\n y={y}\n />,\n );\n}\nPopperPopper.style = style;\n\nfunction Title(props) {\n const STitle = Root;\n const { styles } = props;\n return sstyled(styles)(<STitle render={Box} __excludeProps={['data', 'scale']} />);\n}\nTitle.style = style;\n\nfunction Dot(props) {\n const { styles, color, Children } = props;\n const resolveColor = useColorResolver();\n const renderContext = React.useContext(TooltipDotRenderContext);\n const defaultColor = getChartDefaultColorName(renderContext.index);\n const patterns = props.patterns ?? renderContext.patterns;\n\n const key = Children;\n if (!renderContext.indexKeysCache.has(key)) {\n renderContext.indexKeysCache.add(key);\n renderContext.index += 1;\n }\n const SDotGroup = Root;\n const SDot = Box;\n const SDotCircle = Box;\n return sstyled(styles)(\n <SDotGroup render={Box} __excludeProps={['data', 'scale']}>\n {patterns ? (\n <SDot>\n <PatternSymbol\n color={resolveColor(color ?? defaultColor)}\n patternKey={color ?? defaultColor}\n />\n </SDot>\n ) : (\n <SDot>\n <SDotCircle color={resolveColor(color ?? defaultColor)} />\n </SDot>\n )}\n <Children />\n </SDotGroup>,\n );\n}\nDot.style = style;\n\nfunction Footer(props) {\n const { styles } = props;\n const SFooter = Root;\n return sstyled(styles)(<SFooter render={Box} __excludeProps={['data', 'scale']} />);\n}\nFooter.style = style;\n\nconst Tooltip = createElement(TooltipRoot, {\n Trigger: Popper.Trigger,\n Popper: PopperPopper,\n Title,\n Footer,\n Dot,\n});\n\nexport default Tooltip;\n"],"mappings":"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"}
|
package/lib/cjs/Venn.js
CHANGED
|
@@ -14,27 +14,26 @@ var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/hel
|
|
|
14
14
|
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
15
15
|
var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper"));
|
|
16
16
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
17
|
-
var _index = require("@semcore/utils/lib/core/index");
|
|
18
17
|
var _core = require("@semcore/core");
|
|
19
18
|
var _react = _interopRequireDefault(require("react"));
|
|
20
19
|
var _venn = require("@upsetjs/venn.js");
|
|
21
|
-
var _canUseDOM = _interopRequireDefault(require("@semcore/
|
|
20
|
+
var _canUseDOM = _interopRequireDefault(require("@semcore/core/lib/utils/canUseDOM"));
|
|
22
21
|
var _animation = require("@semcore/animation");
|
|
23
22
|
var _createElement = _interopRequireDefault(require("./createElement"));
|
|
24
23
|
var _utils = require("./utils");
|
|
25
24
|
var _Tooltip = _interopRequireDefault(require("./Tooltip"));
|
|
26
25
|
var _Pattern = require("./Pattern");
|
|
27
|
-
var _uniqueID = _interopRequireDefault(require("@semcore/
|
|
26
|
+
var _uniqueID = _interopRequireDefault(require("@semcore/core/lib/utils/uniqueID"));
|
|
28
27
|
/*__reshadow-styles__:"./style/venn.shadow.css"*/
|
|
29
|
-
var style = ( /*__reshadow_css_start__*/
|
|
30
|
-
"__SCircle": "
|
|
31
|
-
"_color": "
|
|
32
|
-
"--color": "--
|
|
33
|
-
"_transparent": "
|
|
34
|
-
"__SIntersection": "
|
|
35
|
-
"--duration": "--
|
|
36
|
-
"_pattern": "
|
|
37
|
-
"--pattern": "--
|
|
28
|
+
var style = ( /*__reshadow_css_start__*/_core.sstyled.insert( /*__inner_css_start__*/".___SCircle_wmt8p_gg_,.___SIntersection_wmt8p_gg_{stroke:var(--intergalactic-chart-grid-border, #ffffff);stroke-width:2px}.___SCircle_wmt8p_gg_{fill:var(--intergalactic-chart-palette-order-2, #59ddaa);fill-opacity:.5;transition-property:cx,cy;transition-duration:var(--duration_wmt8p);transition-timing-function:ease-in-out}@media (hover:hover){.___SCircle_wmt8p_gg_:hover{fill-opacity:.7}}.___SCircle_wmt8p_gg_.__color_wmt8p_gg_{fill:var(--color_wmt8p)}.___SCircle_wmt8p_gg_.__pattern_wmt8p_gg_.__color_wmt8p_gg_{fill:var(--pattern_wmt8p);fill-opacity:.7;stroke:var(--color_wmt8p);stroke-width:1px}@media (hover:hover){.___SCircle_wmt8p_gg_.__pattern_wmt8p_gg_.__color_wmt8p_gg_:hover{fill-opacity:.85}}.___SCircle_wmt8p_gg_.__transparent_wmt8p_gg_{opacity:.3}.___SIntersection_wmt8p_gg_{fill-opacity:0}@media (hover:hover){.___SIntersection_wmt8p_gg_:hover{fill-opacity:.1}}.___SIntersection_wmt8p_gg_.__transparent_wmt8p_gg_{opacity:.3}" /*__inner_css_end__*/, "wmt8p_gg_") /*__reshadow_css_end__*/, {
|
|
29
|
+
"__SCircle": "___SCircle_wmt8p_gg_",
|
|
30
|
+
"_color": "__color_wmt8p_gg_",
|
|
31
|
+
"--color": "--color_wmt8p",
|
|
32
|
+
"_transparent": "__transparent_wmt8p_gg_",
|
|
33
|
+
"__SIntersection": "___SIntersection_wmt8p_gg_",
|
|
34
|
+
"--duration": "--duration_wmt8p",
|
|
35
|
+
"_pattern": "__pattern_wmt8p_gg_",
|
|
36
|
+
"--pattern": "--pattern_wmt8p"
|
|
38
37
|
});
|
|
39
38
|
var VennRoot = /*#__PURE__*/function (_Component) {
|
|
40
39
|
(0, _inherits2["default"])(VennRoot, _Component);
|
package/lib/cjs/Venn.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Venn.js","names":["_core","require","_react","_interopRequireDefault","_venn","_canUseDOM","_animation","_createElement","_utils","_Tooltip","_Pattern","_uniqueID","style","_index","sstyled","insert","VennRoot","_Component","_inherits2","_super","_createSuper2","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty2","_assertThisInitialized2","canUseDOM","document","createElement","visible","props","tooltipProps","_ref5","clientX","clientY","eventEmitter","asProps","emit","React","forwardRef","ref","FadeInOut","_extends2","tag","_createClass2","key","value","generateGetBoundingClientRect","x","undefined","y","width","height","top","right","bottom","left","getVennData","_this$asProps","data","orientation","orientationOrder","size","_size","_slicedToArray2","vennData","Object","entries","map","_ref6","_ref7","dataKey","sets","split","scaleSolution","normalizeSolution","venn","getCircleProps","index","colorBackwardCapabilityOffset","color","getChartDefaultColorName","name","patterns","duration","originalData","onMouseMove","bindHandlerTooltip","onMouseLeave","transparent","resolveColor","uid","minRadius","getIntersectionProps","_this$asProps2","dataKeys","delay","values","filter","d","includes","setid","render","Element","dataHintsHandler","establishDataType","renderElement","childrenPosition","Component","Math","PI","c1","c2","radius","uniqueIDEnhancement","Circle","_ref8","_ref2","SCircle","styles","describeValueEntity","Fragment","cn","PatternFill","Intersection","_ref3","SIntersection","renderIntersection","useCallback","intersectionAreaPath","VennTooltip","_ref","arguments[0]","_ref4","SVennTooltip","Tooltip","_objectSpread2","assignProps","Venn","_______childrenComponents","_default","exports"],"sources":["../../src/Venn.jsx"],"sourcesContent":["import React from 'react';\nimport { venn, normalizeSolution, scaleSolution, intersectionAreaPath } from '@upsetjs/venn.js';\nimport { Component, Root, sstyled } from '@semcore/core';\nimport canUseDOM from '@semcore/utils/lib/canUseDOM';\nimport { FadeInOut } from '@semcore/animation';\nimport createElement from './createElement';\nimport { getChartDefaultColorName } from './utils';\nimport Tooltip from './Tooltip';\nimport { PatternFill } from './Pattern';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\n\nimport style from './style/venn.shadow.css';\n\nclass VennRoot extends Component {\n static displayName = 'Venn';\n static style = style;\n\n static defaultProps = {\n orientation: Math.PI / 2,\n orientationOrder: (c1, c2) => c2.radius - c1.radius,\n duration: 500,\n minRadius: 6,\n };\n static enhance = [uniqueIDEnhancement()];\n\n virtualElement = canUseDOM() ? document.createElement('div') : {};\n\n generateGetBoundingClientRect(x = 0, y = 0) {\n return () => ({ width: 0, height: 0, top: y, right: x, bottom: y, left: x });\n }\n\n bindHandlerTooltip = (visible, props, tooltipProps) => ({ clientX, clientY }) => {\n const { eventEmitter } = this.asProps;\n\n eventEmitter.emit('setTooltipPosition', clientX, clientY);\n eventEmitter.emit('setTooltipRenderingProps', props, tooltipProps);\n eventEmitter.emit('setTooltipVisible', visible);\n };\n\n getVennData() {\n const { data, orientation, orientationOrder, size } = this.asProps;\n const [width, height] = size;\n const vennData = Object.entries(data).map(([dataKey, size]) => ({\n sets: dataKey.split('/'),\n size,\n }));\n return scaleSolution(\n normalizeSolution(venn(vennData), orientation, orientationOrder),\n width,\n height,\n 10,\n );\n }\n\n getCircleProps(props, index) {\n const colorBackwardCapabilityOffset = 1;\n const color = props.color || getChartDefaultColorName(index + colorBackwardCapabilityOffset);\n const tooltipProps = {\n dataKey: props.dataKey,\n name: props.name,\n color,\n patterns: this.asProps.patterns,\n };\n\n return {\n duration: this.asProps.duration,\n data: this.vennData[props.dataKey],\n originalData: this.asProps.data[props.dataKey],\n onMouseMove: this.bindHandlerTooltip(true, props, tooltipProps),\n onMouseLeave: this.bindHandlerTooltip(false, props, tooltipProps),\n transparent: this.asProps.transparent,\n resolveColor: this.asProps.resolveColor,\n color,\n uid: `${this.asProps.uid}-${index}`,\n patterns: this.asProps.patterns,\n minRadius: this.asProps.minRadius,\n };\n }\n\n getIntersectionProps(props) {\n const { duration, transparent } = this.asProps;\n const dataKeys = props.dataKey.split('/');\n const tooltipProps = {\n dataKey: props.dataKey,\n name: props.name,\n color: props.color,\n duration: props.duration,\n transparent: props.transparent,\n };\n\n return {\n duration,\n delay: duration,\n data: Object.values(this.vennData).filter((d) => dataKeys.includes(d.setid)),\n originalData: this.asProps.data[props.dataKey],\n onMouseMove: this.bindHandlerTooltip(true, props, tooltipProps),\n onMouseLeave: this.bindHandlerTooltip(false, props, tooltipProps),\n transparent,\n resolveColor: this.asProps.resolveColor,\n };\n }\n\n renderElement = React.forwardRef((props, ref) => {\n return <FadeInOut aria-hidden ref={ref} tag='g' visible {...props} />;\n });\n\n render() {\n const Element = this.Element;\n this.asProps.dataHintsHandler.establishDataType('values-set');\n this.vennData = this.getVennData();\n return (\n <Element\n aria-hidden\n render={this.renderElement}\n childrenPosition='inside'\n vennData={this.vennData}\n />\n );\n }\n}\n\nfunction Circle({\n Element: SCircle,\n styles,\n color,\n resolveColor,\n data,\n duration,\n name,\n dataKey,\n dataHintsHandler,\n transparent,\n uid,\n patterns,\n minRadius,\n}) {\n dataHintsHandler.describeValueEntity(dataKey, name);\n\n const radius = data.radius < minRadius ? minRadius : data.radius;\n if (data.radius === 0) return null;\n\n return (\n <>\n {sstyled(styles)(\n <SCircle\n aria-hidden\n render='circle'\n color={resolveColor(color)}\n pattern={patterns ? `url(#${uid}-pattern)` : undefined}\n cx={data.x}\n cy={data.y}\n r={radius}\n transparent={transparent}\n use:duration={`${duration}ms`}\n />,\n )}\n {patterns && (\n <PatternFill\n id={`${uid}-pattern`}\n patternKey={color}\n color={resolveColor(color)}\n patterns={patterns}\n />\n )}\n </>\n );\n}\n\nfunction Intersection(props) {\n const {\n Element: SIntersection,\n styles,\n data,\n name,\n dataKey,\n dataHintsHandler,\n transparent,\n } = props;\n dataHintsHandler.describeValueEntity(dataKey, name);\n\n const renderIntersection = React.useCallback(\n React.forwardRef((props, ref) => {\n return <FadeInOut aria-hidden ref={ref} tag='path' visible {...props} />;\n }),\n [props],\n );\n return sstyled(styles)(\n <SIntersection\n aria-hidden\n render={renderIntersection}\n d={intersectionAreaPath(data)}\n transparent={transparent}\n />,\n );\n}\n\nconst VennTooltip = (props) => {\n const SVennTooltip = Root;\n return sstyled(props.styles)(<SVennTooltip render={Tooltip} excludeAnchorProps />);\n};\n\nconst Venn = createElement(VennRoot, {\n Circle,\n Intersection,\n Tooltip: [VennTooltip, Tooltip._______childrenComponents],\n});\n\nexport default Venn;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Venn.js","names":["_core","require","_react","_interopRequireDefault","_venn","_canUseDOM","_animation","_createElement","_utils","_Tooltip","_Pattern","_uniqueID","style","sstyled","insert","VennRoot","_Component","_inherits2","_super","_createSuper2","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty2","_assertThisInitialized2","canUseDOM","document","createElement","visible","props","tooltipProps","_ref5","clientX","clientY","eventEmitter","asProps","emit","React","forwardRef","ref","FadeInOut","_extends2","tag","_createClass2","key","value","generateGetBoundingClientRect","x","undefined","y","width","height","top","right","bottom","left","getVennData","_this$asProps","data","orientation","orientationOrder","size","_size","_slicedToArray2","vennData","Object","entries","map","_ref6","_ref7","dataKey","sets","split","scaleSolution","normalizeSolution","venn","getCircleProps","index","colorBackwardCapabilityOffset","color","getChartDefaultColorName","name","patterns","duration","originalData","onMouseMove","bindHandlerTooltip","onMouseLeave","transparent","resolveColor","uid","minRadius","getIntersectionProps","_this$asProps2","dataKeys","delay","values","filter","d","includes","setid","render","Element","dataHintsHandler","establishDataType","renderElement","childrenPosition","Component","Math","PI","c1","c2","radius","uniqueIDEnhancement","Circle","_ref8","_ref2","SCircle","styles","describeValueEntity","Fragment","cn","PatternFill","Intersection","_ref3","SIntersection","renderIntersection","useCallback","intersectionAreaPath","VennTooltip","_ref","arguments[0]","_ref4","SVennTooltip","Tooltip","_objectSpread2","assignProps","Venn","_______childrenComponents","_default","exports"],"sources":["../../src/Venn.jsx"],"sourcesContent":["import React from 'react';\nimport { venn, normalizeSolution, scaleSolution, intersectionAreaPath } from '@upsetjs/venn.js';\nimport { Component, Root, sstyled } from '@semcore/core';\nimport canUseDOM from '@semcore/core/lib/utils/canUseDOM';\nimport { FadeInOut } from '@semcore/animation';\nimport createElement from './createElement';\nimport { getChartDefaultColorName } from './utils';\nimport Tooltip from './Tooltip';\nimport { PatternFill } from './Pattern';\nimport uniqueIDEnhancement from '@semcore/core/lib/utils/uniqueID';\n\nimport style from './style/venn.shadow.css';\n\nclass VennRoot extends Component {\n static displayName = 'Venn';\n static style = style;\n\n static defaultProps = {\n orientation: Math.PI / 2,\n orientationOrder: (c1, c2) => c2.radius - c1.radius,\n duration: 500,\n minRadius: 6,\n };\n static enhance = [uniqueIDEnhancement()];\n\n virtualElement = canUseDOM() ? document.createElement('div') : {};\n\n generateGetBoundingClientRect(x = 0, y = 0) {\n return () => ({ width: 0, height: 0, top: y, right: x, bottom: y, left: x });\n }\n\n bindHandlerTooltip = (visible, props, tooltipProps) => ({ clientX, clientY }) => {\n const { eventEmitter } = this.asProps;\n\n eventEmitter.emit('setTooltipPosition', clientX, clientY);\n eventEmitter.emit('setTooltipRenderingProps', props, tooltipProps);\n eventEmitter.emit('setTooltipVisible', visible);\n };\n\n getVennData() {\n const { data, orientation, orientationOrder, size } = this.asProps;\n const [width, height] = size;\n const vennData = Object.entries(data).map(([dataKey, size]) => ({\n sets: dataKey.split('/'),\n size,\n }));\n return scaleSolution(\n normalizeSolution(venn(vennData), orientation, orientationOrder),\n width,\n height,\n 10,\n );\n }\n\n getCircleProps(props, index) {\n const colorBackwardCapabilityOffset = 1;\n const color = props.color || getChartDefaultColorName(index + colorBackwardCapabilityOffset);\n const tooltipProps = {\n dataKey: props.dataKey,\n name: props.name,\n color,\n patterns: this.asProps.patterns,\n };\n\n return {\n duration: this.asProps.duration,\n data: this.vennData[props.dataKey],\n originalData: this.asProps.data[props.dataKey],\n onMouseMove: this.bindHandlerTooltip(true, props, tooltipProps),\n onMouseLeave: this.bindHandlerTooltip(false, props, tooltipProps),\n transparent: this.asProps.transparent,\n resolveColor: this.asProps.resolveColor,\n color,\n uid: `${this.asProps.uid}-${index}`,\n patterns: this.asProps.patterns,\n minRadius: this.asProps.minRadius,\n };\n }\n\n getIntersectionProps(props) {\n const { duration, transparent } = this.asProps;\n const dataKeys = props.dataKey.split('/');\n const tooltipProps = {\n dataKey: props.dataKey,\n name: props.name,\n color: props.color,\n duration: props.duration,\n transparent: props.transparent,\n };\n\n return {\n duration,\n delay: duration,\n data: Object.values(this.vennData).filter((d) => dataKeys.includes(d.setid)),\n originalData: this.asProps.data[props.dataKey],\n onMouseMove: this.bindHandlerTooltip(true, props, tooltipProps),\n onMouseLeave: this.bindHandlerTooltip(false, props, tooltipProps),\n transparent,\n resolveColor: this.asProps.resolveColor,\n };\n }\n\n renderElement = React.forwardRef((props, ref) => {\n return <FadeInOut aria-hidden ref={ref} tag='g' visible {...props} />;\n });\n\n render() {\n const Element = this.Element;\n this.asProps.dataHintsHandler.establishDataType('values-set');\n this.vennData = this.getVennData();\n return (\n <Element\n aria-hidden\n render={this.renderElement}\n childrenPosition='inside'\n vennData={this.vennData}\n />\n );\n }\n}\n\nfunction Circle({\n Element: SCircle,\n styles,\n color,\n resolveColor,\n data,\n duration,\n name,\n dataKey,\n dataHintsHandler,\n transparent,\n uid,\n patterns,\n minRadius,\n}) {\n dataHintsHandler.describeValueEntity(dataKey, name);\n\n const radius = data.radius < minRadius ? minRadius : data.radius;\n if (data.radius === 0) return null;\n\n return (\n <>\n {sstyled(styles)(\n <SCircle\n aria-hidden\n render='circle'\n color={resolveColor(color)}\n pattern={patterns ? `url(#${uid}-pattern)` : undefined}\n cx={data.x}\n cy={data.y}\n r={radius}\n transparent={transparent}\n use:duration={`${duration}ms`}\n />,\n )}\n {patterns && (\n <PatternFill\n id={`${uid}-pattern`}\n patternKey={color}\n color={resolveColor(color)}\n patterns={patterns}\n />\n )}\n </>\n );\n}\n\nfunction Intersection(props) {\n const {\n Element: SIntersection,\n styles,\n data,\n name,\n dataKey,\n dataHintsHandler,\n transparent,\n } = props;\n dataHintsHandler.describeValueEntity(dataKey, name);\n\n const renderIntersection = React.useCallback(\n React.forwardRef((props, ref) => {\n return <FadeInOut aria-hidden ref={ref} tag='path' visible {...props} />;\n }),\n [props],\n );\n return sstyled(styles)(\n <SIntersection\n aria-hidden\n render={renderIntersection}\n d={intersectionAreaPath(data)}\n transparent={transparent}\n />,\n );\n}\n\nconst VennTooltip = (props) => {\n const SVennTooltip = Root;\n return sstyled(props.styles)(<SVennTooltip render={Tooltip} excludeAnchorProps />);\n};\n\nconst Venn = createElement(VennRoot, {\n Circle,\n Intersection,\n Tooltip: [VennTooltip, Tooltip._______childrenComponents],\n});\n\nexport default Venn;\n"],"mappings":"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"}
|
|
@@ -9,16 +9,15 @@ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/obje
|
|
|
9
9
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
10
10
|
var _interopRequireWildcard2 = _interopRequireDefault(require("@babel/runtime/helpers/interopRequireWildcard"));
|
|
11
11
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
12
|
-
var _index = require("@semcore/utils/lib/core/index");
|
|
13
12
|
var _core = require("@semcore/core");
|
|
14
13
|
var _react = _interopRequireDefault(require("react"));
|
|
15
14
|
var _locale = require("./locale");
|
|
16
15
|
var _intergalacticDynamicLocales = require("./translations/module/__intergalactic-dynamic-locales");
|
|
17
|
-
var _WithI18n = require("@semcore/
|
|
16
|
+
var _WithI18n = require("@semcore/core/lib/utils/enhances/WithI18n");
|
|
18
17
|
var _flexBox = require("@semcore/flex-box");
|
|
19
18
|
/*__reshadow-styles__:"../style/plotA11yModule.shadow.css"*/
|
|
20
|
-
var styles = ( /*__reshadow_css_start__*/
|
|
21
|
-
"__SPlotA11yModule": "
|
|
19
|
+
var styles = ( /*__reshadow_css_start__*/_core.sstyled.insert( /*__inner_css_start__*/".___SPlotA11yModule_i0svk_gg_{-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none;opacity:0}.___SPlotA11yModule_i0svk_gg_:focus{-webkit-user-select:all;-moz-user-select:all;user-select:all;pointer-events:all;opacity:1}" /*__inner_css_end__*/, "i0svk_gg_") /*__reshadow_css_end__*/, {
|
|
20
|
+
"__SPlotA11yModule": "___SPlotA11yModule_i0svk_gg_"
|
|
22
21
|
});
|
|
23
22
|
var globalWasFocused = false;
|
|
24
23
|
var globalNavWithKeyboard = false;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PlotA11yModule.js","names":["_core","require","_react","_interopRequireDefault","_locale","_intergalacticDynamicLocales","_WithI18n","_flexBox","styles","
|
|
1
|
+
{"version":3,"file":"PlotA11yModule.js","names":["_core","require","_react","_interopRequireDefault","_locale","_intergalacticDynamicLocales","_WithI18n","_flexBox","styles","sstyled","insert","globalWasFocused","globalNavWithKeyboard","PlotA11yModule","props","_ref","arguments[0]","_ref5","SPlotA11yModule","Box","_React$useState","React","useState","_React$useState2","_slicedToArray2","wasFocused","setWasFocused","_React$useState3","_React$useState4","navWithKeyboard","setNavWithKeyboard","_React$useState5","_React$useState6","plotA11yView","setPlotA11yView","hadnleHiddenElementsFocus","useCallback","_React$useState7","_React$useState8","loading","setLoading","_React$useState9","_React$useState10","error","setError","contextLocale","useContext","I18nContext","locale","useMemo","_props$locale","normalizeLocale","localizedMessages","t","useI18n","useEffect","_props$plotRef$curren","focusListener","plotRef","current","addEventListener","_props$plotRef$curren2","removeEventListener","_document$body","keyboardListener","event","navigationKeys","includes","key","document","body","_document$body2","shouldDisplayView","Promise","resolve","then","_interopRequireWildcard2","_ref6","PlotA11yView","Component","console","_ref2","createElement","_extends2","_ref3","cn","_objectSpread2","assignProps","_ref4","exports"],"sources":["../../../src/a11y/PlotA11yModule.tsx"],"sourcesContent":["import React from 'react';\nimport { DataStructureHints, PartialDataSummarizationConfig } from './hints';\nimport { normalizeLocale } from './locale';\nimport { localizedMessages } from './translations/module/__intergalactic-dynamic-locales';\nimport { Root, sstyled } from '@semcore/core';\nimport styles from '../style/plotA11yModule.shadow.css';\nimport { Context as I18nContext, useI18n } from '@semcore/core/lib/utils/enhances/WithI18n';\nimport { Box } from '@semcore/flex-box';\n\nlet globalWasFocused = false;\nlet globalNavWithKeyboard = false;\n\nexport type A11yViewProps = {\n id: string;\n data: Record<string, unknown>[];\n hints: DataStructureHints;\n plotLabel: string;\n locale: NavigatorLanguage['language'];\n config: PartialDataSummarizationConfig;\n\n plotRef: React.RefObject<HTMLElement>;\n};\n\nexport const PlotA11yModule: React.FC<A11yViewProps> = (props) => {\n const SPlotA11yModule = Root;\n const [wasFocused, setWasFocused] = React.useState(globalWasFocused);\n const [navWithKeyboard, setNavWithKeyboard] = React.useState(globalNavWithKeyboard);\n const [plotA11yView, setPlotA11yView] = React.useState<{\n Component: React.FC<A11yViewProps>;\n } | null>(null);\n\n const hadnleHiddenElementsFocus = React.useCallback(() => {\n setWasFocused(true);\n setNavWithKeyboard(true);\n }, []);\n\n const [loading, setLoading] = React.useState(false);\n const [error, setError] = React.useState<Error | null>(null);\n\n const contextLocale = React.useContext(I18nContext);\n const locale = React.useMemo(\n () => normalizeLocale(props.locale ?? contextLocale, localizedMessages),\n [props.locale],\n );\n const t = useI18n(localizedMessages, locale!);\n\n React.useEffect(() => {\n if (wasFocused) return;\n const focusListener = () => {\n globalWasFocused = true;\n setWasFocused(true);\n };\n\n props.plotRef.current?.addEventListener('focus', focusListener);\n return () => props.plotRef.current?.removeEventListener('focus', focusListener);\n }, [wasFocused, props.plotRef]);\n React.useEffect(() => {\n if (navWithKeyboard) return;\n const keyboardListener = (event: Event) => {\n const navigationKeys = [\n 'Tab',\n 'ArrowUp',\n 'ArrowLeft',\n 'ArrowDown',\n 'ArrowRight',\n 'ArrowUp',\n 'ArrowLeft',\n ];\n if ('key' in event && navigationKeys.includes((event as KeyboardEvent).key)) {\n setNavWithKeyboard(true);\n globalNavWithKeyboard = true;\n }\n };\n document.body?.addEventListener('keydown', keyboardListener);\n return () => document.body?.removeEventListener('keydown', keyboardListener);\n }, [navWithKeyboard]);\n\n const shouldDisplayView = wasFocused && navWithKeyboard;\n\n React.useEffect(() => {\n if (!shouldDisplayView) return;\n if (plotA11yView) return;\n if (loading) return;\n\n setLoading(true);\n\n import('./PlotA11yView')\n .then(({ PlotA11yView }) => {\n setPlotA11yView({ Component: PlotA11yView });\n setLoading(false);\n setError(null);\n })\n .catch((error) => {\n console.error(error);\n setError(error);\n });\n }, [plotA11yView, shouldDisplayView, loading, setLoading]);\n\n if (plotA11yView) {\n return sstyled(styles)(\n <plotA11yView.Component {...props} locale={locale!} />,\n ) as React.ReactElement;\n }\n\n if (error) {\n return sstyled(styles)(\n <SPlotA11yModule render={Box} tabIndex={0} aria-live='assertive'>\n {t('failed')}\n </SPlotA11yModule>,\n ) as React.ReactElement;\n }\n if (loading) {\n return sstyled(styles)(\n <SPlotA11yModule render={Box} tabIndex={0} aria-live='polite'>\n {t('loading')}\n </SPlotA11yModule>,\n ) as React.ReactElement;\n }\n\n return sstyled(styles)(\n <SPlotA11yModule render={Box} tabIndex={0} onFocus={hadnleHiddenElementsFocus}>\n {t('disabled')}\n </SPlotA11yModule>,\n ) as React.ReactElement;\n};\n"],"mappings":"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"}
|
|
@@ -7,7 +7,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
7
7
|
exports.PlotA11yView = void 0;
|
|
8
8
|
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
|
9
9
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
10
|
-
var _index = require("@semcore/utils/lib/core/index");
|
|
11
10
|
var _core = require("@semcore/core");
|
|
12
11
|
var _react = _interopRequireDefault(require("react"));
|
|
13
12
|
var _focus = require("./focus");
|
|
@@ -15,12 +14,12 @@ var _hints = require("./hints");
|
|
|
15
14
|
var _intl = require("./intl");
|
|
16
15
|
var _summarize = require("./summarize");
|
|
17
16
|
var _flexBox = require("@semcore/flex-box");
|
|
18
|
-
var _i18nEnhance = require("@semcore/
|
|
17
|
+
var _i18nEnhance = require("@semcore/core/lib/utils/enhances/i18nEnhance");
|
|
19
18
|
var _intergalacticDynamicLocales = require("./translations/view/__intergalactic-dynamic-locales");
|
|
20
19
|
var _DataAccessibilityTable = require("./DataAccessibilityTable");
|
|
21
20
|
/*__reshadow-styles__:"../style/plotA11yView.shadow.css"*/
|
|
22
|
-
var styles = ( /*__reshadow_css_start__*/
|
|
23
|
-
"__SPlotA11yView": "
|
|
21
|
+
var styles = ( /*__reshadow_css_start__*/_core.sstyled.insert( /*__inner_css_start__*/".___SPlotA11yView_1anfm_gg_{-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none;opacity:0;background-color:var(--intergalactic-bg-primary-neutral, #ffffff);color:var(--intergalactic-text-primary, #191b23);border:3px solid var(--intergalactic-border-primary, #c4c7cf);font-size:var(--intergalactic-fs-50, 10px);padding:2px;width:200px;height:200px;max-width:80%;max-height:80%;overflow:auto}.___SPlotA11yView_1anfm_gg_:focus,.___SPlotA11yView_1anfm_gg_:focus-within{-webkit-user-select:all;-moz-user-select:all;user-select:all;pointer-events:all;opacity:1;z-index:var(--intergalactic-z-index-overlay, 500);position:relative;display:block}.___SPlotA11yView_1anfm_gg_ a{cursor:pointer;-webkit-text-decoration:underline;text-decoration:underline;margin-bottom:var(--intergalactic-spacing-2x, 8px);display:block}.___SPlotA11yView_1anfm_gg_ table,.___SPlotA11yView_1anfm_gg_ td,.___SPlotA11yView_1anfm_gg_ th{border:1px solid var(--intergalactic-border-primary, #c4c7cf)}" /*__inner_css_end__*/, "1anfm_gg_") /*__reshadow_css_end__*/, {
|
|
22
|
+
"__SPlotA11yView": "___SPlotA11yView_1anfm_gg_"
|
|
24
23
|
});
|
|
25
24
|
var PlotA11yView = function PlotA11yView(_ref3) {
|
|
26
25
|
var _ref = arguments[0],
|