@iobroker/adapter-react-v5 3.2.4 → 3.2.5

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.
@@ -141,6 +141,7 @@ declare namespace DialogSelectID {
141
141
  const isFloatComma: PropTypes.Requireable<boolean>;
142
142
  const dateFormat: PropTypes.Requireable<string>;
143
143
  const selected: PropTypes.Requireable<NonNullable<string | any[]>>;
144
+ const filters: PropTypes.Requireable<object>;
144
145
  const customFilter: PropTypes.Requireable<object>;
145
146
  const statesOnly: PropTypes.Requireable<boolean>;
146
147
  const socket: PropTypes.Validator<object>;
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  });
7
7
  exports["default"] = void 0;
8
8
  var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
9
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
9
10
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
10
11
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
11
12
  var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
@@ -24,6 +25,8 @@ var _Check = _interopRequireDefault(require("@mui/icons-material/Check"));
24
25
  var _Utils = _interopRequireDefault(require("../Components/Utils"));
25
26
  var _i18n = _interopRequireDefault(require("../i18n"));
26
27
  var _ObjectBrowser = _interopRequireDefault(require("../Components/ObjectBrowser"));
28
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
29
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
27
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); }; }
28
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; } }
29
32
  var styles = function styles() {
@@ -102,6 +105,9 @@ var DialogSelectID = /*#__PURE__*/function (_React$Component) {
102
105
  } catch (e) {
103
106
  _this.filters = {};
104
107
  }
108
+ if (props.filters) {
109
+ _this.filters = _objectSpread(_objectSpread({}, _this.filters), props.filters);
110
+ }
105
111
  var selected = _this.props.selected || [];
106
112
  if ((0, _typeof2["default"])(selected) !== 'object') {
107
113
  selected = [selected];
@@ -241,6 +247,8 @@ DialogSelectID.propTypes = {
241
247
  isFloatComma: _propTypes["default"].bool,
242
248
  dateFormat: _propTypes["default"].string,
243
249
  selected: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].array]),
250
+ filters: _propTypes["default"].object,
251
+ // predefined filter fields, like {"id":"","name":"","room":"","func":"","role":"level","type":"","custom":""}
244
252
  customFilter: _propTypes["default"].object,
245
253
  // optional {common: {custom: true}} or {common: {custom: 'sql.0'}}
246
254
  statesOnly: _propTypes["default"].bool,
