@iobroker/adapter-react-v5 4.0.12 → 4.0.14

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 (140) hide show
  1. package/AdminConnection.js.map +1 -1
  2. package/Components/404.js.map +1 -1
  3. package/Components/ColorPicker.d.ts +1 -0
  4. package/Components/ColorPicker.js +12 -9
  5. package/Components/ColorPicker.js.map +1 -1
  6. package/Components/ComplexCron.js +24 -22
  7. package/Components/ComplexCron.js.map +1 -1
  8. package/Components/CustomModal.js.map +1 -1
  9. package/Components/FileBrowser.js.map +1 -1
  10. package/Components/FileViewer.js.map +1 -1
  11. package/Components/Icon.js.map +1 -1
  12. package/Components/IconPicker.js.map +1 -1
  13. package/Components/IconSelector.js.map +1 -1
  14. package/Components/Image.js.map +1 -1
  15. package/Components/JsonConfigComponent/ChipInput.js +8 -10
  16. package/Components/JsonConfigComponent/ChipInput.js.map +1 -1
  17. package/Components/JsonConfigComponent/ConfigAlive.js.map +1 -1
  18. package/Components/JsonConfigComponent/ConfigAutocomplete.js.map +1 -1
  19. package/Components/JsonConfigComponent/ConfigAutocompleteSendTo.js.map +1 -1
  20. package/Components/JsonConfigComponent/ConfigCRON.js.map +1 -1
  21. package/Components/JsonConfigComponent/ConfigCertificateSelect.js.map +1 -1
  22. package/Components/JsonConfigComponent/ConfigCheckLicense.js.map +1 -1
  23. package/Components/JsonConfigComponent/ConfigCheckbox.js.map +1 -1
  24. package/Components/JsonConfigComponent/ConfigChip.js.map +1 -1
  25. package/Components/JsonConfigComponent/ConfigColor.js.map +1 -1
  26. package/Components/JsonConfigComponent/ConfigCoordinates.js.map +1 -1
  27. package/Components/JsonConfigComponent/ConfigCustom.js.map +1 -1
  28. package/Components/JsonConfigComponent/ConfigDatePicker.js.map +1 -1
  29. package/Components/JsonConfigComponent/ConfigFile.js.map +1 -1
  30. package/Components/JsonConfigComponent/ConfigFileSelector.js.map +1 -1
  31. package/Components/JsonConfigComponent/ConfigFunc.js.map +1 -1
  32. package/Components/JsonConfigComponent/ConfigGeneric.js.map +1 -1
  33. package/Components/JsonConfigComponent/ConfigIP.js.map +1 -1
  34. package/Components/JsonConfigComponent/ConfigImageUpload.js.map +1 -1
  35. package/Components/JsonConfigComponent/ConfigInstanceSelect.js.map +1 -1
  36. package/Components/JsonConfigComponent/ConfigJsonEditor.js.map +1 -1
  37. package/Components/JsonConfigComponent/ConfigLanguage.js.map +1 -1
  38. package/Components/JsonConfigComponent/ConfigNumber.js.map +1 -1
  39. package/Components/JsonConfigComponent/ConfigObjectId.js.map +1 -1
  40. package/Components/JsonConfigComponent/ConfigPanel.js.map +1 -1
  41. package/Components/JsonConfigComponent/ConfigPassword.js.map +1 -1
  42. package/Components/JsonConfigComponent/ConfigPattern.js.map +1 -1
  43. package/Components/JsonConfigComponent/ConfigRoom.js.map +1 -1
  44. package/Components/JsonConfigComponent/ConfigSelect.js.map +1 -1
  45. package/Components/JsonConfigComponent/ConfigSelectSendTo.js.map +1 -1
  46. package/Components/JsonConfigComponent/ConfigSendto.js.map +1 -1
  47. package/Components/JsonConfigComponent/ConfigSetState.js.map +1 -1
  48. package/Components/JsonConfigComponent/ConfigSlider.js.map +1 -1
  49. package/Components/JsonConfigComponent/ConfigStaticDivider.js.map +1 -1
  50. package/Components/JsonConfigComponent/ConfigStaticHeader.js.map +1 -1
  51. package/Components/JsonConfigComponent/ConfigStaticImage.js.map +1 -1
  52. package/Components/JsonConfigComponent/ConfigStaticText.js.map +1 -1
  53. package/Components/JsonConfigComponent/ConfigTable.js.map +1 -1
  54. package/Components/JsonConfigComponent/ConfigTabs.js.map +1 -1
  55. package/Components/JsonConfigComponent/ConfigText.js.map +1 -1
  56. package/Components/JsonConfigComponent/ConfigTextSendTo.js.map +1 -1
  57. package/Components/JsonConfigComponent/ConfigTimePicker.js.map +1 -1
  58. package/Components/JsonConfigComponent/ConfigTopic.js.map +1 -1
  59. package/Components/JsonConfigComponent/ConfigUUID.js.map +1 -1
  60. package/Components/JsonConfigComponent/ConfigUser.js.map +1 -1
  61. package/Components/JsonConfigComponent/index.js.map +1 -1
  62. package/Components/JsonConfigComponent/wrapper/Components/ColorPicker.js.map +1 -1
  63. package/Components/JsonConfigComponent/wrapper/Components/Icon.js.map +1 -1
  64. package/Components/JsonConfigComponent/wrapper/Components/TextWithIcon.js.map +1 -1
  65. package/Components/JsonConfigComponent/wrapper/Components/UploadImage.js.map +1 -1
  66. package/Components/JsonConfigComponent/wrapper/Components/Utils.js.map +1 -1
  67. package/Components/JsonConfigComponent/wrapper/Dialogs/Confirm.js.map +1 -1
  68. package/Components/JsonConfigComponent/wrapper/Dialogs/Cron.js.map +1 -1
  69. package/Components/JsonConfigComponent/wrapper/Dialogs/Error.js.map +1 -1
  70. package/Components/JsonConfigComponent/wrapper/Dialogs/Message.js.map +1 -1
  71. package/Components/JsonConfigComponent/wrapper/Dialogs/SelectFile.js.map +1 -1
  72. package/Components/JsonConfigComponent/wrapper/Dialogs/SelectID.js.map +1 -1
  73. package/Components/JsonConfigComponent/wrapper/i18n.js.map +1 -1
  74. package/Components/JsonConfigComponent/wrapper/icons/IconCopy.js.map +1 -1
  75. package/Components/Loader.js.map +1 -1
  76. package/Components/Loaders/PT.js.map +1 -1
  77. package/Components/Loaders/Vendor.js.map +1 -1
  78. package/Components/Logo.js.map +1 -1
  79. package/Components/MDUtils.js.map +1 -1
  80. package/Components/ObjectBrowser.js +26 -21
  81. package/Components/ObjectBrowser.js.map +1 -1
  82. package/Components/Router.js.map +1 -1
  83. package/Components/SaveCloseButtons.js.map +1 -1
  84. package/Components/Schedule.js.map +1 -1
  85. package/Components/SelectWithIcon.js.map +1 -1
  86. package/Components/SimpleCron/cron2text.js.map +1 -1
  87. package/Components/SimpleCron/cronText.js.map +1 -1
  88. package/Components/SimpleCron/index.js +38 -32
  89. package/Components/SimpleCron/index.js.map +1 -1
  90. package/Components/SimpleCron/jquery.cron.locale.js.map +1 -1
  91. package/Components/TabContainer.js.map +1 -1
  92. package/Components/TabContent.js.map +1 -1
  93. package/Components/TabHeader.js.map +1 -1
  94. package/Components/TableResize.js.map +1 -1
  95. package/Components/TextWithIcon.js.map +1 -1
  96. package/Components/ToggleThemeMenu.js +5 -5
  97. package/Components/ToggleThemeMenu.js.map +1 -1
  98. package/Components/TreeTable.js.map +1 -1
  99. package/Components/UploadImage.js.map +1 -1
  100. package/Components/Utils.js.map +1 -1
  101. package/Components/copy-to-clipboard.js.map +1 -1
  102. package/Components/withWidth.js.map +1 -1
  103. package/Connection.js.map +1 -1
  104. package/Dialogs/ComplexCron.js +1 -1
  105. package/Dialogs/ComplexCron.js.map +1 -1
  106. package/Dialogs/Confirm.js.map +1 -1
  107. package/Dialogs/Cron.js +6 -6
  108. package/Dialogs/Cron.js.map +1 -1
  109. package/Dialogs/Error.js.map +1 -1
  110. package/Dialogs/Message.js.map +1 -1
  111. package/Dialogs/SelectFile.js.map +1 -1
  112. package/Dialogs/SelectID.js.map +1 -1
  113. package/Dialogs/SimpleCron.js +2 -2
  114. package/Dialogs/SimpleCron.js.map +1 -1
  115. package/Dialogs/TextInput.js.map +1 -1
  116. package/GenericApp.d.ts +11 -0
  117. package/GenericApp.js +109 -42
  118. package/GenericApp.js.map +1 -1
  119. package/Prompt.js.map +1 -1
  120. package/README.md +6 -0
  121. package/Theme.js.map +1 -1
  122. package/_Connection.js.map +1 -1
  123. package/i18n.js.map +1 -1
  124. package/icons/IconAdapter.js.map +1 -1
  125. package/icons/IconAlias.js.map +1 -1
  126. package/icons/IconChannel.js.map +1 -1
  127. package/icons/IconClearFilter.js.map +1 -1
  128. package/icons/IconClosed.js.map +1 -1
  129. package/icons/IconCopy.js.map +1 -1
  130. package/icons/IconDevice.js.map +1 -1
  131. package/icons/IconDocument.js.map +1 -1
  132. package/icons/IconDocumentReadOnly.js.map +1 -1
  133. package/icons/IconExpert.js.map +1 -1
  134. package/icons/IconFx.js.map +1 -1
  135. package/icons/IconInstance.js.map +1 -1
  136. package/icons/IconLogout.js.map +1 -1
  137. package/icons/IconNoIcon.js.map +1 -1
  138. package/icons/IconOpen.js.map +1 -1
  139. package/icons/IconState.js.map +1 -1
  140. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"SelectID.js","names":["styles","headerID","fontWeight","fontStyle","dialog","height","dialogMobile","padding","width","maxWidth","maxHeight","content","overflow","contentMobile","titleRoot","whiteSpace","display","textOverflow","DialogSelectID","props","dialogName","filters","window","_localStorage","localStorage","getItem","JSON","parse","e","selected","filter","id","state","name","isMobile","innerWidth","onClose","onOk","multiSelect","title","length","I18n","t","classes","paper","Utils","clsx","root","foldersFirst","imagePrefix","prefix","showExpertButton","undefined","expertMode","columns","types","lang","getLanguage","socket","notEditable","themeName","themeType","customFilter","filterConfig","setItem","stringify","isDouble","setState","handleOk","filterFunc","ok","handleCancel","cancel","React","Component","propTypes","PropTypes","string","object","bool","func","isRequired","isFloatComma","dateFormat","oneOfType","array","statesOnly","_export","withStyles"],"sources":["SelectID.js"],"sourcesContent":["/**\n * Copyright 2018-2022 bluefox <dogafox@gmail.com>\n *\n * MIT License\n *\n **/\n// please do not delete React, as without it other projects could not be compiled: ReferenceError: React is not defined\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport withStyles from '@mui/styles/withStyles';\n\nimport Button from '@mui/material/Button';\nimport DialogTitle from '@mui/material/DialogTitle';\nimport DialogContent from '@mui/material/DialogContent';\nimport DialogActions from '@mui/material/DialogActions';\nimport Dialog from '@mui/material/Dialog';\n\nimport IconCancel from '@mui/icons-material/Cancel';\nimport IconOk from '@mui/icons-material/Check';\n\nimport Utils from '../Components/Utils';\nimport I18n from '../i18n';\nimport ObjectBrowser from '../Components/ObjectBrowser';\n\nconst styles = () => ({\n headerID: {\n fontWeight: 'bold',\n fontStyle: 'italic',\n },\n dialog: {\n height: '95%',\n },\n dialogMobile: {\n padding: 4,\n width: '100%',\n maxWidth: '100%',\n maxHeight: 'calc(100% - 16px)',\n height: '100%',\n },\n content: {\n height: '100%',\n overflow: 'hidden',\n },\n contentMobile: {\n padding: '8px 4px',\n },\n titleRoot: {\n whiteSpace: 'nowrap',\n width: 'calc(100% - 72px)',\n overflow: 'hidden',\n display: 'inline-block',\n textOverflow: 'ellipsis',\n },\n});\n\n/**\n * @typedef {object} DialogSelectIDProps\n * @property {string} [dialogName] The internal name of the dialog; default: \"default\"\n * @property {string} [title] The dialog title; default: Please select object ID... (translated)\n * @property {boolean} [multiSelect] Set to true to allow the selection of multiple IDs.\n * @property {boolean} [foldersFirst] Show folders before any leaves.\n * @property {string} [imagePrefix] Prefix (default: '.')\n * @property {boolean} [showExpertButton] Show the expert button?\n * @property {import('../Components/types').ObjectBrowserColumn[]} [columns] Columns to display; default: 'name', 'type', 'role', 'room', 'func', 'val'\n * @property {import('../Components/types').ObjectBrowserType[]} [types] Object types to show; default: 'state' only\n * @property {ioBroker.Languages} [lang] The language.\n * @property {import('../Connection').default} socket The socket connection.\n * @property {boolean} [notEditable] Can't objects be edited? (default: true)\n * @property {string} [themeName] Theme name.\n * @property {string} [themeType] Theme type.\n * @property {import('../Components/types').ObjectBrowserCustomFilter} [customFilter] Custom filter.\n * @property {string | string[]} [selected] The selected IDs.\n * @property {string} [ok] The ok button text; default: OK (translated)\n * @property {string} [cancel] The cancel button text; default: Cancel (translated)\n * @property {() => void} onClose Close handler that is always called when the dialog is closed.\n * @property {(selected: string | string[] | undefined, name: string) => void} onOk Handler that is called when the user presses OK.\n * @property {{headerID: string; dialog: string; content: string}} [classes] The styling class names.\n *\n * @extends {React.Component<DialogSelectIDProps>}\n */\nclass DialogSelectID extends React.Component {\n /**\n * @param {DialogSelectIDProps} props\n */\n constructor(props) {\n super(props);\n this.dialogName = this.props.dialogName || 'default';\n this.dialogName = `SelectID.${this.dialogName}`;\n\n this.filters = (window._localStorage || window.localStorage).getItem(this.dialogName) || '{}';\n\n try {\n this.filters = JSON.parse(this.filters);\n } catch (e) {\n this.filters = {};\n }\n\n if (props.filters) {\n this.filters = {...this.filters, ...props.filters};\n }\n\n let selected = this.props.selected || [];\n if (typeof selected !== 'object') {\n selected = [selected];\n }\n selected = selected.filter(id => id);\n\n this.state = {\n selected,\n name: '',\n isMobile: window.innerWidth < 800,\n };\n }\n\n handleCancel() {\n this.props.onClose();\n }\n\n handleOk() {\n this.props.onOk(this.props.multiSelect ? this.state.selected : this.state.selected[0] || '', this.state.name);\n this.props.onClose();\n }\n\n render() {\n let title;\n if (this.state.name || this.state.selected.length) {\n if (this.state.selected.length === 1) {\n title = [\n <span key=\"selected\">\n {I18n.t('ra_Selected')}\n &nbsp;\n </span>,\n <span key=\"id\" className={this.props.classes.headerID}>\n {(this.state.name || this.state.selected) + (this.state.name ? ` [${this.state.selected}]` : '')}\n </span>,\n ];\n } else {\n title = [\n <span key=\"selected\">\n {I18n.t('ra_Selected')}\n &nbsp;\n </span>,\n <span key=\"id\" className={this.props.classes.headerID}>\n {I18n.t('%s items', this.state.selected.length)}\n </span>,\n ];\n }\n } else {\n title = this.props.title || I18n.t('ra_Please select object ID...');\n }\n\n return <Dialog\n onClose={() => {}}\n maxWidth={false}\n classes={{ paper: Utils.clsx(this.props.classes.dialog, this.props.classes.dialogMobile) }}\n fullWidth\n open={!0}\n aria-labelledby=\"selectid-dialog-title\"\n >\n <DialogTitle id=\"selectid-dialog-title\" classes={{ root: this.props.classes.titleRoot }}>{title}</DialogTitle>\n <DialogContent className={Utils.clsx(this.props.classes.content, this.props.classes.contentMobile)}>\n <ObjectBrowser\n foldersFirst={this.props.foldersFirst}\n imagePrefix={this.props.imagePrefix || this.props.prefix} // prefix is for back compatibility\n defaultFilters={this.filters}\n dialogName={this.dialogName}\n showExpertButton={this.props.showExpertButton !== undefined ? this.props.showExpertButton : true}\n expertMode={this.props.expertMode}\n style={{ width: '100%', height: '100%' }}\n columns={this.props.columns || ['name', 'type', 'role', 'room', 'func', 'val']}\n types={this.props.types || ['state']}\n t={I18n.t}\n lang={this.props.lang || I18n.getLanguage()}\n socket={this.props.socket}\n selected={this.state.selected}\n multiSelect={this.props.multiSelect}\n notEditable={this.props.notEditable === undefined ? true : this.props.notEditable}\n name={this.state.name}\n themeName={this.props.themeName}\n themeType={this.props.themeType}\n customFilter={this.props.customFilter}\n onFilterChanged={filterConfig => {\n this.filters = filterConfig;\n (window._localStorage || window.localStorage).setItem(this.dialogName, JSON.stringify(filterConfig));\n }}\n onSelect={(selected, name, isDouble) => {\n if (JSON.stringify(selected) !== JSON.stringify(this.state.selected)) {\n this.setState({ selected, name }, () =>\n isDouble && this.handleOk());\n } else if (isDouble) {\n this.handleOk();\n }\n }}\n filterFunc={this.props.filterFunc}\n />\n </DialogContent>\n <DialogActions>\n <Button variant=\"contained\" onClick={() => this.handleOk()} startIcon={<IconOk />} disabled={!this.state.selected.length} color=\"primary\">{this.props.ok || I18n.t('ra_Ok')}</Button>\n <Button color=\"grey\" variant=\"contained\" onClick={() => this.handleCancel()} startIcon={<IconCancel />}>{this.props.cancel || I18n.t('ra_Cancel')}</Button>\n </DialogActions>\n </Dialog>;\n }\n}\n\nDialogSelectID.propTypes = {\n dialogName: PropTypes.string, // where to store settings in localStorage\n classes: PropTypes.object,\n notEditable: PropTypes.bool,\n onClose: PropTypes.func.isRequired,\n onOk: PropTypes.func.isRequired,\n title: PropTypes.string,\n lang: PropTypes.string,\n foldersFirst: PropTypes.bool,\n isFloatComma: PropTypes.bool,\n dateFormat: PropTypes.string,\n selected: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.array,\n ]),\n filters: PropTypes.object, // predefined filter fields, like {\"id\":\"\",\"name\":\"\",\"room\":\"\",\"func\":\"\",\"role\":\"level\",\"type\":\"\",\"custom\":\"\"}\n customFilter: PropTypes.object, // optional {common: {custom: true}} or {common: {custom: 'sql.0'}}\n statesOnly: PropTypes.bool,\n socket: PropTypes.object.isRequired,\n cancel: PropTypes.string,\n imagePrefix: PropTypes.string,\n ok: PropTypes.string,\n themeName: PropTypes.string,\n themeType: PropTypes.string,\n showExpertButton: PropTypes.bool,\n expertMode: PropTypes.bool, // force expert mode\n multiSelect: PropTypes.bool,\n types: PropTypes.array, // optional ['state', 'instance', 'channel']\n columns: PropTypes.array, // optional ['name', 'type', 'role', 'room', 'func', 'val', 'buttons']\n\n filterFunc: PropTypes.func, // function to filter out all unnecessary objects. It cannot be used together with \"types\"\n // Example for function: `obj => obj.common && obj.common.type === 'boolean'` to show only boolean states\n};\n\n/** @type {typeof DialogSelectID} */\nconst _export = withStyles(styles)(DialogSelectID);\nexport default _export;\n"],"mappings":"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"}
