@semcore/d3-chart 1.6.7 → 1.6.8

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.
Files changed (69) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/lib/cjs/Area.js.map +1 -1
  3. package/lib/cjs/Axis.js.map +1 -1
  4. package/lib/cjs/Bar.js.map +1 -1
  5. package/lib/cjs/Bubble.js +8 -7
  6. package/lib/cjs/Bubble.js.map +1 -1
  7. package/lib/cjs/ClipPath.js.map +1 -1
  8. package/lib/cjs/Donut.js.map +1 -1
  9. package/lib/cjs/Dots.js.map +1 -1
  10. package/lib/cjs/GroupBar.js +6 -6
  11. package/lib/cjs/GroupBar.js.map +1 -1
  12. package/lib/cjs/HorizontalBar.js.map +1 -1
  13. package/lib/cjs/Hover.js.map +1 -1
  14. package/lib/cjs/Line.js.map +1 -1
  15. package/lib/cjs/Plot.js.map +1 -1
  16. package/lib/cjs/ResponsiveContainer.js.map +1 -1
  17. package/lib/cjs/ScatterPlot.js +8 -7
  18. package/lib/cjs/ScatterPlot.js.map +1 -1
  19. package/lib/cjs/StackBar.js +6 -6
  20. package/lib/cjs/StackBar.js.map +1 -1
  21. package/lib/cjs/StackedArea.js +7 -7
  22. package/lib/cjs/StackedArea.js.map +1 -1
  23. package/lib/cjs/Tooltip.js.map +1 -1
  24. package/lib/cjs/Venn.js.map +1 -1
  25. package/lib/cjs/createElement.js.map +1 -1
  26. package/lib/es6/Area.js.map +1 -1
  27. package/lib/es6/Axis.js.map +1 -1
  28. package/lib/es6/Bar.js.map +1 -1
  29. package/lib/es6/Bubble.js +8 -7
  30. package/lib/es6/Bubble.js.map +1 -1
  31. package/lib/es6/ClipPath.js.map +1 -1
  32. package/lib/es6/Donut.js.map +1 -1
  33. package/lib/es6/Dots.js.map +1 -1
  34. package/lib/es6/GroupBar.js +6 -6
  35. package/lib/es6/GroupBar.js.map +1 -1
  36. package/lib/es6/HorizontalBar.js.map +1 -1
  37. package/lib/es6/Hover.js.map +1 -1
  38. package/lib/es6/Line.js.map +1 -1
  39. package/lib/es6/Plot.js.map +1 -1
  40. package/lib/es6/ResponsiveContainer.js.map +1 -1
  41. package/lib/es6/ScatterPlot.js +8 -7
  42. package/lib/es6/ScatterPlot.js.map +1 -1
  43. package/lib/es6/StackBar.js +6 -6
  44. package/lib/es6/StackBar.js.map +1 -1
  45. package/lib/es6/StackedArea.js +7 -7
  46. package/lib/es6/StackedArea.js.map +1 -1
  47. package/lib/es6/Tooltip.js.map +1 -1
  48. package/lib/es6/Venn.js.map +1 -1
  49. package/lib/es6/createElement.js.map +1 -1
  50. package/package.json +1 -1
  51. package/src/{Area.js → Area.jsx} +0 -0
  52. package/src/{Axis.js → Axis.jsx} +0 -0
  53. package/src/{Bar.js → Bar.jsx} +0 -0
  54. package/src/{Bubble.js → Bubble.jsx} +15 -17
  55. package/src/{ClipPath.js → ClipPath.jsx} +0 -0
  56. package/src/{Donut.js → Donut.jsx} +8 -6
  57. package/src/{Dots.js → Dots.jsx} +0 -0
  58. package/src/{GroupBar.js → GroupBar.jsx} +0 -0
  59. package/src/{HorizontalBar.js → HorizontalBar.jsx} +0 -0
  60. package/src/{Hover.js → Hover.jsx} +0 -0
  61. package/src/{Line.js → Line.jsx} +0 -0
  62. package/src/{Plot.js → Plot.jsx} +0 -0
  63. package/src/{ResponsiveContainer.js → ResponsiveContainer.jsx} +0 -0
  64. package/src/{ScatterPlot.js → ScatterPlot.jsx} +16 -29
  65. package/src/{StackBar.js → StackBar.jsx} +0 -0
  66. package/src/{StackedArea.js → StackedArea.jsx} +0 -0
  67. package/src/{Tooltip.js → Tooltip.jsx} +0 -0
  68. package/src/{Venn.js → Venn.jsx} +8 -6
  69. /package/src/{createElement.js → createElement.jsx} +0 -0
@@ -27,15 +27,15 @@ var _ref = (
27
27
  /*__reshadow_css_start__*/
28
28
  __css__(
29
29
  /*__inner_css_start__*/
30
- ".___SBar_1jcbt_gg_{fill:#50aef4;transition-property:height,width,y;transition-duration:var(--duration);transition-timing-function:ease-in-out}.___SBar_1jcbt_gg_.__color_1jcbt_gg_{fill:var(--color)}.___SBar_1jcbt_gg_.__hide_1jcbt_gg_{display:none}.___SBackground_1jcbt_gg_{fill:#e4ecf1}"
30
+ ".___SBar_1s4vb_gg_{fill:#50aef4;transition-property:height,width,y;transition-duration:var(--duration);transition-timing-function:ease-in-out}.___SBar_1s4vb_gg_.__color_1s4vb_gg_{fill:var(--color)}.___SBar_1s4vb_gg_.__hide_1s4vb_gg_{display:none}.___SBackground_1s4vb_gg_{fill:#e4ecf1}"
31
31
  /*__inner_css_end__*/
32
- , "y12n7a_gg_")
32
+ , "1x3absm_gg_")
33
33
  /*__reshadow_css_end__*/
34
34
  , {
35
- "__SBar": "___SBar_1jcbt_gg_",
36
- "_color": "__color_1jcbt_gg_",
37
- "_hide": "__hide_1jcbt_gg_",
38
- "__SBackground": "___SBackground_1jcbt_gg_"
35
+ "__SBar": "___SBar_1s4vb_gg_",
36
+ "_color": "__color_1s4vb_gg_",
37
+ "_hide": "__hide_1s4vb_gg_",
38
+ "__SBackground": "___SBackground_1s4vb_gg_"
39
39
  }),
40
40
  style = _extends({}, _ref);
