@pie-lib/graphing-module 1.7.0 → 1.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/module/index.js CHANGED
@@ -1,7 +1,7 @@
1
- import {_dll_prop_types, _dll_react, _dll_material_ui__core_styles, _dll_classnames, _dll_pie_lib__render_ui, _dll_react_dom, _dll_lodash, _dll_debug, _dll_material_ui__core, _dll_material_ui__core_styles_color_manipulator, _dll_material_ui__icons} from "../../shared-module@^1.5.7/module/index.js";
2
- import {_dll_pie_lib__editable_html} from "../../editable-html-module@^3.1.0/module/index.js";
3
- import {_dll_pie_lib__drag} from "../../drag-module@^1.0.59/module/index.js";
4
- import {_dll_pie_lib__config_ui} from "../../config-module@^2.1.7/module/index.js";
1
+ import {_dll_prop_types, _dll_react, _dll_material_ui__core_styles, _dll_pie_lib__render_ui, _dll_classnames, _dll_react_dom, _dll_lodash, _dll_debug, _dll_material_ui__core, _dll_material_ui__core_styles_color_manipulator, _dll_material_ui__icons} from "../../shared-module@^1.5.8/module/index.js";
2
+ import {_dll_pie_lib__editable_html} from "../../editable-html-module@^3.1.1/module/index.js";
3
+ import {_dll_pie_lib__drag} from "../../drag-module@^1.0.60/module/index.js";
4
+ import {_dll_pie_lib__config_ui} from "../../config-module@^2.1.8/module/index.js";
5
5
  const PropTypes$D = _dll_prop_types;
6
6
  const BaseDomainRangeType = {
7
7
  min: PropTypes$D.number.isRequired,
@@ -823,6 +823,7 @@ const React$E = _dll_react;
823
823
  const {withStyles: withStyles$l} = _dll_material_ui__core_styles;
824
824
  const PropTypes$C = _dll_prop_types;
825
825
  const {color: color$i} = _dll_pie_lib__render_ui;
826
+ const {Readable: Readable$2} = _dll_pie_lib__render_ui;
826
827
  const cn$3 = _dll_classnames;
827
828
  const EditableHtml$1 = _dll_pie_lib__editable_html;
828
829
  const _jsxFileName$w = "/home/circleci/repo/packages/plot/src/root.jsx";
@@ -835,10 +836,14 @@ class Root$1 extends React$E.Component {
835
836
  this.propTypes = {
836
837
  title: PropTypes$C.string,
837
838
  children: ChildrenType,
839
+ disabledTitle: PropTypes$C.bool,
838
840
  graphProps: GraphPropsType.isRequired,
841
+ onChangeTitle: PropTypes$C.func,
839
842
  onMouseMove: PropTypes$C.func,
840
843
  classes: PropTypes$C.object.isRequired,
844
+ showLabels: PropTypes$C.bool,
841
845
  showTitle: PropTypes$C.bool,
846
+ showPixelGuides: PropTypes$C.bool,
842
847
  rootRef: PropTypes$C.func
843
848
  };
844
849
  }
@@ -868,21 +873,58 @@ class Root$1 extends React$E.Component {
868
873
  g.on('mousemove', null);
869
874
  }
870
875
  render() {
871
- const {disabledTitle, graphProps, children, classes, onChangeTitle, showTitle, title, rootRef} = this.props;
876
+ const {disabledTitle, graphProps, children, classes, onChangeTitle, showLabels, showPixelGuides, showTitle, title, rootRef} = this.props;
872
877
  const {size: {width = 500, height = 500}, domain, range} = graphProps;
873
- const topPadding = 50;
874
- const leftPadding = topPadding + 10;
875
- const finalWidth = width + leftPadding * 2 + (domain.padding || 0) * 2;
876
- const finalHeight = height + topPadding * 2 + (range.padding || 0) * 2;
877
- const activeTitlePlugins = ['bold', 'italic', 'underline', 'strikethrough'];
878
+ const padding = showLabels ? 70 : 40;
879
+ const extraPadding = showLabels ? 16 : 40;
880
+ const finalWidth = width + padding * 2 + (domain.padding || 0) * 2 + extraPadding;
881
+ const finalHeight = height + padding * 2 + (range.padding || 0) * 2;
882
+ const activeTitlePlugins = ['bold', 'italic', 'underline', 'strikethrough', 'math'];
883
+ const nbOfVerticalLines = parseInt(width / 100);
884
+ const nbOfHorizontalLines = parseInt(height / 100);
885
+ const sideGridlinesPadding = parseInt(height % 100);
878
886
  return React$E.createElement('div', {
879
887
  className: classes.root,
880
888
  __self: this,
881
889
  __source: {
882
890
  fileName: _jsxFileName$w,
883
- lineNumber: 82
891
+ lineNumber: 94
892
+ }
893
+ }, showPixelGuides && React$E.createElement('div', {
894
+ className: classes.topPixelGuides,
895
+ __self: this,
896
+ __source: {
897
+ fileName: _jsxFileName$w,
898
+ lineNumber: 96
899
+ }
900
+ }, [...Array(nbOfVerticalLines + 1).keys()].map(value => React$E.createElement(Readable$2, {
901
+ false: true,
902
+ key: `top-guide-${value}`,
903
+ __self: this,
904
+ __source: {
905
+ fileName: _jsxFileName$w,
906
+ lineNumber: 98
907
+ }
908
+ }, React$E.createElement('div', {
909
+ className: classes.topPixelIndicator,
910
+ __self: this,
911
+ __source: {
912
+ fileName: _jsxFileName$w,
913
+ lineNumber: 99
914
+ }
915
+ }, React$E.createElement('div', {
916
+ __self: this,
917
+ __source: {
918
+ fileName: _jsxFileName$w,
919
+ lineNumber: 100
920
+ }
921
+ }, value * 100, "px"), React$E.createElement('div', {
922
+ __self: this,
923
+ __source: {
924
+ fileName: _jsxFileName$w,
925
+ lineNumber: 101
884
926
  }
885
- }, showTitle && React$E.createElement(EditableHtml$1, {
927
+ }, "|"))))), showTitle && React$E.createElement(EditableHtml$1, {
886
928
  className: cn$3({
887
929
  [classes.disabledTitle]: disabledTitle
888
930
  }, classes.graphTitle),
@@ -897,16 +939,23 @@ class Root$1 extends React$E.Component {
897
939
  __self: this,
898
940
  __source: {
899
941
  fileName: _jsxFileName$w,
900
- lineNumber: 84
942
+ lineNumber: 108
901
943
  }
902
- }), React$E.createElement('svg', {
944
+ }), React$E.createElement('div', {
945
+ className: classes.wrapper,
946
+ __self: this,
947
+ __source: {
948
+ fileName: _jsxFileName$w,
949
+ lineNumber: 123
950
+ }
951
+ }, React$E.createElement('svg', {
903
952
  width: finalWidth,
904
953
  height: finalHeight,
905
954
  className: classes.svg,
906
955
  __self: this,
907
956
  __source: {
908
957
  fileName: _jsxFileName$w,
909
- lineNumber: 99
958
+ lineNumber: 124
910
959
  }
911
960
  }, React$E.createElement('g', {
912
961
  ref: r => {
@@ -916,13 +965,38 @@ class Root$1 extends React$E.Component {
916
965
  }
917
966
  },
918
967
  className: classes.graphBox,
919
- transform: `translate(${leftPadding}, ${topPadding})`,
968
+ transform: `translate(${padding}, ${padding})`,
920
969
  __self: this,
921
970
  __source: {
922
971
  fileName: _jsxFileName$w,
923
- lineNumber: 100
972
+ lineNumber: 125
924
973
  }
925
- }, children)));
974
+ }, children)), showPixelGuides && React$E.createElement('div', {
975
+ className: classes.sidePixelGuides,
976
+ style: {
977
+ paddingTop: sideGridlinesPadding
978
+ },
979
+ __self: this,
980
+ __source: {
981
+ fileName: _jsxFileName$w,
982
+ lineNumber: 139
983
+ }
984
+ }, [...Array(nbOfHorizontalLines + 1).keys()].reverse().map(value => React$E.createElement(Readable$2, {
985
+ false: true,
986
+ key: `top-guide-${value}`,
987
+ __self: this,
988
+ __source: {
989
+ fileName: _jsxFileName$w,
990
+ lineNumber: 141
991
+ }
992
+ }, React$E.createElement('div', {
993
+ className: classes.sidePixelIndicator,
994
+ __self: this,
995
+ __source: {
996
+ fileName: _jsxFileName$w,
997
+ lineNumber: 142
998
+ }
999
+ }, "━ ", value * 100, "px"))))));
926
1000
  }
