@iobroker/adapter-react-v5 4.2.1 → 4.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Components/ComplexCron.js +20 -28
- package/Components/ComplexCron.js.map +1 -1
- package/Components/CustomModal.js +8 -12
- package/Components/CustomModal.js.map +1 -1
- package/Components/FileViewer.js +10 -18
- package/Components/FileViewer.js.map +1 -1
- package/Components/Icon.js +10 -17
- package/Components/Icon.js.map +1 -1
- package/Components/IconPicker.js +6 -8
- package/Components/IconPicker.js.map +1 -1
- package/Components/IconSelector.js +13 -22
- package/Components/IconSelector.js.map +1 -1
- package/Components/JsonConfigComponent/ConfigTable.js +357 -38
- package/Components/JsonConfigComponent/ConfigTable.js.map +1 -1
- package/Components/Loader.js +1 -1
- package/Components/Loader.js.map +1 -1
- package/Components/Logo.js +11 -13
- package/Components/Logo.js.map +1 -1
- package/Components/MDUtils.js +1 -1
- package/Components/MDUtils.js.map +1 -1
- package/Components/ObjectBrowser.d.ts +13 -1
- package/Components/ObjectBrowser.js +568 -568
- package/Components/ObjectBrowser.js.map +1 -1
- package/Components/Router.d.ts +1 -1
- package/Components/Router.js +6 -6
- package/Components/Router.js.map +1 -1
- package/Components/SaveCloseButtons.js +11 -13
- package/Components/SaveCloseButtons.js.map +1 -1
- package/Components/Schedule.js +135 -129
- package/Components/Schedule.js.map +1 -1
- package/Components/SelectWithIcon.js.map +1 -1
- package/Components/TabContainer.js +3 -4
- package/Components/TabContainer.js.map +1 -1
- package/Components/TabContent.js +2 -2
- package/Components/TabContent.js.map +1 -1
- package/Components/TabHeader.js +2 -2
- package/Components/TabHeader.js.map +1 -1
- package/Components/TableResize.js +6 -6
- package/Components/TableResize.js.map +1 -1
- package/Components/ToggleThemeMenu.js +5 -8
- package/Components/ToggleThemeMenu.js.map +1 -1
- package/Components/TreeTable.js +44 -64
- package/Components/TreeTable.js.map +1 -1
- package/Components/UploadImage.js +11 -12
- package/Components/UploadImage.js.map +1 -1
- package/Components/Utils.d.ts +13 -6
- package/Components/Utils.js +61 -41
- package/Components/Utils.js.map +1 -1
- package/README.md +6 -0
- package/i18n/de.json +9 -1
- package/i18n/en.json +9 -1
- package/i18n/es.json +9 -1
- package/i18n/fr.json +9 -1
- package/i18n/it.json +9 -1
- package/i18n/nl.json +9 -1
- package/i18n/pl.json +9 -1
- package/i18n/pt.json +9 -1
- package/i18n/ru.json +9 -1
- package/i18n/uk.json +9 -1
- package/i18n/zh-cn.json +9 -1
- package/package.json +3 -3
|
@@ -7,6 +7,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
7
7
|
});
|
|
8
8
|
exports["default"] = void 0;
|
|
9
9
|
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
10
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
10
11
|
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
11
12
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
12
13
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
@@ -20,24 +21,21 @@ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/de
|
|
|
20
21
|
var _react = _interopRequireWildcard(require("react"));
|
|
21
22
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
22
23
|
var _styles = require("@mui/styles");
|
|
24
|
+
var _reactDropzone = _interopRequireDefault(require("react-dropzone"));
|
|
23
25
|
var _FormHelperText = _interopRequireDefault(require("@mui/material/FormHelperText"));
|
|
24
26
|
var _material = require("@mui/material");
|
|
25
|
-
var
|
|
26
|
-
var _Delete = _interopRequireDefault(require("@mui/icons-material/Delete"));
|
|
27
|
-
var _Close = _interopRequireDefault(require("@mui/icons-material/Close"));
|
|
28
|
-
var _ArrowUpward = _interopRequireDefault(require("@mui/icons-material/ArrowUpward"));
|
|
29
|
-
var _ArrowDownward = _interopRequireDefault(require("@mui/icons-material/ArrowDownward"));
|
|
30
|
-
var _FilterAlt = _interopRequireDefault(require("@mui/icons-material/FilterAlt"));
|
|
31
|
-
var _FilterAltOff = _interopRequireDefault(require("@mui/icons-material/FilterAltOff"));
|
|
32
|
-
var _ContentCopy = _interopRequireDefault(require("@mui/icons-material/ContentCopy"));
|
|
27
|
+
var _iconsMaterial = require("@mui/icons-material");
|
|
33
28
|
var _i18n = _interopRequireDefault(require("./wrapper/i18n"));
|
|
34
29
|
var _Utils = _interopRequireDefault(require("./wrapper/Components/Utils"));
|
|
35
30
|
var _ConfigGeneric2 = _interopRequireDefault(require("./ConfigGeneric"));
|
|
36
31
|
var _ConfigPanel = _interopRequireDefault(require("./ConfigPanel"));
|
|
32
|
+
var _Close = _interopRequireDefault(require("@mui/icons-material/Close"));
|
|
37
33
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
38
34
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
39
35
|
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
|
|
40
36
|
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
37
|
+
var MAX_SIZE = 1024 * 1024; // 1MB
|
|
38
|
+
|
|
41
39
|
var styles = function styles(theme) {
|
|
42
40
|
return {
|
|
43
41
|
fullWidth: {
|
|
@@ -104,6 +102,71 @@ var styles = function styles(theme) {
|
|
|
104
102
|
},
|
|
105
103
|
buttonCell: {
|
|
106
104
|
whiteSpace: 'nowrap'
|
|
105
|
+
},
|
|
106
|
+
dropZone: {
|
|
107
|
+
width: '100%',
|
|
108
|
+
height: 100,
|
|
109
|
+
position: 'relative'
|
|
110
|
+
},
|
|
111
|
+
dropZoneEmpty: {},
|
|
112
|
+
uploadDiv: {
|
|
113
|
+
position: 'relative',
|
|
114
|
+
width: '100%',
|
|
115
|
+
height: 300,
|
|
116
|
+
opacity: 0.9,
|
|
117
|
+
marginTop: 30,
|
|
118
|
+
cursor: 'pointer',
|
|
119
|
+
outline: 'none'
|
|
120
|
+
},
|
|
121
|
+
uploadDivDragging: {
|
|
122
|
+
opacity: 1,
|
|
123
|
+
background: 'rgba(128,255,128,0.1)'
|
|
124
|
+
},
|
|
125
|
+
image: {
|
|
126
|
+
objectFit: 'contain',
|
|
127
|
+
margin: 'auto',
|
|
128
|
+
display: 'flex',
|
|
129
|
+
width: '100%',
|
|
130
|
+
height: '100%'
|
|
131
|
+
},
|
|
132
|
+
uploadCenterDiv: {
|
|
133
|
+
margin: 5,
|
|
134
|
+
border: '3px dashed grey',
|
|
135
|
+
borderRadius: 5,
|
|
136
|
+
width: 'calc(100% - 10px)',
|
|
137
|
+
height: 'calc(100% - 10px)',
|
|
138
|
+
minHeight: 300,
|
|
139
|
+
position: 'relative',
|
|
140
|
+
display: 'flex'
|
|
141
|
+
},
|
|
142
|
+
uploadCenterIcon: {
|
|
143
|
+
paddingTop: 10,
|
|
144
|
+
width: 48,
|
|
145
|
+
height: 48
|
|
146
|
+
},
|
|
147
|
+
uploadCenterText: {
|
|
148
|
+
fontSize: 16
|
|
149
|
+
},
|
|
150
|
+
uploadCenterTextAndIcon: {
|
|
151
|
+
textAlign: 'center',
|
|
152
|
+
position: 'absolute',
|
|
153
|
+
top: 0,
|
|
154
|
+
bottom: 0,
|
|
155
|
+
left: 0,
|
|
156
|
+
right: 0,
|
|
157
|
+
display: 'flex',
|
|
158
|
+
flexDirection: 'column',
|
|
159
|
+
alignItems: 'center',
|
|
160
|
+
justifyContent: 'center'
|
|
161
|
+
},
|
|
162
|
+
buttonRemoveWrapper: {
|
|
163
|
+
position: 'absolute',
|
|
164
|
+
zIndex: 222,
|
|
165
|
+
right: 0
|
|
166
|
+
},
|
|
167
|
+
error: {
|
|
168
|
+
border: '2px solid red',
|
|
169
|
+
boxSizing: 'border-box'
|
|
107
170
|
}
|
|
108
171
|
};
|
|
109
172
|
};
|
|
@@ -432,7 +495,7 @@ var ConfigTable = /*#__PURE__*/function (_ConfigGeneric) {
|
|
|
432
495
|
color: "primary",
|
|
433
496
|
disabled: !!doAnyFilterSet && !_this3.props.schema.allowAddByFilter,
|
|
434
497
|
onClick: _this3.onAdd
|
|
435
|
-
}, /*#__PURE__*/_react["default"].createElement(
|
|
498
|
+
}, /*#__PURE__*/_react["default"].createElement(_iconsMaterial.Add, null)))) : null, headCell.sort && /*#__PURE__*/_react["default"].createElement(_material.TableSortLabel, {
|
|
436
499
|
active: true,
|
|
437
500
|
className: _Utils["default"].clsx(orderBy !== headCell.attr && classes.silver),
|
|
438
501
|
direction: orderBy === headCell.attr ? order : 'asc',
|
|
@@ -455,7 +518,7 @@ var ConfigTable = /*#__PURE__*/function (_ConfigGeneric) {
|
|
|
455
518
|
_this3.filterRefs[headCell.attr].current.children[0].children[0].value = '';
|
|
456
519
|
_this3.applyFilter();
|
|
457
520
|
}
|
|
458
|
-
}, /*#__PURE__*/_react["default"].createElement(
|
|
521
|
+
}, /*#__PURE__*/_react["default"].createElement(_iconsMaterial.Close, null)))
|
|
459
522
|
},
|
|
460
523
|
fullWidth: true,
|
|
461
524
|
placeholder: _this3.getText(headCell.title)
|
|
@@ -481,7 +544,7 @@ var ConfigTable = /*#__PURE__*/function (_ConfigGeneric) {
|
|
|
481
544
|
}
|
|
482
545
|
});
|
|
483
546
|
}
|
|
484
|
-
}, _this3.state.filterOn.includes(headCell.attr) ? /*#__PURE__*/_react["default"].createElement(
|
|
547
|
+
}, _this3.state.filterOn.includes(headCell.attr) ? /*#__PURE__*/_react["default"].createElement(_iconsMaterial.FilterAltOff, null) : /*#__PURE__*/_react["default"].createElement(_iconsMaterial.FilterAlt, null)) : null));
|
|
485
548
|
}), !schema.noDelete && /*#__PURE__*/_react["default"].createElement(_material.TableCell, {
|
|
486
549
|
style: {
|
|
487
550
|
paddingLeft: 20,
|
|
@@ -490,24 +553,138 @@ var ConfigTable = /*#__PURE__*/function (_ConfigGeneric) {
|
|
|
490
553
|
textAlign: 'right'
|
|
491
554
|
},
|
|
492
555
|
padding: "checkbox"
|
|
493
|
-
}, /*#__PURE__*/_react["default"].createElement(_material.IconButton, {
|
|
556
|
+
}, schema["import"] ? /*#__PURE__*/_react["default"].createElement(_material.IconButton, {
|
|
557
|
+
style: {
|
|
558
|
+
marginRight: 10
|
|
559
|
+
},
|
|
560
|
+
size: "small",
|
|
561
|
+
onClick: function onClick() {
|
|
562
|
+
return _this3.setState({
|
|
563
|
+
showImportDialog: true
|
|
564
|
+
});
|
|
565
|
+
},
|
|
566
|
+
title: _i18n["default"].t('ra_import data from %s file', 'CSV')
|
|
567
|
+
}, /*#__PURE__*/_react["default"].createElement(_iconsMaterial.UploadFile, null)) : null, schema["export"] ? /*#__PURE__*/_react["default"].createElement(_material.IconButton, {
|
|
568
|
+
style: {
|
|
569
|
+
marginRight: 10
|
|
570
|
+
},
|
|
571
|
+
size: "small",
|
|
572
|
+
onClick: function onClick() {
|
|
573
|
+
return _this3.onExport();
|
|
574
|
+
},
|
|
575
|
+
title: _i18n["default"].t('ra_Export data to %s file', 'CSV')
|
|
576
|
+
}, /*#__PURE__*/_react["default"].createElement(_iconsMaterial.Download, null)) : null, /*#__PURE__*/_react["default"].createElement(_material.IconButton, {
|
|
494
577
|
disabled: true,
|
|
495
578
|
size: "small"
|
|
496
|
-
}, /*#__PURE__*/_react["default"].createElement(
|
|
579
|
+
}, /*#__PURE__*/_react["default"].createElement(_iconsMaterial.Delete, null)))));
|
|
580
|
+
}
|
|
581
|
+
}, {
|
|
582
|
+
key: "onExport",
|
|
583
|
+
value: function onExport() {
|
|
584
|
+
var schema = this.props.schema;
|
|
585
|
+
var value = this.state.value;
|
|
586
|
+
var cols = schema.items.map(function (it) {
|
|
587
|
+
return it.attr;
|
|
588
|
+
});
|
|
589
|
+
var lines = [cols.join(';')];
|
|
590
|
+
value.forEach(function (row) {
|
|
591
|
+
var line = [];
|
|
592
|
+
schema.items.forEach(function (it) {
|
|
593
|
+
if (row[it.attr].includes(';')) {
|
|
594
|
+
line.push("\"".concat(row[it.attr], "\""));
|
|
595
|
+
} else {
|
|
596
|
+
line.push(row[it.attr]);
|
|
597
|
+
}
|
|
598
|
+
});
|
|
599
|
+
lines.push(line.join(';'));
|
|
600
|
+
});
|
|
601
|
+
var el = document.createElement('a');
|
|
602
|
+
el.setAttribute('href', "data:text/csv;charset=utf-8,".concat(encodeURIComponent(lines.join('\n'))));
|
|
603
|
+
var now = new Date();
|
|
604
|
+
el.setAttribute('download', "".concat(now.getFullYear(), "_").concat((now.getMonth() + 1).toString().padStart(2, '0'), "_").concat(now.getDate().toString().padStart(2, '0'), "_").concat(this.props.adapterName, ".").concat(this.props.instance, "_").concat(this.props.attr, ".csv"));
|
|
605
|
+
el.style.display = 'none';
|
|
606
|
+
document.body.appendChild(el);
|
|
607
|
+
el.click();
|
|
608
|
+
document.body.removeChild(el);
|
|
609
|
+
}
|
|
610
|
+
}, {
|
|
611
|
+
key: "onImport",
|
|
612
|
+
value: function onImport(text) {
|
|
613
|
+
var _this4 = this;
|
|
614
|
+
var lines = text.split('\n').map(function (line) {
|
|
615
|
+
return line.replace('\r', '').trim();
|
|
616
|
+
});
|
|
617
|
+
// the first line is header
|
|
618
|
+
var schema = this.props.schema;
|
|
619
|
+
var header = lines.shift().split(';').filter(function (it) {
|
|
620
|
+
return it && schema.items.find(function (it2) {
|
|
621
|
+
return it2.attr === it;
|
|
622
|
+
});
|
|
623
|
+
});
|
|
624
|
+
var values = [];
|
|
625
|
+
lines.forEach(function (line) {
|
|
626
|
+
var parts = line.split(';');
|
|
627
|
+
var obj = {};
|
|
628
|
+
var _loop = function _loop(_p) {
|
|
629
|
+
var value = parts[_p];
|
|
630
|
+
if (value.startsWith('"')) {
|
|
631
|
+
value = value.substring(1);
|
|
632
|
+
while (_p < parts.length && !value.endsWith('"')) {
|
|
633
|
+
value += ";".concat(parts[++_p]);
|
|
634
|
+
}
|
|
635
|
+
value = value.substring(0, value.length - 1);
|
|
636
|
+
}
|
|
637
|
+
if (parts[_p] === 'true') {
|
|
638
|
+
parts[_p] = true;
|
|
639
|
+
} else if (parts[_p] === 'false') {
|
|
640
|
+
parts[_p] = false;
|
|
641
|
+
} else if (window.isFinite(parts[_p])) {
|
|
642
|
+
var attr = _this4.props.schema.items.find(function (it) {
|
|
643
|
+
return it.attr === header[_p];
|
|
644
|
+
});
|
|
645
|
+
if (attr && attr.type === 'number') {
|
|
646
|
+
// if a type of attribute is a "number"
|
|
647
|
+
parts[_p] = parseFloat(parts[_p]);
|
|
648
|
+
}
|
|
649
|
+
}
|
|
650
|
+
obj[header[_p]] = parts[_p];
|
|
651
|
+
p = _p;
|
|
652
|
+
};
|
|
653
|
+
for (var p = 0; p < parts.length; p++) {
|
|
654
|
+
_loop(p);
|
|
655
|
+
}
|
|
656
|
+
values.push(obj);
|
|
657
|
+
});
|
|
658
|
+
if (values.length) {
|
|
659
|
+
var _this$state$value;
|
|
660
|
+
if ((_this$state$value = this.state.value) !== null && _this$state$value !== void 0 && _this$state$value.length) {
|
|
661
|
+
this.setState({
|
|
662
|
+
showTypeOfImportDialog: values,
|
|
663
|
+
showImportDialog: false
|
|
664
|
+
});
|
|
665
|
+
} else {
|
|
666
|
+
this.setState({
|
|
667
|
+
value: values,
|
|
668
|
+
showImportDialog: false
|
|
669
|
+
});
|
|
670
|
+
}
|
|
671
|
+
} else {
|
|
672
|
+
window.alert('ra_No data found in file');
|
|
673
|
+
}
|
|
497
674
|
}
|
|
498
675
|
}, {
|
|
499
676
|
key: "isAnyFilterSet",
|
|
500
677
|
value: function isAnyFilterSet() {
|
|
501
|
-
var
|
|
678
|
+
var _this5 = this;
|
|
502
679
|
return Object.keys(this.filterRefs).find(function (attr) {
|
|
503
|
-
var
|
|
504
|
-
return (
|
|
680
|
+
var _this5$filterRefs$att;
|
|
681
|
+
return (_this5$filterRefs$att = _this5.filterRefs[attr].current) === null || _this5$filterRefs$att === void 0 ? void 0 : _this5$filterRefs$att.children[0].children[0].value;
|
|
505
682
|
});
|
|
506
683
|
}
|
|
507
684
|
}, {
|
|
508
685
|
key: "onMoveUp",
|
|
509
686
|
value: function onMoveUp(idx) {
|
|
510
|
-
var
|
|
687
|
+
var _this6 = this;
|
|
511
688
|
var newValue = JSON.parse(JSON.stringify(this.state.value));
|
|
512
689
|
var item = newValue[idx];
|
|
513
690
|
newValue.splice(idx, 1);
|
|
@@ -516,15 +693,15 @@ var ConfigTable = /*#__PURE__*/function (_ConfigGeneric) {
|
|
|
516
693
|
value: newValue,
|
|
517
694
|
iteration: this.state.iteration + 10000
|
|
518
695
|
}, function () {
|
|
519
|
-
return
|
|
520
|
-
return
|
|
696
|
+
return _this6.applyFilter(false, null, function () {
|
|
697
|
+
return _this6.onChangeWrapper(newValue);
|
|
521
698
|
});
|
|
522
699
|
});
|
|
523
700
|
}
|
|
524
701
|
}, {
|
|
525
702
|
key: "onMoveDown",
|
|
526
703
|
value: function onMoveDown(idx) {
|
|
527
|
-
var
|
|
704
|
+
var _this7 = this;
|
|
528
705
|
var newValue = JSON.parse(JSON.stringify(this.state.value));
|
|
529
706
|
var item = newValue[idx];
|
|
530
707
|
newValue.splice(idx, 1);
|
|
@@ -533,15 +710,157 @@ var ConfigTable = /*#__PURE__*/function (_ConfigGeneric) {
|
|
|
533
710
|
value: newValue,
|
|
534
711
|
iteration: this.state.iteration + 10000
|
|
535
712
|
}, function () {
|
|
536
|
-
return
|
|
537
|
-
return
|
|
713
|
+
return _this7.applyFilter(false, null, function () {
|
|
714
|
+
return _this7.onChangeWrapper(newValue);
|
|
538
715
|
});
|
|
539
716
|
});
|
|
540
717
|
}
|
|
718
|
+
}, {
|
|
719
|
+
key: "onDrop",
|
|
720
|
+
value: function onDrop(acceptedFiles) {
|
|
721
|
+
var _this8 = this;
|
|
722
|
+
var file = acceptedFiles[0];
|
|
723
|
+
var reader = new FileReader();
|
|
724
|
+
reader.onabort = function () {
|
|
725
|
+
return console.log('file reading was aborted');
|
|
726
|
+
};
|
|
727
|
+
reader.onerror = function () {
|
|
728
|
+
return console.log('file reading has failed');
|
|
729
|
+
};
|
|
730
|
+
reader.onload = function () {
|
|
731
|
+
if (file.size > MAX_SIZE) {
|
|
732
|
+
return window.alert(_i18n["default"].t('ra_File is too big. Max %sk allowed. Try use SVG.', Math.round(MAX_SIZE / 1024)));
|
|
733
|
+
}
|
|
734
|
+
var text = new Uint8Array(reader.result).reduce(function (data, _byte) {
|
|
735
|
+
return data + String.fromCharCode(_byte);
|
|
736
|
+
}, '');
|
|
737
|
+
_this8.onImport(text);
|
|
738
|
+
};
|
|
739
|
+
reader.readAsArrayBuffer(file);
|
|
740
|
+
}
|
|
741
|
+
}, {
|
|
742
|
+
key: "showTypeOfImportDialog",
|
|
743
|
+
value: function showTypeOfImportDialog() {
|
|
744
|
+
var _this9 = this;
|
|
745
|
+
if (!this.state.showTypeOfImportDialog) {
|
|
746
|
+
return null;
|
|
747
|
+
}
|
|
748
|
+
return /*#__PURE__*/_react["default"].createElement(_material.Dialog, {
|
|
749
|
+
open: !0,
|
|
750
|
+
onClose: function onClose() {
|
|
751
|
+
return _this9.setState({
|
|
752
|
+
showTypeOfImportDialog: false
|
|
753
|
+
});
|
|
754
|
+
},
|
|
755
|
+
maxWidth: "md"
|
|
756
|
+
}, /*#__PURE__*/_react["default"].createElement(_material.DialogTitle, null, _i18n["default"].t('ra_Append or replace?')), /*#__PURE__*/_react["default"].createElement(_material.DialogContent, null, _i18n["default"].t('ra_Append %s entries or replace existing?', this.state.showTypeOfImportDialog.length)), /*#__PURE__*/_react["default"].createElement(_material.DialogActions, null, /*#__PURE__*/_react["default"].createElement(_material.Button, {
|
|
757
|
+
variant: "contained",
|
|
758
|
+
color: "primary",
|
|
759
|
+
autoFocus: true,
|
|
760
|
+
onClick: function onClick() {
|
|
761
|
+
var value = JSON.parse(JSON.stringify(_this9.state.value));
|
|
762
|
+
_this9.state.showTypeOfImportDialog.forEach(function (obj) {
|
|
763
|
+
return value.push(obj);
|
|
764
|
+
});
|
|
765
|
+
_this9.setState({
|
|
766
|
+
value: value,
|
|
767
|
+
iteration: _this9.state.iteration + 10000,
|
|
768
|
+
showTypeOfImportDialog: false
|
|
769
|
+
}, function () {
|
|
770
|
+
return _this9.applyFilter(false, null, function () {
|
|
771
|
+
return _this9.onChangeWrapper(value);
|
|
772
|
+
});
|
|
773
|
+
});
|
|
774
|
+
}
|
|
775
|
+
}, _i18n["default"].t('ra_Append')), /*#__PURE__*/_react["default"].createElement(_material.Button, {
|
|
776
|
+
variant: "contained",
|
|
777
|
+
color: "secondary",
|
|
778
|
+
autoFocus: true,
|
|
779
|
+
onClick: function onClick() {
|
|
780
|
+
var value = _this9.state.showTypeOfImportDialog;
|
|
781
|
+
_this9.setState({
|
|
782
|
+
value: value,
|
|
783
|
+
iteration: _this9.state.iteration + 10000,
|
|
784
|
+
showTypeOfImportDialog: false
|
|
785
|
+
}, function () {
|
|
786
|
+
return _this9.applyFilter(false, null, function () {
|
|
787
|
+
return _this9.onChangeWrapper(value);
|
|
788
|
+
});
|
|
789
|
+
});
|
|
790
|
+
}
|
|
791
|
+
}, _i18n["default"].t('ra_Replace'))));
|
|
792
|
+
}
|
|
793
|
+
}, {
|
|
794
|
+
key: "showImportDialog",
|
|
795
|
+
value: function showImportDialog() {
|
|
796
|
+
var _this10 = this;
|
|
797
|
+
if (!this.state.showImportDialog) {
|
|
798
|
+
return null;
|
|
799
|
+
}
|
|
800
|
+
return /*#__PURE__*/_react["default"].createElement(_material.Dialog, {
|
|
801
|
+
open: !0,
|
|
802
|
+
onClose: function onClose() {
|
|
803
|
+
return _this10.setState({
|
|
804
|
+
showImportDialog: false
|
|
805
|
+
});
|
|
806
|
+
},
|
|
807
|
+
maxWidth: "md",
|
|
808
|
+
fullWidth: true
|
|
809
|
+
}, /*#__PURE__*/_react["default"].createElement(_material.DialogTitle, null, _i18n["default"].t('ra_Import from %s', 'CSV')), /*#__PURE__*/_react["default"].createElement(_material.DialogContent, null, /*#__PURE__*/_react["default"].createElement(_reactDropzone["default"], {
|
|
810
|
+
multiple: false,
|
|
811
|
+
accept: {
|
|
812
|
+
'text/csv': ['.csv']
|
|
813
|
+
},
|
|
814
|
+
maxSize: MAX_SIZE,
|
|
815
|
+
onDragEnter: function onDragEnter() {
|
|
816
|
+
return _this10.setState({
|
|
817
|
+
uploadFile: 'dragging'
|
|
818
|
+
});
|
|
819
|
+
},
|
|
820
|
+
onDragLeave: function onDragLeave() {
|
|
821
|
+
return _this10.setState({
|
|
822
|
+
uploadFile: true
|
|
823
|
+
});
|
|
824
|
+
},
|
|
825
|
+
onDrop: function onDrop(acceptedFiles, errors) {
|
|
826
|
+
_this10.setState({
|
|
827
|
+
uploadFile: false
|
|
828
|
+
});
|
|
829
|
+
if (!acceptedFiles.length) {
|
|
830
|
+
window.alert(errors && errors[0] && errors[0].errors && errors[0].errors[0] && errors[0].errors[0].message || _i18n["default"].t('ra_Cannot upload'));
|
|
831
|
+
} else {
|
|
832
|
+
return _this10.onDrop(acceptedFiles);
|
|
833
|
+
}
|
|
834
|
+
}
|
|
835
|
+
}, function (_ref) {
|
|
836
|
+
var getRootProps = _ref.getRootProps,
|
|
837
|
+
getInputProps = _ref.getInputProps;
|
|
838
|
+
return /*#__PURE__*/_react["default"].createElement("div", (0, _extends2["default"])({
|
|
839
|
+
className: _Utils["default"].clsx(_this10.props.classes.uploadDiv, _this10.state.uploadFile === 'dragging' && _this10.props.classes.uploadDivDragging, _this10.props.classes.dropZone, !_this10.state.icon && _this10.props.classes.dropZoneEmpty)
|
|
840
|
+
}, getRootProps()), /*#__PURE__*/_react["default"].createElement("input", getInputProps()), /*#__PURE__*/_react["default"].createElement("div", {
|
|
841
|
+
className: _Utils["default"].clsx(_this10.props.classes.uploadCenterDiv)
|
|
842
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
843
|
+
className: _this10.props.classes.uploadCenterTextAndIcon
|
|
844
|
+
}, /*#__PURE__*/_react["default"].createElement(_iconsMaterial.UploadFile, {
|
|
845
|
+
className: _this10.props.classes.uploadCenterIcon
|
|
846
|
+
}), /*#__PURE__*/_react["default"].createElement("div", {
|
|
847
|
+
className: _this10.props.classes.uploadCenterText
|
|
848
|
+
}, _this10.state.uploadFile === 'dragging' ? _i18n["default"].t('ra_Drop file here') : _i18n["default"].t('ra_Place your files here or click here to open the browse dialog')))));
|
|
849
|
+
})), /*#__PURE__*/_react["default"].createElement(_material.DialogActions, null, /*#__PURE__*/_react["default"].createElement(_material.Button, {
|
|
850
|
+
variant: "contained",
|
|
851
|
+
onClick: function onClick() {
|
|
852
|
+
return _this10.setState({
|
|
853
|
+
showImportDialog: false
|
|
854
|
+
});
|
|
855
|
+
},
|
|
856
|
+
color: "primary",
|
|
857
|
+
startIcon: /*#__PURE__*/_react["default"].createElement(_Close["default"], null)
|
|
858
|
+
}, _i18n["default"].t('Cancel'))));
|
|
859
|
+
}
|
|
541
860
|
}, {
|
|
542
861
|
key: "renderItem",
|
|
543
862
|
value: function renderItem(error, disabled, defaultValue) {
|
|
544
|
-
var
|
|
863
|
+
var _this11 = this;
|
|
545
864
|
var _this$props2 = this.props,
|
|
546
865
|
classes = _this$props2.classes,
|
|
547
866
|
schema = _this$props2.schema;
|
|
@@ -557,7 +876,7 @@ var ConfigTable = /*#__PURE__*/function (_ConfigGeneric) {
|
|
|
557
876
|
var doAnyFilterSet = this.isAnyFilterSet();
|
|
558
877
|
return /*#__PURE__*/_react["default"].createElement(_material.Paper, {
|
|
559
878
|
className: classes.paper
|
|
560
|
-
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
879
|
+
}, this.showImportDialog(), this.showTypeOfImportDialog(), /*#__PURE__*/_react["default"].createElement("div", {
|
|
561
880
|
className: classes.addIcon
|
|
562
881
|
}, schema.label ? /*#__PURE__*/_react["default"].createElement(_material.Toolbar, {
|
|
563
882
|
variant: "dense",
|
|
@@ -578,39 +897,39 @@ var ConfigTable = /*#__PURE__*/function (_ConfigGeneric) {
|
|
|
578
897
|
return /*#__PURE__*/_react["default"].createElement(_material.TableCell, {
|
|
579
898
|
key: "".concat(headCell.attr, "_").concat(idx),
|
|
580
899
|
align: "left"
|
|
581
|
-
},
|
|
900
|
+
}, _this11.itemTable(headCell.attr, value[idx], idx));
|
|
582
901
|
}), !schema.noDelete && /*#__PURE__*/_react["default"].createElement(_material.TableCell, {
|
|
583
902
|
align: "left",
|
|
584
903
|
className: classes.buttonCell
|
|
585
|
-
}, !doAnyFilterSet && !
|
|
904
|
+
}, !doAnyFilterSet && !_this11.state.orderBy ? i ? /*#__PURE__*/_react["default"].createElement(_material.Tooltip, {
|
|
586
905
|
title: _i18n["default"].t('ra_Move up')
|
|
587
906
|
}, /*#__PURE__*/_react["default"].createElement(_material.IconButton, {
|
|
588
907
|
size: "small",
|
|
589
908
|
onClick: function onClick() {
|
|
590
|
-
return
|
|
909
|
+
return _this11.onMoveUp(idx);
|
|
591
910
|
}
|
|
592
|
-
}, /*#__PURE__*/_react["default"].createElement(
|
|
911
|
+
}, /*#__PURE__*/_react["default"].createElement(_iconsMaterial.ArrowUpward, null))) : /*#__PURE__*/_react["default"].createElement("div", {
|
|
593
912
|
className: classes.buttonEmpty
|
|
594
|
-
}) : null, !doAnyFilterSet && !
|
|
913
|
+
}) : null, !doAnyFilterSet && !_this11.state.orderBy ? i < visibleValue.length - 1 ? /*#__PURE__*/_react["default"].createElement(_material.Tooltip, {
|
|
595
914
|
title: _i18n["default"].t('ra_Move down')
|
|
596
915
|
}, /*#__PURE__*/_react["default"].createElement(_material.IconButton, {
|
|
597
916
|
size: "small",
|
|
598
917
|
onClick: function onClick() {
|
|
599
|
-
return
|
|
918
|
+
return _this11.onMoveDown(idx);
|
|
600
919
|
}
|
|
601
|
-
}, /*#__PURE__*/_react["default"].createElement(
|
|
920
|
+
}, /*#__PURE__*/_react["default"].createElement(_iconsMaterial.ArrowDownward, null))) : /*#__PURE__*/_react["default"].createElement("div", {
|
|
602
921
|
className: classes.buttonEmpty
|
|
603
922
|
}) : null, /*#__PURE__*/_react["default"].createElement(_material.Tooltip, {
|
|
604
923
|
title: _i18n["default"].t('ra_Delete current row')
|
|
605
924
|
}, /*#__PURE__*/_react["default"].createElement(_material.IconButton, {
|
|
606
925
|
size: "small",
|
|
607
|
-
onClick:
|
|
608
|
-
}, /*#__PURE__*/_react["default"].createElement(
|
|
926
|
+
onClick: _this11.onDelete(idx)
|
|
927
|
+
}, /*#__PURE__*/_react["default"].createElement(_iconsMaterial.Delete, null))), _this11.props.schema.clone ? /*#__PURE__*/_react["default"].createElement(_material.Tooltip, {
|
|
609
928
|
title: _i18n["default"].t('ra_Clone current row')
|
|
610
929
|
}, /*#__PURE__*/_react["default"].createElement(_material.IconButton, {
|
|
611
930
|
size: "small",
|
|
612
|
-
onClick:
|
|
613
|
-
}, /*#__PURE__*/_react["default"].createElement(
|
|
931
|
+
onClick: _this11.onClone(idx)
|
|
932
|
+
}, /*#__PURE__*/_react["default"].createElement(_iconsMaterial.ContentCopy, null))) : null));
|
|
614
933
|
}), !schema.noDelete && visibleValue.length >= (schema.showSecondAddAt || 5) ? /*#__PURE__*/_react["default"].createElement(_material.TableRow, null, /*#__PURE__*/_react["default"].createElement(_material.TableCell, {
|
|
615
934
|
colSpan: schema.items.length + 1
|
|
616
935
|
}, /*#__PURE__*/_react["default"].createElement(_material.Tooltip, {
|
|
@@ -620,7 +939,7 @@ var ConfigTable = /*#__PURE__*/function (_ConfigGeneric) {
|
|
|
620
939
|
color: "primary",
|
|
621
940
|
disabled: !!doAnyFilterSet && !this.props.schema.allowAddByFilter,
|
|
622
941
|
onClick: this.onAdd
|
|
623
|
-
}, /*#__PURE__*/_react["default"].createElement(
|
|
942
|
+
}, /*#__PURE__*/_react["default"].createElement(_iconsMaterial.Add, null)))))) : null)), !visibleValue.length && value.length ? /*#__PURE__*/_react["default"].createElement("div", {
|
|
624
943
|
className: classes.filteredOut
|
|
625
944
|
}, /*#__PURE__*/_react["default"].createElement(_material.Typography, {
|
|
626
945
|
className: classes.title,
|
|
@@ -630,9 +949,9 @@ var ConfigTable = /*#__PURE__*/function (_ConfigGeneric) {
|
|
|
630
949
|
}, _i18n["default"].t('ra_All items are filtered out'), /*#__PURE__*/_react["default"].createElement(_material.IconButton, {
|
|
631
950
|
size: "small",
|
|
632
951
|
onClick: function onClick() {
|
|
633
|
-
return
|
|
952
|
+
return _this11.applyFilter(true);
|
|
634
953
|
}
|
|
635
|
-
}, /*#__PURE__*/_react["default"].createElement(
|
|
954
|
+
}, /*#__PURE__*/_react["default"].createElement(_iconsMaterial.Close, null)))) : null), schema.help ? /*#__PURE__*/_react["default"].createElement(_FormHelperText["default"], null, this.renderHelp(this.props.schema.help, this.props.schema.helpLink, this.props.schema.noTranslation)) : null);
|
|
636
955
|
}
|
|
637
956
|
}], [{
|
|
638
957
|
key: "descendingComparator",
|