@iobroker/adapter-react-v5 2.1.9 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (138) hide show
  1. package/Components/404.js.map +1 -1
  2. package/Components/ColorPicker.js.map +1 -1
  3. package/Components/ComplexCron.js.map +1 -1
  4. package/Components/FileBrowser.js +248 -222
  5. package/Components/FileBrowser.js.map +1 -1
  6. package/Components/FileViewer.js +219 -75
  7. package/Components/FileViewer.js.map +1 -1
  8. package/Components/Icon.js.map +1 -1
  9. package/Components/IconPicker.js.map +1 -1
  10. package/Components/IconSelector.js.map +1 -1
  11. package/Components/Image.js.map +1 -1
  12. package/Components/JsonConfigComponent/ChipInput.js +925 -0
  13. package/Components/JsonConfigComponent/ChipInput.js.map +1 -0
  14. package/Components/JsonConfigComponent/ConfigAlive.js +135 -0
  15. package/Components/JsonConfigComponent/ConfigAlive.js.map +1 -0
  16. package/Components/JsonConfigComponent/ConfigAutocomplete.js +204 -0
  17. package/Components/JsonConfigComponent/ConfigAutocomplete.js.map +1 -0
  18. package/Components/JsonConfigComponent/ConfigAutocompleteSendTo.js +311 -0
  19. package/Components/JsonConfigComponent/ConfigAutocompleteSendTo.js.map +1 -0
  20. package/Components/JsonConfigComponent/ConfigCRON.js +195 -0
  21. package/Components/JsonConfigComponent/ConfigCRON.js.map +1 -0
  22. package/Components/JsonConfigComponent/ConfigCertificateSelect.js +178 -0
  23. package/Components/JsonConfigComponent/ConfigCertificateSelect.js.map +1 -0
  24. package/Components/JsonConfigComponent/ConfigCheckbox.js +112 -0
  25. package/Components/JsonConfigComponent/ConfigCheckbox.js.map +1 -0
  26. package/Components/JsonConfigComponent/ConfigChip.js +149 -0
  27. package/Components/JsonConfigComponent/ConfigChip.js.map +1 -0
  28. package/Components/JsonConfigComponent/ConfigColor.js +156 -0
  29. package/Components/JsonConfigComponent/ConfigColor.js.map +1 -0
  30. package/Components/JsonConfigComponent/ConfigCoordinates.js +165 -0
  31. package/Components/JsonConfigComponent/ConfigCoordinates.js.map +1 -0
  32. package/Components/JsonConfigComponent/ConfigCustomEasyAccess.js +180 -0
  33. package/Components/JsonConfigComponent/ConfigCustomEasyAccess.js.map +1 -0
  34. package/Components/JsonConfigComponent/ConfigDatePicker.js +117 -0
  35. package/Components/JsonConfigComponent/ConfigDatePicker.js.map +1 -0
  36. package/Components/JsonConfigComponent/ConfigGeneric.js +660 -0
  37. package/Components/JsonConfigComponent/ConfigGeneric.js.map +1 -0
  38. package/Components/JsonConfigComponent/ConfigIP.js +151 -0
  39. package/Components/JsonConfigComponent/ConfigIP.js.map +1 -0
  40. package/Components/JsonConfigComponent/ConfigImageUpload.js +215 -0
  41. package/Components/JsonConfigComponent/ConfigImageUpload.js.map +1 -0
  42. package/Components/JsonConfigComponent/ConfigInstanceSelect.js +197 -0
  43. package/Components/JsonConfigComponent/ConfigInstanceSelect.js.map +1 -0
  44. package/Components/JsonConfigComponent/ConfigJsonEditor.js +211 -0
  45. package/Components/JsonConfigComponent/ConfigJsonEditor.js.map +1 -0
  46. package/Components/JsonConfigComponent/ConfigLanguage.js +175 -0
  47. package/Components/JsonConfigComponent/ConfigLanguage.js.map +1 -0
  48. package/Components/JsonConfigComponent/ConfigNumber.js +194 -0
  49. package/Components/JsonConfigComponent/ConfigNumber.js.map +1 -0
  50. package/Components/JsonConfigComponent/ConfigObjectId.js +201 -0
  51. package/Components/JsonConfigComponent/ConfigObjectId.js.map +1 -0
  52. package/Components/JsonConfigComponent/ConfigPanel.js +421 -0
  53. package/Components/JsonConfigComponent/ConfigPanel.js.map +1 -0
  54. package/Components/JsonConfigComponent/ConfigPassword.js +236 -0
  55. package/Components/JsonConfigComponent/ConfigPassword.js.map +1 -0
  56. package/Components/JsonConfigComponent/ConfigPattern.js +94 -0
  57. package/Components/JsonConfigComponent/ConfigPattern.js.map +1 -0
  58. package/Components/JsonConfigComponent/ConfigSelect.js +163 -0
  59. package/Components/JsonConfigComponent/ConfigSelect.js.map +1 -0
  60. package/Components/JsonConfigComponent/ConfigSelectSendTo.js +258 -0
  61. package/Components/JsonConfigComponent/ConfigSelectSendTo.js.map +1 -0
  62. package/Components/JsonConfigComponent/ConfigSendto.js +282 -0
  63. package/Components/JsonConfigComponent/ConfigSendto.js.map +1 -0
  64. package/Components/JsonConfigComponent/ConfigSetState.js +266 -0
  65. package/Components/JsonConfigComponent/ConfigSetState.js.map +1 -0
  66. package/Components/JsonConfigComponent/ConfigStaticDivider.js +88 -0
  67. package/Components/JsonConfigComponent/ConfigStaticDivider.js.map +1 -0
  68. package/Components/JsonConfigComponent/ConfigStaticHeader.js +81 -0
  69. package/Components/JsonConfigComponent/ConfigStaticHeader.js.map +1 -0
  70. package/Components/JsonConfigComponent/ConfigStaticImage.js +88 -0
  71. package/Components/JsonConfigComponent/ConfigStaticImage.js.map +1 -0
  72. package/Components/JsonConfigComponent/ConfigStaticText.js +104 -0
  73. package/Components/JsonConfigComponent/ConfigStaticText.js.map +1 -0
  74. package/Components/JsonConfigComponent/ConfigTable.js +651 -0
  75. package/Components/JsonConfigComponent/ConfigTable.js.map +1 -0
  76. package/Components/JsonConfigComponent/ConfigTabs.js +166 -0
  77. package/Components/JsonConfigComponent/ConfigTabs.js.map +1 -0
  78. package/Components/JsonConfigComponent/ConfigText.js +170 -0
  79. package/Components/JsonConfigComponent/ConfigText.js.map +1 -0
  80. package/Components/JsonConfigComponent/ConfigTextSendTo.js +168 -0
  81. package/Components/JsonConfigComponent/ConfigTextSendTo.js.map +1 -0
  82. package/Components/JsonConfigComponent/ConfigTimePicker.js +111 -0
  83. package/Components/JsonConfigComponent/ConfigTimePicker.js.map +1 -0
  84. package/Components/JsonConfigComponent/ConfigTopic.js +140 -0
  85. package/Components/JsonConfigComponent/ConfigTopic.js.map +1 -0
  86. package/Components/JsonConfigComponent/ConfigUser.js +176 -0
  87. package/Components/JsonConfigComponent/ConfigUser.js.map +1 -0
  88. package/Components/JsonConfigComponent/index.js +511 -0
  89. package/Components/JsonConfigComponent/index.js.map +1 -0
  90. package/Components/Loader.js.map +1 -1
  91. package/Components/Loaders/PT.js.map +1 -1
  92. package/Components/Loaders/Vendor.js.map +1 -1
  93. package/Components/Logo.js.map +1 -1
  94. package/Components/MDUtils.js.map +1 -1
  95. package/Components/ObjectBrowser.js +24 -42
  96. package/Components/ObjectBrowser.js.map +1 -1
  97. package/Components/Router.js.map +1 -1
  98. package/Components/SaveCloseButtons.js.map +1 -1
  99. package/Components/Schedule.js.map +1 -1
  100. package/Components/SelectWithIcon.js.map +1 -1
  101. package/Components/SimpleCron/cronText.js.map +1 -1
  102. package/Components/SimpleCron/index.js.map +1 -1
  103. package/Components/TabContainer.js.map +1 -1
  104. package/Components/TabContent.js.map +1 -1
  105. package/Components/TabHeader.js.map +1 -1
  106. package/Components/TextWithIcon.js.map +1 -1
  107. package/Components/TreeTable.js.map +1 -1
  108. package/Components/Utils.js +25 -0
  109. package/Components/Utils.js.map +1 -1
  110. package/Components/withWidth.js +42 -0
  111. package/Components/withWidth.js.map +1 -0
  112. package/Connection.js.map +1 -1
  113. package/Dialogs/ComplexCron.js.map +1 -1
  114. package/Dialogs/Confirm.js.map +1 -1
  115. package/Dialogs/Cron.js.map +1 -1
  116. package/Dialogs/Error.js.map +1 -1
  117. package/Dialogs/Message.js.map +1 -1
  118. package/Dialogs/SelectID.js.map +1 -1
  119. package/Dialogs/SimpleCron.js.map +1 -1
  120. package/Dialogs/TextInput.js.map +1 -1
  121. package/GenericApp.js.map +1 -1
  122. package/README.md +11 -1
  123. package/Theme.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/IconExpert.js.map +1 -1
  133. package/icons/IconFx.js.map +1 -1
  134. package/icons/IconInstance.js.map +1 -1
  135. package/icons/IconLogout.js.map +1 -1
  136. package/icons/IconOpen.js.map +1 -1
  137. package/icons/IconState.js.map +1 -1
  138. package/package.json +5 -5
