@iobroker/adapter-react-v5 2.1.11 → 3.0.2

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 (84) hide show
  1. package/Components/CustomModal.js +168 -0
  2. package/Components/CustomModal.js.map +1 -0
  3. package/Components/JsonConfigComponent/ChipInput.js +926 -0
  4. package/Components/JsonConfigComponent/ChipInput.js.map +1 -0
  5. package/Components/JsonConfigComponent/ConfigAlive.js +135 -0
  6. package/Components/JsonConfigComponent/ConfigAlive.js.map +1 -0
  7. package/Components/JsonConfigComponent/ConfigAutocomplete.js +204 -0
  8. package/Components/JsonConfigComponent/ConfigAutocomplete.js.map +1 -0
  9. package/Components/JsonConfigComponent/ConfigAutocompleteSendTo.js +311 -0
  10. package/Components/JsonConfigComponent/ConfigAutocompleteSendTo.js.map +1 -0
  11. package/Components/JsonConfigComponent/ConfigCRON.js +195 -0
  12. package/Components/JsonConfigComponent/ConfigCRON.js.map +1 -0
  13. package/Components/JsonConfigComponent/ConfigCertificateSelect.js +178 -0
  14. package/Components/JsonConfigComponent/ConfigCertificateSelect.js.map +1 -0
  15. package/Components/JsonConfigComponent/ConfigCheckbox.js +112 -0
  16. package/Components/JsonConfigComponent/ConfigCheckbox.js.map +1 -0
  17. package/Components/JsonConfigComponent/ConfigChip.js +149 -0
  18. package/Components/JsonConfigComponent/ConfigChip.js.map +1 -0
  19. package/Components/JsonConfigComponent/ConfigColor.js +156 -0
  20. package/Components/JsonConfigComponent/ConfigColor.js.map +1 -0
  21. package/Components/JsonConfigComponent/ConfigCoordinates.js +165 -0
  22. package/Components/JsonConfigComponent/ConfigCoordinates.js.map +1 -0
  23. package/Components/JsonConfigComponent/ConfigCustomEasyAccess.js +180 -0
  24. package/Components/JsonConfigComponent/ConfigCustomEasyAccess.js.map +1 -0
  25. package/Components/JsonConfigComponent/ConfigDatePicker.js +117 -0
  26. package/Components/JsonConfigComponent/ConfigDatePicker.js.map +1 -0
  27. package/Components/JsonConfigComponent/ConfigGeneric.js +660 -0
  28. package/Components/JsonConfigComponent/ConfigGeneric.js.map +1 -0
  29. package/Components/JsonConfigComponent/ConfigIP.js +151 -0
  30. package/Components/JsonConfigComponent/ConfigIP.js.map +1 -0
  31. package/Components/JsonConfigComponent/ConfigImageUpload.js +215 -0
  32. package/Components/JsonConfigComponent/ConfigImageUpload.js.map +1 -0
  33. package/Components/JsonConfigComponent/ConfigInstanceSelect.js +197 -0
  34. package/Components/JsonConfigComponent/ConfigInstanceSelect.js.map +1 -0
  35. package/Components/JsonConfigComponent/ConfigJsonEditor.js +211 -0
  36. package/Components/JsonConfigComponent/ConfigJsonEditor.js.map +1 -0
  37. package/Components/JsonConfigComponent/ConfigLanguage.js +175 -0
  38. package/Components/JsonConfigComponent/ConfigLanguage.js.map +1 -0
  39. package/Components/JsonConfigComponent/ConfigNumber.js +194 -0
  40. package/Components/JsonConfigComponent/ConfigNumber.js.map +1 -0
  41. package/Components/JsonConfigComponent/ConfigObjectId.js +201 -0
  42. package/Components/JsonConfigComponent/ConfigObjectId.js.map +1 -0
  43. package/Components/JsonConfigComponent/ConfigPanel.js +421 -0
  44. package/Components/JsonConfigComponent/ConfigPanel.js.map +1 -0
  45. package/Components/JsonConfigComponent/ConfigPassword.js +236 -0
  46. package/Components/JsonConfigComponent/ConfigPassword.js.map +1 -0
  47. package/Components/JsonConfigComponent/ConfigPattern.js +94 -0
  48. package/Components/JsonConfigComponent/ConfigPattern.js.map +1 -0
  49. package/Components/JsonConfigComponent/ConfigSelect.js +163 -0
  50. package/Components/JsonConfigComponent/ConfigSelect.js.map +1 -0
  51. package/Components/JsonConfigComponent/ConfigSelectSendTo.js +258 -0
  52. package/Components/JsonConfigComponent/ConfigSelectSendTo.js.map +1 -0
  53. package/Components/JsonConfigComponent/ConfigSendto.js +282 -0
  54. package/Components/JsonConfigComponent/ConfigSendto.js.map +1 -0
  55. package/Components/JsonConfigComponent/ConfigSetState.js +266 -0
  56. package/Components/JsonConfigComponent/ConfigSetState.js.map +1 -0
  57. package/Components/JsonConfigComponent/ConfigStaticDivider.js +88 -0
  58. package/Components/JsonConfigComponent/ConfigStaticDivider.js.map +1 -0
  59. package/Components/JsonConfigComponent/ConfigStaticHeader.js +81 -0
  60. package/Components/JsonConfigComponent/ConfigStaticHeader.js.map +1 -0
  61. package/Components/JsonConfigComponent/ConfigStaticImage.js +88 -0
  62. package/Components/JsonConfigComponent/ConfigStaticImage.js.map +1 -0
  63. package/Components/JsonConfigComponent/ConfigStaticText.js +104 -0
  64. package/Components/JsonConfigComponent/ConfigStaticText.js.map +1 -0
  65. package/Components/JsonConfigComponent/ConfigTable.js +651 -0
  66. package/Components/JsonConfigComponent/ConfigTable.js.map +1 -0
  67. package/Components/JsonConfigComponent/ConfigTabs.js +166 -0
  68. package/Components/JsonConfigComponent/ConfigTabs.js.map +1 -0
  69. package/Components/JsonConfigComponent/ConfigText.js +170 -0
  70. package/Components/JsonConfigComponent/ConfigText.js.map +1 -0
  71. package/Components/JsonConfigComponent/ConfigTextSendTo.js +168 -0
  72. package/Components/JsonConfigComponent/ConfigTextSendTo.js.map +1 -0
  73. package/Components/JsonConfigComponent/ConfigTimePicker.js +111 -0
  74. package/Components/JsonConfigComponent/ConfigTimePicker.js.map +1 -0
  75. package/Components/JsonConfigComponent/ConfigTopic.js +140 -0
  76. package/Components/JsonConfigComponent/ConfigTopic.js.map +1 -0
  77. package/Components/JsonConfigComponent/ConfigUser.js +176 -0
  78. package/Components/JsonConfigComponent/ConfigUser.js.map +1 -0
  79. package/Components/JsonConfigComponent/index.js +511 -0
  80. package/Components/JsonConfigComponent/index.js.map +1 -0
  81. package/Components/UploadImage.js +357 -0
  82. package/Components/UploadImage.js.map +1 -0
  83. package/README.md +3 -0
  84. package/package.json +3 -1
