@pie-lib/charting 4.5.11-next.408 → 4.5.11-next.423
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/chart-setup.js +201 -0
- package/lib/chart-setup.js.map +1 -0
- package/lib/chart-type.js +68 -0
- package/lib/chart-type.js.map +1 -0
- package/lib/index.js +16 -0
- package/lib/index.js.map +1 -1
- package/package.json +3 -3
- package/src/chart-setup.jsx +159 -0
- package/src/chart-type.js +41 -0
- package/src/index.js +4 -1
|
@@ -0,0 +1,201 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports["default"] = void 0;
|
|
7
|
+
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
|
|
10
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
11
|
+
|
|
12
|
+
var _renderUi = require("@pie-lib/render-ui");
|
|
13
|
+
|
|
14
|
+
var _styles = require("@material-ui/core/styles");
|
|
15
|
+
|
|
16
|
+
var _Typography = _interopRequireDefault(require("@material-ui/core/Typography"));
|
|
17
|
+
|
|
18
|
+
var _chartType = _interopRequireDefault(require("./chart-type"));
|
|
19
|
+
|
|
20
|
+
var _configUi = require("@pie-lib/config-ui");
|
|
21
|
+
|
|
22
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
23
|
+
|
|
24
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
25
|
+
|
|
26
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
27
|
+
|
|
28
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
29
|
+
|
|
30
|
+
var ConfigureChartPanel = function ConfigureChartPanel(props) {
|
|
31
|
+
var classes = props.classes,
|
|
32
|
+
model = props.model,
|
|
33
|
+
onChange = props.onChange;
|
|
34
|
+
var range = model.range;
|
|
35
|
+
var size = model.graph;
|
|
36
|
+
|
|
37
|
+
var onSizeChanged = function onSizeChanged(key, value) {
|
|
38
|
+
var graph = _objectSpread(_objectSpread({}, size), {}, _defineProperty({}, key, value));
|
|
39
|
+
|
|
40
|
+
onChange(_objectSpread(_objectSpread({}, model), {}, {
|
|
41
|
+
graph: graph
|
|
42
|
+
}));
|
|
43
|
+
};
|
|
44
|
+
|
|
45
|
+
var onRangeChanged = function onRangeChanged(key, value) {
|
|
46
|
+
var parsedValue = parseInt(value);
|
|
47
|
+
range[key] = parsedValue;
|
|
48
|
+
onChange(_objectSpread(_objectSpread({}, model), {}, {
|
|
49
|
+
range: range
|
|
50
|
+
}));
|
|
51
|
+
};
|
|
52
|
+
|
|
53
|
+
var onChartTypeChange = function onChartTypeChange(chartType) {
|
|
54
|
+
return onChange(_objectSpread(_objectSpread({}, model), {}, {
|
|
55
|
+
chartType: chartType
|
|
56
|
+
}));
|
|
57
|
+
};
|
|
58
|
+
|
|
59
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
60
|
+
className: classes.wrapper
|
|
61
|
+
}, /*#__PURE__*/_react["default"].createElement(_Typography["default"], {
|
|
62
|
+
variant: 'subtitle1'
|
|
63
|
+
}, "Configure Chart"), /*#__PURE__*/_react["default"].createElement("div", {
|
|
64
|
+
className: classes.content
|
|
65
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
66
|
+
className: classes.rowView
|
|
67
|
+
}, /*#__PURE__*/_react["default"].createElement(_chartType["default"], {
|
|
68
|
+
value: model.chartType,
|
|
69
|
+
onChange: function onChange(e) {
|
|
70
|
+
return onChartTypeChange(e.target.value);
|
|
71
|
+
}
|
|
72
|
+
}), /*#__PURE__*/_react["default"].createElement(_configUi.NumberTextFieldCustom, {
|
|
73
|
+
className: classes.mediumTextField,
|
|
74
|
+
label: "Max Value",
|
|
75
|
+
value: range.max,
|
|
76
|
+
min: 0,
|
|
77
|
+
max: 10000,
|
|
78
|
+
variant: "outlined",
|
|
79
|
+
onChange: function onChange(e, v) {
|
|
80
|
+
return onRangeChanged('max', v);
|
|
81
|
+
}
|
|
82
|
+
})), /*#__PURE__*/_react["default"].createElement("div", {
|
|
83
|
+
className: classes.rowView
|
|
84
|
+
}, /*#__PURE__*/_react["default"].createElement(_configUi.NumberTextFieldCustom, {
|
|
85
|
+
className: classes.mediumTextField,
|
|
86
|
+
label: "Grid Interval",
|
|
87
|
+
value: range.step,
|
|
88
|
+
min: 0,
|
|
89
|
+
max: 10000,
|
|
90
|
+
variant: "outlined",
|
|
91
|
+
onChange: function onChange(e, v) {
|
|
92
|
+
return onRangeChanged('step', v);
|
|
93
|
+
}
|
|
94
|
+
}), /*#__PURE__*/_react["default"].createElement(_configUi.NumberTextFieldCustom, {
|
|
95
|
+
className: classes.mediumTextField,
|
|
96
|
+
label: 'Label Interval',
|
|
97
|
+
value: range.labelStep,
|
|
98
|
+
min: 0,
|
|
99
|
+
max: 10000,
|
|
100
|
+
variant: 'outlined',
|
|
101
|
+
onChange: function onChange(e, v) {
|
|
102
|
+
return onRangeChanged('labelStep', v);
|
|
103
|
+
}
|
|
104
|
+
})), /*#__PURE__*/_react["default"].createElement("div", {
|
|
105
|
+
className: classes.dimensions
|
|
106
|
+
}, /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement(_Typography["default"], null, "Dimensions(px)")), /*#__PURE__*/_react["default"].createElement("div", {
|
|
107
|
+
className: classes.columnView
|
|
108
|
+
}, /*#__PURE__*/_react["default"].createElement(_configUi.NumberTextFieldCustom, {
|
|
109
|
+
className: classes.textField,
|
|
110
|
+
label: 'Width',
|
|
111
|
+
value: size.width,
|
|
112
|
+
min: 50,
|
|
113
|
+
max: 700,
|
|
114
|
+
variant: 'outlined',
|
|
115
|
+
onChange: function onChange(e, v) {
|
|
116
|
+
return onSizeChanged('width', v);
|
|
117
|
+
}
|
|
118
|
+
}), /*#__PURE__*/_react["default"].createElement(_Typography["default"], {
|
|
119
|
+
className: classes.disabled
|
|
120
|
+
}, "Min 50, Max 700")), /*#__PURE__*/_react["default"].createElement("div", {
|
|
121
|
+
className: classes.columnView
|
|
122
|
+
}, /*#__PURE__*/_react["default"].createElement(_configUi.NumberTextFieldCustom, {
|
|
123
|
+
className: classes.textField,
|
|
124
|
+
label: 'Height',
|
|
125
|
+
value: size.height,
|
|
126
|
+
min: 400,
|
|
127
|
+
max: 700,
|
|
128
|
+
variant: 'outlined',
|
|
129
|
+
onChange: function onChange(e, v) {
|
|
130
|
+
return onSizeChanged('height', v);
|
|
131
|
+
}
|
|
132
|
+
}), /*#__PURE__*/_react["default"].createElement(_Typography["default"], {
|
|
133
|
+
className: classes.disabled
|
|
134
|
+
}, "Min 400, Max 700")))));
|
|
135
|
+
};
|
|
136
|
+
|
|
137
|
+
ConfigureChartPanel.propTypes = {
|
|
138
|
+
classes: _propTypes["default"].object,
|
|
139
|
+
sizeConstraints: _propTypes["default"].object,
|
|
140
|
+
domain: _propTypes["default"].object,
|
|
141
|
+
gridIntervalValues: _propTypes["default"].object,
|
|
142
|
+
includeAxes: _propTypes["default"].bool,
|
|
143
|
+
labelIntervalValues: _propTypes["default"].object,
|
|
144
|
+
onChange: _propTypes["default"]["function"],
|
|
145
|
+
range: _propTypes["default"].object,
|
|
146
|
+
size: _propTypes["default"].object
|
|
147
|
+
};
|
|
148
|
+
|
|
149
|
+
var styles = function styles(theme) {
|
|
150
|
+
return {
|
|
151
|
+
wrapper: {
|
|
152
|
+
width: '450px'
|
|
153
|
+
},
|
|
154
|
+
content: {
|
|
155
|
+
display: 'flex',
|
|
156
|
+
flexDirection: 'column',
|
|
157
|
+
width: '100%',
|
|
158
|
+
marginTop: '24px'
|
|
159
|
+
},
|
|
160
|
+
columnView: {
|
|
161
|
+
display: 'flex',
|
|
162
|
+
flexDirection: 'column',
|
|
163
|
+
alignItems: 'center'
|
|
164
|
+
},
|
|
165
|
+
rowView: {
|
|
166
|
+
display: 'flex',
|
|
167
|
+
justifyContent: 'space-around',
|
|
168
|
+
alignItems: 'center'
|
|
169
|
+
},
|
|
170
|
+
textField: {
|
|
171
|
+
width: '130px',
|
|
172
|
+
margin: "".concat(theme.spacing.unit, "px ").concat(theme.spacing.unit / 2, "px")
|
|
173
|
+
},
|
|
174
|
+
mediumTextField: {
|
|
175
|
+
width: '160px',
|
|
176
|
+
margin: "".concat(theme.spacing.unit, "px ").concat(theme.spacing.unit / 2, "px")
|
|
177
|
+
},
|
|
178
|
+
largeTextField: {
|
|
179
|
+
width: '230px',
|
|
180
|
+
margin: "".concat(theme.spacing.unit, "px ").concat(theme.spacing.unit / 2, "px")
|
|
181
|
+
},
|
|
182
|
+
text: {
|
|
183
|
+
fontStyle: 'italic',
|
|
184
|
+
margin: "".concat(theme.spacing.unit, "px 0")
|
|
185
|
+
},
|
|
186
|
+
dimensions: {
|
|
187
|
+
display: 'flex',
|
|
188
|
+
justifyContent: 'space-between',
|
|
189
|
+
alignItems: 'center',
|
|
190
|
+
margin: '24px 0px'
|
|
191
|
+
},
|
|
192
|
+
disabled: {
|
|
193
|
+
color: _renderUi.color.disabled()
|
|
194
|
+
}
|
|
195
|
+
};
|
|
196
|
+
};
|
|
197
|
+
|
|
198
|
+
var _default = (0, _styles.withStyles)(styles)(ConfigureChartPanel);
|
|
199
|
+
|
|
200
|
+
exports["default"] = _default;
|
|
201
|
+
//# sourceMappingURL=chart-setup.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chart-setup.js","names":["ConfigureChartPanel","props","classes","model","onChange","range","size","graph","onSizeChanged","key","value","onRangeChanged","parsedValue","parseInt","onChartTypeChange","chartType","wrapper","content","rowView","e","target","mediumTextField","max","v","step","labelStep","dimensions","columnView","textField","width","disabled","height","propTypes","PropTypes","object","sizeConstraints","domain","gridIntervalValues","includeAxes","bool","labelIntervalValues","styles","theme","display","flexDirection","marginTop","alignItems","justifyContent","margin","spacing","unit","largeTextField","text","fontStyle","color","withStyles"],"sources":["../src/chart-setup.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { color } from '@pie-lib/render-ui';\nimport { withStyles } from '@material-ui/core/styles';\nimport Typography from '@material-ui/core/Typography';\nimport ChartType from './chart-type';\nimport { NumberTextFieldCustom } from '@pie-lib/config-ui';\n\nconst ConfigureChartPanel = props => {\n const { classes, model, onChange } = props;\n const { range } = model;\n const size = model.graph;\n\n const onSizeChanged = (key, value) => {\n const graph = { ...size, [key]: value };\n\n onChange({ ...model, graph });\n };\n\n const onRangeChanged = (key, value) => {\n const parsedValue = parseInt(value);\n\n range[key] = parsedValue;\n\n onChange({ ...model, range });\n };\n\n const onChartTypeChange = chartType => onChange({ ...model, chartType });\n\n return (\n <div className={classes.wrapper}>\n <Typography variant={'subtitle1'}>Configure Chart</Typography>\n <div className={classes.content}>\n <div className={classes.rowView}>\n <ChartType value={model.chartType} onChange={e => onChartTypeChange(e.target.value)} />\n <NumberTextFieldCustom\n className={classes.mediumTextField}\n label=\"Max Value\"\n value={range.max}\n min={0}\n max={10000}\n variant=\"outlined\"\n onChange={(e, v) => onRangeChanged('max', v)}\n />\n </div>\n <div className={classes.rowView}>\n <NumberTextFieldCustom\n className={classes.mediumTextField}\n label=\"Grid Interval\"\n value={range.step}\n min={0}\n max={10000}\n variant=\"outlined\"\n onChange={(e, v) => onRangeChanged('step', v)}\n />\n <NumberTextFieldCustom\n className={classes.mediumTextField}\n label={'Label Interval'}\n value={range.labelStep}\n min={0}\n max={10000}\n variant={'outlined'}\n onChange={(e, v) => onRangeChanged('labelStep', v)}\n />\n </div>\n <div className={classes.dimensions}>\n <div>\n <Typography>Dimensions(px)</Typography>\n </div>\n <div className={classes.columnView}>\n <NumberTextFieldCustom\n className={classes.textField}\n label={'Width'}\n value={size.width}\n min={50}\n max={700}\n variant={'outlined'}\n onChange={(e, v) => onSizeChanged('width', v)}\n />\n <Typography className={classes.disabled}>Min 50, Max 700</Typography>\n </div>\n <div className={classes.columnView}>\n <NumberTextFieldCustom\n className={classes.textField}\n label={'Height'}\n value={size.height}\n min={400}\n max={700}\n variant={'outlined'}\n onChange={(e, v) => onSizeChanged('height', v)}\n />\n <Typography className={classes.disabled}>Min 400, Max 700</Typography>\n </div>\n </div>\n </div>\n </div>\n );\n};\n\nConfigureChartPanel.propTypes = {\n classes: PropTypes.object,\n sizeConstraints: PropTypes.object,\n domain: PropTypes.object,\n gridIntervalValues: PropTypes.object,\n includeAxes: PropTypes.bool,\n labelIntervalValues: PropTypes.object,\n onChange: PropTypes.function,\n range: PropTypes.object,\n size: PropTypes.object\n};\n\nconst styles = theme => ({\n wrapper: {\n width: '450px'\n },\n content: {\n display: 'flex',\n flexDirection: 'column',\n width: '100%',\n marginTop: '24px'\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 margin: '24px 0px'\n },\n disabled: {\n color: color.disabled()\n }\n});\n\nexport default withStyles(styles)(ConfigureChartPanel);\n"],"mappings":"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"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports["default"] = void 0;
|
|
7
|
+
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
|
|
10
|
+
var _styles = require("@material-ui/core/styles");
|
|
11
|
+
|
|
12
|
+
var _MenuItem = _interopRequireDefault(require("@material-ui/core/MenuItem"));
|
|
13
|
+
|
|
14
|
+
var _FormControl = _interopRequireDefault(require("@material-ui/core/FormControl"));
|
|
15
|
+
|
|
16
|
+
var _InputLabel = _interopRequireDefault(require("@material-ui/core/InputLabel"));
|
|
17
|
+
|
|
18
|
+
var _Select = _interopRequireDefault(require("@material-ui/core/Select"));
|
|
19
|
+
|
|
20
|
+
var _OutlinedInput = _interopRequireDefault(require("@material-ui/core/OutlinedInput"));
|
|
21
|
+
|
|
22
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
23
|
+
|
|
24
|
+
var ChartType = (0, _styles.withStyles)(function (theme) {
|
|
25
|
+
return {
|
|
26
|
+
chartType: {
|
|
27
|
+
width: '160px'
|
|
28
|
+
},
|
|
29
|
+
chartTypeLabel: {
|
|
30
|
+
backgroundColor: 'transparent'
|
|
31
|
+
}
|
|
32
|
+
};
|
|
33
|
+
})(function (_ref) {
|
|
34
|
+
var onChange = _ref.onChange,
|
|
35
|
+
value = _ref.value,
|
|
36
|
+
classes = _ref.classes;
|
|
37
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
38
|
+
className: classes.chartType
|
|
39
|
+
}, /*#__PURE__*/_react["default"].createElement(_FormControl["default"], {
|
|
40
|
+
variant: 'outlined',
|
|
41
|
+
className: classes.chartType
|
|
42
|
+
}, /*#__PURE__*/_react["default"].createElement(_InputLabel["default"], {
|
|
43
|
+
htmlFor: "type-helper",
|
|
44
|
+
className: classes.chartTypeLabel
|
|
45
|
+
}, "ChartType"), /*#__PURE__*/_react["default"].createElement(_Select["default"], {
|
|
46
|
+
value: value,
|
|
47
|
+
onChange: onChange,
|
|
48
|
+
input: /*#__PURE__*/_react["default"].createElement(_OutlinedInput["default"], {
|
|
49
|
+
name: "type",
|
|
50
|
+
id: "type-helper"
|
|
51
|
+
})
|
|
52
|
+
}, /*#__PURE__*/_react["default"].createElement(_MenuItem["default"], {
|
|
53
|
+
value: 'histogram'
|
|
54
|
+
}, "Histogram"), /*#__PURE__*/_react["default"].createElement(_MenuItem["default"], {
|
|
55
|
+
value: 'bar'
|
|
56
|
+
}, "Bar"), /*#__PURE__*/_react["default"].createElement(_MenuItem["default"], {
|
|
57
|
+
value: 'lineDot'
|
|
58
|
+
}, "Line Dot"), /*#__PURE__*/_react["default"].createElement(_MenuItem["default"], {
|
|
59
|
+
value: 'lineCross'
|
|
60
|
+
}, "Line Cross"), /*#__PURE__*/_react["default"].createElement(_MenuItem["default"], {
|
|
61
|
+
value: 'dotPlot'
|
|
62
|
+
}, "Dot Plot"), /*#__PURE__*/_react["default"].createElement(_MenuItem["default"], {
|
|
63
|
+
value: 'linePlot'
|
|
64
|
+
}, "Line Plot"))));
|
|
65
|
+
});
|
|
66
|
+
var _default = ChartType;
|
|
67
|
+
exports["default"] = _default;
|
|
68
|
+
//# sourceMappingURL=chart-type.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chart-type.js","names":["ChartType","withStyles","theme","chartType","width","chartTypeLabel","backgroundColor","onChange","value","classes"],"sources":["../src/chart-type.js"],"sourcesContent":["import React from 'react';\nimport { withStyles } from '@material-ui/core/styles';\nimport MenuItem from '@material-ui/core/MenuItem';\nimport FormControl from '@material-ui/core/FormControl';\nimport InputLabel from '@material-ui/core/InputLabel';\nimport Select from '@material-ui/core/Select';\nimport OutlinedInput from '@material-ui/core/OutlinedInput';\n\nconst ChartType = withStyles(theme => ({\n chartType: {\n width: '160px'\n },\n chartTypeLabel: {\n backgroundColor: 'transparent'\n }\n}))(({ onChange, value, classes }) => {\n return (\n <div className={classes.chartType}>\n <FormControl variant={'outlined'} className={classes.chartType}>\n <InputLabel htmlFor=\"type-helper\" className={classes.chartTypeLabel}>\n ChartType\n </InputLabel>\n\n <Select\n value={value}\n onChange={onChange}\n input={<OutlinedInput name=\"type\" id=\"type-helper\" />}\n >\n <MenuItem value={'histogram'}>Histogram</MenuItem>\n <MenuItem value={'bar'}>Bar</MenuItem>\n <MenuItem value={'lineDot'}>Line Dot</MenuItem>\n <MenuItem value={'lineCross'}>Line Cross</MenuItem>\n <MenuItem value={'dotPlot'}>Dot Plot</MenuItem>\n <MenuItem value={'linePlot'}>Line Plot</MenuItem>\n </Select>\n </FormControl>\n </div>\n );\n});\n\nexport default ChartType;\n"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;AAEA,IAAMA,SAAS,GAAG,IAAAC,kBAAA,EAAW,UAAAC,KAAK;EAAA,OAAK;IACrCC,SAAS,EAAE;MACTC,KAAK,EAAE;IADE,CAD0B;IAIrCC,cAAc,EAAE;MACdC,eAAe,EAAE;IADH;EAJqB,CAAL;AAAA,CAAhB,EAOd,gBAAkC;EAAA,IAA/BC,QAA+B,QAA/BA,QAA+B;EAAA,IAArBC,KAAqB,QAArBA,KAAqB;EAAA,IAAdC,OAAc,QAAdA,OAAc;EACpC,oBACE;IAAK,SAAS,EAAEA,OAAO,CAACN;EAAxB,gBACE,gCAAC,uBAAD;IAAa,OAAO,EAAE,UAAtB;IAAkC,SAAS,EAAEM,OAAO,CAACN;EAArD,gBACE,gCAAC,sBAAD;IAAY,OAAO,EAAC,aAApB;IAAkC,SAAS,EAAEM,OAAO,CAACJ;EAArD,eADF,eAKE,gCAAC,kBAAD;IACE,KAAK,EAAEG,KADT;IAEE,QAAQ,EAAED,QAFZ;IAGE,KAAK,eAAE,gCAAC,yBAAD;MAAe,IAAI,EAAC,MAApB;MAA2B,EAAE,EAAC;IAA9B;EAHT,gBAKE,gCAAC,oBAAD;IAAU,KAAK,EAAE;EAAjB,eALF,eAME,gCAAC,oBAAD;IAAU,KAAK,EAAE;EAAjB,SANF,eAOE,gCAAC,oBAAD;IAAU,KAAK,EAAE;EAAjB,cAPF,eAQE,gCAAC,oBAAD;IAAU,KAAK,EAAE;EAAjB,gBARF,eASE,gCAAC,oBAAD;IAAU,KAAK,EAAE;EAAjB,cATF,eAUE,gCAAC,oBAAD;IAAU,KAAK,EAAE;EAAjB,eAVF,CALF,CADF,CADF;AAsBD,CA9BiB,CAAlB;eAgCeP,S"}
|
package/lib/index.js
CHANGED
|
@@ -9,6 +9,18 @@ Object.defineProperty(exports, "Chart", {
|
|
|
9
9
|
return _chart["default"];
|
|
10
10
|
}
|
|
11
11
|
});
|
|
12
|
+
Object.defineProperty(exports, "ChartType", {
|
|
13
|
+
enumerable: true,
|
|
14
|
+
get: function get() {
|
|
15
|
+
return _chartType["default"];
|
|
16
|
+
}
|
|
17
|
+
});
|
|
18
|
+
Object.defineProperty(exports, "ConfigureChartPanel", {
|
|
19
|
+
enumerable: true,
|
|
20
|
+
get: function get() {
|
|
21
|
+
return _chartSetup["default"];
|
|
22
|
+
}
|
|
23
|
+
});
|
|
12
24
|
Object.defineProperty(exports, "chartTypes", {
|
|
13
25
|
enumerable: true,
|
|
14
26
|
get: function get() {
|
|
@@ -20,5 +32,9 @@ var _chart = _interopRequireDefault(require("./chart"));
|
|
|
20
32
|
|
|
21
33
|
var _chartTypes = _interopRequireDefault(require("./chart-types"));
|
|
22
34
|
|
|
35
|
+
var _chartSetup = _interopRequireDefault(require("./chart-setup"));
|
|
36
|
+
|
|
37
|
+
var _chartType = _interopRequireDefault(require("./chart-type"));
|
|
38
|
+
|
|
23
39
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
24
40
|
//# sourceMappingURL=index.js.map
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":[],"sources":["../src/index.js"],"sourcesContent":["import Chart from './chart';\nimport chartTypes from './chart-types';\nexport { Chart, chartTypes };\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../src/index.js"],"sourcesContent":["import Chart from './chart';\nimport chartTypes from './chart-types';\nimport ConfigureChartPanel from './chart-setup';\nimport ChartType from './chart-type';\n\nexport { Chart, chartTypes, ChartType, ConfigureChartPanel };\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA"}
|
package/package.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"publishConfig": {
|
|
4
4
|
"access": "public"
|
|
5
5
|
},
|
|
6
|
-
"version": "4.5.11-next.
|
|
6
|
+
"version": "4.5.11-next.423+2ed23200",
|
|
7
7
|
"description": "charting",
|
|
8
8
|
"keywords": [
|
|
9
9
|
"react",
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
"dependencies": {
|
|
20
20
|
"@mapbox/point-geometry": "^0.1.0",
|
|
21
21
|
"@material-ui/core": "^3.8.3",
|
|
22
|
-
"@pie-lib/plot": "^2.
|
|
22
|
+
"@pie-lib/plot": "^2.2.0",
|
|
23
23
|
"@vx/axis": "^0.0.183",
|
|
24
24
|
"@vx/event": "^0.0.182",
|
|
25
25
|
"@vx/grid": "^0.0.183",
|
|
@@ -43,5 +43,5 @@
|
|
|
43
43
|
"peerDependencies": {
|
|
44
44
|
"react": "^16.8.1"
|
|
45
45
|
},
|
|
46
|
-
"gitHead": "
|
|
46
|
+
"gitHead": "2ed23200f4b01d32a902059e7f5ab81a45372254"
|
|
47
47
|
}
|
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import PropTypes from 'prop-types';
|
|
3
|
+
import { color } from '@pie-lib/render-ui';
|
|
4
|
+
import { withStyles } from '@material-ui/core/styles';
|
|
5
|
+
import Typography from '@material-ui/core/Typography';
|
|
6
|
+
import ChartType from './chart-type';
|
|
7
|
+
import { NumberTextFieldCustom } from '@pie-lib/config-ui';
|
|
8
|
+
|
|
9
|
+
const ConfigureChartPanel = props => {
|
|
10
|
+
const { classes, model, onChange } = props;
|
|
11
|
+
const { range } = model;
|
|
12
|
+
const size = model.graph;
|
|
13
|
+
|
|
14
|
+
const onSizeChanged = (key, value) => {
|
|
15
|
+
const graph = { ...size, [key]: value };
|
|
16
|
+
|
|
17
|
+
onChange({ ...model, graph });
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
const onRangeChanged = (key, value) => {
|
|
21
|
+
const parsedValue = parseInt(value);
|
|
22
|
+
|
|
23
|
+
range[key] = parsedValue;
|
|
24
|
+
|
|
25
|
+
onChange({ ...model, range });
|
|
26
|
+
};
|
|
27
|
+
|
|
28
|
+
const onChartTypeChange = chartType => onChange({ ...model, chartType });
|
|
29
|
+
|
|
30
|
+
return (
|
|
31
|
+
<div className={classes.wrapper}>
|
|
32
|
+
<Typography variant={'subtitle1'}>Configure Chart</Typography>
|
|
33
|
+
<div className={classes.content}>
|
|
34
|
+
<div className={classes.rowView}>
|
|
35
|
+
<ChartType value={model.chartType} onChange={e => onChartTypeChange(e.target.value)} />
|
|
36
|
+
<NumberTextFieldCustom
|
|
37
|
+
className={classes.mediumTextField}
|
|
38
|
+
label="Max Value"
|
|
39
|
+
value={range.max}
|
|
40
|
+
min={0}
|
|
41
|
+
max={10000}
|
|
42
|
+
variant="outlined"
|
|
43
|
+
onChange={(e, v) => onRangeChanged('max', v)}
|
|
44
|
+
/>
|
|
45
|
+
</div>
|
|
46
|
+
<div className={classes.rowView}>
|
|
47
|
+
<NumberTextFieldCustom
|
|
48
|
+
className={classes.mediumTextField}
|
|
49
|
+
label="Grid Interval"
|
|
50
|
+
value={range.step}
|
|
51
|
+
min={0}
|
|
52
|
+
max={10000}
|
|
53
|
+
variant="outlined"
|
|
54
|
+
onChange={(e, v) => onRangeChanged('step', v)}
|
|
55
|
+
/>
|
|
56
|
+
<NumberTextFieldCustom
|
|
57
|
+
className={classes.mediumTextField}
|
|
58
|
+
label={'Label Interval'}
|
|
59
|
+
value={range.labelStep}
|
|
60
|
+
min={0}
|
|
61
|
+
max={10000}
|
|
62
|
+
variant={'outlined'}
|
|
63
|
+
onChange={(e, v) => onRangeChanged('labelStep', v)}
|
|
64
|
+
/>
|
|
65
|
+
</div>
|
|
66
|
+
<div className={classes.dimensions}>
|
|
67
|
+
<div>
|
|
68
|
+
<Typography>Dimensions(px)</Typography>
|
|
69
|
+
</div>
|
|
70
|
+
<div className={classes.columnView}>
|
|
71
|
+
<NumberTextFieldCustom
|
|
72
|
+
className={classes.textField}
|
|
73
|
+
label={'Width'}
|
|
74
|
+
value={size.width}
|
|
75
|
+
min={50}
|
|
76
|
+
max={700}
|
|
77
|
+
variant={'outlined'}
|
|
78
|
+
onChange={(e, v) => onSizeChanged('width', v)}
|
|
79
|
+
/>
|
|
80
|
+
<Typography className={classes.disabled}>Min 50, Max 700</Typography>
|
|
81
|
+
</div>
|
|
82
|
+
<div className={classes.columnView}>
|
|
83
|
+
<NumberTextFieldCustom
|
|
84
|
+
className={classes.textField}
|
|
85
|
+
label={'Height'}
|
|
86
|
+
value={size.height}
|
|
87
|
+
min={400}
|
|
88
|
+
max={700}
|
|
89
|
+
variant={'outlined'}
|
|
90
|
+
onChange={(e, v) => onSizeChanged('height', v)}
|
|
91
|
+
/>
|
|
92
|
+
<Typography className={classes.disabled}>Min 400, Max 700</Typography>
|
|
93
|
+
</div>
|
|
94
|
+
</div>
|
|
95
|
+
</div>
|
|
96
|
+
</div>
|
|
97
|
+
);
|
|
98
|
+
};
|
|
99
|
+
|
|
100
|
+
ConfigureChartPanel.propTypes = {
|
|
101
|
+
classes: PropTypes.object,
|
|
102
|
+
sizeConstraints: PropTypes.object,
|
|
103
|
+
domain: PropTypes.object,
|
|
104
|
+
gridIntervalValues: PropTypes.object,
|
|
105
|
+
includeAxes: PropTypes.bool,
|
|
106
|
+
labelIntervalValues: PropTypes.object,
|
|
107
|
+
onChange: PropTypes.function,
|
|
108
|
+
range: PropTypes.object,
|
|
109
|
+
size: PropTypes.object
|
|
110
|
+
};
|
|
111
|
+
|
|
112
|
+
const styles = theme => ({
|
|
113
|
+
wrapper: {
|
|
114
|
+
width: '450px'
|
|
115
|
+
},
|
|
116
|
+
content: {
|
|
117
|
+
display: 'flex',
|
|
118
|
+
flexDirection: 'column',
|
|
119
|
+
width: '100%',
|
|
120
|
+
marginTop: '24px'
|
|
121
|
+
},
|
|
122
|
+
columnView: {
|
|
123
|
+
display: 'flex',
|
|
124
|
+
flexDirection: 'column',
|
|
125
|
+
alignItems: 'center'
|
|
126
|
+
},
|
|
127
|
+
rowView: {
|
|
128
|
+
display: 'flex',
|
|
129
|
+
justifyContent: 'space-around',
|
|
130
|
+
alignItems: 'center'
|
|
131
|
+
},
|
|
132
|
+
textField: {
|
|
133
|
+
width: '130px',
|
|
134
|
+
margin: `${theme.spacing.unit}px ${theme.spacing.unit / 2}px`
|
|
135
|
+
},
|
|
136
|
+
mediumTextField: {
|
|
137
|
+
width: '160px',
|
|
138
|
+
margin: `${theme.spacing.unit}px ${theme.spacing.unit / 2}px`
|
|
139
|
+
},
|
|
140
|
+
largeTextField: {
|
|
141
|
+
width: '230px',
|
|
142
|
+
margin: `${theme.spacing.unit}px ${theme.spacing.unit / 2}px`
|
|
143
|
+
},
|
|
144
|
+
text: {
|
|
145
|
+
fontStyle: 'italic',
|
|
146
|
+
margin: `${theme.spacing.unit}px 0`
|
|
147
|
+
},
|
|
148
|
+
dimensions: {
|
|
149
|
+
display: 'flex',
|
|
150
|
+
justifyContent: 'space-between',
|
|
151
|
+
alignItems: 'center',
|
|
152
|
+
margin: '24px 0px'
|
|
153
|
+
},
|
|
154
|
+
disabled: {
|
|
155
|
+
color: color.disabled()
|
|
156
|
+
}
|
|
157
|
+
});
|
|
158
|
+
|
|
159
|
+
export default withStyles(styles)(ConfigureChartPanel);
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { withStyles } from '@material-ui/core/styles';
|
|
3
|
+
import MenuItem from '@material-ui/core/MenuItem';
|
|
4
|
+
import FormControl from '@material-ui/core/FormControl';
|
|
5
|
+
import InputLabel from '@material-ui/core/InputLabel';
|
|
6
|
+
import Select from '@material-ui/core/Select';
|
|
7
|
+
import OutlinedInput from '@material-ui/core/OutlinedInput';
|
|
8
|
+
|
|
9
|
+
const ChartType = withStyles(theme => ({
|
|
10
|
+
chartType: {
|
|
11
|
+
width: '160px'
|
|
12
|
+
},
|
|
13
|
+
chartTypeLabel: {
|
|
14
|
+
backgroundColor: 'transparent'
|
|
15
|
+
}
|
|
16
|
+
}))(({ onChange, value, classes }) => {
|
|
17
|
+
return (
|
|
18
|
+
<div className={classes.chartType}>
|
|
19
|
+
<FormControl variant={'outlined'} className={classes.chartType}>
|
|
20
|
+
<InputLabel htmlFor="type-helper" className={classes.chartTypeLabel}>
|
|
21
|
+
ChartType
|
|
22
|
+
</InputLabel>
|
|
23
|
+
|
|
24
|
+
<Select
|
|
25
|
+
value={value}
|
|
26
|
+
onChange={onChange}
|
|
27
|
+
input={<OutlinedInput name="type" id="type-helper" />}
|
|
28
|
+
>
|
|
29
|
+
<MenuItem value={'histogram'}>Histogram</MenuItem>
|
|
30
|
+
<MenuItem value={'bar'}>Bar</MenuItem>
|
|
31
|
+
<MenuItem value={'lineDot'}>Line Dot</MenuItem>
|
|
32
|
+
<MenuItem value={'lineCross'}>Line Cross</MenuItem>
|
|
33
|
+
<MenuItem value={'dotPlot'}>Dot Plot</MenuItem>
|
|
34
|
+
<MenuItem value={'linePlot'}>Line Plot</MenuItem>
|
|
35
|
+
</Select>
|
|
36
|
+
</FormControl>
|
|
37
|
+
</div>
|
|
38
|
+
);
|
|
39
|
+
});
|
|
40
|
+
|
|
41
|
+
export default ChartType;
|
package/src/index.js
CHANGED