@@ -1 +1 @@
1
- {"version":3,"file":"Logo.js","names":["styles","theme","buttons","marginRight","marginTop","logo","padding","width","Logo","evt","f","target","files","r","window","FileReader","onload","e","contents","result","json","JSON","parse","common","name","props","onError","I18n","t","onLoad","toString","readAsText","alert","_id","instance","stringify","news","titleLang","desc","generateFile","input","document","createElement","setAttribute","addEventListener","handleFileSelect","click","className","style","icon","classes","readme","win","open","focus","upload","download","filename","obj","el","encodeURIComponent","display","body","appendChild","removeChild","React","Component","propTypes","PropTypes","object","isRequired","string","number","func","_export"],"sources":["Logo.js"],"sourcesContent":["// please do not delete React, as without it other projects could not be compiled: ReferenceError: React is not defined\nimport React from 'react';\nimport withStyles from '@mui/styles/withStyles';\nimport Fab from '@mui/material/Fab';\nimport PropTypes from 'prop-types';\n\nimport I18n from '../i18n';\n\nimport IconHelp from '@mui/icons-material/Help'\nimport IconUpload from '@mui/icons-material/VerticalAlignTop'\nimport IconDownload from '@mui/icons-material/VerticalAlignBottom'\n\nconst styles = theme => ({\n buttons: {\n marginRight: 5,\n marginTop: 5,\n float: 'right'\n },\n logo: {\n padding: 8,\n width: 64\n }\n});\n\n/**\n * @typedef {object} LogoProps\n * @property {any} common Adapter common configuration from io-package.json\n * @property {any} native Adapter native data from io-package.json\n * @property {number} instance Adapter instance number.\n * @property {(contents: any) => void} [onLoad]\n * @property {(error: string) => void} [onError]\n * @property {{ buttons: string, logo: string }} classes The styling class names.\n *\n * @extends {React.Component<LogoProps>}\n */\nclass Logo extends React.Component {\n\n static generateFile(filename, obj) {\n const el = window.document.createElement('a');\n el.setAttribute('href', 'data:application/json;charset=utf-8,' + encodeURIComponent(JSON.stringify(obj, null, 2)));\n el.setAttribute('download', filename);\n\n el.style.display = 'none';\n window.document.body.appendChild(el);\n\n el.click();\n\n window.document.body.removeChild(el);\n }\n\n handleFileSelect(evt) {\n const f = evt.target.files[0];\n if (f) {\n const r = new window.FileReader();\n r.onload = e => {\n const contents = e.target.result;\n try {\n const json = JSON.parse(contents);\n if (json.native && json.common) {\n if (json.common.name !== this.props.common.name) {\n this.props.onError && this.props.onError(I18n.t('ra_otherConfig', json.common.name));\n } else {\n this.props.onLoad && this.props.onLoad(json.native);\n }\n } else {\n this.props.onError && this.props.onError(I18n.t('ra_invalidConfig'));\n }\n } catch (e) {\n this.props.onError && this.props.onError(e.toString());\n }\n };\n r.readAsText(f);\n } else {\n alert('Failed to open JSON File');\n }\n }\n\n download() {\n const result = {\n _id: `system.adapter.${this.props.common.name}.${this.props.instance}`,\n common: JSON.parse(JSON.stringify(this.props.common)),\n native: this.props.native\n };\n // remove unimportant information\n if (result.common.news) {\n delete result.common.news;\n }\n if (result.common.titleLang) {\n delete result.common.titleLang;\n }\n if (result.common.desc) {\n delete result.common.desc;\n }\n\n //window.open('data:application/iobroker; content-disposition=attachment; filename=' + result._id + '.json,' + JSON.stringify(result, null, 2));\n Logo.generateFile(result._id + '.json', result);\n }\n\n upload() {\n const input = window.document.createElement('input');\n input.setAttribute('type', 'file');\n input.setAttribute('id', 'files');\n input.setAttribute('opacity', 0);\n input.addEventListener('change', e => this.handleFileSelect(e, () => {}), false);\n (input.click)();\n }\n\n render() {\n return <div className={this.props.className} style={this.props.style}>\n {this.props.common.icon ?\n <img src={this.props.common.icon} className={this.props.classes.logo} alt=\"logo\"/> : null}\n {this.props.common.readme ?\n <Fab\n size=\"small\"\n color=\"primary\"\n aria-label=\"Help\"\n className={this.props.classes.buttons}\n onClick={() => {\n const win = window.open(this.props.common.readme, '_blank');\n win.focus();\n }}\n ><IconHelp /></Fab> : null}\n <Fab size=\"small\" color=\"primary\" aria-label=\"Load config\" className={this.props.classes.buttons}\n title={I18n.t('ra_Load configuration from file')} onClick={() => this.upload()}><IconUpload /></Fab>\n <Fab size=\"small\" color=\"primary\" aria-label=\"Save config\" className={this.props.classes.buttons}\n title={I18n.t('ra_Save configuration to file')} onClick={() => this.download()}><IconDownload/></Fab>\n </div>;\n }\n}\n\nLogo.propTypes = {\n common: PropTypes.object.isRequired,\n className: PropTypes.string,\n style: PropTypes.object,\n native: PropTypes.object.isRequired,\n instance: PropTypes.number.isRequired,\n onError: PropTypes.func.isRequired,\n onLoad: PropTypes.func.isRequired,\n};\n\n/** @type {typeof Logo} */\nconst _export = withStyles(styles)(Logo);\nexport default _export;"],"mappings":"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"}
1
+ {"version":3,"file":"Logo.js","names":["styles","theme","buttons","marginRight","marginTop","logo","padding","width","Logo","evt","f","target","files","r","window","FileReader","onload","e","contents","result","json","JSON","parse","common","name","props","onError","I18n","t","onLoad","toString","readAsText","alert","_id","instance","stringify","news","titleLang","desc","generateFile","input","document","createElement","setAttribute","addEventListener","handleFileSelect","click","className","style","icon","classes","readme","win","open","focus","upload","download","filename","obj","el","encodeURIComponent","display","body","appendChild","removeChild","React","Component","propTypes","PropTypes","object","isRequired","string","number","func","_export","withStyles"],"sources":["Logo.js"],"sourcesContent":["// please do not delete React, as without it other projects could not be compiled: ReferenceError: React is not defined\nimport React from 'react';\nimport withStyles from '@mui/styles/withStyles';\nimport Fab from '@mui/material/Fab';\nimport PropTypes from 'prop-types';\n\nimport I18n from '../i18n';\n\nimport IconHelp from '@mui/icons-material/Help'\nimport IconUpload from '@mui/icons-material/VerticalAlignTop'\nimport IconDownload from '@mui/icons-material/VerticalAlignBottom'\n\nconst styles = theme => ({\n buttons: {\n marginRight: 5,\n marginTop: 5,\n float: 'right'\n },\n logo: {\n padding: 8,\n width: 64\n }\n});\n\n/**\n * @typedef {object} LogoProps\n * @property {any} common Adapter common configuration from io-package.json\n * @property {any} native Adapter native data from io-package.json\n * @property {number} instance Adapter instance number.\n * @property {(contents: any) => void} [onLoad]\n * @property {(error: string) => void} [onError]\n * @property {{ buttons: string, logo: string }} classes The styling class names.\n *\n * @extends {React.Component<LogoProps>}\n */\nclass Logo extends React.Component {\n\n static generateFile(filename, obj) {\n const el = window.document.createElement('a');\n el.setAttribute('href', 'data:application/json;charset=utf-8,' + encodeURIComponent(JSON.stringify(obj, null, 2)));\n el.setAttribute('download', filename);\n\n el.style.display = 'none';\n window.document.body.appendChild(el);\n\n el.click();\n\n window.document.body.removeChild(el);\n }\n\n handleFileSelect(evt) {\n const f = evt.target.files[0];\n if (f) {\n const r = new window.FileReader();\n r.onload = e => {\n const contents = e.target.result;\n try {\n const json = JSON.parse(contents);\n if (json.native && json.common) {\n if (json.common.name !== this.props.common.name) {\n this.props.onError && this.props.onError(I18n.t('ra_otherConfig', json.common.name));\n } else {\n this.props.onLoad && this.props.onLoad(json.native);\n }\n } else {\n this.props.onError && this.props.onError(I18n.t('ra_invalidConfig'));\n }\n } catch (e) {\n this.props.onError && this.props.onError(e.toString());\n }\n };\n r.readAsText(f);\n } else {\n alert('Failed to open JSON File');\n }\n }\n\n download() {\n const result = {\n _id: `system.adapter.${this.props.common.name}.${this.props.instance}`,\n common: JSON.parse(JSON.stringify(this.props.common)),\n native: this.props.native\n };\n // remove unimportant information\n if (result.common.news) {\n delete result.common.news;\n }\n if (result.common.titleLang) {\n delete result.common.titleLang;\n }\n if (result.common.desc) {\n delete result.common.desc;\n }\n\n //window.open('data:application/iobroker; content-disposition=attachment; filename=' + result._id + '.json,' + JSON.stringify(result, null, 2));\n Logo.generateFile(result._id + '.json', result);\n }\n\n upload() {\n const input = window.document.createElement('input');\n input.setAttribute('type', 'file');\n input.setAttribute('id', 'files');\n input.setAttribute('opacity', 0);\n input.addEventListener('change', e => this.handleFileSelect(e, () => {}), false);\n (input.click)();\n }\n\n render() {\n return <div className={this.props.className} style={this.props.style}>\n {this.props.common.icon ?\n <img src={this.props.common.icon} className={this.props.classes.logo} alt=\"logo\"/> : null}\n {this.props.common.readme ?\n <Fab\n size=\"small\"\n color=\"primary\"\n aria-label=\"Help\"\n className={this.props.classes.buttons}\n onClick={() => {\n const win = window.open(this.props.common.readme, '_blank');\n win.focus();\n }}\n ><IconHelp /></Fab> : null}\n <Fab size=\"small\" color=\"primary\" aria-label=\"Load config\" className={this.props.classes.buttons}\n title={I18n.t('ra_Load configuration from file')} onClick={() => this.upload()}><IconUpload /></Fab>\n <Fab size=\"small\" color=\"primary\" aria-label=\"Save config\" className={this.props.classes.buttons}\n title={I18n.t('ra_Save configuration to file')} onClick={() => this.download()}><IconDownload/></Fab>\n </div>;\n }\n}\n\nLogo.propTypes = {\n common: PropTypes.object.isRequired,\n className: PropTypes.string,\n style: PropTypes.object,\n native: PropTypes.object.isRequired,\n instance: PropTypes.number.isRequired,\n onError: PropTypes.func.isRequired,\n onLoad: PropTypes.func.isRequired,\n};\n\n/** @type {typeof Logo} */\nconst _export = withStyles(styles)(Logo);\nexport default _export;"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"MDUtils.js","names":["MDUtils","text","m","match","replace","trim","toLowerCase","url","target","window","location","open","extractHeader","body","header","title","lines","split","i","length","startsWith","substring","attrs","pos","indexOf","_header","forEach","line","attr","parseFloat","toString","doc","e","stopPropagation","preventDefault"],"sources":["MDUtils.js"],"sourcesContent":["/**\n * Copyright 2018-2022 bluefox <dogafox@gmail.com>\n *\n * MIT License\n *\n **/\nimport React from 'react';\nimport copy from './copy-to-clipboard';\n\nclass MDUtils {\n static text2link(text) {\n const m = text.match(/\\d+\\.\\)\\s/);\n if (m) {\n text = text.replace(m[0], m[0].replace(/\\s/, '&nbsp;'));\n }\n\n return text.replace(/[^a-zA-Zа-яА-Я0-9]/g, '').trim().replace(/\\s/g, '').toLowerCase();\n }\n\n static openLink(url, target) {\n if (target === 'this') {\n window.location = url;\n } else {\n window.open(url, target || '_blank');\n }\n }\n\n static getTitle(text) {\n let {body, header} = MDUtils.extractHeader(text);\n if (!header.title) {\n // remove {docsify-bla}\n body = body.replace(/{[^}]*}/g, '');\n body = body.trim();\n const lines = body.replace(/\\r/g, '').split('\\n');\n for (let i = 0; i < lines.length; i++) {\n if (lines[i].startsWith('# ')) {\n return lines[i].substring(2).trim();\n }\n }\n return '';\n } else {\n return header.title;\n }\n }\n\n static extractHeader(text) {\n const attrs = {};\n if (text.substring(0, 3) === '---') {\n const pos = text.substring(3).indexOf('\\n---');\n if (pos !== -1) {\n const _header = text.substring(3, pos + 3);\n const lines = _header.replace(/\\r/g, '').split('\\n');\n lines.forEach(line => {\n if (!line.trim()) {\n return;\n }\n const pos = line.indexOf(':');\n if (pos !== -1) {\n const attr = line.substring(0, pos).trim();\n attrs[attr] = line.substring(pos + 1).trim();\n attrs[attr] = attrs[attr].replace(/^['\"]|['\"]$/g, '');\n if (attrs[attr] === 'true') {\n attrs[attr] = true;\n } else if (attrs[attr] === 'false') {\n attrs[attr] = false;\n } else if (parseFloat(attrs[attr]).toString() === attrs[attr]) {\n attrs[attr] = parseFloat(attrs[attr]);\n }\n } else {\n attrs[line.trim()] = true;\n }\n });\n text = text.substring(pos + 7);\n }\n }\n return {header: attrs, body: text};\n }\n\n static removeDocsify(text) {\n const m = text.match(/{docsify-[^}]*}/g);\n if (m) {\n m.forEach(doc => text = text.replace(doc, ''));\n }\n return text;\n }\n\n static onCopy(e, text) {\n copy(text);\n e && e.stopPropagation();\n e && e.preventDefault();\n }\n}\n\nexport default MDUtils;"],"mappings":";;;;;;;;;;;;;AAMA;;AACA;;AAPA;AACA;AACA;AACA;AACA;AACA;IAIMA,O;;;;;;;WACF,mBAAiBC,IAAjB,EAAuB;MACnB,IAAMC,CAAC,GAAGD,IAAI,CAACE,KAAL,CAAW,WAAX,CAAV;;MACA,IAAID,CAAJ,EAAO;QACHD,IAAI,GAAGA,IAAI,CAACG,OAAL,CAAaF,CAAC,CAAC,CAAD,CAAd,EAAmBA,CAAC,CAAC,CAAD,CAAD,CAAKE,OAAL,CAAa,IAAb,EAAmB,QAAnB,CAAnB,CAAP;MACH;;MAED,OAAOH,IAAI,CAACG,OAAL,CAAa,qBAAb,EAAoC,EAApC,EAAwCC,IAAxC,GAA+CD,OAA/C,CAAuD,KAAvD,EAA8D,EAA9D,EAAkEE,WAAlE,EAAP;IACH;;;WAED,kBAAgBC,GAAhB,EAAqBC,MAArB,EAA6B;MACzB,IAAIA,MAAM,KAAK,MAAf,EAAuB;QACnBC,MAAM,CAACC,QAAP,GAAkBH,GAAlB;MACH,CAFD,MAEO;QACHE,MAAM,CAACE,IAAP,CAAYJ,GAAZ,EAAiBC,MAAM,IAAI,QAA3B;MACH;IACJ;;;WAED,kBAAgBP,IAAhB,EAAsB;MAClB,4BAAqBD,OAAO,CAACY,aAAR,CAAsBX,IAAtB,CAArB;MAAA,IAAKY,IAAL,yBAAKA,IAAL;MAAA,IAAWC,MAAX,yBAAWA,MAAX;;MACA,IAAI,CAACA,MAAM,CAACC,KAAZ,EAAmB;QACf;QACAF,IAAI,GAAGA,IAAI,CAACT,OAAL,CAAa,UAAb,EAAyB,EAAzB,CAAP;QACAS,IAAI,GAAGA,IAAI,CAACR,IAAL,EAAP;QACA,IAAMW,KAAK,GAAGH,IAAI,CAACT,OAAL,CAAa,KAAb,EAAoB,EAApB,EAAwBa,KAAxB,CAA8B,IAA9B,CAAd;;QACA,KAAK,IAAIC,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGF,KAAK,CAACG,MAA1B,EAAkCD,CAAC,EAAnC,EAAuC;UACnC,IAAIF,KAAK,CAACE,CAAD,CAAL,CAASE,UAAT,CAAoB,IAApB,CAAJ,EAA+B;YAC3B,OAAOJ,KAAK,CAACE,CAAD,CAAL,CAASG,SAAT,CAAmB,CAAnB,EAAsBhB,IAAtB,EAAP;UACH;QACJ;;QACD,OAAO,EAAP;MACH,CAXD,MAWO;QACH,OAAOS,MAAM,CAACC,KAAd;MACH;IACJ;;;WAED,uBAAqBd,IAArB,EAA2B;MACvB,IAAMqB,KAAK,GAAG,EAAd;;MACA,IAAIrB,IAAI,CAACoB,SAAL,CAAe,CAAf,EAAkB,CAAlB,MAAyB,KAA7B,EAAoC;QAChC,IAAME,GAAG,GAAGtB,IAAI,CAACoB,SAAL,CAAe,CAAf,EAAkBG,OAAlB,CAA0B,OAA1B,CAAZ;;QACA,IAAID,GAAG,KAAK,CAAC,CAAb,EAAgB;UACZ,IAAME,OAAO,GAAGxB,IAAI,CAACoB,SAAL,CAAe,CAAf,EAAkBE,GAAG,GAAG,CAAxB,CAAhB;;UACA,IAAMP,KAAK,GAAGS,OAAO,CAACrB,OAAR,CAAgB,KAAhB,EAAuB,EAAvB,EAA2Ba,KAA3B,CAAiC,IAAjC,CAAd;;UACAD,KAAK,CAACU,OAAN,CAAc,UAAAC,IAAI,EAAI;YAClB,IAAI,CAACA,IAAI,CAACtB,IAAL,EAAL,EAAkB;cACd;YACH;;YACD,IAAMkB,GAAG,GAAGI,IAAI,CAACH,OAAL,CAAa,GAAb,CAAZ;;YACA,IAAID,GAAG,KAAK,CAAC,CAAb,EAAgB;cACZ,IAAMK,IAAI,GAAGD,IAAI,CAACN,SAAL,CAAe,CAAf,EAAkBE,GAAlB,EAAuBlB,IAAvB,EAAb;cACAiB,KAAK,CAACM,IAAD,CAAL,GAAcD,IAAI,CAACN,SAAL,CAAeE,GAAG,GAAG,CAArB,EAAwBlB,IAAxB,EAAd;cACAiB,KAAK,CAACM,IAAD,CAAL,GAAcN,KAAK,CAACM,IAAD,CAAL,CAAYxB,OAAZ,CAAoB,cAApB,EAAoC,EAApC,CAAd;;cACA,IAAIkB,KAAK,CAACM,IAAD,CAAL,KAAgB,MAApB,EAA4B;gBACxBN,KAAK,CAACM,IAAD,CAAL,GAAc,IAAd;cACH,CAFD,MAEO,IAAIN,KAAK,CAACM,IAAD,CAAL,KAAgB,OAApB,EAA6B;gBAChCN,KAAK,CAACM,IAAD,CAAL,GAAc,KAAd;cACH,CAFM,MAEA,IAAIC,UAAU,CAACP,KAAK,CAACM,IAAD,CAAN,CAAV,CAAwBE,QAAxB,OAAuCR,KAAK,CAACM,IAAD,CAAhD,EAAwD;gBAC3DN,KAAK,CAACM,IAAD,CAAL,GAAcC,UAAU,CAACP,KAAK,CAACM,IAAD,CAAN,CAAxB;cACH;YACJ,CAXD,MAWO;cACHN,KAAK,CAACK,IAAI,CAACtB,IAAL,EAAD,CAAL,GAAqB,IAArB;YACH;UACJ,CAnBD;UAoBAJ,IAAI,GAAGA,IAAI,CAACoB,SAAL,CAAeE,GAAG,GAAG,CAArB,CAAP;QACH;MACJ;;MACD,OAAO;QAACT,MAAM,EAAEQ,KAAT;QAAgBT,IAAI,EAAEZ;MAAtB,CAAP;IACH;;;WAED,uBAAqBA,IAArB,EAA2B;MACvB,IAAMC,CAAC,GAAGD,IAAI,CAACE,KAAL,CAAW,kBAAX,CAAV;;MACA,IAAID,CAAJ,EAAO;QACHA,CAAC,CAACwB,OAAF,CAAU,UAAAK,GAAG;UAAA,OAAI9B,IAAI,GAAGA,IAAI,CAACG,OAAL,CAAa2B,GAAb,EAAkB,EAAlB,CAAX;QAAA,CAAb;MACH;;MACD,OAAO9B,IAAP;IACH;;;WAED,gBAAc+B,CAAd,EAAiB/B,IAAjB,EAAuB;MACnB,iCAAKA,IAAL;MACA+B,CAAC,IAAIA,CAAC,CAACC,eAAF,EAAL;MACAD,CAAC,IAAIA,CAAC,CAACE,cAAF,EAAL;IACH;;;;;eAGUlC,O"}
1
+ {"version":3,"file":"MDUtils.js","names":["MDUtils","text","m","match","replace","trim","toLowerCase","url","target","window","location","open","extractHeader","body","header","title","lines","split","i","length","startsWith","substring","attrs","pos","indexOf","_header","forEach","line","attr","parseFloat","toString","doc","e","copy","stopPropagation","preventDefault"],"sources":["MDUtils.js"],"sourcesContent":["/**\n * Copyright 2018-2022 bluefox <dogafox@gmail.com>\n *\n * MIT License\n *\n **/\nimport React from 'react';\nimport copy from './copy-to-clipboard';\n\nclass MDUtils {\n static text2link(text) {\n const m = text.match(/\\d+\\.\\)\\s/);\n if (m) {\n text = text.replace(m[0], m[0].replace(/\\s/, '&nbsp;'));\n }\n\n return text.replace(/[^a-zA-Zа-яА-Я0-9]/g, '').trim().replace(/\\s/g, '').toLowerCase();\n }\n\n static openLink(url, target) {\n if (target === 'this') {\n window.location = url;\n } else {\n window.open(url, target || '_blank');\n }\n }\n\n static getTitle(text) {\n let {body, header} = MDUtils.extractHeader(text);\n if (!header.title) {\n // remove {docsify-bla}\n body = body.replace(/{[^}]*}/g, '');\n body = body.trim();\n const lines = body.replace(/\\r/g, '').split('\\n');\n for (let i = 0; i < lines.length; i++) {\n if (lines[i].startsWith('# ')) {\n return lines[i].substring(2).trim();\n }\n }\n return '';\n } else {\n return header.title;\n }\n }\n\n static extractHeader(text) {\n const attrs = {};\n if (text.substring(0, 3) === '---') {\n const pos = text.substring(3).indexOf('\\n---');\n if (pos !== -1) {\n const _header = text.substring(3, pos + 3);\n const lines = _header.replace(/\\r/g, '').split('\\n');\n lines.forEach(line => {\n if (!line.trim()) {\n return;\n }\n const pos = line.indexOf(':');\n if (pos !== -1) {\n const attr = line.substring(0, pos).trim();\n attrs[attr] = line.substring(pos + 1).trim();\n attrs[attr] = attrs[attr].replace(/^['\"]|['\"]$/g, '');\n if (attrs[attr] === 'true') {\n attrs[attr] = true;\n } else if (attrs[attr] === 'false') {\n attrs[attr] = false;\n } else if (parseFloat(attrs[attr]).toString() === attrs[attr]) {\n attrs[attr] = parseFloat(attrs[attr]);\n }\n } else {\n attrs[line.trim()] = true;\n }\n });\n text = text.substring(pos + 7);\n }\n }\n return {header: attrs, body: text};\n }\n\n static removeDocsify(text) {\n const m = text.match(/{docsify-[^}]*}/g);\n if (m) {\n m.forEach(doc => text = text.replace(doc, ''));\n }\n return text;\n }\n\n static onCopy(e, text) {\n copy(text);\n e && e.stopPropagation();\n e && e.preventDefault();\n }\n}\n\nexport default MDUtils;"],"mappings":"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"}
@@ -11,6 +11,8 @@ exports["default"] = void 0;
11
11
 
12
12
  var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
13
13
 
14
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
15
+
14
16
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
15
17
 
16
18
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
@@ -29,10 +31,6 @@ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/de
29
31
 
30
32
  var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
31
33
 
32
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
33
-
34
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
35
-
36
34
  var _react = _interopRequireWildcard(require("react"));
37
35
 
38
36
  var _propTypes = _interopRequireDefault(require("prop-types"));
@@ -41,10 +39,6 @@ var _copyToClipboard = _interopRequireDefault(require("./copy-to-clipboard"));
41
39
 
42
40
  var _withStyles = _interopRequireDefault(require("@mui/styles/withStyles"));
43
41
 
44
- var _styles = require("@mui/material/styles");
45
-
46
- var _useMediaQuery = _interopRequireDefault(require("@mui/material/useMediaQuery"));
47
-
48
42
  var _reactInlinesvg = _interopRequireDefault(require("react-inlinesvg"));
49
43
 
50
44
  var _IconButton = _interopRequireDefault(require("@mui/material/IconButton"));
@@ -189,6 +183,8 @@ var _TabContent = _interopRequireDefault(require("./TabContent"));
189
183
 
190
184
  var _TabHeader = _interopRequireDefault(require("./TabHeader"));
191
185
 
186
+ var _withWidth = _interopRequireDefault(require("./withWidth"));
187
+
192
188
  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); }
