@iobroker/adapter-react-v5 3.1.34 → 3.2.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.
Files changed (244) hide show
  1. package/Components/404.js +0 -23
  2. package/Components/404.js.map +1 -1
  3. package/Components/ColorPicker.js +6 -37
  4. package/Components/ColorPicker.js.map +1 -1
  5. package/Components/ComplexCron.js +10 -84
  6. package/Components/ComplexCron.js.map +1 -1
  7. package/Components/CustomModal.js +29 -54
  8. package/Components/CustomModal.js.map +1 -1
  9. package/Components/FileBrowser.js +15 -265
  10. package/Components/FileBrowser.js.map +1 -1
  11. package/Components/FileViewer.js +7 -68
  12. package/Components/FileViewer.js.map +1 -1
  13. package/Components/Icon.d.ts +1 -1
  14. package/Components/Icon.js +2 -42
  15. package/Components/Icon.js.map +1 -1
  16. package/Components/IconPicker.js +6 -28
  17. package/Components/IconPicker.js.map +1 -1
  18. package/Components/IconSelector.js +3 -55
  19. package/Components/IconSelector.js.map +1 -1
  20. package/Components/Image.js +1 -38
  21. package/Components/Image.js.map +1 -1
  22. package/Components/JsonConfigComponent/ChipInput.js +66 -197
  23. package/Components/JsonConfigComponent/ChipInput.js.map +1 -1
  24. package/Components/JsonConfigComponent/ConfigAlive.js +0 -31
  25. package/Components/JsonConfigComponent/ConfigAlive.js.map +1 -1
  26. package/Components/JsonConfigComponent/ConfigAutocomplete.js +6 -39
  27. package/Components/JsonConfigComponent/ConfigAutocomplete.js.map +1 -1
  28. package/Components/JsonConfigComponent/ConfigAutocompleteSendTo.js +6 -52
  29. package/Components/JsonConfigComponent/ConfigAutocompleteSendTo.js.map +1 -1
  30. package/Components/JsonConfigComponent/ConfigCRON.js +5 -39
  31. package/Components/JsonConfigComponent/ConfigCRON.js.map +1 -1
  32. package/Components/JsonConfigComponent/ConfigCertificateSelect.js +4 -42
  33. package/Components/JsonConfigComponent/ConfigCertificateSelect.js.map +1 -1
  34. package/Components/JsonConfigComponent/ConfigCheckbox.js +0 -28
  35. package/Components/JsonConfigComponent/ConfigCheckbox.js.map +1 -1
  36. package/Components/JsonConfigComponent/ConfigChip.js +4 -33
  37. package/Components/JsonConfigComponent/ConfigChip.js.map +1 -1
  38. package/Components/JsonConfigComponent/ConfigColor.js +0 -34
  39. package/Components/JsonConfigComponent/ConfigColor.js.map +1 -1
  40. package/Components/JsonConfigComponent/ConfigCoordinates.js +0 -33
  41. package/Components/JsonConfigComponent/ConfigCoordinates.js.map +1 -1
  42. package/Components/JsonConfigComponent/ConfigCustom.js +14 -73
  43. package/Components/JsonConfigComponent/ConfigCustom.js.map +1 -1
  44. package/Components/JsonConfigComponent/ConfigDatePicker.js +0 -25
  45. package/Components/JsonConfigComponent/ConfigDatePicker.js.map +1 -1
  46. package/Components/JsonConfigComponent/ConfigFile.js +0 -46
  47. package/Components/JsonConfigComponent/ConfigFile.js.map +1 -1
  48. package/Components/JsonConfigComponent/ConfigFileSelector.js +7 -126
  49. package/Components/JsonConfigComponent/ConfigFileSelector.js.map +1 -1
  50. package/Components/JsonConfigComponent/ConfigFunc.js +0 -34
  51. package/Components/JsonConfigComponent/ConfigFunc.js.map +1 -1
  52. package/Components/JsonConfigComponent/ConfigGeneric.js +15 -110
  53. package/Components/JsonConfigComponent/ConfigGeneric.js.map +1 -1
  54. package/Components/JsonConfigComponent/ConfigIP.js +2 -35
  55. package/Components/JsonConfigComponent/ConfigIP.js.map +1 -1
  56. package/Components/JsonConfigComponent/ConfigImageUpload.js +4 -44
  57. package/Components/JsonConfigComponent/ConfigImageUpload.js.map +1 -1
  58. package/Components/JsonConfigComponent/ConfigInstanceSelect.js +1 -59
  59. package/Components/JsonConfigComponent/ConfigInstanceSelect.js.map +1 -1
  60. package/Components/JsonConfigComponent/ConfigJsonEditor.js +7 -40
  61. package/Components/JsonConfigComponent/ConfigJsonEditor.js.map +1 -1
  62. package/Components/JsonConfigComponent/ConfigLanguage.js +2 -42
  63. package/Components/JsonConfigComponent/ConfigLanguage.js.map +1 -1
  64. package/Components/JsonConfigComponent/ConfigNumber.js +2 -45
  65. package/Components/JsonConfigComponent/ConfigNumber.js.map +1 -1
  66. package/Components/JsonConfigComponent/ConfigObjectId.js +6 -40
  67. package/Components/JsonConfigComponent/ConfigObjectId.js.map +1 -1
  68. package/Components/JsonConfigComponent/ConfigPanel.js +7 -91
  69. package/Components/JsonConfigComponent/ConfigPanel.js.map +1 -1
  70. package/Components/JsonConfigComponent/ConfigPassword.js +0 -42
  71. package/Components/JsonConfigComponent/ConfigPassword.js.map +1 -1
  72. package/Components/JsonConfigComponent/ConfigPattern.js +0 -25
  73. package/Components/JsonConfigComponent/ConfigPattern.js.map +1 -1
  74. package/Components/JsonConfigComponent/ConfigRoom.js +0 -34
  75. package/Components/JsonConfigComponent/ConfigRoom.js.map +1 -1
  76. package/Components/JsonConfigComponent/ConfigSelect.js +4 -34
  77. package/Components/JsonConfigComponent/ConfigSelect.js.map +1 -1
  78. package/Components/JsonConfigComponent/ConfigSelectSendTo.js +11 -67
  79. package/Components/JsonConfigComponent/ConfigSelectSendTo.js.map +1 -1
  80. package/Components/JsonConfigComponent/ConfigSendto.js +8 -91
  81. package/Components/JsonConfigComponent/ConfigSendto.js.map +1 -1
  82. package/Components/JsonConfigComponent/ConfigSetState.js +0 -55
  83. package/Components/JsonConfigComponent/ConfigSetState.js.map +1 -1
  84. package/Components/JsonConfigComponent/ConfigSlider.js +0 -28
  85. package/Components/JsonConfigComponent/ConfigSlider.js.map +1 -1
  86. package/Components/JsonConfigComponent/ConfigStaticDivider.js +0 -21
  87. package/Components/JsonConfigComponent/ConfigStaticDivider.js.map +1 -1
  88. package/Components/JsonConfigComponent/ConfigStaticHeader.js +0 -24
  89. package/Components/JsonConfigComponent/ConfigStaticHeader.js.map +1 -1
  90. package/Components/JsonConfigComponent/ConfigStaticImage.js +0 -23
  91. package/Components/JsonConfigComponent/ConfigStaticImage.js.map +1 -1
  92. package/Components/JsonConfigComponent/ConfigStaticText.js +0 -31
  93. package/Components/JsonConfigComponent/ConfigStaticText.js.map +1 -1
  94. package/Components/JsonConfigComponent/ConfigTable.js +13 -105
  95. package/Components/JsonConfigComponent/ConfigTable.js.map +1 -1
  96. package/Components/JsonConfigComponent/ConfigTabs.js +2 -35
  97. package/Components/JsonConfigComponent/ConfigTabs.js.map +1 -1
  98. package/Components/JsonConfigComponent/ConfigText.js +0 -34
  99. package/Components/JsonConfigComponent/ConfigText.js.map +1 -1
  100. package/Components/JsonConfigComponent/ConfigTextSendTo.js +0 -37
  101. package/Components/JsonConfigComponent/ConfigTextSendTo.js.map +1 -1
  102. package/Components/JsonConfigComponent/ConfigTimePicker.js +0 -25
  103. package/Components/JsonConfigComponent/ConfigTimePicker.js.map +1 -1
  104. package/Components/JsonConfigComponent/ConfigTopic.js +0 -29
  105. package/Components/JsonConfigComponent/ConfigTopic.js.map +1 -1
  106. package/Components/JsonConfigComponent/ConfigUser.js +2 -40
  107. package/Components/JsonConfigComponent/ConfigUser.js.map +1 -1
  108. package/Components/JsonConfigComponent/index.js +5 -81
  109. package/Components/JsonConfigComponent/index.js.map +1 -1
  110. package/Components/Loader.js +2 -20
  111. package/Components/Loader.js.map +1 -1
  112. package/Components/Loaders/PT.js +2 -20
  113. package/Components/Loaders/PT.js.map +1 -1
  114. package/Components/Loaders/Vendor.js +2 -21
  115. package/Components/Loaders/Vendor.js.map +1 -1
  116. package/Components/Logo.js +6 -39
  117. package/Components/Logo.js.map +1 -1
  118. package/Components/MDUtils.js +3 -27
  119. package/Components/MDUtils.js.map +1 -1
  120. package/Components/ObjectBrowser.d.ts +1 -1
  121. package/Components/ObjectBrowser.js +181 -788
  122. package/Components/ObjectBrowser.js.map +1 -1
  123. package/Components/Router.js +7 -31
  124. package/Components/Router.js.map +1 -1
  125. package/Components/SaveCloseButtons.js +2 -32
  126. package/Components/SaveCloseButtons.js.map +1 -1
  127. package/Components/Schedule.js +29 -251
  128. package/Components/Schedule.js.map +1 -1
  129. package/Components/SelectWithIcon.d.ts +1 -1
  130. package/Components/SelectWithIcon.js +0 -48
  131. package/Components/SelectWithIcon.js.map +1 -1
  132. package/Components/SimpleCron/cron2text.js +45 -91
  133. package/Components/SimpleCron/cron2text.js.map +1 -1
  134. package/Components/SimpleCron/cronText.js +0 -6
  135. package/Components/SimpleCron/cronText.js.map +1 -1
  136. package/Components/SimpleCron/index.js +19 -102
  137. package/Components/SimpleCron/index.js.map +1 -1
  138. package/Components/SimpleCron/jquery.cron.locale.js +44 -24
  139. package/Components/SimpleCron/jquery.cron.locale.js.map +1 -1
  140. package/Components/TabContainer.js +2 -23
  141. package/Components/TabContainer.js.map +1 -1
  142. package/Components/TabContent.js +2 -22
  143. package/Components/TabContent.js.map +1 -1
  144. package/Components/TabHeader.js +1 -17
  145. package/Components/TabHeader.js.map +1 -1
  146. package/Components/TableResize.js +6 -51
  147. package/Components/TableResize.js.map +1 -1
  148. package/Components/TextWithIcon.js +0 -20
  149. package/Components/TextWithIcon.js.map +1 -1
  150. package/Components/ToggleThemeMenu.js +5 -13
  151. package/Components/ToggleThemeMenu.js.map +1 -1
  152. package/Components/TreeTable.js +4 -121
  153. package/Components/TreeTable.js.map +1 -1
  154. package/Components/UploadImage.js +17 -60
  155. package/Components/UploadImage.js.map +1 -1
  156. package/Components/Utils.js +87 -263
  157. package/Components/Utils.js.map +1 -1
  158. package/Components/copy-to-clipboard.js +16 -38
  159. package/Components/copy-to-clipboard.js.map +1 -1
  160. package/Components/withWidth.js +2 -10
  161. package/Components/withWidth.js.map +1 -1
  162. package/Connection.d.ts +1 -0
  163. package/Connection.js +156 -527
  164. package/Connection.js.map +1 -1
  165. package/Dialogs/ComplexCron.js +0 -34
  166. package/Dialogs/ComplexCron.js.map +1 -1
  167. package/Dialogs/Confirm.js +1 -39
  168. package/Dialogs/Confirm.js.map +1 -1
  169. package/Dialogs/Cron.js +1 -37
  170. package/Dialogs/Cron.js.map +1 -1
  171. package/Dialogs/Error.d.ts +1 -1
  172. package/Dialogs/Error.js +2 -29
  173. package/Dialogs/Error.js.map +1 -1
  174. package/Dialogs/FileSelect.js +2 -36
  175. package/Dialogs/FileSelect.js.map +1 -1
  176. package/Dialogs/Message.js +2 -27
  177. package/Dialogs/Message.js.map +1 -1
  178. package/Dialogs/SelectID.d.ts +1 -1
  179. package/Dialogs/SelectID.js +3 -40
  180. package/Dialogs/SelectID.js.map +1 -1
  181. package/Dialogs/SimpleCron.js +1 -33
  182. package/Dialogs/SimpleCron.js.map +1 -1
  183. package/Dialogs/TextInput.js +2 -34
  184. package/Dialogs/TextInput.js.map +1 -1
  185. package/GenericApp.js +55 -150
  186. package/GenericApp.js.map +1 -1
  187. package/Prompt.js +0 -2
  188. package/Prompt.js.map +1 -1
  189. package/README.md +11 -4
  190. package/Theme.js +7 -22
  191. package/Theme.js.map +1 -1
  192. package/i18n/uk.json +326 -0
  193. package/i18n.d.ts +2 -0
  194. package/i18n.js +9 -29
  195. package/i18n.js.map +1 -1
  196. package/icons/IconAdapter.d.ts +2 -2
  197. package/icons/IconAdapter.js +2 -6
  198. package/icons/IconAdapter.js.map +1 -1
  199. package/icons/IconAlias.d.ts +2 -2
  200. package/icons/IconAlias.js +2 -6
  201. package/icons/IconAlias.js.map +1 -1
  202. package/icons/IconChannel.d.ts +2 -2
  203. package/icons/IconChannel.js +2 -6
  204. package/icons/IconChannel.js.map +1 -1
  205. package/icons/IconClearFilter.d.ts +2 -2
  206. package/icons/IconClearFilter.js +0 -5
  207. package/icons/IconClearFilter.js.map +1 -1
  208. package/icons/IconClosed.d.ts +2 -2
  209. package/icons/IconClosed.js +0 -5
  210. package/icons/IconClosed.js.map +1 -1
  211. package/icons/IconCopy.d.ts +2 -2
  212. package/icons/IconCopy.js +0 -5
  213. package/icons/IconCopy.js.map +1 -1
  214. package/icons/IconDevice.d.ts +2 -2
  215. package/icons/IconDevice.js +0 -5
  216. package/icons/IconDevice.js.map +1 -1
  217. package/icons/IconDocument.d.ts +2 -2
  218. package/icons/IconDocument.js +0 -5
  219. package/icons/IconDocument.js.map +1 -1
  220. package/icons/IconDocumentReadOnly.d.ts +2 -2
  221. package/icons/IconDocumentReadOnly.js +0 -5
  222. package/icons/IconDocumentReadOnly.js.map +1 -1
  223. package/icons/IconExpert.d.ts +2 -2
  224. package/icons/IconExpert.js +0 -5
  225. package/icons/IconExpert.js.map +1 -1
  226. package/icons/IconFx.d.ts +2 -2
  227. package/icons/IconFx.js +0 -5
  228. package/icons/IconFx.js.map +1 -1
  229. package/icons/IconInstance.d.ts +2 -2
  230. package/icons/IconInstance.js +0 -5
  231. package/icons/IconInstance.js.map +1 -1
  232. package/icons/IconLogout.d.ts +2 -2
  233. package/icons/IconLogout.js +0 -5
  234. package/icons/IconLogout.js.map +1 -1
  235. package/icons/IconNoIcon.d.ts +2 -2
  236. package/icons/IconNoIcon.js +0 -5
  237. package/icons/IconNoIcon.js.map +1 -1
  238. package/icons/IconOpen.d.ts +2 -2
  239. package/icons/IconOpen.js +0 -5
  240. package/icons/IconOpen.js.map +1 -1
  241. package/icons/IconState.d.ts +2 -2
  242. package/icons/IconState.js +0 -6
  243. package/icons/IconState.js.map +1 -1
  244. package/package.json +15 -15
