@pie-lib/graphing 2.4.3-next.350 → 2.4.3-next.352

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/lib/grid-setup.js CHANGED
@@ -38,16 +38,19 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope
38
38
  var GridConfig = function GridConfig(props) {
39
39
  var classes = props.classes,
40
40
  disabled = props.disabled,
41
+ displayedFields = props.displayedFields,
41
42
  labelValue = props.labelValue,
42
43
  labelValues = props.labelValues,
43
44
  gridValue = props.gridValue,
44
45
  gridValues = props.gridValues,
45
46
  _onChange = props.onChange;
47
+ var labelStep = displayedFields.labelStep,
48
+ step = displayedFields.step;
46
49
  return /*#__PURE__*/_react["default"].createElement("div", {
47
50
  className: classes.columnView
48
- }, /*#__PURE__*/_react["default"].createElement(_configUi.NumberTextFieldCustom, {
51
+ }, step.enabled && /*#__PURE__*/_react["default"].createElement(_configUi.NumberTextFieldCustom, {
49
52
  className: classes.mediumTextField,
50
- label: "Grid Interval",
53
+ label: step.label,
51
54
  value: gridValue,
52
55
  customValues: gridValues,
53
56
  variant: "outlined",
@@ -55,9 +58,9 @@ var GridConfig = function GridConfig(props) {
55
58
  onChange: function onChange(e, v) {
56
59
  return _onChange('step', v);
57
60
  }
58
- }), /*#__PURE__*/_react["default"].createElement(_configUi.NumberTextFieldCustom, {
61
+ }), labelStep.enabled && /*#__PURE__*/_react["default"].createElement(_configUi.NumberTextFieldCustom, {
59
62
  className: classes.mediumTextField,
60
- label: "Label Interval",
63
+ label: labelStep.label,
61
64
  value: labelValue,
62
65
  customValues: labelValues,
63
66
  variant: "outlined",
@@ -71,20 +74,25 @@ var GridConfig = function GridConfig(props) {
71
74
  var AxisConfig = function AxisConfig(props) {
72
75
  var classes = props.classes,
73
76
  disabled = props.disabled,
77
+ displayedFields = props.displayedFields,
78
+ displayHeader = props.displayHeader,
74
79
  label = props.label,
75
80
  maxValue = props.maxValue,
76
81
  minValue = props.minValue,
77
82
  _onChange2 = props.onChange,
78
83
  type = props.type;
84
+ var axisLabel = displayedFields.axisLabel,
85
+ min = displayedFields.min,
86
+ max = displayedFields.max;
79
87
  var activePlugins = ['bold', 'italic', 'underline', 'strikethrough' // 'languageCharacters'
80
88
  ];
81
89
  return /*#__PURE__*/_react["default"].createElement("div", {
82
90
  className: classes.columnView
83
- }, /*#__PURE__*/_react["default"].createElement(_Typography["default"], {
91
+ }, displayHeader && /*#__PURE__*/_react["default"].createElement(_Typography["default"], {
84
92
  variant: "subtitle2"
85
- }, /*#__PURE__*/_react["default"].createElement("i", null, type === 'domain' ? 'x' : 'y'), "-axis"), /*#__PURE__*/_react["default"].createElement(_configUi.NumberTextFieldCustom, {
93
+ }, /*#__PURE__*/_react["default"].createElement("i", null, type === 'domain' ? 'x' : 'y'), "-axis"), min.enabled && /*#__PURE__*/_react["default"].createElement(_configUi.NumberTextFieldCustom, {
86
94
  className: classes.mediumTextField,
87
- label: "Min Value",
95
+ label: min.label,
88
96
  value: minValue,
89
97
  min: -10000,
90
98
  max: maxValue - 0.01,
@@ -93,9 +101,9 @@ var AxisConfig = function AxisConfig(props) {
93
101
  onChange: function onChange(e, v) {
94
102
  return _onChange2('min', v);
95
103
  }
96
- }), /*#__PURE__*/_react["default"].createElement(_configUi.NumberTextFieldCustom, {
104
+ }), max.enabled && /*#__PURE__*/_react["default"].createElement(_configUi.NumberTextFieldCustom, {
97
105
  className: classes.mediumTextField,
98
- label: "Max Value",
106
+ label: max.label,
99
107
  value: maxValue,
100
108
  min: minValue + 0.01,
101
109
  max: 10000,
@@ -104,8 +112,8 @@ var AxisConfig = function AxisConfig(props) {
104
112
  onChange: function onChange(e, v) {
105
113
  return _onChange2('max', v);
106
114
  }
107
- }), /*#__PURE__*/_react["default"].createElement(_renderUi.InputContainer, {
108
- label: "Label",
115
+ }), axisLabel.enabled && /*#__PURE__*/_react["default"].createElement(_renderUi.InputContainer, {
116
+ label: axisLabel.label,
109
117
  className: classes.mediumTextField
110
118
  }, /*#__PURE__*/_react["default"].createElement(_editableHtml["default"], {
111
119
  className: classes.axisLabel,
@@ -121,7 +129,7 @@ var AxisConfig = function AxisConfig(props) {
121
129
  var GridSetup = function GridSetup(props) {
122
130
  var classes = props.classes,
123
131
  domain = props.domain,
124
- dimensionsEnabled = props.dimensionsEnabled,
132
+ displayedFields = props.displayedFields,
125
133
  _props$gridValues = props.gridValues,
126
134
  gridValues = _props$gridValues === void 0 ? {} : _props$gridValues,
127
135
  includeAxes = props.includeAxes,
@@ -136,6 +144,24 @@ var GridSetup = function GridSetup(props) {
136
144
  min: 2,
137
145
  max: 41
138
146
  };
147
+ var axisLabel = displayedFields.axisLabel,
148
+ dimensionsEnabled = displayedFields.dimensionsEnabled,
149
+ includeAxesEnabled = displayedFields.includeAxesEnabled,
150
+ labelStep = displayedFields.labelStep,
151
+ min = displayedFields.min,
152
+ max = displayedFields.max,
153
+ standardGridEnabled = displayedFields.standardGridEnabled,
154
+ step = displayedFields.step;
155
+ var displayAxisType = min.enabled || max.enabled || axisLabel.enabled || step.enabled || labelStep.enabled;
156
+ var gridConfigFields = {
157
+ step: step,
158
+ labelStep: labelStep
159
+ };
160
+ var axisConfigFields = {
161
+ min: min,
162
+ max: max,
163
+ axisLabel: axisLabel
164
+ };
139
165
 
140
166
  var onIncludeAxes = function onIncludeAxes(includeAxes) {
141
167
  var noAxesConfig = function noAxesConfig(type) {
@@ -211,6 +237,8 @@ var GridSetup = function GridSetup(props) {
211
237
  className: classes.rowView
212
238
  }, /*#__PURE__*/_react["default"].createElement(AxisConfig, {
213
239
  classes: classes,
240
+ displayedFields: axisConfigFields,
241
+ displayHeader: displayAxisType,
214
242
  type: "domain",
215
243
  minValue: domain.min,
216
244
  maxValue: domain.max,
@@ -219,6 +247,8 @@ var GridSetup = function GridSetup(props) {
219
247
  onChange: onDomainChanged
220
248
  }), /*#__PURE__*/_react["default"].createElement(AxisConfig, {
221
249
  classes: classes,
250
+ displayedFields: axisConfigFields,
251
+ displayHeader: displayAxisType,
222
252
  type: "range",
223
253
  minValue: range.min,
224
254
  maxValue: range.max,
@@ -226,12 +256,13 @@ var GridSetup = function GridSetup(props) {
226
256
  disabled: standardGrid,
227
257
  includeAxes: includeAxes,
228
258
  onChange: onRangeChanged
229
- })), /*#__PURE__*/_react["default"].createElement(_Typography["default"], {
259
+ })), (min.enabled || max.enabled) && /*#__PURE__*/_react["default"].createElement(_Typography["default"], {
230
260
  className: classes.text
231
- }, "If you want the axis to be visible, use a zero or negative Min Value, and a positive Max Value"), /*#__PURE__*/_react["default"].createElement("div", {
261
+ }, "If you want the axis to be visible, use a zero or negative Min Value, and a positive Max Value"), (step.enabled || labelStep.enabled) && /*#__PURE__*/_react["default"].createElement("div", {
232
262
  className: classes.rowView
233
263
  }, /*#__PURE__*/_react["default"].createElement(GridConfig, {
234
264
  classes: classes,
265
+ displayedFields: gridConfigFields,
235
266
  gridValue: domain.step,
236
267
  labelValue: domain.labelStep,
237
268
  gridValues: gridValues.domain || [],
@@ -240,16 +271,17 @@ var GridSetup = function GridSetup(props) {
240
271
  }), /*#__PURE__*/_react["default"].createElement(GridConfig, {
241
272
  classes: classes,
242
273
  disabled: standardGrid,
274
+ displayedFields: gridConfigFields,
243
275
  gridValue: range.step,
244
276
  labelValue: range.labelStep,
245
277
  gridValues: gridValues.range || [],
246
278
  labelValues: labelValues.range || [],
247
279
  onChange: onRangeChanged
248
- })), /*#__PURE__*/_react["default"].createElement(_Typography["default"], {
280
+ })), labelStep.enabled && /*#__PURE__*/_react["default"].createElement(_Typography["default"], {
249
281
  className: classes.text
250
282
  }, "For unnumbered gridlines, enter a label interval of 0"));
251
283
 
252
- var gridlinesConfig = /*#__PURE__*/_react["default"].createElement("div", {
284
+ var gridlinesConfig = max.enabled ? /*#__PURE__*/_react["default"].createElement("div", {
253
285
  className: classes.columnView
254
286
  }, /*#__PURE__*/_react["default"].createElement(_configUi.NumberTextFieldCustom, {
255
287
  className: classes.largeTextField,
@@ -272,8 +304,7 @@ var GridSetup = function GridSetup(props) {
272
304
  onChange: function onChange(e, v) {
273
305
  return onRangeChanged('max', v);
274
306
  }
275
- }));
276
-
307
+ })) : null;
277
308
  return /*#__PURE__*/_react["default"].createElement("div", {
278
309
  className: classes.wrapper
279
310
  }, /*#__PURE__*/_react["default"].createElement(_ExpansionPanel["default"], null, /*#__PURE__*/_react["default"].createElement(_ExpansionPanelSummary["default"], {
@@ -282,11 +313,11 @@ var GridSetup = function GridSetup(props) {
282
313
  variant: "subtitle1"
283
314
  }, "Customize Grid Setup")), /*#__PURE__*/_react["default"].createElement(_ExpansionPanelDetails["default"], null, /*#__PURE__*/_react["default"].createElement("div", {
284
315
  className: classes.content
285
- }, /*#__PURE__*/_react["default"].createElement(_configUi.Toggle, {
316
+ }, includeAxesEnabled && /*#__PURE__*/_react["default"].createElement(_configUi.Toggle, {
286
317
  label: "Include axes and labels?",
287
318
  toggle: onIncludeAxes,
288
319
  checked: includeAxes
289
- }), /*#__PURE__*/_react["default"].createElement(_configUi.Toggle, {
320
+ }), standardGridEnabled && /*#__PURE__*/_react["default"].createElement(_configUi.Toggle, {
290
321
  label: "Constrain to standard coordinate grid?",
291
322
  toggle: onStandardGridChanged,
292
323
  checked: standardGrid
@@ -323,7 +354,7 @@ var GridSetup = function GridSetup(props) {
323
354
  GridSetup.propTypes = {
324
355
  classes: _propTypes["default"].object,
325
356
  domain: _propTypes["default"].object,
326
- dimensionsEnabled: _propTypes["default"].object,
357
+ displayedFields: _propTypes["default"].object,
327
358
  gridValues: _propTypes["default"].object,
328
359
  includeAxes: _propTypes["default"].bool,
329
360
  labelValues: _propTypes["default"].object,
@@ -1 +1 @@
1
- {"version":3,"file":"grid-setup.js","names":["GridConfig","props","classes","disabled","labelValue","labelValues","gridValue","gridValues","onChange","columnView","mediumTextField","e","v","AxisConfig","label","maxValue","minValue","type","activePlugins","axisLabel","value","GridSetup","domain","dimensionsEnabled","includeAxes","range","size","sizeConstraints","standardGrid","gridProps","min","max","onIncludeAxes","noAxesConfig","axis","step","labelStep","updatedRange","updatedDomain","onStandardGridChanged","graph","height","width","onSizeChanged","key","onDomainChanged","onRangeChanged","axesConfig","rowView","text","gridlinesConfig","largeTextField","wrapper","content","dimensions","textField","propTypes","PropTypes","object","bool","styles","theme","display","flexDirection","alignItems","justifyContent","margin","spacing","unit","fontStyle","color","paddingTop","withStyles"],"sources":["../src/grid-setup.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { color, InputContainer } from '@pie-lib/render-ui';\nimport { withStyles } from '@material-ui/core/styles';\nimport ExpansionPanelSummary from '@material-ui/core/ExpansionPanelSummary';\nimport Typography from '@material-ui/core/Typography';\nimport ExpansionPanelDetails from '@material-ui/core/ExpansionPanelDetails';\nimport ExpansionPanel from '@material-ui/core/ExpansionPanel';\nimport ExpandMoreIcon from '@material-ui/icons/ExpandMore';\nimport { NumberTextFieldCustom, Toggle } from '@pie-lib/config-ui';\nimport EditableHTML from '@pie-lib/editable-html';\n\nconst GridConfig = props => {\n const { classes, disabled, labelValue, labelValues, gridValue, gridValues, onChange } = props;\n\n return (\n <div className={classes.columnView}>\n <NumberTextFieldCustom\n className={classes.mediumTextField}\n label=\"Grid Interval\"\n value={gridValue}\n customValues={gridValues}\n variant=\"outlined\"\n disabled={disabled}\n onChange={(e, v) => onChange('step', v)}\n />\n <NumberTextFieldCustom\n className={classes.mediumTextField}\n label=\"Label Interval\"\n value={labelValue}\n customValues={labelValues}\n variant=\"outlined\"\n disabled={disabled}\n onChange={(e, v) => onChange('labelStep', v)}\n />\n </div>\n );\n};\n\nconst AxisConfig = props => {\n const { classes, disabled, label, maxValue, minValue, onChange, type } = props;\n const activePlugins = [\n 'bold',\n 'italic',\n 'underline',\n 'strikethrough'\n // 'languageCharacters'\n ];\n\n return (\n <div className={classes.columnView}>\n <Typography variant=\"subtitle2\">\n <i>{type === 'domain' ? 'x' : 'y'}</i>\n -axis\n </Typography>\n <NumberTextFieldCustom\n className={classes.mediumTextField}\n label=\"Min Value\"\n value={minValue}\n min={-10000}\n max={maxValue - 0.01}\n variant=\"outlined\"\n disabled={disabled}\n onChange={(e, v) => onChange('min', v)}\n />\n <NumberTextFieldCustom\n className={classes.mediumTextField}\n label=\"Max Value\"\n value={maxValue}\n min={minValue + 0.01}\n max={10000}\n variant=\"outlined\"\n disabled={disabled}\n onChange={(e, v) => onChange('max', v)}\n />\n <InputContainer label=\"Label\" className={classes.mediumTextField}>\n <EditableHTML\n className={classes.axisLabel}\n onChange={value => onChange('axisLabel', value)}\n markup={label || ''}\n charactersLimit={5}\n activePlugins={activePlugins}\n />\n </InputContainer>\n </div>\n );\n};\n\nconst GridSetup = props => {\n const {\n classes,\n domain,\n dimensionsEnabled,\n gridValues = {},\n includeAxes,\n labelValues = {},\n onChange,\n range,\n size,\n sizeConstraints,\n standardGrid\n } = props;\n const gridProps = { min: 2, max: 41 };\n\n const onIncludeAxes = includeAxes => {\n const noAxesConfig = type => {\n const axis = type === 'domain' ? domain : range;\n\n return {\n min: 1,\n max: axis.max < gridProps.min || axis.max > gridProps.max ? 16 : axis.max,\n step: 1,\n labelStep: 0\n };\n };\n\n const updatedRange = {\n ...range,\n ...(includeAxes ? { labelStep: 1 } : noAxesConfig('range'))\n };\n const updatedDomain = {\n ...domain,\n ...(includeAxes ? { labelStep: 1 } : noAxesConfig('domain'))\n };\n\n onChange({ includeAxes, range: updatedRange, domain: updatedDomain });\n };\n\n const onStandardGridChanged = value => {\n onChange({\n standardGrid: value,\n range: {\n ...domain,\n axisLabel: range.axisLabel\n },\n graph: {\n ...size,\n height: size.width\n }\n });\n };\n\n const onSizeChanged = (key, value) => {\n const graph = { ...size, [key]: value };\n\n if (standardGrid) {\n graph.height = value;\n }\n\n onChange({ graph });\n };\n\n const onDomainChanged = (key, value) => {\n domain[key] = value;\n\n if (standardGrid && key !== 'axisLabel') {\n range[key] = value;\n }\n\n onChange({ domain, range });\n };\n\n const onRangeChanged = (key, value) => {\n range[key] = value;\n\n onChange({ range });\n };\n\n const axesConfig = (\n <React.Fragment>\n <div className={classes.rowView}>\n <AxisConfig\n classes={classes}\n type=\"domain\"\n minValue={domain.min}\n maxValue={domain.max}\n label={domain.axisLabel}\n includeAxes={includeAxes}\n onChange={onDomainChanged}\n />\n <AxisConfig\n classes={classes}\n type=\"range\"\n minValue={range.min}\n maxValue={range.max}\n label={range.axisLabel}\n disabled={standardGrid}\n includeAxes={includeAxes}\n onChange={onRangeChanged}\n />\n </div>\n <Typography className={classes.text}>\n If you want the axis to be visible, use a zero or negative Min Value, and a positive Max\n Value\n </Typography>\n <div className={classes.rowView}>\n <GridConfig\n classes={classes}\n gridValue={domain.step}\n labelValue={domain.labelStep}\n gridValues={gridValues.domain || []}\n labelValues={labelValues.domain || []}\n onChange={onDomainChanged}\n />\n <GridConfig\n classes={classes}\n disabled={standardGrid}\n gridValue={range.step}\n labelValue={range.labelStep}\n gridValues={gridValues.range || []}\n labelValues={labelValues.range || []}\n onChange={onRangeChanged}\n />\n </div>\n <Typography className={classes.text}>\n For unnumbered gridlines, enter a label interval of 0\n </Typography>\n </React.Fragment>\n );\n\n const gridlinesConfig = (\n <div className={classes.columnView}>\n <NumberTextFieldCustom\n className={classes.largeTextField}\n label=\"Number of Horizontal Gridlines\"\n value={domain.max}\n min={!includeAxes && gridProps.min}\n max={!includeAxes && gridProps.max}\n variant=\"outlined\"\n onChange={(e, v) => onDomainChanged('max', v)}\n />\n <NumberTextFieldCustom\n className={classes.largeTextField}\n label=\"Number of Vertical Gridlines\"\n value={range.max}\n min={!includeAxes && gridProps.min}\n max={!includeAxes && gridProps.max}\n variant=\"outlined\"\n disabled={standardGrid}\n onChange={(e, v) => onRangeChanged('max', v)}\n />\n </div>\n );\n\n return (\n <div className={classes.wrapper}>\n <ExpansionPanel>\n <ExpansionPanelSummary expandIcon={<ExpandMoreIcon />}>\n <Typography variant=\"subtitle1\">Customize Grid Setup</Typography>\n </ExpansionPanelSummary>\n <ExpansionPanelDetails>\n <div className={classes.content}>\n <Toggle label=\"Include axes and labels?\" toggle={onIncludeAxes} checked={includeAxes} />\n <Toggle\n label=\"Constrain to standard coordinate grid?\"\n toggle={onStandardGridChanged}\n checked={standardGrid}\n />\n {includeAxes ? axesConfig : gridlinesConfig}\n {dimensionsEnabled && (\n <div className={classes.dimensions}>\n <div>\n <Typography>Dimensions(px)</Typography>\n <Typography className={classes.disabled}>\n Min {sizeConstraints.min}, Max {sizeConstraints.max}\n </Typography>\n </div>\n <NumberTextFieldCustom\n className={classes.textField}\n label=\"Width\"\n value={size.width}\n min={sizeConstraints.min}\n max={sizeConstraints.max}\n step={sizeConstraints.step}\n variant=\"outlined\"\n onChange={(e, v) => onSizeChanged('width', v)}\n />\n <NumberTextFieldCustom\n className={classes.textField}\n label=\"Height\"\n value={size.height}\n min={sizeConstraints.min}\n max={sizeConstraints.max}\n step={sizeConstraints.step}\n variant=\"outlined\"\n disabled={standardGrid}\n onChange={(e, v) => onSizeChanged('height', v)}\n />\n </div>\n )}\n </div>\n </ExpansionPanelDetails>\n </ExpansionPanel>\n </div>\n );\n};\n\nGridSetup.propTypes = {\n classes: PropTypes.object,\n domain: PropTypes.object,\n dimensionsEnabled: PropTypes.object,\n gridValues: PropTypes.object,\n includeAxes: PropTypes.bool,\n labelValues: PropTypes.object,\n onChange: PropTypes.function,\n range: PropTypes.object,\n size: PropTypes.object,\n sizeConstraints: PropTypes.object,\n standardGrid: PropTypes.bool\n};\n\nconst styles = theme => ({\n wrapper: {\n width: '450px'\n },\n content: {\n display: 'flex',\n flexDirection: 'column',\n width: '100%'\n },\n columnView: {\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center'\n },\n rowView: {\n display: 'flex',\n justifyContent: 'space-around',\n alignItems: 'center'\n },\n textField: {\n width: '130px',\n margin: `${theme.spacing.unit}px ${theme.spacing.unit / 2}px`\n },\n mediumTextField: {\n width: '160px',\n margin: `${theme.spacing.unit}px ${theme.spacing.unit / 2}px`\n },\n largeTextField: {\n width: '230px',\n margin: `${theme.spacing.unit}px ${theme.spacing.unit / 2}px`\n },\n text: {\n fontStyle: 'italic',\n margin: `${theme.spacing.unit}px 0`\n },\n dimensions: {\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center'\n },\n disabled: {\n color: color.disabled()\n },\n axisLabel: {\n paddingTop: theme.spacing.unit * 2\n }\n});\n\nexport default withStyles(styles)(GridSetup);\n"],"mappings":"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"}
1
+ {"version":3,"file":"grid-setup.js","names":["GridConfig","props","classes","disabled","displayedFields","labelValue","labelValues","gridValue","gridValues","onChange","labelStep","step","columnView","enabled","mediumTextField","label","e","v","AxisConfig","displayHeader","maxValue","minValue","type","axisLabel","min","max","activePlugins","value","GridSetup","domain","includeAxes","range","size","sizeConstraints","standardGrid","gridProps","dimensionsEnabled","includeAxesEnabled","standardGridEnabled","displayAxisType","gridConfigFields","axisConfigFields","onIncludeAxes","noAxesConfig","axis","updatedRange","updatedDomain","onStandardGridChanged","graph","height","width","onSizeChanged","key","onDomainChanged","onRangeChanged","axesConfig","rowView","text","gridlinesConfig","largeTextField","wrapper","content","dimensions","textField","propTypes","PropTypes","object","bool","styles","theme","display","flexDirection","alignItems","justifyContent","margin","spacing","unit","fontStyle","color","paddingTop","withStyles"],"sources":["../src/grid-setup.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { color, InputContainer } from '@pie-lib/render-ui';\nimport { withStyles } from '@material-ui/core/styles';\nimport ExpansionPanelSummary from '@material-ui/core/ExpansionPanelSummary';\nimport Typography from '@material-ui/core/Typography';\nimport ExpansionPanelDetails from '@material-ui/core/ExpansionPanelDetails';\nimport ExpansionPanel from '@material-ui/core/ExpansionPanel';\nimport ExpandMoreIcon from '@material-ui/icons/ExpandMore';\nimport { NumberTextFieldCustom, Toggle } from '@pie-lib/config-ui';\nimport EditableHTML from '@pie-lib/editable-html';\n\nconst GridConfig = props => {\n const {\n classes,\n disabled,\n displayedFields,\n labelValue,\n labelValues,\n gridValue,\n gridValues,\n onChange\n } = props;\n const { labelStep, step } = displayedFields;\n\n return (\n <div className={classes.columnView}>\n {step.enabled && (\n <NumberTextFieldCustom\n className={classes.mediumTextField}\n label={step.label}\n value={gridValue}\n customValues={gridValues}\n variant=\"outlined\"\n disabled={disabled}\n onChange={(e, v) => onChange('step', v)}\n />\n )}\n {labelStep.enabled && (\n <NumberTextFieldCustom\n className={classes.mediumTextField}\n label={labelStep.label}\n value={labelValue}\n customValues={labelValues}\n variant=\"outlined\"\n disabled={disabled}\n onChange={(e, v) => onChange('labelStep', v)}\n />\n )}\n </div>\n );\n};\n\nconst AxisConfig = props => {\n const {\n classes,\n disabled,\n displayedFields,\n displayHeader,\n label,\n maxValue,\n minValue,\n onChange,\n type\n } = props;\n const { axisLabel, min, max } = displayedFields;\n const activePlugins = [\n 'bold',\n 'italic',\n 'underline',\n 'strikethrough'\n // 'languageCharacters'\n ];\n\n return (\n <div className={classes.columnView}>\n {displayHeader && (\n <Typography variant=\"subtitle2\">\n <i>{type === 'domain' ? 'x' : 'y'}</i>\n -axis\n </Typography>\n )}\n {min.enabled && (\n <NumberTextFieldCustom\n className={classes.mediumTextField}\n label={min.label}\n value={minValue}\n min={-10000}\n max={maxValue - 0.01}\n variant=\"outlined\"\n disabled={disabled}\n onChange={(e, v) => onChange('min', v)}\n />\n )}\n {max.enabled && (\n <NumberTextFieldCustom\n className={classes.mediumTextField}\n label={max.label}\n value={maxValue}\n min={minValue + 0.01}\n max={10000}\n variant=\"outlined\"\n disabled={disabled}\n onChange={(e, v) => onChange('max', v)}\n />\n )}\n {axisLabel.enabled && (\n <InputContainer label={axisLabel.label} className={classes.mediumTextField}>\n <EditableHTML\n className={classes.axisLabel}\n onChange={value => onChange('axisLabel', value)}\n markup={label || ''}\n charactersLimit={5}\n activePlugins={activePlugins}\n />\n </InputContainer>\n )}\n </div>\n );\n};\n\nconst GridSetup = props => {\n const {\n classes,\n domain,\n displayedFields,\n gridValues = {},\n includeAxes,\n labelValues = {},\n onChange,\n range,\n size,\n sizeConstraints,\n standardGrid\n } = props;\n const gridProps = { min: 2, max: 41 };\n const {\n axisLabel,\n dimensionsEnabled,\n includeAxesEnabled,\n labelStep,\n min,\n max,\n standardGridEnabled,\n step\n } = displayedFields;\n const displayAxisType =\n min.enabled || max.enabled || axisLabel.enabled || step.enabled || labelStep.enabled;\n const gridConfigFields = { step, labelStep };\n const axisConfigFields = { min, max, axisLabel };\n\n const onIncludeAxes = includeAxes => {\n const noAxesConfig = type => {\n const axis = type === 'domain' ? domain : range;\n\n return {\n min: 1,\n max: axis.max < gridProps.min || axis.max > gridProps.max ? 16 : axis.max,\n step: 1,\n labelStep: 0\n };\n };\n\n const updatedRange = {\n ...range,\n ...(includeAxes ? { labelStep: 1 } : noAxesConfig('range'))\n };\n const updatedDomain = {\n ...domain,\n ...(includeAxes ? { labelStep: 1 } : noAxesConfig('domain'))\n };\n\n onChange({ includeAxes, range: updatedRange, domain: updatedDomain });\n };\n\n const onStandardGridChanged = value => {\n onChange({\n standardGrid: value,\n range: {\n ...domain,\n axisLabel: range.axisLabel\n },\n graph: {\n ...size,\n height: size.width\n }\n });\n };\n\n const onSizeChanged = (key, value) => {\n const graph = { ...size, [key]: value };\n\n if (standardGrid) {\n graph.height = value;\n }\n\n onChange({ graph });\n };\n\n const onDomainChanged = (key, value) => {\n domain[key] = value;\n\n if (standardGrid && key !== 'axisLabel') {\n range[key] = value;\n }\n\n onChange({ domain, range });\n };\n\n const onRangeChanged = (key, value) => {\n range[key] = value;\n\n onChange({ range });\n };\n\n const axesConfig = (\n <React.Fragment>\n <div className={classes.rowView}>\n <AxisConfig\n classes={classes}\n displayedFields={axisConfigFields}\n displayHeader={displayAxisType}\n type=\"domain\"\n minValue={domain.min}\n maxValue={domain.max}\n label={domain.axisLabel}\n includeAxes={includeAxes}\n onChange={onDomainChanged}\n />\n <AxisConfig\n classes={classes}\n displayedFields={axisConfigFields}\n displayHeader={displayAxisType}\n type=\"range\"\n minValue={range.min}\n maxValue={range.max}\n label={range.axisLabel}\n disabled={standardGrid}\n includeAxes={includeAxes}\n onChange={onRangeChanged}\n />\n </div>\n {(min.enabled || max.enabled) && (\n <Typography className={classes.text}>\n If you want the axis to be visible, use a zero or negative Min Value, and a positive Max\n Value\n </Typography>\n )}\n {(step.enabled || labelStep.enabled) && (\n <div className={classes.rowView}>\n <GridConfig\n classes={classes}\n displayedFields={gridConfigFields}\n gridValue={domain.step}\n labelValue={domain.labelStep}\n gridValues={gridValues.domain || []}\n labelValues={labelValues.domain || []}\n onChange={onDomainChanged}\n />\n <GridConfig\n classes={classes}\n disabled={standardGrid}\n displayedFields={gridConfigFields}\n gridValue={range.step}\n labelValue={range.labelStep}\n gridValues={gridValues.range || []}\n labelValues={labelValues.range || []}\n onChange={onRangeChanged}\n />\n </div>\n )}\n {labelStep.enabled && (\n <Typography className={classes.text}>\n For unnumbered gridlines, enter a label interval of 0\n </Typography>\n )}\n </React.Fragment>\n );\n\n const gridlinesConfig = max.enabled ? (\n <div className={classes.columnView}>\n <NumberTextFieldCustom\n className={classes.largeTextField}\n label=\"Number of Horizontal Gridlines\"\n value={domain.max}\n min={!includeAxes && gridProps.min}\n max={!includeAxes && gridProps.max}\n variant=\"outlined\"\n onChange={(e, v) => onDomainChanged('max', v)}\n />\n <NumberTextFieldCustom\n className={classes.largeTextField}\n label=\"Number of Vertical Gridlines\"\n value={range.max}\n min={!includeAxes && gridProps.min}\n max={!includeAxes && gridProps.max}\n variant=\"outlined\"\n disabled={standardGrid}\n onChange={(e, v) => onRangeChanged('max', v)}\n />\n </div>\n ) : null;\n\n return (\n <div className={classes.wrapper}>\n <ExpansionPanel>\n <ExpansionPanelSummary expandIcon={<ExpandMoreIcon />}>\n <Typography variant=\"subtitle1\">Customize Grid Setup</Typography>\n </ExpansionPanelSummary>\n <ExpansionPanelDetails>\n <div className={classes.content}>\n {includeAxesEnabled && (\n <Toggle\n label=\"Include axes and labels?\"\n toggle={onIncludeAxes}\n checked={includeAxes}\n />\n )}\n {standardGridEnabled && (\n <Toggle\n label=\"Constrain to standard coordinate grid?\"\n toggle={onStandardGridChanged}\n checked={standardGrid}\n />\n )}\n {includeAxes ? axesConfig : gridlinesConfig}\n {dimensionsEnabled && (\n <div className={classes.dimensions}>\n <div>\n <Typography>Dimensions(px)</Typography>\n <Typography className={classes.disabled}>\n Min {sizeConstraints.min}, Max {sizeConstraints.max}\n </Typography>\n </div>\n <NumberTextFieldCustom\n className={classes.textField}\n label=\"Width\"\n value={size.width}\n min={sizeConstraints.min}\n max={sizeConstraints.max}\n step={sizeConstraints.step}\n variant=\"outlined\"\n onChange={(e, v) => onSizeChanged('width', v)}\n />\n <NumberTextFieldCustom\n className={classes.textField}\n label=\"Height\"\n value={size.height}\n min={sizeConstraints.min}\n max={sizeConstraints.max}\n step={sizeConstraints.step}\n variant=\"outlined\"\n disabled={standardGrid}\n onChange={(e, v) => onSizeChanged('height', v)}\n />\n </div>\n )}\n </div>\n </ExpansionPanelDetails>\n </ExpansionPanel>\n </div>\n );\n};\n\nGridSetup.propTypes = {\n classes: PropTypes.object,\n domain: PropTypes.object,\n displayedFields: PropTypes.object,\n gridValues: PropTypes.object,\n includeAxes: PropTypes.bool,\n labelValues: PropTypes.object,\n onChange: PropTypes.function,\n range: PropTypes.object,\n size: PropTypes.object,\n sizeConstraints: PropTypes.object,\n standardGrid: PropTypes.bool\n};\n\nconst styles = theme => ({\n wrapper: {\n width: '450px'\n },\n content: {\n display: 'flex',\n flexDirection: 'column',\n width: '100%'\n },\n columnView: {\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center'\n },\n rowView: {\n display: 'flex',\n justifyContent: 'space-around',\n alignItems: 'center'\n },\n textField: {\n width: '130px',\n margin: `${theme.spacing.unit}px ${theme.spacing.unit / 2}px`\n },\n mediumTextField: {\n width: '160px',\n margin: `${theme.spacing.unit}px ${theme.spacing.unit / 2}px`\n },\n largeTextField: {\n width: '230px',\n margin: `${theme.spacing.unit}px ${theme.spacing.unit / 2}px`\n },\n text: {\n fontStyle: 'italic',\n margin: `${theme.spacing.unit}px 0`\n },\n dimensions: {\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center'\n },\n disabled: {\n color: color.disabled()\n },\n axisLabel: {\n paddingTop: theme.spacing.unit * 2\n }\n});\n\nexport default withStyles(styles)(GridSetup);\n"],"mappings":"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"}
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "publishConfig": {
4
4
  "access": "public"
5
5
  },
6
- "version": "2.4.3-next.350+b185c466",
6
+ "version": "2.4.3-next.352+ab342faa",
7
7
  "description": "Graphing components",
8
8
  "keywords": [
9
9
  "react",
@@ -43,6 +43,6 @@
43
43
  "peerDependencies": {
44
44
  "react": "^16.8.1"
45
45
  },
46
- "gitHead": "b185c466fab76384eca91a7edc4d9f823cca6638",
46
+ "gitHead": "ab342faa483f7feb92c134edfe2205ab219d7fcb",
47
47
  "scripts": {}
48
48
  }
@@ -11,34 +11,59 @@ import { NumberTextFieldCustom, Toggle } from '@pie-lib/config-ui';
11
11
  import EditableHTML from '@pie-lib/editable-html';
12
12
 
13
13
  const GridConfig = props => {
14
- const { classes, disabled, labelValue, labelValues, gridValue, gridValues, onChange } = props;
14
+ const {
15
+ classes,
16
+ disabled,
17
+ displayedFields,
18
+ labelValue,
19
+ labelValues,
20
+ gridValue,
21
+ gridValues,
22
+ onChange
23
+ } = props;
24
+ const { labelStep, step } = displayedFields;
15
25
 
16
26
  return (
17
27
  <div className={classes.columnView}>
18
- <NumberTextFieldCustom
19
- className={classes.mediumTextField}
20
- label="Grid Interval"
21
- value={gridValue}
22
- customValues={gridValues}
23
- variant="outlined"
24
- disabled={disabled}
25
- onChange={(e, v) => onChange('step', v)}
26
- />
27
- <NumberTextFieldCustom
28
- className={classes.mediumTextField}
29
- label="Label Interval"
30
- value={labelValue}
31
- customValues={labelValues}
32
- variant="outlined"
33
- disabled={disabled}
34
- onChange={(e, v) => onChange('labelStep', v)}
35
- />
28
+ {step.enabled && (
29
+ <NumberTextFieldCustom
30
+ className={classes.mediumTextField}
31
+ label={step.label}
32
+ value={gridValue}
33
+ customValues={gridValues}
34
+ variant="outlined"
35
+ disabled={disabled}
36
+ onChange={(e, v) => onChange('step', v)}
37
+ />
38
+ )}
39
+ {labelStep.enabled && (
40
+ <NumberTextFieldCustom
41
+ className={classes.mediumTextField}
42
+ label={labelStep.label}
43
+ value={labelValue}
44
+ customValues={labelValues}
45
+ variant="outlined"
46
+ disabled={disabled}
47
+ onChange={(e, v) => onChange('labelStep', v)}
48
+ />
49
+ )}
36
50
  </div>
37
51
  );
38
52
  };
39
53
 
40
54
  const AxisConfig = props => {
41
- const { classes, disabled, label, maxValue, minValue, onChange, type } = props;
55
+ const {
56
+ classes,
57
+ disabled,
58
+ displayedFields,
59
+ displayHeader,
60
+ label,
61
+ maxValue,
62
+ minValue,
63
+ onChange,
64
+ type
65
+ } = props;
66
+ const { axisLabel, min, max } = displayedFields;
42
67
  const activePlugins = [
43
68
  'bold',
44
69
  'italic',
@@ -49,39 +74,47 @@ const AxisConfig = props => {
49
74
 
50
75
  return (
51
76
  <div className={classes.columnView}>
52
- <Typography variant="subtitle2">
53
- <i>{type === 'domain' ? 'x' : 'y'}</i>
54
- -axis
55
- </Typography>
56
- <NumberTextFieldCustom
57
- className={classes.mediumTextField}
58
- label="Min Value"
59
- value={minValue}
60
- min={-10000}
61
- max={maxValue - 0.01}
62
- variant="outlined"
63
- disabled={disabled}
64
- onChange={(e, v) => onChange('min', v)}
65
- />
66
- <NumberTextFieldCustom
67
- className={classes.mediumTextField}
68
- label="Max Value"
69
- value={maxValue}
70
- min={minValue + 0.01}
71
- max={10000}
72
- variant="outlined"
73
- disabled={disabled}
74
- onChange={(e, v) => onChange('max', v)}
75
- />
76
- <InputContainer label="Label" className={classes.mediumTextField}>
77
- <EditableHTML
78
- className={classes.axisLabel}
79
- onChange={value => onChange('axisLabel', value)}
80
- markup={label || ''}
81
- charactersLimit={5}
82
- activePlugins={activePlugins}
77
+ {displayHeader && (
78
+ <Typography variant="subtitle2">
79
+ <i>{type === 'domain' ? 'x' : 'y'}</i>
80
+ -axis
81
+ </Typography>
82
+ )}
83
+ {min.enabled && (
84
+ <NumberTextFieldCustom
85
+ className={classes.mediumTextField}
86
+ label={min.label}
87
+ value={minValue}
88
+ min={-10000}
89
+ max={maxValue - 0.01}
90
+ variant="outlined"
91
+ disabled={disabled}
92
+ onChange={(e, v) => onChange('min', v)}
93
+ />
94
+ )}
95
+ {max.enabled && (
96
+ <NumberTextFieldCustom
97
+ className={classes.mediumTextField}
98
+ label={max.label}
99
+ value={maxValue}
100
+ min={minValue + 0.01}
101
+ max={10000}
102
+ variant="outlined"
103
+ disabled={disabled}
104
+ onChange={(e, v) => onChange('max', v)}
83
105
  />
84
- </InputContainer>
106
+ )}
107
+ {axisLabel.enabled && (
108
+ <InputContainer label={axisLabel.label} className={classes.mediumTextField}>
109
+ <EditableHTML
110
+ className={classes.axisLabel}
111
+ onChange={value => onChange('axisLabel', value)}
112
+ markup={label || ''}
113
+ charactersLimit={5}
114
+ activePlugins={activePlugins}
115
+ />
116
+ </InputContainer>
117
+ )}
85
118
  </div>
86
119
  );
87
120
  };
@@ -90,7 +123,7 @@ const GridSetup = props => {
90
123
  const {
91
124
  classes,
92
125
  domain,
93
- dimensionsEnabled,
126
+ displayedFields,
94
127
  gridValues = {},
95
128
  includeAxes,
96
129
  labelValues = {},
@@ -101,6 +134,20 @@ const GridSetup = props => {
101
134
  standardGrid
102
135
  } = props;
103
136
  const gridProps = { min: 2, max: 41 };
137
+ const {
138
+ axisLabel,
139
+ dimensionsEnabled,
140
+ includeAxesEnabled,
141
+ labelStep,
142
+ min,
143
+ max,
144
+ standardGridEnabled,
145
+ step
146
+ } = displayedFields;
147
+ const displayAxisType =
148
+ min.enabled || max.enabled || axisLabel.enabled || step.enabled || labelStep.enabled;
149
+ const gridConfigFields = { step, labelStep };
150
+ const axisConfigFields = { min, max, axisLabel };
104
151
 
105
152
  const onIncludeAxes = includeAxes => {
106
153
  const noAxesConfig = type => {
@@ -171,6 +218,8 @@ const GridSetup = props => {
171
218
  <div className={classes.rowView}>
172
219
  <AxisConfig
173
220
  classes={classes}
221
+ displayedFields={axisConfigFields}
222
+ displayHeader={displayAxisType}
174
223
  type="domain"
175
224
  minValue={domain.min}
176
225
  maxValue={domain.max}
@@ -180,6 +229,8 @@ const GridSetup = props => {
180
229
  />
181
230
  <AxisConfig
182
231
  classes={classes}
232
+ displayedFields={axisConfigFields}
233
+ displayHeader={displayAxisType}
183
234
  type="range"
184
235
  minValue={range.min}
185
236
  maxValue={range.max}
@@ -189,36 +240,44 @@ const GridSetup = props => {
189
240
  onChange={onRangeChanged}
190
241
  />
191
242
  </div>
192
- <Typography className={classes.text}>
193
- If you want the axis to be visible, use a zero or negative Min Value, and a positive Max
194
- Value
195
- </Typography>
196
- <div className={classes.rowView}>
197
- <GridConfig
198
- classes={classes}
199
- gridValue={domain.step}
200
- labelValue={domain.labelStep}
201
- gridValues={gridValues.domain || []}
202
- labelValues={labelValues.domain || []}
203
- onChange={onDomainChanged}
204
- />
205
- <GridConfig
206
- classes={classes}
207
- disabled={standardGrid}
208
- gridValue={range.step}
209
- labelValue={range.labelStep}
210
- gridValues={gridValues.range || []}
211
- labelValues={labelValues.range || []}
212
- onChange={onRangeChanged}
213
- />
214
- </div>
215
- <Typography className={classes.text}>
216
- For unnumbered gridlines, enter a label interval of 0
217
- </Typography>
243
+ {(min.enabled || max.enabled) && (
244
+ <Typography className={classes.text}>
245
+ If you want the axis to be visible, use a zero or negative Min Value, and a positive Max
246
+ Value
247
+ </Typography>
248
+ )}
249
+ {(step.enabled || labelStep.enabled) && (
250
+ <div className={classes.rowView}>
251
+ <GridConfig
252
+ classes={classes}
253
+ displayedFields={gridConfigFields}
254
+ gridValue={domain.step}
255
+ labelValue={domain.labelStep}
256
+ gridValues={gridValues.domain || []}
257
+ labelValues={labelValues.domain || []}
258
+ onChange={onDomainChanged}
259
+ />
260
+ <GridConfig
261
+ classes={classes}
262
+ disabled={standardGrid}
263
+ displayedFields={gridConfigFields}
264
+ gridValue={range.step}
265
+ labelValue={range.labelStep}
266
+ gridValues={gridValues.range || []}
267
+ labelValues={labelValues.range || []}
268
+ onChange={onRangeChanged}
269
+ />
270
+ </div>
271
+ )}
272
+ {labelStep.enabled && (
273
+ <Typography className={classes.text}>
274
+ For unnumbered gridlines, enter a label interval of 0
275
+ </Typography>
276
+ )}
218
277
  </React.Fragment>
219
278
  );
220
279
 
221
- const gridlinesConfig = (
280
+ const gridlinesConfig = max.enabled ? (
222
281
  <div className={classes.columnView}>
223
282
  <NumberTextFieldCustom
224
283
  className={classes.largeTextField}
@@ -240,7 +299,7 @@ const GridSetup = props => {
240
299
  onChange={(e, v) => onRangeChanged('max', v)}
241
300
  />
242
301
  </div>
243
- );
302
+ ) : null;
244
303
 
245
304
  return (
246
305
  <div className={classes.wrapper}>
@@ -250,12 +309,20 @@ const GridSetup = props => {
250
309
  </ExpansionPanelSummary>
251
310
  <ExpansionPanelDetails>
252
311
  <div className={classes.content}>
253
- <Toggle label="Include axes and labels?" toggle={onIncludeAxes} checked={includeAxes} />
254
- <Toggle
255
- label="Constrain to standard coordinate grid?"
256
- toggle={onStandardGridChanged}
257
- checked={standardGrid}
258
- />
312
+ {includeAxesEnabled && (
313
+ <Toggle
314
+ label="Include axes and labels?"
315
+ toggle={onIncludeAxes}
316
+ checked={includeAxes}
317
+ />
318
+ )}
319
+ {standardGridEnabled && (
320
+ <Toggle
321
+ label="Constrain to standard coordinate grid?"
322
+ toggle={onStandardGridChanged}
323
+ checked={standardGrid}
324
+ />
325
+ )}
259
326
  {includeAxes ? axesConfig : gridlinesConfig}
260
327
  {dimensionsEnabled && (
261
328
  <div className={classes.dimensions}>
@@ -298,7 +365,7 @@ const GridSetup = props => {
298
365
  GridSetup.propTypes = {
299
366
  classes: PropTypes.object,
300
367
  domain: PropTypes.object,
301
- dimensionsEnabled: PropTypes.object,
368
+ displayedFields: PropTypes.object,
302
369
  gridValues: PropTypes.object,
303
370
  includeAxes: PropTypes.bool,
304
371
  labelValues: PropTypes.object,