@semcore/d3-chart 2.0.9 → 2.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (105) hide show
  1. package/CHANGELOG.md +27 -0
  2. package/lib/cjs/Area.js +70 -29
  3. package/lib/cjs/Area.js.map +1 -1
  4. package/lib/cjs/Bar.js +6 -4
  5. package/lib/cjs/Bar.js.map +1 -1
  6. package/lib/cjs/Bubble.js +1 -0
  7. package/lib/cjs/Bubble.js.map +1 -1
  8. package/lib/cjs/Donut.js +120 -44
  9. package/lib/cjs/Donut.js.map +1 -1
  10. package/lib/cjs/Dots.js +24 -25
  11. package/lib/cjs/Dots.js.map +1 -1
  12. package/lib/cjs/GroupBar.js +7 -7
  13. package/lib/cjs/GroupBar.js.map +1 -1
  14. package/lib/cjs/Line.js +4 -2
  15. package/lib/cjs/Line.js.map +1 -1
  16. package/lib/cjs/ReferenceLine.js +258 -0
  17. package/lib/cjs/ReferenceLine.js.map +1 -0
  18. package/lib/cjs/ResponsiveContainer.js +1 -1
  19. package/lib/cjs/ResponsiveContainer.js.map +1 -1
  20. package/lib/cjs/ScatterPlot.js +1 -0
  21. package/lib/cjs/ScatterPlot.js.map +1 -1
  22. package/lib/cjs/StackBar.js +6 -6
  23. package/lib/cjs/StackedArea.js +7 -7
  24. package/lib/cjs/Tooltip.js +3 -2
  25. package/lib/cjs/Tooltip.js.map +1 -1
  26. package/lib/cjs/createElement.js +4 -3
  27. package/lib/cjs/createElement.js.map +1 -1
  28. package/lib/cjs/index.js +8 -0
  29. package/lib/cjs/index.js.map +1 -1
  30. package/lib/cjs/style/dot.shadow.css +10 -5
  31. package/lib/cjs/style/reference-line.shadow.css +37 -0
  32. package/lib/cjs/types/Area.d.ts +1 -0
  33. package/lib/cjs/types/Bar.d.ts +4 -0
  34. package/lib/cjs/types/Bubble.d.ts +6 -1
  35. package/lib/cjs/types/Donut.d.ts +4 -0
  36. package/lib/cjs/types/ReferenceLine.d.ts +31 -0
  37. package/lib/cjs/types/Tooltip.d.ts +5 -3
  38. package/lib/cjs/types/index.d.ts +3 -0
  39. package/lib/es6/Area.js +68 -27
  40. package/lib/es6/Area.js.map +1 -1
  41. package/lib/es6/Bar.js +6 -4
  42. package/lib/es6/Bar.js.map +1 -1
  43. package/lib/es6/Bubble.js +1 -0
  44. package/lib/es6/Bubble.js.map +1 -1
  45. package/lib/es6/Donut.js +114 -44
  46. package/lib/es6/Donut.js.map +1 -1
  47. package/lib/es6/Dots.js +24 -23
  48. package/lib/es6/Dots.js.map +1 -1
  49. package/lib/es6/GroupBar.js +7 -7
  50. package/lib/es6/GroupBar.js.map +1 -1
  51. package/lib/es6/Line.js +4 -2
  52. package/lib/es6/Line.js.map +1 -1
  53. package/lib/es6/ReferenceLine.js +244 -0
  54. package/lib/es6/ReferenceLine.js.map +1 -0
  55. package/lib/es6/ResponsiveContainer.js +1 -1
  56. package/lib/es6/ResponsiveContainer.js.map +1 -1
  57. package/lib/es6/ScatterPlot.js +1 -0
  58. package/lib/es6/ScatterPlot.js.map +1 -1
  59. package/lib/es6/StackBar.js +6 -6
  60. package/lib/es6/StackedArea.js +7 -7
  61. package/lib/es6/Tooltip.js +3 -2
  62. package/lib/es6/Tooltip.js.map +1 -1
  63. package/lib/es6/createElement.js +3 -3
  64. package/lib/es6/createElement.js.map +1 -1
  65. package/lib/es6/index.js +1 -0
  66. package/lib/es6/index.js.map +1 -1
  67. package/lib/es6/style/dot.shadow.css +10 -5
  68. package/lib/es6/style/reference-line.shadow.css +37 -0
  69. package/lib/es6/types/Area.d.ts +1 -0
  70. package/lib/es6/types/Bar.d.ts +4 -0
  71. package/lib/es6/types/Bubble.d.ts +6 -1
  72. package/lib/es6/types/Donut.d.ts +4 -0
  73. package/lib/es6/types/ReferenceLine.d.ts +31 -0
  74. package/lib/es6/types/Tooltip.d.ts +5 -3
  75. package/lib/es6/types/index.d.ts +3 -0
  76. package/lib/types/Area.d.ts +1 -0
  77. package/lib/types/Bar.d.ts +4 -0
  78. package/lib/types/Bubble.d.ts +6 -1
  79. package/lib/types/Donut.d.ts +4 -0
  80. package/lib/types/ReferenceLine.d.ts +31 -0
  81. package/lib/types/Tooltip.d.ts +5 -3
  82. package/lib/types/index.d.ts +3 -0
  83. package/package.json +11 -11
  84. package/src/Area.jsx +41 -8
  85. package/src/Bar.jsx +6 -5
  86. package/src/Bubble.jsx +1 -0
  87. package/src/Donut.jsx +96 -29
  88. package/src/Dots.jsx +11 -14
  89. package/src/GroupBar.jsx +1 -1
  90. package/src/Line.jsx +2 -1
  91. package/src/ReferenceLine.jsx +146 -0
  92. package/src/ResponsiveContainer.jsx +1 -1
  93. package/src/ScatterPlot.jsx +1 -0
  94. package/src/Tooltip.jsx +2 -3
  95. package/src/createElement.jsx +4 -2
  96. package/src/index.js +1 -0
  97. package/src/style/dot.shadow.css +10 -5
  98. package/src/style/reference-line.shadow.css +37 -0
  99. package/src/types/Area.d.ts +1 -0
  100. package/src/types/Bar.d.ts +4 -0
  101. package/src/types/Bubble.d.ts +6 -1
  102. package/src/types/Donut.d.ts +4 -0
  103. package/src/types/ReferenceLine.d.ts +31 -0
  104. package/src/types/Tooltip.d.ts +5 -3
  105. package/src/types/index.d.ts +3 -0
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/Line.jsx"],"names":["LineRoot","asProps","x","y","d3","color","data","SLine","Element","styles","hide","uid","size","duration","rect","setAttribute","Component","style","$rootProps","curve","curveLinear","scale","xScale","yScale","defined","p","Null","props","SNull","Dots"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAEA;;AAFA;;AACA;;AAEA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;;;;;;;;;;;;;;;IAIMA,Q;;;;;;;;;;;;WAiBJ,wBAAe;AACb,0BAA4B,KAAKC,OAAjC;AAAA,UAAQC,CAAR,iBAAQA,CAAR;AAAA,UAAWC,CAAX,iBAAWA,CAAX;AAAA,UAAcC,EAAd,iBAAcA,EAAd;AAAA,UAAkBC,KAAlB,iBAAkBA,KAAlB;AACA,aAAO;AACLH,QAAAA,CAAC,EAADA,CADK;AAELC,QAAAA,CAAC,EAADA,CAFK;AAGLC,QAAAA,EAAE,EAAFA,EAHK;AAILC,QAAAA,KAAK,EAALA;AAJK,OAAP;AAMD;;;WAED,wBAAe;AACb,2BAAkC,KAAKJ,OAAvC;AAAA,UAAQC,CAAR,kBAAQA,CAAR;AAAA,UAAWC,CAAX,kBAAWA,CAAX;AAAA,UAAcC,EAAd,kBAAcA,EAAd;AAAA,UAAkBC,KAAlB,kBAAkBA,KAAlB;AAAA,UAAyBC,IAAzB,kBAAyBA,IAAzB;AACA,aAAO;AACLF,QAAAA,EAAE,EAAFA,EADK;AAEL;AACAE,QAAAA,IAAI,EAAE,wBAAYA,IAAZ,EAAkB,4BAAgBJ,CAAhB,EAAmBC,CAAnB,CAAlB,EAAyCA,CAAzC,CAHD;AAILE,QAAAA,KAAK,EAALA;AAJK,OAAP;AAMD;;;WAED,kBAAS;AAAA;;AACP,UAAME,KAAK,GAAG,KAAKC,OAAnB;AACA,2BAA+D,KAAKP,OAApE;AAAA,UAAQQ,MAAR,kBAAQA,MAAR;AAAA,UAAgBC,IAAhB,kBAAgBA,IAAhB;AAAA,UAAsBL,KAAtB,kBAAsBA,KAAtB;AAAA,UAA6BM,GAA7B,kBAA6BA,GAA7B;AAAA,UAAkCC,IAAlC,kBAAkCA,IAAlC;AAAA,UAAwCR,EAAxC,kBAAwCA,EAAxC;AAAA,UAA4CE,IAA5C,kBAA4CA,IAA5C;AAAA,UAAkDO,QAAlD,kBAAkDA,QAAlD;AACA,oBAAO,mBAAQJ,MAAR,CAAP,eACE,+EACE,gCAAC,KAAD;AAAA,mCACoBE,GADpB;AAAA,kBAES,MAFT;AAAA,gBAGQD,IAHR;AAAA,iBAISL,KAJT;AAAA,aAKKD,EAAE,CAACE,IAAD,CALP;AAAA,kCAMmBO,QANnB;AAAA,SADF,EASGA,QAAQ,iBACP,gCAAC,oBAAD;AAAA,2BACmB,yBAACC,IAAD,EAAU;AACzBA,UAAAA,IAAI,CAACC,YAAL,CAAkB,OAAlB,EAA2BH,IAAI,CAAC,CAAD,CAA/B;AACD,SAHH;AAAA,cAIMD,GAJN;AAAA,aAKI,GALJ;AAAA,aAMI,GANJ;AAAA,iBAOS,CAPT;AAAA,kBAQUC,IAAI,CAAC,CAAD,CARd;AAAA,sCASuBC,QATvB;AAAA,SAVJ,CADF;AAyBD;;;EAjEoBG,e;;iCAAjBhB,Q,iBACiB,M;iCADjBA,Q,WAEWiB,K;iCAFXjB,Q,aAGa,CAAC,2BAAD,C;iCAHbA,Q,kBAKkB,iBAAsD;AAAA,MAAnDE,CAAmD,SAAnDA,CAAmD;AAAA,MAAhDC,CAAgD,SAAhDA,CAAgD;AAAA,MAA7Ce,UAA6C,SAA7CA,UAA6C;AAAA,0BAAjCC,KAAiC;AAAA,MAAjCA,KAAiC,4BAAzBC,oBAAyB;AAAA,MAAZC,KAAY,SAAZA,KAAY;;AAC1E,cAAyBA,KAAK,IAAIH,UAAU,CAACG,KAA7C;AAAA;AAAA,MAAOC,MAAP;AAAA,MAAeC,MAAf;;AACA,SAAO;AACLnB,IAAAA,EAAE,EAAE,qBACDoB,OADC,CACO,wBAAYtB,CAAZ,EAAeC,CAAf,CADP,EAEDgB,KAFC,CAEKA,KAFL,EAGDjB,CAHC,CAGC,UAACuB,CAAD;AAAA,aAAO,6BAAiBH,MAAjB,EAAyBG,CAAC,CAACvB,CAAD,CAA1B,CAAP;AAAA,KAHD,EAIDC,CAJC,CAIC,UAACsB,CAAD;AAAA,aAAO,6BAAiBF,MAAjB,EAAyBE,CAAC,CAACtB,CAAD,CAA1B,CAAP;AAAA,KAJD,CADC;AAMLU,IAAAA,QAAQ,EAAE;AANL,GAAP;AAQD,C;;AAqDH,SAASa,IAAT,CAAcC,KAAd,EAAqB;AAAA;;AACnB,MAAiBC,KAAjB,GAAmDD,KAAnD,CAAQnB,OAAR;AAAA,MAAwBC,MAAxB,GAAmDkB,KAAnD,CAAwBlB,MAAxB;AAAA,MAAgCL,EAAhC,GAAmDuB,KAAnD,CAAgCvB,EAAhC;AAAA,MAAoCE,IAApC,GAAmDqB,KAAnD,CAAoCrB,IAApC;AAAA,MAA0CI,IAA1C,GAAmDiB,KAAnD,CAA0CjB,IAA1C;AACA,iBAAO,mBAAQD,MAAR,CAAP,eAAuB,gCAAC,KAAD;AAAA,cAAc,MAAd;AAAA,SAAwBL,EAAE,CAACE,IAAD,CAA1B;AAAA,YAAwCI;AAAxC,KAAvB;AACD;;eAEc,+BAAcV,QAAd,EAAwB;AACrC6B,EAAAA,IAAI,EAAJA,gBADqC;AAErCH,EAAAA,IAAI,EAAJA;AAFqC,CAAxB,C","sourcesContent":["import React from 'react';\nimport { curveLinear, line as d3Line } from 'd3-shape';\nimport { Component, sstyled } from '@semcore/core';\nimport createElement from './createElement';\nimport { definedData, definedNullData, scaleOfBandwidth, getNullData } from './utils';\nimport Dots from './Dots';\nimport ClipPath from './ClipPath';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\n\nimport style from './style/line.shadow.css';\n\nclass LineRoot extends Component {\n static displayName = 'Line';\n static style = style;\n static enhance = [uniqueIDEnhancement()];\n\n static defaultProps = ({ x, y, $rootProps, curve = curveLinear, scale }) => {\n const [xScale, yScale] = scale || $rootProps.scale;\n return {\n d3: d3Line()\n .defined(definedData(x, y))\n .curve(curve)\n .x((p) => scaleOfBandwidth(xScale, p[x]))\n .y((p) => scaleOfBandwidth(yScale, p[y])),\n duration: 500,\n };\n };\n\n getDotsProps() {\n const { x, y, d3, color } = this.asProps;\n return {\n x,\n y,\n d3,\n color,\n };\n }\n\n getNullProps() {\n const { x, y, d3, color, data } = this.asProps;\n return {\n d3,\n // TODO: vertical\n data: getNullData(data, definedNullData(x, y), y),\n color,\n };\n }\n\n render() {\n const SLine = this.Element;\n const { styles, hide, color, uid, size, d3, data, duration } = this.asProps;\n return sstyled(styles)(\n <>\n <SLine\n clipPath={`url(#${uid})`}\n render=\"path\"\n hide={hide}\n color={color}\n d={d3(data)}\n use:duration={`${duration}ms`}\n />\n {duration && (\n <ClipPath\n setAttributeTag={(rect) => {\n rect.setAttribute('width', size[0]);\n }}\n id={uid}\n x=\"0\"\n y=\"0\"\n width={0}\n height={size[1]}\n transition={`width ${duration}ms ease-in-out`}\n />\n )}\n </>,\n );\n }\n}\n\nfunction Null(props) {\n const { Element: SNull, styles, d3, data, hide } = props;\n return sstyled(styles)(<SNull render=\"path\" d={d3(data)} hide={hide} />);\n}\n\nexport default createElement(LineRoot, {\n Dots,\n Null,\n});\n"],"file":"Line.js"}
1
+ {"version":3,"sources":["../../src/Line.jsx"],"names":["LineRoot","asProps","x","y","d3","color","duration","data","SLine","Element","styles","hide","uid","size","rect","setAttribute","Component","style","$rootProps","curve","curveLinear","scale","xScale","yScale","defined","p","Null","props","SNull","Dots"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAEA;;AAFA;;AACA;;AAEA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;;;;;;;;;;;;;;;IAIMA,Q;;;;;;;;;;;;WAiBJ,wBAAe;AACb,0BAAsC,KAAKC,OAA3C;AAAA,UAAQC,CAAR,iBAAQA,CAAR;AAAA,UAAWC,CAAX,iBAAWA,CAAX;AAAA,UAAcC,EAAd,iBAAcA,EAAd;AAAA,UAAkBC,KAAlB,iBAAkBA,KAAlB;AAAA,UAAyBC,QAAzB,iBAAyBA,QAAzB;AACA,aAAO;AACLJ,QAAAA,CAAC,EAADA,CADK;AAELC,QAAAA,CAAC,EAADA,CAFK;AAGLC,QAAAA,EAAE,EAAFA,EAHK;AAILC,QAAAA,KAAK,EAALA,KAJK;AAKLC,QAAAA,QAAQ,EAARA;AALK,OAAP;AAOD;;;WAED,wBAAe;AACb,2BAAkC,KAAKL,OAAvC;AAAA,UAAQC,CAAR,kBAAQA,CAAR;AAAA,UAAWC,CAAX,kBAAWA,CAAX;AAAA,UAAcC,EAAd,kBAAcA,EAAd;AAAA,UAAkBC,KAAlB,kBAAkBA,KAAlB;AAAA,UAAyBE,IAAzB,kBAAyBA,IAAzB;AACA,aAAO;AACLH,QAAAA,EAAE,EAAFA,EADK;AAEL;AACAG,QAAAA,IAAI,EAAE,wBAAYA,IAAZ,EAAkB,4BAAgBL,CAAhB,EAAmBC,CAAnB,CAAlB,EAAyCA,CAAzC,CAHD;AAILE,QAAAA,KAAK,EAALA;AAJK,OAAP;AAMD;;;WAED,kBAAS;AAAA;;AACP,UAAMG,KAAK,GAAG,KAAKC,OAAnB;AACA,2BAA+D,KAAKR,OAApE;AAAA,UAAQS,MAAR,kBAAQA,MAAR;AAAA,UAAgBC,IAAhB,kBAAgBA,IAAhB;AAAA,UAAsBN,KAAtB,kBAAsBA,KAAtB;AAAA,UAA6BO,GAA7B,kBAA6BA,GAA7B;AAAA,UAAkCC,IAAlC,kBAAkCA,IAAlC;AAAA,UAAwCT,EAAxC,kBAAwCA,EAAxC;AAAA,UAA4CG,IAA5C,kBAA4CA,IAA5C;AAAA,UAAkDD,QAAlD,kBAAkDA,QAAlD;AACA,oBAAO,mBAAQI,MAAR,CAAP,eACE,+EACE,gCAAC,KAAD;AAAA,mCACoBE,GADpB;AAAA,kBAES,MAFT;AAAA,gBAGQD,IAHR;AAAA,iBAISN,KAJT;AAAA,aAKKD,EAAE,CAACG,IAAD,CALP;AAAA,kCAMmBD,QANnB;AAAA,SADF,EASGA,QAAQ,iBACP,gCAAC,oBAAD;AAAA,2BACmB,yBAACQ,IAAD,EAAU;AACzBA,UAAAA,IAAI,CAACC,YAAL,CAAkB,OAAlB,EAA2BF,IAAI,CAAC,CAAD,CAA/B;AACD,SAHH;AAAA,cAIMD,GAJN;AAAA,aAKI,GALJ;AAAA,aAMI,GANJ;AAAA,iBAOS,CAPT;AAAA,kBAQUC,IAAI,CAAC,CAAD,CARd;AAAA,sCASuBP,QATvB;AAAA,SAVJ,CADF;AAyBD;;;EAlEoBU,e;;iCAAjBhB,Q,iBACiB,M;iCADjBA,Q,WAEWiB,K;iCAFXjB,Q,aAGa,CAAC,2BAAD,C;iCAHbA,Q,kBAKkB,iBAAsD;AAAA,MAAnDE,CAAmD,SAAnDA,CAAmD;AAAA,MAAhDC,CAAgD,SAAhDA,CAAgD;AAAA,MAA7Ce,UAA6C,SAA7CA,UAA6C;AAAA,0BAAjCC,KAAiC;AAAA,MAAjCA,KAAiC,4BAAzBC,oBAAyB;AAAA,MAAZC,KAAY,SAAZA,KAAY;;AAC1E,cAAyBA,KAAK,IAAIH,UAAU,CAACG,KAA7C;AAAA;AAAA,MAAOC,MAAP;AAAA,MAAeC,MAAf;;AACA,SAAO;AACLnB,IAAAA,EAAE,EAAE,qBACDoB,OADC,CACO,wBAAYtB,CAAZ,EAAeC,CAAf,CADP,EAEDgB,KAFC,CAEKA,KAFL,EAGDjB,CAHC,CAGC,UAACuB,CAAD;AAAA,aAAO,6BAAiBH,MAAjB,EAAyBG,CAAC,CAACvB,CAAD,CAA1B,CAAP;AAAA,KAHD,EAIDC,CAJC,CAIC,UAACsB,CAAD;AAAA,aAAO,6BAAiBF,MAAjB,EAAyBE,CAAC,CAACtB,CAAD,CAA1B,CAAP;AAAA,KAJD,CADC;AAMLG,IAAAA,QAAQ,EAAE;AANL,GAAP;AAQD,C;;AAsDH,SAASoB,IAAT,CAAcC,KAAd,EAAqB;AAAA;;AACnB,MAAiBC,KAAjB,GAAmDD,KAAnD,CAAQlB,OAAR;AAAA,MAAwBC,MAAxB,GAAmDiB,KAAnD,CAAwBjB,MAAxB;AAAA,MAAgCN,EAAhC,GAAmDuB,KAAnD,CAAgCvB,EAAhC;AAAA,MAAoCG,IAApC,GAAmDoB,KAAnD,CAAoCpB,IAApC;AAAA,MAA0CI,IAA1C,GAAmDgB,KAAnD,CAA0ChB,IAA1C;AACA,iBAAO,mBAAQD,MAAR,CAAP,eAAuB,gCAAC,KAAD;AAAA,cAAc,MAAd;AAAA,SAAwBN,EAAE,CAACG,IAAD,CAA1B;AAAA,YAAwCI;AAAxC,KAAvB;AACD;;eAEc,+BAAcX,QAAd,EAAwB;AACrC6B,EAAAA,IAAI,EAAJA,gBADqC;AAErCH,EAAAA,IAAI,EAAJA;AAFqC,CAAxB,C","sourcesContent":["import React from 'react';\nimport { curveLinear, line as d3Line } from 'd3-shape';\nimport { Component, sstyled } from '@semcore/core';\nimport createElement from './createElement';\nimport { definedData, definedNullData, scaleOfBandwidth, getNullData } from './utils';\nimport Dots from './Dots';\nimport ClipPath from './ClipPath';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\n\nimport style from './style/line.shadow.css';\n\nclass LineRoot extends Component {\n static displayName = 'Line';\n static style = style;\n static enhance = [uniqueIDEnhancement()];\n\n static defaultProps = ({ x, y, $rootProps, curve = curveLinear, scale }) => {\n const [xScale, yScale] = scale || $rootProps.scale;\n return {\n d3: d3Line()\n .defined(definedData(x, y))\n .curve(curve)\n .x((p) => scaleOfBandwidth(xScale, p[x]))\n .y((p) => scaleOfBandwidth(yScale, p[y])),\n duration: 500,\n };\n };\n\n getDotsProps() {\n const { x, y, d3, color, duration } = this.asProps;\n return {\n x,\n y,\n d3,\n color,\n duration,\n };\n }\n\n getNullProps() {\n const { x, y, d3, color, data } = this.asProps;\n return {\n d3,\n // TODO: vertical\n data: getNullData(data, definedNullData(x, y), y),\n color,\n };\n }\n\n render() {\n const SLine = this.Element;\n const { styles, hide, color, uid, size, d3, data, duration } = this.asProps;\n return sstyled(styles)(\n <>\n <SLine\n clipPath={`url(#${uid})`}\n render=\"path\"\n hide={hide}\n color={color}\n d={d3(data)}\n use:duration={`${duration}ms`}\n />\n {duration && (\n <ClipPath\n setAttributeTag={(rect) => {\n rect.setAttribute('width', size[0]);\n }}\n id={uid}\n x=\"0\"\n y=\"0\"\n width={0}\n height={size[1]}\n transition={`width ${duration}ms ease-in-out`}\n />\n )}\n </>,\n );\n }\n}\n\nfunction Null(props) {\n const { Element: SNull, styles, d3, data, hide } = props;\n return sstyled(styles)(<SNull render=\"path\" d={d3(data)} hide={hide} />);\n}\n\nexport default createElement(LineRoot, {\n Dots,\n Null,\n});\n"],"file":"Line.js"}
@@ -0,0 +1,258 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = void 0;
9
+
10
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
+
12
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
+
14
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
15
+
16
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
17
+
18
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
19
+
20
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
21
+
22
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
23
+
24
+ var _core = require("@semcore/core");
25
+
26
+ var _react = _interopRequireDefault(require("react"));
27
+
28
+ var _createElement = _interopRequireDefault(require("./createElement"));
29
+
30
+ var _utils = require("./utils");
31
+
32
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
33
+
34
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
35
+
36
+ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
37
+
38
+ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
39
+
40
+ /*__reshadow-styles__:"./style/reference-line.shadow.css"*/
41
+ var style = (
42
+ /*__reshadow_css_start__*/
43
+ _core.sstyled.insert(
44
+ /*__inner_css_start__*/
45
+ ".___SReferenceLine_ivj93_gg_{fill:none;stroke:#a9abb6}.___STitle_ivj93_gg_{font-size:12px;fill:#6c6e79;transform-origin:var(--transform-origin_g0fw04)}.___STitle_ivj93_gg_._position_top_ivj93_gg_{text-anchor:middle}.___STitle_ivj93_gg_._position_bottom_ivj93_gg_{text-anchor:middle;alignment-baseline:hanging}.___STitle_ivj93_gg_._position_right_ivj93_gg_{transform:rotate(-90deg);alignment-baseline:middle;text-anchor:middle}.___STitle_ivj93_gg_._position_left_ivj93_gg_{transform:rotate(-90deg);text-anchor:middle;alignment-baseline:middle}.___SBackground_ivj93_gg_{fill:rgba(196,199,207,.2)}"
46
+ /*__inner_css_end__*/
47
+ , "g0fw04_gg_")
48
+ /*__reshadow_css_end__*/
49
+ , {
50
+ "__SReferenceLine": "___SReferenceLine_ivj93_gg_",
51
+ "__STitle": "___STitle_ivj93_gg_",
52
+ "--transform-origin": "--transform-origin_g0fw04",
53
+ "_position_top": "_position_top_ivj93_gg_",
54
+ "_position_bottom": "_position_bottom_ivj93_gg_",
55
+ "_position_right": "_position_right_ivj93_gg_",
56
+ "_position_left": "_position_left_ivj93_gg_",
57
+ "__SBackground": "___SBackground_ivj93_gg_"
58
+ });
59
+ var MAP_ORIENTATION = {
60
+ left: 'vertical',
61
+ right: 'vertical',
62
+ top: 'horizontal',
63
+ bottom: 'horizontal'
64
+ };
65
+ var MAP_POSITION_LINE = {
66
+ vertical: function vertical(_ref4, value) {
67
+ var _ref5 = (0, _slicedToArray2["default"])(_ref4, 2),
68
+ xScale = _ref5[0],
69
+ yScale = _ref5[1];
70
+
71
+ var yRange = yScale.range();
72
+ var x = (0, _utils.scaleOfBandwidth)(xScale, value);
73
+ return {
74
+ x: x,
75
+ y: yRange[1],
76
+ width: 0.1,
77
+ height: yRange[0] - yRange[1]
78
+ };
79
+ },
80
+ horizontal: function horizontal(_ref6, value) {
81
+ var _ref7 = (0, _slicedToArray2["default"])(_ref6, 2),
82
+ xScale = _ref7[0],
83
+ yScale = _ref7[1];
84
+
85
+ var xRange = xScale.range();
86
+ var y = (0, _utils.scaleOfBandwidth)(yScale, value);
87
+ return {
88
+ x: xRange[0],
89
+ y: y,
90
+ width: xRange[1] - xRange[0],
91
+ height: 0.1
92
+ };
93
+ }
94
+ };
95
+ var OFFSET_TITLE = 10;
96
+ var MAP_POSITION_TITlE = {
97
+ left: function left(_ref8, value) {
98
+ var _ref9 = (0, _slicedToArray2["default"])(_ref8, 2),
99
+ xScale = _ref9[0],
100
+ yScale = _ref9[1];
101
+
102
+ var yRange = yScale.range();
103
+ var x = (0, _utils.scaleOfBandwidth)(xScale, value);
104
+ return {
105
+ x: x - OFFSET_TITLE,
106
+ y: (yRange[0] + yRange[1]) / 2
107
+ };
108
+ },
109
+ right: function right(_ref10, value) {
110
+ var _ref11 = (0, _slicedToArray2["default"])(_ref10, 2),
111
+ xScale = _ref11[0],
112
+ yScale = _ref11[1];
113
+
114
+ var yRange = yScale.range();
115
+ var x = (0, _utils.scaleOfBandwidth)(xScale, value);
116
+ return {
117
+ x: x + OFFSET_TITLE,
118
+ y: (yRange[0] + yRange[1]) / 2
119
+ };
120
+ },
121
+ top: function top(_ref12, value) {
122
+ var _ref13 = (0, _slicedToArray2["default"])(_ref12, 2),
123
+ xScale = _ref13[0],
124
+ yScale = _ref13[1];
125
+
126
+ var xRange = xScale.range();
127
+ var y = (0, _utils.scaleOfBandwidth)(yScale, value);
128
+ return {
129
+ x: (xRange[1] + xRange[0]) / 2,
130
+ y: y - OFFSET_TITLE
131
+ };
132
+ },
133
+ bottom: function bottom(_ref14, value) {
134
+ var _ref15 = (0, _slicedToArray2["default"])(_ref14, 2),
135
+ xScale = _ref15[0],
136
+ yScale = _ref15[1];
137
+
138
+ var xRange = xScale.range();
139
+ var y = (0, _utils.scaleOfBandwidth)(yScale, value);
140
+ return {
141
+ x: (xRange[1] + xRange[0]) / 2,
142
+ y: y + OFFSET_TITLE
143
+ };
144
+ }
145
+ };
146
+
147
+ var ReferenceLineRoot = /*#__PURE__*/function (_Component) {
148
+ (0, _inherits2["default"])(ReferenceLineRoot, _Component);
149
+
150
+ var _super = _createSuper(ReferenceLineRoot);
151
+
152
+ function ReferenceLineRoot() {
153
+ (0, _classCallCheck2["default"])(this, ReferenceLineRoot);
154
+ return _super.apply(this, arguments);
155
+ }
156
+
157
+ (0, _createClass2["default"])(ReferenceLineRoot, [{
158
+ key: "getTitleProps",
159
+ value: function getTitleProps() {
160
+ var _this$asProps = this.asProps,
161
+ position = _this$asProps.position,
162
+ value = _this$asProps.value;
163
+ return {
164
+ position: position,
165
+ value: value
166
+ };
167
+ }
168
+ }, {
169
+ key: "getBackgroundProps",
170
+ value: function getBackgroundProps() {
171
+ var _this$asProps2 = this.asProps,
172
+ position = _this$asProps2.position,
173
+ value = _this$asProps2.value;
174
+ return {
175
+ position: position,
176
+ value: value
177
+ };
178
+ }
179
+ }, {
180
+ key: "render",
181
+ value: function render() {
182
+ var _ref;
183
+
184
+ var SReferenceLine = this.Element;
185
+ var _this$asProps3 = this.asProps,
186
+ title = _this$asProps3.title,
187
+ scale = _this$asProps3.scale,
188
+ position = _this$asProps3.position,
189
+ value = _this$asProps3.value,
190
+ color = _this$asProps3.color,
191
+ styles = _this$asProps3.styles;
192
+ var pos = MAP_POSITION_LINE[MAP_ORIENTATION[position]];
193
+ return _ref = (0, _core.sstyled)(styles), /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(SReferenceLine, _ref.cn("SReferenceLine", _objectSpread({
194
+ "render": "rect",
195
+ "__excludeProps": ['data', 'scale', 'format', 'value', 'color'],
196
+ "stroke": color
197
+ }, pos(scale, value)))), title && /*#__PURE__*/_react["default"].createElement(ReferenceLine.Title, null, title));
198
+ }
199
+ }]);
200
+ return ReferenceLineRoot;
201
+ }(_core.Component);
202
+
203
+ (0, _defineProperty2["default"])(ReferenceLineRoot, "displayName", 'ReferenceLine');
204
+ (0, _defineProperty2["default"])(ReferenceLineRoot, "style", style);
205
+ (0, _defineProperty2["default"])(ReferenceLineRoot, "defaultProps", {
206
+ position: 'left'
207
+ });
208
+
209
+ function Title(props) {
210
+ var _ref2;
211
+
212
+ var STitle = props.Element,
213
+ styles = props.styles,
214
+ scale = props.scale,
215
+ position = props.position,
216
+ value = props.value;
217
+
218
+ var _MAP_POSITION_TITlE$p = MAP_POSITION_TITlE[position](scale, value),
219
+ x = _MAP_POSITION_TITlE$p.x,
220
+ y = _MAP_POSITION_TITlE$p.y;
221
+
222
+ var sstyles = (0, _core.sstyled)(styles);
223
+ var sTitleStyles = sstyles.cn('STitle', {
224
+ 'transform-origin': "".concat(x.toFixed(2), "px ").concat(y.toFixed(2), "px")
225
+ });
226
+ return _ref2 = (0, _core.sstyled)(styles), /*#__PURE__*/_react["default"].createElement(STitle, _ref2.cn("STitle", {
227
+ "render": "text",
228
+ "childrenPosition": "inside",
229
+ "className": sTitleStyles.className,
230
+ "style": sTitleStyles.style,
231
+ "position": position,
232
+ "x": x,
233
+ "y": y
234
+ }));
235
+ }
236
+
237
+ function Background(props) {
238
+ var _ref3;
239
+
240
+ var SBackground = props.Element,
241
+ styles = props.styles,
242
+ scale = props.scale,
243
+ position = props.position,
244
+ value = props.value;
245
+ var pos = MAP_POSITION_LINE[MAP_ORIENTATION[position]];
246
+ return _ref3 = (0, _core.sstyled)(styles), /*#__PURE__*/_react["default"].createElement(SBackground, _ref3.cn("SBackground", _objectSpread({
247
+ "render": "rect",
248
+ "childrenPosition": "inside"
249
+ }, pos(scale, value))));
250
+ }
251
+
252
+ var ReferenceLine = (0, _createElement["default"])(ReferenceLineRoot, {
253
+ Title: Title,
254
+ Background: Background
255
+ });
256
+ var _default = ReferenceLine;
257
+ exports["default"] = _default;
258
+ //# sourceMappingURL=ReferenceLine.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/ReferenceLine.jsx"],"names":["MAP_ORIENTATION","left","right","top","bottom","MAP_POSITION_LINE","vertical","value","xScale","yScale","yRange","range","x","y","width","height","horizontal","xRange","OFFSET_TITLE","MAP_POSITION_TITlE","ReferenceLineRoot","asProps","position","SReferenceLine","Element","title","scale","color","styles","pos","Component","style","Title","props","STitle","sstyles","sTitleStyles","cn","toFixed","className","Background","SBackground","ReferenceLine"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { Component, sstyled } from '@semcore/core';\nimport createElement from './createElement';\nimport { scaleOfBandwidth } from './utils';\n\nimport style from './style/reference-line.shadow.css';\n\nconst MAP_ORIENTATION = {\n left: 'vertical',\n right: 'vertical',\n top: 'horizontal',\n bottom: 'horizontal',\n};\n\nconst MAP_POSITION_LINE = {\n vertical: ([xScale, yScale], value) => {\n const yRange = yScale.range();\n const x = scaleOfBandwidth(xScale, value);\n return {\n x: x,\n y: yRange[1],\n width: 0.1,\n height: yRange[0] - yRange[1],\n };\n },\n horizontal: ([xScale, yScale], value) => {\n const xRange = xScale.range();\n const y = scaleOfBandwidth(yScale, value);\n return {\n x: xRange[0],\n y: y,\n width: xRange[1] - xRange[0],\n height: 0.1,\n };\n },\n};\n\nconst OFFSET_TITLE = 10;\nconst MAP_POSITION_TITlE = {\n left: ([xScale, yScale], value) => {\n const yRange = yScale.range();\n const x = scaleOfBandwidth(xScale, value);\n return {\n x: x - OFFSET_TITLE,\n y: (yRange[0] + yRange[1]) / 2,\n };\n },\n right: ([xScale, yScale], value) => {\n const yRange = yScale.range();\n const x = scaleOfBandwidth(xScale, value);\n return {\n x: x + OFFSET_TITLE,\n y: (yRange[0] + yRange[1]) / 2,\n };\n },\n top: ([xScale, yScale], value) => {\n const xRange = xScale.range();\n const y = scaleOfBandwidth(yScale, value);\n return {\n x: (xRange[1] + xRange[0]) / 2,\n y: y - OFFSET_TITLE,\n };\n },\n bottom: ([xScale, yScale], value) => {\n const xRange = xScale.range();\n const y = scaleOfBandwidth(yScale, value);\n return {\n x: (xRange[1] + xRange[0]) / 2,\n y: y + OFFSET_TITLE,\n };\n },\n};\n\nclass ReferenceLineRoot extends Component {\n static displayName = 'ReferenceLine';\n static style = style;\n static defaultProps = {\n position: 'left',\n };\n\n getTitleProps() {\n const { position, value } = this.asProps;\n return { position, value };\n }\n\n getBackgroundProps() {\n const { position, value } = this.asProps;\n return { position, value };\n }\n\n render() {\n const SReferenceLine = this.Element;\n const { title, scale, position, value, color, styles } = this.asProps;\n const pos = MAP_POSITION_LINE[MAP_ORIENTATION[position]];\n\n return sstyled(styles)(\n <>\n <SReferenceLine\n render=\"rect\"\n __excludeProps={['data', 'scale', 'format', 'value', 'color']}\n stroke={color}\n {...pos(scale, value)}\n />\n {title && <ReferenceLine.Title>{title}</ReferenceLine.Title>}\n </>,\n );\n }\n}\n\nfunction Title(props) {\n const { Element: STitle, styles, scale, position, value } = props;\n const { x, y } = MAP_POSITION_TITlE[position](scale, value);\n\n const sstyles = sstyled(styles);\n const sTitleStyles = sstyles.cn('STitle', {\n 'transform-origin': `${x.toFixed(2)}px ${y.toFixed(2)}px`,\n });\n\n return sstyled(styles)(\n <STitle\n render=\"text\"\n childrenPosition=\"inside\"\n className={sTitleStyles.className}\n style={sTitleStyles.style}\n position={position}\n x={x}\n y={y}\n />,\n );\n}\n\nfunction Background(props) {\n const { Element: SBackground, styles, scale, position, value } = props;\n const pos = MAP_POSITION_LINE[MAP_ORIENTATION[position]];\n\n return sstyled(styles)(\n <SBackground render=\"rect\" childrenPosition=\"inside\" {...pos(scale, value)} />,\n );\n}\n\nconst ReferenceLine = createElement(ReferenceLineRoot, {\n Title,\n Background,\n});\n\nexport default ReferenceLine;\n"],"file":"ReferenceLine.js"}
@@ -119,7 +119,7 @@ var ResponsiveContainerRoot = /*#__PURE__*/function (_Component) {
119
119
  key: "componentDidMount",
120
120
  value: function componentDidMount() {
121
121
  if (this.$container) {
122
- // TODO ускорить можно?
122
+ // TODO: may be we can increase perfomance here? (by lsroman)
123
123
  this.observer.observe(this.$container);
124
124
  }
125
125
  } // TODO component did update ref?
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/ResponsiveContainer.jsx"],"names":["ResponsiveContainerRoot","props","React","createRef","entries","asProps","Children","aspect","$container","width","clientWidth","height","clientHeight","style","window","getComputedStyle","minHeight","Number","parseInt","getPropertyValue","maxHeight","size","forceUpdate","observer","ResizeObserver","handleResize","containerRef","current","observe","disconnect","SResponsiveContainer","Box","styles","Component","ResponsiveContainer"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA;;AAHA;;AACA;;AAGA;;AACA;;AACA;;AACA;;;;;;;;;;;;;;IAEMA,uB;;;;;AAMJ,mCAAYC,KAAZ,EAAmB;AAAA;;AAAA;AACjB,8BAAMA,KAAN;AADiB,qGAHJC,kBAAMC,SAAN,EAGI;AAAA,6FAFZ,CAAC,CAAD,EAAI,CAAJ,CAEY;AAAA,qGASJ,4BAAQ,UAACC,OAAD,EAAa;AAClC,0BAA6B,MAAKC,OAAlC;AAAA,UAAQC,QAAR,iBAAQA,QAAR;AAAA,UAAkBC,MAAlB,iBAAkBA,MAAlB;AACA,6BAAmD,MAAKC,UAAxD;AAAA,UAAmBC,KAAnB,oBAAMC,WAAN;AAAA,UAAwCC,MAAxC,oBAA0BC,YAA1B;;AAEA,UAAIL,MAAJ,EAAY;AACV,YAAMM,KAAK,GAAGC,MAAM,CAACC,gBAAP,CAAwB,MAAKP,UAA7B,CAAd;AACA,YAAMQ,SAAS,GAAGC,MAAM,CAACC,QAAP,CAAgBL,KAAK,CAACM,gBAAN,CAAuB,YAAvB,CAAhB,CAAlB;AACA,YAAMC,SAAS,GAAGH,MAAM,CAACC,QAAP,CAAgBL,KAAK,CAACM,gBAAN,CAAuB,YAAvB,CAAhB,CAAlB;AACAR,QAAAA,MAAM,GAAGF,KAAK,GAAGF,MAAjB;;AAEA,YAAII,MAAM,GAAGK,SAAb,EAAwB;AACtBL,UAAAA,MAAM,GAAGK,SAAT;AACD;;AACD,YAAIL,MAAM,GAAGS,SAAb,EAAwB;AACtBT,UAAAA,MAAM,GAAGS,SAAT;AACD;AACF;;AAED,UAAI,MAAKC,IAAL,CAAU,CAAV,MAAiBZ,KAAjB,IAA0B,MAAKY,IAAL,CAAU,CAAV,MAAiBV,MAA/C,EAAuD;AAEvD,YAAKU,IAAL,GAAY,CAACZ,KAAD,EAAQE,MAAR,CAAZ;AAEA,4EAAW,UAAX,EAAuB,MAAKU,IAA5B,EAAkCjB,OAAlC;;AAEA,UAAI,OAAO,mCAAkBE,QAAlB,CAAP,KAAuC,UAA3C,EAAuD;AACrD,cAAKgB,WAAL;AACD;AACF,KA3Bc,CATI;AAEjB,UAAKC,QAAL,GAAgB,IAAIC,kCAAJ,CAAmB,MAAKC,YAAxB,CAAhB;AAFiB;AAGlB;;;;SAED,eAAiB;AACf,aAAO,KAAKC,YAAL,CAAkBC,OAAzB;AACD;;;WA+BD,sBAAa;AACX,uDAAwB,KAAKN,IAA7B;AAAA,UAAOZ,KAAP;AAAA,UAAcE,MAAd;;AACA,aAAO;AACLF,QAAAA,KAAK,EAALA,KADK;AAELE,QAAAA,MAAM,EAANA;AAFK,OAAP;AAID;;;WAED,6BAAoB;AAClB,UAAI,KAAKH,UAAT,EAAqB;AACnB;AACA,aAAKe,QAAL,CAAcK,OAAd,CAAsB,KAAKpB,UAA3B;AACD;AACF,K,CAED;;;;WAEA,gCAAuB;AACrB,WAAKe,QAAL,CAAcM,UAAd;AACD;;;WAED,kBAAS;AAAA;AAAA;;AACP,UAAMC,oBAAoB,GAE2BC,YAFrD;AACA,UAAQC,MAAR,GAAmB,KAAK3B,OAAxB,CAAQ2B,MAAR;AACA,qBAAO,mBAAQA,MAAR,CAAP,eAAuB,gCAAC,oBAAD;AAAA,eAAwC,KAAKN;AAA7C,iBAAvB;AACD;;;EArEmCO,e;;iCAAhCjC,uB,iBACiB,qB;AAuEvB,IAAMkC,mBAAmB,GAAG,sBAAgBlC,uBAAhB,CAA5B;eAEekC,mB","sourcesContent":["import React from 'react';\nimport ResizeObserver from 'resize-observer-polyfill';\n\nimport createComponent, { Component, Root, sstyled } from '@semcore/core';\nimport { Box } from '@semcore/flex-box';\nimport trottle from '@semcore/utils/lib/rafTrottle';\nimport fire from '@semcore/utils/lib/fire';\nimport getOriginChildren from '@semcore/utils/lib/getOriginChildren';\n\nclass ResponsiveContainerRoot extends Component {\n static displayName = 'ResponsiveContainer';\n\n containerRef = React.createRef();\n size = [0, 0];\n\n constructor(props) {\n super(props);\n this.observer = new ResizeObserver(this.handleResize);\n }\n\n get $container() {\n return this.containerRef.current;\n }\n\n handleResize = trottle((entries) => {\n const { Children, aspect } = this.asProps;\n let { clientWidth: width, clientHeight: height } = this.$container;\n\n if (aspect) {\n const style = window.getComputedStyle(this.$container);\n const minHeight = Number.parseInt(style.getPropertyValue('min-height'));\n const maxHeight = Number.parseInt(style.getPropertyValue('max-height'));\n height = width * aspect;\n\n if (height < minHeight) {\n height = minHeight;\n }\n if (height > maxHeight) {\n height = maxHeight;\n }\n }\n\n if (this.size[0] === width && this.size[1] === height) return;\n\n this.size = [width, height];\n\n fire(this, 'onResize', this.size, entries);\n\n if (typeof getOriginChildren(Children) === 'function') {\n this.forceUpdate();\n }\n });\n\n setContext() {\n const [width, height] = this.size;\n return {\n width,\n height,\n };\n }\n\n componentDidMount() {\n if (this.$container) {\n // TODO ускорить можно?\n this.observer.observe(this.$container);\n }\n }\n\n // TODO component did update ref?\n\n componentWillUnmount() {\n this.observer.disconnect();\n }\n\n render() {\n const SResponsiveContainer = Root;\n const { styles } = this.asProps;\n return sstyled(styles)(<SResponsiveContainer render={Box} ref={this.containerRef} />);\n }\n}\n\nconst ResponsiveContainer = createComponent(ResponsiveContainerRoot);\n\nexport default ResponsiveContainer;\n"],"file":"ResponsiveContainer.js"}
1
+ {"version":3,"sources":["../../src/ResponsiveContainer.jsx"],"names":["ResponsiveContainerRoot","props","React","createRef","entries","asProps","Children","aspect","$container","width","clientWidth","height","clientHeight","style","window","getComputedStyle","minHeight","Number","parseInt","getPropertyValue","maxHeight","size","forceUpdate","observer","ResizeObserver","handleResize","containerRef","current","observe","disconnect","SResponsiveContainer","Box","styles","Component","ResponsiveContainer"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA;;AAHA;;AACA;;AAGA;;AACA;;AACA;;AACA;;;;;;;;;;;;;;IAEMA,uB;;;;;AAMJ,mCAAYC,KAAZ,EAAmB;AAAA;;AAAA;AACjB,8BAAMA,KAAN;AADiB,qGAHJC,kBAAMC,SAAN,EAGI;AAAA,6FAFZ,CAAC,CAAD,EAAI,CAAJ,CAEY;AAAA,qGASJ,4BAAQ,UAACC,OAAD,EAAa;AAClC,0BAA6B,MAAKC,OAAlC;AAAA,UAAQC,QAAR,iBAAQA,QAAR;AAAA,UAAkBC,MAAlB,iBAAkBA,MAAlB;AACA,6BAAmD,MAAKC,UAAxD;AAAA,UAAmBC,KAAnB,oBAAMC,WAAN;AAAA,UAAwCC,MAAxC,oBAA0BC,YAA1B;;AAEA,UAAIL,MAAJ,EAAY;AACV,YAAMM,KAAK,GAAGC,MAAM,CAACC,gBAAP,CAAwB,MAAKP,UAA7B,CAAd;AACA,YAAMQ,SAAS,GAAGC,MAAM,CAACC,QAAP,CAAgBL,KAAK,CAACM,gBAAN,CAAuB,YAAvB,CAAhB,CAAlB;AACA,YAAMC,SAAS,GAAGH,MAAM,CAACC,QAAP,CAAgBL,KAAK,CAACM,gBAAN,CAAuB,YAAvB,CAAhB,CAAlB;AACAR,QAAAA,MAAM,GAAGF,KAAK,GAAGF,MAAjB;;AAEA,YAAII,MAAM,GAAGK,SAAb,EAAwB;AACtBL,UAAAA,MAAM,GAAGK,SAAT;AACD;;AACD,YAAIL,MAAM,GAAGS,SAAb,EAAwB;AACtBT,UAAAA,MAAM,GAAGS,SAAT;AACD;AACF;;AAED,UAAI,MAAKC,IAAL,CAAU,CAAV,MAAiBZ,KAAjB,IAA0B,MAAKY,IAAL,CAAU,CAAV,MAAiBV,MAA/C,EAAuD;AAEvD,YAAKU,IAAL,GAAY,CAACZ,KAAD,EAAQE,MAAR,CAAZ;AAEA,4EAAW,UAAX,EAAuB,MAAKU,IAA5B,EAAkCjB,OAAlC;;AAEA,UAAI,OAAO,mCAAkBE,QAAlB,CAAP,KAAuC,UAA3C,EAAuD;AACrD,cAAKgB,WAAL;AACD;AACF,KA3Bc,CATI;AAEjB,UAAKC,QAAL,GAAgB,IAAIC,kCAAJ,CAAmB,MAAKC,YAAxB,CAAhB;AAFiB;AAGlB;;;;SAED,eAAiB;AACf,aAAO,KAAKC,YAAL,CAAkBC,OAAzB;AACD;;;WA+BD,sBAAa;AACX,uDAAwB,KAAKN,IAA7B;AAAA,UAAOZ,KAAP;AAAA,UAAcE,MAAd;;AACA,aAAO;AACLF,QAAAA,KAAK,EAALA,KADK;AAELE,QAAAA,MAAM,EAANA;AAFK,OAAP;AAID;;;WAED,6BAAoB;AAClB,UAAI,KAAKH,UAAT,EAAqB;AACnB;AACA,aAAKe,QAAL,CAAcK,OAAd,CAAsB,KAAKpB,UAA3B;AACD;AACF,K,CAED;;;;WAEA,gCAAuB;AACrB,WAAKe,QAAL,CAAcM,UAAd;AACD;;;WAED,kBAAS;AAAA;AAAA;;AACP,UAAMC,oBAAoB,GAE2BC,YAFrD;AACA,UAAQC,MAAR,GAAmB,KAAK3B,OAAxB,CAAQ2B,MAAR;AACA,qBAAO,mBAAQA,MAAR,CAAP,eAAuB,gCAAC,oBAAD;AAAA,eAAwC,KAAKN;AAA7C,iBAAvB;AACD;;;EArEmCO,e;;iCAAhCjC,uB,iBACiB,qB;AAuEvB,IAAMkC,mBAAmB,GAAG,sBAAgBlC,uBAAhB,CAA5B;eAEekC,mB","sourcesContent":["import React from 'react';\nimport ResizeObserver from 'resize-observer-polyfill';\n\nimport createComponent, { Component, Root, sstyled } from '@semcore/core';\nimport { Box } from '@semcore/flex-box';\nimport trottle from '@semcore/utils/lib/rafTrottle';\nimport fire from '@semcore/utils/lib/fire';\nimport getOriginChildren from '@semcore/utils/lib/getOriginChildren';\n\nclass ResponsiveContainerRoot extends Component {\n static displayName = 'ResponsiveContainer';\n\n containerRef = React.createRef();\n size = [0, 0];\n\n constructor(props) {\n super(props);\n this.observer = new ResizeObserver(this.handleResize);\n }\n\n get $container() {\n return this.containerRef.current;\n }\n\n handleResize = trottle((entries) => {\n const { Children, aspect } = this.asProps;\n let { clientWidth: width, clientHeight: height } = this.$container;\n\n if (aspect) {\n const style = window.getComputedStyle(this.$container);\n const minHeight = Number.parseInt(style.getPropertyValue('min-height'));\n const maxHeight = Number.parseInt(style.getPropertyValue('max-height'));\n height = width * aspect;\n\n if (height < minHeight) {\n height = minHeight;\n }\n if (height > maxHeight) {\n height = maxHeight;\n }\n }\n\n if (this.size[0] === width && this.size[1] === height) return;\n\n this.size = [width, height];\n\n fire(this, 'onResize', this.size, entries);\n\n if (typeof getOriginChildren(Children) === 'function') {\n this.forceUpdate();\n }\n });\n\n setContext() {\n const [width, height] = this.size;\n return {\n width,\n height,\n };\n }\n\n componentDidMount() {\n if (this.$container) {\n // TODO: may be we can increase perfomance here? (by lsroman)\n this.observer.observe(this.$container);\n }\n }\n\n // TODO component did update ref?\n\n componentWillUnmount() {\n this.observer.disconnect();\n }\n\n render() {\n const SResponsiveContainer = Root;\n const { styles } = this.asProps;\n return sstyled(styles)(<SResponsiveContainer render={Box} ref={this.containerRef} />);\n }\n}\n\nconst ResponsiveContainer = createComponent(ResponsiveContainerRoot);\n\nexport default ResponsiveContainer;\n"],"file":"ResponsiveContainer.js"}
@@ -169,6 +169,7 @@ var ScatterPlotRoot = /*#__PURE__*/function (_Component) {
169
169
  }))
170
170
  }), /*#__PURE__*/_react["default"].createElement(SScatterPlot, _ref.cn("SScatterPlot", {
171
171
  "id": "".concat(uid).concat(i),
172
+ "index": i,
172
173
  "render": "circle",
173
174
  "clipPath": "url(#".concat(uid, ")"),
174
175
  "cx": xScale(d[x]) + offset[0],
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/ScatterPlot.jsx"],"names":["ScatterPlotRoot","document","createElement","visible","props","x","clientX","y","clientY","eventEmitter","asProps","virtualElement","getBoundingClientRect","generateGetBoundingClientRect","CONSTANT","VIRTUAL_ELEMENT","emit","width","height","top","right","bottom","left","duration","uid","r","value","radius","selectRect","selection","selectAll","attr","selectRectNode","node","transition","animationCircle","d","i","color","scale","offset","styles","valueColor","xScale","yScale","SScatterPlot","Element","SValue","bindHandlerTooltip","xIndex","data","xSize","Math","abs","range","ySize","xMargin","min","yMargin","map","renderCircle","bind","Component","style","ScatterPlot"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { Component, sstyled } from '@semcore/core';\nimport canUseDOM from '@semcore/utils/lib/canUseDOM';\nimport { CONSTANT } from './utils';\nimport createElement from './createElement';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\nimport { transition } from 'd3-transition';\nimport style from './style/scatterplot.shadow.css';\nimport ClipPath from './ClipPath';\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 =\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 animationCircle() {\n const { duration, uid, r, value } = this.asProps;\n const radius = r ? r : value ? 12 : 5.5;\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() {\n this.animationCircle();\n }\n\n componentDidMount() {\n this.animationCircle();\n }\n\n renderCircle(d, i) {\n const { color, scale, x, y, r, offset, styles, uid, duration, value, valueColor } =\n this.asProps;\n const [xScale, yScale] = scale;\n const SScatterPlot = this.Element;\n const SValue = 'text';\n return sstyled(styles)(\n <g\n key={`circle(#${i})`}\n onMouseMove={this.bindHandlerTooltip(true, { ...this.props, xIndex: i })}\n onMouseLeave={this.bindHandlerTooltip(false, { ...this.props, xIndex: i })}\n >\n <SScatterPlot\n id={`${uid}${i}`}\n render=\"circle\"\n clipPath={`url(#${uid})`}\n cx={xScale(d[x]) + offset[0]}\n cy={yScale(d[y]) + offset[1]}\n color={color}\n r={r}\n use:duration={`${duration}ms`}\n />\n {d[value] && (\n <SValue\n x={xScale(d[x]) + offset[0]}\n y={yScale(d[y]) + offset[1]}\n dy=\".3em\"\n clipPath={`url(#${uid})`}\n color={valueColor}\n >\n {d[value]}\n </SValue>\n )}\n </g>,\n );\n }\n\n render() {\n const { data, uid, scale } = 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 return (\n <>\n {data.map(this.renderCircle.bind(this))}\n <ClipPath id={uid} x={xMargin} y={yMargin} width={`${xSize}px`} height={`${ySize}px`} />\n </>\n );\n }\n}\n\nconst ScatterPlot = createElement(ScatterPlotRoot);\n\nexport default ScatterPlot;\n"],"file":"ScatterPlot.js"}
1
+ {"version":3,"sources":["../../src/ScatterPlot.jsx"],"names":["ScatterPlotRoot","document","createElement","visible","props","x","clientX","y","clientY","eventEmitter","asProps","virtualElement","getBoundingClientRect","generateGetBoundingClientRect","CONSTANT","VIRTUAL_ELEMENT","emit","width","height","top","right","bottom","left","duration","uid","r","value","radius","selectRect","selection","selectAll","attr","selectRectNode","node","transition","animationCircle","d","i","color","scale","offset","styles","valueColor","xScale","yScale","SScatterPlot","Element","SValue","bindHandlerTooltip","xIndex","data","xSize","Math","abs","range","ySize","xMargin","min","yMargin","map","renderCircle","bind","Component","style","ScatterPlot"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { Component, sstyled } from '@semcore/core';\nimport canUseDOM from '@semcore/utils/lib/canUseDOM';\nimport { CONSTANT } from './utils';\nimport createElement from './createElement';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\nimport { transition } from 'd3-transition';\nimport style from './style/scatterplot.shadow.css';\nimport ClipPath from './ClipPath';\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 =\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 animationCircle() {\n const { duration, uid, r, value } = this.asProps;\n const radius = r ? r : value ? 12 : 5.5;\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() {\n this.animationCircle();\n }\n\n componentDidMount() {\n this.animationCircle();\n }\n\n renderCircle(d, i) {\n const { color, scale, x, y, r, offset, styles, uid, duration, value, valueColor } =\n this.asProps;\n const [xScale, yScale] = scale;\n const SScatterPlot = this.Element;\n const SValue = 'text';\n return sstyled(styles)(\n <g\n key={`circle(#${i})`}\n onMouseMove={this.bindHandlerTooltip(true, { ...this.props, xIndex: i })}\n onMouseLeave={this.bindHandlerTooltip(false, { ...this.props, xIndex: i })}\n >\n <SScatterPlot\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={color}\n r={r}\n use:duration={`${duration}ms`}\n />\n {d[value] && (\n <SValue\n x={xScale(d[x]) + offset[0]}\n y={yScale(d[y]) + offset[1]}\n dy=\".3em\"\n clipPath={`url(#${uid})`}\n color={valueColor}\n >\n {d[value]}\n </SValue>\n )}\n </g>,\n );\n }\n\n render() {\n const { data, uid, scale } = 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 return (\n <>\n {data.map(this.renderCircle.bind(this))}\n <ClipPath id={uid} x={xMargin} y={yMargin} width={`${xSize}px`} height={`${ySize}px`} />\n </>\n );\n }\n}\n\nconst ScatterPlot = createElement(ScatterPlotRoot);\n\nexport default ScatterPlot;\n"],"file":"ScatterPlot.js"}
@@ -48,15 +48,15 @@ var _ref = (
48
48
  /*__reshadow_css_start__*/
49
49
  (0, _core.__css__)(
50
50
  /*__inner_css_start__*/
51
- ".___SBar_1m37e_gg_{fill:#2bb3ff;transition-property:height,width,y;transition-duration:var(--duration);transition-timing-function:ease-in-out}.___SBar_1m37e_gg_.__color_1m37e_gg_{fill:var(--color)}.___SBar_1m37e_gg_.__hide_1m37e_gg_{display:none}.___SBackground_1m37e_gg_{fill:#c4c7cf}"
51
+ ".___SBar_x70sm_gg_{fill:#2bb3ff;transition-property:height,width,y;transition-duration:var(--duration);transition-timing-function:ease-in-out}.___SBar_x70sm_gg_.__color_x70sm_gg_{fill:var(--color)}.___SBar_x70sm_gg_.__hide_x70sm_gg_{display:none}.___SBackground_x70sm_gg_{fill:#c4c7cf}"
52
52
  /*__inner_css_end__*/
53
- , "1bbkjk2_gg_")
53
+ , "2ndmo2_gg_")
54
54
  /*__reshadow_css_end__*/
55
55
  , {
56
- "__SBar": "___SBar_1m37e_gg_",
57
- "_color": "__color_1m37e_gg_",
58
- "_hide": "__hide_1m37e_gg_",
59
- "__SBackground": "___SBackground_1m37e_gg_"
56
+ "__SBar": "___SBar_x70sm_gg_",
57
+ "_color": "__color_x70sm_gg_",
58
+ "_hide": "__hide_x70sm_gg_",
59
+ "__SBackground": "___SBackground_x70sm_gg_"
60
60
  }),
61
61
  style = (0, _extends2["default"])({}, _ref);
62
62
 
@@ -46,16 +46,16 @@ var _ref = (
46
46
  /*__reshadow_css_start__*/
47
47
  (0, _core.__css__)(
48
48
  /*__inner_css_start__*/
49
- ".___SArea_144m0_gg_{fill:#2bb3ff;fill-opacity:.2}.___SArea_144m0_gg_.__color_144m0_gg_{fill:var(--color)}.___SAreaLine_144m0_gg_{stroke:#2bb3ff;stroke-width:3;fill:transparent}.___SAreaLine_144m0_gg_.__color_144m0_gg_{stroke:var(--color)}.___SArea_144m0_gg_,.___SAreaLine_144m0_gg_{transition-property:d;transition-duration:var(--duration);transition-timing-function:ease-in-out}.___SNull_144m0_gg_{fill:transparent;stroke:#8a8e9b;stroke-dasharray:4}.___SNull_144m0_gg_.__hide_144m0_gg_{display:none}"
49
+ ".___SArea_1mrhj_gg_{fill:#2bb3ff;fill-opacity:.2}.___SArea_1mrhj_gg_.__color_1mrhj_gg_{fill:var(--color)}.___SAreaLine_1mrhj_gg_{stroke:#2bb3ff;stroke-width:3;fill:transparent}.___SAreaLine_1mrhj_gg_.__color_1mrhj_gg_{stroke:var(--color)}.___SArea_1mrhj_gg_,.___SAreaLine_1mrhj_gg_{transition-property:d;transition-duration:var(--duration);transition-timing-function:ease-in-out}.___SNull_1mrhj_gg_{fill:transparent;stroke:#8a8e9b;stroke-dasharray:4}.___SNull_1mrhj_gg_.__hide_1mrhj_gg_{display:none}"
50
50
  /*__inner_css_end__*/
51
- , "11bzpy7_gg_")
51
+ , "stmrj3_gg_")
52
52
  /*__reshadow_css_end__*/
53
53
  , {
54
- "__SArea": "___SArea_144m0_gg_",
55
- "_color": "__color_144m0_gg_",
56
- "__SAreaLine": "___SAreaLine_144m0_gg_",
57
- "__SNull": "___SNull_144m0_gg_",
58
- "_hide": "__hide_144m0_gg_"
54
+ "__SArea": "___SArea_1mrhj_gg_",
55
+ "_color": "__color_1mrhj_gg_",
56
+ "__SAreaLine": "___SAreaLine_1mrhj_gg_",
57
+ "__SNull": "___SNull_1mrhj_gg_",
58
+ "_hide": "__hide_1mrhj_gg_"
59
59
  }),
60
60
  style = (0, _extends2["default"])({}, _ref);
61
61
 
@@ -220,8 +220,9 @@ function Dot(props) {
220
220
  Children = props.Children;
221
221
  var SDotGroup = _flexBox.Box;
222
222
  var SDot = _flexBox.Box;
223
- return _ref6 = (0, _core.sstyled)(styles), /*#__PURE__*/_react["default"].createElement(SDotGroup, _ref6.cn("SDotGroup", _objectSpread({}, (0, _core.assignProps)({}, _ref3))), /*#__PURE__*/_react["default"].createElement(SDot, _ref6.cn("SDot", {
224
- "__excludeProps": ['data', 'scale'],
223
+ return _ref6 = (0, _core.sstyled)(styles), /*#__PURE__*/_react["default"].createElement(SDotGroup, _ref6.cn("SDotGroup", _objectSpread({}, (0, _core.assignProps)({
224
+ "__excludeProps": ['data', 'scale']
225
+ }, _ref3))), /*#__PURE__*/_react["default"].createElement(SDot, _ref6.cn("SDot", {
225
226
  "color": (0, _color["default"])(color)
226
227
  })), /*#__PURE__*/_react["default"].createElement(Children, _ref6.cn("Children", {})));
227
228
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/Tooltip.jsx"],"names":["TooltipRoot","$visible","asProps","x","y","state","eventEmitter","rootRef","unsubscribeTooltipVisible","subscribe","visible","data","node","setState","CONSTANT","VIRTUAL_ELEMENT","current","contains","setPopperTrigger","popper","update","Children","children","tag","other","advanceMode","Tooltip","Trigger","displayName","Popper","handlerCancel","allowedAutoPlacements","setTrigger","Component","style","PopperPopper","props","STooltip","Element","styles","Title","STitle","Box","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":["TooltipRoot","$visible","asProps","x","y","state","eventEmitter","rootRef","unsubscribeTooltipVisible","subscribe","visible","data","node","setState","CONSTANT","VIRTUAL_ELEMENT","current","contains","setPopperTrigger","popper","update","Children","children","tag","other","advanceMode","Tooltip","Trigger","displayName","Popper","handlerCancel","allowedAutoPlacements","setTrigger","Component","style","PopperPopper","props","STooltip","Element","styles","Title","STitle","Box","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 ...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} __excludeProps={['data', 'scale']}>\n <SDot 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"}
@@ -31,7 +31,7 @@ var _getOriginChildren = _interopRequireDefault(require("@semcore/utils/lib/getO
31
31
 
32
32
  var _hoistNonReactStatics = _interopRequireDefault(require("hoist-non-react-statics"));
33
33
 
34
- var _excluded = ["render", "tag", "childrenPosition", "x", "y"],
34
+ var _excluded = ["render", "childrenPosition", "x", "y"],
35
35
  _excluded2 = ["forwardRef", "children", "Children", "x", "y"],
36
36
  _excluded3 = ["$rootProps"];
37
37
 
@@ -43,11 +43,12 @@ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (O
43
43
 
44
44
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
45
45
 
46
+ var EXCLUDE_PROPS = ['data', 'scale'];
47
+
46
48
  function createElementRender() {
47
49
  var Element = _react["default"].forwardRef(function ( // eslint-disable-next-line @typescript-eslint/no-unused-vars
48
50
  _ref, ref) {
49
51
  var render = _ref.render,
50
- tag = _ref.tag,
51
52
  _ref$childrenPosition = _ref.childrenPosition,
52
53
  childrenPosition = _ref$childrenPosition === void 0 ? 'below' : _ref$childrenPosition,
53
54
  xS = _ref.x,
@@ -93,7 +94,7 @@ function createElementRender() {
93
94
  return [/*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, {
94
95
  key: "child-above"
95
96
  }, childrenPosition === 'above' ? children : null), /*#__PURE__*/_react["default"].createElement(Tag, (0, _extends2["default"])({}, (0, _propsForElement["default"])(_objectSpread({
96
- __excludeProps: ['data', 'scale']
97
+ __excludeProps: EXCLUDE_PROPS
97
98
  }, mergedProps), Tag), {
98
99
  key: "element"
99
100
  })), /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/createElement.jsx"],"names":["createElementRender","Element","React","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","Plot","CONTEXT_COMPONENT","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 // eslint-disable-next-line @typescript-eslint/no-unused-vars\n { render, tag, childrenPosition = 'below', x: xS, y: yS, ...source },\n ref,\n ) {\n const {\n forwardRef = null,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\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 expected render prop to be passed');\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":["EXCLUDE_PROPS","createElementRender","Element","React","forwardRef","ref","render","childrenPosition","xS","x","yS","y","source","props","_children","children","Children","mergedProps","Tag","tag","_child","undefined","Error","__excludeProps","elementEnhancement","init","asProps","WrapperComponent","isFunction","$rootProps","WrapComponent","ElementWithContext","Plot","CONTEXT_COMPONENT","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\nconst EXCLUDE_PROPS = ['data', 'scale'];\n\nfunction createElementRender() {\n const Element = React.forwardRef(function (\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n { render, childrenPosition = 'below', x: xS, y: yS, ...source },\n ref,\n ) {\n const {\n forwardRef = null,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\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 expected render prop to be passed');\n }\n return [\n <React.Fragment key=\"child-above\">\n {childrenPosition === 'above' ? children : null}\n </React.Fragment>,\n <Tag\n {...propsForElement(\n {\n __excludeProps: EXCLUDE_PROPS,\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/lib/cjs/index.js CHANGED
@@ -71,6 +71,12 @@ Object.defineProperty(exports, "RadialTree", {
71
71
  return _RadialTree["default"];
72
72
  }
73
73
  });
74
+ Object.defineProperty(exports, "ReferenceLine", {
75
+ enumerable: true,
76
+ get: function get() {
77
+ return _ReferenceLine["default"];
78
+ }
79
+ });
74
80
  Object.defineProperty(exports, "ResponsiveContainer", {
75
81
  enumerable: true,
76
82
  get: function get() {
@@ -164,6 +170,8 @@ var _Tooltip = _interopRequireDefault(require("./Tooltip"));
164
170
 
165
171
  var _ResponsiveContainer = _interopRequireDefault(require("./ResponsiveContainer"));
166
172
 
173
+ var _ReferenceLine = _interopRequireDefault(require("./ReferenceLine"));
174
+
167
175
  var _Hover = require("./Hover");
168
176
 
169
177
  var _utils = require("./utils");
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/index.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AAEA;;AAEA;;AAEA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAEA;;AAEA;;AAEA;;AAEA;;AACA","sourcesContent":["export { default as Plot } from './Plot';\n\nexport { XAxis, YAxis } from './Axis';\n\nexport { default as Line } from './Line';\n\nexport { default as Bar } from './Bar';\nexport { default as HorizontalBar } from './HorizontalBar';\nexport { default as GroupBar } from './GroupBar';\nexport { default as StackBar } from './StackBar';\nexport { default as Area } from './Area';\nexport { default as StackedArea } from './StackedArea';\nexport { default as ScatterPlot } from './ScatterPlot';\nexport { default as Bubble } from './Bubble';\nexport { default as RadialTree } from './RadialTree';\nexport { default as Donut } from './Donut';\nexport { default as Venn } from './Venn';\n\nexport { default as Tooltip } from './Tooltip';\n\nexport { default as ResponsiveContainer } from './ResponsiveContainer';\n\nexport { HoverLine, HoverRect } from './Hover';\n\nexport { minMax } from './utils';\nexport { colors } from './color';\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../src/index.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AAEA;;AAEA;;AAEA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAEA;;AAEA;;AACA;;AAEA;;AAEA;;AACA","sourcesContent":["export { default as Plot } from './Plot';\n\nexport { XAxis, YAxis } from './Axis';\n\nexport { default as Line } from './Line';\n\nexport { default as Bar } from './Bar';\nexport { default as HorizontalBar } from './HorizontalBar';\nexport { default as GroupBar } from './GroupBar';\nexport { default as StackBar } from './StackBar';\nexport { default as Area } from './Area';\nexport { default as StackedArea } from './StackedArea';\nexport { default as ScatterPlot } from './ScatterPlot';\nexport { default as Bubble } from './Bubble';\nexport { default as RadialTree } from './RadialTree';\nexport { default as Donut } from './Donut';\nexport { default as Venn } from './Venn';\n\nexport { default as Tooltip } from './Tooltip';\n\nexport { default as ResponsiveContainer } from './ResponsiveContainer';\nexport { default as ReferenceLine } from './ReferenceLine';\n\nexport { HoverLine, HoverRect } from './Hover';\n\nexport { minMax } from './utils';\nexport { colors } from './color';\n"],"file":"index.js"}