@iobroker/adapter-react-v5 3.2.4 → 3.2.6

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.
@@ -255,6 +255,8 @@ var TreeTable = /*#__PURE__*/function (_React$Component) {
255
255
  return this.renderCellEditColor(item, col, val);
256
256
  } else if (col.type === 'oid') {
257
257
  return this.renderCellEditObjectID(item, col, val);
258
+ } else if (col.type === 'numeric') {
259
+ return this.renderCellEditNumber(item, col, val);
258
260
  } else {
259
261
  return this.renderCellEditString(item, col, val);
260
262
  }
@@ -278,8 +280,9 @@ var TreeTable = /*#__PURE__*/function (_React$Component) {
278
280
  });
279
281
  },
280
282
  value: this.state.editData && this.state.editData[col.field] || val
281
- }, Object.keys(col.lookup).map(function (v) {
283
+ }, Object.keys(col.lookup).map(function (v, i) {
282
284
  return /*#__PURE__*/_react["default"].createElement(_MenuItem["default"], {
285
+ key: i,
283
286
  value: v
284
287
  }, col.lookup[v]);
285
288
  }));
@@ -306,10 +309,33 @@ var TreeTable = /*#__PURE__*/function (_React$Component) {
306
309
  }
307
310
  });
308
311
  }
312
+ }, {
313
+ key: "renderCellEditNumber",
314
+ value: function renderCellEditNumber(item, col, val) {
315
+ var _this4 = this;
316
+ return /*#__PURE__*/_react["default"].createElement(_TextField["default"], {
317
+ variant: "standard",
318
+ className: this.props.classes.fieldEdit,
319
+ type: "number",
320
+ fullWidth: true,
321
+ value: this.state.editData && this.state.editData[col.field] !== undefined ? this.state.editData[col.field] : val,
322
+ onChange: function onChange(e) {
323
+ var editData = _this4.state.editData ? _objectSpread({}, _this4.state.editData) : {};
324
+ if (e.target.value === val) {
325
+ delete editData[col.field];
326
+ } else {
327
+ editData[col.field] = e.target.value;
328
+ }
329
+ _this4.setState({
330
+ editData: editData
331
+ });
332
+ }
333
+ });
334
+ }
309
335
  }, {
310
336
  key: "renderCellEditCustom",
311
337
  value: function renderCellEditCustom(item, col, val) {
312
- var _this4 = this;
338
+ var _this5 = this;
313
339
  var EditComponent = col.editComponent;
314
340
 
315
341
  // use new value if exists
@@ -322,13 +348,13 @@ var TreeTable = /*#__PURE__*/function (_React$Component) {
322
348
  value: val,
323
349
  rowData: item,
324
350
  onChange: function onChange(newVal) {
325
- var editData = _this4.state.editData ? _objectSpread({}, _this4.state.editData) : {};
351
+ var editData = _this5.state.editData ? _objectSpread({}, _this5.state.editData) : {};
326
352
  if (newVal === val) {
327
353
  delete editData[col.field];
328
354
  } else {
329
355
  editData[col.field] = newVal;
330
356
  }
331
- _this4.setState({
357
+ _this5.setState({
332
358
  editData: editData
333
359
  });
334
360
  }
@@ -337,17 +363,17 @@ var TreeTable = /*#__PURE__*/function (_React$Component) {
337
363
  }, {
338
364
  key: "renderCellEditBoolean",
339
365
  value: function renderCellEditBoolean(item, col, val) {
340
- var _this5 = this;
366
+ var _this6 = this;
341
367
  return /*#__PURE__*/_react["default"].createElement(_Checkbox["default"], {
342
368
  checked: this.state.editData && this.state.editData[col.field] !== undefined ? !!this.state.editData[col.field] : !!val,
343
369
  onChange: function onChange(e) {
344
- var editData = _this5.state.editData ? _objectSpread({}, _this5.state.editData) : {};
370
+ var editData = _this6.state.editData ? _objectSpread({}, _this6.state.editData) : {};
345
371
  if (e.target.checked === !!val) {
346
372
  delete editData[col.field];
347
373
  } else {
348
374
  editData[col.field] = e.target.checked;
349
375
  }
350
- _this5.setState({
376
+ _this6.setState({
351
377
  editData: editData
352
378
  });
353
379
  },
@@ -359,15 +385,15 @@ var TreeTable = /*#__PURE__*/function (_React$Component) {
359
385
  }, {
360
386
  key: "renderSelectColorDialog",
361
387
  value: function renderSelectColorDialog() {
362
- var _this6 = this;
388
+ var _this7 = this;
363
389
  return /*#__PURE__*/_react["default"].createElement(_Dialog["default"], {
364
390
  classes: {
365
391
  root: this.props.classes.colorDialog,
366
392
  paper: this.props.classes.colorDialog
367
393
  },
368
394
  onClose: function onClose() {
369
- _this6.selectCallback = null;
370
- _this6.setState({
395
+ _this7.selectCallback = null;
396
+ _this7.setState({
371
397
  showSelectColor: false
372
398
  });
373
399
  },
@@ -375,10 +401,10 @@ var TreeTable = /*#__PURE__*/function (_React$Component) {
375
401
  }, /*#__PURE__*/_react["default"].createElement(_reactColorful.HexColorPicker, {
376
402
  color: this.state.selectIdValue,
377
403
  onChange: function onChange(color) {
378
- _this6.setState({
404
+ _this7.setState({
379
405
  selectIdValue: color
380
406
  }, function () {
381
- return _this6.selectCallback && _this6.selectCallback(color);
407
+ return _this7.selectCallback && _this7.selectCallback(color);
382
408
  });
383
409
  }
384
410
  }));
@@ -386,7 +412,7 @@ var TreeTable = /*#__PURE__*/function (_React$Component) {
386
412
  }, {
387
413
  key: "renderCellEditColor",
388
414
  value: function renderCellEditColor(item, col, val) {
389
- var _this7 = this;
415
+ var _this8 = this;
390
416
  var _val = this.state.editData && this.state.editData[col.field] !== undefined ? this.state.editData[col.field] : val;
391
417
  return /*#__PURE__*/_react["default"].createElement("div", {
392
418
  className: this.props.classes.fieldEdit
@@ -402,32 +428,31 @@ var TreeTable = /*#__PURE__*/function (_React$Component) {
402
428
  }
403
429
  },
404
430
  onChange: function onChange(e) {
405
- var editData = _this7.state.editData ? _objectSpread({}, _this7.state.editData) : {};
431
+ var editData = _this8.state.editData ? _objectSpread({}, _this8.state.editData) : {};
406
432
  if (e.target.value === val) {
407
433
  delete editData[col.field];
408
434
  } else {
409
435
  editData[col.field] = e.target.value;
410
436
  }
411
- _this7.setState({
437
+ _this8.setState({
412
438
  editData: editData
413
439
  });
414
440
  }
415
441
  }), /*#__PURE__*/_react["default"].createElement(_IconButton["default"], {
416
442
  className: this.props.classes.fieldButton,
417
- contained: true,
418
443
  onClick: function onClick() {
419
- _this7.selectCallback = function (newColor) {
420
- var editData = _this7.state.editData ? _objectSpread({}, _this7.state.editData) : {};
444
+ _this8.selectCallback = function (newColor) {
445
+ var editData = _this8.state.editData ? _objectSpread({}, _this8.state.editData) : {};
421
446
  if (newColor === val) {
422
447
  delete editData[col.field];
423
448
  } else {
424
449
  editData[col.field] = newColor;
425
450
  }
426
- _this7.setState({
451
+ _this8.setState({
427
452
  editData: editData
428
453
  });
429
454
  };
430
- _this7.setState({
455
+ _this8.setState({
431
456
  showSelectColor: true,
432
457
  selectIdValue: val
433
458
  });
@@ -438,7 +463,7 @@ var TreeTable = /*#__PURE__*/function (_React$Component) {
438
463
  }, {
439
464
  key: "renderSelectIdDialog",
440
465
  value: function renderSelectIdDialog() {
441
- var _this8 = this;
466
+ var _this9 = this;
442
467
  if (this.state.showSelectId) {
443
468
  return /*#__PURE__*/_react["default"].createElement(_SelectID["default"], {
444
469
  key: "tableSelect",
@@ -449,17 +474,17 @@ var TreeTable = /*#__PURE__*/function (_React$Component) {
449
474
  statesOnly: true,
450
475
  selected: this.state.selectIdValue,
451
476
  onClose: function onClose() {
452
- return _this8.setState({
477
+ return _this9.setState({
453
478
  showSelectId: false
454
479
  });
455
480
  },
456
481
  onOk: function onOk(selected, name) {
457
- _this8.setState({
482
+ _this9.setState({
458
483
  showSelectId: false,
459
484
  selectIdValue: null
460
485
  });
461
- _this8.selectCallback && _this8.selectCallback(selected);
462
- _this8.selectCallback = null;
486
+ _this9.selectCallback && _this9.selectCallback(selected);
487
+ _this9.selectCallback = null;
463
488
  }
464
489
  });
465
490
  } else {
@@ -469,7 +494,7 @@ var TreeTable = /*#__PURE__*/function (_React$Component) {
469
494
  }, {
470
495
  key: "renderCellEditObjectID",
471
496
  value: function renderCellEditObjectID(item, col, val) {
472
- var _this9 = this;
497
+ var _this10 = this;
473
498
  return /*#__PURE__*/_react["default"].createElement("div", {
474
499
  className: this.props.classes.fieldEdit
475
500
  }, /*#__PURE__*/_react["default"].createElement(_TextField["default"], {
@@ -478,32 +503,31 @@ var TreeTable = /*#__PURE__*/function (_React$Component) {
478
503
  className: this.props.classes.fieldEditWithButton,
479
504
  value: this.state.editData && this.state.editData[col.field] !== undefined ? this.state.editData[col.field] : val,
480
505
  onChange: function onChange(e) {
481
- var editData = _this9.state.editData ? _objectSpread({}, _this9.state.editData) : {};
506
+ var editData = _this10.state.editData ? _objectSpread({}, _this10.state.editData) : {};
482
507
  if (e.target.value === val) {
483
508
  delete editData[col.field];
484
509
  } else {
485
510
  editData[col.field] = e.target.value;
486
511
  }
487
- _this9.setState({
512
+ _this10.setState({
488
513
  editData: editData
489
514
  });
490
515
  }
491
516
  }), /*#__PURE__*/_react["default"].createElement(_IconButton["default"], {
492
517
  className: this.props.classes.fieldButton,
493
- contained: true,
494
518
  onClick: function onClick() {
495
- _this9.selectCallback = function (selected) {
496
- var editData = _this9.state.editData ? _objectSpread({}, _this9.state.editData) : {};
519
+ _this10.selectCallback = function (selected) {
520
+ var editData = _this10.state.editData ? _objectSpread({}, _this10.state.editData) : {};
497
521
  if (selected === val) {
498
522
  delete editData[col.field];
499
523
  } else {
500
524
  editData[col.field] = selected;
501
525
  }
502
- _this9.setState({
526
+ _this10.setState({
503
527
  editData: editData
504
528
  });
505
529
  };
506
- _this9.setState({
530
+ _this10.setState({
507
531
  showSelectId: true,
508
532
  selectIdValue: val
509
533
  });
@@ -564,7 +588,7 @@ var TreeTable = /*#__PURE__*/function (_React$Component) {
564
588
  }, {
565
589
  key: "renderLine",
566
590
  value: function renderLine(item, level) {
567
- var _this10 = this;
591
+ var _this11 = this;
568
592
  var levelShift = this.props.levelShift === undefined ? 24 : this.props.levelShift;
569
593
  level = level || 0;
570
594
  var i = this.props.data.indexOf(item);
@@ -588,7 +612,7 @@ var TreeTable = /*#__PURE__*/function (_React$Component) {
588
612
  className: _Utils["default"].clsx(this.props.classes.cell, this.props.classes.cellExpand, level && this.props.classes.cellSecondary)
589
613
  }, children.length ? /*#__PURE__*/_react["default"].createElement(_IconButton["default"], {
590
614
  onClick: function onClick() {
591
- var opened = (0, _toConsumableArray2["default"])(_this10.state.opened);
615
+ var opened = (0, _toConsumableArray2["default"])(_this11.state.opened);
592
616
  var pos = opened.indexOf(item.id);
593
617
  if (pos === -1) {
594
618
  opened.push(item.id);
@@ -596,8 +620,8 @@ var TreeTable = /*#__PURE__*/function (_React$Component) {
596
620
  } else {
597
621
  opened.splice(pos, 1);
598
622
  }
599
- (window._localStorage || window.localStorage).setItem(_this10.props.name || 'iob-table', JSON.stringify(opened));
600
- _this10.setState({
623
+ (window._localStorage || window.localStorage).setItem(_this11.props.name || 'iob-table', JSON.stringify(opened));
624
+ _this11.setState({
601
625
  opened: opened
602
626
  });
603
627
  },
@@ -609,27 +633,27 @@ var TreeTable = /*#__PURE__*/function (_React$Component) {
609
633
  paddingLeft: levelShift * level
610
634
  })
611
635
  }, this.props.columns[0].subField ? this.renderCellWithSubField(item, this.props.columns[0]) : getAttr(item, this.props.columns[0].field, this.props.columns[0].lookup)), this.props.columns.map(function (col, ii) {
612
- return !ii && !col.hidden ? null : _this10.renderCell(item, col, level, i);
636
+ return !ii && !col.hidden ? null : _this11.renderCell(item, col, level, i);
613
637
  }), this.props.onUpdate ? /*#__PURE__*/_react["default"].createElement(_TableCell["default"], {
614
638
  className: _Utils["default"].clsx(this.props.classes.cell, this.props.classes.cellButton)
615
639
  }, this.state.editMode === i || this.state.deleteMode === i ? /*#__PURE__*/_react["default"].createElement(_IconButton["default"], {
616
640
  disabled: this.state.editMode !== false && (!this.state.editData || !Object.keys(this.state.editData).length),
617
641
  onClick: function onClick() {
618
- if (_this10.state.editMode !== false) {
642
+ if (_this11.state.editMode !== false) {
619
643
  var newData = JSON.parse(JSON.stringify(item));
620
- Object.keys(_this10.state.editData).forEach(function (attr) {
621
- return setAttr(newData, attr, _this10.state.editData[attr]);
644
+ Object.keys(_this11.state.editData).forEach(function (attr) {
645
+ return setAttr(newData, attr, _this11.state.editData[attr]);
622
646
  });
623
- _this10.setState({
647
+ _this11.setState({
624
648
  editMode: false
625
649
  }, function () {
626
- return _this10.props.onUpdate(newData, item);
650
+ return _this11.props.onUpdate(newData, item);
627
651
  });
628
652
  } else {
629
- _this10.setState({
653
+ _this11.setState({
630
654
  deleteMode: false
631
655
  }, function () {
632
- return _this10.props.onDelete(item);
656
+ return _this11.props.onDelete(item);
633
657
  });
634
658
  }
635
659
  },
@@ -637,17 +661,29 @@ var TreeTable = /*#__PURE__*/function (_React$Component) {
637
661
  }, /*#__PURE__*/_react["default"].createElement(_Check["default"], null)) : /*#__PURE__*/_react["default"].createElement(_IconButton["default"], {
638
662
  disabled: this.state.editMode !== false,
639
663
  onClick: function onClick() {
640
- return _this10.setState({
664
+ return _this11.setState({
641
665
  editMode: i,
642
666
  editData: null
643
667
  });
644
668
  },
645
669
  size: "large"
646
- }, /*#__PURE__*/_react["default"].createElement(_Edit["default"], null))) : null, this.props.onUpdate || this.props.onDelete ? /*#__PURE__*/_react["default"].createElement(_TableCell["default"], {
670
+ }, /*#__PURE__*/_react["default"].createElement(_Edit["default"], null))) : null, this.props.onDelete && !this.props.onUpdate ? /*#__PURE__*/_react["default"].createElement(_TableCell["default"], {
671
+ className: _Utils["default"].clsx(this.props.classes.cell, this.props.classes.cellButton)
672
+ }, this.state.deleteMode === i ? /*#__PURE__*/_react["default"].createElement(_IconButton["default"], {
673
+ disabled: this.state.editMode !== false && (!this.state.editData || !Object.keys(this.state.editData).length),
674
+ onClick: function onClick() {
675
+ return _this11.setState({
676
+ deleteMode: false
677
+ }, function () {
678
+ return _this11.props.onDelete(item);
679
+ });
680
+ },
681
+ size: "large"
682
+ }, /*#__PURE__*/_react["default"].createElement(_Check["default"], null)) : null) : null, this.props.onUpdate || this.props.onDelete ? /*#__PURE__*/_react["default"].createElement(_TableCell["default"], {
647
683
  className: _Utils["default"].clsx(this.props.classes.cell, this.props.classes.cellButton)
648
684
  }, this.state.editMode === i || this.state.deleteMode === i ? /*#__PURE__*/_react["default"].createElement(_IconButton["default"], {
649
685
  onClick: function onClick() {
650
- return _this10.setState({
686
+ return _this11.setState({
651
687
  editMode: false,
652
688
  deleteMode: false
653
689
  });
@@ -656,13 +692,13 @@ var TreeTable = /*#__PURE__*/function (_React$Component) {
656
692
  }, /*#__PURE__*/_react["default"].createElement(_Close["default"], null)) : this.props.onDelete ? /*#__PURE__*/_react["default"].createElement(_IconButton["default"], {
657
693
  disabled: this.state.deleteMode !== false,
658
694
  onClick: function onClick() {
659
- return _this10.setState({
695
+ return _this11.setState({
660
696
  deleteMode: i
661
697
  });
662
698
  },
663
699
  size: "large"
664
700
  }, /*#__PURE__*/_react["default"].createElement(_Delete["default"], null)) : null) : null), !level && opened ? children.map(function (item) {
665
- return _this10.renderLine(item, level + 1);
701
+ return _this11.renderLine(item, level + 1);
666
702
  }) : null];
667
703
  }
668
704
  }
@@ -678,7 +714,7 @@ var TreeTable = /*#__PURE__*/function (_React$Component) {
678
714
  }, {
679
715
  key: "renderHead",
680
716
  value: function renderHead() {
681
- var _this11 = this;
717
+ var _this12 = this;
682
718
  return /*#__PURE__*/_react["default"].createElement(_TableHead["default"], null, /*#__PURE__*/_react["default"].createElement(_TableRow["default"], {
683
719
  key: "headerRow"
684
720
  }, /*#__PURE__*/_react["default"].createElement(_TableCell["default"], {
@@ -693,25 +729,25 @@ var TreeTable = /*#__PURE__*/function (_React$Component) {
693
729
  active: this.state.orderBy === this.props.columns[0].field,
694
730
  direction: this.state.orderBy === this.props.columns[0].field ? this.state.order : 'asc',
695
731
  onClick: function onClick() {
696
- return _this11.handleRequestSort(_this11.props.columns[0].field);
732
+ return _this12.handleRequestSort(_this12.props.columns[0].field);
697
733
  }
698
734
  }, this.props.columns[0].title || this.props.columns[0].field, this.state.orderBy === this.props.columns[0].field ? /*#__PURE__*/_react["default"].createElement("span", {
699
735
  className: this.props.classes.visuallyHidden
700
736
  }, this.state.order === 'desc' ? 'sorted descending' : 'sorted ascending') : null)), this.props.columns.map(function (col, i) {
701
737
  return !i && !col.hidden ? null : /*#__PURE__*/_react["default"].createElement(_TableCell["default"], {
702
738
  key: col.field,
703
- className: _Utils["default"].clsx(_this11.props.classes.cell, _this11.props.classes.cellHeader, _this11.props.classes['width_' + col.field.replace(/\./g, '_')]),
739
+ className: _Utils["default"].clsx(_this12.props.classes.cell, _this12.props.classes.cellHeader, _this12.props.classes['width_' + col.field.replace(/\./g, '_')]),
704
740
  style: col.headerStyle || col.cellStyle,
705
741
  component: "th"
706
- }, _this11.props.noSort ? null : /*#__PURE__*/_react["default"].createElement(_TableSortLabel["default"], {
707
- active: _this11.state.orderBy === col.field,
708
- direction: _this11.state.orderBy === col.field ? _this11.state.order : 'asc',
742
+ }, _this12.props.noSort ? null : /*#__PURE__*/_react["default"].createElement(_TableSortLabel["default"], {
743
+ active: _this12.state.orderBy === col.field,
744
+ direction: _this12.state.orderBy === col.field ? _this12.state.order : 'asc',
709
745
  onClick: function onClick() {
710
- return _this11.handleRequestSort(col.field);
746
+ return _this12.handleRequestSort(col.field);
711
747
  }
712
- }, col.title || col.field, _this11.state.orderBy === col.field ? /*#__PURE__*/_react["default"].createElement("span", {
713
- className: _this11.props.classes.visuallyHidden
714
- }, _this11.state.order === 'desc' ? 'sorted descending' : 'sorted ascending') : null));
748
+ }, col.title || col.field, _this12.state.orderBy === col.field ? /*#__PURE__*/_react["default"].createElement("span", {
749
+ className: _this12.props.classes.visuallyHidden
750
+ }, _this12.state.order === 'desc' ? 'sorted descending' : 'sorted ascending') : null));
715
751
  }), this.props.onUpdate ? /*#__PURE__*/_react["default"].createElement(_TableCell["default"], {
716
752
  component: "th",
717
753
  className: _Utils["default"].clsx(this.props.classes.cell, this.props.classes.cellHeader, this.props.classes.cellButton)
@@ -720,7 +756,7 @@ var TreeTable = /*#__PURE__*/function (_React$Component) {
720
756
  size: "small",
721
757
  disabled: this.state.editMode !== false,
722
758
  onClick: function onClick() {
723
- return _this11.props.onUpdate(true);
759
+ return _this12.props.onUpdate(true);
724
760
  }
725
761
  }, /*#__PURE__*/_react["default"].createElement(_Add["default"], null)) : null) : null, this.props.onDelete || this.props.onUpdate ? /*#__PURE__*/_react["default"].createElement(_TableCell["default"], {
726
762
  component: "th",
@@ -730,16 +766,16 @@ var TreeTable = /*#__PURE__*/function (_React$Component) {
730
766
  }, {
731
767
  key: "render",
732
768
  value: function render() {
733
- var _this12 = this;
769
+ var _this13 = this;
734
770
  var lookup = this.props.columns.find(function (col) {
735
- return col.field === _this12.state.orderBy;
771
+ return col.field === _this13.state.orderBy;
736
772
  }).lookup;
737
773
  var table = stableSort(this.props.data, getComparator(this.state.order, this.state.orderBy, lookup));
738
774
  if (this.state.update && this.state.update.length) {
739
775
  this.updateTimeout && clearTimeout(this.updateTimeout);
740
776
  this.updateTimeout = setTimeout(function () {
741
- _this12.updateTimeout = null;
742
- _this12.setState({
777
+ _this13.updateTimeout = null;
778
+ _this13.setState({
743
779
  update: null
744
780
  });
745
781
  }, 500);
@@ -752,7 +788,7 @@ var TreeTable = /*#__PURE__*/function (_React$Component) {
752
788
  size: "small",
753
789
  stickyHeader: true
754
790
  }, this.renderHead(), /*#__PURE__*/_react["default"].createElement(_TableBody["default"], null, table.map(function (item) {
755
- return _this12.renderLine(item);
791
+ return _this13.renderLine(item);
756
792
  }))), this.renderSelectIdDialog(), this.renderSelectColorDialog());
757
793
  }
758
794
  }], [{