193
189
 
194
190
  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; }
@@ -201,28 +197,6 @@ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflec
201
197
 
202
198
  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; } }
203
199
 
204
- function useWidth() {
205
- var theme = (0, _styles.useTheme)();
206
- var keys = (0, _toConsumableArray2["default"])(theme.breakpoints.keys).reverse();
207
- return keys.reduce(function (output, key) {
208
- // eslint-disable-next-line react-hooks/rules-of-hooks
209
- var matches = (0, _useMediaQuery["default"])(theme.breakpoints.up(key));
210
- return !output && matches ? key : output;
211
- }, null) || 'xs';
212
- } // FIXME checkout https://mui.com/components/use-media-query/#migrating-from-withwidth
213
-
214
-
215
- var withWidth = function withWidth() {
216
- return function (WrappedComponent) {
217
- return function (props) {
218
- var width = useWidth();
219
- return /*#__PURE__*/_react["default"].createElement(WrappedComponent, (0, _extends2["default"])({}, props, {
220
- width: width
221
- }));
222
- };
223
- };
224
- };
225
-
226
200
  var ICON_SIZE = 24;
227
201
  var ROW_HEIGHT = 32;
228
202
  var ITEM_LEVEL = 16;
@@ -331,7 +305,7 @@ var styles = function styles(theme) {
331
305
  paddingTop: 0,
332
306
  //theme.spacing(1),
333
307
  paddingLeft: 0,
334
- width: "calc(100% - ".concat(theme.spacing(1), "px)"),
308
+ width: "calc(100% - ".concat(theme.spacing(1), ")"),
335
309
  height: "calc(100% - 38px)",
336
310
  overflow: 'auto'
337
311
  },