1
+ {"version":3,"file":"SelectID.js","names":["_react","_interopRequireDefault","require","_propTypes","_withStyles","_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","isMobile","innerWidth","_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","isFloatComma","dateFormat","oneOfType","array","statesOnly","_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/withStyles';\n\nimport Button from '@mui/material/Button';\nimport DialogTitle from '@mui/material/DialogTitle';\nimport DialogContent from '@mui/material/DialogContent';\nimport DialogActions from '@mui/material/DialogActions';\nimport Dialog from '@mui/material/Dialog';\n\nimport IconCancel from '@mui/icons-material/Cancel';\nimport IconOk from '@mui/icons-material/Check';\n\nimport Utils from '../Components/Utils';\nimport I18n from '../i18n';\nimport ObjectBrowser from '../Components/ObjectBrowser';\n\nconst styles = () => ({\n headerID: {\n fontWeight: 'bold',\n fontStyle: 'italic',\n },\n dialog: {\n height: '95%',\n },\n dialogMobile: {\n padding: 4,\n width: '100%',\n maxWidth: '100%',\n maxHeight: 'calc(100% - 16px)',\n height: '100%',\n },\n content: {\n height: '100%',\n overflow: 'hidden',\n },\n contentMobile: {\n padding: '8px 4px',\n },\n titleRoot: {\n whiteSpace: 'nowrap',\n width: 'calc(100% - 72px)',\n overflow: 'hidden',\n display: 'inline-block',\n textOverflow: 'ellipsis',\n },\n});\n\n/**\n * @typedef {object} DialogSelectIDProps\n * @property {string} [dialogName] The internal name of the dialog; default: \"default\"\n * @property {string} [title] The dialog title; default: Please select object ID... (translated)\n * @property {boolean} [multiSelect] Set to true to allow the selection of multiple IDs.\n * @property {boolean} [foldersFirst] Show folders before any leaves.\n * @property {string} [imagePrefix] Prefix (default: '.')\n * @property {boolean} [showExpertButton] Show the expert button?\n * @property {import('../Components/types').ObjectBrowserColumn[]} [columns] Columns to display; default: 'name', 'type', 'role', 'room', 'func', 'val'\n * @property {import('../Components/types').ObjectBrowserType[]} [types] Object types to show; default: 'state' only\n * @property {ioBroker.Languages} [lang] The language.\n * @property {import('../Connection').default} socket The socket connection.\n * @property {boolean} [notEditable] Can't objects be edited? (default: true)\n * @property {string} [themeName] Theme name.\n * @property {string} [themeType] Theme type.\n * @property {import('../Components/types').ObjectBrowserCustomFilter} [customFilter] Custom filter.\n * @property {string | string[]} [selected] The selected IDs.\n * @property {string} [ok] The ok button text; default: OK (translated)\n * @property {string} [cancel] The cancel button text; default: Cancel (translated)\n * @property {() => void} onClose Close handler that is always called when the dialog is closed.\n * @property {(selected: string | string[] | undefined, name: string) => void} onOk Handler that is called when the user presses OK.\n * @property {{headerID: string; dialog: string; content: string}} [classes] The styling class names.\n *\n * @extends {React.Component<DialogSelectIDProps>}\n */\nclass DialogSelectID extends React.Component {\n /**\n * @param {DialogSelectIDProps} props\n */\n constructor(props) {\n super(props);\n this.dialogName = this.props.dialogName || 'default';\n this.dialogName = `SelectID.${this.dialogName}`;\n\n this.filters = (window._localStorage || window.localStorage).getItem(this.dialogName) || '{}';\n\n try {\n this.filters = JSON.parse(this.filters);\n } catch (e) {\n this.filters = {};\n }\n\n if (props.filters) {\n this.filters = {...this.filters, ...props.filters};\n }\n\n let selected = this.props.selected || [];\n if (typeof selected !== 'object') {\n selected = [selected];\n }\n selected = selected.filter(id => id);\n\n this.state = {\n selected,\n name: '',\n isMobile: window.innerWidth < 800,\n };\n }\n\n handleCancel() {\n this.props.onClose();\n }\n\n handleOk() {\n this.props.onOk(this.props.multiSelect ? this.state.selected : this.state.selected[0] || '', this.state.name);\n this.props.onClose();\n }\n\n render() {\n let title;\n if (this.state.name || this.state.selected.length) {\n if (this.state.selected.length === 1) {\n title = [\n <span key=\"selected\">\n {I18n.t('ra_Selected')}\n &nbsp;\n </span>,\n <span key=\"id\" className={this.props.classes.headerID}>\n {(this.state.name || this.state.selected) + (this.state.name ? ` [${this.state.selected}]` : '')}\n </span>,\n ];\n } else {\n title = [\n <span key=\"selected\">\n {I18n.t('ra_Selected')}\n &nbsp;\n </span>,\n <span key=\"id\" className={this.props.classes.headerID}>\n {I18n.t('%s items', this.state.selected.length)}\n </span>,\n ];\n }\n } else {\n title = this.props.title || I18n.t('ra_Please select object ID...');\n }\n\n return <Dialog\n onClose={() => {}}\n maxWidth={false}\n classes={{ paper: Utils.clsx(this.props.classes.dialog, this.props.classes.dialogMobile) }}\n fullWidth\n open={!0}\n aria-labelledby=\"selectid-dialog-title\"\n >\n <DialogTitle id=\"selectid-dialog-title\" classes={{ root: this.props.classes.titleRoot }}>{title}</DialogTitle>\n <DialogContent className={Utils.clsx(this.props.classes.content, this.props.classes.contentMobile)}>\n <ObjectBrowser\n foldersFirst={this.props.foldersFirst}\n imagePrefix={this.props.imagePrefix || this.props.prefix} // prefix is for back compatibility\n defaultFilters={this.filters}\n dialogName={this.dialogName}\n showExpertButton={this.props.showExpertButton !== undefined ? this.props.showExpertButton : true}\n expertMode={this.props.expertMode}\n style={{ width: '100%', height: '100%' }}\n columns={this.props.columns || ['name', 'type', 'role', 'room', 'func', 'val']}\n types={this.props.types || ['state']}\n t={I18n.t}\n lang={this.props.lang || I18n.getLanguage()}\n socket={this.props.socket}\n selected={this.state.selected}\n multiSelect={this.props.multiSelect}\n notEditable={this.props.notEditable === undefined ? true : this.props.notEditable}\n name={this.state.name}\n themeName={this.props.themeName}\n themeType={this.props.themeType}\n customFilter={this.props.customFilter}\n onFilterChanged={filterConfig => {\n this.filters = filterConfig;\n (window._localStorage || window.localStorage).setItem(this.dialogName, JSON.stringify(filterConfig));\n }}\n onSelect={(selected, name, isDouble) => {\n if (JSON.stringify(selected) !== JSON.stringify(this.state.selected)) {\n this.setState({ selected, name }, () =>\n isDouble && this.handleOk());\n } else if (isDouble) {\n this.handleOk();\n }\n }}\n filterFunc={this.props.filterFunc}\n />\n </DialogContent>\n <DialogActions>\n <Button variant=\"contained\" onClick={() => this.handleOk()} startIcon={<IconOk />} disabled={!this.state.selected.length} color=\"primary\">{this.props.ok || I18n.t('ra_Ok')}</Button>\n <Button color=\"grey\" variant=\"contained\" onClick={() => this.handleCancel()} startIcon={<IconCancel />}>{this.props.cancel || I18n.t('ra_Cancel')}</Button>\n </DialogActions>\n </Dialog>;\n }\n}\n\nDialogSelectID.propTypes = {\n dialogName: PropTypes.string, // where to store settings in localStorage\n classes: PropTypes.object,\n notEditable: PropTypes.bool,\n onClose: PropTypes.func.isRequired,\n onOk: PropTypes.func.isRequired,\n title: PropTypes.string,\n lang: PropTypes.string,\n foldersFirst: PropTypes.bool,\n isFloatComma: PropTypes.bool,\n dateFormat: PropTypes.string,\n selected: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.array,\n ]),\n filters: PropTypes.object, // predefined filter fields, like {\"id\":\"\",\"name\":\"\",\"room\":\"\",\"func\":\"\",\"role\":\"level\",\"type\":\"\",\"custom\":\"\"}\n customFilter: PropTypes.object, // optional {common: {custom: true}} or {common: {custom: 'sql.0'}}\n statesOnly: PropTypes.bool,\n socket: PropTypes.object.isRequired,\n cancel: PropTypes.string,\n imagePrefix: PropTypes.string,\n ok: PropTypes.string,\n themeName: PropTypes.string,\n themeType: PropTypes.string,\n showExpertButton: PropTypes.bool,\n expertMode: PropTypes.bool, // force expert mode\n multiSelect: PropTypes.bool,\n types: PropTypes.array, // optional ['state', 'instance', 'channel']\n columns: PropTypes.array, // optional ['name', 'type', 'role', 'room', 'func', 'val', 'buttons']\n\n filterFunc: PropTypes.func, // function to filter out all unnecessary objects. It cannot be used together with \"types\"\n // Example for function: `obj => obj.common && obj.common.type === 'boolean'` to show only boolean states\n};\n\n/** @type {typeof DialogSelectID} */\nconst _export = withStyles(styles)(DialogSelectID);\nexport default _export;\n"],"mappings":"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"}
@@ -24,9 +24,9 @@ var _SimpleCron = _interopRequireDefault(require("../Components/SimpleCron"));
24
24
  var _i18n = _interopRequireDefault(require("../i18n"));