927
1001
  }
928
1002
  Root$1.__initStatic();
@@ -932,6 +1006,9 @@ const styles$9 = theme => ({
932
1006
  color: color$i.text(),
933
1007
  backgroundColor: color$i.background()
934
1008
  },
1009
+ wrapper: {
1010
+ display: 'flex'
1011
+ },
935
1012
  svg: {},
936
1013
  graphBox: {
937
1014
  cursor: 'pointer',
@@ -940,11 +1017,42 @@ const styles$9 = theme => ({
940
1017
  graphTitle: {
941
1018
  color: color$i.text(),
942
1019
  fontSize: theme.typography.fontSize + 2,
943
- padding: '8px 50px 0',
1020
+ padding: '12px 4px 0',
944
1021
  textAlign: 'center'
945
1022
  },
946
1023
  disabledTitle: {
947
1024
  pointerEvents: 'none'
1025
+ },
1026
+ topPixelGuides: {
1027
+ display: 'flex',
1028
+ paddingTop: '6px',
1029
+ marginLeft: '10px'
1030
+ },
1031
+ topPixelIndicator: {
1032
+ color: color$i.primaryLight(),
1033
+ display: 'flex',
1034
+ flexDirection: 'column',
1035
+ alignItems: 'center',
1036
+ width: '100px',
1037
+ pointerEvents: 'none',
1038
+ userSelect: 'none'
1039
+ },
1040
+ sidePixelGuides: {
1041
+ width: '70px',
1042
+ display: 'flex',
1043
+ flexDirection: 'column',
1044
+ marginTop: '40px',
1045
+ marginRight: '6px'
1046
+ },
1047
+ sidePixelIndicator: {
1048
+ color: color$i.primaryLight(),
1049
+ textAlign: 'right',
1050
+ height: '20px',
1051
+ pointerEvents: 'none',
1052
+ userSelect: 'none',
1053
+ '&:not(:last-child)': {
1054
+ marginBottom: '80px'
1055
+ }
948
1056
  }
949
1057
  });
950
1058
  var Root$2 = withStyles$l(styles$9)(Root$1);
@@ -5631,13 +5739,13 @@ const getTransform = (side, width, height) => {
5631
5739
  const getY = (side, height) => {
5632
5740
  switch (side) {
5633
5741
  case 'left':
5634
- return -height + 6;
5742
+ return -height;
5635
5743
  case 'top':
5636
- return -height + 6;
5637
- case 'right':
5638
5744
  return -height;
5745
+ case 'right':
5746
+ return -height - 10;
5639
5747
  default:
5640
- return -height - 15;
5748
+ return -height + 10;
5641
5749
  }
5642
5750
  };
5643
5751
  class RawLabel extends React$C.Component {
@@ -5647,11 +5755,12 @@ class RawLabel extends React$C.Component {
5647
5755
  side: PropTypes$A.string,
5648
5756
  classes: PropTypes$A.object,
5649
5757
  disabledLabel: PropTypes$A.bool,
5758
+ placeholder: PropTypes$A.string,
5650
5759
  graphProps: GraphPropsType.isRequired
5651
5760
  };
5652
5761
  }
5653
5762
  render() {
5654
- const {disabledLabel, text, side, graphProps, classes, onChange} = this.props;
5763
+ const {disabledLabel, placeholder, text, side, graphProps, classes, onChange} = this.props;
5655
5764
  const {size, domain, range} = graphProps;
5656
5765
  const totalHeight = (size.height || 500) + (range.padding || 0) * 2;
5657
5766
  const totalWidth = (size.width || 500) + (domain.padding || 0) * 2;
@@ -5659,25 +5768,26 @@ class RawLabel extends React$C.Component {
5659
5768
  const width = side === 'left' || side === 'right' ? totalHeight : totalWidth;
5660
5769
  const height = 36;
5661
5770
  const y = getY(side, height);
5662
- const activePlugins = ['bold', 'italic', 'underline', 'strikethrough'];
5771
+ const finalHeight = side === 'bottom' ? height + 22 : height + 18;
5772
+ const activePlugins = ['bold', 'italic', 'underline', 'strikethrough', 'math'];
5663
5773
  return React$C.createElement('foreignObject', {
5664
5774
  x: -(width / 2),
5665
5775
  y: y,
5666
5776
  width: width,
5667
- height: height * 2,
5777
+ height: finalHeight,
5668
5778
  transform: transform,
5669
5779
  textAnchor: "middle",
5670
5780
  __self: this,
5671
5781
  __source: {
5672
5782
  fileName: _jsxFileName$u,
5673
- lineNumber: 75
5783
+ lineNumber: 78
5674
5784
  }
5675
5785
  }, React$C.createElement(Readable$1, {
5676
5786
  false: true,
5677
5787
  __self: this,
5678
5788
  __source: {
5679
5789
  fileName: _jsxFileName$u,
5680
- lineNumber: 83
5790
+ lineNumber: 86
5681
5791
  }
5682
5792
  }, React$C.createElement(EditableHtml, {
5683
5793
  className: cn$2({
@@ -5686,7 +5796,7 @@ class RawLabel extends React$C.Component {
5686
5796
  }, classes.axisLabel),
5687
5797
  markup: text || '',
5688
5798
  onChange: onChange,
5689
- placeholder: !disabledLabel && `Click here to add a ${side} label`,
5799
+ placeholder: !disabledLabel && placeholder,
5690
5800
  toolbarOpts: {
5691
5801
  position: side === 'bottom' ? 'top' : 'bottom',
5692
5802
  noBorder: true
@@ -5695,7 +5805,7 @@ class RawLabel extends React$C.Component {
5695
5805
  __self: this,
5696
5806
  __source: {
5697
5807
  fileName: _jsxFileName$u,
5698
- lineNumber: 84
5808
+ lineNumber: 87
5699
5809
  }
5700
5810
  })));
5701
5811
  }
@@ -5707,7 +5817,8 @@ const Label = withStyles$k(theme => ({
5707
5817
  },
5708
5818
  axisLabel: {
5709
5819
  fontSize: theme.typography.fontSize - 2,
5710
- textAlign: 'center'
5820
+ textAlign: 'center',
5821
+ padding: '0 4px'
5711
5822
  },
5712
5823
  disabledAxisLabel: {
5713
5824
  pointerEvents: 'none'
@@ -5732,6 +5843,7 @@ class Labels extends React$C.Component {
5732
5843
  classes: PropTypes$A.object,
5733
5844
  className: PropTypes$A.string,
5734
5845
  disabledLabels: PropTypes$A.bool,
5846
+ placeholders: PropTypes$A.object,
5735
5847
  value: PropTypes$A.shape(LabelType),
5736
5848
  graphProps: PropTypes$A.object
5737
5849
  };
@@ -5750,60 +5862,64 @@ class Labels extends React$C.Component {
5750
5862
  };
5751
5863
  }
5752
5864
  render() {
5753
- const {disabledLabels, value = {}, graphProps} = this.props;
5865
+ const {disabledLabels, placeholders = {}, value = {}, graphProps} = this.props;
5754
5866
  return React$C.createElement(React$C.Fragment, {
5755
5867
  __self: this,
5756
5868
  __source: {
5757
5869
  fileName: _jsxFileName$u,
5758
- lineNumber: 155
5870
+ lineNumber: 160
5759
5871
  }
5760
5872
  }, React$C.createElement(Label, {
5761
5873
  key: "left",
5762
5874
  side: "left",
5763
5875
  text: value.left,
5764
5876
  disabledLabel: disabledLabels,
5877
+ placeholder: placeholders.left,
5765
5878
  graphProps: graphProps,
5766
5879
  onChange: value => this.onChangeLabel(value, 'left'),
5767
5880
  __self: this,
5768
5881
  __source: {
5769
5882
  fileName: _jsxFileName$u,
5770
- lineNumber: 156
5883
+ lineNumber: 161
5771
5884
  }
5772
5885
  }), React$C.createElement(Label, {
5773
5886
  key: "top",
5774
5887
  side: "top",
5775
5888
  text: value.top,
5776
5889
  disabledLabel: disabledLabels,
5890
+ placeholder: placeholders.top,
5777
5891
  graphProps: graphProps,
5778
5892
  onChange: value => this.onChangeLabel(value, 'top'),
5779
5893
  __self: this,
5780
5894
  __source: {
5781
5895
  fileName: _jsxFileName$u,
5782
- lineNumber: 164
5896
+ lineNumber: 170
5783
5897
  }
5784
5898
  }), React$C.createElement(Label, {
5785
5899
  key: "bottom",
5786
5900
  side: "bottom",
5787
5901
  text: value.bottom,
5788
5902
  disabledLabel: disabledLabels,
5903
+ placeholder: placeholders.bottom,
5789
5904
  graphProps: graphProps,
5790
5905
  onChange: value => this.onChangeLabel(value, 'bottom'),
5791
5906
  __self: this,
5792
5907
  __source: {
5793
5908
  fileName: _jsxFileName$u,
5794
- lineNumber: 172
5909
+ lineNumber: 179
5795
5910
  }
5796
5911
  }), React$C.createElement(Label, {
5797
5912
  key: "right",
5798
5913
  side: "right",
5799
5914
  text: value.right,
5800
5915
  disabledLabel: disabledLabels,
5916
+ placeholder: placeholders.right,
5801
5917
  graphProps: graphProps,
5802
5918
  onChange: value => this.onChangeLabel(value, 'right'),
5803
5919
  __self: this,
5804
5920
  __source: {
5805
5921
  fileName: _jsxFileName$u,
5806
- lineNumber: 180
5922
+ lineNumber: 188
5807
5923
  }
5808
5924
  }));
5809
5925
  }
@@ -8666,7 +8782,7 @@ class RawXAxis extends React$w.Component {
8666
8782
  };
8667
8783
  const necessaryRows = countWords(domain.axisLabel);
8668
8784
  const longestWord = findLongestWord(domain.axisLabel);
8669
- const necessaryWidth = amountToIncreaseWidth(longestWord);
8785
+ const necessaryWidth = amountToIncreaseWidth(longestWord) + 2;
8670
8786
  return React$w.createElement(React$w.Fragment, {
8671
8787
  __self: this,
8672
8788
  __source: {
@@ -8712,8 +8828,8 @@ class RawXAxis extends React$w.Component {
8712
8828
  lineNumber: 146
8713
8829
  }
8714
8830
  }), domain.axisLabel && React$w.createElement('foreignObject', {
8715
- x: size.width + 15,
8716
- y: scale.y(0) - 10,
8831
+ x: size.width + 17,
8832
+ y: scale.y(0) - 9,
8717
8833
  width: necessaryWidth,
8718
8834
  height: 20 * necessaryRows,
8719
8835
  __self: this,
@@ -8814,7 +8930,7 @@ class RawYAxis extends React$w.Component {
8814
8930
  }
8815
8931
  }), range.axisLabel && React$w.createElement('foreignObject', {
8816
8932
  x: scale.x(0) - necessaryWidth / 2,
8817
- y: -30,
8933
+ y: -33,
8818
8934
  width: necessaryWidth,
8819
8935
  height: "20",
8820
8936
  __self: this,
@@ -9319,6 +9435,7 @@ const graphPropTypes = {
9319
9435
  height: PropTypes$q.number.isRequired
9320
9436
  }),
9321
9437
  showLabels: PropTypes$q.bool,
9438
+ showPixelGuides: PropTypes$q.bool,
9322
9439
  showTitle: PropTypes$q.bool,
9323
9440
  title: PropTypes$q.string,
9324
9441
  tools: PropTypes$q.array
@@ -9442,7 +9559,7 @@ class Graph extends React$s.Component {
9442
9559
  };
9443
9560
  }
9444
9561
  render() {
9445
- const {axesSettings, currentTool, coordinatesOnHover, size, disabledLabels, disabledTitle, domain, backgroundMarks, range, title, labels, labelModeEnabled, showLabels, showTitle, onChangeLabels, onChangeTitle} = this.props;
9562
+ const {axesSettings, currentTool, coordinatesOnHover, size, disabledLabels, disabledTitle, domain, backgroundMarks, range, title, labels, labelModeEnabled, labelsPlaceholders, showLabels, showPixelGuides, showTitle, titlePlaceholder, onChangeLabels, onChangeTitle} = this.props;
9446
9563
  let {marks} = this.props;
9447
9564
  const graphProps = create(domain, range, size, () => this.rootNode);
9448
9565
  const maskSize = getMaskSize(size);
@@ -9457,28 +9574,31 @@ class Graph extends React$s.Component {
9457
9574
  return React$s.createElement(Root$2, {
9458
9575
  rootRef: r => this.rootNode = r,
9459
9576
  disabledTitle: disabledTitle,
9577
+ showPixelGuides: showPixelGuides,
9578
+ showLabels: showLabels,
9460
9579
  showTitle: showTitle,
9461
9580
  title: title,
9581
+ titlePlaceholder: titlePlaceholder,
9462
9582
  onChangeTitle: onChangeTitle,
9463
9583
  ...common,
9464
9584
  __self: this,
9465
9585
  __source: {
9466
9586
  fileName: _jsxFileName$p,
9467
- lineNumber: 184
9587
+ lineNumber: 188
9468
9588
  }
9469
9589
  }, React$s.createElement('g', {
9470
9590
  transform: `translate(${domain.padding}, ${range.padding})`,
9471
9591
  __self: this,
9472
9592
  __source: {
9473
9593
  fileName: _jsxFileName$p,
9474
- lineNumber: 192
9594
+ lineNumber: 199
9475
9595
  }
9476
9596
  }, React$s.createElement(Grid$1, {
9477
9597
  ...common,
9478
9598
  __self: this,
9479
9599
  __source: {
9480
9600
  fileName: _jsxFileName$p,
9481
- lineNumber: 193
9601
+ lineNumber: 200
9482
9602
  }
9483
9603
  }), React$s.createElement(Axes, {
9484
9604
  ...axesSettings,
@@ -9486,7 +9606,7 @@ class Graph extends React$s.Component {
9486
9606
  __self: this,
9487
9607
  __source: {
9488
9608
  fileName: _jsxFileName$p,
9489
- lineNumber: 194
9609
+ lineNumber: 201
9490
9610
  }
9491
9611
  }), React$s.createElement(Bg, {
9492
9612
  ...size,
@@ -9495,14 +9615,14 @@ class Graph extends React$s.Component {
9495
9615
  __self: this,
9496
9616
  __source: {
9497
9617
  fileName: _jsxFileName$p,
9498
- lineNumber: 195
9618
+ lineNumber: 202
9499
9619
  }
9500
9620
  }), React$s.createElement('mask', {
9501
9621
  id: "myMask",
9502
9622
  __self: this,
9503
9623
  __source: {
9504
9624
  fileName: _jsxFileName$p,
9505
- lineNumber: 196
9625
+ lineNumber: 203
9506
9626
  }
9507
9627
  }, React$s.createElement('rect', {
9508
9628
  ...maskSize,
@@ -9510,7 +9630,7 @@ class Graph extends React$s.Component {
9510
9630
  __self: this,
9511
9631
  __source: {
9512
9632
  fileName: _jsxFileName$p,
9513
- lineNumber: 197
9633
+ lineNumber: 204
9514
9634
  }
9515
9635
  }), " "), React$s.createElement('g', {
9516
9636
  id: "marks",
@@ -9518,7 +9638,7 @@ class Graph extends React$s.Component {
9518
9638
  __self: this,
9519
9639
  __source: {
9520
9640
  fileName: _jsxFileName$p,
9521
- lineNumber: 200
9641
+ lineNumber: 207
9522
9642
  }
9523
9643
  }, (backgroundMarks || []).map((m, index) => {
9524
9644
  const Component = this.getComponent(m);
@@ -9535,7 +9655,7 @@ class Graph extends React$s.Component {
9535
9655
  __self: this,
9536
9656
  __source: {
9537
9657
  fileName: _jsxFileName$p,
9538
- lineNumber: 206
9658
+ lineNumber: 213
9539
9659
  }
9540
9660
  });
9541
9661
  }), marks.map((m, index) => {
@@ -9556,7 +9676,7 @@ class Graph extends React$s.Component {
9556
9676
  __self: this,
9557
9677
  __source: {
9558
9678
  fileName: _jsxFileName$p,
9559
- lineNumber: 220
9679
+ lineNumber: 227
9560
9680
  }
9561
9681
  });
9562
9682
  }), React$s.createElement('foreignObject', {
@@ -9570,17 +9690,18 @@ class Graph extends React$s.Component {
9570
9690
  __self: this,
9571
9691
  __source: {
9572
9692
  fileName: _jsxFileName$p,
9573
- lineNumber: 236
9693
+ lineNumber: 243
9574
9694
  }
9575
9695
  }))), showLabels && React$s.createElement(Labels, {
9576
9696
  disabledLabels: disabledLabels,
9697
+ placeholders: labelsPlaceholders,
9577
9698
  value: labels,
9578
9699
  onChange: onChangeLabels,
9579
9700
  ...common,
9580
9701
  __self: this,
9581
9702
  __source: {
9582
9703
  fileName: _jsxFileName$p,
9583
- lineNumber: 246
9704
+ lineNumber: 253
9584
9705
  }
9585
9706
  }));
9586
9707
  }
@@ -14864,7 +14985,7 @@ class GraphWithControls extends React$2.Component {
14864
14985
  }
14865
14986
  render() {
14866
14987
  let {currentTool, labelModeEnabled} = this.state;
14867
- const {axesSettings, classes, className, coordinatesOnHover, collapsibleToolbar, collapsibleToolbarTitle, disabled, disabledLabels, disabledTitle, domain, draggableTools, labels, onChangeLabels, onChangeMarks, onChangeTitle, onChangeTools, onUndo, onRedo, onReset, range, size, showLabels, showTitle, title} = this.props;
14988
+ const {axesSettings, classes, className, coordinatesOnHover, collapsibleToolbar, collapsibleToolbarTitle, disabled, disabledLabels, disabledTitle, domain, draggableTools, labels, labelsPlaceholders, onChangeLabels, onChangeMarks, onChangeTitle, onChangeTools, onUndo, onRedo, onReset, range, size, showLabels, showPixelGuides, showTitle, title, titlePlaceholder} = this.props;
14868
14989
  let {backgroundMarks, marks, toolbarTools} = this.props;
14869
14990
  toolbarTools = uniq(toolbarTools || []).filter(tT => !!isString(tT)) || [];
14870
14991
  backgroundMarks = filterByValidToolTypes(backgroundMarks || []);
@@ -14877,7 +14998,7 @@ class GraphWithControls extends React$2.Component {
14877
14998
  __self: this,
14878
14999
  __source: {
14879
15000
  fileName: _jsxFileName$2,
14880
- lineNumber: 153
15001
+ lineNumber: 156
14881
15002
  }
14882
15003
  }, React$2.createElement(ToolMenu, {
14883
15004
  currentToolType: currentTool && currentTool.type,
@@ -14891,7 +15012,7 @@ class GraphWithControls extends React$2.Component {
14891
15012
  __self: this,
14892
15013
  __source: {
14893
15014
  fileName: _jsxFileName$2,
14894
- lineNumber: 154
15015
+ lineNumber: 157
14895
15016
  }
14896
15017
  }), !disabled && React$2.createElement(UndoRedo$1, {
14897
15018
  onUndo: onUndo,
@@ -14900,7 +15021,7 @@ class GraphWithControls extends React$2.Component {
14900
15021
  __self: this,
14901
15022
  __source: {
14902
15023
  fileName: _jsxFileName$2,
14903
- lineNumber: 165
15024
+ lineNumber: 168
14904
15025
  }
14905
15026
  }));
14906
15027
  return React$2.createElement('div', {
@@ -14908,14 +15029,14 @@ class GraphWithControls extends React$2.Component {
14908
15029
  __self: this,
14909
15030
  __source: {
14910
15031
  fileName: _jsxFileName$2,
14911
- lineNumber: 170
15032
+ lineNumber: 173
14912
15033
  }
14913
15034
  }, React$2.createElement('div', {
14914
15035
  className: classes.controls,
14915
15036
  __self: this,
14916
15037
  __source: {
14917
15038
  fileName: _jsxFileName$2,
14918
- lineNumber: 171
15039
+ lineNumber: 174
14919
15040
  }
14920
15041
  }, collapsibleToolbar ? React$2.createElement(Collapsible, {
14921
15042
  classes: classes,
@@ -14923,14 +15044,14 @@ class GraphWithControls extends React$2.Component {
14923
15044
  __self: this,
14924
15045
  __source: {
14925
15046
  fileName: _jsxFileName$2,
14926
- lineNumber: 173
15047
+ lineNumber: 176
14927
15048
  }
14928
15049
  }, graphActions) : graphActions), React$2.createElement('div', {
14929
15050
  ref: r => this.labelNode = r,
14930
15051
  __self: this,
14931
15052
  __source: {
14932
15053
  fileName: _jsxFileName$2,
14933
- lineNumber: 181
15054
+ lineNumber: 184
14934
15055
  }
14935
15056
  }), React$2.createElement(Graph, {
14936
15057
  axesSettings: axesSettings,
@@ -14942,6 +15063,7 @@ class GraphWithControls extends React$2.Component {
14942
15063
  domain: domain,
14943
15064
  labels: labels,
14944
15065
  labelModeEnabled: labelModeEnabled,
15066
+ labelsPlaceholders: labelsPlaceholders,
14945
15067
  marks: marks,
14946
15068
  onChangeMarks: !disabled ? onChangeMarks : undefined,
14947
15069
  onChangeLabels: onChangeLabels,
@@ -14949,13 +15071,15 @@ class GraphWithControls extends React$2.Component {
14949
15071
  range: range,
14950
15072
  size: size,
14951
15073
  showLabels: showLabels,
15074
+ showPixelGuides: showPixelGuides,
14952
15075
  showTitle: showTitle,
14953
15076
  title: title,
15077
+ titlePlaceholder: titlePlaceholder,
14954
15078
  tools: tools,
14955
15079
  __self: this,
14956
15080
  __source: {
14957
15081
  fileName: _jsxFileName$2,
14958
- lineNumber: 183
15082
+ lineNumber: 186
14959
15083
  }
14960
15084
  }));
14961
15085
  }
@@ -14963,9 +15087,12 @@ class GraphWithControls extends React$2.Component {
14963
15087
  GraphWithControls.__initStatic();
14964
15088
  GraphWithControls.__initStatic2();
14965
15089
  const styles$1 = theme => ({
14966
- graphWithControls: {},
15090
+ graphWithControls: {
15091
+ display: 'flex',
15092
+ flexDirection: 'column',
15093
+ width: 'min-content'
15094
+ },
14967
15095
  controls: {
14968
- width: 'inherit',
14969
15096
  display: 'flex',
14970
15097
  justifyContent: 'space-between',
14971
15098
  padding: theme.spacing.unit,
@@ -14980,7 +15107,8 @@ const styles$1 = theme => ({
14980
15107
  }
14981
15108
  },
14982
15109
  expansionPanel: {
14983
- backgroundColor: color$1.primaryLight()
15110
+ backgroundColor: color$1.primaryLight(),
15111
+ width: '100%'
14984
15112
  },
14985
15113
  summaryRoot: {
14986
15114
  padding: `0 ${theme.spacing.unit}px`,
@@ -14991,7 +15119,9 @@ const styles$1 = theme => ({
14991
15119
  },
14992
15120
  details: {
14993
15121
  padding: 0,
14994
- marginTop: theme.spacing.unit
15122
+ marginTop: theme.spacing.unit,
15123
+ display: 'flex',
15124
+ justifyContent: 'space-between'
14995
15125
  }
14996
15126
  });
14997
15127
  var GraphWithControls$1 = withStyles$1(styles$1)(GraphWithControls);
@@ -15119,6 +15249,16 @@ const GridConfig = props => {
15119
15249
  }
15120
15250
  }));
15121
15251
  };
15252
+ GridConfig.propTypes = {
15253
+ classes: PropTypes.object,
15254
+ disabled: PropTypes.bool,
15255
+ displayedFields: PropTypes.object,
15256
+ labelValue: PropTypes.number,
15257
+ labelValues: PropTypes.array,
15258
+ gridValue: PropTypes.number,
15259
+ gridValues: PropTypes.array,
15260
+ onChange: PropTypes.func
15261
+ };
15122
15262
  const AxisConfig = props => {
15123
15263
  const {classes, disabled, displayedFields, displayHeader, label, maxValue, minValue, onChange, type} = props;
15124
15264
  const {axisLabel = {}, min = {}, max = {}} = displayedFields;
@@ -15128,20 +15268,20 @@ const AxisConfig = props => {
15128
15268
  __self: undefined,
15129
15269
  __source: {
15130
15270
  fileName: _jsxFileName,
15131
- lineNumber: 76
15271
+ lineNumber: 87
15132
15272
  }
15133
15273
  }, displayHeader && React.createElement(Typography, {
15134
15274
  variant: "subtitle2",
15135
15275
  __self: undefined,
15136
15276
  __source: {
15137
15277
  fileName: _jsxFileName,
15138
- lineNumber: 78
15278
+ lineNumber: 89
15139
15279
  }
15140
15280
  }, React.createElement('i', {
15141
15281
  __self: undefined,
15142
15282
  __source: {
15143
15283
  fileName: _jsxFileName,
15144
- lineNumber: 79
15284
+ lineNumber: 90
15145
15285
  }
15146
15286
  }, type === 'domain' ? 'x' : 'y'), "-axis"), min && min.enabled && React.createElement(NumberTextFieldCustom, {
15147
15287
  className: classes.mediumTextField,
@@ -15155,7 +15295,7 @@ const AxisConfig = props => {
15155
15295
  __self: undefined,
15156
15296
  __source: {
15157
15297
  fileName: _jsxFileName,
15158
- lineNumber: 84
15298
+ lineNumber: 95
15159
15299
  }
15160
15300
  }), max && max.enabled && React.createElement(NumberTextFieldCustom, {
15161
15301
  className: classes.mediumTextField,
@@ -15169,7 +15309,7 @@ const AxisConfig = props => {
15169
15309
  __self: undefined,
15170
15310
  __source: {
15171
15311
  fileName: _jsxFileName,
15172
- lineNumber: 96
15312
+ lineNumber: 107
15173
15313
  }
15174
15314
  }), axisLabel && axisLabel.enabled && React.createElement(InputContainer, {
15175
15315
  label: axisLabel.label || '',
@@ -15177,7 +15317,7 @@ const AxisConfig = props => {
15177
15317
  __self: undefined,
15178
15318
  __source: {
15179
15319
  fileName: _jsxFileName,
15180
- lineNumber: 108
15320
+ lineNumber: 119
15181
15321
  }
15182
15322
  }, React.createElement(EditableHTML, {
15183
15323
  className: classes.axisLabel,
@@ -15188,12 +15328,12 @@ const AxisConfig = props => {
15188
15328
  __self: undefined,
15189
15329
  __source: {
15190
15330
  fileName: _jsxFileName,
15191
- lineNumber: 109
15331
+ lineNumber: 120
15192
15332
  }
15193
15333
  })));
15194
15334
  };
15195
15335
  const GridSetup = props => {
15196
- const {classes, domain, displayedFields = {}, gridValues = {}, includeAxes, labelValues = {}, onChange, range, size, sizeConstraints, standardGrid} = props;
15336
+ const {classes, domain, displayedFields = {}, gridValues = {}, includeAxes, labelValues = {}, onChange, onChangeView, range, size, sizeConstraints, standardGrid} = props;
15197
15337
  const gridProps = {
15198
15338
  min: 2,
15199
15339
  max: 41
@@ -15282,14 +15422,14 @@ const GridSetup = props => {
15282
15422
  __self: undefined,
15283
15423
  __source: {
15284
15424
  fileName: _jsxFileName,
15285
- lineNumber: 217
15425
+ lineNumber: 229
15286
15426
  }
15287
15427
  }, React.createElement('div', {
15288
15428
  className: classes.rowView,
15289
15429
  __self: undefined,
15290
15430
  __source: {
15291
15431
  fileName: _jsxFileName,
15292
- lineNumber: 218
15432
+ lineNumber: 230
15293
15433
  }
15294
15434
  }, React.createElement(AxisConfig, {
15295
15435
  classes: classes,
@@ -15304,7 +15444,7 @@ const GridSetup = props => {
15304
15444
  __self: undefined,
15305
15445
  __source: {
15306
15446
  fileName: _jsxFileName,
15307
- lineNumber: 219
15447
+ lineNumber: 231
15308
15448
  }
15309
15449
  }), React.createElement(AxisConfig, {
15310
15450
  classes: classes,
@@ -15320,21 +15460,21 @@ const GridSetup = props => {
15320
15460
  __self: undefined,
15321
15461
  __source: {
15322
15462
  fileName: _jsxFileName,
15323
- lineNumber: 230
15463
+ lineNumber: 242
15324
15464
  }
15325
15465
  })), (min.enabled || max.enabled) && React.createElement(Typography, {
15326
15466
  className: classes.text,
15327
15467
  __self: undefined,
15328
15468
  __source: {
15329
15469
  fileName: _jsxFileName,
15330
- lineNumber: 244
15470
+ lineNumber: 256
15331
15471
  }
15332
15472
  }, "If you want the axis to be visible, use a zero or negative Min Value, and a positive Max Value"), (step.enabled || labelStep.enabled) && React.createElement('div', {
15333
15473
  className: classes.rowView,
15334
15474
  __self: undefined,
15335
15475
  __source: {
15336
15476
  fileName: _jsxFileName,
15337
- lineNumber: 250
15477
+ lineNumber: 262
15338
15478
  }
15339
15479
  }, React.createElement(GridConfig, {
15340
15480
  classes: classes,
@@ -15347,7 +15487,7 @@ const GridSetup = props => {
15347
15487
  __self: undefined,
15348
15488
  __source: {
15349
15489
  fileName: _jsxFileName,
15350
- lineNumber: 251
15490
+ lineNumber: 263
15351
15491
  }
15352
15492
  }), React.createElement(GridConfig, {
15353
15493
  classes: classes,
@@ -15361,14 +15501,14 @@ const GridSetup = props => {
15361
15501
  __self: undefined,
15362
15502
  __source: {
15363
15503
  fileName: _jsxFileName,
15364
- lineNumber: 260
15504
+ lineNumber: 272
15365
15505
  }
15366
15506
  })), labelStep.enabled && React.createElement(Typography, {
15367
15507
  className: classes.text,
15368
15508
  __self: undefined,
15369
15509
  __source: {
15370
15510
  fileName: _jsxFileName,
15371
- lineNumber: 273
15511
+ lineNumber: 285
15372
15512
  }
15373
15513
  }, "For unnumbered gridlines, enter a label interval of 0"));
15374
15514
  const gridlinesConfig = max.enabled ? React.createElement('div', {
@@ -15376,7 +15516,7 @@ const GridSetup = props => {
15376
15516
  __self: undefined,
15377
15517
  __source: {
15378
15518
  fileName: _jsxFileName,
15379
- lineNumber: 281
15519
+ lineNumber: 293
15380
15520
  }
15381
15521
  }, React.createElement(NumberTextFieldCustom, {
15382
15522
  className: classes.largeTextField,
@@ -15389,7 +15529,7 @@ const GridSetup = props => {
15389
15529
  __self: undefined,
15390
15530
  __source: {
15391
15531
  fileName: _jsxFileName,
15392
- lineNumber: 282
15532
+ lineNumber: 294
15393
15533
  }
15394
15534
  }), React.createElement(NumberTextFieldCustom, {
15395
15535
  className: classes.largeTextField,
@@ -15403,7 +15543,7 @@ const GridSetup = props => {
15403
15543
  __self: undefined,
15404
15544
  __source: {
15405
15545
  fileName: _jsxFileName,
15406
- lineNumber: 291
15546
+ lineNumber: 303
15407
15547
  }
15408
15548
  })) : null;
15409
15549
  return React.createElement('div', {
@@ -15411,46 +15551,47 @@ const GridSetup = props => {
15411
15551
  __self: undefined,
15412
15552
  __source: {
15413
15553
  fileName: _jsxFileName,
15414
- lineNumber: 305
15554
+ lineNumber: 317
15415
15555
  }
15416
15556
  }, React.createElement(ExpansionPanel, {
15557
+ onChange: onChangeView,
15417
15558
  __self: undefined,
15418
15559
  __source: {
15419
15560
  fileName: _jsxFileName,
15420
- lineNumber: 306
15561
+ lineNumber: 318
15421
15562
  }
15422
15563
  }, React.createElement(ExpansionPanelSummary, {
15423
15564
  expandIcon: React.createElement(ExpandMoreIcon, {
15424
15565
  __self: undefined,
15425
15566
  __source: {
15426
15567
  fileName: _jsxFileName,
15427
- lineNumber: 307
15568
+ lineNumber: 319
15428
15569
  }
15429
15570
  }),
15430
15571
  __self: undefined,
15431
15572
  __source: {
15432
15573
  fileName: _jsxFileName,
15433
- lineNumber: 307
15574
+ lineNumber: 319
15434
15575
  }
15435
15576
  }, React.createElement(Typography, {
15436
15577
  variant: "subtitle1",
15437
15578
  __self: undefined,
15438
15579
  __source: {
15439
15580
  fileName: _jsxFileName,
15440
- lineNumber: 308
15581
+ lineNumber: 320
15441
15582
  }
15442
15583
  }, "Customize Grid Setup")), React.createElement(ExpansionPanelDetails, {
15443
15584
  __self: undefined,
15444
15585
  __source: {
15445
15586
  fileName: _jsxFileName,
15446
- lineNumber: 310
15587
+ lineNumber: 322
15447
15588
  }
15448
15589
  }, React.createElement('div', {
15449
15590
  className: classes.content,
15450
15591
  __self: undefined,
15451
15592
  __source: {
15452
15593
  fileName: _jsxFileName,
15453
- lineNumber: 311
15594
+ lineNumber: 323
15454
15595
  }
15455
15596
  }, includeAxesEnabled && React.createElement(Toggle, {
15456
15597
  label: "Include axes and labels?",
@@ -15459,7 +15600,7 @@ const GridSetup = props => {
15459
15600
  __self: undefined,
15460
15601
  __source: {
15461
15602
  fileName: _jsxFileName,
15462
- lineNumber: 313
15603
+ lineNumber: 325
15463
15604
  }
15464
15605
  }), standardGridEnabled && React.createElement(Toggle, {
15465
15606
  label: "Constrain to standard coordinate grid?",
@@ -15468,33 +15609,33 @@ const GridSetup = props => {
15468
15609
  __self: undefined,
15469
15610
  __source: {
15470
15611
  fileName: _jsxFileName,
15471
- lineNumber: 320
15612
+ lineNumber: 332
15472
15613
  }
15473
15614
  }), includeAxes ? axesConfig : gridlinesConfig, dimensionsEnabled && React.createElement('div', {
15474
15615
  className: classes.dimensions,
15475
15616
  __self: undefined,
15476
15617
  __source: {
15477
15618
  fileName: _jsxFileName,
15478
- lineNumber: 328
15619
+ lineNumber: 340
15479
15620
  }
15480
15621
  }, React.createElement('div', {
15481
15622
  __self: undefined,
15482
15623
  __source: {
15483
15624
  fileName: _jsxFileName,
15484
- lineNumber: 329
15625
+ lineNumber: 341
15485
15626
  }
15486
15627
  }, React.createElement(Typography, {
15487
15628
  __self: undefined,
15488
15629
  __source: {
15489
15630
  fileName: _jsxFileName,
15490
- lineNumber: 330
15631
+ lineNumber: 342
15491
15632
  }
15492
15633
  }, "Dimensions(px)"), React.createElement(Typography, {
15493
15634
  className: classes.disabled,
15494
15635
  __self: undefined,
15495
15636
  __source: {
15496
15637
  fileName: _jsxFileName,
15497
- lineNumber: 331
15638
+ lineNumber: 343
15498
15639
  }
15499
15640
  }, "Min ", sizeConstraints.min, ", Max ", sizeConstraints.max)), React.createElement(NumberTextFieldCustom, {
15500
15641
  className: classes.textField,
@@ -15508,7 +15649,7 @@ const GridSetup = props => {
15508
15649
  __self: undefined,
15509
15650
  __source: {
15510
15651
  fileName: _jsxFileName,
15511
- lineNumber: 335
15652
+ lineNumber: 347
15512
15653
  }
15513
15654
  }), React.createElement(NumberTextFieldCustom, {
15514
15655
  className: classes.textField,
@@ -15523,7 +15664,7 @@ const GridSetup = props => {
15523
15664
  __self: undefined,
15524
15665
  __source: {
15525
15666
  fileName: _jsxFileName,
15526
- lineNumber: 345
15667
+ lineNumber: 357
15527
15668
  }
15528
15669
  }))))));
15529
15670
  };
@@ -15535,6 +15676,7 @@ GridSetup.propTypes = {
15535
15676
  includeAxes: PropTypes.bool,
15536
15677
  labelValues: PropTypes.object,
15537
15678
  onChange: PropTypes.function,
15679
+ onChangeView: PropTypes.function,
15538
15680
  range: PropTypes.object,
15539
15681
  size: PropTypes.object,
15540
15682
  sizeConstraints: PropTypes.object,
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pie-lib/graphing-module",
3
- "version": "1.7.0",
3
+ "version": "1.7.1",
4
4
  "mappings": {
5
5
  "@pie-lib/plot": "_dll_pie_lib__plot",
6
6
  "@pie-lib/graphing": "_dll_pie_lib__graphing",
@@ -13,7 +13,7 @@
13
13
  "version": "2.3.0"
14
14
  },
15
15
  "@pie-lib/graphing": {
16
- "version": "2.9.0"
16
+ "version": "2.9.1"
17
17
  },
18
18
  "d3-scale": {
19
19
  "version": "2.2.2"
@@ -22,24 +22,24 @@
22
22
  "version": "1.4.2"
23
23
  }
24
24
  },
25
- "hash": "e57b7cc6974ecb5a2cd24865ee305d043798f37e"
25
+ "hash": "0e9fe7d4674f15c0acda65cabc9dfa120a73d010"
26
26
  },
27
27
  "modules": [
28
28
  {
29
29
  "name": "@pie-lib/shared-module",
30
- "version": "^1.5.7"
30
+ "version": "^1.5.8"
31
31
  },
32
32
  {
33
33
  "name": "@pie-lib/editable-html-module",
34
- "version": "^3.1.0"
34
+ "version": "^3.1.1"
35
35
  },
36
36
  {
37
37
  "name": "@pie-lib/drag-module",
38
- "version": "^1.0.59"
38
+ "version": "^1.0.60"
39
39
  },
40
40
  {
41
41
  "name": "@pie-lib/config-module",
42
- "version": "^2.1.7"
42
+ "version": "^2.1.8"
43
43
  }
44
44
  ],
45
45
  "isLocal": true
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pie-lib/graphing-module",
3
- "version": "1.7.0",
3
+ "version": "1.7.1",
4
4
  "module": "module/index.js",
5
5
  "repository": "pie-framework/pie-lib",
6
6
  "publishConfig": {