@@ -1 +1 @@
1
- {"version":3,"file":"SelectID.js","names":["styles","headerID","fontWeight","fontStyle","dialog","height","dialogMobile","padding","width","maxWidth","maxHeight","content","overflow","contentMobile","titleRoot","whiteSpace","display","textOverflow","DialogSelectID","props","dialogName","filters","window","_localStorage","localStorage","getItem","JSON","parse","e","selected","filter","id","state","name","isMobile","innerWidth","onClose","onOk","multiSelect","title","length","I18n","t","classes","paper","Utils","clsx","root","foldersFirst","imagePrefix","prefix","showExpertButton","undefined","expertMode","columns","types","lang","getLanguage","socket","notEditable","themeName","themeType","customFilter","filterConfig","setItem","stringify","isDouble","setState","handleOk","filterFunc","ok","handleCancel","cancel","React","Component","propTypes","PropTypes","string","object","bool","func","isRequired","isFloatComma","dateFormat","oneOfType","array","statesOnly","_export","withStyles"],"sources":["SelectID.js"],"sourcesContent":["/**\n * Copyright 2018-2022 bluefox <dogafox@gmail.com>\n *\n * MIT License\n *\n **/\n// please do not delete React, as without it other projects could not be compiled: ReferenceError: React is not defined\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport withStyles from '@mui/styles/withStyles';\n\nimport Button from '@mui/material/Button';\nimport DialogTitle from '@mui/material/DialogTitle';\nimport DialogContent from '@mui/material/DialogContent';\nimport DialogActions from '@mui/material/DialogActions';\nimport Dialog from '@mui/material/Dialog';\n\nimport IconCancel from '@mui/icons-material/Cancel';\nimport IconOk from '@mui/icons-material/Check';\n\nimport Utils from '../Components/Utils';\nimport I18n from '../i18n';\nimport ObjectBrowser from '../Components/ObjectBrowser';\n\nconst styles = () => ({\n headerID: {\n fontWeight: 'bold',\n fontStyle: 'italic',\n },\n dialog: {\n height: '95%',\n },\n dialogMobile: {\n padding: 4,\n width: '100%',\n maxWidth: '100%',\n maxHeight: 'calc(100% - 16px)',\n height: '100%',\n },\n content: {\n height: '100%',\n overflow: 'hidden',\n },\n contentMobile: {\n padding: '8px 4px',\n },\n titleRoot: {\n whiteSpace: 'nowrap',\n width: 'calc(100% - 72px)',\n overflow: 'hidden',\n display: 'inline-block',\n textOverflow: 'ellipsis',\n },\n});\n\n/**\n * @typedef {object} DialogSelectIDProps\n * @property {string} [dialogName] The internal name of the dialog; default: \"default\"\n * @property {string} [title] The dialog title; default: Please select object ID... (translated)\n * @property {boolean} [multiSelect] Set to true to allow the selection of multiple IDs.\n * @property {boolean} [foldersFirst] Show folders before any leaves.\n * @property {string} [imagePrefix] Prefix (default: '.')\n * @property {boolean} [showExpertButton] Show the expert button?\n * @property {import('../Components/types').ObjectBrowserColumn[]} [columns] Columns to display; default: 'name', 'type', 'role', 'room', 'func', 'val'\n * @property {import('../Components/types').ObjectBrowserType[]} [types] Object types to show; default: 'state' only\n * @property {ioBroker.Languages} [lang] The language.\n * @property {import('../Connection').default} socket The socket connection.\n * @property {boolean} [notEditable] Can't objects be edited? (default: true)\n * @property {string} [themeName] Theme name.\n * @property {string} [themeType] Theme type.\n * @property {import('../Components/types').ObjectBrowserCustomFilter} [customFilter] Custom filter.\n * @property {string | string[]} [selected] The selected IDs.\n * @property {string} [ok] The ok button text; default: OK (translated)\n * @property {string} [cancel] The cancel button text; default: Cancel (translated)\n * @property {() => void} onClose Close handler that is always called when the dialog is closed.\n * @property {(selected: string | string[] | undefined, name: string) => void} onOk Handler that is called when the user presses OK.\n * @property {{headerID: string; dialog: string; content: string}} [classes] The styling class names.\n *\n * @extends {React.Component<DialogSelectIDProps>}\n */\nclass DialogSelectID extends React.Component {\n /**\n * @param {DialogSelectIDProps} props\n */\n constructor(props) {\n super(props);\n this.dialogName = this.props.dialogName || 'default';\n this.dialogName = `SelectID.${this.dialogName}`;\n\n this.filters = (window._localStorage || window.localStorage).getItem(this.dialogName) || '{}';\n\n try {\n this.filters = JSON.parse(this.filters);\n } catch (e) {\n this.filters = {};\n }\n\n let selected = this.props.selected || [];\n if (typeof selected !== 'object') {\n selected = [selected];\n }\n selected = selected.filter(id => id);\n\n this.state = {\n selected,\n name: '',\n isMobile: window.innerWidth < 800,\n };\n }\n\n handleCancel() {\n this.props.onClose();\n }\n\n handleOk() {\n this.props.onOk(this.props.multiSelect ? this.state.selected : this.state.selected[0] || '', this.state.name);\n this.props.onClose();\n }\n\n render() {\n let title;\n if (this.state.name || this.state.selected.length) {\n if (this.state.selected.length === 1) {\n title = [\n <span key=\"selected\">\n {I18n.t('ra_Selected')}\n &nbsp;\n </span>,\n <span key=\"id\" className={this.props.classes.headerID}>\n {(this.state.name || this.state.selected) + (this.state.name ? ` [${this.state.selected}]` : '')}\n </span>,\n ];\n } else {\n title = [\n <span key=\"selected\">\n {I18n.t('ra_Selected')}\n &nbsp;\n </span>,\n <span key=\"id\" className={this.props.classes.headerID}>\n {I18n.t('%s items', this.state.selected.length)}\n </span>,\n ];\n }\n } else {\n title = this.props.title || I18n.t('ra_Please select object ID...');\n }\n\n return <Dialog\n onClose={() => {}}\n maxWidth={false}\n classes={{ paper: Utils.clsx(this.props.classes.dialog, this.props.classes.dialogMobile) }}\n fullWidth\n open={!0}\n aria-labelledby=\"selectid-dialog-title\"\n >\n <DialogTitle id=\"selectid-dialog-title\" classes={{ root: this.props.classes.titleRoot }}>{title}</DialogTitle>\n <DialogContent className={Utils.clsx(this.props.classes.content, this.props.classes.contentMobile)}>\n <ObjectBrowser\n foldersFirst={this.props.foldersFirst}\n imagePrefix={this.props.imagePrefix || this.props.prefix} // prefix is for back compatibility\n defaultFilters={this.filters}\n dialogName={this.dialogName}\n showExpertButton={this.props.showExpertButton !== undefined ? this.props.showExpertButton : true}\n expertMode={this.props.expertMode}\n style={{ width: '100%', height: '100%' }}\n columns={this.props.columns || ['name', 'type', 'role', 'room', 'func', 'val']}\n types={this.props.types || ['state']}\n t={I18n.t}\n lang={this.props.lang || I18n.getLanguage()}\n socket={this.props.socket}\n selected={this.state.selected}\n multiSelect={this.props.multiSelect}\n notEditable={this.props.notEditable === undefined ? true : this.props.notEditable}\n name={this.state.name}\n themeName={this.props.themeName}\n themeType={this.props.themeType}\n customFilter={this.props.customFilter}\n onFilterChanged={filterConfig => {\n this.filters = filterConfig;\n (window._localStorage || window.localStorage).setItem(this.dialogName, JSON.stringify(filterConfig));\n }}\n onSelect={(selected, name, isDouble) => {\n if (JSON.stringify(selected) !== JSON.stringify(this.state.selected)) {\n this.setState({ selected, name }, () =>\n isDouble && this.handleOk());\n } else if (isDouble) {\n this.handleOk();\n }\n }}\n filterFunc={this.props.filterFunc}\n />\n </DialogContent>\n <DialogActions>\n <Button variant=\"contained\" onClick={() => this.handleOk()} startIcon={<IconOk />} disabled={!this.state.selected.length} color=\"primary\">{this.props.ok || I18n.t('ra_Ok')}</Button>\n <Button color=\"grey\" variant=\"contained\" onClick={() => this.handleCancel()} startIcon={<IconCancel />}>{this.props.cancel || I18n.t('ra_Cancel')}</Button>\n </DialogActions>\n </Dialog>;\n }\n}\n\nDialogSelectID.propTypes = {\n dialogName: PropTypes.string, // where to store settings in localStorage\n classes: PropTypes.object,\n notEditable: PropTypes.bool,\n onClose: PropTypes.func.isRequired,\n onOk: PropTypes.func.isRequired,\n title: PropTypes.string,\n lang: PropTypes.string,\n foldersFirst: PropTypes.bool,\n isFloatComma: PropTypes.bool,\n dateFormat: PropTypes.string,\n selected: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.array,\n ]),\n customFilter: PropTypes.object, // optional {common: {custom: true}} or {common: {custom: 'sql.0'}}\n statesOnly: PropTypes.bool,\n socket: PropTypes.object.isRequired,\n cancel: PropTypes.string,\n imagePrefix: PropTypes.string,\n ok: PropTypes.string,\n themeName: PropTypes.string,\n themeType: PropTypes.string,\n showExpertButton: PropTypes.bool,\n expertMode: PropTypes.bool, // force expert mode\n multiSelect: PropTypes.bool,\n types: PropTypes.array, // optional ['state', 'instance', 'channel']\n columns: PropTypes.array, // optional ['name', 'type', 'role', 'room', 'func', 'val', 'buttons']\n\n filterFunc: PropTypes.func, // function to filter out all unnecessary objects. It cannot be used together with \"types\"\n // Example for function: `obj => obj.common && obj.common.type === 'boolean'` to show only boolean states\n};\n\n/** @type {typeof DialogSelectID} */\nconst _export = withStyles(styles)(DialogSelectID);\nexport default _export;\n"],"mappings":"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"}
1
+ {"version":3,"file":"SelectID.js","names":["styles","headerID","fontWeight","fontStyle","dialog","height","dialogMobile","padding","width","maxWidth","maxHeight","content","overflow","contentMobile","titleRoot","whiteSpace","display","textOverflow","DialogSelectID","props","dialogName","filters","window","_localStorage","localStorage","getItem","JSON","parse","e","selected","filter","id","state","name","isMobile","innerWidth","onClose","onOk","multiSelect","title","length","I18n","t","classes","paper","Utils","clsx","root","foldersFirst","imagePrefix","prefix","showExpertButton","undefined","expertMode","columns","types","lang","getLanguage","socket","notEditable","themeName","themeType","customFilter","filterConfig","setItem","stringify","isDouble","setState","handleOk","filterFunc","ok","handleCancel","cancel","React","Component","propTypes","PropTypes","string","object","bool","func","isRequired","isFloatComma","dateFormat","oneOfType","array","statesOnly","_export","withStyles"],"sources":["SelectID.js"],"sourcesContent":["/**\n * Copyright 2018-2022 bluefox <dogafox@gmail.com>\n *\n * MIT License\n *\n **/\n// please do not delete React, as without it other projects could not be compiled: ReferenceError: React is not defined\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport withStyles from '@mui/styles/withStyles';\n\nimport Button from '@mui/material/Button';\nimport DialogTitle from '@mui/material/DialogTitle';\nimport DialogContent from '@mui/material/DialogContent';\nimport DialogActions from '@mui/material/DialogActions';\nimport Dialog from '@mui/material/Dialog';\n\nimport IconCancel from '@mui/icons-material/Cancel';\nimport IconOk from '@mui/icons-material/Check';\n\nimport Utils from '../Components/Utils';\nimport I18n from '../i18n';\nimport ObjectBrowser from '../Components/ObjectBrowser';\n\nconst styles = () => ({\n headerID: {\n fontWeight: 'bold',\n fontStyle: 'italic',\n },\n dialog: {\n height: '95%',\n },\n dialogMobile: {\n padding: 4,\n width: '100%',\n maxWidth: '100%',\n maxHeight: 'calc(100% - 16px)',\n height: '100%',\n },\n content: {\n height: '100%',\n overflow: 'hidden',\n },\n contentMobile: {\n padding: '8px 4px',\n },\n titleRoot: {\n whiteSpace: 'nowrap',\n width: 'calc(100% - 72px)',\n overflow: 'hidden',\n display: 'inline-block',\n textOverflow: 'ellipsis',\n },\n});\n\n/**\n * @typedef {object} DialogSelectIDProps\n * @property {string} [dialogName] The internal name of the dialog; default: \"default\"\n * @property {string} [title] The dialog title; default: Please select object ID... (translated)\n * @property {boolean} [multiSelect] Set to true to allow the selection of multiple IDs.\n * @property {boolean} [foldersFirst] Show folders before any leaves.\n * @property {string} [imagePrefix] Prefix (default: '.')\n * @property {boolean} [showExpertButton] Show the expert button?\n * @property {import('../Components/types').ObjectBrowserColumn[]} [columns] Columns to display; default: 'name', 'type', 'role', 'room', 'func', 'val'\n * @property {import('../Components/types').ObjectBrowserType[]} [types] Object types to show; default: 'state' only\n * @property {ioBroker.Languages} [lang] The language.\n * @property {import('../Connection').default} socket The socket connection.\n * @property {boolean} [notEditable] Can't objects be edited? (default: true)\n * @property {string} [themeName] Theme name.\n * @property {string} [themeType] Theme type.\n * @property {import('../Components/types').ObjectBrowserCustomFilter} [customFilter] Custom filter.\n * @property {string | string[]} [selected] The selected IDs.\n * @property {string} [ok] The ok button text; default: OK (translated)\n * @property {string} [cancel] The cancel button text; default: Cancel (translated)\n * @property {() => void} onClose Close handler that is always called when the dialog is closed.\n * @property {(selected: string | string[] | undefined, name: string) => void} onOk Handler that is called when the user presses OK.\n * @property {{headerID: string; dialog: string; content: string}} [classes] The styling class names.\n *\n * @extends {React.Component<DialogSelectIDProps>}\n */\nclass DialogSelectID extends React.Component {\n /**\n * @param {DialogSelectIDProps} props\n */\n constructor(props) {\n super(props);\n this.dialogName = this.props.dialogName || 'default';\n this.dialogName = `SelectID.${this.dialogName}`;\n\n this.filters = (window._localStorage || window.localStorage).getItem(this.dialogName) || '{}';\n\n try {\n this.filters = JSON.parse(this.filters);\n } catch (e) {\n this.filters = {};\n }\n\n if (props.filters) {\n this.filters = {...this.filters, ...props.filters};\n }\n\n let selected = this.props.selected || [];\n if (typeof selected !== 'object') {\n selected = [selected];\n }\n selected = selected.filter(id => id);\n\n this.state = {\n selected,\n name: '',\n isMobile: window.innerWidth < 800,\n };\n }\n\n handleCancel() {\n this.props.onClose();\n }\n\n handleOk() {\n this.props.onOk(this.props.multiSelect ? this.state.selected : this.state.selected[0] || '', this.state.name);\n this.props.onClose();\n }\n\n render() {\n let title;\n if (this.state.name || this.state.selected.length) {\n if (this.state.selected.length === 1) {\n title = [\n <span key=\"selected\">\n {I18n.t('ra_Selected')}\n &nbsp;\n </span>,\n <span key=\"id\" className={this.props.classes.headerID}>\n {(this.state.name || this.state.selected) + (this.state.name ? ` [${this.state.selected}]` : '')}\n </span>,\n ];\n } else {\n title = [\n <span key=\"selected\">\n {I18n.t('ra_Selected')}\n &nbsp;\n </span>,\n <span key=\"id\" className={this.props.classes.headerID}>\n {I18n.t('%s items', this.state.selected.length)}\n </span>,\n ];\n }\n } else {\n title = this.props.title || I18n.t('ra_Please select object ID...');\n }\n\n return <Dialog\n onClose={() => {}}\n maxWidth={false}\n classes={{ paper: Utils.clsx(this.props.classes.dialog, this.props.classes.dialogMobile) }}\n fullWidth\n open={!0}\n aria-labelledby=\"selectid-dialog-title\"\n >\n <DialogTitle id=\"selectid-dialog-title\" classes={{ root: this.props.classes.titleRoot }}>{title}</DialogTitle>\n <DialogContent className={Utils.clsx(this.props.classes.content, this.props.classes.contentMobile)}>\n <ObjectBrowser\n foldersFirst={this.props.foldersFirst}\n imagePrefix={this.props.imagePrefix || this.props.prefix} // prefix is for back compatibility\n defaultFilters={this.filters}\n dialogName={this.dialogName}\n showExpertButton={this.props.showExpertButton !== undefined ? this.props.showExpertButton : true}\n expertMode={this.props.expertMode}\n style={{ width: '100%', height: '100%' }}\n columns={this.props.columns || ['name', 'type', 'role', 'room', 'func', 'val']}\n types={this.props.types || ['state']}\n t={I18n.t}\n lang={this.props.lang || I18n.getLanguage()}\n socket={this.props.socket}\n selected={this.state.selected}\n multiSelect={this.props.multiSelect}\n notEditable={this.props.notEditable === undefined ? true : this.props.notEditable}\n name={this.state.name}\n themeName={this.props.themeName}\n themeType={this.props.themeType}\n customFilter={this.props.customFilter}\n onFilterChanged={filterConfig => {\n this.filters = filterConfig;\n (window._localStorage || window.localStorage).setItem(this.dialogName, JSON.stringify(filterConfig));\n }}\n onSelect={(selected, name, isDouble) => {\n if (JSON.stringify(selected) !== JSON.stringify(this.state.selected)) {\n this.setState({ selected, name }, () =>\n isDouble && this.handleOk());\n } else if (isDouble) {\n this.handleOk();\n }\n }}\n filterFunc={this.props.filterFunc}\n />\n </DialogContent>\n <DialogActions>\n <Button variant=\"contained\" onClick={() => this.handleOk()} startIcon={<IconOk />} disabled={!this.state.selected.length} color=\"primary\">{this.props.ok || I18n.t('ra_Ok')}</Button>\n <Button color=\"grey\" variant=\"contained\" onClick={() => this.handleCancel()} startIcon={<IconCancel />}>{this.props.cancel || I18n.t('ra_Cancel')}</Button>\n </DialogActions>\n </Dialog>;\n }\n}\n\nDialogSelectID.propTypes = {\n dialogName: PropTypes.string, // where to store settings in localStorage\n classes: PropTypes.object,\n notEditable: PropTypes.bool,\n onClose: PropTypes.func.isRequired,\n onOk: PropTypes.func.isRequired,\n title: PropTypes.string,\n lang: PropTypes.string,\n foldersFirst: PropTypes.bool,\n isFloatComma: PropTypes.bool,\n dateFormat: PropTypes.string,\n selected: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.array,\n ]),\n filters: PropTypes.object, // predefined filter fields, like {\"id\":\"\",\"name\":\"\",\"room\":\"\",\"func\":\"\",\"role\":\"level\",\"type\":\"\",\"custom\":\"\"}\n customFilter: PropTypes.object, // optional {common: {custom: true}} or {common: {custom: 'sql.0'}}\n statesOnly: PropTypes.bool,\n socket: PropTypes.object.isRequired,\n cancel: PropTypes.string,\n imagePrefix: PropTypes.string,\n ok: PropTypes.string,\n themeName: PropTypes.string,\n themeType: PropTypes.string,\n showExpertButton: PropTypes.bool,\n expertMode: PropTypes.bool, // force expert mode\n multiSelect: PropTypes.bool,\n types: PropTypes.array, // optional ['state', 'instance', 'channel']\n columns: PropTypes.array, // optional ['name', 'type', 'role', 'room', 'func', 'val', 'buttons']\n\n filterFunc: PropTypes.func, // function to filter out all unnecessary objects. It cannot be used together with \"types\"\n // Example for function: `obj => obj.common && obj.common.type === 'boolean'` to show only boolean states\n};\n\n/** @type {typeof DialogSelectID} */\nconst _export = withStyles(styles)(DialogSelectID);\nexport default _export;\n"],"mappings":"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"}
package/README.md CHANGED
@@ -643,6 +643,9 @@ If you still have questions, try to find an answer [here](https://mui.com/guides
643
643
  -->
644
644
 
645
645
  ## Changelog
646
+ ### 3.2.5 (2022-11-08)
647
+ * (bluefox) Added the role filter for the object browser
648
+
646
649
  ### 3.2.4 (2022-11-03)
647
650
  * (bluefox) Added support for alfa channel for `invertColor`
648
651
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@iobroker/adapter-react-v5",
3
- "version": "3.2.4",
3
+ "version": "3.2.5",
4
4
  "description": "React classes to develop admin interfaces for ioBroker with react.",
5
5
  "author": {
6
6
  "name": "bluefox",