@iobroker/adapter-react-v5 4.9.10 → 4.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AdminConnection.js.map +1 -1
- package/Components/404.d.ts +5 -2
- package/Components/404.js +83 -105
- package/Components/ColorPicker.js.map +1 -1
- package/Components/ComplexCron.js.map +1 -1
- package/Components/CustomModal.js.map +1 -1
- package/Components/FileBrowser.js.map +1 -1
- package/Components/FileViewer.d.ts +0 -1
- package/Components/FileViewer.js +1 -2
- package/Components/FileViewer.js.map +1 -1
- package/Components/Icon.d.ts +10 -17
- package/Components/Icon.js +104 -161
- package/Components/IconPicker.d.ts +16 -61
- package/Components/IconPicker.js +100 -158
- package/Components/IconSelector.js.map +1 -1
- package/Components/Loader.d.ts +22 -33
- package/Components/Loader.js +276 -102
- package/Components/Loaders/PT.js.map +1 -1
- package/Components/Loaders/Vendor.js.map +1 -1
- package/Components/ObjectBrowser.js +4 -6
- package/Components/ObjectBrowser.js.map +1 -1
- package/Components/Router.js.map +1 -1
- package/Components/SelectWithIcon.js.map +1 -1
- package/Components/SimpleCron/cron2text.js.map +1 -1
- package/Components/SimpleCron/cronText.js.map +1 -1
- package/Components/SimpleCron/index.js.map +1 -1
- package/Components/SimpleCron/jquery.cron.locale.js.map +1 -1
- package/Components/TabContainer.d.ts +1 -1
- package/Components/TableResize.js.map +1 -1
- package/Components/TextWithIcon.d.ts +21 -16
- package/Components/TextWithIcon.js +104 -125
- package/Components/TreeTable.js.map +1 -1
- package/Components/UploadImage.d.ts +13 -1
- package/Components/UploadImage.js +499 -292
- package/Components/withWidth.js.map +1 -1
- package/Connection.js.map +1 -1
- package/Dialogs/ComplexCron.js.map +1 -1
- package/Dialogs/Cron.js.map +1 -1
- package/Dialogs/SelectFile.js.map +1 -1
- package/Dialogs/SimpleCron.js.map +1 -1
- package/Dialogs/TextInput.d.ts +2 -86
- package/Dialogs/TextInput.js +37 -130
- package/GenericApp.d.ts +4 -4
- package/GenericApp.js +1 -1
- package/GenericApp.js.map +1 -1
- package/LegacyConnection.d.ts +3 -3
- package/LegacyConnection.js.map +1 -1
- package/README.md +9 -3
- package/Theme.d.ts +3 -4
- package/Theme.js +389 -382
- package/i18n.d.ts +38 -55
- package/i18n.js +164 -189
- package/icons/IconAdapter.js.map +1 -1
- package/icons/IconAlias.js.map +1 -1
- package/icons/IconChannel.js.map +1 -1
- package/icons/IconClearFilter.js.map +1 -1
- package/icons/IconClosed.js.map +1 -1
- package/icons/IconCopy.js.map +1 -1
- package/icons/IconDevice.js.map +1 -1
- package/icons/IconDocument.js.map +1 -1
- package/icons/IconDocumentReadOnly.js.map +1 -1
- package/icons/IconExpert.js.map +1 -1
- package/icons/IconFx.js.map +1 -1
- package/icons/IconInstance.js.map +1 -1
- package/icons/IconLogout.js.map +1 -1
- package/icons/IconNoIcon.js.map +1 -1
- package/icons/IconOpen.js.map +1 -1
- package/icons/IconState.js.map +1 -1
- package/package.json +5 -5
- package/types.d.ts +4 -2
- package/Components/404.js.map +0 -1
- package/Components/Icon.js.map +0 -1
- package/Components/IconPicker.js.map +0 -1
- package/Components/Loader.js.map +0 -1
- package/Components/TextWithIcon.js.map +0 -1
- package/Components/UploadImage.js.map +0 -1
- package/Dialogs/TextInput.js.map +0 -1
- package/Theme.js.map +0 -1
- package/i18n.js.map +0 -1
package/Components/IconPicker.js
CHANGED
|
@@ -1,162 +1,104 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
var
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
});
|
|
8
|
-
exports["default"] = void 0;
|
|
9
|
-
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
10
|
-
var _react = _interopRequireWildcard(require("react"));
|
|
11
|
-
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
12
|
-
var _reactDropzone = require("react-dropzone");
|
|
13
|
-
var _makeStyles = _interopRequireDefault(require("@mui/styles/makeStyles"));
|
|
14
|
-
var _material = require("@mui/material");
|
|
15
|
-
var _iconsMaterial = require("@mui/icons-material");
|
|
16
|
-
var _IconSelector = _interopRequireDefault(require("./IconSelector"));
|
|
17
|
-
var _Icon = _interopRequireDefault(require("./Icon"));
|
|
18
|
-
var _i18n = _interopRequireDefault(require("../i18n"));
|
|
19
|
-
var _Utils = _interopRequireDefault(require("./Utils"));
|
|
20
|
-
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
21
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
|
|
22
|
-
/**
|
|
23
|
-
* @typedef {object} IconPickerProps
|
|
24
|
-
* @property {string} [value] The value.
|
|
25
|
-
* @property {string} [label] The label.
|
|
26
|
-
* @property {boolean} [disabled] Set to true to disable the icon picker.
|
|
27
|
-
* @property {(icon: string) => void} onChange The icon change callback.
|
|
28
|
-
* @property {import('../Connection').default} socket The socket connection.
|
|
29
|
-
* @property {string} [imagePrefix] The image prefix (default: './files/')
|
|
30
|
-
* @property {React.CSSProperties} [style] Additional styling for this component.
|
|
31
|
-
* @property {string} [className] The CSS class name.
|
|
32
|
-
*
|
|
33
|
-
* @extends {React.Component<IconPickerProps>}
|
|
34
|
-
*/
|
|
35
|
-
var IconPicker = function IconPicker(props) {
|
|
36
|
-
var _props$customClasses, _props$customClasses2;
|
|
37
|
-
var IconCustom = props.icon;
|
|
38
|
-
var useStyles = (0, _makeStyles["default"])(function () {
|
|
39
|
-
return {
|
|
40
|
-
formContainer: {
|
|
41
|
-
display: 'flex',
|
|
42
|
-
justifyContent: 'left',
|
|
43
|
-
alignItems: 'center'
|
|
44
|
-
},
|
|
45
|
-
formControl: {
|
|
46
|
-
display: 'flex',
|
|
47
|
-
padding: 24,
|
|
48
|
-
flexGrow: 1000
|
|
49
|
-
},
|
|
50
|
-
divContainer: {
|
|
51
|
-
width: 32 + 24,
|
|
52
|
-
height: 32,
|
|
53
|
-
whiteSpace: 'nowrap',
|
|
54
|
-
lineHeight: '32px',
|
|
55
|
-
marginRight: 8
|
|
56
|
-
},
|
|
57
|
-
dragField: {
|
|
58
|
-
textAlign: 'center',
|
|
59
|
-
display: 'table',
|
|
60
|
-
minHeight: 90,
|
|
61
|
-
width: 'calc(100% - 60px)',
|
|
62
|
-
border: '2px dashed #777',
|
|
63
|
-
borderRadius: 10,
|
|
64
|
-
padding: 4
|
|
65
|
-
},
|
|
66
|
-
formIcon: {
|
|
67
|
-
margin: 10,
|
|
68
|
-
opacity: 0.6
|
|
69
|
-
},
|
|
70
|
-
text: {
|
|
71
|
-
display: 'table-cell',
|
|
72
|
-
verticalAlign: 'middle'
|
|
73
|
-
}
|
|
74
|
-
};
|
|
75
|
-
});
|
|
76
|
-
var classes = useStyles();
|
|
77
|
-
var onDrop = (0, _react.useCallback)(function (acceptedFiles) {
|
|
78
|
-
var reader = new FileReader();
|
|
79
|
-
reader.addEventListener('load', function () {
|
|
80
|
-
return props.onChange(reader.result);
|
|
81
|
-
}, false);
|
|
82
|
-
if (acceptedFiles[0]) {
|
|
83
|
-
reader.readAsDataURL(acceptedFiles[0]);
|
|
84
|
-
}
|
|
85
|
-
}, []); // eslint-disable-line react-hooks/exhaustive-deps
|
|
86
|
-
|
|
87
|
-
var _useDropzone = (0, _reactDropzone.useDropzone)({
|
|
88
|
-
onDrop: onDrop
|
|
89
|
-
}),
|
|
90
|
-
getRootProps = _useDropzone.getRootProps,
|
|
91
|
-
getInputProps = _useDropzone.getInputProps,
|
|
92
|
-
isDragActive = _useDropzone.isDragActive;
|
|
93
|
-
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
94
|
-
className: classes.formContainer
|
|
95
|
-
}, IconCustom ? /*#__PURE__*/_react["default"].createElement(IconCustom, {
|
|
96
|
-
className: classes.formIcon
|
|
97
|
-
}) : null, /*#__PURE__*/_react["default"].createElement(_material.FormControl, {
|
|
98
|
-
variant: "standard",
|
|
99
|
-
className: classes.formControl,
|
|
100
|
-
style: {
|
|
101
|
-
padding: 3
|
|
102
|
-
}
|
|
103
|
-
}, /*#__PURE__*/_react["default"].createElement(_material.InputLabel, {
|
|
104
|
-
shrink: true,
|
|
105
|
-
classes: {
|
|
106
|
-
root: (_props$customClasses = props.customClasses) === null || _props$customClasses === void 0 ? void 0 : _props$customClasses.label
|
|
107
|
-
}
|
|
108
|
-
}, props.label), /*#__PURE__*/_react["default"].createElement("div", {
|
|
109
|
-
className: classes.formContainer
|
|
110
|
-
}, props.value ? /*#__PURE__*/_react["default"].createElement("div", {
|
|
111
|
-
className: classes.divContainer
|
|
112
|
-
}, /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
|
|
113
|
-
alt: "",
|
|
114
|
-
className: _Utils["default"].clsx(props.previewClassName, (_props$customClasses2 = props.customClasses) === null || _props$customClasses2 === void 0 ? void 0 : _props$customClasses2.icon),
|
|
115
|
-
src: props.value
|
|
116
|
-
}), !props.disabled && /*#__PURE__*/_react["default"].createElement(_material.IconButton, {
|
|
117
|
-
style: {
|
|
118
|
-
verticalAlign: 'top'
|
|
119
|
-
},
|
|
120
|
-
title: _i18n["default"].t('ra_Clear icon'),
|
|
121
|
-
size: "small",
|
|
122
|
-
onClick: function onClick() {
|
|
123
|
-
return props.onChange('');
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
124
7
|
}
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
}
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
className: classes.text
|
|
145
|
-
}, _i18n["default"].t('ra_Drag \'n\' drop some files here, or click to select files'))))));
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
146
27
|
};
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
28
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
+
const react_1 = __importStar(require("react"));
|
|
30
|
+
const react_dropzone_1 = require("react-dropzone");
|
|
31
|
+
const styles_1 = require("@mui/styles");
|
|
32
|
+
const material_1 = require("@mui/material");
|
|
33
|
+
const icons_material_1 = require("@mui/icons-material");
|
|
34
|
+
const IconSelector_1 = __importDefault(require("./IconSelector"));
|
|
35
|
+
const Icon_1 = __importDefault(require("./Icon"));
|
|
36
|
+
const i18n_1 = __importDefault(require("../i18n"));
|
|
37
|
+
const Utils_1 = __importDefault(require("./Utils"));
|
|
38
|
+
const IconPicker = (props) => {
|
|
39
|
+
var _a, _b;
|
|
40
|
+
const IconCustom = props.icon;
|
|
41
|
+
const useStyles = (0, styles_1.makeStyles)(() => ({
|
|
42
|
+
formContainer: {
|
|
43
|
+
display: 'flex',
|
|
44
|
+
justifyContent: 'left',
|
|
45
|
+
alignItems: 'center',
|
|
46
|
+
},
|
|
47
|
+
formControl: {
|
|
48
|
+
display: 'flex',
|
|
49
|
+
padding: 24,
|
|
50
|
+
flexGrow: 1000,
|
|
51
|
+
},
|
|
52
|
+
divContainer: {
|
|
53
|
+
width: 32 + 24,
|
|
54
|
+
height: 32,
|
|
55
|
+
whiteSpace: 'nowrap',
|
|
56
|
+
lineHeight: '32px',
|
|
57
|
+
marginRight: 8,
|
|
58
|
+
},
|
|
59
|
+
dragField: {
|
|
60
|
+
textAlign: 'center',
|
|
61
|
+
display: 'table',
|
|
62
|
+
minHeight: 90,
|
|
63
|
+
width: 'calc(100% - 60px)',
|
|
64
|
+
border: '2px dashed #777',
|
|
65
|
+
borderRadius: 10,
|
|
66
|
+
padding: 4,
|
|
67
|
+
},
|
|
68
|
+
formIcon: {
|
|
69
|
+
margin: 10,
|
|
70
|
+
opacity: 0.6,
|
|
71
|
+
},
|
|
72
|
+
text: {
|
|
73
|
+
display: 'table-cell',
|
|
74
|
+
verticalAlign: 'middle',
|
|
75
|
+
},
|
|
76
|
+
}));
|
|
77
|
+
const classes = useStyles();
|
|
78
|
+
const onDrop = (0, react_1.useCallback)((acceptedFiles) => {
|
|
79
|
+
const reader = new FileReader();
|
|
80
|
+
reader.addEventListener('load', () => props.onChange(reader.result), false);
|
|
81
|
+
if (acceptedFiles[0]) {
|
|
82
|
+
reader.readAsDataURL(acceptedFiles[0]);
|
|
83
|
+
}
|
|
84
|
+
}, []); // eslint-disable-line react-hooks/exhaustive-deps
|
|
85
|
+
const { getRootProps, getInputProps, isDragActive } = (0, react_dropzone_1.useDropzone)({ onDrop });
|
|
86
|
+
return react_1.default.createElement("div", { className: classes.formContainer },
|
|
87
|
+
IconCustom ? react_1.default.createElement(IconCustom, { className: classes.formIcon }) : null,
|
|
88
|
+
react_1.default.createElement(material_1.FormControl, { variant: "standard", className: classes.formControl, style: { padding: 3 } },
|
|
89
|
+
react_1.default.createElement(material_1.InputLabel, { shrink: true, classes: { root: (_a = props.customClasses) === null || _a === void 0 ? void 0 : _a.label } }, props.label),
|
|
90
|
+
react_1.default.createElement("div", { className: classes.formContainer },
|
|
91
|
+
props.value ?
|
|
92
|
+
react_1.default.createElement("div", { className: classes.divContainer },
|
|
93
|
+
react_1.default.createElement(Icon_1.default, { className: Utils_1.default.clsx(props.previewClassName, (_b = props.customClasses) === null || _b === void 0 ? void 0 : _b.icon), src: props.value }),
|
|
94
|
+
!props.disabled && react_1.default.createElement(material_1.IconButton, { style: { verticalAlign: 'top' }, title: i18n_1.default.t('ra_Clear icon'), size: "small", onClick: () => props.onChange('') },
|
|
95
|
+
react_1.default.createElement(icons_material_1.Clear, null)))
|
|
96
|
+
:
|
|
97
|
+
(!props.disabled && react_1.default.createElement(IconSelector_1.default, { icons: props.icons, onlyRooms: props.onlyRooms, onlyDevices: props.onlyDevices, onSelect: (base64) => props.onChange(base64), t: i18n_1.default.t, lang: i18n_1.default.getLanguage() })),
|
|
98
|
+
!props.disabled && react_1.default.createElement("div", Object.assign({}, getRootProps(), { className: classes.dragField, style: isDragActive ? { backgroundColor: 'rgba(0, 255, 0, 0.1)' } : { cursor: 'pointer' } }),
|
|
99
|
+
react_1.default.createElement("input", Object.assign({}, getInputProps())),
|
|
100
|
+
isDragActive ?
|
|
101
|
+
react_1.default.createElement("span", { className: classes.text }, i18n_1.default.t('ra_Drop the files here...')) :
|
|
102
|
+
react_1.default.createElement("span", { className: classes.text }, i18n_1.default.t('ra_Drag \'n\' drop some files here, or click to select files'))))));
|
|
158
103
|
};
|
|
159
|
-
|
|
160
|
-
/** @type {typeof IconPicker} */
|
|
161
|
-
var _default = exports["default"] = IconPicker;
|
|
162
|
-
//# sourceMappingURL=IconPicker.js.map
|
|
104
|
+
exports.default = IconPicker;
|