@iobroker/adapter-react-v5 4.5.2 → 4.5.4

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 (46) hide show
  1. package/Components/404.js +5 -5
  2. package/Components/404.js.map +1 -1
  3. package/Components/ColorPicker.js +2 -2
  4. package/Components/ColorPicker.js.map +1 -1
  5. package/Components/FileBrowser.d.ts +4 -1
  6. package/Components/FileBrowser.js +132 -51
  7. package/Components/FileBrowser.js.map +1 -1
  8. package/Components/Icon.js +2 -2
  9. package/Components/Icon.js.map +1 -1
  10. package/Components/JsonConfigComponent/ChipInput.js +2 -2
  11. package/Components/JsonConfigComponent/ChipInput.js.map +1 -1
  12. package/Components/JsonConfigComponent/ConfigAccordion.js +2 -2
  13. package/Components/JsonConfigComponent/ConfigAccordion.js.map +1 -1
  14. package/Components/JsonConfigComponent/ConfigCustom.js +2 -2
  15. package/Components/JsonConfigComponent/ConfigCustom.js.map +1 -1
  16. package/Components/JsonConfigComponent/ConfigGeneric.js +2 -2
  17. package/Components/JsonConfigComponent/ConfigGeneric.js.map +1 -1
  18. package/Components/JsonConfigComponent/ConfigPanel.js +2 -2
  19. package/Components/JsonConfigComponent/ConfigPanel.js.map +1 -1
  20. package/Components/JsonConfigComponent/ConfigSendto.js +2 -2
  21. package/Components/JsonConfigComponent/ConfigSendto.js.map +1 -1
  22. package/Components/JsonConfigComponent/index.js +7 -7
  23. package/Components/JsonConfigComponent/index.js.map +1 -1
  24. package/Components/Logo.js +1 -1
  25. package/Components/Logo.js.map +1 -1
  26. package/Components/ObjectBrowser.js +3 -3
  27. package/Components/ObjectBrowser.js.map +1 -1
  28. package/Components/SaveCloseButtons.js +2 -2
  29. package/Components/SaveCloseButtons.js.map +1 -1
  30. package/Components/Schedule.js +2 -2
  31. package/Components/Schedule.js.map +1 -1
  32. package/Components/TableResize.js +3 -3
  33. package/Components/TableResize.js.map +1 -1
  34. package/Components/TextWithIcon.js +2 -2
  35. package/Components/TextWithIcon.js.map +1 -1
  36. package/Components/TreeTable.js +2 -2
  37. package/Components/TreeTable.js.map +1 -1
  38. package/Dialogs/SelectFile.d.ts +2 -0
  39. package/Dialogs/SelectFile.js +17 -16
  40. package/Dialogs/SelectFile.js.map +1 -1
  41. package/Dialogs/SelectID.js +2 -2
  42. package/Dialogs/SelectID.js.map +1 -1
  43. package/GenericApp.js +2 -2
  44. package/GenericApp.js.map +1 -1
  45. package/README.md +6 -0
  46. package/package.json +9 -9
@@ -25,8 +25,8 @@ var _Check = _interopRequireDefault(require("@mui/icons-material/Check"));
25
25
  var _Utils = _interopRequireDefault(require("../Components/Utils"));
26
26
  var _i18n = _interopRequireDefault(require("../i18n"));