@@ -0,0 +1,197 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = void 0;
9
+
10
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
11
+
12
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
13
+
14
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
15
+
16
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
17
+
18
+ var _get2 = _interopRequireDefault(require("@babel/runtime/helpers/get"));
19
+
20
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
21
+
22
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
23
+
24
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
25
+
26
+ var _propTypes = _interopRequireDefault(require("prop-types"));
27
+
28
+ var _styles = require("@mui/styles");
29
+
30
+ var _InputLabel = _interopRequireDefault(require("@mui/material/InputLabel"));
31
+
32
+ var _MenuItem = _interopRequireDefault(require("@mui/material/MenuItem"));
33
+
34
+ var _FormHelperText = _interopRequireDefault(require("@mui/material/FormHelperText"));
35
+
36
+ var _FormControl = _interopRequireDefault(require("@mui/material/FormControl"));
37
+
38
+ var _Select = _interopRequireDefault(require("@mui/material/Select"));
39
+
40
+ var _i18n = _interopRequireDefault(require("@iobroker/adapter-react-v5/i18n"));
41
+
42
+ var _ConfigGeneric2 = _interopRequireDefault(require("./ConfigGeneric"));
43
+
44
+ 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); }; }
45
+
46
+ 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; } }
47
+
48
+ var styles = function styles(theme) {
49
+ return {
50
+ fullWidth: {
51
+ width: '100%'
52
+ }
53
+ };
54
+ };
55
+
56
+ var ConfigInstanceSelect = /*#__PURE__*/function (_ConfigGeneric) {
57
+ (0, _inherits2["default"])(ConfigInstanceSelect, _ConfigGeneric);
58
+
59
+ var _super = _createSuper(ConfigInstanceSelect);
60
+
61
+ function ConfigInstanceSelect() {
62
+ (0, _classCallCheck2["default"])(this, ConfigInstanceSelect);
63
+ return _super.apply(this, arguments);
64
+ }
65
+
66
+ (0, _createClass2["default"])(ConfigInstanceSelect, [{
67
+ key: "componentDidMount",
68
+ value: function () {
69
+ var _componentDidMount = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
70
+ var _this = this;
71
+
72
+ var value, adapter;
73
+ return _regenerator["default"].wrap(function _callee$(_context) {
74
+ while (1) {
75
+ switch (_context.prev = _context.next) {
76
+ case 0:
77
+ (0, _get2["default"])((0, _getPrototypeOf2["default"])(ConfigInstanceSelect.prototype), "componentDidMount", this).call(this);
78
+ value = _ConfigGeneric2["default"].getValue(this.props.data, this.props.attr);
79
+ adapter = this.props.schema.adapter;
80
+
81
+ if (adapter === '_dataSources') {
82
+ adapter = undefined;
83
+ }
84
+
85
+ this.props.socket.getAdapterInstances(adapter).then(function (instances) {
86
+ var selectOptions;
87
+
88
+ if (_this.props.schema.adapter === '_dataSources') {
89
+ // get only "data-sources", like history, sql, influx
90
+ instances = instances.filter(function (instance) {
91
+ return instance && instance.common && instance.common.getHistory;
92
+ });
93
+ }
94
+
95
+ selectOptions = instances.map(function (instance) {
96
+ return {
97
+ value: _this.props.schema["long"] ? instance._id : _this.props.schema["short"] ? instance._id.split('.').pop() : instance._id.replace(/^system\.adapter\./, ''),
98
+ label: "".concat(instance.common.name, " [").concat(instance._id.replace(/^system\.adapter\./, ''), "]")
99
+ };
100
+ });
101
+ selectOptions.unshift({
102
+ label: _ConfigGeneric2["default"].NONE_LABEL,
103
+ value: _ConfigGeneric2["default"].NONE_VALUE
104
+ });
105
+
106
+ if (_this.props.schema.all) {
107
+ selectOptions.unshift({
108
+ label: _i18n["default"].t('all'),
109
+ value: '*'
110
+ });
111
+ }
112
+
113
+ _this.setState({
114
+ value: value || '',
115
+ selectOptions: selectOptions
116
+ });
117
+ });
118
+
119
+ case 5:
120
+ case "end":
121
+ return _context.stop();
122
+ }
123
+ }
124
+ }, _callee, this);
125
+ }));
126
+
127
+ function componentDidMount() {
128
+ return _componentDidMount.apply(this, arguments);
129
+ }
130
+
131
+ return componentDidMount;
132
+ }()
133
+ }, {
134
+ key: "renderItem",
135
+ value: function renderItem(error, disabled, defaultValue) {
136
+ var _this$state$selectOpt,
137
+ _this2 = this;
138
+
139
+ if (!this.state.selectOptions) {
140
+ return null;
141
+ }
142
+
143
+ var item = (_this$state$selectOpt = this.state.selectOptions) === null || _this$state$selectOpt === void 0 ? void 0 : _this$state$selectOpt.find(function (item) {
144
+ return item.value === _this2.state.value;
145
+ });
146
+ return /*#__PURE__*/React.createElement(_FormControl["default"], {
147
+ className: this.props.classes.fullWidth,
148
+ key: this.props.attr,
149
+ variant: "standard"
150
+ }, /*#__PURE__*/React.createElement(_InputLabel["default"], {
151
+ shrink: true
152
+ }, this.getText(this.props.schema.label)), /*#__PURE__*/React.createElement(_Select["default"], {
153
+ variant: "standard",
154
+ error: !!error,
155
+ displayEmpty: true,
156
+ disabled: !!disabled,
157
+ value: this.state.value,
158
+ renderValue: function renderValue(val) {
159
+ return _this2.getText(item === null || item === void 0 ? void 0 : item.label, true);
160
+ },
161
+ onChange: function onChange(e) {
162
+ return _this2.setState({
163
+ value: e.target.value
164
+ }, function () {
165
+ return _this2.onChange(_this2.props.attr, _this2.state.value);
166
+ });
167
+ }
168
+ }, this.state.selectOptions.map(function (item) {
169
+ return /*#__PURE__*/React.createElement(_MenuItem["default"], {
170
+ key: item.value,
171
+ value: item.value,
172
+ style: item.value === _ConfigGeneric2["default"].NONE_VALUE ? {
173
+ opacity: 0.5
174
+ } : {}
175
+ }, _this2.getText(item.label, true));
176
+ })), this.props.schema.help ? /*#__PURE__*/React.createElement(_FormHelperText["default"], null, this.renderHelp(this.props.schema.help, this.props.schema.helpLink, this.props.schema.noTranslation)) : null);
177
+ }
178
+ }]);
179
+ return ConfigInstanceSelect;
180
+ }(_ConfigGeneric2["default"]);
181
+
182
+ ConfigInstanceSelect.propTypes = {
183
+ socket: _propTypes["default"].object.isRequired,
184
+ themeType: _propTypes["default"].string,
185
+ themeName: _propTypes["default"].string,
186
+ style: _propTypes["default"].object,
187
+ className: _propTypes["default"].string,
188
+ data: _propTypes["default"].object.isRequired,
189
+ schema: _propTypes["default"].object,
190
+ onError: _propTypes["default"].func,
191
+ onChange: _propTypes["default"].func
192
+ };
193
+
194
+ var _default = (0, _styles.withStyles)(styles)(ConfigInstanceSelect);
195
+
196
+ exports["default"] = _default;
197
+ //# sourceMappingURL=ConfigInstanceSelect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConfigInstanceSelect.js","names":["styles","theme","fullWidth","width","ConfigInstanceSelect","value","ConfigGeneric","getValue","props","data","attr","adapter","schema","undefined","socket","getAdapterInstances","then","instances","selectOptions","filter","instance","common","getHistory","map","_id","split","pop","replace","label","name","unshift","NONE_LABEL","NONE_VALUE","all","I18n","t","setState","error","disabled","defaultValue","state","item","find","classes","getText","val","e","target","onChange","opacity","help","renderHelp","helpLink","noTranslation","propTypes","PropTypes","object","isRequired","themeType","string","themeName","style","className","onError","func","withStyles"],"sources":["JsonConfigComponent/ConfigInstanceSelect.jsx"],"sourcesContent":["import 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';\n\nimport I18n from '@iobroker/adapter-react-v5/i18n';\nimport ConfigGeneric from './ConfigGeneric';\n\nconst styles = theme => ({\n fullWidth: {\n width: '100%'\n }\n});\n\nclass ConfigInstanceSelect extends ConfigGeneric {\n async componentDidMount() {\n super.componentDidMount();\n const value = ConfigGeneric.getValue(this.props.data, this.props.attr);\n\n let adapter = this.props.schema.adapter;\n if (adapter === '_dataSources') {\n adapter = undefined;\n }\n\n this.props.socket.getAdapterInstances(adapter)\n .then(instances => {\n let selectOptions;\n if (this.props.schema.adapter === '_dataSources') {\n // get only \"data-sources\", like history, sql, influx\n instances = instances.filter(instance => instance && instance.common && instance.common.getHistory);\n }\n\n selectOptions = instances.map(instance => ({\n value: this.props.schema.long ? instance._id :\n (this.props.schema.short ? instance._id.split('.').pop() : instance._id.replace(/^system\\.adapter\\./, '')),\n label: `${instance.common.name} [${instance._id.replace(/^system\\.adapter\\./, '')}]`\n }));\n\n selectOptions.unshift({ label: ConfigGeneric.NONE_LABEL, value: ConfigGeneric.NONE_VALUE });\n if (this.props.schema.all) {\n selectOptions.unshift({ label: I18n.t('all'), value: '*' });\n }\n\n this.setState({ value: value || '', selectOptions });\n });\n }\n\n renderItem(error, disabled, defaultValue) {\n if (!this.state.selectOptions) {\n return null;\n }\n\n const item = this.state.selectOptions?.find(item => item.value === this.state.value);\n\n return <FormControl className={this.props.classes.fullWidth} key={this.props.attr} variant=\"standard\">\n <InputLabel shrink>{this.getText(this.props.schema.label)}</InputLabel>\n <Select\n variant=\"standard\"\n error={!!error}\n displayEmpty\n disabled={!!disabled}\n value={this.state.value}\n renderValue={val => this.getText(item?.label, true)}\n onChange={e =>\n this.setState({ value: e.target.value }, () =>\n this.onChange(this.props.attr, this.state.value))}\n >\n {this.state.selectOptions.map(item =>\n <MenuItem key={item.value} value={item.value} style={item.value === ConfigGeneric.NONE_VALUE ? { opacity: 0.5 } : {}}>{\n this.getText(item.label, true)\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\nConfigInstanceSelect.propTypes = {\n socket: PropTypes.object.isRequired,\n themeType: PropTypes.string,\n themeName: PropTypes.string,\n style: PropTypes.object,\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)(ConfigInstanceSelect);"],"mappings":"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"}
@@ -0,0 +1,211 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = void 0;
9
+
10
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
11
+
12
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
13
+
14
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
15
+
16
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
17
+
18
+ var _get2 = _interopRequireDefault(require("@babel/runtime/helpers/get"));
19
+
20
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
21
+
22
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
23
+
24
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
25
+
26
+ var _propTypes = _interopRequireDefault(require("prop-types"));
27
+
28
+ var _styles = require("@mui/styles");
29
+
30
+ var _FormHelperText = _interopRequireDefault(require("@mui/material/FormHelperText"));
31
+
32
+ var _FormControl = _interopRequireDefault(require("@mui/material/FormControl"));
33
+
34
+ var _material = require("@mui/material");
35
+
36
+ var _ConfigGeneric2 = _interopRequireDefault(require("./ConfigGeneric"));
37
+
38
+ var _i18n = _interopRequireDefault(require("@iobroker/adapter-react-v5/i18n"));
39
+
40
+ var _CustomModal = _interopRequireDefault(require("../CustomModal"));
41
+
42
+ var _reactAce = _interopRequireDefault(require("react-ace"));
43
+
44
+ require("ace-builds/src-noconflict/mode-json");
45
+
46
+ require("ace-builds/src-noconflict/theme-clouds_midnight");
47
+
48
+ require("ace-builds/src-noconflict/theme-chrome");
49
+
50
+ require("ace-builds/src-noconflict/ext-language_tools");
51
+
52
+ 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); }; }
53
+
54
+ 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; } }
55
+
56
+ var styles = function styles(theme) {
57
+ return {
58
+ fullWidth: {
59
+ width: '100%'
60
+ },
61
+ flex: {
62
+ display: 'flex'
63
+ },
64
+ button: {
65
+ height: 48,
66
+ // marginLeft: 4,
67
+ minWidth: 48
68
+ },
69
+ wrapper: {
70
+ width: 'calc(100vw - 40px)',
71
+ height: 'calc(100vh - 188px)'
72
+ }
73
+ };
74
+ };
75
+
76
+ var ConfigJsonEditor = /*#__PURE__*/function (_ConfigGeneric) {
77
+ (0, _inherits2["default"])(ConfigJsonEditor, _ConfigGeneric);
78
+
79
+ var _super = _createSuper(ConfigJsonEditor);
80
+
81
+ function ConfigJsonEditor() {
82
+ (0, _classCallCheck2["default"])(this, ConfigJsonEditor);
83
+ return _super.apply(this, arguments);
84
+ }
85
+
86
+ (0, _createClass2["default"])(ConfigJsonEditor, [{
87
+ key: "componentDidMount",
88
+ value: function () {
89
+ var _componentDidMount = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
90
+ var _this$props, data, attr, value;
91
+
92
+ return _regenerator["default"].wrap(function _callee$(_context) {
93
+ while (1) {
94
+ switch (_context.prev = _context.next) {
95
+ case 0:
96
+ (0, _get2["default"])((0, _getPrototypeOf2["default"])(ConfigJsonEditor.prototype), "componentDidMount", this).call(this);
97
+ _this$props = this.props, data = _this$props.data, attr = _this$props.attr;
98
+ value = _ConfigGeneric2["default"].getValue(data, attr) || {};
99
+ this.setState({
100
+ value: value,
101
+ initialized: true
102
+ });
103
+
104
+ case 4:
105
+ case "end":
106
+ return _context.stop();
107
+ }
108
+ }
109
+ }, _callee, this);
110
+ }));
111
+
112
+ function componentDidMount() {
113
+ return _componentDidMount.apply(this, arguments);
114
+ }
115
+
116
+ return componentDidMount;
117
+ }()
118
+ }, {
119
+ key: "renderItem",
120
+ value: function renderItem(error, disabled, defaultValue) {
121
+ var _this = this;
122
+
123
+ if (!this.state.initialized) {
124
+ return null;
125
+ }
126
+
127
+ var _this$props2 = this.props,
128
+ classes = _this$props2.classes,
129
+ schema = _this$props2.schema,
130
+ data = _this$props2.data,
131
+ attr = _this$props2.attr;
132
+ var _this$state = this.state,
133
+ value = _this$state.value,
134
+ showSelectId = _this$state.showSelectId;
135
+ return /*#__PURE__*/React.createElement(_FormControl["default"], {
136
+ className: classes.fullWidth,
137
+ variant: "standard"
138
+ }, /*#__PURE__*/React.createElement("div", {
139
+ className: classes.flex
140
+ }, /*#__PURE__*/React.createElement(_material.Button, {
141
+ color: "grey",
142
+ className: classes.button,
143
+ size: "small",
144
+ variant: "outlined",
145
+ onClick: function onClick() {
146
+ return _this.setState({
147
+ showSelectId: true
148
+ });
149
+ }
150
+ }, _i18n["default"].t('Json editor'))), showSelectId ? /*#__PURE__*/React.createElement(_CustomModal["default"], {
151
+ title: this.getText(schema.label),
152
+ open: showSelectId,
153
+ overflowHidden: true,
154
+ onClose: function onClose() {
155
+ return _this.setState({
156
+ showSelectId: false,
157
+ value: _ConfigGeneric2["default"].getValue(data, attr) || {}
158
+ });
159
+ },
160
+ onApply: function onApply() {
161
+ return _this.setState({
162
+ showSelectId: false
163
+ }, function () {
164
+ return _this.onChange(attr, value);
165
+ });
166
+ }
167
+ }, /*#__PURE__*/React.createElement("div", {
168
+ className: classes.wrapper
169
+ }, /*#__PURE__*/React.createElement(_reactAce["default"], {
170
+ mode: "json",
171
+ theme: this.props.themeName === 'dark' ? 'clouds_midnight' : 'chrome',
172
+ value: value,
173
+ width: "100%",
174
+ height: "100%",
175
+ onChange: function onChange(newValue) {
176
+ return _this.setState({
177
+ value: newValue
178
+ });
179
+ },
180
+ name: "ConfigJsonEditor",
181
+ fontSize: 14,
182
+ setOptions: {
183
+ enableBasicAutocompletion: true,
184
+ enableLiveAutocompletion: true,
185
+ enableSnippets: true
186
+ },
187
+ editorProps: {
188
+ $blockScrolling: true
189
+ }
190
+ }))) : null, schema.help ? /*#__PURE__*/React.createElement(_FormHelperText["default"], null, this.renderHelp(this.props.schema.help, this.props.schema.helpLink, this.props.schema.noTranslation)) : null);
191
+ }
192
+ }]);
193
+ return ConfigJsonEditor;
194
+ }(_ConfigGeneric2["default"]);
195
+
196
+ ConfigJsonEditor.propTypes = {
197
+ socket: _propTypes["default"].object.isRequired,
198
+ themeType: _propTypes["default"].string,
199
+ themeName: _propTypes["default"].string,
200
+ style: _propTypes["default"].object,
201
+ className: _propTypes["default"].string,
202
+ data: _propTypes["default"].object.isRequired,
203
+ schema: _propTypes["default"].object,
204
+ onError: _propTypes["default"].func,
205
+ onChange: _propTypes["default"].func
206
+ };
207
+
208
+ var _default = (0, _styles.withStyles)(styles)(ConfigJsonEditor);
209
+
210
+ exports["default"] = _default;
211
+ //# sourceMappingURL=ConfigJsonEditor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConfigJsonEditor.js","names":["styles","theme","fullWidth","width","flex","display","button","height","minWidth","wrapper","ConfigJsonEditor","props","data","attr","value","ConfigGeneric","getValue","setState","initialized","error","disabled","defaultValue","state","classes","schema","showSelectId","I18n","t","getText","label","onChange","themeName","newValue","enableBasicAutocompletion","enableLiveAutocompletion","enableSnippets","$blockScrolling","help","renderHelp","helpLink","noTranslation","propTypes","socket","PropTypes","object","isRequired","themeType","string","style","className","onError","func","withStyles"],"sources":["JsonConfigComponent/ConfigJsonEditor.jsx"],"sourcesContent":["import PropTypes from 'prop-types';\nimport { withStyles } from '@mui/styles';\n\nimport FormHelperText from '@mui/material/FormHelperText';\nimport FormControl from '@mui/material/FormControl';\nimport { Button } from '@mui/material';\n\nimport ConfigGeneric from './ConfigGeneric';\nimport I18n from '@iobroker/adapter-react-v5/i18n';\nimport CustomModal from '../CustomModal';\n\nimport AceEditor from 'react-ace';\n// import 'ace-builds/webpack-resolver';\nimport 'ace-builds/src-noconflict/mode-json';\nimport 'ace-builds/src-noconflict/theme-clouds_midnight';\nimport 'ace-builds/src-noconflict/theme-chrome';\nimport 'ace-builds/src-noconflict/ext-language_tools';\n\nconst styles = theme => ({\n fullWidth: {\n width: '100%'\n },\n flex: {\n display: 'flex'\n },\n button: {\n height: 48,\n // marginLeft: 4,\n minWidth: 48,\n },\n wrapper: {\n width: 'calc(100vw - 40px)',\n height: 'calc(100vh - 188px)',\n }\n});\n\nclass ConfigJsonEditor extends ConfigGeneric {\n async componentDidMount() {\n super.componentDidMount();\n const { data, attr } = this.props;\n const value = ConfigGeneric.getValue(data, attr) || {};\n this.setState({ value, initialized: true });\n }\n\n renderItem(error, disabled, defaultValue) {\n if (!this.state.initialized) {\n return null;\n }\n const { classes, schema, data, attr } = this.props;\n const { value, showSelectId } = this.state;\n return <FormControl className={classes.fullWidth} variant=\"standard\">\n <div className={classes.flex}>\n <Button\n color=\"grey\"\n className={classes.button}\n size=\"small\"\n variant=\"outlined\"\n onClick={() => this.setState({ showSelectId: true })}\n >{I18n.t('Json editor')}</Button>\n </div>\n {showSelectId ? <CustomModal\n title={this.getText(schema.label)}\n open={showSelectId}\n overflowHidden\n onClose={() => this.setState({ showSelectId: false, value: ConfigGeneric.getValue(data, attr) || {} })}\n onApply={() => this.setState({ showSelectId: false }, () => this.onChange(attr, value))}\n >\n <div className={classes.wrapper}>\n <AceEditor\n mode=\"json\"\n theme={this.props.themeName === 'dark' ? 'clouds_midnight' : 'chrome'}\n value={value}\n width=\"100%\"\n height=\"100%\"\n onChange={newValue => this.setState({ value: newValue })}\n name=\"ConfigJsonEditor\"\n fontSize={14}\n setOptions={{\n enableBasicAutocompletion: true,\n enableLiveAutocompletion: true,\n enableSnippets: true\n }}\n editorProps={{ $blockScrolling: true }}\n />\n </div>\n </CustomModal> : null}\n {schema.help ? <FormHelperText>{this.renderHelp(this.props.schema.help, this.props.schema.helpLink, this.props.schema.noTranslation)}</FormHelperText> : null}\n </FormControl>;\n }\n}\n\nConfigJsonEditor.propTypes = {\n socket: PropTypes.object.isRequired,\n themeType: PropTypes.string,\n themeName: PropTypes.string,\n style: PropTypes.object,\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)(ConfigJsonEditor);"],"mappings":"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"}
@@ -0,0 +1,175 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = void 0;
9
+
10
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
+
12
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
+
14
+ var _get2 = _interopRequireDefault(require("@babel/runtime/helpers/get"));
15
+
16
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
17
+
18
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
19
+
20
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
21
+
22
+ var _propTypes = _interopRequireDefault(require("prop-types"));
23
+
24
+ var _styles = require("@mui/styles");
25
+
26
+ var _InputLabel = _interopRequireDefault(require("@mui/material/InputLabel"));
27
+
28
+ var _MenuItem = _interopRequireDefault(require("@mui/material/MenuItem"));
29
+
30
+ var _FormHelperText = _interopRequireDefault(require("@mui/material/FormHelperText"));
31
+
32
+ var _FormControl = _interopRequireDefault(require("@mui/material/FormControl"));
33
+
34
+ var _Select = _interopRequireDefault(require("@mui/material/Select"));
35
+
36
+ var _i18n = _interopRequireDefault(require("@iobroker/adapter-react-v5/i18n"));
37
+
38
+ var _ConfigGeneric2 = _interopRequireDefault(require("./ConfigGeneric"));
39
+
40
+ 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); }; }
41
+
42
+ 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; } }
43
+
44
+ var styles = function styles(theme) {
45
+ return {
46
+ fullWidth: {
47
+ width: '100%'
48
+ }
49
+ };
50
+ };
51
+
52
+ var LANGUAGES = [{
53
+ value: 'en',
54
+ label: 'English'
55
+ }, {
56
+ value: 'de',
57
+ label: 'Deutsch'
58
+ }, {
59
+ value: 'ru',
60
+ label: 'русский'
61
+ }, {
62
+ value: 'pt',
63
+ label: 'Portugues'
64
+ }, {
65
+ value: 'nl',
66
+ label: 'Nederlands'
67
+ }, {
68
+ value: 'fr',
69
+ label: 'français'
70
+ }, {
71
+ value: 'it',
72
+ label: 'Italiano'
73
+ }, {
74
+ value: 'es',
75
+ label: 'Espanol'
76
+ }, {
77
+ value: 'pl',
78
+ label: 'Polski'
79
+ }, {
80
+ value: 'zh-ch',
81
+ label: '简体中文'
82
+ }];
83
+
84
+ var ConfigLanguage = /*#__PURE__*/function (_ConfigGeneric) {
85
+ (0, _inherits2["default"])(ConfigLanguage, _ConfigGeneric);
86
+
87
+ var _super = _createSuper(ConfigLanguage);
88
+
89
+ function ConfigLanguage() {
90
+ (0, _classCallCheck2["default"])(this, ConfigLanguage);
91
+ return _super.apply(this, arguments);
92
+ }
93
+
94
+ (0, _createClass2["default"])(ConfigLanguage, [{
95
+ key: "componentDidMount",
96
+ value: function componentDidMount() {
97
+ (0, _get2["default"])((0, _getPrototypeOf2["default"])(ConfigLanguage.prototype), "componentDidMount", this).call(this);
98
+
99
+ var value = _ConfigGeneric2["default"].getValue(this.props.data, this.props.attr);
100
+
101
+ var languages = [].concat(LANGUAGES);
102
+
103
+ if (this.props.schema.system) {
104
+ languages.unshift({
105
+ value: '',
106
+ label: _i18n["default"].t('System language')
107
+ });
108
+ }
109
+
110
+ this.setState({
111
+ value: value || _i18n["default"].getLanguage(),
112
+ selectOptions: languages
113
+ });
114
+ }
115
+ }, {
116
+ key: "renderItem",
117
+ value: function renderItem(error, disabled, defaultValue) {
118
+ var _this$state$selectOpt,
119
+ _this = this,
120
+ _this$state$selectOpt2;
121
+
122
+ if (!this.state.selectOptions) {
123
+ return null;
124
+ }
125
+
126
+ var item = (_this$state$selectOpt = this.state.selectOptions) === null || _this$state$selectOpt === void 0 ? void 0 : _this$state$selectOpt.find(function (item) {
127
+ return item.value === _this.state.value || !item.value && !_this.state.value;
128
+ });
129
+ return /*#__PURE__*/React.createElement(_FormControl["default"], {
130
+ className: this.props.classes.fullWidth,
131
+ variant: "standard"
132
+ }, /*#__PURE__*/React.createElement(_InputLabel["default"], null, this.getText(this.props.schema.label)), /*#__PURE__*/React.createElement(_Select["default"], {
133
+ variant: "standard",
134
+ error: !!error,
135
+ disabled: !!disabled,
136
+ value: this.state.value || '_',
137
+ renderValue: function renderValue(val) {
138
+ return _this.getText(item === null || item === void 0 ? void 0 : item.label, _this.props.schema.noTranslation);
139
+ },
140
+ onChange: function onChange(e) {
141
+ var value = e.target.value === '_' ? '' : e.target.value;
142
+
143
+ _this.setState({
144
+ value: value
145
+ }, function () {
146
+ return _this.onChange(_this.props.attr, value);
147
+ });
148
+ }
149
+ }, (_this$state$selectOpt2 = this.state.selectOptions) === null || _this$state$selectOpt2 === void 0 ? void 0 : _this$state$selectOpt2.map(function (item) {
150
+ return /*#__PURE__*/React.createElement(_MenuItem["default"], {
151
+ key: item.value,
152
+ value: item.value
153
+ }, item.label);
154
+ })), this.props.schema.help ? /*#__PURE__*/React.createElement(_FormHelperText["default"], null, this.renderHelp(this.props.schema.help, this.props.schema.helpLink, this.props.schema.noTranslation)) : null);
155
+ }
156
+ }]);
157
+ return ConfigLanguage;
158
+ }(_ConfigGeneric2["default"]);
159
+
160
+ ConfigLanguage.propTypes = {
161
+ socket: _propTypes["default"].object.isRequired,
162
+ themeType: _propTypes["default"].string,
163
+ themeName: _propTypes["default"].string,
164
+ style: _propTypes["default"].object,
165
+ className: _propTypes["default"].string,
166
+ data: _propTypes["default"].object.isRequired,
167
+ schema: _propTypes["default"].object,
168
+ onError: _propTypes["default"].func,
169
+ onChange: _propTypes["default"].func
170
+ };
171
+
172
+ var _default = (0, _styles.withStyles)(styles)(ConfigLanguage);
173
+
174
+ exports["default"] = _default;
175
+ //# sourceMappingURL=ConfigLanguage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConfigLanguage.js","names":["styles","theme","fullWidth","width","LANGUAGES","value","label","ConfigLanguage","ConfigGeneric","getValue","props","data","attr","languages","schema","system","unshift","I18n","t","setState","getLanguage","selectOptions","error","disabled","defaultValue","state","item","find","classes","getText","val","noTranslation","e","target","onChange","map","help","renderHelp","helpLink","propTypes","socket","PropTypes","object","isRequired","themeType","string","themeName","style","className","onError","func","withStyles"],"sources":["JsonConfigComponent/ConfigLanguage.jsx"],"sourcesContent":["import 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';\n\nimport I18n from '@iobroker/adapter-react-v5/i18n';\n\nimport ConfigGeneric from './ConfigGeneric';\n\nconst styles = theme => ({\n fullWidth: {\n width: '100%'\n }\n});\n\nconst LANGUAGES =[\n {\n value: 'en',\n label: 'English'\n },\n {\n value: 'de',\n label: 'Deutsch'\n },\n {\n value: 'ru',\n label: 'русский'\n },\n {\n value: 'pt',\n label: 'Portugues'\n },\n {\n value: 'nl',\n label: 'Nederlands'\n },\n {\n value: 'fr',\n label: 'français'\n },\n {\n value: 'it',\n label: 'Italiano'\n },\n {\n value: 'es',\n label: 'Espanol'\n },\n {\n value: 'pl',\n label: 'Polski'\n },\n {\n value: 'zh-ch',\n label: '简体中文'\n }\n];\n\nclass ConfigLanguage extends ConfigGeneric {\n componentDidMount() {\n super.componentDidMount();\n const value = ConfigGeneric.getValue(this.props.data, this.props.attr);\n const languages = [...LANGUAGES];\n if (this.props.schema.system) {\n languages.unshift({value: '', label: I18n.t('System language')});\n }\n\n this.setState({value: value || I18n.getLanguage(), selectOptions: languages});\n }\n\n renderItem(error, disabled, defaultValue) {\n if (!this.state.selectOptions) {\n return null;\n }\n\n const item = this.state.selectOptions?.find(item => item.value === this.state.value || (!item.value && !this.state.value));\n\n return <FormControl className={this.props.classes.fullWidth} variant=\"standard\">\n <InputLabel>{this.getText(this.props.schema.label)}</InputLabel>\n <Select\n variant=\"standard\"\n error={!!error}\n disabled={!!disabled}\n value={this.state.value || '_'}\n renderValue={val => this.getText(item?.label, this.props.schema.noTranslation)}\n onChange={e => {\n const value = e.target.value === '_' ? '' : e.target.value;\n this.setState({value}, () =>\n this.onChange(this.props.attr, value));\n }}\n >\n {this.state.selectOptions?.map(item =>\n <MenuItem key={item.value} value={item.value}>{item.label}</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\nConfigLanguage.propTypes = {\n socket: PropTypes.object.isRequired,\n themeType: PropTypes.string,\n themeName: PropTypes.string,\n style: PropTypes.object,\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)(ConfigLanguage);"],"mappings":"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"}