@pie-lib/graphing-solution-set 3.1.0-next.2 → 3.1.0-next.25

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 (84) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/NEXT.CHANGELOG.json +16 -1
  3. package/lib/axis/arrow.js +82 -0
  4. package/lib/axis/arrow.js.map +1 -0
  5. package/lib/axis/axes.js +341 -0
  6. package/lib/axis/axes.js.map +1 -0
  7. package/lib/axis/index.js +28 -0
  8. package/lib/axis/index.js.map +1 -0
  9. package/lib/bg.js +120 -0
  10. package/lib/bg.js.map +1 -0
  11. package/lib/container/actions.js +19 -0
  12. package/lib/container/actions.js.map +1 -0
  13. package/lib/container/index.js +126 -0
  14. package/lib/container/index.js.map +1 -0
  15. package/lib/container/marks.js +24 -0
  16. package/lib/container/marks.js.map +1 -0
  17. package/lib/container/middleware.js +20 -0
  18. package/lib/container/middleware.js.map +1 -0
  19. package/lib/container/reducer.js +19 -0
  20. package/lib/container/reducer.js.map +1 -0
  21. package/lib/coordinates-label.js +88 -0
  22. package/lib/coordinates-label.js.map +1 -0
  23. package/lib/graph-with-controls.js +316 -0
  24. package/lib/graph-with-controls.js.map +1 -0
  25. package/lib/graph.js +372 -0
  26. package/lib/graph.js.map +1 -0
  27. package/lib/grid-setup.js +417 -0
  28. package/lib/grid-setup.js.map +1 -0
  29. package/lib/grid.js +153 -0
  30. package/lib/grid.js.map +1 -0
  31. package/lib/index.js +47 -0
  32. package/lib/index.js.map +1 -0
  33. package/lib/labels.js +212 -0
  34. package/lib/labels.js.map +1 -0
  35. package/lib/mark-label.js +175 -0
  36. package/lib/mark-label.js.map +1 -0
  37. package/lib/toggle-bar.js +265 -0
  38. package/lib/toggle-bar.js.map +1 -0
  39. package/lib/tool-menu.js +221 -0
  40. package/lib/tool-menu.js.map +1 -0
  41. package/lib/tools/index.js +25 -0
  42. package/lib/tools/index.js.map +1 -0
  43. package/lib/tools/line/component.js +105 -0
  44. package/lib/tools/line/component.js.map +1 -0
  45. package/lib/tools/line/index.js +12 -0
  46. package/lib/tools/line/index.js.map +1 -0
  47. package/lib/tools/polygon/component.js +378 -0
  48. package/lib/tools/polygon/component.js.map +1 -0
  49. package/lib/tools/polygon/index.js +101 -0
  50. package/lib/tools/polygon/index.js.map +1 -0
  51. package/lib/tools/polygon/line.js +130 -0
  52. package/lib/tools/polygon/line.js.map +1 -0
  53. package/lib/tools/polygon/polygon.js +150 -0
  54. package/lib/tools/polygon/polygon.js.map +1 -0
  55. package/lib/tools/shared/arrow-head.js +65 -0
  56. package/lib/tools/shared/arrow-head.js.map +1 -0
  57. package/lib/tools/shared/line/index.js +554 -0
  58. package/lib/tools/shared/line/index.js.map +1 -0
  59. package/lib/tools/shared/line/line-path.js +137 -0
  60. package/lib/tools/shared/line/line-path.js.map +1 -0
  61. package/lib/tools/shared/line/with-root-edge.js +132 -0
  62. package/lib/tools/shared/line/with-root-edge.js.map +1 -0
  63. package/lib/tools/shared/point/arrow-point.js +89 -0
  64. package/lib/tools/shared/point/arrow-point.js.map +1 -0
  65. package/lib/tools/shared/point/arrow.js +73 -0
  66. package/lib/tools/shared/point/arrow.js.map +1 -0
  67. package/lib/tools/shared/point/base-point.js +148 -0
  68. package/lib/tools/shared/point/base-point.js.map +1 -0
  69. package/lib/tools/shared/point/index.js +96 -0
  70. package/lib/tools/shared/point/index.js.map +1 -0
  71. package/lib/tools/shared/styles.js +27 -0
  72. package/lib/tools/shared/styles.js.map +1 -0
  73. package/lib/tools/shared/types.js +16 -0
  74. package/lib/tools/shared/types.js.map +1 -0
  75. package/lib/undo-redo.js +69 -0
  76. package/lib/undo-redo.js.map +1 -0
  77. package/lib/use-debounce.js +27 -0
  78. package/lib/use-debounce.js.map +1 -0
  79. package/lib/utils.js +253 -0
  80. package/lib/utils.js.map +1 -0
  81. package/package.json +14 -14
  82. package/src/__tests__/graph-with-controls.test.jsx +41 -0
  83. package/src/__tests__/toggle-bar.test.jsx +41 -0
  84. package/src/bg.jsx +5 -5