@@ -611,6 +585,7 @@ var styles = function styles(theme) {
611
585
  opacity: 1
612
586
  },
613
587
  paddingTop: 0,
588
+ paddingLeft: 0,
614
589
  marginTop: -2
615
590
  },
616
591
  cellButtonsEmptyButton: {
@@ -644,7 +619,7 @@ var styles = function styles(theme) {
644
619
  cursor: 'pointer'
645
620
  },
646
621
  cellButtonsValueButtonEdit: {
647
- right: SMALL_BUTTON_SIZE / 2 + theme.spacing(2)
622
+ right: SMALL_BUTTON_SIZE / 2 + parseInt(theme.spacing(2), 10)
648
623
  },
649
624
  filteredOut: {
650
625
  opacity: 0.5
@@ -850,7 +825,8 @@ function binarySearch(list, find, _start, _end) {
850
825
  }
851
826
  }
852
827
 
853
- function applyFilter(item, filters, lang, objects, context, counter, customFilter, selectedTypes) {
828
+ function applyFilter(item, filters, lang, objects, context, counter, customFilter, selectedTypes, _depth) {
829
+ _depth = _depth || 0;
854
830
  var filteredOut = false;
855
831
 
856
832
  if (!context) {
@@ -966,9 +942,9 @@ function applyFilter(item, filters, lang, objects, context, counter, customFilte
966
942
  data.visible = !filteredOut;
967
943
  data.hasVisibleChildren = false;
968
944
 
969
- if (item.children) {
945
+ if (item.children && _depth < 20) {
970
946
  item.children.forEach(function (_item) {
971
- var visible = applyFilter(_item, filters, lang, objects, context, counter, customFilter, selectedTypes);
947
+ var visible = applyFilter(_item, filters, lang, objects, context, counter, customFilter, selectedTypes, _depth + 1);
972
948
 
973
949
  if (visible) {
974
950
  data.hasVisibleChildren = true;
@@ -1907,8 +1883,6 @@ var ObjectBrowser = /*#__PURE__*/function (_Component) {
1907
1883
  return;
1908
1884
  }
1909
1885
 
1910
- ;
1911
-
1912
1886
  if (id.startsWith('system.adapter.') && obj && obj.type === 'adapter') {
1913
1887
  var columnsForAdmin = JSON.parse(JSON.stringify(_this.state.columnsForAdmin));
1914
1888
 
@@ -3027,8 +3001,7 @@ var ObjectBrowser = /*#__PURE__*/function (_Component) {
3027
3001
  return cols.filter(function (id) {
3028
3002
  return isLast && (id === 'val' || id === 'buttons') || !isLast && id !== 'val' && id !== 'buttons';
3029
3003
  }).map(function (id) {
3030
- return /*#__PURE__*/_react["default"].createElement(_ListItem["default"], {
3031
- button: true,
3004
+ return /*#__PURE__*/_react["default"].createElement(ListItemButton, {
3032
3005
  onClick: function onClick() {
3033
3006
  if (!_this9.state.columnsAuto && id !== 'id') {
3034
3007
  var columns = (0, _toConsumableArray2["default"])(_this9.state.columns || []);
@@ -3192,8 +3165,7 @@ var ObjectBrowser = /*#__PURE__*/function (_Component) {
3192
3165
  }
3193
3166
  }), /*#__PURE__*/_react["default"].createElement(_List["default"], null, this._renderDefinedList(false), this.state.columnsForAdmin && Object.keys(this.state.columnsForAdmin).sort().map(function (adapter) {
3194
3167
  return _this10.state.columnsForAdmin[adapter].map(function (column) {
3195
- return /*#__PURE__*/_react["default"].createElement(_ListItem["default"], {
3196
- button: true,
3168
+ return /*#__PURE__*/_react["default"].createElement(ListItemButton, {
3197
3169
  onClick: function onClick() {
3198
3170
  if (!_this10.state.columnsAuto) {
3199
3171
  var columns = (0, _toConsumableArray2["default"])(_this10.state.columns || []);
@@ -6121,6 +6093,16 @@ var ObjectBrowser = /*#__PURE__*/function (_Component) {
6121
6093
  return null;
6122
6094
  }
6123
6095
 
6096
+ if (!this.edit.id) {
6097
+ console.error('Invalid ID for edit: ' + JSON.stringify(this.edit));
6098
+ return null;
6099
+ }
6100
+
6101
+ if (!this.objects[this.edit.id]) {
6102
+ console.error("Something went wrong. Possibly the object ".concat(this.edit.id, " was deleted."));
6103
+ return null;
6104
+ }
6105
+
6124
6106
  var type = (_this$objects$this$ed = this.objects[this.edit.id].common) !== null && _this$objects$this$ed !== void 0 && _this$objects$this$ed.type ? this.objects[this.edit.id].common.type : (0, _typeof2["default"])(this.edit.val);
6125
6107
  var ObjectBrowserValue = this.props.objectBrowserValue;
6126
6108
  return /*#__PURE__*/_react["default"].createElement(ObjectBrowserValue, {
@@ -6297,7 +6279,7 @@ ObjectBrowser.propTypes = {
6297
6279
  };
6298
6280
  /** @type {typeof ObjectBrowser} */
6299
6281
 
6300
- var _export = withWidth()((0, _withStyles["default"])(styles)(ObjectBrowser));
6282
+ var _export = (0, _withWidth["default"])()((0, _withStyles["default"])(styles)(ObjectBrowser));
6301
6283
 
6302
6284
  var _default = _export;
6303
6285
  exports["default"] = _default;