41
41
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/StackBar.js"],"names":["React","stack","d3Stack","Component","getOriginChildren","createElement","Bar","HorizontalBar","DEFAULT_INSTANCE","Symbol","XY0","StackBarRoot","asProps","Children","data","keys","toArray","reduce","acc","child","isValidElement","type","StackBar","props","hide","push","y","x","r","seriesIndex","series","findIndex","s","key","rBar","map","i","slice","some","bar","y0","x0","Element","getSeries","style"],"mappings":"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","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 from './Bar';\nimport HorizontalBar from './HorizontalBar';\n\nimport style from './style/bar.shadow.css';\n\nconst DEFAULT_INSTANCE = Symbol('DEFAULT_INSTANCE');\nconst XY0 = Symbol('XY0');\n\nclass StackBarRoot extends Component {\n static displayName = 'StackBar';\n\n static style = style;\n\n static defaultProps = () => {\n const stack = d3Stack();\n stack[DEFAULT_INSTANCE] = true;\n return { stack, r: 2 };\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 === 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 }) {\n const { x, r } = this.asProps;\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 return {\n data: series.map((s) => ({\n ...s.data,\n [y]: s[1],\n [XY0]: s[0],\n })),\n y0: XY0,\n x,\n r: rBar,\n };\n }\n\n getHorizontalBarProps({ x }) {\n const { y, r } = this.asProps;\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 return {\n data: series.map((s) => ({\n ...s.data,\n [x]: s[1],\n [XY0]: s[0],\n })),\n x0: XY0,\n y,\n r: rBar,\n };\n }\n\n render() {\n const Element = this.Element;\n this.series = this.getSeries();\n return <Element render=\"g\" series={this.series} />;\n }\n}\n\nconst StackBar = createElement(StackBarRoot, {\n Bar,\n HorizontalBar,\n});\n\nexport default StackBar;\n"],"file":"StackBar.js"}
1
+ {"version":3,"sources":["../../src/StackBar.jsx"],"names":["React","stack","d3Stack","Component","getOriginChildren","createElement","Bar","HorizontalBar","DEFAULT_INSTANCE","Symbol","XY0","StackBarRoot","asProps","Children","data","keys","toArray","reduce","acc","child","isValidElement","type","StackBar","props","hide","push","y","x","r","seriesIndex","series","findIndex","s","key","rBar","map","i","slice","some","bar","y0","x0","Element","getSeries","style"],"mappings":";;;;;;;;;;;;;;;;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,SAASC,KAAK,IAAIC,OAAlB,QAAiC,UAAjC;AACA,SAASC,SAAT,sBAA0B,eAA1B;AACA,OAAOC,iBAAP,MAA8B,sCAA9B;AACA,OAAOC,aAAP,MAA0B,iBAA1B;AACA,OAAOC,GAAP,MAAgB,OAAhB;AACA,OAAOC,aAAP,MAA0B,iBAA1B;;;;;;;;;;;;;;;;;;;AAIA,IAAMC,gBAAgB,GAAGC,MAAM,CAAC,kBAAD,CAA/B;AACA,IAAMC,GAAG,GAAGD,MAAM,CAAC,KAAD,CAAlB;;IAEME,Y;;;;;;;;;;;;;WAWJ,qBAAY;AACV,0BAAkC,KAAKC,OAAvC;AAAA,UAAQC,QAAR,iBAAQA,QAAR;AAAA,UAAkBC,IAAlB,iBAAkBA,IAAlB;AAAA,UAAwBb,KAAxB,iBAAwBA,KAAxB;;AAEA,UAAIA,KAAK,CAACO,gBAAD,CAAT,EAA6B;AAC3B,YAAMO,IAAI,GAAGf,KAAK,CAACa,QAAN,CAAeG,OAAf,CAAuBZ,iBAAiB,CAACS,QAAD,CAAxC,EAAoDI,MAApD,CAA2D,UAACC,GAAD,EAAMC,KAAN,EAAgB;AACtF,cAAI,cAAAnB,KAAK,CAACoB,cAAN,CAAqBD,KAArB,KAA+BA,KAAK,CAACE,IAAN,KAAeC,QAAQ,CAAChB,GAAvD,IAA8D,CAACa,KAAK,CAACI,KAAN,CAAYC,IAA/E,EAAqF;AACnFN,YAAAA,GAAG,CAACO,IAAJ,CAASN,KAAK,CAACI,KAAN,CAAYG,CAArB;AACD;;AACD,cACE,cAAA1B,KAAK,CAACoB,cAAN,CAAqBD,KAArB,KACAA,KAAK,CAACE,IAAN,KAAeC,QAAQ,CAACf,aADxB,IAEA,CAACY,KAAK,CAACI,KAAN,CAAYC,IAHf,EAIE;AACAN,YAAAA,GAAG,CAACO,IAAJ,CAASN,KAAK,CAACI,KAAN,CAAYI,CAArB;AACD;;AACD,iBAAOT,GAAP;AACD,SAZY,EAYV,EAZU,CAAb;AAaAjB,QAAAA,KAAK,CAACc,IAAN,CAAWA,IAAX;AACD;;AAED,aAAOd,KAAK,CAACa,IAAD,CAAZ;AACD;;;WAED,4BAAmB;AAAA;;AAAA,UAALY,CAAK,SAALA,CAAK;AACjB,2BAAiB,KAAKd,OAAtB;AAAA,UAAQe,CAAR,kBAAQA,CAAR;AAAA,UAAWC,CAAX,kBAAWA,CAAX;AAEA,UAAMC,WAAW,GAAG,KAAKC,MAAL,CAAYC,SAAZ,CAAsB,UAACC,CAAD;AAAA,eAAOA,CAAC,CAACC,GAAF,KAAUP,CAAjB;AAAA,OAAtB,CAApB,CAHiB,CAIjB;;AACA,UAAMI,MAAM,GAAG,KAAKA,MAAL,CAAYD,WAAZ,KAA4B,EAA3C;AAEA,UAAMK,IAAI,GAAGJ,MAAM,CAACK,GAAP,CAAW,UAACH,CAAD,EAAII,CAAJ;AAAA,eACtB,KAAI,CAACN,MAAL,CAAYO,KAAZ,CAAkBR,WAAW,GAAG,CAAhC,EAAmCS,IAAnC,CAAwC,UAACC,GAAD;AAAA,iBAASA,GAAG,CAACH,CAAD,CAAH,CAAO,CAAP,MAAcG,GAAG,CAACH,CAAD,CAAH,CAAO,CAAP,CAAvB;AAAA,SAAxC,IAA4E,CAA5E,GAAgFR,CAD1D;AAAA,OAAX,CAAb;AAIA,aAAO;AACLd,QAAAA,IAAI,EAAEgB,MAAM,CAACK,GAAP,CAAW,UAACH,CAAD;AAAA;;AAAA,iDACZA,CAAC,CAAClB,IADU,6DAEdY,CAFc,EAEVM,CAAC,CAAC,CAAD,CAFS,mCAGdtB,GAHc,EAGRsB,CAAC,CAAC,CAAD,CAHO;AAAA,SAAX,CADD;AAMLQ,QAAAA,EAAE,EAAE9B,GANC;AAOLiB,QAAAA,CAAC,EAADA,CAPK;AAQLC,QAAAA,CAAC,EAAEM;AARE,OAAP;AAUD;;;WAED,sCAA6B;AAAA;;AAAA,UAALP,CAAK,SAALA,CAAK;AAC3B,2BAAiB,KAAKf,OAAtB;AAAA,UAAQc,CAAR,kBAAQA,CAAR;AAAA,UAAWE,CAAX,kBAAWA,CAAX;AAEA,UAAMC,WAAW,GAAG,KAAKC,MAAL,CAAYC,SAAZ,CAAsB,UAACC,CAAD;AAAA,eAAOA,CAAC,CAACC,GAAF,KAAUN,CAAjB;AAAA,OAAtB,CAApB;AACA,UAAMG,MAAM,GAAG,KAAKA,MAAL,CAAYD,WAAZ,CAAf;AAEA,UAAMK,IAAI,GAAGJ,MAAM,CAACK,GAAP,CAAW,UAACH,CAAD,EAAII,CAAJ;AAAA,eACtB,MAAI,CAACN,MAAL,CAAYO,KAAZ,CAAkBR,WAAW,GAAG,CAAhC,EAAmCS,IAAnC,CAAwC,UAACC,GAAD;AAAA,iBAASA,GAAG,CAACH,CAAD,CAAH,CAAO,CAAP,MAAcG,GAAG,CAACH,CAAD,CAAH,CAAO,CAAP,CAAvB;AAAA,SAAxC,IAA4E,CAA5E,GAAgFR,CAD1D;AAAA,OAAX,CAAb;AAIA,aAAO;AACLd,QAAAA,IAAI,EAAEgB,MAAM,CAACK,GAAP,CAAW,UAACH,CAAD;AAAA;;AAAA,iDACZA,CAAC,CAAClB,IADU,6DAEda,CAFc,EAEVK,CAAC,CAAC,CAAD,CAFS,mCAGdtB,GAHc,EAGRsB,CAAC,CAAC,CAAD,CAHO;AAAA,SAAX,CADD;AAMLS,QAAAA,EAAE,EAAE/B,GANC;AAOLgB,QAAAA,CAAC,EAADA,CAPK;AAQLE,QAAAA,CAAC,EAAEM;AARE,OAAP;AAUD;;;WAED,kBAAS;AACP,UAAMQ,OAAO,GAAG,KAAKA,OAArB;AACA,WAAKZ,MAAL,GAAc,KAAKa,SAAL,EAAd;AACA,0BAAO,oBAAC,OAAD;AAAS,QAAA,MAAM,EAAC,GAAhB;AAAoB,QAAA,MAAM,EAAE,KAAKb;AAAjC,QAAP;AACD;;;;EAnFwB3B,S;;gBAArBQ,Y,iBACiB,U;;gBADjBA,Y,WAGWiC,K;;gBAHXjC,Y,kBAKkB,YAAM;AAC1B,MAAMV,KAAK,GAAGC,OAAO,EAArB;AACAD,EAAAA,KAAK,CAACO,gBAAD,CAAL,GAA0B,IAA1B;AACA,SAAO;AAAEP,IAAAA,KAAK,EAALA,KAAF;AAAS2B,IAAAA,CAAC,EAAE;AAAZ,GAAP;AACD,C;;AA6EH,IAAMN,QAAQ,GAAGjB,aAAa,CAACM,YAAD,EAAe;AAC3CL,EAAAA,GAAG,EAAHA,GAD2C;AAE3CC,EAAAA,aAAa,EAAbA;AAF2C,CAAf,CAA9B;AAKA,eAAee,QAAf","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 from './Bar';\nimport HorizontalBar from './HorizontalBar';\n\nimport style from './style/bar.shadow.css';\n\nconst DEFAULT_INSTANCE = Symbol('DEFAULT_INSTANCE');\nconst XY0 = Symbol('XY0');\n\nclass StackBarRoot extends Component {\n static displayName = 'StackBar';\n\n static style = style;\n\n static defaultProps = () => {\n const stack = d3Stack();\n stack[DEFAULT_INSTANCE] = true;\n return { stack, r: 2 };\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 === 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 }) {\n const { x, r } = this.asProps;\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 return {\n data: series.map((s) => ({\n ...s.data,\n [y]: s[1],\n [XY0]: s[0],\n })),\n y0: XY0,\n x,\n r: rBar,\n };\n }\n\n getHorizontalBarProps({ x }) {\n const { y, r } = this.asProps;\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 return {\n data: series.map((s) => ({\n ...s.data,\n [x]: s[1],\n [XY0]: s[0],\n })),\n x0: XY0,\n y,\n r: rBar,\n };\n }\n\n render() {\n const Element = this.Element;\n this.series = this.getSeries();\n return <Element render=\"g\" series={this.series} />;\n }\n}\n\nconst StackBar = createElement(StackBarRoot, {\n Bar,\n HorizontalBar,\n});\n\nexport default StackBar;\n"],"file":"StackBar.js"}
@@ -26,16 +26,16 @@ var _ref = (
26
26
  /*__reshadow_css_start__*/
27
27
  __css__(
28
28
  /*__inner_css_start__*/
29
- ".___SArea_17r2n_gg_{fill:#50aef4;fill-opacity:.4}.___SArea_17r2n_gg_.__color_17r2n_gg_{fill:var(--color)}.___SAreaLine_17r2n_gg_{stroke:#50aef4;stroke-width:3;fill:transparent}.___SAreaLine_17r2n_gg_.__color_17r2n_gg_{stroke:var(--color)}.___SArea_17r2n_gg_,.___SAreaLine_17r2n_gg_{transition-property:d;transition-duration:var(--duration);transition-timing-function:ease-in-out}.___SNull_17r2n_gg_{fill:transparent;stroke:#bdc4c6;stroke-dasharray:4}.___SNull_17r2n_gg_.__hide_17r2n_gg_{display:none}"
29
+ ".___SArea_sgh1n_gg_{fill:#50aef4;fill-opacity:.4}.___SArea_sgh1n_gg_.__color_sgh1n_gg_{fill:var(--color)}.___SAreaLine_sgh1n_gg_{stroke:#50aef4;stroke-width:3;fill:transparent}.___SAreaLine_sgh1n_gg_.__color_sgh1n_gg_{stroke:var(--color)}.___SArea_sgh1n_gg_,.___SAreaLine_sgh1n_gg_{transition-property:d;transition-duration:var(--duration);transition-timing-function:ease-in-out}.___SNull_sgh1n_gg_{fill:transparent;stroke:#bdc4c6;stroke-dasharray:4}.___SNull_sgh1n_gg_.__hide_sgh1n_gg_{display:none}"
30
30
  /*__inner_css_end__*/
31
- , "14o303q_gg_")
31
+ , "qp1tn1_gg_")
32
32
  /*__reshadow_css_end__*/