@@ -0,0 +1 @@
1
+ {"version":3,"file":"grid.js","names":["_react","_interopRequireDefault","require","_propTypes","vx","_interopRequireWildcard","_plot","_utils","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","_callSuper","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","Boolean","prototype","valueOf","Grid","exports","_React$Component","_this","_classCallCheck2","_len","args","Array","_key","concat","rowTickValues","columnTickValues","_this$props$graphProp","props","graphProps","scale","_this$props$graphProp2","size","width","height","domain","range","rowTickLabelValues","getTickValues","step","labelStep","value","includes","columnTickLabelValues","minValueLength","Math","min","_toConsumableArray2","toString","replace","maxValueLength","max","rowLabelLength","horizontalDistanceToZero","x","verticalDistanceToZero","y","columnLabelLength","rowStrokeDasharray","columnStrokeDasharray","displayAdditionalGrid","filteredColumnValues","filteredRowValues","_inherits2","_createClass2","key","render","_this2","_graphProps$size","_this$getAdditionalGr","getAdditionalGridProps","additionalGridStroke","createElement","Fragment","innerRef","grid","xScale","yScale","stroke","GridRows","tickValues","strokeDasharray","GridColumns","React","Component","disabled","PropTypes","bool","disabledAdditionalGrid","types","GraphPropsType","isRequired","_default"],"sources":["../src/grid.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport * as vx from '@visx/grid';\nimport { types } from '@pie-lib/plot';\nimport { getTickValues } from './utils';\n\nexport class Grid extends React.Component {\n static propTypes = {\n disabled: PropTypes.bool,\n disabledAdditionalGrid: PropTypes.bool,\n graphProps: types.GraphPropsType.isRequired,\n };\n\n getAdditionalGridProps = (rowTickValues, columnTickValues) => {\n const {\n graphProps: {\n scale,\n size: { width, height },\n domain,\n range,\n },\n } = this.props;\n const rowTickLabelValues = getTickValues({\n ...range,\n step: range.labelStep,\n }).filter((value) => rowTickValues.includes(value));\n const columnTickLabelValues = getTickValues({\n ...domain,\n step: domain.labelStep,\n }).filter((value) => columnTickValues.includes(value));\n\n const minValueLength =\n (rowTickLabelValues.length &&\n Math.min(...rowTickLabelValues)\n .toString()\n .replace(/[.-]/g, '').length) ||\n 1;\n const maxValueLength =\n (rowTickLabelValues.length &&\n Math.max(...rowTickLabelValues)\n .toString()\n .replace(/[.-]/g, '').length) ||\n 1;\n\n const rowLabelLength = Math.max(minValueLength, maxValueLength) * 9 + 22;\n const horizontalDistanceToZero = scale.x(0);\n const verticalDistanceToZero = scale.y(0);\n const columnLabelLength = 28;\n const rowStrokeDasharray = `${horizontalDistanceToZero - rowLabelLength} ${rowLabelLength} ${width}`;\n const columnStrokeDasharray = `${verticalDistanceToZero} ${columnLabelLength} ${height}`;\n\n const displayAdditionalGrid =\n domain.labelStep > 0 &&\n range.labelStep > 0 &&\n rowTickLabelValues &&\n columnTickLabelValues &&\n rowTickLabelValues.length > 1 &&\n columnTickLabelValues.length > 1 &&\n (rowTickLabelValues.length !== rowTickValues.length || columnTickLabelValues.length !== columnTickValues.length);\n\n const filteredColumnValues = columnTickLabelValues.filter(\n (value) => value >= 0 || horizontalDistanceToZero - scale.x(value) > rowLabelLength,\n );\n const filteredRowValues = rowTickLabelValues.filter(\n (value) => value >= 0 || scale.y(value) - verticalDistanceToZero > columnLabelLength,\n );\n\n return {\n rowTickLabelValues: filteredRowValues,\n columnTickLabelValues: filteredColumnValues,\n rowStrokeDasharray,\n columnStrokeDasharray,\n displayAdditionalGrid,\n };\n };\n\n render() {\n const { graphProps } = this.props;\n const {\n scale,\n size: { height, width },\n domain,\n range,\n } = graphProps;\n const rowTickValues = getTickValues(range);\n const columnTickValues = getTickValues(domain);\n const {\n rowTickLabelValues,\n columnTickLabelValues,\n rowStrokeDasharray,\n columnStrokeDasharray,\n displayAdditionalGrid,\n } = this.getAdditionalGridProps(rowTickValues, columnTickValues);\n\n const additionalGridStroke =\n domain.labelStep * 2 === domain.step || range.labelStep * 2 === range.step ? '#9FA8DA' : '#7985CB';\n\n return (\n <>\n <vx.Grid\n innerRef={(r) => (this.grid = r)}\n xScale={scale.x}\n yScale={scale.y}\n width={width}\n height={height}\n stroke=\"#D3D3D3\"\n rowTickValues={rowTickValues}\n columnTickValues={columnTickValues}\n />\n {displayAdditionalGrid && (\n <>\n <vx.GridRows\n scale={scale.y}\n width={width}\n tickValues={rowTickLabelValues}\n stroke={additionalGridStroke}\n strokeDasharray={rowStrokeDasharray}\n />\n <vx.GridColumns\n scale={scale.x}\n height={height}\n tickValues={columnTickLabelValues}\n stroke={additionalGridStroke}\n strokeDasharray={columnStrokeDasharray}\n />\n </>\n )}\n </>\n );\n }\n}\n\nexport default Grid;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,EAAA,GAAAC,uBAAA,CAAAH,OAAA;AACA,IAAAI,KAAA,GAAAJ,OAAA;AACA,IAAAK,MAAA,GAAAL,OAAA;AAAwC,SAAAG,wBAAAG,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAL,uBAAA,YAAAA,wBAAAG,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,mBAAAT,CAAA,iBAAAA,CAAA,gBAAAU,OAAA,CAAAV,CAAA,0BAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,cAAAM,EAAA,IAAAd,CAAA,gBAAAc,EAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,EAAA,OAAAP,CAAA,IAAAD,CAAA,GAAAW,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAnB,CAAA,EAAAc,EAAA,OAAAP,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAM,EAAA,EAAAP,CAAA,IAAAC,CAAA,CAAAM,EAAA,IAAAd,CAAA,CAAAc,EAAA,WAAAN,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAAA,SAAAmB,QAAApB,CAAA,EAAAG,CAAA,QAAAF,CAAA,GAAAgB,MAAA,CAAAI,IAAA,CAAArB,CAAA,OAAAiB,MAAA,CAAAK,qBAAA,QAAAhB,CAAA,GAAAW,MAAA,CAAAK,qBAAA,CAAAtB,CAAA,GAAAG,CAAA,KAAAG,CAAA,GAAAA,CAAA,CAAAiB,MAAA,WAAApB,CAAA,WAAAc,MAAA,CAAAE,wBAAA,CAAAnB,CAAA,EAAAG,CAAA,EAAAqB,UAAA,OAAAvB,CAAA,CAAAwB,IAAA,CAAAC,KAAA,CAAAzB,CAAA,EAAAK,CAAA,YAAAL,CAAA;AAAA,SAAA0B,cAAA3B,CAAA,aAAAG,CAAA,MAAAA,CAAA,GAAAyB,SAAA,CAAAC,MAAA,EAAA1B,CAAA,UAAAF,CAAA,WAAA2B,SAAA,CAAAzB,CAAA,IAAAyB,SAAA,CAAAzB,CAAA,QAAAA,CAAA,OAAAiB,OAAA,CAAAH,MAAA,CAAAhB,CAAA,OAAA6B,OAAA,WAAA3B,CAAA,QAAA4B,gBAAA,aAAA/B,CAAA,EAAAG,CAAA,EAAAF,CAAA,CAAAE,CAAA,SAAAc,MAAA,CAAAe,yBAAA,GAAAf,MAAA,CAAAgB,gBAAA,CAAAjC,CAAA,EAAAiB,MAAA,CAAAe,yBAAA,CAAA/B,CAAA,KAAAmB,OAAA,CAAAH,MAAA,CAAAhB,CAAA,GAAA6B,OAAA,WAAA3B,CAAA,IAAAc,MAAA,CAAAC,cAAA,CAAAlB,CAAA,EAAAG,CAAA,EAAAc,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAE,CAAA,iBAAAH,CAAA;AAAA,SAAAkC,WAAAjC,CAAA,EAAAK,CAAA,EAAAN,CAAA,WAAAM,CAAA,OAAA6B,gBAAA,aAAA7B,CAAA,OAAA8B,2BAAA,aAAAnC,CAAA,EAAAoC,yBAAA,KAAAC,OAAA,CAAAC,SAAA,CAAAjC,CAAA,EAAAN,CAAA,YAAAmC,gBAAA,aAAAlC,CAAA,EAAAuC,WAAA,IAAAlC,CAAA,CAAAoB,KAAA,CAAAzB,CAAA,EAAAD,CAAA;AAAA,SAAAqC,0BAAA,cAAApC,CAAA,IAAAwC,OAAA,CAAAC,SAAA,CAAAC,OAAA,CAAA3B,IAAA,CAAAsB,OAAA,CAAAC,SAAA,CAAAE,OAAA,iCAAAxC,CAAA,aAAAoC,yBAAA,YAAAA,0BAAA,aAAApC,CAAA;AAAA,IAE3B2C,IAAI,GAAAC,OAAA,CAAAD,IAAA,0BAAAE,gBAAA;EAAA,SAAAF,KAAA;IAAA,IAAAG,KAAA;IAAA,IAAAC,gBAAA,mBAAAJ,IAAA;IAAA,SAAAK,IAAA,GAAArB,SAAA,CAAAC,MAAA,EAAAqB,IAAA,OAAAC,KAAA,CAAAF,IAAA,GAAAG,IAAA,MAAAA,IAAA,GAAAH,IAAA,EAAAG,IAAA;MAAAF,IAAA,CAAAE,IAAA,IAAAxB,SAAA,CAAAwB,IAAA;IAAA;IAAAL,KAAA,GAAAb,UAAA,OAAAU,IAAA,KAAAS,MAAA,CAAAH,IAAA;IAAA,IAAAnB,gBAAA,aAAAgB,KAAA,4BAOU,UAACO,aAAa,EAAEC,gBAAgB,EAAK;MAC5D,IAAAC,qBAAA,GAOIT,KAAA,CAAKU,KAAK,CANZC,UAAU;QACRC,KAAK,GAAAH,qBAAA,CAALG,KAAK;QAAAC,sBAAA,GAAAJ,qBAAA,CACLK,IAAI;QAAIC,KAAK,GAAAF,sBAAA,CAALE,KAAK;QAAEC,MAAM,GAAAH,sBAAA,CAANG,MAAM;QACrBC,MAAM,GAAAR,qBAAA,CAANQ,MAAM;QACNC,KAAK,GAAAT,qBAAA,CAALS,KAAK;MAGT,IAAMC,kBAAkB,GAAG,IAAAC,oBAAa,EAAAxC,aAAA,CAAAA,aAAA,KACnCsC,KAAK;QACRG,IAAI,EAAEH,KAAK,CAACI;MAAS,EACtB,CAAC,CAAC9C,MAAM,CAAC,UAAC+C,KAAK;QAAA,OAAKhB,aAAa,CAACiB,QAAQ,CAACD,KAAK,CAAC;MAAA,EAAC;MACnD,IAAME,qBAAqB,GAAG,IAAAL,oBAAa,EAAAxC,aAAA,CAAAA,aAAA,KACtCqC,MAAM;QACTI,IAAI,EAAEJ,MAAM,CAACK;MAAS,EACvB,CAAC,CAAC9C,MAAM,CAAC,UAAC+C,KAAK;QAAA,OAAKf,gBAAgB,CAACgB,QAAQ,CAACD,KAAK,CAAC;MAAA,EAAC;MAEtD,IAAMG,cAAc,GACjBP,kBAAkB,CAACrC,MAAM,IACxB6C,IAAI,CAACC,GAAG,CAAAjD,KAAA,CAARgD,IAAI,MAAAE,mBAAA,aAAQV,kBAAkB,EAAC,CAC5BW,QAAQ,CAAC,CAAC,CACVC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAACjD,MAAM,IAChC,CAAC;MACH,IAAMkD,cAAc,GACjBb,kBAAkB,CAACrC,MAAM,IACxB6C,IAAI,CAACM,GAAG,CAAAtD,KAAA,CAARgD,IAAI,MAAAE,mBAAA,aAAQV,kBAAkB,EAAC,CAC5BW,QAAQ,CAAC,CAAC,CACVC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAACjD,MAAM,IAChC,CAAC;MAEH,IAAMoD,cAAc,GAAGP,IAAI,CAACM,GAAG,CAACP,cAAc,EAAEM,cAAc,CAAC,GAAG,CAAC,GAAG,EAAE;MACxE,IAAMG,wBAAwB,GAAGvB,KAAK,CAACwB,CAAC,CAAC,CAAC,CAAC;MAC3C,IAAMC,sBAAsB,GAAGzB,KAAK,CAAC0B,CAAC,CAAC,CAAC,CAAC;MACzC,IAAMC,iBAAiB,GAAG,EAAE;MAC5B,IAAMC,kBAAkB,MAAAlC,MAAA,CAAM6B,wBAAwB,GAAGD,cAAc,OAAA5B,MAAA,CAAI4B,cAAc,OAAA5B,MAAA,CAAIS,KAAK,CAAE;MACpG,IAAM0B,qBAAqB,MAAAnC,MAAA,CAAM+B,sBAAsB,OAAA/B,MAAA,CAAIiC,iBAAiB,OAAAjC,MAAA,CAAIU,MAAM,CAAE;MAExF,IAAM0B,qBAAqB,GACzBzB,MAAM,CAACK,SAAS,GAAG,CAAC,IACpBJ,KAAK,CAACI,SAAS,GAAG,CAAC,IACnBH,kBAAkB,IAClBM,qBAAqB,IACrBN,kBAAkB,CAACrC,MAAM,GAAG,CAAC,IAC7B2C,qBAAqB,CAAC3C,MAAM,GAAG,CAAC,KAC/BqC,kBAAkB,CAACrC,MAAM,KAAKyB,aAAa,CAACzB,MAAM,IAAI2C,qBAAqB,CAAC3C,MAAM,KAAK0B,gBAAgB,CAAC1B,MAAM,CAAC;MAElH,IAAM6D,oBAAoB,GAAGlB,qBAAqB,CAACjD,MAAM,CACvD,UAAC+C,KAAK;QAAA,OAAKA,KAAK,IAAI,CAAC,IAAIY,wBAAwB,GAAGvB,KAAK,CAACwB,CAAC,CAACb,KAAK,CAAC,GAAGW,cAAc;MAAA,CACrF,CAAC;MACD,IAAMU,iBAAiB,GAAGzB,kBAAkB,CAAC3C,MAAM,CACjD,UAAC+C,KAAK;QAAA,OAAKA,KAAK,IAAI,CAAC,IAAIX,KAAK,CAAC0B,CAAC,CAACf,KAAK,CAAC,GAAGc,sBAAsB,GAAGE,iBAAiB;MAAA,CACtF,CAAC;MAED,OAAO;QACLpB,kBAAkB,EAAEyB,iBAAiB;QACrCnB,qBAAqB,EAAEkB,oBAAoB;QAC3CH,kBAAkB,EAAlBA,kBAAkB;QAClBC,qBAAqB,EAArBA,qBAAqB;QACrBC,qBAAqB,EAArBA;MACF,CAAC;IACH,CAAC;IAAA,OAAA1C,KAAA;EAAA;EAAA,IAAA6C,UAAA,aAAAhD,IAAA,EAAAE,gBAAA;EAAA,WAAA+C,aAAA,aAAAjD,IAAA;IAAAkD,GAAA;IAAAxB,KAAA,EAED,SAAAyB,MAAMA,CAAA,EAAG;MAAA,IAAAC,MAAA;MACP,IAAQtC,UAAU,GAAK,IAAI,CAACD,KAAK,CAAzBC,UAAU;MAClB,IACEC,KAAK,GAIHD,UAAU,CAJZC,KAAK;QAAAsC,gBAAA,GAIHvC,UAAU,CAHZG,IAAI;QAAIE,MAAM,GAAAkC,gBAAA,CAANlC,MAAM;QAAED,KAAK,GAAAmC,gBAAA,CAALnC,KAAK;QACrBE,MAAM,GAEJN,UAAU,CAFZM,MAAM;QACNC,KAAK,GACHP,UAAU,CADZO,KAAK;MAEP,IAAMX,aAAa,GAAG,IAAAa,oBAAa,EAACF,KAAK,CAAC;MAC1C,IAAMV,gBAAgB,GAAG,IAAAY,oBAAa,EAACH,MAAM,CAAC;MAC9C,IAAAkC,qBAAA,GAMI,IAAI,CAACC,sBAAsB,CAAC7C,aAAa,EAAEC,gBAAgB,CAAC;QAL9DW,kBAAkB,GAAAgC,qBAAA,CAAlBhC,kBAAkB;QAClBM,qBAAqB,GAAA0B,qBAAA,CAArB1B,qBAAqB;QACrBe,kBAAkB,GAAAW,qBAAA,CAAlBX,kBAAkB;QAClBC,qBAAqB,GAAAU,qBAAA,CAArBV,qBAAqB;QACrBC,qBAAqB,GAAAS,qBAAA,CAArBT,qBAAqB;MAGvB,IAAMW,oBAAoB,GACxBpC,MAAM,CAACK,SAAS,GAAG,CAAC,KAAKL,MAAM,CAACI,IAAI,IAAIH,KAAK,CAACI,SAAS,GAAG,CAAC,KAAKJ,KAAK,CAACG,IAAI,GAAG,SAAS,GAAG,SAAS;MAEpG,oBACE5E,MAAA,YAAA6G,aAAA,CAAA7G,MAAA,YAAA8G,QAAA,qBACE9G,MAAA,YAAA6G,aAAA,CAACzG,EAAE,CAACgD,IAAI;QACN2D,QAAQ,EAAE,SAAVA,QAAQA,CAAGpG,CAAC;UAAA,OAAM6F,MAAI,CAACQ,IAAI,GAAGrG,CAAC;QAAA,CAAE;QACjCsG,MAAM,EAAE9C,KAAK,CAACwB,CAAE;QAChBuB,MAAM,EAAE/C,KAAK,CAAC0B,CAAE;QAChBvB,KAAK,EAAEA,KAAM;QACbC,MAAM,EAAEA,MAAO;QACf4C,MAAM,EAAC,SAAS;QAChBrD,aAAa,EAAEA,aAAc;QAC7BC,gBAAgB,EAAEA;MAAiB,CACpC,CAAC,EACDkC,qBAAqB,iBACpBjG,MAAA,YAAA6G,aAAA,CAAA7G,MAAA,YAAA8G,QAAA,qBACE9G,MAAA,YAAA6G,aAAA,CAACzG,EAAE,CAACgH,QAAQ;QACVjD,KAAK,EAAEA,KAAK,CAAC0B,CAAE;QACfvB,KAAK,EAAEA,KAAM;QACb+C,UAAU,EAAE3C,kBAAmB;QAC/ByC,MAAM,EAAEP,oBAAqB;QAC7BU,eAAe,EAAEvB;MAAmB,CACrC,CAAC,eACF/F,MAAA,YAAA6G,aAAA,CAACzG,EAAE,CAACmH,WAAW;QACbpD,KAAK,EAAEA,KAAK,CAACwB,CAAE;QACfpB,MAAM,EAAEA,MAAO;QACf8C,UAAU,EAAErC,qBAAsB;QAClCmC,MAAM,EAAEP,oBAAqB;QAC7BU,eAAe,EAAEtB;MAAsB,CACxC,CACD,CAEJ,CAAC;IAEP;EAAC;AAAA,EA3HuBwB,iBAAK,CAACC,SAAS;AAAA,IAAAlF,gBAAA,aAA5Ba,IAAI,eACI;EACjBsE,QAAQ,EAAEC,qBAAS,CAACC,IAAI;EACxBC,sBAAsB,EAAEF,qBAAS,CAACC,IAAI;EACtC1D,UAAU,EAAE4D,WAAK,CAACC,cAAc,CAACC;AACnC,CAAC;AAAA,IAAAC,QAAA,GAAA5E,OAAA,cAyHYD,IAAI","ignoreList":[]}
package/lib/index.js ADDED
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.array.iterator.js");
4
+ require("core-js/modules/es.object.define-property.js");
5
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
6
+ require("core-js/modules/es.object.to-string.js");
7
+ require("core-js/modules/es.string.iterator.js");
8
+ require("core-js/modules/es.weak-map.js");
9
+ require("core-js/modules/web.dom-collections.iterator.js");
10
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
11
+ var _typeof = require("@babel/runtime/helpers/typeof");
12
+ Object.defineProperty(exports, "__esModule", {
13
+ value: true
14
+ });
15
+ Object.defineProperty(exports, "Graph", {
16
+ enumerable: true,
17
+ get: function get() {
18
+ return _graph["default"];
19
+ }
20
+ });
21
+ Object.defineProperty(exports, "GraphContainer", {
22
+ enumerable: true,
23
+ get: function get() {
24
+ return _container["default"];
25
+ }
26
+ });
27
+ Object.defineProperty(exports, "GridSetup", {
28
+ enumerable: true,
29
+ get: function get() {
30
+ return _gridSetup["default"];
31
+ }
32
+ });
33
+ Object.defineProperty(exports, "ToolMenu", {
34
+ enumerable: true,
35
+ get: function get() {
36
+ return _toolMenu["default"];
37
+ }
38
+ });
39
+ exports.tools = void 0;
40
+ var _graph = _interopRequireDefault(require("./graph"));
41
+ var _container = _interopRequireDefault(require("./container"));
42
+ var _gridSetup = _interopRequireDefault(require("./grid-setup"));
43
+ var tools = _interopRequireWildcard(require("./tools"));
44
+ exports.tools = tools;
45
+ var _toolMenu = _interopRequireDefault(require("./tool-menu"));
46
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
47
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["_graph","_interopRequireDefault","require","_container","_gridSetup","tools","_interopRequireWildcard","exports","_toolMenu","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor"],"sources":["../src/index.js"],"sourcesContent":["import Graph from './graph';\nimport GraphContainer from './container';\nimport GridSetup from './grid-setup';\nimport * as tools from './tools';\nimport ToolMenu from './tool-menu';\n\nexport { Graph, GraphContainer, GridSetup, ToolMenu, tools };\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,UAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,KAAA,GAAAC,uBAAA,CAAAJ,OAAA;AAAiCK,OAAA,CAAAF,KAAA,GAAAA,KAAA;AACjC,IAAAG,SAAA,GAAAP,sBAAA,CAAAC,OAAA;AAAmC,SAAAI,wBAAAG,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAL,uBAAA,YAAAA,wBAAAG,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,mBAAAT,CAAA,iBAAAA,CAAA,gBAAAU,OAAA,CAAAV,CAAA,0BAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,cAAAM,EAAA,IAAAd,CAAA,gBAAAc,EAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,EAAA,OAAAP,CAAA,IAAAD,CAAA,GAAAW,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAnB,CAAA,EAAAc,EAAA,OAAAP,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAM,EAAA,EAAAP,CAAA,IAAAC,CAAA,CAAAM,EAAA,IAAAd,CAAA,CAAAc,EAAA,WAAAN,CAAA,KAAAR,CAAA,EAAAC,CAAA","ignoreList":[]}
package/lib/labels.js ADDED
@@ -0,0 +1,212 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.symbol.js");
4
+ require("core-js/modules/es.array.filter.js");
5
+ require("core-js/modules/es.array.for-each.js");
6
+ require("core-js/modules/es.object.define-properties.js");
7
+ require("core-js/modules/es.object.define-property.js");
8
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
9
+ require("core-js/modules/es.object.get-own-property-descriptors.js");
10
+ require("core-js/modules/es.object.keys.js");
11
+ require("core-js/modules/es.reflect.construct.js");
12
+ require("core-js/modules/web.dom-collections.for-each.js");
13
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
14
+ Object.defineProperty(exports, "__esModule", {
15
+ value: true
16
+ });
17
+ exports.getTransform = exports["default"] = exports.Labels = exports.LabelType = void 0;
18
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
19
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
20
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
21
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
22
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
23
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
24
+ require("core-js/modules/es.array.concat.js");
25
+ require("core-js/modules/es.array.map.js");
26
+ require("core-js/modules/es.object.to-string.js");
27
+ var _react = _interopRequireDefault(require("react"));
28
+ var _propTypes = _interopRequireDefault(require("prop-types"));
29
+ var _styles = require("@mui/material/styles");
30
+ var _plot = require("@pie-lib/plot");
31
+ var _renderUi = require("@pie-lib/render-ui");
32
+ var _editableHtmlTipTap = _interopRequireDefault(require("@pie-lib/editable-html-tip-tap"));
33
+ var _classnames = _interopRequireDefault(require("classnames"));
34
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
35
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
36
+ function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
37
+ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
38
+ var rotations = {
39
+ left: -90,
40
+ top: 0,
41
+ bottom: 0,
42
+ right: 90
43
+ };
44
+ var getTransform = exports.getTransform = function getTransform(side, width, height) {
45
+ var t = function t(x, y, rotate) {
46
+ return "translate(".concat(x, ", ").concat(y, "), rotate(").concat(rotate, ")");
47
+ };
48
+ if (side === 'left') return t(-20, height / 2, rotations[side]);
49
+ if (side === 'right') return t(width + 30, height / 2, rotations[side]);
50
+ if (side === 'top') return t(width / 2, -20, rotations[side]);
51
+ if (side === 'bottom') return t(width / 2, height + 30, rotations[side]);
52
+ };
53
+ var getY = function getY(side, height) {
54
+ switch (side) {
55
+ case 'left':
56
+ case 'top':
57
+ return -height;
58
+ case 'right':
59
+ return -height - 10;
60
+ default:
61
+ return -height + 10;
62
+ }
63
+ };
64
+ var PREFIX = 'Label';
65
+ var classes = {
66
+ label: "".concat(PREFIX, "-label"),
67
+ axisLabel: "".concat(PREFIX, "-axisLabel"),
68
+ disabledAxisLabel: "".concat(PREFIX, "-disabledAxisLabel"),
69
+ bottomLabel: "".concat(PREFIX, "-bottomLabel")
70
+ };
71
+ var Root = (0, _styles.styled)('div')(function (_ref) {
72
+ var theme = _ref.theme;
73
+ return (0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])({}, "& .".concat(classes.label), {
74
+ fill: _renderUi.color.defaults.SECONDARY
75
+ }), "& .".concat(classes.axisLabel), {
76
+ fontSize: theme.typography.fontSize - 2,
77
+ textAlign: 'center',
78
+ padding: '0 4px'
79
+ }), "& .".concat(classes.disabledAxisLabel), {
80
+ pointerEvents: 'none'
81
+ }), "& .".concat(classes.bottomLabel), {
82
+ marginTop: '44px'
83
+ });
84
+ });
85
+ var RawLabel = /*#__PURE__*/function (_React$Component) {
86
+ function RawLabel() {
87
+ (0, _classCallCheck2["default"])(this, RawLabel);
88
+ return _callSuper(this, RawLabel, arguments);
89
+ }
90
+ (0, _inherits2["default"])(RawLabel, _React$Component);
91
+ return (0, _createClass2["default"])(RawLabel, [{
92
+ key: "render",
93
+ value: function render() {
94
+ var _this$props = this.props,
95
+ disabledLabel = _this$props.disabledLabel,
96
+ placeholder = _this$props.placeholder,
97
+ text = _this$props.text,
98
+ side = _this$props.side,
99
+ graphProps = _this$props.graphProps,
100
+ onChange = _this$props.onChange,
101
+ _this$props$mathMlOpt = _this$props.mathMlOptions,
102
+ mathMlOptions = _this$props$mathMlOpt === void 0 ? {} : _this$props$mathMlOpt;
103
+ var size = graphProps.size,
104
+ domain = graphProps.domain,
105
+ range = graphProps.range;
106
+ var totalHeight = (size.height || 500) + (range.padding || 0) * 2;
107
+ var totalWidth = (size.width || 500) + (domain.padding || 0) * 2;
108
+ var transform = getTransform(side, totalWidth, totalHeight);
109
+ var width = side === 'left' || side === 'right' ? totalHeight : totalWidth;
110
+ var height = 36;
111
+ var y = getY(side, height);
112
+ var finalHeight = side === 'bottom' ? height + 22 : height + 18;
113
+ var activePlugins = ['bold', 'italic', 'underline', 'strikethrough', 'math'];
114
+ return /*#__PURE__*/_react["default"].createElement(Root, null, /*#__PURE__*/_react["default"].createElement("foreignObject", {
115
+ x: -(width / 2),
116
+ y: y,
117
+ width: width,
118
+ height: finalHeight,
119
+ transform: transform,
120
+ textAnchor: "middle"
121
+ }, /*#__PURE__*/_react["default"].createElement(_renderUi.Readable, null, /*#__PURE__*/_react["default"].createElement(_editableHtmlTipTap["default"], {
122
+ className: (0, _classnames["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])({}, classes.bottomLabel, side === 'bottom'), classes.disabledAxisLabel, disabledLabel), classes.axisLabel),
123
+ markup: text || '',
124
+ onChange: onChange,
125
+ placeholder: !disabledLabel && placeholder,
126
+ toolbarOpts: {
127
+ position: side === 'bottom' ? 'top' : 'bottom',
128
+ noPadding: true,
129
+ noBorder: true
130
+ },
131
+ activePlugins: activePlugins,
132
+ mathMlOptions: mathMlOptions
133
+ }))));
134
+ }
135
+ }]);
136
+ }(_react["default"].Component);
137
+ (0, _defineProperty2["default"])(RawLabel, "propTypes", {
138
+ text: _propTypes["default"].string,
139
+ side: _propTypes["default"].string,
140
+ disabledLabel: _propTypes["default"].bool,
141
+ placeholder: _propTypes["default"].string,
142
+ graphProps: _plot.types.GraphPropsType.isRequired,
143
+ onChange: _propTypes["default"].func,
144
+ mathMlOptions: _propTypes["default"].object
145
+ });
146
+ (0, _defineProperty2["default"])(RawLabel, "defaultProps", {
147
+ onChange: function onChange() {}
148
+ });
149
+ var LabelType = exports.LabelType = {
150
+ left: _propTypes["default"].string,
151
+ top: _propTypes["default"].string,
152
+ bottom: _propTypes["default"].string,
153
+ right: _propTypes["default"].string
154
+ };
155
+ var Labels = exports.Labels = /*#__PURE__*/function (_React$Component2) {
156
+ function Labels() {
157
+ var _this;
158
+ (0, _classCallCheck2["default"])(this, Labels);
159
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
160
+ args[_key] = arguments[_key];
161
+ }
162
+ _this = _callSuper(this, Labels, [].concat(args));
163
+ (0, _defineProperty2["default"])(_this, "onChangeLabel", function (newValue, side) {
164
+ var _this$props2 = _this.props,
165
+ value = _this$props2.value,
166
+ onChange = _this$props2.onChange;
167
+ var labels = _objectSpread(_objectSpread({}, value), {}, (0, _defineProperty2["default"])({}, side, newValue));
168
+ onChange(labels);
169
+ });
170
+ return _this;
171
+ }
172
+ (0, _inherits2["default"])(Labels, _React$Component2);
173
+ return (0, _createClass2["default"])(Labels, [{
174
+ key: "render",
175
+ value: function render() {
176
+ var _this2 = this;
177
+ var _this$props3 = this.props,
178
+ disabledLabels = _this$props3.disabledLabels,
179
+ _this$props3$placehol = _this$props3.placeholders,
180
+ placeholders = _this$props3$placehol === void 0 ? {} : _this$props3$placehol,
181
+ _this$props3$value = _this$props3.value,
182
+ value = _this$props3$value === void 0 ? {} : _this$props3$value,
183
+ graphProps = _this$props3.graphProps,
184
+ _this$props3$mathMlOp = _this$props3.mathMlOptions,
185
+ mathMlOptions = _this$props3$mathMlOp === void 0 ? {} : _this$props3$mathMlOp;
186
+ return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, ['left', 'top', 'bottom', 'right'].map(function (side) {
187
+ return /*#__PURE__*/_react["default"].createElement(RawLabel, {
188
+ key: side,
189
+ side: side,
190
+ text: value[side],
191
+ disabledLabel: disabledLabels,
192
+ placeholder: placeholders[side],
193
+ graphProps: graphProps,
194
+ onChange: function onChange(val) {
195
+ return _this2.onChangeLabel(val, side);
196
+ },
197
+ mathMlOptions: mathMlOptions
198
+ });
199
+ }));
200
+ }
201
+ }]);
202
+ }(_react["default"].Component);
203
+ (0, _defineProperty2["default"])(Labels, "propTypes", {
204
+ disabledLabels: _propTypes["default"].bool,
205
+ placeholders: _propTypes["default"].object,
206
+ value: _propTypes["default"].shape(LabelType),
207
+ graphProps: _propTypes["default"].object,
208
+ onChange: _propTypes["default"].func,
209
+ mathMlOptions: _propTypes["default"].object
210
+ });
211
+ var _default = exports["default"] = RawLabel;
212
+ //# sourceMappingURL=labels.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"labels.js","names":["_react","_interopRequireDefault","require","_propTypes","_styles","_plot","_renderUi","_editableHtmlTipTap","_classnames","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","_callSuper","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","Boolean","prototype","valueOf","call","rotations","left","top","bottom","right","getTransform","exports","side","width","height","x","y","rotate","concat","getY","PREFIX","classes","label","axisLabel","disabledAxisLabel","bottomLabel","Root","styled","_ref","theme","fill","color","defaults","SECONDARY","fontSize","typography","textAlign","padding","pointerEvents","marginTop","RawLabel","_React$Component","_classCallCheck2","_inherits2","_createClass2","key","value","render","_this$props","props","disabledLabel","placeholder","text","graphProps","onChange","_this$props$mathMlOpt","mathMlOptions","size","domain","range","totalHeight","totalWidth","transform","finalHeight","activePlugins","createElement","textAnchor","Readable","className","cn","markup","toolbarOpts","position","noPadding","noBorder","React","Component","PropTypes","string","bool","types","GraphPropsType","isRequired","func","object","LabelType","Labels","_React$Component2","_this","_len","args","Array","_key","newValue","_this$props2","labels","_this2","_this$props3","disabledLabels","_this$props3$placehol","placeholders","_this$props3$value","_this$props3$mathMlOp","Fragment","map","val","onChangeLabel","shape","_default"],"sources":["../src/labels.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { styled } from '@mui/material/styles';\nimport { types } from '@pie-lib/plot';\nimport { color, Readable } from '@pie-lib/render-ui';\nimport EditableHtml from '@pie-lib/editable-html-tip-tap';\nimport cn from 'classnames';\n\nconst rotations = {\n left: -90,\n top: 0,\n bottom: 0,\n right: 90,\n};\n\nexport const getTransform = (side, width, height) => {\n const t = (x, y, rotate) => `translate(${x}, ${y}), rotate(${rotate})`;\n\n if (side === 'left') return t(-20, height / 2, rotations[side]);\n if (side === 'right') return t(width + 30, height / 2, rotations[side]);\n if (side === 'top') return t(width / 2, -20, rotations[side]);\n if (side === 'bottom') return t(width / 2, height + 30, rotations[side]);\n};\n\nconst getY = (side, height) => {\n switch (side) {\n case 'left':\n case 'top':\n return -height;\n case 'right':\n return -height - 10;\n default:\n return -height + 10;\n }\n};\n\nconst PREFIX = 'Label';\nconst classes = {\n label: `${PREFIX}-label`,\n axisLabel: `${PREFIX}-axisLabel`,\n disabledAxisLabel: `${PREFIX}-disabledAxisLabel`,\n bottomLabel: `${PREFIX}-bottomLabel`,\n};\n\nconst Root = styled('div')(({ theme }) => ({\n [`& .${classes.label}`]: {\n fill: color.defaults.SECONDARY,\n },\n [`& .${classes.axisLabel}`]: {\n fontSize: theme.typography.fontSize - 2,\n textAlign: 'center',\n padding: '0 4px',\n },\n [`& .${classes.disabledAxisLabel}`]: {\n pointerEvents: 'none',\n },\n [`& .${classes.bottomLabel}`]: {\n marginTop: '44px',\n },\n}));\n\nclass RawLabel extends React.Component {\n static propTypes = {\n text: PropTypes.string,\n side: PropTypes.string,\n disabledLabel: PropTypes.bool,\n placeholder: PropTypes.string,\n graphProps: types.GraphPropsType.isRequired,\n onChange: PropTypes.func,\n mathMlOptions: PropTypes.object,\n };\n\n static defaultProps = {\n onChange: () => {},\n };\n\n render() {\n const { disabledLabel, placeholder, text, side, graphProps, onChange, mathMlOptions = {} } = this.props;\n const { size, domain, range } = graphProps;\n const totalHeight = (size.height || 500) + (range.padding || 0) * 2;\n const totalWidth = (size.width || 500) + (domain.padding || 0) * 2;\n\n const transform = getTransform(side, totalWidth, totalHeight);\n const width = side === 'left' || side === 'right' ? totalHeight : totalWidth;\n const height = 36;\n const y = getY(side, height);\n const finalHeight = side === 'bottom' ? height + 22 : height + 18;\n\n const activePlugins = ['bold', 'italic', 'underline', 'strikethrough', 'math'];\n\n return (\n <Root>\n <foreignObject\n x={-(width / 2)}\n y={y}\n width={width}\n height={finalHeight}\n transform={transform}\n textAnchor=\"middle\"\n >\n <Readable>\n <EditableHtml\n className={cn(\n {\n [classes.bottomLabel]: side === 'bottom',\n [classes.disabledAxisLabel]: disabledLabel,\n },\n classes.axisLabel,\n )}\n markup={text || ''}\n onChange={onChange}\n placeholder={!disabledLabel && placeholder}\n toolbarOpts={{\n position: side === 'bottom' ? 'top' : 'bottom',\n noPadding: true,\n noBorder: true,\n }}\n activePlugins={activePlugins}\n mathMlOptions={mathMlOptions}\n />\n </Readable>\n </foreignObject>\n </Root>\n );\n }\n}\n\nexport const LabelType = {\n left: PropTypes.string,\n top: PropTypes.string,\n bottom: PropTypes.string,\n right: PropTypes.string,\n};\n\nexport class Labels extends React.Component {\n static propTypes = {\n disabledLabels: PropTypes.bool,\n placeholders: PropTypes.object,\n value: PropTypes.shape(LabelType),\n graphProps: PropTypes.object,\n onChange: PropTypes.func,\n mathMlOptions: PropTypes.object,\n };\n\n onChangeLabel = (newValue, side) => {\n const { value, onChange } = this.props;\n const labels = { ...value, [side]: newValue };\n onChange(labels);\n };\n\n render() {\n const { disabledLabels, placeholders = {}, value = {}, graphProps, mathMlOptions = {} } = this.props;\n\n return (\n <>\n {['left', 'top', 'bottom', 'right'].map((side) => (\n <RawLabel\n key={side}\n side={side}\n text={value[side]}\n disabledLabel={disabledLabels}\n placeholder={placeholders[side]}\n graphProps={graphProps}\n onChange={(val) => this.onChangeLabel(val, side)}\n mathMlOptions={mathMlOptions}\n />\n ))}\n </>\n );\n }\n}\n\nexport default RawLabel;\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,175 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.symbol.js");
4
+ require("core-js/modules/es.array.filter.js");
5
+ require("core-js/modules/es.array.for-each.js");
6
+ require("core-js/modules/es.array.iterator.js");
7
+ require("core-js/modules/es.object.define-properties.js");
8
+ require("core-js/modules/es.object.define-property.js");
9
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
10
+ require("core-js/modules/es.object.get-own-property-descriptors.js");
11
+ require("core-js/modules/es.object.keys.js");
12
+ require("core-js/modules/es.object.to-string.js");
13
+ require("core-js/modules/es.string.iterator.js");
14
+ require("core-js/modules/es.weak-map.js");
15
+ require("core-js/modules/web.dom-collections.for-each.js");
16
+ require("core-js/modules/web.dom-collections.iterator.js");
17
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
18
+ var _typeof = require("@babel/runtime/helpers/typeof");
19
+ Object.defineProperty(exports, "__esModule", {
20
+ value: true
21
+ });
22
+ exports.position = exports["default"] = exports.coordinates = exports.MarkLabel = void 0;
23
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
24
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
25
+ require("core-js/modules/es.array.concat.js");
26
+ require("core-js/modules/es.array.includes.js");
27
+ var _react = _interopRequireWildcard(require("react"));
28
+ var _propTypes = _interopRequireDefault(require("prop-types"));
29
+ var _styles = require("@mui/material/styles");
30
+ var _reactInputAutosize = _interopRequireDefault(require("react-input-autosize"));
31
+ var _useDebounce = require("./use-debounce");
32
+ var _plot = require("@pie-lib/plot");
33
+ var _renderUi = require("@pie-lib/render-ui");
34
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
35
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
36
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
37
+ var StyledAutosizeInput = (0, _styles.styled)(_reactInputAutosize["default"], {
38
+ shouldForwardProp: function shouldForwardProp(prop) {
39
+ return !['disabled', 'markDisabled'].includes(prop);
40
+ }
41
+ })(function (_ref2) {
42
+ var theme = _ref2.theme,
43
+ disabled = _ref2.disabled,
44
+ markDisabled = _ref2.markDisabled;
45
+ return {
46
+ '& input': {
47
+ "float": 'right',
48
+ padding: theme.spacing(0.5),
49
+ fontFamily: theme.typography.fontFamily,
50
+ fontSize: theme.typography.fontSize,
51
+ border: "solid 1px ".concat(disabled ? _renderUi.color.defaults.PRIMARY_DARK : markDisabled ? _renderUi.color.disabled() : _renderUi.color.defaults.SECONDARY),
52
+ borderRadius: '3px',
53
+ color: markDisabled ? _renderUi.color.disabled() : _renderUi.color.defaults.PRIMARY_DARK,
54
+ background: disabled || markDisabled ? theme.palette.background.paper : 'transparent'
55
+ }
56
+ };
57
+ });
58
+ var position = exports.position = function position(graphProps, mark, rect) {
59
+ rect = rect || {
60
+ width: 0,
61
+ height: 0
62
+ };
63
+ var scale = graphProps.scale,
64
+ domain = graphProps.domain,
65
+ range = graphProps.range;
66
+ var shift = 10;
67
+ var rightEdge = scale.x(mark.x) + rect.width + shift;
68
+ var bottomEdge = scale.y(mark.y) + rect.height + shift;
69
+ var h = rightEdge >= scale.x(domain.max) ? 'left' : 'right';
70
+ var v = bottomEdge >= scale.y(range.min) ? 'top' : 'bottom';
71
+ return "".concat(v, "-").concat(h);
72
+ };
73
+ var coordinates = exports.coordinates = function coordinates(graphProps, mark, rect, position) {
74
+ var scale = graphProps.scale;
75
+ var shift = 10;
76
+ rect = rect || {
77
+ width: 0,
78
+ height: 0
79
+ };
80
+ switch (position) {
81
+ case 'bottom-right':
82
+ {
83
+ return {
84
+ left: scale.x(mark.x) + shift,
85
+ top: scale.y(mark.y) + shift
86
+ };
87
+ }
88
+ case 'bottom-left':
89
+ {
90
+ return {
91
+ left: scale.x(mark.x) - shift - rect.width,
92
+ top: scale.y(mark.y) + shift
93
+ };
94
+ }
95
+ case 'top-left':
96
+ {
97
+ return {
98
+ left: scale.x(mark.x) - shift - rect.width,
99
+ top: scale.y(mark.y) - shift - rect.height
100
+ };
101
+ }
102
+ case 'top-right':
103
+ {
104
+ return {
105
+ left: scale.x(mark.x) + shift,
106
+ top: scale.y(mark.y) - shift - rect.height
107
+ };
108
+ }
109
+ }
110
+ };
111
+ var MarkLabel = exports.MarkLabel = function MarkLabel(props) {
112
+ var _useState = (0, _react.useState)(null),
113
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
114
+ input = _useState2[0],
115
+ setInput = _useState2[1];
116
+ var _ref = (0, _react.useCallback)(function (node) {
117
+ return setInput(node);
118
+ });
119
+ var mark = props.mark,
120
+ graphProps = props.graphProps,
121
+ disabled = props.disabled,
122
+ externalInputRef = props.inputRef;
123
+ var _useState3 = (0, _react.useState)(mark.label),
124
+ _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
125
+ label = _useState4[0],
126
+ setLabel = _useState4[1];
127
+ var onChange = function onChange(e) {
128
+ return setLabel(e.target.value);
129
+ };
130
+ var debouncedLabel = (0, _useDebounce.useDebounce)(label, 200);
131
+
132
+ // useState only sets the value once, to synch props to state need useEffect
133
+ (0, _react.useEffect)(function () {
134
+ setLabel(mark.label);
135
+ }, [mark.label]);
136
+
137
+ // pick up the change to debouncedLabel and save it
138
+ (0, _react.useEffect)(function () {
139
+ if (typeof debouncedLabel === 'string' && debouncedLabel !== mark.label) {
140
+ props.onChange(debouncedLabel);
141
+ }
142
+ }, [debouncedLabel]);
143
+ var rect = input ? input.getBoundingClientRect() : {
144
+ width: 0,
145
+ height: 0
146
+ };
147
+ var pos = position(graphProps, mark, rect);
148
+ var leftTop = coordinates(graphProps, mark, rect, pos);
149
+ var style = _objectSpread({
150
+ position: 'fixed',
151
+ pointerEvents: 'auto'
152
+ }, leftTop);
153
+ var disabledInput = disabled || mark.disabled;
154
+ return /*#__PURE__*/_react["default"].createElement(StyledAutosizeInput, {
155
+ inputRef: function inputRef(r) {
156
+ _ref(r);
157
+ externalInputRef(r);
158
+ },
159
+ disabled: disabledInput,
160
+ markDisabled: mark.disabled,
161
+ value: label,
162
+ style: style,
163
+ onChange: onChange
164
+ });
165
+ };
166
+ MarkLabel.propTypes = {
167
+ disabled: _propTypes["default"].bool,
168
+ onChange: _propTypes["default"].func,
169
+ graphProps: _plot.types.GraphPropsType,
170
+ inputRef: _propTypes["default"].func,
171
+ mark: _propTypes["default"].object,
172
+ theme: _propTypes["default"].object
173
+ };
174
+ var _default = exports["default"] = MarkLabel;
175
+ //# sourceMappingURL=mark-label.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mark-label.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_styles","_reactInputAutosize","_useDebounce","_plot","_renderUi","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","StyledAutosizeInput","styled","AutosizeInput","shouldForwardProp","prop","includes","_ref2","theme","disabled","markDisabled","padding","spacing","fontFamily","typography","fontSize","border","concat","color","defaults","PRIMARY_DARK","SECONDARY","borderRadius","background","palette","paper","position","exports","graphProps","mark","rect","width","height","scale","domain","range","shift","rightEdge","x","bottomEdge","y","h","max","v","min","coordinates","left","top","MarkLabel","props","_useState","useState","_useState2","_slicedToArray2","input","setInput","_ref","useCallback","node","externalInputRef","inputRef","_useState3","label","_useState4","setLabel","onChange","target","value","debouncedLabel","useDebounce","useEffect","getBoundingClientRect","pos","leftTop","style","pointerEvents","disabledInput","createElement","propTypes","PropTypes","bool","func","types","GraphPropsType","object","_default"],"sources":["../src/mark-label.jsx"],"sourcesContent":["import React, { useState, useCallback, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport { styled } from '@mui/material/styles';\nimport AutosizeInput from 'react-input-autosize';\nimport { useDebounce } from './use-debounce';\nimport { types } from '@pie-lib/plot';\nimport { color } from '@pie-lib/render-ui';\n\nconst StyledAutosizeInput = styled(AutosizeInput, {\n shouldForwardProp: (prop) => !['disabled', 'markDisabled'].includes(prop),\n})(({ theme, disabled, markDisabled }) => ({\n '& input': {\n float: 'right',\n padding: theme.spacing(0.5),\n fontFamily: theme.typography.fontFamily,\n fontSize: theme.typography.fontSize,\n border: `solid 1px ${disabled ? color.defaults.PRIMARY_DARK : markDisabled ? color.disabled() : color.defaults.SECONDARY}`,\n borderRadius: '3px',\n color: markDisabled ? color.disabled() : color.defaults.PRIMARY_DARK,\n background: (disabled || markDisabled) ? theme.palette.background.paper : 'transparent',\n },\n}));\n\nexport const position = (graphProps, mark, rect) => {\n rect = rect || { width: 0, height: 0 };\n const { scale, domain, range } = graphProps;\n const shift = 10;\n\n const rightEdge = scale.x(mark.x) + rect.width + shift;\n const bottomEdge = scale.y(mark.y) + rect.height + shift;\n\n const h = rightEdge >= scale.x(domain.max) ? 'left' : 'right';\n const v = bottomEdge >= scale.y(range.min) ? 'top' : 'bottom';\n\n return `${v}-${h}`;\n};\n\nexport const coordinates = (graphProps, mark, rect, position) => {\n const { scale } = graphProps;\n const shift = 10;\n rect = rect || { width: 0, height: 0 };\n\n switch (position) {\n case 'bottom-right': {\n return { left: scale.x(mark.x) + shift, top: scale.y(mark.y) + shift };\n }\n case 'bottom-left': {\n return { left: scale.x(mark.x) - shift - rect.width, top: scale.y(mark.y) + shift };\n }\n case 'top-left': {\n return {\n left: scale.x(mark.x) - shift - rect.width,\n top: scale.y(mark.y) - shift - rect.height,\n };\n }\n case 'top-right': {\n return {\n left: scale.x(mark.x) + shift,\n top: scale.y(mark.y) - shift - rect.height,\n };\n }\n }\n};\n\nexport const MarkLabel = (props) => {\n const [input, setInput] = useState(null);\n const _ref = useCallback((node) => setInput(node));\n\n const { mark, graphProps, disabled, inputRef: externalInputRef } = props;\n\n const [label, setLabel] = useState(mark.label);\n\n const onChange = (e) => setLabel(e.target.value);\n\n const debouncedLabel = useDebounce(label, 200);\n\n // useState only sets the value once, to synch props to state need useEffect\n useEffect(() => {\n setLabel(mark.label);\n }, [mark.label]);\n\n // pick up the change to debouncedLabel and save it\n useEffect(() => {\n if (typeof debouncedLabel === 'string' && debouncedLabel !== mark.label) {\n props.onChange(debouncedLabel);\n }\n }, [debouncedLabel]);\n\n const rect = input ? input.getBoundingClientRect() : { width: 0, height: 0 };\n const pos = position(graphProps, mark, rect);\n const leftTop = coordinates(graphProps, mark, rect, pos);\n\n const style = {\n position: 'fixed',\n pointerEvents: 'auto',\n ...leftTop,\n };\n\n const disabledInput = disabled || mark.disabled;\n\n return (\n <StyledAutosizeInput\n inputRef={(r) => {\n _ref(r);\n externalInputRef(r);\n }}\n disabled={disabledInput}\n markDisabled={mark.disabled}\n value={label}\n style={style}\n onChange={onChange}\n />\n );\n};\n\nMarkLabel.propTypes = {\n disabled: PropTypes.bool,\n onChange: PropTypes.func,\n graphProps: types.GraphPropsType,\n inputRef: PropTypes.func,\n mark: PropTypes.object,\n theme: PropTypes.object,\n};\n\nexport default MarkLabel;\n"],"mappings":"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","ignoreList":[]}