@@ -1,60 +1,34 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports["default"] = void 0;
9
-
10
8
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
-
12
9
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
-
14
10
  var _get2 = _interopRequireDefault(require("@babel/runtime/helpers/get"));
15
-
16
11
  var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
17
-
18
12
  var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
19
-
20
13
  var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
21
-
22
14
  var _react = _interopRequireDefault(require("react"));
23
-
24
15
  var _propTypes = _interopRequireDefault(require("prop-types"));
25
-
26
16
  var _styles = require("@mui/styles");
27
-
28
17
  var _InputLabel = _interopRequireDefault(require("@mui/material/InputLabel"));
29
-
30
18
  var _MenuItem = _interopRequireDefault(require("@mui/material/MenuItem"));
31
-
32
19
  var _FormHelperText = _interopRequireDefault(require("@mui/material/FormHelperText"));
33
-
34
20
  var _FormControl = _interopRequireDefault(require("@mui/material/FormControl"));
35
-
36
21
  var _Select = _interopRequireDefault(require("@mui/material/Select"));
37
-
38
22
  var _TextField = _interopRequireDefault(require("@mui/material/TextField"));
39
-
40
23
  var _CircularProgress = _interopRequireDefault(require("@mui/material/CircularProgress"));
41
-
42
24
  var _ListItemText = _interopRequireDefault(require("@mui/material/ListItemText"));