27
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; }
28
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
29
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
30
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); }; }
31
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; } } /**
32
32
  * Copyright 2018-2022 bluefox <dogafox@gmail.com>
@@ -1 +1 @@
1
- {"version":3,"file":"SelectID.js","names":["_react","_interopRequireDefault","require","_propTypes","_styles","_Button","_DialogTitle","_DialogContent","_DialogActions","_Dialog","_Cancel","_Check","_Utils","_i18n","_ObjectBrowser","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","key","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","result","NewTarget","constructor","Reflect","construct","_possibleConstructorReturn2","sham","Proxy","Boolean","prototype","valueOf","call","e","styles","headerID","fontWeight","fontStyle","dialog","height","dialogMobile","padding","width","maxWidth","maxHeight","content","overflow","contentMobile","titleRoot","whiteSpace","display","textOverflow","DialogSelectID","_React$Component","_inherits2","_super","props","_this","_classCallCheck2","dialogName","concat","filters","window","_localStorage","localStorage","getItem","JSON","parse","selected","_typeof2","id","state","name","_createClass2","value","handleCancel","onClose","handleOk","onOk","multiSelect","render","_this2","title","createElement","I18n","t","className","classes","paper","Utils","clsx","fullWidth","open","root","foldersFirst","imagePrefix","prefix","defaultFilters","showExpertButton","undefined","expertMode","style","columns","types","lang","getLanguage","socket","notEditable","themeName","themeType","customFilter","onFilterChanged","filterConfig","setItem","stringify","onSelect","isDouble","setState","filterFunc","variant","onClick","startIcon","disabled","color","ok","cancel","React","Component","propTypes","PropTypes","string","bool","func","isRequired","oneOfType","array","_export","withStyles","_default","exports"],"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';\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 };\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=\"ar_dialog_selectid_title\"\n >\n <DialogTitle id=\"ar_dialog_selectid_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 root={this.props.root}\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 id={`ar_dialog_selectid_ok_${this.props.dialogName || ''}`} variant=\"contained\" onClick={() => this.handleOk()} startIcon={<IconOk />} disabled={!this.state.selected.length} color=\"primary\">{this.props.ok || I18n.t('ra_Ok')}</Button>\n <Button id={`ar_dialog_selectid_cancel_${this.props.dialogName || ''}`} 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 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 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 root: PropTypes.string, // optional. Root of tree. Show only this branch of tree\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":["_react","_interopRequireDefault","require","_propTypes","_styles","_Button","_DialogTitle","_DialogContent","_DialogActions","_Dialog","_Cancel","_Check","_Utils","_i18n","_ObjectBrowser","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","result","NewTarget","constructor","Reflect","construct","_possibleConstructorReturn2","sham","Proxy","Boolean","prototype","valueOf","call","styles","headerID","fontWeight","fontStyle","dialog","height","dialogMobile","padding","width","maxWidth","maxHeight","content","overflow","contentMobile","titleRoot","whiteSpace","display","textOverflow","DialogSelectID","_React$Component","_inherits2","_super","props","_this","_classCallCheck2","dialogName","concat","filters","window","_localStorage","localStorage","getItem","JSON","parse","selected","_typeof2","id","state","name","_createClass2","key","value","handleCancel","onClose","handleOk","onOk","multiSelect","render","_this2","title","createElement","I18n","className","classes","paper","Utils","clsx","fullWidth","open","root","foldersFirst","imagePrefix","prefix","defaultFilters","showExpertButton","undefined","expertMode","style","columns","types","lang","getLanguage","socket","notEditable","themeName","themeType","customFilter","onFilterChanged","filterConfig","setItem","stringify","onSelect","isDouble","setState","filterFunc","variant","onClick","startIcon","disabled","color","ok","cancel","React","Component","propTypes","PropTypes","string","object","bool","func","isRequired","oneOfType","array","_export","withStyles","_default","exports"],"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';\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 };\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=\"ar_dialog_selectid_title\"\n >\n <DialogTitle id=\"ar_dialog_selectid_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 root={this.props.root}\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 id={`ar_dialog_selectid_ok_${this.props.dialogName || ''}`} variant=\"contained\" onClick={() => this.handleOk()} startIcon={<IconOk />} disabled={!this.state.selected.length} color=\"primary\">{this.props.ok || I18n.t('ra_Ok')}</Button>\n <Button id={`ar_dialog_selectid_cancel_${this.props.dialogName || ''}`} 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 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 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 root: PropTypes.string, // optional. Root of tree. Show only this branch of tree\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/GenericApp.js CHANGED
@@ -33,8 +33,8 @@ var _i18n = _interopRequireDefault(require("./i18n"));
33
33
  var _Error = _interopRequireDefault(require("./Dialogs/Error"));
34
34
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
35
35
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof3(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
36
- 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; }
37
- 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; }
36
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
37
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
38
38
  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); }; }
39
39
  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; } } /**
40
40
  * Copyright 2018-2022 bluefox <dogafox@gmail.com>
package/GenericApp.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"GenericApp.js","names":["_react","_interopRequireDefault","require","_socketClient","_propTypes","Sentry","_interopRequireWildcard","SentryIntegrations","_material","_iconsMaterial","_Prompt","_Theme","_Loader","_Router2","_Utils","_SaveCloseButtons","_Confirm","_i18n","_Error","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof3","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","result","NewTarget","constructor","Reflect","construct","_possibleConstructorReturn2","sham","Proxy","Boolean","valueOf","e","cssStyle","window","localStorage","getItem","setItem","GenericApp","_Router","_inherits2","_super","props","settings","_this","_classCallCheck2","ConnectionClass","Connection","document","getElementById","style","createElement","setAttribute","innerHTML","head","appendChild","isWeb","io","location","port","SocketClient","_assertThisInitialized2","id","_obj$common","socket","systemLang","common","language","I18n","setLanguage","_systemConfig","expertMode","setState","getExpertMode","message","data","newThemeName","Utils","getThemeName","setThemeName","theme","createTheme","themeName","themeType","getThemeType","onThemeChange","onThemeChanged","onToggleExpertMode","console","debug","concat","JSON","stringify","resizeTimer","clearTimeout","setTimeout","width","getWidth","printPrompt","query","search","replace","args","trim","split","t","b","parts","instance","undefined","parseInt","slice","tmp","pathname","adapterName","instanceId","newReact","Router","getLocation","tab","_localStorage","themeInstance","state","selectedTab","selectedTabNum","errorText","changed","connected","loaded","isConfigurationError","toast","bottomButtons","confirmClose","_alert","_alertType","_alertMessage","translations","en","de","ru","pt","nl","fr","it","es","pl","uk","lang","assign","setTranslations","savedNative","encryptedFields","sentryDSN","socketUrl","startsWith","protocol","hostname","alerDialogRendered","oldAlert","alert","toString","toLowerCase","includes","error","showAlert","log","name","doNotLoadAllObjects","onProgress","progress","PROGRESS","CONNECTING","READY","onReady","subscribeObject","onSystemConfigChanged","then","getSystemConfig","_secret","secret","getObject","instanceObj","waitPromise","sentryEnabled","diag","version","disableDataReporting","host","sentryStarted","init","dsn","release","integrations","Dedupe","sentryInited","uuidObj","uuid","configureScope","scope","setUser","Promise","resolve","onPrepareLoad","encryptedNative","parse","onConnectionReady","warn","onError","err","showError","_createClass2","value","type","renderAlertSnackbar","_this2","Snackbar","backgroundColor","open","autoHideDuration","onClose","reason","alertMessage","componentDidMount","addEventListener","onResize","onReceiveMessage","_get2","componentWillUnmount","removeEventListener","palette","mode","toggleTheme","_this3","sessionStorage","encrypt","String","fromCharCode","charCodeAt","decrypt","onHashChanged","selectTab","index","onPrepareSave","_this4","attr","_this5","getExtendableInstances","_this6","_socket","emit","doc","rows","item","webExtendable","map","getIpAddresses","_this7","ip","_host","IPs4","address","family","IPs6","hardware","networkInterfaces","eth","inter","onSave","isClose","_this8","oldObj","_oldObj","a","setObject","reject","Error","globalThis","parent","postMessage","renderToast","_this9","anchorOrigin","vertical","horizontal","ContentProps","action","IconButton","color","className","classes","close","onClick","size","Close","renderError","_this10","text","getIsChanged","native","isChanged","onLoadConfig","newNative","setConfigurationError","renderSaveCloseButtons","_this11","Fragment","noTextOnButtons","title","ok","cancel","isYes","_updateNativeValue","attrs","_typeof2","shift","updateNativeValue","cb","showToast","renderHelperDialogs","render","SIZES","xs","sm","md","lg","xl","innerWidth","reverse","widthComputed","find","$iframeDialog","propTypes","PropTypes","string","func","array","bool","_default","exports"],"sources":["GenericApp.js"],"sourcesContent":["/**\n * Copyright 2018-2022 bluefox <dogafox@gmail.com>\n *\n * MIT License\n *\n **/\nimport React from 'react';\nimport { Connection, PROGRESS } from '@iobroker/socket-client';\nimport PropTypes from 'prop-types';\nimport * as Sentry from '@sentry/browser';\nimport * as SentryIntegrations from '@sentry/integrations';\n\nimport { Snackbar, IconButton } from '@mui/material';\n\nimport { Close as IconClose } from '@mui/icons-material';\n\nimport printPrompt from './Prompt';\nimport theme from './Theme';\nimport Loader from './Components/Loader';\nimport Router from './Components/Router';\nimport Utils from './Components/Utils';\nimport SaveCloseButtons from './Components/SaveCloseButtons';\nimport ConfirmDialog from './Dialogs/Confirm';\nimport I18n from './i18n';\nimport DialogError from './Dialogs/Error';\n\n// import './index.css';\nconst cssStyle = `\nhtml {\n height: 100%;\n}\n\nbody {\n margin: 0;\n padding: 0;\n font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", \"Roboto\", \"Oxygen\", \"Ubuntu\", \"Cantarell\", \"Fira Sans\", \"Droid Sans\", \"Helvetica Neue\", sans-serif;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n width: 100%;\n height: 100%;\n overflow: hidden;\n}\n\n/* scrollbar */\n::-webkit-scrollbar-track {\n background-color: #ccc;\n border-radius: 5px;\n}\n\n::-webkit-scrollbar {\n width: 5px;\n height: 5px;\n background-color: #ccc;\n}\n\n::-webkit-scrollbar-thumb {\n background-color: #575757;\n border-radius: 5px;\n}\n\n#root {\n height: 100%;\n}\n\n.App {\n height: 100%;\n}\n\n@keyframes glow {\n from {\n background-color: initial;\n }\n to {\n background-color: #58c458;\n }\n}\n`;\n\nif (!window.localStorage) {\n window.localStorage = {\n getItem: () => null,\n setItem: () => null,\n };\n}\n\n/**\n * @extends {Router<import('./types').GenericAppProps, import('./types').GenericAppState>}\n */\nclass GenericApp extends Router {\n /**\n * @param {import('./types').GenericAppProps} props\n * @param {import('./types').GenericAppSettings | undefined} settings\n */\n constructor(props, settings) {\n const ConnectionClass = props.Connection || settings.Connection || Connection;\n // const ConnectionClass = props.Connection === 'admin' || settings.Connection = 'admin' ? AdminConnection : (props.Connection || settings.Connection || Connection);\n\n if (!window.document.getElementById('generic-app-iobroker-component')) {\n const style = window.document.createElement('style');\n style.setAttribute('id', 'generic-app-iobroker-component');\n style.innerHTML = cssStyle;\n window.document.head.appendChild(style);\n }\n\n // Remove `!Connection.isWeb() && window.adapterName !== 'material'` when iobroker.socket will support native ws\n if (!ConnectionClass.isWeb() && window.io && window.location.port === '3000') {\n try {\n const io = new window.SocketClient();\n delete window.io;\n window.io = io;\n } catch (e) {\n // ignore\n }\n }\n\n super(props);\n\n printPrompt();\n\n const query = (window.location.search || '').replace(/^\\?/, '').replace(/#.*$/, '');\n const args = {};\n query.trim().split('&').filter(t => t.trim()).forEach(b => {\n const parts = b.split('=');\n args[parts[0]] = parts.length === 2 ? parts[1] : true;\n if (args[parts[0]] === 'true') {\n args[parts[0]] = true;\n } else if (args[parts[0]] === 'false') {\n args[parts[0]] = false;\n }\n });\n\n // extract instance from URL\n this.instance = args.instance !== undefined ? parseInt(args.instance, 10) || 0 : (parseInt(window.location.search.slice(1), 10) || 0);\n // extract adapter name from URL\n const tmp = window.location.pathname.split('/');\n this.adapterName = settings?.adapterName || props.adapterName || window.adapterName || tmp[tmp.length - 2] || 'iot';\n this.instanceId = `system.adapter.${this.adapterName}.${this.instance}`;\n this.newReact = args.newReact === true; // it is admin5\n\n const location = Router.getLocation();\n location.tab = location.tab || (window._localStorage || window.localStorage).getItem(`${this.adapterName}-adapter`) || '';\n\n const themeInstance = this.createTheme();\n\n this.state = {\n selectedTab: (window._localStorage || window.localStorage).getItem(`${this.adapterName}-adapter`) || '',\n selectedTabNum: -1,\n native: {},\n errorText: '',\n changed: false,\n connected: false,\n loaded: false,\n isConfigurationError: '',\n expertMode: false,\n toast: '',\n theme: themeInstance,\n themeName: this.getThemeName(themeInstance),\n themeType: this.getThemeType(themeInstance),\n bottomButtons: (settings && settings.bottomButtons) === false ? false : (props?.bottomButtons !== false),\n width: GenericApp.getWidth(),\n confirmClose: false,\n _alert: false,\n _alertType: 'info',\n _alertMessage: '',\n };\n\n // init translations\n const translations = {\n en: require('./i18n/en.json'),\n de: require('./i18n/de.json'),\n ru: require('./i18n/ru.json'),\n pt: require('./i18n/pt.json'),\n nl: require('./i18n/nl.json'),\n fr: require('./i18n/fr.json'),\n it: require('./i18n/it.json'),\n es: require('./i18n/es.json'),\n pl: require('./i18n/pl.json'),\n uk: require('./i18n/uk.json'),\n 'zh-cn': require('./i18n/zh-cn.json'),\n };\n\n // merge together\n if (settings && settings.translations) {\n Object.keys(settings.translations).forEach(lang => translations[lang] = Object.assign(translations[lang], settings.translations[lang]));\n } else if (props.translations) {\n Object.keys(props.translations).forEach(lang => translations[lang] = Object.assign(translations[lang], props.translations[lang]));\n }\n\n I18n.setTranslations(translations);\n\n this.savedNative = {}; // to detect if the config changed\n\n this.encryptedFields = props.encryptedFields || settings?.encryptedFields || [];\n\n this.sentryDSN = (settings && settings.sentryDSN) || props.sentryDSN;\n\n if (window.socketUrl) {\n if (window.socketUrl.startsWith(':')) {\n window.socketUrl = `${window.location.protocol}//${window.location.hostname}${window.socketUrl}`;\n } else if (!window.socketUrl.startsWith('http://') && !window.socketUrl.startsWith('https://')) {\n window.socketUrl = `${window.location.protocol}//${window.socketUrl}`;\n }\n }\n\n this.alerDialogRendered = false;\n\n window.oldAlert = window.alert;\n window.alert = message => {\n if (!this.alerDialogRendered) {\n window.oldAlert(message);\n return;\n }\n if (message && message.toString().toLowerCase().includes('error')) {\n console.error(message);\n this.showAlert(message.toString(), 'error');\n } else {\n console.log(message);\n this.showAlert(message.toString(), 'info');\n }\n };\n\n this.socket = new ConnectionClass({\n ...(props?.socket || settings?.socket),\n name: this.adapterName,\n doNotLoadAllObjects: settings?.doNotLoadAllObjects,\n onProgress: progress => {\n if (progress === PROGRESS.CONNECTING) {\n this.setState({ connected: false });\n } else if (progress === PROGRESS.READY) {\n this.setState({ connected: true });\n } else {\n this.setState({ connected: true });\n }\n },\n onReady: (/* objects, scripts */) => {\n I18n.setLanguage(this.socket.systemLang);\n\n // subscribe because of language and expert mode\n this.socket.subscribeObject('system.config', this.onSystemConfigChanged)\n .then(() => this.getSystemConfig())\n .then(obj => {\n this._secret = (typeof obj !== 'undefined' && obj.native && obj.native.secret) || 'Zgfr56gFe87jJOM';\n this._systemConfig = obj?.common || {};\n return this.socket.getObject(this.instanceId);\n })\n .then(instanceObj => {\n let waitPromise;\n\n const sentryEnabled =\n this._systemConfig.diag !== 'none' &&\n instanceObj &&\n instanceObj.common &&\n instanceObj.common.name &&\n instanceObj.common.version &&\n !instanceObj.common.disableDataReporting &&\n window.location.host !== 'localhost:3000';\n\n // activate sentry plugin\n if (!this.sentryStarted && this.sentryDSN && sentryEnabled) {\n this.sentryStarted = true;\n\n Sentry.init({\n dsn: this.sentryDSN,\n release: `iobroker.${instanceObj.common.name}@${instanceObj.common.version}`,\n integrations: [\n new SentryIntegrations.Dedupe(),\n ],\n });\n }\n\n // read UUID and init sentry with it.\n // for backward compatibility it will be processed separately from above logic: some adapters could still have this.sentryDSN as undefined\n if (!this.sentryInited && sentryEnabled) {\n this.sentryInited = true;\n\n waitPromise = this.socket.getObject('system.meta.uuid')\n .then(uuidObj => {\n if (uuidObj && uuidObj.native && uuidObj.native.uuid) {\n Sentry.configureScope(scope =>\n scope.setUser({ id: uuidObj.native.uuid }));\n }\n });\n }\n\n waitPromise = waitPromise || Promise.resolve();\n\n waitPromise\n .then(() => {\n if (instanceObj) {\n this.common = instanceObj?.common;\n this.onPrepareLoad(instanceObj.native, instanceObj.encryptedNative); // decode all secrets\n this.savedNative = JSON.parse(JSON.stringify(instanceObj.native));\n this.setState({ native: instanceObj.native, loaded: true, expertMode: this.getExpertMode() }, () =>\n this.onConnectionReady && this.onConnectionReady());\n } else {\n console.warn('Cannot load instance settings');\n this.setState(\n {\n native: {},\n loaded: true,\n expertMode: this.getExpertMode(),\n },\n () => this.onConnectionReady && this.onConnectionReady(),\n );\n }\n });\n })\n .catch(e => window.alert(`Cannot settings: ${e}`));\n },\n onError: err => {\n console.error(err);\n this.showError(err);\n },\n });\n }\n\n showAlert(message, type) {\n if (type !== 'error' && type !== 'warning' && type !== 'info' && type !== 'success') {\n type = 'info';\n }\n\n this.setState({\n _alert: true,\n _alertType: type,\n _alertMessage: message,\n });\n }\n\n renderAlertSnackbar() {\n this.alerDialogRendered = true;\n\n return <Snackbar\n style={this.state._alertType === 'error' ?\n { backgroundColor: '#f44336' } :\n (this.state._alertType === 'success' ? { backgroundColor: '#4caf50' } : undefined)}\n open={this.state._alert}\n autoHideDuration={6000}\n onClose={reason => reason !== 'clickaway' && this.setState({ _alert: false })}\n message={this.state.alertMessage}\n />;\n }\n\n onSystemConfigChanged = (id, obj) => {\n if (obj && id === 'system.config') {\n if (this.socket.systemLang !== obj?.common.language) {\n this.socket.systemLang = obj?.common.language || 'en';\n I18n.setLanguage(this.socket.systemLang);\n }\n\n if (this._systemConfig.expertMode !== !!obj?.common?.expertMode) {\n this._systemConfig = obj?.common || {};\n this.setState({ expertMode: this.getExpertMode() });\n } else {\n this._systemConfig = obj?.common || {};\n }\n }\n };\n\n /**\n * Called immediately after a component is mounted. Setting state here will trigger re-rendering.\n */\n componentDidMount() {\n window.addEventListener('resize', this.onResize, true);\n window.addEventListener('message', this.onReceiveMessage, false);\n super.componentDidMount();\n }\n\n /**\n * Called immediately before a component is destroyed.\n */\n componentWillUnmount() {\n window.removeEventListener('resize', this.onResize, true);\n window.removeEventListener('message', this.onReceiveMessage, false);\n super.componentWillUnmount();\n }\n\n onReceiveMessage = message => {\n if (message?.data) {\n if (message.data === 'updateTheme') {\n const newThemeName = Utils.getThemeName();\n Utils.setThemeName(Utils.getThemeName());\n\n const theme = this.createTheme(newThemeName);\n\n this.setState({\n theme,\n themeName: this.getThemeName(theme),\n themeType: this.getThemeType(theme),\n }, () => {\n this.props.onThemeChange && this.props.onThemeChange(newThemeName);\n this.onThemeChanged && this.onThemeChanged(newThemeName);\n });\n } else if (message.data === 'updateExpertMode') {\n this.onToggleExpertMode && this.onToggleExpertMode(this.getExpertMode());\n } else if (message.data !== 'chartReady') { // if not \"echart ready\" message\n console.debug(`Received unknown message: \"${JSON.stringify(message.data)}\". May be it will be processed later`);\n }\n }\n };\n\n /**\n * @private\n */\n onResize = () => {\n this.resizeTimer && clearTimeout(this.resizeTimer);\n this.resizeTimer = setTimeout(() => {\n this.resizeTimer = null;\n this.setState({ width: GenericApp.getWidth() });\n }, 200);\n };\n\n /**\n * Gets the width depending on the window inner width.\n * @returns {import('./types').Width}\n */\n static getWidth() {\n /**\n * innerWidth |xs sm md lg xl\n * |-------|-------|-------|-------|------>\n * width | xs | sm | md | lg | xl\n */\n\n const SIZES = {\n xs: 0,\n sm: 600,\n md: 960,\n lg: 1280,\n xl: 1920,\n };\n const width = window.innerWidth;\n const keys = Object.keys(SIZES).reverse();\n const widthComputed = keys.find(key => width >= SIZES[key]);\n\n return widthComputed || 'xs';\n }\n\n /**\n * Get a theme\n * @param {string} name Theme name\n * @returns {import('./types').Theme}\n */\n createTheme(name = '') {\n return theme(Utils.getThemeName(name));\n }\n\n /**\n * Get the theme name\n * @param {import('./types').Theme} theme Theme\n * @returns {string} Theme name\n */\n getThemeName(theme) {\n return theme.name;\n }\n\n /**\n * Get the theme type\n * @param {import('./types').Theme} theme Theme\n * @returns {string} Theme type\n */\n getThemeType(theme) {\n return theme.palette.mode;\n }\n\n /**\n * Changes the current theme\n * @param {string} newThemeName Theme name\n **/\n toggleTheme(newThemeName) {\n const themeName = this.state.themeName;\n\n // dark => blue => colored => light => dark\n newThemeName = newThemeName || (themeName === 'dark' ? 'blue' :\n (themeName === 'blue' ? 'colored' :\n (themeName === 'colored' ? 'light' : 'dark')));\n\n if (newThemeName !== themeName) {\n Utils.setThemeName(newThemeName);\n\n const theme = this.createTheme(newThemeName);\n\n this.setState({\n theme,\n themeName: this.getThemeName(theme),\n themeType: this.getThemeType(theme),\n }, () => {\n this.props.onThemeChange && this.props.onThemeChange(newThemeName);\n this.onThemeChanged && this.onThemeChanged(newThemeName);\n });\n }\n }\n\n /**\n * Gets the system configuration.\n * @returns {Promise<ioBroker.OtherObject>}\n */\n getSystemConfig() {\n return this.socket.getSystemConfig();\n }\n\n /**\n * Get current expert mode\n * @returns {boolean}\n */\n getExpertMode() {\n return window.sessionStorage.getItem('App.expertMode') === 'true' || !!this._systemConfig.expertMode;\n }\n\n /**\n * Gets called when the socket.io connection is ready.\n * You can overload this function to execute own commands.\n */\n onConnectionReady() {\n }\n\n /**\n * Encrypts a string.\n * @param {string} value\n * @returns {string}\n */\n encrypt(value) {\n let result = '';\n for (let i = 0; i < value.length; i++) {\n result += String.fromCharCode(this._secret[i % this._secret.length].charCodeAt(0) ^ value.charCodeAt(i));\n }\n return result;\n }\n\n /**\n * Decrypts a string.\n * @param {string} value\n * @returns {string}\n */\n decrypt(value) {\n let result = '';\n for (let i = 0; i < value.length; i++) {\n result += String.fromCharCode(this._secret[i % this._secret.length].charCodeAt(0) ^ value.charCodeAt(i));\n }\n return result;\n }\n\n /**\n * Gets called when the navigation hash changes.\n * You may override this if needed.\n */\n onHashChanged() {\n const location = Router.getLocation();\n if (location.tab !== this.state.selectedTab) {\n this.selectTab(location.tab);\n }\n }\n\n /**\n * Selects the given tab.\n * @param {string} tab\n * @param {number} [index]\n */\n selectTab(tab, index) {\n (window._localStorage || window.localStorage).setItem(`${this.adapterName}-adapter`, tab);\n this.setState({ selectedTab: tab, selectedTabNum: index });\n }\n\n /**\n * Gets called before the settings are saved.\n * You may override this if needed.\n * @param {Record<string, any>} settings\n */\n onPrepareSave(settings) {\n // here you can encode values\n this.encryptedFields && this.encryptedFields.forEach(attr => {\n if (settings[attr]) {\n settings[attr] = this.encrypt(settings[attr]);\n }\n });\n\n return true;\n }\n\n /**\n * Gets called after the settings are loaded.\n * You may override this if needed.\n * @param {Record<string, any>} settings\n * @param {string[]} encryptedNative optional list of fields to be decrypted\n */\n onPrepareLoad(settings, encryptedNative) {\n // here you can encode values\n this.encryptedFields && this.encryptedFields.forEach(attr => {\n if (settings[attr]) {\n settings[attr] = this.decrypt(settings[attr]);\n }\n });\n encryptedNative && encryptedNative.forEach(attr => {\n this.encryptedFields = this.encryptedFields || [];\n !this.encryptedFields.includes(attr) && this.encryptedFields.push(attr);\n if (settings[attr]) {\n settings[attr] = this.decrypt(settings[attr]);\n }\n });\n }\n\n /**\n * Gets the extendable instances.\n * @returns {Promise<any[]>}\n */\n getExtendableInstances() {\n return new Promise(resolve => {\n this.socket._socket.emit('getObjectView', 'system', 'instance', null, (err, doc) => {\n if (err) {\n resolve([]);\n } else {\n resolve(doc.rows\n .filter(item => item.value.common.webExtendable)\n .map(item => item.value));\n }\n });\n });\n }\n\n /**\n * Gets the IP addresses of the given host.\n * @param {string} host\n */\n getIpAddresses(host) {\n return new Promise(resolve => {\n this.socket._socket.emit('getHostByIp', host || this.common.host, (ip, _host) => {\n const IPs4 = [{ name: `[IPv4] 0.0.0.0 - ${I18n.t('ra_Listen on all IPs')}`, address: '0.0.0.0', family: 'ipv4' }];\n const IPs6 = [{ name: '[IPv6] ::', address: '::', family: 'ipv6' }];\n if (_host) {\n host = _host;\n if (host.native.hardware && host.native.hardware.networkInterfaces) {\n Object.keys(host.native.hardware.networkInterfaces).forEach(eth =>\n host.native.hardware.networkInterfaces[eth].forEach(inter => {\n if (inter.family !== 'IPv6') {\n IPs4.push({ name: `[${inter.family}] ${inter.address} - ${eth}`, address: inter.address, family: 'ipv4' });\n } else {\n IPs6.push({ name: `[${inter.family}] ${inter.address} - ${eth}`, address: inter.address, family: 'ipv6' });\n }\n }));\n }\n IPs6.forEach(ip => IPs4.push(ip));\n }\n resolve(IPs4);\n });\n });\n }\n\n /**\n * Saves the settings to the server.\n * @param {boolean} isClose True if the user is closing the dialog.\n */\n onSave(isClose) {\n let oldObj;\n if (this.state.isConfigurationError) {\n this.setState({ errorText: this.state.isConfigurationError });\n return;\n }\n\n this.socket.getObject(this.instanceId)\n .then(_oldObj => {\n oldObj = _oldObj || {};\n\n for (const a in this.state.native) {\n if (this.state.native.hasOwnProperty(a)) {\n if (this.state.native[a] === null) {\n oldObj.native[a] = null;\n } else if (this.state.native[a] !== undefined) {\n oldObj.native[a] = JSON.parse(JSON.stringify(this.state.native[a]));\n } else {\n delete oldObj.native[a];\n }\n }\n }\n\n if (this.state.common) {\n for (const b in this.state.common) {\n if (this.state.common[b] === null) {\n oldObj.common[b] = null;\n } else if (this.state.common[b] !== undefined) {\n oldObj.common[b] = JSON.parse(JSON.stringify(this.state.common[b]));\n } else {\n delete oldObj.common[b];\n }\n }\n }\n\n if (this.onPrepareSave(oldObj.native) !== false) {\n return this.socket.setObject(this.instanceId, oldObj);\n }\n\n return Promise.reject(new Error('Invalid configuration'));\n })\n .then(() => {\n this.savedNative = oldObj.native;\n globalThis.changed = false;\n try {\n window.parent.postMessage('nochange', '*');\n } catch (e) {\n // ignore\n }\n\n this.setState({ changed: false });\n isClose && GenericApp.onClose();\n })\n .catch(e => console.error(`Cannot save configuration: ${e}`));\n }\n\n /**\n * Renders the toast.\n * @returns {JSX.Element | null} The JSX element.\n */\n renderToast() {\n if (!this.state.toast) {\n return null;\n }\n\n return <Snackbar\n anchorOrigin={{\n vertical: 'bottom',\n horizontal: 'left',\n }}\n open={!0}\n autoHideDuration={6000}\n onClose={() => this.setState({ toast: '' })}\n ContentProps={{ 'aria-describedby': 'message-id' }}\n message={<span id=\"message-id\">{this.state.toast}</span>}\n action={[\n <IconButton\n key=\"close\"\n aria-label=\"Close\"\n color=\"inherit\"\n className={this.props.classes.close}\n onClick={() => this.setState({ toast: '' })}\n size=\"large\"\n >\n <IconClose />\n </IconButton>,\n ]}\n />;\n }\n\n /**\n * Closes the dialog.\n * @private\n */\n static onClose() {\n if (typeof window.parent !== 'undefined' && window.parent) {\n try {\n if (window.parent.$iframeDialog && typeof window.parent.$iframeDialog.close === 'function') {\n window.parent.$iframeDialog.close();\n } else {\n window.parent.postMessage('close', '*');\n }\n } catch (e) {\n window.parent.postMessage('close', '*');\n }\n }\n }\n\n /**\n * Renders the error dialog.\n * @returns {JSX.Element | null} The JSX element.\n */\n renderError() {\n if (!this.state.errorText) {\n return null;\n }\n\n return <DialogError text={this.state.errorText} onClose={() => this.setState({ errorText: '' })} />;\n }\n\n /**\n * Checks if the configuration has changed.\n * @param {Record<string, any>} [native] the new state\n */\n getIsChanged(native) {\n native = native || this.state.native;\n const isChanged = JSON.stringify(native) !== JSON.stringify(this.savedNative);\n\n globalThis.changed = isChanged;\n\n return isChanged;\n }\n\n /**\n * Gets called when loading the configuration.\n * @param {Record<string, any>} newNative The new configuration object.\n */\n onLoadConfig(newNative) {\n if (JSON.stringify(newNative) !== JSON.stringify(this.state.native)) {\n this.setState({ native: newNative, changed: this.getIsChanged(newNative) });\n }\n }\n\n /**\n * Sets the configuration error.\n * @param {string} errorText\n */\n setConfigurationError(errorText) {\n if (this.state.isConfigurationError !== errorText) {\n this.setState({ isConfigurationError: errorText });\n }\n }\n\n /**\n * Renders the save and close buttons.\n * @returns {JSX.Element | undefined} The JSX element.\n */\n renderSaveCloseButtons() {\n if (!this.state.confirmClose && !this.state.bottomButtons) {\n return null;\n }\n\n return <>\n {this.state.bottomButtons ? <SaveCloseButtons\n theme={this.state.theme}\n newReact={this.newReact}\n noTextOnButtons={this.state.width === 'xs' || this.state.width === 'sm' || this.state.width === 'md'}\n changed={this.state.changed}\n onSave={isClose => this.onSave(isClose)}\n onClose={() => {\n if (this.state.changed) {\n this.setState({ confirmClose: true });\n } else {\n GenericApp.onClose();\n }\n }}\n /> : null}\n {this.state.confirmClose ? <ConfirmDialog\n title={I18n.t('ra_Please confirm')}\n text={I18n.t('ra_Some data are not stored. Discard?')}\n ok={I18n.t('ra_Discard')}\n cancel={I18n.t('ra_Cancel')}\n onClose={isYes =>\n this.setState({ confirmClose: false }, () =>\n isYes && GenericApp.onClose())}\n /> : null}\n </>;\n }\n\n /**\n * @private\n * @param {Record<string, any>} obj\n * @param {any} attrs\n * @param {any} value\n * @returns {boolean | undefined}\n */\n _updateNativeValue(obj, attrs, value) {\n if (typeof attrs !== 'object') {\n attrs = attrs.split('.');\n }\n const attr = attrs.shift();\n if (!attrs.length) {\n if (value && typeof value === 'object') {\n if (JSON.stringify(obj[attr]) !== JSON.stringify(value)) {\n obj[attr] = value;\n return true;\n }\n return false;\n }\n if (obj[attr] !== value) {\n obj[attr] = value;\n return true;\n }\n\n return false;\n }\n\n obj[attr] = obj[attr] || {};\n if (typeof obj[attr] !== 'object') {\n throw new Error(`attribute ${attr} is no object, but ${typeof obj[attr]}`);\n }\n return this._updateNativeValue(obj[attr], attrs, value);\n }\n\n /**\n * Update the native value\n * @param {string} attr The attribute name with dots as delimiter.\n * @param {any} value The new value.\n * @param {(() => void)} [cb] Callback which will be called upon completion.\n */\n updateNativeValue(attr, value, cb) {\n const native = JSON.parse(JSON.stringify(this.state.native));\n if (this._updateNativeValue(native, attr, value)) {\n const changed = this.getIsChanged(native);\n\n if (changed !== this.state.changed) {\n try {\n window.parent.postMessage(changed ? 'change' : 'nochange', '*');\n } catch (e) {\n // ignore\n }\n }\n\n this.setState({ native, changed }, cb);\n }\n }\n\n /**\n * Set the error text to be shown.\n * @param {string | JSX.Element} text\n */\n showError(text) {\n this.setState({ errorText: text });\n }\n\n /**\n * Sets the toast to be shown.\n * @param {string} toast\n */\n showToast(toast) {\n this.setState({ toast });\n }\n\n /**\n * Renders helper dialogs\n * @returns {JSX.Element} The JSX element.\n */\n renderHelperDialogs() {\n return <>\n {this.renderError()}\n {this.renderToast()}\n {this.renderSaveCloseButtons()}\n {this.renderAlertSnackbar()}\n </>;\n }\n\n /**\n * Renders this component.\n * @returns {JSX.Element} The JSX element.\n */\n render() {\n if (!this.state.loaded) {\n return <Loader theme={this.state.themeType} />;\n }\n\n return <div className=\"App\">\n {this.renderError()}\n {this.renderToast()}\n {this.renderSaveCloseButtons()}\n {this.renderAlertSnackbar()}\n </div>;\n }\n}\n\nGenericApp.propTypes = {\n adapterName: PropTypes.string, // (optional) name of adapter\n onThemeChange: PropTypes.func, // (optional) called by theme change\n socket: PropTypes.object, // (optional) socket information (host, port)\n encryptedFields: PropTypes.array, // (optional) list of native attributes, that must be encrypted\n bottomButtons: PropTypes.bool, // If the bottom buttons (Save/Close) must be shown\n Connection: PropTypes.object, // If the bottom buttons (Save/Close) must be shown\n};\n\nexport default GenericApp;\n"],"mappings":"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"}
1
+ {"version":3,"file":"GenericApp.js","names":["_react","_interopRequireDefault","require","_socketClient","_propTypes","Sentry","_interopRequireWildcard","SentryIntegrations","_material","_iconsMaterial","_Prompt","_Theme","_Loader","_Router2","_Utils","_SaveCloseButtons","_Confirm","_i18n","_Error","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof3","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ownKeys","e","r","t","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","result","NewTarget","constructor","Reflect","construct","_possibleConstructorReturn2","sham","Proxy","Boolean","valueOf","cssStyle","window","localStorage","getItem","setItem","GenericApp","_Router","_inherits2","_super","props","settings","_this","_classCallCheck2","ConnectionClass","Connection","document","getElementById","style","createElement","setAttribute","innerHTML","head","appendChild","isWeb","io","location","port","SocketClient","_assertThisInitialized2","id","_obj$common","socket","systemLang","common","language","I18n","setLanguage","_systemConfig","expertMode","setState","getExpertMode","message","data","newThemeName","Utils","getThemeName","setThemeName","theme","createTheme","themeName","themeType","getThemeType","onThemeChange","onThemeChanged","onToggleExpertMode","console","debug","concat","JSON","stringify","resizeTimer","clearTimeout","setTimeout","width","getWidth","printPrompt","query","search","replace","args","trim","split","b","parts","instance","undefined","parseInt","slice","tmp","pathname","adapterName","instanceId","newReact","Router","getLocation","tab","_localStorage","themeInstance","state","selectedTab","selectedTabNum","errorText","changed","connected","loaded","isConfigurationError","toast","bottomButtons","confirmClose","_alert","_alertType","_alertMessage","translations","en","de","ru","pt","nl","fr","it","es","pl","uk","lang","assign","setTranslations","savedNative","encryptedFields","sentryDSN","socketUrl","startsWith","protocol","hostname","alerDialogRendered","oldAlert","alert","toString","toLowerCase","includes","error","showAlert","log","name","doNotLoadAllObjects","onProgress","progress","PROGRESS","CONNECTING","READY","onReady","subscribeObject","onSystemConfigChanged","then","getSystemConfig","_secret","secret","getObject","instanceObj","waitPromise","sentryEnabled","diag","version","disableDataReporting","host","sentryStarted","init","dsn","release","integrations","Dedupe","sentryInited","uuidObj","uuid","configureScope","scope","setUser","Promise","resolve","onPrepareLoad","encryptedNative","parse","onConnectionReady","warn","onError","err","showError","_createClass2","value","type","renderAlertSnackbar","_this2","Snackbar","backgroundColor","open","autoHideDuration","onClose","reason","alertMessage","componentDidMount","addEventListener","onResize","onReceiveMessage","_get2","componentWillUnmount","removeEventListener","palette","mode","toggleTheme","_this3","sessionStorage","encrypt","i","String","fromCharCode","charCodeAt","decrypt","onHashChanged","selectTab","index","onPrepareSave","_this4","attr","_this5","getExtendableInstances","_this6","_socket","emit","doc","rows","item","webExtendable","map","getIpAddresses","_this7","ip","_host","IPs4","address","family","IPs6","hardware","networkInterfaces","eth","inter","onSave","isClose","_this8","oldObj","_oldObj","a","setObject","reject","Error","globalThis","parent","postMessage","renderToast","_this9","anchorOrigin","vertical","horizontal","ContentProps","action","IconButton","color","className","classes","close","onClick","size","Close","renderError","_this10","text","getIsChanged","native","isChanged","onLoadConfig","newNative","setConfigurationError","renderSaveCloseButtons","_this11","Fragment","noTextOnButtons","title","ok","cancel","isYes","_updateNativeValue","attrs","_typeof2","shift","updateNativeValue","cb","showToast","renderHelperDialogs","render","SIZES","xs","sm","md","lg","xl","innerWidth","reverse","widthComputed","find","$iframeDialog","propTypes","PropTypes","string","func","object","array","bool","_default","exports"],"sources":["GenericApp.js"],"sourcesContent":["/**\n * Copyright 2018-2022 bluefox <dogafox@gmail.com>\n *\n * MIT License\n *\n **/\nimport React from 'react';\nimport { Connection, PROGRESS } from '@iobroker/socket-client';\nimport PropTypes from 'prop-types';\nimport * as Sentry from '@sentry/browser';\nimport * as SentryIntegrations from '@sentry/integrations';\n\nimport { Snackbar, IconButton } from '@mui/material';\n\nimport { Close as IconClose } from '@mui/icons-material';\n\nimport printPrompt from './Prompt';\nimport theme from './Theme';\nimport Loader from './Components/Loader';\nimport Router from './Components/Router';\nimport Utils from './Components/Utils';\nimport SaveCloseButtons from './Components/SaveCloseButtons';\nimport ConfirmDialog from './Dialogs/Confirm';\nimport I18n from './i18n';\nimport DialogError from './Dialogs/Error';\n\n// import './index.css';\nconst cssStyle = `\nhtml {\n height: 100%;\n}\n\nbody {\n margin: 0;\n padding: 0;\n font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", \"Roboto\", \"Oxygen\", \"Ubuntu\", \"Cantarell\", \"Fira Sans\", \"Droid Sans\", \"Helvetica Neue\", sans-serif;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n width: 100%;\n height: 100%;\n overflow: hidden;\n}\n\n/* scrollbar */\n::-webkit-scrollbar-track {\n background-color: #ccc;\n border-radius: 5px;\n}\n\n::-webkit-scrollbar {\n width: 5px;\n height: 5px;\n background-color: #ccc;\n}\n\n::-webkit-scrollbar-thumb {\n background-color: #575757;\n border-radius: 5px;\n}\n\n#root {\n height: 100%;\n}\n\n.App {\n height: 100%;\n}\n\n@keyframes glow {\n from {\n background-color: initial;\n }\n to {\n background-color: #58c458;\n }\n}\n`;\n\nif (!window.localStorage) {\n window.localStorage = {\n getItem: () => null,\n setItem: () => null,\n };\n}\n\n/**\n * @extends {Router<import('./types').GenericAppProps, import('./types').GenericAppState>}\n */\nclass GenericApp extends Router {\n /**\n * @param {import('./types').GenericAppProps} props\n * @param {import('./types').GenericAppSettings | undefined} settings\n */\n constructor(props, settings) {\n const ConnectionClass = props.Connection || settings.Connection || Connection;\n // const ConnectionClass = props.Connection === 'admin' || settings.Connection = 'admin' ? AdminConnection : (props.Connection || settings.Connection || Connection);\n\n if (!window.document.getElementById('generic-app-iobroker-component')) {\n const style = window.document.createElement('style');\n style.setAttribute('id', 'generic-app-iobroker-component');\n style.innerHTML = cssStyle;\n window.document.head.appendChild(style);\n }\n\n // Remove `!Connection.isWeb() && window.adapterName !== 'material'` when iobroker.socket will support native ws\n if (!ConnectionClass.isWeb() && window.io && window.location.port === '3000') {\n try {\n const io = new window.SocketClient();\n delete window.io;\n window.io = io;\n } catch (e) {\n // ignore\n }\n }\n\n super(props);\n\n printPrompt();\n\n const query = (window.location.search || '').replace(/^\\?/, '').replace(/#.*$/, '');\n const args = {};\n query.trim().split('&').filter(t => t.trim()).forEach(b => {\n const parts = b.split('=');\n args[parts[0]] = parts.length === 2 ? parts[1] : true;\n if (args[parts[0]] === 'true') {\n args[parts[0]] = true;\n } else if (args[parts[0]] === 'false') {\n args[parts[0]] = false;\n }\n });\n\n // extract instance from URL\n this.instance = args.instance !== undefined ? parseInt(args.instance, 10) || 0 : (parseInt(window.location.search.slice(1), 10) || 0);\n // extract adapter name from URL\n const tmp = window.location.pathname.split('/');\n this.adapterName = settings?.adapterName || props.adapterName || window.adapterName || tmp[tmp.length - 2] || 'iot';\n this.instanceId = `system.adapter.${this.adapterName}.${this.instance}`;\n this.newReact = args.newReact === true; // it is admin5\n\n const location = Router.getLocation();\n location.tab = location.tab || (window._localStorage || window.localStorage).getItem(`${this.adapterName}-adapter`) || '';\n\n const themeInstance = this.createTheme();\n\n this.state = {\n selectedTab: (window._localStorage || window.localStorage).getItem(`${this.adapterName}-adapter`) || '',\n selectedTabNum: -1,\n native: {},\n errorText: '',\n changed: false,\n connected: false,\n loaded: false,\n isConfigurationError: '',\n expertMode: false,\n toast: '',\n theme: themeInstance,\n themeName: this.getThemeName(themeInstance),\n themeType: this.getThemeType(themeInstance),\n bottomButtons: (settings && settings.bottomButtons) === false ? false : (props?.bottomButtons !== false),\n width: GenericApp.getWidth(),\n confirmClose: false,\n _alert: false,\n _alertType: 'info',\n _alertMessage: '',\n };\n\n // init translations\n const translations = {\n en: require('./i18n/en.json'),\n de: require('./i18n/de.json'),\n ru: require('./i18n/ru.json'),\n pt: require('./i18n/pt.json'),\n nl: require('./i18n/nl.json'),\n fr: require('./i18n/fr.json'),\n it: require('./i18n/it.json'),\n es: require('./i18n/es.json'),\n pl: require('./i18n/pl.json'),\n uk: require('./i18n/uk.json'),\n 'zh-cn': require('./i18n/zh-cn.json'),\n };\n\n // merge together\n if (settings && settings.translations) {\n Object.keys(settings.translations).forEach(lang => translations[lang] = Object.assign(translations[lang], settings.translations[lang]));\n } else if (props.translations) {\n Object.keys(props.translations).forEach(lang => translations[lang] = Object.assign(translations[lang], props.translations[lang]));\n }\n\n I18n.setTranslations(translations);\n\n this.savedNative = {}; // to detect if the config changed\n\n this.encryptedFields = props.encryptedFields || settings?.encryptedFields || [];\n\n this.sentryDSN = (settings && settings.sentryDSN) || props.sentryDSN;\n\n if (window.socketUrl) {\n if (window.socketUrl.startsWith(':')) {\n window.socketUrl = `${window.location.protocol}//${window.location.hostname}${window.socketUrl}`;\n } else if (!window.socketUrl.startsWith('http://') && !window.socketUrl.startsWith('https://')) {\n window.socketUrl = `${window.location.protocol}//${window.socketUrl}`;\n }\n }\n\n this.alerDialogRendered = false;\n\n window.oldAlert = window.alert;\n window.alert = message => {\n if (!this.alerDialogRendered) {\n window.oldAlert(message);\n return;\n }\n if (message && message.toString().toLowerCase().includes('error')) {\n console.error(message);\n this.showAlert(message.toString(), 'error');\n } else {\n console.log(message);\n this.showAlert(message.toString(), 'info');\n }\n };\n\n this.socket = new ConnectionClass({\n ...(props?.socket || settings?.socket),\n name: this.adapterName,\n doNotLoadAllObjects: settings?.doNotLoadAllObjects,\n onProgress: progress => {\n if (progress === PROGRESS.CONNECTING) {\n this.setState({ connected: false });\n } else if (progress === PROGRESS.READY) {\n this.setState({ connected: true });\n } else {\n this.setState({ connected: true });\n }\n },\n onReady: (/* objects, scripts */) => {\n I18n.setLanguage(this.socket.systemLang);\n\n // subscribe because of language and expert mode\n this.socket.subscribeObject('system.config', this.onSystemConfigChanged)\n .then(() => this.getSystemConfig())\n .then(obj => {\n this._secret = (typeof obj !== 'undefined' && obj.native && obj.native.secret) || 'Zgfr56gFe87jJOM';\n this._systemConfig = obj?.common || {};\n return this.socket.getObject(this.instanceId);\n })\n .then(instanceObj => {\n let waitPromise;\n\n const sentryEnabled =\n this._systemConfig.diag !== 'none' &&\n instanceObj &&\n instanceObj.common &&\n instanceObj.common.name &&\n instanceObj.common.version &&\n !instanceObj.common.disableDataReporting &&\n window.location.host !== 'localhost:3000';\n\n // activate sentry plugin\n if (!this.sentryStarted && this.sentryDSN && sentryEnabled) {\n this.sentryStarted = true;\n\n Sentry.init({\n dsn: this.sentryDSN,\n release: `iobroker.${instanceObj.common.name}@${instanceObj.common.version}`,\n integrations: [\n new SentryIntegrations.Dedupe(),\n ],\n });\n }\n\n // read UUID and init sentry with it.\n // for backward compatibility it will be processed separately from above logic: some adapters could still have this.sentryDSN as undefined\n if (!this.sentryInited && sentryEnabled) {\n this.sentryInited = true;\n\n waitPromise = this.socket.getObject('system.meta.uuid')\n .then(uuidObj => {\n if (uuidObj && uuidObj.native && uuidObj.native.uuid) {\n Sentry.configureScope(scope =>\n scope.setUser({ id: uuidObj.native.uuid }));\n }\n });\n }\n\n waitPromise = waitPromise || Promise.resolve();\n\n waitPromise\n .then(() => {\n if (instanceObj) {\n this.common = instanceObj?.common;\n this.onPrepareLoad(instanceObj.native, instanceObj.encryptedNative); // decode all secrets\n this.savedNative = JSON.parse(JSON.stringify(instanceObj.native));\n this.setState({ native: instanceObj.native, loaded: true, expertMode: this.getExpertMode() }, () =>\n this.onConnectionReady && this.onConnectionReady());\n } else {\n console.warn('Cannot load instance settings');\n this.setState(\n {\n native: {},\n loaded: true,\n expertMode: this.getExpertMode(),\n },\n () => this.onConnectionReady && this.onConnectionReady(),\n );\n }\n });\n })\n .catch(e => window.alert(`Cannot settings: ${e}`));\n },\n onError: err => {\n console.error(err);\n this.showError(err);\n },\n });\n }\n\n showAlert(message, type) {\n if (type !== 'error' && type !== 'warning' && type !== 'info' && type !== 'success') {\n type = 'info';\n }\n\n this.setState({\n _alert: true,\n _alertType: type,\n _alertMessage: message,\n });\n }\n\n renderAlertSnackbar() {\n this.alerDialogRendered = true;\n\n return <Snackbar\n style={this.state._alertType === 'error' ?\n { backgroundColor: '#f44336' } :\n (this.state._alertType === 'success' ? { backgroundColor: '#4caf50' } : undefined)}\n open={this.state._alert}\n autoHideDuration={6000}\n onClose={reason => reason !== 'clickaway' && this.setState({ _alert: false })}\n message={this.state.alertMessage}\n />;\n }\n\n onSystemConfigChanged = (id, obj) => {\n if (obj && id === 'system.config') {\n if (this.socket.systemLang !== obj?.common.language) {\n this.socket.systemLang = obj?.common.language || 'en';\n I18n.setLanguage(this.socket.systemLang);\n }\n\n if (this._systemConfig.expertMode !== !!obj?.common?.expertMode) {\n this._systemConfig = obj?.common || {};\n this.setState({ expertMode: this.getExpertMode() });\n } else {\n this._systemConfig = obj?.common || {};\n }\n }\n };\n\n /**\n * Called immediately after a component is mounted. Setting state here will trigger re-rendering.\n */\n componentDidMount() {\n window.addEventListener('resize', this.onResize, true);\n window.addEventListener('message', this.onReceiveMessage, false);\n super.componentDidMount();\n }\n\n /**\n * Called immediately before a component is destroyed.\n */\n componentWillUnmount() {\n window.removeEventListener('resize', this.onResize, true);\n window.removeEventListener('message', this.onReceiveMessage, false);\n super.componentWillUnmount();\n }\n\n onReceiveMessage = message => {\n if (message?.data) {\n if (message.data === 'updateTheme') {\n const newThemeName = Utils.getThemeName();\n Utils.setThemeName(Utils.getThemeName());\n\n const theme = this.createTheme(newThemeName);\n\n this.setState({\n theme,\n themeName: this.getThemeName(theme),\n themeType: this.getThemeType(theme),\n }, () => {\n this.props.onThemeChange && this.props.onThemeChange(newThemeName);\n this.onThemeChanged && this.onThemeChanged(newThemeName);\n });\n } else if (message.data === 'updateExpertMode') {\n this.onToggleExpertMode && this.onToggleExpertMode(this.getExpertMode());\n } else if (message.data !== 'chartReady') { // if not \"echart ready\" message\n console.debug(`Received unknown message: \"${JSON.stringify(message.data)}\". May be it will be processed later`);\n }\n }\n };\n\n /**\n * @private\n */\n onResize = () => {\n this.resizeTimer && clearTimeout(this.resizeTimer);\n this.resizeTimer = setTimeout(() => {\n this.resizeTimer = null;\n this.setState({ width: GenericApp.getWidth() });\n }, 200);\n };\n\n /**\n * Gets the width depending on the window inner width.\n * @returns {import('./types').Width}\n */\n static getWidth() {\n /**\n * innerWidth |xs sm md lg xl\n * |-------|-------|-------|-------|------>\n * width | xs | sm | md | lg | xl\n */\n\n const SIZES = {\n xs: 0,\n sm: 600,\n md: 960,\n lg: 1280,\n xl: 1920,\n };\n const width = window.innerWidth;\n const keys = Object.keys(SIZES).reverse();\n const widthComputed = keys.find(key => width >= SIZES[key]);\n\n return widthComputed || 'xs';\n }\n\n /**\n * Get a theme\n * @param {string} name Theme name\n * @returns {import('./types').Theme}\n */\n createTheme(name = '') {\n return theme(Utils.getThemeName(name));\n }\n\n /**\n * Get the theme name\n * @param {import('./types').Theme} theme Theme\n * @returns {string} Theme name\n */\n getThemeName(theme) {\n return theme.name;\n }\n\n /**\n * Get the theme type\n * @param {import('./types').Theme} theme Theme\n * @returns {string} Theme type\n */\n getThemeType(theme) {\n return theme.palette.mode;\n }\n\n /**\n * Changes the current theme\n * @param {string} newThemeName Theme name\n **/\n toggleTheme(newThemeName) {\n const themeName = this.state.themeName;\n\n // dark => blue => colored => light => dark\n newThemeName = newThemeName || (themeName === 'dark' ? 'blue' :\n (themeName === 'blue' ? 'colored' :\n (themeName === 'colored' ? 'light' : 'dark')));\n\n if (newThemeName !== themeName) {\n Utils.setThemeName(newThemeName);\n\n const theme = this.createTheme(newThemeName);\n\n this.setState({\n theme,\n themeName: this.getThemeName(theme),\n themeType: this.getThemeType(theme),\n }, () => {\n this.props.onThemeChange && this.props.onThemeChange(newThemeName);\n this.onThemeChanged && this.onThemeChanged(newThemeName);\n });\n }\n }\n\n /**\n * Gets the system configuration.\n * @returns {Promise<ioBroker.OtherObject>}\n */\n getSystemConfig() {\n return this.socket.getSystemConfig();\n }\n\n /**\n * Get current expert mode\n * @returns {boolean}\n */\n getExpertMode() {\n return window.sessionStorage.getItem('App.expertMode') === 'true' || !!this._systemConfig.expertMode;\n }\n\n /**\n * Gets called when the socket.io connection is ready.\n * You can overload this function to execute own commands.\n */\n onConnectionReady() {\n }\n\n /**\n * Encrypts a string.\n * @param {string} value\n * @returns {string}\n */\n encrypt(value) {\n let result = '';\n for (let i = 0; i < value.length; i++) {\n result += String.fromCharCode(this._secret[i % this._secret.length].charCodeAt(0) ^ value.charCodeAt(i));\n }\n return result;\n }\n\n /**\n * Decrypts a string.\n * @param {string} value\n * @returns {string}\n */\n decrypt(value) {\n let result = '';\n for (let i = 0; i < value.length; i++) {\n result += String.fromCharCode(this._secret[i % this._secret.length].charCodeAt(0) ^ value.charCodeAt(i));\n }\n return result;\n }\n\n /**\n * Gets called when the navigation hash changes.\n * You may override this if needed.\n */\n onHashChanged() {\n const location = Router.getLocation();\n if (location.tab !== this.state.selectedTab) {\n this.selectTab(location.tab);\n }\n }\n\n /**\n * Selects the given tab.\n * @param {string} tab\n * @param {number} [index]\n */\n selectTab(tab, index) {\n (window._localStorage || window.localStorage).setItem(`${this.adapterName}-adapter`, tab);\n this.setState({ selectedTab: tab, selectedTabNum: index });\n }\n\n /**\n * Gets called before the settings are saved.\n * You may override this if needed.\n * @param {Record<string, any>} settings\n */\n onPrepareSave(settings) {\n // here you can encode values\n this.encryptedFields && this.encryptedFields.forEach(attr => {\n if (settings[attr]) {\n settings[attr] = this.encrypt(settings[attr]);\n }\n });\n\n return true;\n }\n\n /**\n * Gets called after the settings are loaded.\n * You may override this if needed.\n * @param {Record<string, any>} settings\n * @param {string[]} encryptedNative optional list of fields to be decrypted\n */\n onPrepareLoad(settings, encryptedNative) {\n // here you can encode values\n this.encryptedFields && this.encryptedFields.forEach(attr => {\n if (settings[attr]) {\n settings[attr] = this.decrypt(settings[attr]);\n }\n });\n encryptedNative && encryptedNative.forEach(attr => {\n this.encryptedFields = this.encryptedFields || [];\n !this.encryptedFields.includes(attr) && this.encryptedFields.push(attr);\n if (settings[attr]) {\n settings[attr] = this.decrypt(settings[attr]);\n }\n });\n }\n\n /**\n * Gets the extendable instances.\n * @returns {Promise<any[]>}\n */\n getExtendableInstances() {\n return new Promise(resolve => {\n this.socket._socket.emit('getObjectView', 'system', 'instance', null, (err, doc) => {\n if (err) {\n resolve([]);\n } else {\n resolve(doc.rows\n .filter(item => item.value.common.webExtendable)\n .map(item => item.value));\n }\n });\n });\n }\n\n /**\n * Gets the IP addresses of the given host.\n * @param {string} host\n */\n getIpAddresses(host) {\n return new Promise(resolve => {\n this.socket._socket.emit('getHostByIp', host || this.common.host, (ip, _host) => {\n const IPs4 = [{ name: `[IPv4] 0.0.0.0 - ${I18n.t('ra_Listen on all IPs')}`, address: '0.0.0.0', family: 'ipv4' }];\n const IPs6 = [{ name: '[IPv6] ::', address: '::', family: 'ipv6' }];\n if (_host) {\n host = _host;\n if (host.native.hardware && host.native.hardware.networkInterfaces) {\n Object.keys(host.native.hardware.networkInterfaces).forEach(eth =>\n host.native.hardware.networkInterfaces[eth].forEach(inter => {\n if (inter.family !== 'IPv6') {\n IPs4.push({ name: `[${inter.family}] ${inter.address} - ${eth}`, address: inter.address, family: 'ipv4' });\n } else {\n IPs6.push({ name: `[${inter.family}] ${inter.address} - ${eth}`, address: inter.address, family: 'ipv6' });\n }\n }));\n }\n IPs6.forEach(ip => IPs4.push(ip));\n }\n resolve(IPs4);\n });\n });\n }\n\n /**\n * Saves the settings to the server.\n * @param {boolean} isClose True if the user is closing the dialog.\n */\n onSave(isClose) {\n let oldObj;\n if (this.state.isConfigurationError) {\n this.setState({ errorText: this.state.isConfigurationError });\n return;\n }\n\n this.socket.getObject(this.instanceId)\n .then(_oldObj => {\n oldObj = _oldObj || {};\n\n for (const a in this.state.native) {\n if (this.state.native.hasOwnProperty(a)) {\n if (this.state.native[a] === null) {\n oldObj.native[a] = null;\n } else if (this.state.native[a] !== undefined) {\n oldObj.native[a] = JSON.parse(JSON.stringify(this.state.native[a]));\n } else {\n delete oldObj.native[a];\n }\n }\n }\n\n if (this.state.common) {\n for (const b in this.state.common) {\n if (this.state.common[b] === null) {\n oldObj.common[b] = null;\n } else if (this.state.common[b] !== undefined) {\n oldObj.common[b] = JSON.parse(JSON.stringify(this.state.common[b]));\n } else {\n delete oldObj.common[b];\n }\n }\n }\n\n if (this.onPrepareSave(oldObj.native) !== false) {\n return this.socket.setObject(this.instanceId, oldObj);\n }\n\n return Promise.reject(new Error('Invalid configuration'));\n })\n .then(() => {\n this.savedNative = oldObj.native;\n globalThis.changed = false;\n try {\n window.parent.postMessage('nochange', '*');\n } catch (e) {\n // ignore\n }\n\n this.setState({ changed: false });\n isClose && GenericApp.onClose();\n })\n .catch(e => console.error(`Cannot save configuration: ${e}`));\n }\n\n /**\n * Renders the toast.\n * @returns {JSX.Element | null} The JSX element.\n */\n renderToast() {\n if (!this.state.toast) {\n return null;\n }\n\n return <Snackbar\n anchorOrigin={{\n vertical: 'bottom',\n horizontal: 'left',\n }}\n open={!0}\n autoHideDuration={6000}\n onClose={() => this.setState({ toast: '' })}\n ContentProps={{ 'aria-describedby': 'message-id' }}\n message={<span id=\"message-id\">{this.state.toast}</span>}\n action={[\n <IconButton\n key=\"close\"\n aria-label=\"Close\"\n color=\"inherit\"\n className={this.props.classes.close}\n onClick={() => this.setState({ toast: '' })}\n size=\"large\"\n >\n <IconClose />\n </IconButton>,\n ]}\n />;\n }\n\n /**\n * Closes the dialog.\n * @private\n */\n static onClose() {\n if (typeof window.parent !== 'undefined' && window.parent) {\n try {\n if (window.parent.$iframeDialog && typeof window.parent.$iframeDialog.close === 'function') {\n window.parent.$iframeDialog.close();\n } else {\n window.parent.postMessage('close', '*');\n }\n } catch (e) {\n window.parent.postMessage('close', '*');\n }\n }\n }\n\n /**\n * Renders the error dialog.\n * @returns {JSX.Element | null} The JSX element.\n */\n renderError() {\n if (!this.state.errorText) {\n return null;\n }\n\n return <DialogError text={this.state.errorText} onClose={() => this.setState({ errorText: '' })} />;\n }\n\n /**\n * Checks if the configuration has changed.\n * @param {Record<string, any>} [native] the new state\n */\n getIsChanged(native) {\n native = native || this.state.native;\n const isChanged = JSON.stringify(native) !== JSON.stringify(this.savedNative);\n\n globalThis.changed = isChanged;\n\n return isChanged;\n }\n\n /**\n * Gets called when loading the configuration.\n * @param {Record<string, any>} newNative The new configuration object.\n */\n onLoadConfig(newNative) {\n if (JSON.stringify(newNative) !== JSON.stringify(this.state.native)) {\n this.setState({ native: newNative, changed: this.getIsChanged(newNative) });\n }\n }\n\n /**\n * Sets the configuration error.\n * @param {string} errorText\n */\n setConfigurationError(errorText) {\n if (this.state.isConfigurationError !== errorText) {\n this.setState({ isConfigurationError: errorText });\n }\n }\n\n /**\n * Renders the save and close buttons.\n * @returns {JSX.Element | undefined} The JSX element.\n */\n renderSaveCloseButtons() {\n if (!this.state.confirmClose && !this.state.bottomButtons) {\n return null;\n }\n\n return <>\n {this.state.bottomButtons ? <SaveCloseButtons\n theme={this.state.theme}\n newReact={this.newReact}\n noTextOnButtons={this.state.width === 'xs' || this.state.width === 'sm' || this.state.width === 'md'}\n changed={this.state.changed}\n onSave={isClose => this.onSave(isClose)}\n onClose={() => {\n if (this.state.changed) {\n this.setState({ confirmClose: true });\n } else {\n GenericApp.onClose();\n }\n }}\n /> : null}\n {this.state.confirmClose ? <ConfirmDialog\n title={I18n.t('ra_Please confirm')}\n text={I18n.t('ra_Some data are not stored. Discard?')}\n ok={I18n.t('ra_Discard')}\n cancel={I18n.t('ra_Cancel')}\n onClose={isYes =>\n this.setState({ confirmClose: false }, () =>\n isYes && GenericApp.onClose())}\n /> : null}\n </>;\n }\n\n /**\n * @private\n * @param {Record<string, any>} obj\n * @param {any} attrs\n * @param {any} value\n * @returns {boolean | undefined}\n */\n _updateNativeValue(obj, attrs, value) {\n if (typeof attrs !== 'object') {\n attrs = attrs.split('.');\n }\n const attr = attrs.shift();\n if (!attrs.length) {\n if (value && typeof value === 'object') {\n if (JSON.stringify(obj[attr]) !== JSON.stringify(value)) {\n obj[attr] = value;\n return true;\n }\n return false;\n }\n if (obj[attr] !== value) {\n obj[attr] = value;\n return true;\n }\n\n return false;\n }\n\n obj[attr] = obj[attr] || {};\n if (typeof obj[attr] !== 'object') {\n throw new Error(`attribute ${attr} is no object, but ${typeof obj[attr]}`);\n }\n return this._updateNativeValue(obj[attr], attrs, value);\n }\n\n /**\n * Update the native value\n * @param {string} attr The attribute name with dots as delimiter.\n * @param {any} value The new value.\n * @param {(() => void)} [cb] Callback which will be called upon completion.\n */\n updateNativeValue(attr, value, cb) {\n const native = JSON.parse(JSON.stringify(this.state.native));\n if (this._updateNativeValue(native, attr, value)) {\n const changed = this.getIsChanged(native);\n\n if (changed !== this.state.changed) {\n try {\n window.parent.postMessage(changed ? 'change' : 'nochange', '*');\n } catch (e) {\n // ignore\n }\n }\n\n this.setState({ native, changed }, cb);\n }\n }\n\n /**\n * Set the error text to be shown.\n * @param {string | JSX.Element} text\n */\n showError(text) {\n this.setState({ errorText: text });\n }\n\n /**\n * Sets the toast to be shown.\n * @param {string} toast\n */\n showToast(toast) {\n this.setState({ toast });\n }\n\n /**\n * Renders helper dialogs\n * @returns {JSX.Element} The JSX element.\n */\n renderHelperDialogs() {\n return <>\n {this.renderError()}\n {this.renderToast()}\n {this.renderSaveCloseButtons()}\n {this.renderAlertSnackbar()}\n </>;\n }\n\n /**\n * Renders this component.\n * @returns {JSX.Element} The JSX element.\n */\n render() {\n if (!this.state.loaded) {\n return <Loader theme={this.state.themeType} />;\n }\n\n return <div className=\"App\">\n {this.renderError()}\n {this.renderToast()}\n {this.renderSaveCloseButtons()}\n {this.renderAlertSnackbar()}\n </div>;\n }\n}\n\nGenericApp.propTypes = {\n adapterName: PropTypes.string, // (optional) name of adapter\n onThemeChange: PropTypes.func, // (optional) called by theme change\n socket: PropTypes.object, // (optional) socket information (host, port)\n encryptedFields: PropTypes.array, // (optional) list of native attributes, that must be encrypted\n bottomButtons: PropTypes.bool, // If the bottom buttons (Save/Close) must be shown\n Connection: PropTypes.object, // If the bottom buttons (Save/Close) must be shown\n};\n\nexport default GenericApp;\n"],"mappings":"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"}
package/README.md CHANGED
@@ -667,6 +667,12 @@ socket.getObjectViewCustom('custom', 'state', 'startKey', 'endKey')
667
667
  -->