25
25
  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); }; }
26
26
  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; } }
27
- // Generate cron expression
27
+ // Generates cron expression
28
28
 
29
- var styles = function styles(theme) {
29
+ var styles = function styles() {
30
30
  return {
31
31
  headerID: {
32
32
  fontWeight: 'bold',
@@ -1 +1 @@
1
- {"version":3,"file":"SimpleCron.js","names":["styles","theme","headerID","fontWeight","fontStyle","radio","display","dialogPaper","height","DialogSimpleCron","props","cron","replace","trim","state","onClose","onOk","paper","classes","title","I18n","t","overflow","setState","getLanguage","handleOk","ok","handleCancel","cancel","React","Component","propTypes","PropTypes","object","func","isRequired","string","simple","bool","language","withStyles"],"sources":["SimpleCron.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport withStyles from '@mui/styles/withStyles';\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 IconOk from '@mui/icons-material/Check';\nimport IconCancel from '@mui/icons-material/Cancel';\n\nimport SimpleCron from '../Components/SimpleCron';\n\nimport I18n from '../i18n';\n\n// Generate cron expression\n\nconst styles = theme => ({\n headerID: {\n fontWeight: 'bold',\n fontStyle: 'italic'\n },\n radio: {\n display: 'inline-block'\n },\n dialogPaper: {\n height: 'calc(100% - 96px)'\n },\n});\n\nclass DialogSimpleCron extends React.Component {\n constructor(props) {\n super(props);\n\n let cron;\n if (this.props.cron && typeof this.props.cron === 'string' && this.props.cron.replace(/^[\"']/, '')[0] !== '{') {\n cron = this.props.cron.replace(/['\"]/g, '').trim();\n } else {\n cron = this.props.cron || '{}';\n if (typeof cron === 'string') {\n cron = cron.replace(/^[\"']/, '').replace(/[\"']\\n?$/, '');\n }\n }\n\n this.state = {\n cron,\n };\n }\n\n handleCancel() {\n this.props.onClose();\n }\n\n handleOk() {\n this.props.onOk(this.state.cron);\n this.props.onClose();\n }\n\n render() {\n return <Dialog\n onClose={() => {}}\n maxWidth=\"md\"\n fullWidth\n classes={{paper: this.props.classes.dialogPaper}}\n open={!0}\n aria-labelledby=\"cron-dialog-title\"\n >\n <DialogTitle id=\"cron-dialog-title\">{this.props.title || I18n.t('ra_Define CRON...')}</DialogTitle>\n <DialogContent style={{height: '100%', overflow: 'hidden'}}>\n <SimpleCron\n cronExpression={this.state.cron}\n onChange={cron => this.setState({cron})}\n language={I18n.getLanguage()}\n />\n </DialogContent>\n <DialogActions>\n <Button variant=\"contained\" onClick={() => this.handleOk()} color=\"primary\" startIcon={<IconOk />}>{this.props.ok || I18n.t('ra_Ok')}</Button>\n <Button variant=\"contained\" onClick={() => this.handleCancel()} color=\"grey\" startIcon={<IconCancel />}>{this.props.cancel || I18n.t('ra_Cancel')}</Button>\n </DialogActions>\n </Dialog>;\n }\n}\n\nDialogSimpleCron.propTypes = {\n classes: PropTypes.object,\n onClose: PropTypes.func.isRequired,\n onOk: PropTypes.func.isRequired,\n title: PropTypes.string,\n cron: PropTypes.string,\n cancel: PropTypes.string,\n ok: PropTypes.string,\n simple: PropTypes.bool,\n language: PropTypes.string\n\n};\n\nexport default withStyles(styles)(DialogSimpleCron);\n"],"mappings":"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"}
1
+ {"version":3,"file":"SimpleCron.js","names":["_react","_interopRequireDefault","require","_propTypes","_withStyles","_Button","_DialogTitle","_DialogContent","_DialogActions","_Dialog","_Check","_Cancel","_SimpleCron","_i18n","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","result","NewTarget","constructor","Reflect","construct","arguments","apply","_possibleConstructorReturn2","sham","Proxy","Boolean","prototype","valueOf","call","e","styles","headerID","fontWeight","fontStyle","radio","display","dialogPaper","height","DialogSimpleCron","_React$Component","_inherits2","_super","props","_this","_classCallCheck2","cron","replace","trim","state","_createClass2","key","value","handleCancel","onClose","handleOk","onOk","render","_this2","createElement","maxWidth","fullWidth","classes","paper","open","id","title","I18n","t","style","overflow","cronExpression","onChange","setState","language","getLanguage","variant","onClick","color","startIcon","ok","cancel","React","Component","propTypes","PropTypes","object","func","isRequired","string","simple","bool","_default","withStyles","exports"],"sources":["SimpleCron.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport withStyles from '@mui/styles/withStyles';\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 IconOk from '@mui/icons-material/Check';\nimport IconCancel from '@mui/icons-material/Cancel';\n\nimport SimpleCron from '../Components/SimpleCron';\n\nimport I18n from '../i18n';\n\n// Generates cron expression\n\nconst styles = () => ({\n headerID: {\n fontWeight: 'bold',\n fontStyle: 'italic',\n },\n radio: {\n display: 'inline-block',\n },\n dialogPaper: {\n height: 'calc(100% - 96px)',\n },\n});\n\nclass DialogSimpleCron extends React.Component {\n constructor(props) {\n super(props);\n\n let cron;\n if (this.props.cron && typeof this.props.cron === 'string' && this.props.cron.replace(/^[\"']/, '')[0] !== '{') {\n cron = this.props.cron.replace(/['\"]/g, '').trim();\n } else {\n cron = this.props.cron || '{}';\n if (typeof cron === 'string') {\n cron = cron.replace(/^[\"']/, '').replace(/[\"']\\n?$/, '');\n }\n }\n\n this.state = {\n cron,\n };\n }\n\n handleCancel() {\n this.props.onClose();\n }\n\n handleOk() {\n this.props.onOk(this.state.cron);\n this.props.onClose();\n }\n\n render() {\n return <Dialog\n onClose={() => {}}\n maxWidth=\"md\"\n fullWidth\n classes={{paper: this.props.classes.dialogPaper}}\n open={!0}\n aria-labelledby=\"cron-dialog-title\"\n >\n <DialogTitle id=\"cron-dialog-title\">{this.props.title || I18n.t('ra_Define CRON...')}</DialogTitle>\n <DialogContent style={{height: '100%', overflow: 'hidden'}}>\n <SimpleCron\n cronExpression={this.state.cron}\n onChange={cron => this.setState({cron})}\n language={I18n.getLanguage()}\n />\n </DialogContent>\n <DialogActions>\n <Button variant=\"contained\" onClick={() => this.handleOk()} color=\"primary\" startIcon={<IconOk />}>{this.props.ok || I18n.t('ra_Ok')}</Button>\n <Button variant=\"contained\" onClick={() => this.handleCancel()} color=\"grey\" startIcon={<IconCancel />}>{this.props.cancel || I18n.t('ra_Cancel')}</Button>\n </DialogActions>\n </Dialog>;\n }\n}\n\nDialogSimpleCron.propTypes = {\n classes: PropTypes.object,\n onClose: PropTypes.func.isRequired,\n onOk: PropTypes.func.isRequired,\n title: PropTypes.string,\n cron: PropTypes.string,\n cancel: PropTypes.string,\n ok: PropTypes.string,\n simple: PropTypes.bool,\n language: PropTypes.string\n\n};\n\nexport default withStyles(styles)(DialogSimpleCron);\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"TextInput.js","names":["TextInput","props","state","text","input","value","error","onClose","fullWidth","undefined","titleText","promptText","labelText","type","e","charCode","verify","target","rule","setState","applyText","I18n","t","cancelText","React","Component","propTypes","PropTypes","bool","func","isRequired","string","replace","_export","withWidth"],"sources":["TextInput.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport Button from '@mui/material/Button';\nimport TextField from '@mui/material/TextField';\nimport Dialog from '@mui/material/Dialog';\nimport DialogActions from '@mui/material/DialogActions';\nimport DialogContent from '@mui/material/DialogContent';\nimport DialogContentText from '@mui/material/DialogContentText';\nimport DialogTitle from '@mui/material/DialogTitle';\n\nimport I18n from '../i18n';\n\nimport IconClose from '@mui/icons-material/Close';\nimport IconCheck from '@mui/icons-material/Check';\n\nimport withWidth from '../Components/withWidth';\n\n/**\n * @typedef {object} TextInputProps\n * @property {(text: string | null) => void} onClose The dialog close callback.\n * @property {string} titleText The title text.\n * @property {string} [promptText] Prompt text (default: empty).\n * @property {string} [labelText] Label text (default: empty).\n * @property {string} cancelText The text of the cancel button.\n * @property {string} applyText The text of the apply button.\n * @property {(text: string) => string} [verify] The verification callback. Return a non-empty string if there was an error.\n * @property {(text: string) => string} [rule] The text replacement callback.\n * @property {'text' | 'number' | 'password' | 'email'} [type] The type of the textbox (default: text).\n * @property {string} [input] The input when opening the dialog.\n *\n * @extends {React.Component<TextInputProps>}\n */\nclass TextInput extends React.Component {\n /**\n * @param {Readonly<TextInputProps>} props\n */\n constructor(props) {\n super(props);\n\n this.state = {\n text: this.props.input || this.props.value || '', // input is deprecated\n error: ''\n }\n }\n render() {\n return <Dialog\n open={!0}\n onClose={() => this.props.onClose(null)}\n aria-labelledby=\"form-dialog-title\"\n fullWidth={this.props.fullWidth !== undefined ? this.props.fullWidth : false}\n >\n <DialogTitle id=\"form-dialog-title\">{this.props.titleText}</DialogTitle>\n <DialogContent>\n <DialogContentText>\n {this.props.promptText}\n </DialogContentText>\n <TextField\n variant=\"standard\"\n autoFocus\n margin=\"dense\"\n error={!!this.state.error}\n title={this.state.error}\n value={this.state.text}\n label={this.props.labelText || ''}\n type={this.props.type || 'text'}\n onKeyPress={e => e.charCode === 13 && this.state.text && this.props.onClose(this.state.text)}\n onChange={e => {\n let error = '';\n if (this.props.verify) {\n error = !this.props.verify(e.target.value);\n }\n\n if (this.props.rule) {\n this.setState({ text: this.props.rule(e.target.value), error });\n } else {\n this.setState({ text: e.target.value, error });\n }\n }}\n fullWidth\n />\n </DialogContent>\n <DialogActions>\n <Button\n variant=\"contained\"\n disabled={!this.state.text || this.state.error}\n onClick={() => this.props.onClose(this.state.text)}\n color=\"primary\"\n startIcon={<IconCheck />}\n >\n {this.props.applyText || I18n.t('ra_Ok')}\n </Button>\n <Button\n color=\"grey\"\n variant=\"contained\"\n onClick={() => this.props.onClose(null)}\n startIcon={<IconClose />}\n >\n {this.props.cancelText || I18n.t('ra_Cancel')}\n </Button>\n </DialogActions>\n </Dialog>;\n }\n}\n\nTextInput.propTypes = {\n fullWidth: PropTypes.bool,\n onClose: PropTypes.func.isRequired,\n titleText: PropTypes.string.isRequired,\n promptText: PropTypes.string,\n labelText: PropTypes.string,\n cancelText: PropTypes.string,\n applyText: PropTypes.string,\n verify: PropTypes.func,\n replace: PropTypes.func,\n type: PropTypes.string, // text, number, password, email\n value: PropTypes.string,\n};\n\n/** @type {typeof TextInput} */\nconst _export = withWidth()(TextInput);\nexport default _export;"],"mappings":"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"}
1
+ {"version":3,"file":"TextInput.js","names":["_react","_interopRequireDefault","require","_propTypes","_Button","_TextField","_Dialog","_DialogActions","_DialogContent","_DialogContentText","_DialogTitle","_i18n","_Close","_Check","_withWidth","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","result","NewTarget","constructor","Reflect","construct","arguments","apply","_possibleConstructorReturn2","sham","Proxy","Boolean","prototype","valueOf","call","e","TextInput","_React$Component","_inherits2","_super","props","_this","_classCallCheck2","state","text","input","value","error","_createClass2","key","render","_this2","createElement","open","onClose","fullWidth","undefined","id","titleText","promptText","variant","autoFocus","margin","title","label","labelText","type","onKeyPress","charCode","onChange","verify","target","rule","setState","disabled","onClick","color","startIcon","applyText","I18n","t","cancelText","React","Component","propTypes","PropTypes","bool","func","isRequired","string","replace","_export","withWidth","_default","exports"],"sources":["TextInput.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport Button from '@mui/material/Button';\nimport TextField from '@mui/material/TextField';\nimport Dialog from '@mui/material/Dialog';\nimport DialogActions from '@mui/material/DialogActions';\nimport DialogContent from '@mui/material/DialogContent';\nimport DialogContentText from '@mui/material/DialogContentText';\nimport DialogTitle from '@mui/material/DialogTitle';\n\nimport I18n from '../i18n';\n\nimport IconClose from '@mui/icons-material/Close';\nimport IconCheck from '@mui/icons-material/Check';\n\nimport withWidth from '../Components/withWidth';\n\n/**\n * @typedef {object} TextInputProps\n * @property {(text: string | null) => void} onClose The dialog close callback.\n * @property {string} titleText The title text.\n * @property {string} [promptText] Prompt text (default: empty).\n * @property {string} [labelText] Label text (default: empty).\n * @property {string} cancelText The text of the cancel button.\n * @property {string} applyText The text of the apply button.\n * @property {(text: string) => string} [verify] The verification callback. Return a non-empty string if there was an error.\n * @property {(text: string) => string} [rule] The text replacement callback.\n * @property {'text' | 'number' | 'password' | 'email'} [type] The type of the textbox (default: text).\n * @property {string} [input] The input when opening the dialog.\n *\n * @extends {React.Component<TextInputProps>}\n */\nclass TextInput extends React.Component {\n /**\n * @param {Readonly<TextInputProps>} props\n */\n constructor(props) {\n super(props);\n\n this.state = {\n text: this.props.input || this.props.value || '', // input is deprecated\n error: ''\n }\n }\n render() {\n return <Dialog\n open={!0}\n onClose={() => this.props.onClose(null)}\n aria-labelledby=\"form-dialog-title\"\n fullWidth={this.props.fullWidth !== undefined ? this.props.fullWidth : false}\n >\n <DialogTitle id=\"form-dialog-title\">{this.props.titleText}</DialogTitle>\n <DialogContent>\n <DialogContentText>\n {this.props.promptText}\n </DialogContentText>\n <TextField\n variant=\"standard\"\n autoFocus\n margin=\"dense\"\n error={!!this.state.error}\n title={this.state.error}\n value={this.state.text}\n label={this.props.labelText || ''}\n type={this.props.type || 'text'}\n onKeyPress={e => e.charCode === 13 && this.state.text && this.props.onClose(this.state.text)}\n onChange={e => {\n let error = '';\n if (this.props.verify) {\n error = !this.props.verify(e.target.value);\n }\n\n if (this.props.rule) {\n this.setState({ text: this.props.rule(e.target.value), error });\n } else {\n this.setState({ text: e.target.value, error });\n }\n }}\n fullWidth\n />\n </DialogContent>\n <DialogActions>\n <Button\n variant=\"contained\"\n disabled={!this.state.text || this.state.error}\n onClick={() => this.props.onClose(this.state.text)}\n color=\"primary\"\n startIcon={<IconCheck />}\n >\n {this.props.applyText || I18n.t('ra_Ok')}\n </Button>\n <Button\n color=\"grey\"\n variant=\"contained\"\n onClick={() => this.props.onClose(null)}\n startIcon={<IconClose />}\n >\n {this.props.cancelText || I18n.t('ra_Cancel')}\n </Button>\n </DialogActions>\n </Dialog>;\n }\n}\n\nTextInput.propTypes = {\n fullWidth: PropTypes.bool,\n onClose: PropTypes.func.isRequired,\n titleText: PropTypes.string.isRequired,\n promptText: PropTypes.string,\n labelText: PropTypes.string,\n cancelText: PropTypes.string,\n applyText: PropTypes.string,\n verify: PropTypes.func,\n replace: PropTypes.func,\n type: PropTypes.string, // text, number, password, email\n value: PropTypes.string,\n};\n\n/** @type {typeof TextInput} */\nconst _export = withWidth()(TextInput);\nexport default _export;"],"mappings":"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"}
package/GenericApp.d.ts CHANGED
@@ -39,16 +39,22 @@ declare class GenericApp extends Router<import("./types").GenericAppProps, impor
39
39
  bottomButtons: boolean;
40
40
  width: import("./types").Width;
41
41
  confirmClose: boolean;
42
+ _alert: boolean;
43
+ _alertType: string;
44
+ _alertMessage: string;
42
45
  };
43
46
  savedNative: {};
44
47
  encryptedFields: string[];
45
48
  sentryDSN: any;
49
+ alerDialogRendered: boolean;
46
50
  socket: any;
47
51
  _secret: any;
48
52
  _systemConfig: any;
49
53
  sentryStarted: boolean;
50
54
  sentryInited: boolean;
51
55
  common: any;
56
+ showAlert(message: any, type: any): void;
57
+ renderAlertSnackbar(): JSX.Element;
52
58
  onSystemConfigChanged: (id: any, obj: any) => void;
53
59
  onReceiveMessage: (message: any) => void;
54
60
  /**
@@ -194,6 +200,11 @@ declare class GenericApp extends Router<import("./types").GenericAppProps, impor
194
200
  * @param {string} toast
195
201
  */
196
202
  showToast(toast: string): void;
203
+ /**
204
+ * Renders helper dialogs
205
+ * @returns {JSX.Element} The JSX element.
206
+ */
207
+ renderHelperDialogs(): JSX.Element;
197
208
  /**
198
209
  * Renders this component.
199
210
  * @returns {JSX.Element} The JSX element.
package/GenericApp.js CHANGED
@@ -124,6 +124,9 @@ var GenericApp = /*#__PURE__*/function (_Router) {
124
124
  }
125
125
  }
126
126
  });
127
+ /**
128
+ * @private
129
+ */
127
130
  (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onResize", function () {
128
131
  _this.resizeTimer && clearTimeout(_this.resizeTimer);
129
132
  _this.resizeTimer = setTimeout(function () {
@@ -175,7 +178,10 @@ var GenericApp = /*#__PURE__*/function (_Router) {
175
178
  themeType: _this.getThemeType(themeInstance),
176
179
  bottomButtons: (settings && settings.bottomButtons) === false ? false : (props && props.bottomButtons) === false ? false : true,
177
180
  width: GenericApp.getWidth(),
178
- confirmClose: false
181
+ confirmClose: false,
182
+ _alert: false,
183
+ _alertType: 'info',
184
+ _alertMessage: ''
179
185
  };
180
186
 
181
187
  // init translations
@@ -215,6 +221,21 @@ var GenericApp = /*#__PURE__*/function (_Router) {
215
221
  window.socketUrl = "".concat(window.location.protocol, "//").concat(window.socketUrl);
216
222
  }
217
223
  }
224
+ _this.alerDialogRendered = false;
225
+ window.oldAlert = window.alert;
226
+ window.alert = function (message) {
227
+ if (!_this.alerDialogRendered) {
228
+ window.oldAlert(message);
229
+ return;
230
+ }
231
+ if (message && message.toString().toLowerCase().includes('error')) {
232
+ console.error(message);
233
+ _this.showAlert(message.toString(), 'error');
234
+ } else {
235
+ console.log(message);
236
+ _this.showAlert(message.toString(), 'info');
237
+ }
238
+ };
218
239
  _this.socket = new ConnectionClass(_objectSpread(_objectSpread({}, (props === null || props === void 0 ? void 0 : props.socket) || (settings === null || settings === void 0 ? void 0 : settings.socket)), {}, {
219
240
  name: _this.adapterName,
220
241
  doNotLoadAllObjects: settings === null || settings === void 0 ? void 0 : settings.doNotLoadAllObjects,
@@ -233,7 +254,8 @@ var GenericApp = /*#__PURE__*/function (_Router) {
233
254
  });
234
255
  }
235
256
  },
236
- onReady: function onReady(objects, scripts) {
257
+ onReady: function onReady( /* objects, scripts */
258
+ ) {
237
259
  _i18n["default"].setLanguage(_this.socket.systemLang);
238
260
 
239
261
  // subscribe because of language and expert mode
@@ -295,6 +317,8 @@ var GenericApp = /*#__PURE__*/function (_Router) {
295
317
  });
296
318
  }
297
319
  });
320
+ })["catch"](function (e) {
321
+ return window.alert("Cannot settings: ".concat(e));
298
322
  });
299
323
  },
300
324
  onError: function onError(err) {
@@ -305,6 +329,39 @@ var GenericApp = /*#__PURE__*/function (_Router) {
305
329
  return _this;
306
330
  }
307
331
  (0, _createClass2["default"])(GenericApp, [{
332
+ key: "showAlert",
333
+ value: function showAlert(message, type) {
334
+ if (type !== 'error' && type !== 'warning' && type !== 'info' && type !== 'success') {
335
+ type = 'info';
336
+ }
337
+ this.setState({
338
+ _alert: true,
339
+ _alertType: type,
340
+ _alertMessage: message
341
+ });
342
+ }
343
+ }, {
344
+ key: "renderAlertSnackbar",
345
+ value: function renderAlertSnackbar() {
346
+ var _this2 = this;
347
+ this.alerDialogRendered = true;
348
+ return /*#__PURE__*/_react["default"].createElement(_Snackbar["default"], {
349
+ style: this.state._alertType === 'error' ? {
350
+ backgroundColor: '#f44336'
351
+ } : this.state._alertType === 'success' ? {
352
+ backgroundColor: '#4caf50'
353
+ } : undefined,
354
+ open: this.state._alert,
355
+ autoHideDuration: 6000,
356
+ onClose: function onClose(reason) {
357
+ return reason !== 'clickaway' && _this2.setState({
358
+ _alert: false
359
+ });
360
+ },
361
+ message: this.state.alertMessage
362
+ });
363
+ }
364
+ }, {
308
365
  key: "componentDidMount",
309
366
  value:
310
367
  /**
@@ -367,7 +424,7 @@ var GenericApp = /*#__PURE__*/function (_Router) {
367
424
  }, {
368
425
  key: "toggleTheme",
369
426
  value: function toggleTheme() {
370
- var _this2 = this;
427
+ var _this3 = this;
371
428
  var themeName = this.state.themeName;
372
429
 
373
430
  // dark => blue => colored => light => dark
@@ -379,8 +436,8 @@ var GenericApp = /*#__PURE__*/function (_Router) {
379
436
  themeName: this.getThemeName(theme),
380
437
  themeType: this.getThemeType(theme)
381
438
  }, function () {
382
- _this2.props.onThemeChange && _this2.props.onThemeChange(newThemeName);
383
- _this2.onThemeChanged && _this2.onThemeChanged(newThemeName);
439
+ _this3.props.onThemeChange && _this3.props.onThemeChange(newThemeName);
440
+ _this3.onThemeChanged && _this3.onThemeChanged(newThemeName);
384
441
  });
385
442
  }
386
443
 
@@ -478,11 +535,11 @@ var GenericApp = /*#__PURE__*/function (_Router) {
478
535
  }, {
479
536
  key: "onPrepareSave",
480
537
  value: function onPrepareSave(settings) {
481
- var _this3 = this;
538
+ var _this4 = this;
482
539
  // here you can encode values
483
540
  this.encryptedFields && this.encryptedFields.forEach(function (attr) {
484
541
  if (settings[attr]) {
485
- settings[attr] = _this3.encrypt(settings[attr]);
542
+ settings[attr] = _this4.encrypt(settings[attr]);
486
543
  }
487
544
  });
488
545
  return true;
@@ -497,18 +554,18 @@ var GenericApp = /*#__PURE__*/function (_Router) {
497
554
  }, {
498
555
  key: "onPrepareLoad",
499
556
  value: function onPrepareLoad(settings, encryptedNative) {
500
- var _this4 = this;
557
+ var _this5 = this;
501
558
  // here you can encode values
502
559
  this.encryptedFields && this.encryptedFields.forEach(function (attr) {
503
560
  if (settings[attr]) {
504
- settings[attr] = _this4.decrypt(settings[attr]);
561
+ settings[attr] = _this5.decrypt(settings[attr]);
505
562
  }
506
563
  });
507
564
  encryptedNative && encryptedNative.forEach(function (attr) {
508
- _this4.encryptedFields = _this4.encryptedFields || [];
509
- !_this4.encryptedFields.includes(attr) && _this4.encryptedFields.push(attr);
565
+ _this5.encryptedFields = _this5.encryptedFields || [];
566
+ !_this5.encryptedFields.includes(attr) && _this5.encryptedFields.push(attr);
510
567
  if (settings[attr]) {
511
- settings[attr] = _this4.decrypt(settings[attr]);
568
+ settings[attr] = _this5.decrypt(settings[attr]);
512
569
  }
513
570
  });
514
571
  }
@@ -520,9 +577,9 @@ var GenericApp = /*#__PURE__*/function (_Router) {
520
577
  }, {
521
578
  key: "getExtendableInstances",
522
579
  value: function getExtendableInstances() {
523
- var _this5 = this;
580
+ var _this6 = this;
524
581
  return new Promise(function (resolve) {
525
- _this5.socket._socket.emit('getObjectView', 'system', 'instance', null, function (err, doc) {
582
+ _this6.socket._socket.emit('getObjectView', 'system', 'instance', null, function (err, doc) {
526
583
  if (err) {
527
584
  resolve([]);
528
585
  } else {
@@ -543,9 +600,9 @@ var GenericApp = /*#__PURE__*/function (_Router) {
543
600
  }, {
544
601
  key: "getIpAddresses",
545
602
  value: function getIpAddresses(host) {
546
- var _this6 = this;
603
+ var _this7 = this;
547
604
  return new Promise(function (resolve, reject) {
548
- _this6.socket._socket.emit('getHostByIp', host || _this6.common.host, function (ip, _host) {
605
+ _this7.socket._socket.emit('getHostByIp', host || _this7.common.host, function (ip, _host) {
549
606
  var IPs4 = [{
550
607
  name: "[IPv4] 0.0.0.0 - ".concat(_i18n["default"].t('ra_Listen on all IPs')),
551
608
  address: '0.0.0.0',
@@ -593,7 +650,7 @@ var GenericApp = /*#__PURE__*/function (_Router) {
593
650
  }, {
594
651
  key: "onSave",
595
652
  value: function onSave(isClose) {
596
- var _this7 = this;
653
+ var _this8 = this;
597
654
  var oldObj;
598
655
  if (this.state.isConfigurationError) {
599
656
  this.setState({
@@ -603,42 +660,42 @@ var GenericApp = /*#__PURE__*/function (_Router) {
603
660
  }
604
661
  this.socket.getObject(this.instanceId).then(function (_oldObj) {
605
662
  oldObj = _oldObj || {};
606
- for (var a in _this7.state["native"]) {
607
- if (_this7.state["native"].hasOwnProperty(a)) {
608
- if (_this7.state["native"][a] === null) {
663
+ for (var a in _this8.state["native"]) {
664
+ if (_this8.state["native"].hasOwnProperty(a)) {
665
+ if (_this8.state["native"][a] === null) {
609
666
  oldObj["native"][a] = null;
610
- } else if (_this7.state["native"][a] !== undefined) {
611
- oldObj["native"][a] = JSON.parse(JSON.stringify(_this7.state["native"][a]));
667
+ } else if (_this8.state["native"][a] !== undefined) {
668
+ oldObj["native"][a] = JSON.parse(JSON.stringify(_this8.state["native"][a]));
612
669
  } else {
613
670
  delete oldObj["native"][a];
614
671
  }
615
672
  }
616
673
  }
617
- if (_this7.state.common) {
618
- for (var b in _this7.state.common) {
619
- if (_this7.state.common[b] === null) {
674
+ if (_this8.state.common) {
675
+ for (var b in _this8.state.common) {
676
+ if (_this8.state.common[b] === null) {
620
677
  oldObj.common[b] = null;
621
- } else if (_this7.state.common[b] !== undefined) {
622
- oldObj.common[b] = JSON.parse(JSON.stringify(_this7.state.common[b]));
678
+ } else if (_this8.state.common[b] !== undefined) {
679
+ oldObj.common[b] = JSON.parse(JSON.stringify(_this8.state.common[b]));
623
680
  } else {
624
681
  delete oldObj.common[b];
625
682
  }
626
683
  }
627
684
  }
628
- if (_this7.onPrepareSave(oldObj["native"]) !== false) {
629
- return _this7.socket.setObject(_this7.instanceId, oldObj);
685
+ if (_this8.onPrepareSave(oldObj["native"]) !== false) {
686
+ return _this8.socket.setObject(_this8.instanceId, oldObj);
630
687
  } else {
631
688
  return Promise.reject('Invalid configuration');
632
689
  }
633
690
  }).then(function () {
634
- _this7.savedNative = oldObj["native"];
691
+ _this8.savedNative = oldObj["native"];
635
692
  globalThis.changed = false;
636
693
  try {
637
694
  window.parent.postMessage('nochange', '*');
638
695
  } catch (e) {
639
696
  // ignore
640
697
  }
641
- _this7.setState({
698
+ _this8.setState({
642
699
  changed: false
643
700
  });
644
701
  isClose && GenericApp.onClose();
@@ -654,7 +711,7 @@ var GenericApp = /*#__PURE__*/function (_Router) {
654
711
  }, {
655
712
  key: "renderToast",
656
713
  value: function renderToast() {
657
- var _this8 = this;
714
+ var _this9 = this;
658
715
  if (!this.state.toast) {
659
716
  return null;
660
717
  }
@@ -666,7 +723,7 @@ var GenericApp = /*#__PURE__*/function (_Router) {
666
723
  open: !0,
667
724
  autoHideDuration: 6000,
668
725
  onClose: function onClose() {
669
- return _this8.setState({
726
+ return _this9.setState({
670
727
  toast: ''
671
728
  });
672
729
  },
@@ -682,7 +739,7 @@ var GenericApp = /*#__PURE__*/function (_Router) {
682
739
  color: "inherit",
683
740
  className: this.props.classes.close,
684
741
  onClick: function onClick() {
685
- return _this8.setState({
742
+ return _this9.setState({
686
743
  toast: ''
687
744
  });
688
745
  },
@@ -703,14 +760,14 @@ var GenericApp = /*#__PURE__*/function (_Router) {
703
760
  * @returns {JSX.Element | null} The JSX element.
704
761
  */
705
762
  function renderError() {
706
- var _this9 = this;
763
+ var _this10 = this;
707
764
  if (!this.state.errorText) {
708
765
  return null;
709
766
  } else {
710
767
  return /*#__PURE__*/_react["default"].createElement(_Error["default"], {
711
768
  text: this.state.errorText,
712
769
  onClose: function onClose() {
713
- return _this9.setState({
770
+ return _this10.setState({
714
771
  errorText: ''
715
772
  });
716
773
  }
@@ -767,7 +824,7 @@ var GenericApp = /*#__PURE__*/function (_Router) {
767
824
  }, {
768
825
  key: "renderSaveCloseButtons",
769
826
  value: function renderSaveCloseButtons() {
770
- var _this10 = this;
827
+ var _this11 = this;
771
828
  if (!this.state.confirmClose && !this.state.bottomButtons) {
772
829
  return null;
773
830
  }
@@ -777,11 +834,11 @@ var GenericApp = /*#__PURE__*/function (_Router) {
777
834
  noTextOnButtons: this.state.width === 'xs' || this.state.width === 'sm' || this.state.width === 'md',
778
835
  changed: this.state.changed,
779
836
  onSave: function onSave(isClose) {
780
- return _this10.onSave(isClose);
837
+ return _this11.onSave(isClose);
781
838
  },
782
839
  onClose: function onClose() {
783
- if (_this10.state.changed) {
784
- _this10.setState({
840
+ if (_this11.state.changed) {
841
+ _this11.setState({
785
842
  confirmClose: true
786
843
  });
787
844
  } else {
@@ -794,7 +851,7 @@ var GenericApp = /*#__PURE__*/function (_Router) {
794
851
  ok: _i18n["default"].t('ra_Discard'),
795
852
  cancel: _i18n["default"].t('ra_Cancel'),
796
853
  onClose: function onClose(isYes) {
797
- return _this10.setState({
854
+ return _this11.setState({
798
855
  confirmClose: false
799
856
  }, function () {
800
857
  return isYes && GenericApp.onClose();
@@ -888,6 +945,16 @@ var GenericApp = /*#__PURE__*/function (_Router) {
888
945
  });
889
946
  }
890
947
 
948
+ /**
949
+ * Renders helper dialogs
950
+ * @returns {JSX.Element} The JSX element.
951
+ */
952
+ }, {
953
+ key: "renderHelperDialogs",
954
+ value: function renderHelperDialogs() {
955
+ return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, this.renderError(), this.renderToast(), this.renderSaveCloseButtons(), this.renderAlertSnackbar());
956
+ }
957
+
891
958
  /**
892
959
  * Renders this component.
893
960
  * @returns {JSX.Element} The JSX element.
@@ -902,7 +969,7 @@ var GenericApp = /*#__PURE__*/function (_Router) {
902
969
  }
903
970
  return /*#__PURE__*/_react["default"].createElement("div", {
904
971
  className: "App"
905
- }, this.renderError(), this.renderToast(), this.renderSaveCloseButtons());
972
+ }, this.renderError(), this.renderToast(), this.renderSaveCloseButtons(), this.renderAlertSnackbar());
906
973
  }
907
974
  }], [{
908
975
  key: "getWidth",