43
-
44
25
  var _Checkbox = _interopRequireDefault(require("@mui/material/Checkbox"));
45
-
46
26
  var _Chip = _interopRequireDefault(require("@mui/material/Chip"));
47
-
48
27
  var _Box = _interopRequireDefault(require("@mui/material/Box"));
49
-
50
28
  var _i18n = _interopRequireDefault(require("../../i18n"));
51
-
52
29
  var _ConfigGeneric2 = _interopRequireDefault(require("./ConfigGeneric"));
53
-
54
30
  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); }; }
55
-
56
31
  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; } }
57
-
58
32
  var styles = function styles(theme) {
59
33
  return {
60
34
  fullWidth: {
@@ -65,6 +39,7 @@ var styles = function styles(theme) {
65
39
  }
66
40
  };
67
41
  };
42
+
68
43
  /*
69
44
  to use this option, your adapter must implement listUart message
70
45
 
@@ -101,18 +76,13 @@ adapter.on('message', obj => {
101
76
  }
102
77
  });
103
78
  */
104
-
105
-
106
79
  var ConfigSelectSendTo = /*#__PURE__*/function (_ConfigGeneric) {
107
80
  (0, _inherits2["default"])(ConfigSelectSendTo, _ConfigGeneric);
108
-
109
81
  var _super = _createSuper(ConfigSelectSendTo);
110
-
111
82
  function ConfigSelectSendTo() {
112
83
  (0, _classCallCheck2["default"])(this, ConfigSelectSendTo);
113
84
  return _super.apply(this, arguments);
114
85
  }
115
-
116
86
  (0, _createClass2["default"])(ConfigSelectSendTo, [{
117
87
  key: "componentDidMount",
118
88
  value: function componentDidMount() {
@@ -123,24 +93,19 @@ var ConfigSelectSendTo = /*#__PURE__*/function (_ConfigGeneric) {
123
93
  key: "askInstance",
124
94
  value: function askInstance() {
125
95
  var _this = this;
126
-
127
96
  if (this.props.alive) {
128
97
  var data = this.props.schema.data;
129
-
130
98
  if (data === undefined && this.props.schema.jsonData) {
131
99
  data = this.getPattern(this.props.schema.jsonData);
132
-
133
100
  try {
134
101
  data = JSON.parse(data);
135
102
  } catch (e) {
136
103
  console.error('Cannot parse json data: ' + data);
137
104
  }
138
105
  }
139
-
140
106
  if (data === undefined) {
141
107
  data = null;
142
108
  }
143
-
144
109
  this.props.socket.sendTo("".concat(this.props.adapterName, ".").concat(this.props.instance), this.props.schema.command || 'send', data).then(function (list) {
145
110
  return _this.setState({
146
111
  list: list,
@@ -149,7 +114,6 @@ var ConfigSelectSendTo = /*#__PURE__*/function (_ConfigGeneric) {
149
114
  });
150
115
  } else {
151
116
  var value = _ConfigGeneric2["default"].getValue(this.props.data, this.props.attr);
152
-
153
117
  this.setState({
154
118
  value: value
155
119
  });
@@ -159,22 +123,18 @@ var ConfigSelectSendTo = /*#__PURE__*/function (_ConfigGeneric) {
159
123
  key: "getContext",
160
124
  value: function getContext() {
161
125
  var _this2 = this;
162
-
163
126
  var context = {};
164
-
165
127
  if (Array.isArray(this.props.schema.alsoDependsOn)) {
166
128
  this.props.schema.alsoDependsOn.forEach(function (attr) {
167
129
  return context[attr] = _ConfigGeneric2["default"].getValue(_this2.props.data, attr);
168
130
  });
169
131
  }
170
-
171
132
  return JSON.stringify(context);
172
133
  }
173
134
  }, {
174
135
  key: "_getValue",
175
136
  value: function _getValue() {
176
137
  var value = this.state.value === null || this.state.value === undefined ? _ConfigGeneric2["default"].getValue(this.props.data, this.props.attr) : this.state.value;
177
-
178
138
  if (this.props.schema.multiple) {
179
139
  if (typeof value === 'string') {
180
140
  value = [value];
@@ -182,26 +142,21 @@ var ConfigSelectSendTo = /*#__PURE__*/function (_ConfigGeneric) {
182
142
  value = [];
183
143
  }
184
144
  }
185
-
186
145
  return value;
187
146
  }
188
147
  }, {
189
148
  key: "renderItem",
190
149
  value: function renderItem(error, disabled, defaultValue) {
191
150
  var _this3 = this;
192
-
193
151
  if (this.props.alive) {
194
152
  var context = this.getContext();
195
-
196
153
  if (context !== this.state.context) {
197
154
  setTimeout(function () {
198
155
  return _this3.askInstance();
199
156
  }, 300);
200
157
  }
201
158
  }
202
-
203
159
  var value = this._getValue();
204
-
205
160
  if (!this.props.alive) {
206
161
  if (this.props.schema.multiple || this.props.schema.manual === false) {
207
162
  return _i18n["default"].t('ra_Cannot retrieve options, as instance is offline');
@@ -214,7 +169,6 @@ var ConfigSelectSendTo = /*#__PURE__*/function (_ConfigGeneric) {
214
169
  disabled: !!disabled,
215
170
  onChange: function onChange(e) {
216
171
  var value = e.target.value;
217
-
218
172
  _this3.setState({
219
173
  value: value
220
174
  }, function () {
@@ -268,23 +222,20 @@ var ConfigSelectSendTo = /*#__PURE__*/function (_ConfigGeneric) {
268
222
  var item = selectOptions.find(function (_item) {
269
223
  return _item.value === v;
270
224
  });
271
-
272
225
  if (item || _this3.props.schema.showAllValues !== false) {
273
226
  var label = (item === null || item === void 0 ? void 0 : item.label) || v;
274
227
  return /*#__PURE__*/_react["default"].createElement(_Chip["default"], {
275
228
  key: v,
276
- label: label
277
- /* onDelete={e => {
278
- e.stopPropagation();
279
- e.preventDefault ();
280
- let _value = JSON.parse(JSON.stringify(this._getValue()));
281
- const pos = value.indexOf(v);
282
- if (pos !== -1) {
283
- _value.splice(pos, 1);
284
- this.setState({ value: _value }, () => this.onChange(this.props.attr, _value));
285
- }
286
- }}*/
287
-
229
+ label: label /* onDelete={e => {
230
+ e.stopPropagation();
231
+ e.preventDefault ();
232
+ let _value = JSON.parse(JSON.stringify(this._getValue()));
233
+ const pos = value.indexOf(v);
234
+ if (pos !== -1) {
235
+ _value.splice(pos, 1);
236
+ this.setState({ value: _value }, () => this.onChange(this.props.attr, _value));
237
+ }
238
+ }}*/
288
239
  });
289
240
  } else {
290
241
  return null;
@@ -302,17 +253,13 @@ var ConfigSelectSendTo = /*#__PURE__*/function (_ConfigGeneric) {
302
253
  checked: value.includes(item.value),
303
254
  onClick: function onClick() {
304
255
  var _value = JSON.parse(JSON.stringify(_this3._getValue()));
305
-
306
256
  var pos = value.indexOf(item.value);
307
-
308
257
  if (pos !== -1) {
309
258
  _value.splice(pos, 1);
310
259
  } else {
311
260
  _value.push(item.value);
312
-
313
261
  _value.sort();
314
262
  }
315
-
316
263
  _this3.setState({
317
264
  value: _value
318
265
  }, function () {
@@ -328,7 +275,6 @@ var ConfigSelectSendTo = /*#__PURE__*/function (_ConfigGeneric) {
328
275
  }]);
329
276
  return ConfigSelectSendTo;
330
277
  }(_ConfigGeneric2["default"]);
331
-
332
278
  ConfigSelectSendTo.propTypes = {
333
279
  socket: _propTypes["default"].object.isRequired,
334
280
  themeType: _propTypes["default"].string,
@@ -343,8 +289,6 @@ ConfigSelectSendTo.propTypes = {
343
289
  onError: _propTypes["default"].func,
344
290
  onChange: _propTypes["default"].func
345
291
  };
346
-
347
292
  var _default = (0, _styles.withStyles)(styles)(ConfigSelectSendTo);
348
-
349
293
  exports["default"] = _default;
350
294
  //# sourceMappingURL=ConfigSelectSendTo.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ConfigSelectSendTo.js","names":["styles","theme","fullWidth","width","menuPaper","maxHeight","ConfigSelectSendTo","askInstance","props","alive","data","schema","undefined","jsonData","getPattern","JSON","parse","e","console","error","socket","sendTo","adapterName","instance","command","then","list","setState","context","getContext","value","ConfigGeneric","getValue","attr","Array","isArray","alsoDependsOn","forEach","stringify","state","multiple","disabled","defaultValue","setTimeout","_getValue","manual","I18n","t","target","onChange","trim","getText","placeholder","label","renderHelp","help","helpLink","noTranslation","selectOptions","filter","item","hidden","custom","executeCustom","instanceObj","arrayIndex","globalData","execute","find","classes","paper","val","display","flexWrap","gap","map","v","_item","showAllValues","i","includes","_value","pos","indexOf","splice","push","sort","propTypes","PropTypes","object","isRequired","themeType","string","themeName","style","bool","number","className","onError","func","withStyles"],"sources":["JsonConfigComponent/ConfigSelectSendTo.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@mui/styles';\n\nimport InputLabel from '@mui/material/InputLabel';\nimport MenuItem from '@mui/material/MenuItem';\nimport FormHelperText from '@mui/material/FormHelperText';\nimport FormControl from '@mui/material/FormControl';\nimport Select from '@mui/material/Select';\nimport TextField from '@mui/material/TextField';\nimport CircularProgress from '@mui/material/CircularProgress';\nimport ListItemText from '@mui/material/ListItemText';\nimport Checkbox from '@mui/material/Checkbox';\nimport Chip from '@mui/material/Chip';\nimport Box from '@mui/material/Box';\n\nimport I18n from '../../i18n';\n\nimport ConfigGeneric from './ConfigGeneric';\n\nconst styles = theme => ({\n fullWidth: {\n width: '100%'\n },\n menuPaper: {\n maxHeight: 800\n },\n});\n\n/*\nto use this option, your adapter must implement listUart message\n\nadapter.on('message', obj => {\n if (obj) {\n switch (obj.command) {\n case 'command':\n if (obj.callback) {\n try {\n const serialport = require('serialport');\n if (serialport) {\n // read all found serial ports\n serialport.list()\n .then(ports => {\n adapter.log.info('List of port: ' + JSON.stringify(ports));\n adapter.sendTo(obj.from, obj.command, ports.map(item =>\n ({label: item.path, value: item.path})), obj.callback);\n })\n .catch(e => {\n adapter.sendTo(obj.from, obj.command, [], obj.callback);\n adapter.log.error(e)\n });\n } else {\n adapter.log.warn('Module serialport is not available');\n adapter.sendTo(obj.from, obj.command, [{label: 'Not available', value: ''}], obj.callback);\n }\n } catch (e) {\n adapter.sendTo(obj.from, obj.command, [{label: 'Not available', value: ''}], obj.callback);\n }\n }\n\n break;\n }\n }\n});\n */\n\nclass ConfigSelectSendTo extends ConfigGeneric {\n componentDidMount() {\n super.componentDidMount();\n\n this.askInstance();\n }\n\n askInstance(){\n if (this.props.alive) {\n let data = this.props.schema.data;\n if (data === undefined && this.props.schema.jsonData) {\n data = this.getPattern(this.props.schema.jsonData);\n try {\n data = JSON.parse(data);\n } catch (e) {\n console.error('Cannot parse json data: ' + data);\n }\n }\n\n if (data === undefined) {\n data = null;\n }\n\n this.props.socket.sendTo(`${this.props.adapterName}.${this.props.instance}`, this.props.schema.command || 'send', data)\n .then(list =>\n this.setState({ list, context: this.getContext() }));\n } else {\n const value = ConfigGeneric.getValue(this.props.data, this.props.attr);\n\n this.setState({ value });\n }\n }\n\n getContext() {\n const context = {};\n\n if (Array.isArray(this.props.schema.alsoDependsOn)) {\n this.props.schema.alsoDependsOn.forEach(attr =>\n context[attr] = ConfigGeneric.getValue(this.props.data, attr));\n }\n\n return JSON.stringify(context);\n }\n\n _getValue() {\n let value = this.state.value === null || this.state.value === undefined ? ConfigGeneric.getValue(this.props.data, this.props.attr) : this.state.value;\n\n if (this.props.schema.multiple) {\n if (typeof value === 'string') {\n value = [value];\n } else if (value === null || value === undefined) {\n value = [];\n }\n }\n\n return value;\n }\n\n renderItem(error, disabled, defaultValue) {\n if (this.props.alive) {\n const context = this.getContext();\n if (context !== this.state.context) {\n setTimeout(() => this.askInstance(), 300);\n }\n }\n\n let value = this._getValue();\n\n if (!this.props.alive) {\n if (this.props.schema.multiple || this.props.schema.manual === false) {\n return I18n.t('ra_Cannot retrieve options, as instance is offline');\n } else {\n return <TextField\n variant=\"standard\"\n fullWidth\n value={value}\n error={!!error}\n disabled={!!disabled}\n onChange={e => {\n const value = e.target.value;\n this.setState({ value }, () =>\n this.onChange(this.props.attr, (value || '').trim()));\n }}\n placeholder={this.getText(this.props.schema.placeholder)}\n label={this.getText(this.props.schema.label)}\n helperText={this.renderHelp(this.props.schema.help, this.props.schema.helpLink, this.props.schema.noTranslation)}\n />;\n }\n } else\n if (!this.state.list) {\n return <CircularProgress size=\"small\"/>;\n } else {\n const selectOptions = this.state.list\n .filter(item => {\n if (!item.hidden) {\n return true;\n } else if (this.props.custom) {\n return !this.executeCustom(item.hidden, this.props.schema.default, this.props.data, this.props.instanceObj, this.props.arrayIndex, this.props.globalData);\n } else {\n return !this.execute(item.hidden, this.props.schema.default, this.props.data, this.props.arrayIndex, this.props.globalData);\n }\n });\n\n const item = selectOptions.find(item => item.value === value);\n\n return <FormControl variant=\"standard\" className={this.props.classes.fullWidth}>\n { this.props.schema.label ? <InputLabel>{this.getText(this.props.schema.label)}</InputLabel> : null }\n <Select\n variant=\"standard\"\n error={!!error}\n multiple={this.props.schema.multiple}\n disabled={!!disabled}\n value={value}\n MenuProps={this.props.schema.multiple ? { classes: { paper: this.props.classes.menuPaper } } : undefined}\n renderValue={val =>\n this.props.schema.multiple ?\n <Box sx={{ display: 'flex', flexWrap: 'wrap', gap: 0.5 }}>\n {val.map(v => {\n const item = selectOptions.find(_item => _item.value === v);\n if (item || this.props.schema.showAllValues !== false) {\n const label = item?.label || v;\n return <Chip key={v} label={label}/* onDelete={e => {\n e.stopPropagation();\n e.preventDefault ();\n let _value = JSON.parse(JSON.stringify(this._getValue()));\n const pos = value.indexOf(v);\n if (pos !== -1) {\n _value.splice(pos, 1);\n this.setState({ value: _value }, () => this.onChange(this.props.attr, _value));\n }\n }}*/ />;\n } else {\n return null;\n }\n })}\n </Box>\n :\n (item?.label || val)\n }\n onChange={e => {\n this.onChange(this.props.attr, e.target.value);\n }}\n >\n {selectOptions.map((item, i) =>\n <MenuItem key={i} value={item.value}>\n { this.props.schema.multiple ? <Checkbox\n checked={value.includes(item.value)}\n onClick={() => {\n let _value = JSON.parse(JSON.stringify(this._getValue()));\n const pos = value.indexOf(item.value);\n if (pos !== -1) {\n _value.splice(pos, 1);\n } else {\n _value.push(item.value);\n _value.sort();\n }\n this.setState({ value: _value }, () => this.onChange(this.props.attr, _value));\n }}/> : null }\n <ListItemText primary={item.label} />\n </MenuItem>)}\n </Select>\n {this.props.schema.help ? <FormHelperText>{this.renderHelp(this.props.schema.help, this.props.schema.helpLink, this.props.schema.noTranslation)}</FormHelperText> : null}\n </FormControl>;\n }\n }\n}\n\nConfigSelectSendTo.propTypes = {\n socket: PropTypes.object.isRequired,\n themeType: PropTypes.string,\n themeName: PropTypes.string,\n style: PropTypes.object,\n adapterName: PropTypes.string,\n alive: PropTypes.bool,\n instance: PropTypes.number,\n className: PropTypes.string,\n data: PropTypes.object.isRequired,\n schema: PropTypes.object,\n onError: PropTypes.func,\n onChange: PropTypes.func,\n};\n\nexport default withStyles(styles)(ConfigSelectSendTo);\n"],"mappings":"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"}
1
+ {"version":3,"file":"ConfigSelectSendTo.js","names":["styles","theme","fullWidth","width","menuPaper","maxHeight","ConfigSelectSendTo","askInstance","props","alive","data","schema","undefined","jsonData","getPattern","JSON","parse","e","console","error","socket","sendTo","adapterName","instance","command","then","list","setState","context","getContext","value","ConfigGeneric","getValue","attr","Array","isArray","alsoDependsOn","forEach","stringify","state","multiple","disabled","defaultValue","setTimeout","_getValue","manual","I18n","t","target","onChange","trim","getText","placeholder","label","renderHelp","help","helpLink","noTranslation","selectOptions","filter","item","hidden","custom","executeCustom","instanceObj","arrayIndex","globalData","execute","find","classes","paper","val","display","flexWrap","gap","map","v","_item","showAllValues","i","includes","_value","pos","indexOf","splice","push","sort","propTypes","PropTypes","object","isRequired","themeType","string","themeName","style","bool","number","className","onError","func","withStyles"],"sources":["JsonConfigComponent/ConfigSelectSendTo.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@mui/styles';\n\nimport InputLabel from '@mui/material/InputLabel';\nimport MenuItem from '@mui/material/MenuItem';\nimport FormHelperText from '@mui/material/FormHelperText';\nimport FormControl from '@mui/material/FormControl';\nimport Select from '@mui/material/Select';\nimport TextField from '@mui/material/TextField';\nimport CircularProgress from '@mui/material/CircularProgress';\nimport ListItemText from '@mui/material/ListItemText';\nimport Checkbox from '@mui/material/Checkbox';\nimport Chip from '@mui/material/Chip';\nimport Box from '@mui/material/Box';\n\nimport I18n from '../../i18n';\n\nimport ConfigGeneric from './ConfigGeneric';\n\nconst styles = theme => ({\n fullWidth: {\n width: '100%'\n },\n menuPaper: {\n maxHeight: 800\n },\n});\n\n/*\nto use this option, your adapter must implement listUart message\n\nadapter.on('message', obj => {\n if (obj) {\n switch (obj.command) {\n case 'command':\n if (obj.callback) {\n try {\n const serialport = require('serialport');\n if (serialport) {\n // read all found serial ports\n serialport.list()\n .then(ports => {\n adapter.log.info('List of port: ' + JSON.stringify(ports));\n adapter.sendTo(obj.from, obj.command, ports.map(item =>\n ({label: item.path, value: item.path})), obj.callback);\n })\n .catch(e => {\n adapter.sendTo(obj.from, obj.command, [], obj.callback);\n adapter.log.error(e)\n });\n } else {\n adapter.log.warn('Module serialport is not available');\n adapter.sendTo(obj.from, obj.command, [{label: 'Not available', value: ''}], obj.callback);\n }\n } catch (e) {\n adapter.sendTo(obj.from, obj.command, [{label: 'Not available', value: ''}], obj.callback);\n }\n }\n\n break;\n }\n }\n});\n */\n\nclass ConfigSelectSendTo extends ConfigGeneric {\n componentDidMount() {\n super.componentDidMount();\n\n this.askInstance();\n }\n\n askInstance(){\n if (this.props.alive) {\n let data = this.props.schema.data;\n if (data === undefined && this.props.schema.jsonData) {\n data = this.getPattern(this.props.schema.jsonData);\n try {\n data = JSON.parse(data);\n } catch (e) {\n console.error('Cannot parse json data: ' + data);\n }\n }\n\n if (data === undefined) {\n data = null;\n }\n\n this.props.socket.sendTo(`${this.props.adapterName}.${this.props.instance}`, this.props.schema.command || 'send', data)\n .then(list =>\n this.setState({ list, context: this.getContext() }));\n } else {\n const value = ConfigGeneric.getValue(this.props.data, this.props.attr);\n\n this.setState({ value });\n }\n }\n\n getContext() {\n const context = {};\n\n if (Array.isArray(this.props.schema.alsoDependsOn)) {\n this.props.schema.alsoDependsOn.forEach(attr =>\n context[attr] = ConfigGeneric.getValue(this.props.data, attr));\n }\n\n return JSON.stringify(context);\n }\n\n _getValue() {\n let value = this.state.value === null || this.state.value === undefined ? ConfigGeneric.getValue(this.props.data, this.props.attr) : this.state.value;\n\n if (this.props.schema.multiple) {\n if (typeof value === 'string') {\n value = [value];\n } else if (value === null || value === undefined) {\n value = [];\n }\n }\n\n return value;\n }\n\n renderItem(error, disabled, defaultValue) {\n if (this.props.alive) {\n const context = this.getContext();\n if (context !== this.state.context) {\n setTimeout(() => this.askInstance(), 300);\n }\n }\n\n let value = this._getValue();\n\n if (!this.props.alive) {\n if (this.props.schema.multiple || this.props.schema.manual === false) {\n return I18n.t('ra_Cannot retrieve options, as instance is offline');\n } else {\n return <TextField\n variant=\"standard\"\n fullWidth\n value={value}\n error={!!error}\n disabled={!!disabled}\n onChange={e => {\n const value = e.target.value;\n this.setState({ value }, () =>\n this.onChange(this.props.attr, (value || '').trim()));\n }}\n placeholder={this.getText(this.props.schema.placeholder)}\n label={this.getText(this.props.schema.label)}\n helperText={this.renderHelp(this.props.schema.help, this.props.schema.helpLink, this.props.schema.noTranslation)}\n />;\n }\n } else\n if (!this.state.list) {\n return <CircularProgress size=\"small\"/>;\n } else {\n const selectOptions = this.state.list\n .filter(item => {\n if (!item.hidden) {\n return true;\n } else if (this.props.custom) {\n return !this.executeCustom(item.hidden, this.props.schema.default, this.props.data, this.props.instanceObj, this.props.arrayIndex, this.props.globalData);\n } else {\n return !this.execute(item.hidden, this.props.schema.default, this.props.data, this.props.arrayIndex, this.props.globalData);\n }\n });\n\n const item = selectOptions.find(item => item.value === value);\n\n return <FormControl variant=\"standard\" className={this.props.classes.fullWidth}>\n { this.props.schema.label ? <InputLabel>{this.getText(this.props.schema.label)}</InputLabel> : null }\n <Select\n variant=\"standard\"\n error={!!error}\n multiple={this.props.schema.multiple}\n disabled={!!disabled}\n value={value}\n MenuProps={this.props.schema.multiple ? { classes: { paper: this.props.classes.menuPaper } } : undefined}\n renderValue={val =>\n this.props.schema.multiple ?\n <Box sx={{ display: 'flex', flexWrap: 'wrap', gap: 0.5 }}>\n {val.map(v => {\n const item = selectOptions.find(_item => _item.value === v);\n if (item || this.props.schema.showAllValues !== false) {\n const label = item?.label || v;\n return <Chip key={v} label={label}/* onDelete={e => {\n e.stopPropagation();\n e.preventDefault ();\n let _value = JSON.parse(JSON.stringify(this._getValue()));\n const pos = value.indexOf(v);\n if (pos !== -1) {\n _value.splice(pos, 1);\n this.setState({ value: _value }, () => this.onChange(this.props.attr, _value));\n }\n }}*/ />;\n } else {\n return null;\n }\n })}\n </Box>\n :\n (item?.label || val)\n }\n onChange={e => {\n this.onChange(this.props.attr, e.target.value);\n }}\n >\n {selectOptions.map((item, i) =>\n <MenuItem key={i} value={item.value}>\n { this.props.schema.multiple ? <Checkbox\n checked={value.includes(item.value)}\n onClick={() => {\n let _value = JSON.parse(JSON.stringify(this._getValue()));\n const pos = value.indexOf(item.value);\n if (pos !== -1) {\n _value.splice(pos, 1);\n } else {\n _value.push(item.value);\n _value.sort();\n }\n this.setState({ value: _value }, () => this.onChange(this.props.attr, _value));\n }}/> : null }\n <ListItemText primary={item.label} />\n </MenuItem>)}\n </Select>\n {this.props.schema.help ? <FormHelperText>{this.renderHelp(this.props.schema.help, this.props.schema.helpLink, this.props.schema.noTranslation)}</FormHelperText> : null}\n </FormControl>;\n }\n }\n}\n\nConfigSelectSendTo.propTypes = {\n socket: PropTypes.object.isRequired,\n themeType: PropTypes.string,\n themeName: PropTypes.string,\n style: PropTypes.object,\n adapterName: PropTypes.string,\n alive: PropTypes.bool,\n instance: PropTypes.number,\n className: PropTypes.string,\n data: PropTypes.object.isRequired,\n schema: PropTypes.object,\n onError: PropTypes.func,\n onChange: PropTypes.func,\n};\n\nexport default withStyles(styles)(ConfigSelectSendTo);\n"],"mappings":"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"}