33
33
  , {
34
- "__SArea": "___SArea_17r2n_gg_",
35
- "_color": "__color_17r2n_gg_",
36
- "__SAreaLine": "___SAreaLine_17r2n_gg_",
37
- "__SNull": "___SNull_17r2n_gg_",
38
- "_hide": "__hide_17r2n_gg_"
34
+ "__SArea": "___SArea_sgh1n_gg_",
35
+ "_color": "__color_sgh1n_gg_",
36
+ "__SAreaLine": "___SAreaLine_sgh1n_gg_",
37
+ "__SNull": "___SNull_sgh1n_gg_",
38
+ "_hide": "__hide_sgh1n_gg_"
39
39
  }),
40
40
  style = _extends({}, _ref);
41
41
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/StackedArea.js"],"names":["React","stack","d3Stack","Component","getOriginChildren","createElement","Area","DEFAULT_INSTANCE","Symbol","Y0","StackedAreaRoot","asProps","Children","data","keys","toArray","reduce","acc","child","isValidElement","type","StackedArea","props","hide","push","y","reverse","x","series","find","s","key","map","y0","Element","getSeries","style"],"mappings":"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","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 Area from './Area';\n\nimport style from './style/area.shadow.css';\n\nconst DEFAULT_INSTANCE = Symbol('DEFAULT_INSTANCE');\nconst Y0 = Symbol('Y0');\n\nclass StackedAreaRoot extends Component {\n static displayName = 'StackedArea';\n\n static style = style;\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 }) {\n const { x } = this.asProps;\n // or [] if hide area\n const series = this.series.find((s) => s.key === y) || [];\n return {\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 render=\"g\" series={this.series} />;\n }\n}\n\nconst StackedArea = createElement(StackedAreaRoot, { Area });\n\nexport default StackedArea;\n"],"file":"StackedArea.js"}
1
+ {"version":3,"sources":["../../src/StackedArea.jsx"],"names":["React","stack","d3Stack","Component","getOriginChildren","createElement","Area","DEFAULT_INSTANCE","Symbol","Y0","StackedAreaRoot","asProps","Children","data","keys","toArray","reduce","acc","child","isValidElement","type","StackedArea","props","hide","push","y","reverse","x","series","find","s","key","map","y0","Element","getSeries","style"],"mappings":"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","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 Area from './Area';\n\nimport style from './style/area.shadow.css';\n\nconst DEFAULT_INSTANCE = Symbol('DEFAULT_INSTANCE');\nconst Y0 = Symbol('Y0');\n\nclass StackedAreaRoot extends Component {\n static displayName = 'StackedArea';\n\n static style = style;\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 }) {\n const { x } = this.asProps;\n // or [] if hide area\n const series = this.series.find((s) => s.key === y) || [];\n return {\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 render=\"g\" series={this.series} />;\n }\n}\n\nconst StackedArea = createElement(StackedAreaRoot, { Area });\n\nexport default StackedArea;\n"],"file":"StackedArea.js"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/Tooltip.js"],"names":["React","useCallback","Component","Root","sstyled","Popper","Box","findComponent","CONSTANT","createElement","resolveColor","TooltipRoot","$visible","asProps","x","y","state","eventEmitter","rootRef","unsubscribeTooltipVisible","subscribe","visible","data","node","setState","VIRTUAL_ELEMENT","current","contains","setPopperTrigger","popper","update","Children","children","tag","other","advanceMode","Tooltip","Trigger","displayName","handlerCancel","allowedAutoPlacements","setTrigger","style","PopperPopper","props","STooltip","Element","styles","Title","STitle","Dot","color","SDotGroup","SDot","Footer"],"mappings":"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","sourcesContent":["import React, { useCallback } 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 { CONSTANT } from './utils';\nimport createElement from './createElement';\nimport resolveColor from '@semcore/utils/lib/color';\n\nimport style from './style/tooltip.shadow.css';\n\nclass TooltipRoot extends Component {\n static displayName = 'Tooltip';\n\n static style = style;\n\n state = {\n $visible: false,\n };\n\n handlerCancel = () => false;\n\n getTriggerProps() {\n // TODO: как то убрать\n const { x, y } = this.asProps;\n return { x, y };\n }\n\n getPopperProps() {\n return {\n ...this.state,\n };\n }\n\n componentDidMount() {\n const { eventEmitter, rootRef } = this.asProps;\n this.unsubscribeTooltipVisible = eventEmitter.subscribe(\n 'onTooltipVisible',\n (visible, data, node) => {\n this.setState(\n {\n // TODO: тут бага если одно поля нету,то оно не перезапишет стейт\n ...data,\n $visible: visible,\n },\n () => {\n if (node && (node[CONSTANT.VIRTUAL_ELEMENT] || rootRef.current.contains(node))) {\n this?.setPopperTrigger(node);\n this.popper.current?.update();\n }\n },\n );\n },\n );\n }\n\n componentWillUnmount() {\n if (this.unsubscribeTooltipVisible) {\n this.unsubscribeTooltipVisible();\n }\n }\n\n render() {\n const { Children, children, tag, ...other } = this.asProps;\n\n const advanceMode = !!findComponent(Children, [\n Tooltip.Trigger.displayName,\n Tooltip.Popper.displayName,\n ]);\n return (\n <Root\n render={Popper}\n visible={this.state.$visible}\n onFirstUpdate={this.handlerCancel}\n onOutsideClick={this.handlerCancel}\n interaction=\"none\"\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 advanceMode ? (\n <Children />\n ) : (\n <>\n {tag && <Tooltip.Trigger tag={tag} />}\n <Tooltip.Popper {...other}>{children}</Tooltip.Popper>\n </>\n );\n }}\n </Root>\n );\n }\n}\n\nfunction PopperPopper(props) {\n const { Element: STooltip, styles, $visible, x, y } = props;\n\n const handlerCancel = 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}\n\nfunction Title(props) {\n const STitle = Root;\n const { styles } = props;\n return sstyled(styles)(<STitle render={Box} __excludeProps={['data', 'scale']} />);\n}\n\nfunction Dot(props) {\n const { styles, color, Children } = props;\n const SDotGroup = Root;\n const SDot = Box;\n return sstyled(styles)(\n <SDotGroup render={Box}>\n <SDot __excludeProps={['data', 'scale']} color={resolveColor(color)} />\n <Children />\n </SDotGroup>,\n );\n}\n\nfunction Footer() {\n return null;\n}\n\nconst Tooltip = createElement(TooltipRoot, {\n Trigger: Popper.Trigger,\n Popper: PopperPopper,\n Title,\n Footer,\n Dot,\n});\n\nexport default Tooltip;\n"],"file":"Tooltip.js"}
1
+ {"version":3,"sources":["../../src/Tooltip.jsx"],"names":["React","useCallback","Component","Root","sstyled","Popper","Box","findComponent","CONSTANT","createElement","resolveColor","TooltipRoot","$visible","asProps","x","y","state","eventEmitter","rootRef","unsubscribeTooltipVisible","subscribe","visible","data","node","setState","VIRTUAL_ELEMENT","current","contains","setPopperTrigger","popper","update","Children","children","tag","other","advanceMode","Tooltip","Trigger","displayName","handlerCancel","allowedAutoPlacements","setTrigger","style","PopperPopper","props","STooltip","Element","styles","Title","STitle","Dot","color","SDotGroup","SDot","Footer"],"mappings":"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","sourcesContent":["import React, { useCallback } 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 { CONSTANT } from './utils';\nimport createElement from './createElement';\nimport resolveColor from '@semcore/utils/lib/color';\n\nimport style from './style/tooltip.shadow.css';\n\nclass TooltipRoot extends Component {\n static displayName = 'Tooltip';\n\n static style = style;\n\n state = {\n $visible: false,\n };\n\n handlerCancel = () => false;\n\n getTriggerProps() {\n // TODO: как то убрать\n const { x, y } = this.asProps;\n return { x, y };\n }\n\n getPopperProps() {\n return {\n ...this.state,\n };\n }\n\n componentDidMount() {\n const { eventEmitter, rootRef } = this.asProps;\n this.unsubscribeTooltipVisible = eventEmitter.subscribe(\n 'onTooltipVisible',\n (visible, data, node) => {\n this.setState(\n {\n // TODO: тут бага если одно поля нету,то оно не перезапишет стейт\n ...data,\n $visible: visible,\n },\n () => {\n if (node && (node[CONSTANT.VIRTUAL_ELEMENT] || rootRef.current.contains(node))) {\n this?.setPopperTrigger(node);\n this.popper.current?.update();\n }\n },\n );\n },\n );\n }\n\n componentWillUnmount() {\n if (this.unsubscribeTooltipVisible) {\n this.unsubscribeTooltipVisible();\n }\n }\n\n render() {\n const { Children, children, tag, ...other } = this.asProps;\n\n const advanceMode = !!findComponent(Children, [\n Tooltip.Trigger.displayName,\n Tooltip.Popper.displayName,\n ]);\n return (\n <Root\n render={Popper}\n visible={this.state.$visible}\n onFirstUpdate={this.handlerCancel}\n onOutsideClick={this.handlerCancel}\n interaction=\"none\"\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 advanceMode ? (\n <Children />\n ) : (\n <>\n {tag && <Tooltip.Trigger tag={tag} />}\n <Tooltip.Popper {...other}>{children}</Tooltip.Popper>\n </>\n );\n }}\n </Root>\n );\n }\n}\n\nfunction PopperPopper(props) {\n const { Element: STooltip, styles, $visible, x, y } = props;\n\n const handlerCancel = 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}\n\nfunction Title(props) {\n const STitle = Root;\n const { styles } = props;\n return sstyled(styles)(<STitle render={Box} __excludeProps={['data', 'scale']} />);\n}\n\nfunction Dot(props) {\n const { styles, color, Children } = props;\n const SDotGroup = Root;\n const SDot = Box;\n return sstyled(styles)(\n <SDotGroup render={Box}>\n <SDot __excludeProps={['data', 'scale']} color={resolveColor(color)} />\n <Children />\n </SDotGroup>,\n );\n}\n\nfunction Footer() {\n return null;\n}\n\nconst Tooltip = createElement(TooltipRoot, {\n Trigger: Popper.Trigger,\n Popper: PopperPopper,\n Title,\n Footer,\n Dot,\n});\n\nexport default Tooltip;\n"],"file":"Tooltip.js"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/Venn.js"],"names":["React","venn","normalizeSolution","scaleSolution","intersectionAreaPath","Component","sstyled","canUseDOM","FadeInOut","createElement","CONSTANT","VennRoot","document","visible","props","x","clientX","y","clientY","eventEmitter","asProps","virtualElement","getBoundingClientRect","generateGetBoundingClientRect","VIRTUAL_ELEMENT","emit","forwardRef","ref","width","height","top","right","bottom","left","data","orientation","orientationOrder","size","vennData","Object","entries","map","dataKey","sets","split","duration","onMouseMove","bindHandlerTooltip","onMouseLeave","dataKeys","delay","values","filter","d","includes","setid","Element","getVennData","renderElement","style","Math","PI","c1","c2","radius","Circle","SCircle","styles","color","Intersection","SIntersection","renderIntersection","useCallback","Venn"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { venn, normalizeSolution, scaleSolution, intersectionAreaPath } from '@upsetjs/venn.js';\nimport { Component, sstyled } from '@semcore/core';\nimport canUseDOM from '@semcore/utils/lib/canUseDOM';\nimport { FadeInOut } from '@semcore/animation';\n\nimport createElement from './createElement';\nimport { CONSTANT } from './utils';\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 };\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) => ({ clientX: x, clientY: y }) => {\n const { eventEmitter } = this.asProps;\n this.virtualElement.getBoundingClientRect = this.generateGetBoundingClientRect(x, y);\n this.virtualElement[CONSTANT.VIRTUAL_ELEMENT] = true;\n eventEmitter.emit('onTooltipVisible', visible, props, this.virtualElement);\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) {\n return {\n duration: this.asProps.duration,\n data: this.vennData[props.dataKey],\n onMouseMove: this.bindHandlerTooltip(true, props),\n onMouseLeave: this.bindHandlerTooltip(false, props),\n };\n }\n\n getIntersectionProps(props) {\n const { duration } = this.asProps;\n const dataKeys = props.dataKey.split('/');\n return {\n duration,\n delay: duration,\n data: Object.values(this.vennData).filter((d) => dataKeys.includes(d.setid)),\n onMouseMove: this.bindHandlerTooltip(true, props),\n onMouseLeave: this.bindHandlerTooltip(false, props),\n };\n }\n\n renderElement = React.forwardRef((props, ref) => {\n return <FadeInOut ref={ref} tag=\"g\" visible {...props} />;\n });\n\n render() {\n const Element = this.Element;\n this.vennData = this.getVennData();\n return (\n <Element render={this.renderElement} childrenPosition=\"inside\" vennData={this.vennData} />\n );\n }\n}\n\nfunction Circle({ Element: SCircle, styles, color, data, duration }) {\n return sstyled(styles)(\n <SCircle\n render=\"circle\"\n color={color}\n cx={data.x}\n cy={data.y}\n r={data.radius}\n use:duration={`${duration}ms`}\n />,\n );\n}\n\nfunction Intersection(props) {\n const { Element: SIntersection, styles, data } = props;\n const renderIntersection = React.useCallback(\n React.forwardRef((props, ref) => {\n return <FadeInOut ref={ref} tag=\"path\" visible {...props} />;\n }),\n [props],\n );\n return sstyled(styles)(\n <SIntersection render={renderIntersection} d={intersectionAreaPath(data)} />,\n );\n}\n\nconst Venn = createElement(VennRoot, { Circle, Intersection });\n\nexport default Venn;\n"],"file":"Venn.js"}
1
+ {"version":3,"sources":["../../src/Venn.jsx"],"names":["React","venn","normalizeSolution","scaleSolution","intersectionAreaPath","Component","sstyled","canUseDOM","FadeInOut","createElement","CONSTANT","VennRoot","document","visible","props","x","clientX","y","clientY","eventEmitter","asProps","virtualElement","getBoundingClientRect","generateGetBoundingClientRect","VIRTUAL_ELEMENT","emit","forwardRef","ref","width","height","top","right","bottom","left","data","orientation","orientationOrder","size","vennData","Object","entries","map","dataKey","sets","split","duration","onMouseMove","bindHandlerTooltip","onMouseLeave","dataKeys","delay","values","filter","d","includes","setid","Element","getVennData","renderElement","style","Math","PI","c1","c2","radius","Circle","SCircle","styles","color","Intersection","SIntersection","renderIntersection","useCallback","Venn"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { venn, normalizeSolution, scaleSolution, intersectionAreaPath } from '@upsetjs/venn.js';\nimport { Component, sstyled } from '@semcore/core';\nimport canUseDOM from '@semcore/utils/lib/canUseDOM';\nimport { FadeInOut } from '@semcore/animation';\n\nimport createElement from './createElement';\nimport { CONSTANT } from './utils';\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 };\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 =\n (visible, props) =>\n ({ clientX: x, clientY: y }) => {\n const { eventEmitter } = this.asProps;\n this.virtualElement.getBoundingClientRect = this.generateGetBoundingClientRect(x, y);\n this.virtualElement[CONSTANT.VIRTUAL_ELEMENT] = true;\n eventEmitter.emit('onTooltipVisible', visible, props, this.virtualElement);\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) {\n return {\n duration: this.asProps.duration,\n data: this.vennData[props.dataKey],\n onMouseMove: this.bindHandlerTooltip(true, props),\n onMouseLeave: this.bindHandlerTooltip(false, props),\n };\n }\n\n getIntersectionProps(props) {\n const { duration } = this.asProps;\n const dataKeys = props.dataKey.split('/');\n return {\n duration,\n delay: duration,\n data: Object.values(this.vennData).filter((d) => dataKeys.includes(d.setid)),\n onMouseMove: this.bindHandlerTooltip(true, props),\n onMouseLeave: this.bindHandlerTooltip(false, props),\n };\n }\n\n renderElement = React.forwardRef((props, ref) => {\n return <FadeInOut ref={ref} tag=\"g\" visible {...props} />;\n });\n\n render() {\n const Element = this.Element;\n this.vennData = this.getVennData();\n return (\n <Element render={this.renderElement} childrenPosition=\"inside\" vennData={this.vennData} />\n );\n }\n}\n\nfunction Circle({ Element: SCircle, styles, color, data, duration }) {\n return sstyled(styles)(\n <SCircle\n render=\"circle\"\n color={color}\n cx={data.x}\n cy={data.y}\n r={data.radius}\n use:duration={`${duration}ms`}\n />,\n );\n}\n\nfunction Intersection(props) {\n const { Element: SIntersection, styles, data } = props;\n const renderIntersection = React.useCallback(\n React.forwardRef((props, ref) => {\n return <FadeInOut ref={ref} tag=\"path\" visible {...props} />;\n }),\n [props],\n );\n return sstyled(styles)(\n <SIntersection render={renderIntersection} d={intersectionAreaPath(data)} />,\n );\n}\n\nconst Venn = createElement(VennRoot, { Circle, Intersection });\n\nexport default Venn;\n"],"file":"Venn.js"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/createElement.js"],"names":["React","useContext","createComponent","createBaseComponent","CONTEXT_COMPONENT","Plot","assignProps","useForkRef","propsForElement","getOriginChildren","hoistNonReactStatics","createElementRender","Element","forwardRef","ref","render","tag","childrenPosition","xS","x","yS","y","source","props","_children","children","Children","mergedProps","Tag","_child","undefined","Error","__excludeProps","elementEnhancement","init","asProps","WrapperComponent","isFunction","$rootProps","WrapComponent","ElementWithContext","displayName","createElement","ElementRoot","child","options","enhancements","Object","keys","forEach","n"],"mappings":"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","sourcesContent":["import React, { useContext } from 'react';\nimport createComponent, { createBaseComponent, CONTEXT_COMPONENT } from '@semcore/core';\nimport Plot from './Plot';\nimport assignProps from '@semcore/utils/lib/assignProps';\nimport { useForkRef } from '@semcore/utils/lib/ref';\nimport propsForElement from '@semcore/utils/lib/propsForElement';\nimport getOriginChildren from '@semcore/utils/lib/getOriginChildren';\nimport hoistNonReactStatics from 'hoist-non-react-statics';\n\nfunction createElementRender() {\n const Element = React.forwardRef(function (\n { render, tag, childrenPosition = 'below', x: xS, y: yS, ...source },\n ref,\n ) {\n const {\n forwardRef = null,\n children: _children,\n Children,\n x = xS,\n y = yS,\n ...props\n } = Element.props;\n let children = getOriginChildren(Children);\n\n let mergedProps = assignProps(\n {\n x: xS,\n y: yS,\n ...props,\n ref: useForkRef(forwardRef, ref),\n },\n {\n x,\n y,\n ...source,\n },\n );\n\n const Tag = typeof render === 'string' ? mergedProps.tag || render : render;\n\n if (typeof children === 'function') {\n const _child = mergedProps.children;\n mergedProps = assignProps(children(mergedProps), mergedProps);\n children = mergedProps.children;\n mergedProps.children = _child;\n }\n\n if (childrenPosition === 'inside') {\n mergedProps.children = children === undefined ? mergedProps.children : children;\n }\n\n if (!Tag) {\n throw new Error('В Element нужно передать render');\n }\n return [\n <React.Fragment key=\"child-above\">\n {childrenPosition === 'above' ? children : null}\n </React.Fragment>,\n <Tag\n {...propsForElement(\n {\n __excludeProps: ['data', 'scale'],\n ...mergedProps,\n },\n Tag,\n )}\n key=\"element\"\n />,\n <React.Fragment key=\"child-below\">\n {childrenPosition === 'below' ? children : null}\n </React.Fragment>,\n ];\n });\n\n Element.props = {};\n return Element;\n}\n\nfunction elementEnhancement() {\n return {\n init: function () {\n this.Element = createElementRender();\n },\n asProps: function ({ $rootProps, ...props }, WrapperComponent, isFunction) {\n if (isFunction) {\n return {\n ...$rootProps,\n ...props,\n Element: this.Element,\n };\n }\n return {\n ...$rootProps,\n ...props,\n };\n },\n render: function (render, props) {\n this.Element.props = props;\n return render;\n },\n };\n}\n\nfunction WrapComponent(Element) {\n function ElementWithContext(props, ref) {\n const { $rootProps } = useContext(Plot[CONTEXT_COMPONENT]);\n return <Element ref={ref} $rootProps={$rootProps} {...props} />;\n }\n\n ElementWithContext.displayName = Element.displayName;\n\n const WrapperComponent = createBaseComponent(ElementWithContext);\n WrapperComponent.displayName = Element.displayName;\n\n return hoistNonReactStatics(WrapperComponent, Element);\n}\n\nfunction createElement(ElementRoot, child = {}, options = {}) {\n const Element = createComponent(ElementRoot, child, {\n ...options,\n enhancements: [elementEnhancement],\n });\n\n Object.keys(child).forEach((n) => {\n Element[n] = WrapComponent(Element[n]);\n });\n\n return WrapComponent(Element);\n}\n\nexport default createElement;\n"],"file":"createElement.js"}
1
+ {"version":3,"sources":["../../src/createElement.jsx"],"names":["React","useContext","createComponent","createBaseComponent","CONTEXT_COMPONENT","Plot","assignProps","useForkRef","propsForElement","getOriginChildren","hoistNonReactStatics","createElementRender","Element","forwardRef","ref","render","tag","childrenPosition","xS","x","yS","y","source","props","_children","children","Children","mergedProps","Tag","_child","undefined","Error","__excludeProps","elementEnhancement","init","asProps","WrapperComponent","isFunction","$rootProps","WrapComponent","ElementWithContext","displayName","createElement","ElementRoot","child","options","enhancements","Object","keys","forEach","n"],"mappings":"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","sourcesContent":["import React, { useContext } from 'react';\nimport createComponent, { createBaseComponent, CONTEXT_COMPONENT } from '@semcore/core';\nimport Plot from './Plot';\nimport assignProps from '@semcore/utils/lib/assignProps';\nimport { useForkRef } from '@semcore/utils/lib/ref';\nimport propsForElement from '@semcore/utils/lib/propsForElement';\nimport getOriginChildren from '@semcore/utils/lib/getOriginChildren';\nimport hoistNonReactStatics from 'hoist-non-react-statics';\n\nfunction createElementRender() {\n const Element = React.forwardRef(function (\n { render, tag, childrenPosition = 'below', x: xS, y: yS, ...source },\n ref,\n ) {\n const {\n forwardRef = null,\n children: _children,\n Children,\n x = xS,\n y = yS,\n ...props\n } = Element.props;\n let children = getOriginChildren(Children);\n\n let mergedProps = assignProps(\n {\n x: xS,\n y: yS,\n ...props,\n ref: useForkRef(forwardRef, ref),\n },\n {\n x,\n y,\n ...source,\n },\n );\n\n const Tag = typeof render === 'string' ? mergedProps.tag || render : render;\n\n if (typeof children === 'function') {\n const _child = mergedProps.children;\n mergedProps = assignProps(children(mergedProps), mergedProps);\n children = mergedProps.children;\n mergedProps.children = _child;\n }\n\n if (childrenPosition === 'inside') {\n mergedProps.children = children === undefined ? mergedProps.children : children;\n }\n\n if (!Tag) {\n throw new Error('В Element нужно передать render');\n }\n return [\n <React.Fragment key=\"child-above\">\n {childrenPosition === 'above' ? children : null}\n </React.Fragment>,\n <Tag\n {...propsForElement(\n {\n __excludeProps: ['data', 'scale'],\n ...mergedProps,\n },\n Tag,\n )}\n key=\"element\"\n />,\n <React.Fragment key=\"child-below\">\n {childrenPosition === 'below' ? children : null}\n </React.Fragment>,\n ];\n });\n\n Element.props = {};\n return Element;\n}\n\nfunction elementEnhancement() {\n return {\n init: function () {\n this.Element = createElementRender();\n },\n asProps: function ({ $rootProps, ...props }, WrapperComponent, isFunction) {\n if (isFunction) {\n return {\n ...$rootProps,\n ...props,\n Element: this.Element,\n };\n }\n return {\n ...$rootProps,\n ...props,\n };\n },\n render: function (render, props) {\n this.Element.props = props;\n return render;\n },\n };\n}\n\nfunction WrapComponent(Element) {\n function ElementWithContext(props, ref) {\n const { $rootProps } = useContext(Plot[CONTEXT_COMPONENT]);\n return <Element ref={ref} $rootProps={$rootProps} {...props} />;\n }\n\n ElementWithContext.displayName = Element.displayName;\n\n const WrapperComponent = createBaseComponent(ElementWithContext);\n WrapperComponent.displayName = Element.displayName;\n\n return hoistNonReactStatics(WrapperComponent, Element);\n}\n\nfunction createElement(ElementRoot, child = {}, options = {}) {\n const Element = createComponent(ElementRoot, child, {\n ...options,\n enhancements: [elementEnhancement],\n });\n\n Object.keys(child).forEach((n) => {\n Element[n] = WrapComponent(Element[n]);\n });\n\n return WrapComponent(Element);\n}\n\nexport default createElement;\n"],"file":"createElement.js"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@semcore/d3-chart",
3
3
  "description": "SEMRush D3 Chart Component",
4
- "version": "1.6.7",
4
+ "version": "1.6.8",
5
5
  "main": "lib/cjs/index.js",
6
6
  "module": "lib/es6/index.js",
7
7
  "typings": "lib/types/index.d.ts",
File without changes
File without changes
File without changes
@@ -20,7 +20,7 @@ const memoize = (func) => {
20
20
  };
21
21
 
22
22
  const measureText = memoize((text) => {
23
- let span = document.createElement('span');
23
+ const span = document.createElement('span');
24
24
  span.append(document.createTextNode(text));
25
25
  span.style.display = 'inline-block';
26
26
  document.body.append(span);
@@ -46,12 +46,14 @@ class BubbleRoot extends Component {
46
46
  return () => ({ width: 0, height: 0, top: y, right: x, bottom: y, left: x });
47
47
  }
48
48
 
49
- bindHandlerTooltip = (visible, props) => ({ clientX: x, clientY: y }) => {
50
- const { eventEmitter } = this.asProps;
51
- this.virtualElement.getBoundingClientRect = this.generateGetBoundingClientRect(x, y);
52
- this.virtualElement[CONSTANT.VIRTUAL_ELEMENT] = true;
53
- eventEmitter.emit('onTooltipVisible', visible, props, this.virtualElement);
54
- };
49
+ bindHandlerTooltip =
50
+ (visible, props) =>
51
+ ({ clientX: x, clientY: y }) => {
52
+ const { eventEmitter } = this.asProps;
53
+ this.virtualElement.getBoundingClientRect = this.generateGetBoundingClientRect(x, y);
54
+ this.virtualElement[CONSTANT.VIRTUAL_ELEMENT] = true;
55
+ eventEmitter.emit('onTooltipVisible', visible, props, this.virtualElement);
56
+ };
55
57
 
56
58
  animationCircle() {
57
59
  const { duration, uid, data, value } = this.asProps;
@@ -160,22 +162,18 @@ class BubbleRoot extends Component {
160
162
  }
161
163
 
162
164
  render() {
163
- const { data, uid, size, scale } = this.asProps;
165
+ const { data, uid, scale } = this.asProps;
164
166
  const [xScale, yScale] = scale;
165
- const marginX = Math.min(xScale.range()[0], xScale.range()[1]);
166
- const marginY = Math.min(yScale.range()[0], yScale.range()[1]);
167
+ const xSize = Math.abs(xScale.range()[0] - xScale.range()[1]);
168
+ const ySize = Math.abs(yScale.range()[0] - yScale.range()[1]);
169
+ const xMargin = Math.min(xScale.range()[0], xScale.range()[1]);
170
+ const yMargin = Math.min(yScale.range()[0], yScale.range()[1]);
167
171
 
168
172
  return (
169
173
  <>
170
174
  {data.map(this.renderCircle.bind(this))}
171
175
  {data.map(this.animationCircle.bind(this))}
172
- <ClipPath
173
- id={uid}
174
- x={marginX}
175
- y={marginY}
176
- width={`${size[0] - 2 * marginX}px`}
177
- height={`${size[1] - 2 * marginY}px`}
178
- />
176
+ <ClipPath id={uid} x={xMargin} y={yMargin} width={`${xSize}px`} height={`${ySize}px`} />
179
177
  </>
180
178
  );
181
179
  }
File without changes
@@ -137,12 +137,14 @@ class DonutRoot extends Component {
137
137
  return d3Pie(pieData);
138
138
  }
139
139
 
140
- bindHandlerTooltip = (visible, props) => ({ clientX: x, clientY: y }) => {
141
- const { eventEmitter } = this.asProps;
142
- this.virtualElement.getBoundingClientRect = this.generateGetBoundingClientRect(x, y);
143
- this.virtualElement[CONSTANT.VIRTUAL_ELEMENT] = true;
144
- eventEmitter.emit('onTooltipVisible', visible, props, this.virtualElement);
145
- };
140
+ bindHandlerTooltip =
141
+ (visible, props) =>
142
+ ({ clientX: x, clientY: y }) => {
143
+ const { eventEmitter } = this.asProps;
144
+ this.virtualElement.getBoundingClientRect = this.generateGetBoundingClientRect(x, y);
145
+ this.virtualElement[CONSTANT.VIRTUAL_ELEMENT] = true;
146
+ eventEmitter.emit('onTooltipVisible', visible, props, this.virtualElement);
147
+ };
146
148
 
147
149
  getPieProps(props) {
148
150
  let { d3Arc, duration, innerRadius } = this.asProps;
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -24,12 +24,14 @@ class ScatterPlotRoot extends Component {
24
24
  return () => ({ width: 0, height: 0, top: y, right: x, bottom: y, left: x });
25
25
  }
26
26
 
27
- bindHandlerTooltip = (visible, props) => ({ clientX: x, clientY: y }) => {
28
- const { eventEmitter } = this.asProps;
29
- this.virtualElement.getBoundingClientRect = this.generateGetBoundingClientRect(x, y);
30
- this.virtualElement[CONSTANT.VIRTUAL_ELEMENT] = true;
31
- eventEmitter.emit('onTooltipVisible', visible, props, this.virtualElement);
32
- };
27
+ bindHandlerTooltip =
28
+ (visible, props) =>
29
+ ({ clientX: x, clientY: y }) => {
30
+ const { eventEmitter } = this.asProps;
31
+ this.virtualElement.getBoundingClientRect = this.generateGetBoundingClientRect(x, y);
32
+ this.virtualElement[CONSTANT.VIRTUAL_ELEMENT] = true;
33
+ eventEmitter.emit('onTooltipVisible', visible, props, this.virtualElement);
34
+ };
33
35
 
34
36
  animationCircle() {
35
37
  const { duration, uid, r, value } = this.asProps;
@@ -51,19 +53,8 @@ class ScatterPlotRoot extends Component {
51
53
  }
52
54
 
53
55
  renderCircle(d, i) {
54
- const {
55
- color,
56
- scale,
57
- x,
58
- y,
59
- r,
60
- offset,
61
- styles,
62
- uid,
63
- duration,
64
- value,
65
- valueColor,
66
- } = this.asProps;
56
+ const { color, scale, x, y, r, offset, styles, uid, duration, value, valueColor } =
57
+ this.asProps;
67
58
  const [xScale, yScale] = scale;
68
59
  const SScatterPlot = this.Element;
69
60
  const SValue = 'text';
@@ -99,21 +90,17 @@ class ScatterPlotRoot extends Component {
99
90
  }
100
91
 
101
92
  render() {
102
- const { data, uid, size, scale } = this.asProps;
93
+ const { data, uid, scale } = this.asProps;
103
94
  const [xScale, yScale] = scale;
104
- const marginX = Math.min(xScale.range()[0], xScale.range()[1]);
105
- const marginY = Math.min(yScale.range()[0], yScale.range()[1]);
95
+ const xSize = Math.abs(xScale.range()[0] - xScale.range()[1]);
96
+ const ySize = Math.abs(yScale.range()[0] - yScale.range()[1]);
97
+ const xMargin = Math.min(xScale.range()[0], xScale.range()[1]);
98
+ const yMargin = Math.min(yScale.range()[0], yScale.range()[1]);
106
99
 
107
100
  return (
108
101
  <>
109
102
  {data.map(this.renderCircle.bind(this))}
110
- <ClipPath
111
- id={uid}
112
- x={marginX}
113
- y={marginY}
114
- width={`${size[0] - 2 * marginX}px`}
115
- height={`${size[1] - 2 * marginY}px`}
116
- />
103
+ <ClipPath id={uid} x={xMargin} y={yMargin} width={`${xSize}px`} height={`${ySize}px`} />
117
104
  </>
118
105
  );
119
106
  }
File without changes
File without changes
File without changes
@@ -25,12 +25,14 @@ class VennRoot extends Component {
25
25
  return () => ({ width: 0, height: 0, top: y, right: x, bottom: y, left: x });
26
26
  }
27
27
 
28
- bindHandlerTooltip = (visible, props) => ({ clientX: x, clientY: y }) => {
29
- const { eventEmitter } = this.asProps;
30
- this.virtualElement.getBoundingClientRect = this.generateGetBoundingClientRect(x, y);
31
- this.virtualElement[CONSTANT.VIRTUAL_ELEMENT] = true;
32
- eventEmitter.emit('onTooltipVisible', visible, props, this.virtualElement);
33
- };
28
+ bindHandlerTooltip =
29
+ (visible, props) =>
30
+ ({ clientX: x, clientY: y }) => {
31
+ const { eventEmitter } = this.asProps;
32
+ this.virtualElement.getBoundingClientRect = this.generateGetBoundingClientRect(x, y);
33
+ this.virtualElement[CONSTANT.VIRTUAL_ELEMENT] = true;
34
+ eventEmitter.emit('onTooltipVisible', visible, props, this.virtualElement);
35
+ };
34
36
 
35
37
  getVennData() {
36
38
  const { data, orientation, orientationOrder, size } = this.asProps;
File without changes