668
668
 
669
669
  ## Changelog
670
+ ### 4.5.4 (2023-09-17)
671
+ * (bluefox) Added the restricting to folder property for select file dialog
672
+
673
+ ### 4.5.3 (2023-08-20)
674
+ * (foxriver76) fixed css classes of TableResize, see https://github.com/ioBroker/ioBroker.admin/issues/1860
675
+
670
676
  ### 4.5.2 (2023-08-20)
671
677
  * (foxriver76) added missing export of TableResize
672
678
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@iobroker/adapter-react-v5",
3
- "version": "4.5.2",
3
+ "version": "4.5.4",
4
4
  "description": "React classes to develop admin interfaces for ioBroker with react.",
5
5
  "author": {
6
6
  "name": "bluefox",
@@ -30,19 +30,19 @@
30
30
  "@emotion/react": "^11.11.1",
31
31
  "@emotion/styled": "^11.11.0",
32
32
  "@iobroker/socket-client": "^2.3.4",
33
- "@mui/icons-material": "^5.14.3",
34
- "@mui/material": "^5.14.5",
35
- "@mui/styles": "^5.14.5",
36
- "@mui/x-date-pickers": "6.11.2",
37
- "@sentry/browser": "^7.64.0",
38
- "@sentry/integrations": "^7.64.0",
33
+ "@mui/icons-material": "^5.14.9",
34
+ "@mui/material": "^5.14.9",
35
+ "@mui/styles": "^5.14.9",
36
+ "@mui/x-date-pickers": "6.14.0",
37
+ "@sentry/browser": "^7.69.0",
38
+ "@sentry/integrations": "^7.69.0",
39
39
  "@types/iobroker": "^4.0.5",
40
40
  "react-color": "^2.19.3",
41
41
  "react-colorful": "^5.6.1",
42
42
  "react-cropper": "^2.3.3",
43
43
  "react-dropzone": "^14.2.3",
44
- "react-icons": "^4.10.1",
45
- "react-inlinesvg": "^4.0.2",
44
+ "react-icons": "^4.11.0",
45
+ "react-inlinesvg": "^4.0.3",
46
46
  "react-text-mask": "^5.5.0"
47
47
  }
48
48
  }