@iobroker/adapter-react-v5 4.0.8 → 4.0.10

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 (72) hide show
  1. package/Components/404.js.map +1 -1
  2. package/Components/FileBrowser.js.map +1 -1
  3. package/Components/IconSelector.js.map +1 -1
  4. package/Components/JsonConfigComponent/ConfigCRON.js +13 -15
  5. package/Components/JsonConfigComponent/ConfigCRON.js.map +1 -1
  6. package/Components/JsonConfigComponent/ConfigCertificateSelect.js +39 -41
  7. package/Components/JsonConfigComponent/ConfigCertificateSelect.js.map +1 -1
  8. package/Components/JsonConfigComponent/ConfigCheckLicense.js +314 -322
  9. package/Components/JsonConfigComponent/ConfigCheckLicense.js.map +1 -1
  10. package/Components/JsonConfigComponent/ConfigCustom.js +138 -144
  11. package/Components/JsonConfigComponent/ConfigCustom.js.map +1 -1
  12. package/Components/JsonConfigComponent/ConfigFile.js.map +1 -1
  13. package/Components/JsonConfigComponent/ConfigFileSelector.js +95 -99
  14. package/Components/JsonConfigComponent/ConfigFileSelector.js.map +1 -1
  15. package/Components/JsonConfigComponent/ConfigFunc.js +13 -7
  16. package/Components/JsonConfigComponent/ConfigFunc.js.map +1 -1
  17. package/Components/JsonConfigComponent/ConfigGeneric.js +4 -6
  18. package/Components/JsonConfigComponent/ConfigGeneric.js.map +1 -1
  19. package/Components/JsonConfigComponent/ConfigIP.js +1 -1
  20. package/Components/JsonConfigComponent/ConfigIP.js.map +1 -1
  21. package/Components/JsonConfigComponent/ConfigImageUpload.js +21 -23
  22. package/Components/JsonConfigComponent/ConfigImageUpload.js.map +1 -1
  23. package/Components/JsonConfigComponent/ConfigInstanceSelect.js +69 -71
  24. package/Components/JsonConfigComponent/ConfigInstanceSelect.js.map +1 -1
  25. package/Components/JsonConfigComponent/ConfigJsonEditor.js +17 -19
  26. package/Components/JsonConfigComponent/ConfigJsonEditor.js.map +1 -1
  27. package/Components/JsonConfigComponent/ConfigLanguage.js +2 -2
  28. package/Components/JsonConfigComponent/ConfigLanguage.js.map +1 -1
  29. package/Components/JsonConfigComponent/ConfigNumber.js.map +1 -1
  30. package/Components/JsonConfigComponent/ConfigObjectId.js +14 -16
  31. package/Components/JsonConfigComponent/ConfigObjectId.js.map +1 -1
  32. package/Components/JsonConfigComponent/ConfigPattern.js +1 -1
  33. package/Components/JsonConfigComponent/ConfigPattern.js.map +1 -1
  34. package/Components/JsonConfigComponent/ConfigRoom.js +12 -6
  35. package/Components/JsonConfigComponent/ConfigRoom.js.map +1 -1
  36. package/Components/JsonConfigComponent/ConfigSelect.js +1 -1
  37. package/Components/JsonConfigComponent/ConfigSelect.js.map +1 -1
  38. package/Components/JsonConfigComponent/ConfigSendto.js +54 -41
  39. package/Components/JsonConfigComponent/ConfigSendto.js.map +1 -1
  40. package/Components/JsonConfigComponent/ConfigSetState.js +70 -76
  41. package/Components/JsonConfigComponent/ConfigSetState.js.map +1 -1
  42. package/Components/JsonConfigComponent/ConfigTable.js +21 -23
  43. package/Components/JsonConfigComponent/ConfigTable.js.map +1 -1
  44. package/Components/JsonConfigComponent/ConfigTextSendTo.js +2 -2
  45. package/Components/JsonConfigComponent/ConfigTextSendTo.js.map +1 -1
  46. package/Components/JsonConfigComponent/ConfigUUID.js +13 -15
  47. package/Components/JsonConfigComponent/ConfigUUID.js.map +1 -1
  48. package/Components/JsonConfigComponent/ConfigUser.js +2 -2
  49. package/Components/JsonConfigComponent/ConfigUser.js.map +1 -1
  50. package/Components/ObjectBrowser.js +198 -204
  51. package/Components/ObjectBrowser.js.map +1 -1
  52. package/Components/Schedule.js.map +1 -1
  53. package/Components/Utils.js +1 -1
  54. package/Components/Utils.js.map +1 -1
  55. package/Dialogs/SelectFile.js.map +1 -1
  56. package/Dialogs/SelectID.js.map +1 -1
  57. package/LICENSE +1 -1
  58. package/README.md +10 -2
  59. package/_Connection.js +23 -25
  60. package/_Connection.js.map +1 -1
  61. package/i18n/de.json +3 -1
  62. package/i18n/en.json +3 -1
  63. package/i18n/es.json +3 -1
  64. package/i18n/fr.json +3 -1
  65. package/i18n/it.json +3 -1
  66. package/i18n/nl.json +3 -1
  67. package/i18n/pl.json +3 -1
  68. package/i18n/pt.json +3 -1
  69. package/i18n/ru.json +3 -1
  70. package/i18n/uk.json +3 -1
  71. package/i18n/zh-cn.json +3 -1
  72. package/package.json +7 -7
@@ -1 +1 @@
1
- {"version":3,"file":"ConfigSelect.js","names":["styles","fullWidth","width","noMargin","marginTop","ConfigSelect","value","ConfigGeneric","getValue","props","data","attr","selectOptions","JSON","parse","stringify","schema","options","Array","isArray","initialValue","unshift","label","I18n","t","DIFFERENT_LABEL","DIFFERENT_VALUE","setState","error","disabled","defaultValue","state","filter","item","hidden","custom","executeCustom","customObj","instanceObj","arrayIndex","globalData","execute","find","Utils","clsx","classes","undefined","index","getText","val","noTranslation","e","target","onChange","map","opacity","help","renderHelp","helpLink","propTypes","socket","PropTypes","object","isRequired","themeType","string","themeName","style","className","onError","func","withStyles"],"sources":["JsonConfigComponent/ConfigSelect.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@mui/styles';\n\nimport InputLabel from '@mui/material/InputLabel';\nimport MenuItem from '@mui/material/MenuItem';\nimport FormHelperText from '@mui/material/FormHelperText';\nimport FormControl from '@mui/material/FormControl';\nimport Select from '@mui/material/Select';\n\nimport I18n from './wrapper/i18n';\nimport Utils from './wrapper/Components/Utils';\n\nimport ConfigGeneric from './ConfigGeneric';\n\nconst styles = () => ({\n fullWidth: {\n width: '100%'\n },\n noMargin: {\n '&>div': {\n marginTop: 0,\n },\n }\n});\n\nclass ConfigSelect extends ConfigGeneric {\n componentDidMount() {\n super.componentDidMount();\n const value = ConfigGeneric.getValue(this.props.data, this.props.attr);\n\n const selectOptions = JSON.parse(JSON.stringify(this.props.schema.options));\n\n // if __different\n if (Array.isArray(value)) {\n this.initialValue = [...value];\n selectOptions.unshift({label: I18n.t(ConfigGeneric.DIFFERENT_LABEL), value: ConfigGeneric.DIFFERENT_VALUE});\n this.setState({value: ConfigGeneric.DIFFERENT_VALUE, selectOptions});\n } else {\n this.setState({value, selectOptions});\n }\n }\n\n renderItem(error, disabled, defaultValue) {\n if (!this.state.selectOptions) {\n return null;\n }\n\n const selectOptions = (this.state.selectOptions || []).filter(item => {\n if (!item.hidden) {\n return true;\n } else if (this.props.custom) {\n return !this.executeCustom(item.hidden, this.props.data, this.props.customObj, this.props.instanceObj, this.props.arrayIndex, this.props.globalData);\n } else {\n return !this.execute(item.hidden, this.props.schema.default, this.props.data, this.props.arrayIndex, this.props.globalData);\n }\n });\n\n // eslint-disable-next-line\n const item = selectOptions.find(item => item.value == this.state.value); // let \"==\" be and not ===\n\n return <FormControl\n variant=\"standard\"\n className={Utils.clsx(this.props.classes.fullWidth, this.props.arrayIndex !== undefined && this.props.classes.noMargin)}\n id={`jsonSelect_${this.props.schema.attr}_${this.props.index || this.props.index === 0 ? this.props.index : ''}`}\n >\n <InputLabel>{this.getText(this.props.schema.label)}</InputLabel>\n <Select\n variant=\"standard\"\n error={!!error}\n disabled={!!disabled}\n value={this.state.value || '_'}\n renderValue={val => this.getText(item?.label, this.props.schema.noTranslation)}\n onChange={e => {\n this.setState({value: e.target.value === '_' ? '' : e.target.value}, () => {\n if (this.state.value === ConfigGeneric.DIFFERENT_VALUE) {\n this.onChange(this.props.attr, this.initialValue);\n } else {\n this.onChange(this.props.attr, this.state.value);\n }\n });\n }}\n >\n {selectOptions.map(item =>\n <MenuItem key={item.value} value={item.value} style={item.value === ConfigGeneric.DIFFERENT_VALUE ? {opacity: 0.5} : {}}>{this.getText(item.label, this.props.schema.noTranslation)}</MenuItem>)}\n </Select>\n {this.props.schema.help ? <FormHelperText>{this.renderHelp(this.props.schema.help, this.props.schema.helpLink, this.props.schema.noTranslation)}</FormHelperText> : null}\n </FormControl>;\n }\n}\n\nConfigSelect.propTypes = {\n socket: PropTypes.object.isRequired,\n themeType: PropTypes.string,\n themeName: PropTypes.string,\n style: PropTypes.object,\n className: PropTypes.string,\n data: PropTypes.object.isRequired,\n schema: PropTypes.object,\n onError: PropTypes.func,\n onChange: PropTypes.func,\n};\n\nexport default withStyles(styles)(ConfigSelect);"],"mappings":";;;;;;;;;;;;;;AAAA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AAEA;AACA;AAEA;AAA4C;AAAA;AAE5C,IAAMA,MAAM,GAAG,SAATA,MAAM;EAAA,OAAU;IAClBC,SAAS,EAAE;MACPC,KAAK,EAAE;IACX,CAAC;IACDC,QAAQ,EAAE;MACN,OAAO,EAAE;QACLC,SAAS,EAAE;MACf;IACJ;EACJ,CAAC;AAAA,CAAC;AAAC,IAEGC,YAAY;EAAA;EAAA;EAAA;IAAA;IAAA;EAAA;EAAA;IAAA;IAAA,OACd,6BAAoB;MAChB;MACA,IAAMC,KAAK,GAAGC,0BAAa,CAACC,QAAQ,CAAC,IAAI,CAACC,KAAK,CAACC,IAAI,EAAE,IAAI,CAACD,KAAK,CAACE,IAAI,CAAC;MAEtE,IAAMC,aAAa,GAAGC,IAAI,CAACC,KAAK,CAACD,IAAI,CAACE,SAAS,CAAC,IAAI,CAACN,KAAK,CAACO,MAAM,CAACC,OAAO,CAAC,CAAC;;MAE3E;MACA,IAAIC,KAAK,CAACC,OAAO,CAACb,KAAK,CAAC,EAAE;QACtB,IAAI,CAACc,YAAY,uCAAOd,KAAK,CAAC;QAC9BM,aAAa,CAACS,OAAO,CAAC;UAACC,KAAK,EAAEC,gBAAI,CAACC,CAAC,CAACjB,0BAAa,CAACkB,eAAe,CAAC;UAAEnB,KAAK,EAAEC,0BAAa,CAACmB;QAAe,CAAC,CAAC;QAC3G,IAAI,CAACC,QAAQ,CAAC;UAACrB,KAAK,EAAEC,0BAAa,CAACmB,eAAe;UAAEd,aAAa,EAAbA;QAAa,CAAC,CAAC;MACxE,CAAC,MAAM;QACH,IAAI,CAACe,QAAQ,CAAC;UAACrB,KAAK,EAALA,KAAK;UAAEM,aAAa,EAAbA;QAAa,CAAC,CAAC;MACzC;IACJ;EAAC;IAAA;IAAA,OAED,oBAAWgB,KAAK,EAAEC,QAAQ,EAAEC,YAAY,EAAE;MAAA;MACtC,IAAI,CAAC,IAAI,CAACC,KAAK,CAACnB,aAAa,EAAE;QAC3B,OAAO,IAAI;MACf;MAEA,IAAMA,aAAa,GAAG,CAAC,IAAI,CAACmB,KAAK,CAACnB,aAAa,IAAI,EAAE,EAAEoB,MAAM,CAAC,UAAAC,IAAI,EAAI;QAClE,IAAI,CAACA,IAAI,CAACC,MAAM,EAAE;UACd,OAAO,IAAI;QACf,CAAC,MAAM,IAAI,KAAI,CAACzB,KAAK,CAAC0B,MAAM,EAAE;UAC1B,OAAO,CAAC,KAAI,CAACC,aAAa,CAACH,IAAI,CAACC,MAAM,EAAE,KAAI,CAACzB,KAAK,CAACC,IAAI,EAAE,KAAI,CAACD,KAAK,CAAC4B,SAAS,EAAE,KAAI,CAAC5B,KAAK,CAAC6B,WAAW,EAAE,KAAI,CAAC7B,KAAK,CAAC8B,UAAU,EAAE,KAAI,CAAC9B,KAAK,CAAC+B,UAAU,CAAC;QACxJ,CAAC,MAAM;UACH,OAAO,CAAC,KAAI,CAACC,OAAO,CAACR,IAAI,CAACC,MAAM,EAAE,KAAI,CAACzB,KAAK,CAACO,MAAM,WAAQ,EAAE,KAAI,CAACP,KAAK,CAACC,IAAI,EAAE,KAAI,CAACD,KAAK,CAAC8B,UAAU,EAAE,KAAI,CAAC9B,KAAK,CAAC+B,UAAU,CAAC;QAC/H;MACJ,CAAC,CAAC;;MAEF;MACA,IAAMP,IAAI,GAAGrB,aAAa,CAAC8B,IAAI,CAAC,UAAAT,IAAI;QAAA,OAAIA,IAAI,CAAC3B,KAAK,IAAI,KAAI,CAACyB,KAAK,CAACzB,KAAK;MAAA,EAAC,CAAC,CAAC;;MAEzE,oBAAO,gCAAC,uBAAW;QACf,OAAO,EAAC,UAAU;QAClB,SAAS,EAAEqC,iBAAK,CAACC,IAAI,CAAC,IAAI,CAACnC,KAAK,CAACoC,OAAO,CAAC5C,SAAS,EAAE,IAAI,CAACQ,KAAK,CAAC8B,UAAU,KAAKO,SAAS,IAAI,IAAI,CAACrC,KAAK,CAACoC,OAAO,CAAC1C,QAAQ,CAAE;QACxH,EAAE,uBAAgB,IAAI,CAACM,KAAK,CAACO,MAAM,CAACL,IAAI,cAAI,IAAI,CAACF,KAAK,CAACsC,KAAK,IAAI,IAAI,CAACtC,KAAK,CAACsC,KAAK,KAAK,CAAC,GAAG,IAAI,CAACtC,KAAK,CAACsC,KAAK,GAAG,EAAE;MAAG,gBAEjH,gCAAC,sBAAU,QAAE,IAAI,CAACC,OAAO,CAAC,IAAI,CAACvC,KAAK,CAACO,MAAM,CAACM,KAAK,CAAC,CAAc,eAChE,gCAAC,kBAAM;QACH,OAAO,EAAC,UAAU;QAClB,KAAK,EAAE,CAAC,CAACM,KAAM;QACf,QAAQ,EAAE,CAAC,CAACC,QAAS;QACrB,KAAK,EAAE,IAAI,CAACE,KAAK,CAACzB,KAAK,IAAI,GAAI;QAC/B,WAAW,EAAE,qBAAA2C,GAAG;UAAA,OAAI,KAAI,CAACD,OAAO,CAACf,IAAI,aAAJA,IAAI,uBAAJA,IAAI,CAAEX,KAAK,EAAE,KAAI,CAACb,KAAK,CAACO,MAAM,CAACkC,aAAa,CAAC;QAAA,CAAC;QAC/E,QAAQ,EAAE,kBAAAC,CAAC,EAAI;UACX,KAAI,CAACxB,QAAQ,CAAC;YAACrB,KAAK,EAAE6C,CAAC,CAACC,MAAM,CAAC9C,KAAK,KAAK,GAAG,GAAG,EAAE,GAAG6C,CAAC,CAACC,MAAM,CAAC9C;UAAK,CAAC,EAAE,YAAM;YACvE,IAAI,KAAI,CAACyB,KAAK,CAACzB,KAAK,KAAKC,0BAAa,CAACmB,eAAe,EAAE;cACpD,KAAI,CAAC2B,QAAQ,CAAC,KAAI,CAAC5C,KAAK,CAACE,IAAI,EAAE,KAAI,CAACS,YAAY,CAAC;YACrD,CAAC,MAAM;cACH,KAAI,CAACiC,QAAQ,CAAC,KAAI,CAAC5C,KAAK,CAACE,IAAI,EAAE,KAAI,CAACoB,KAAK,CAACzB,KAAK,CAAC;YACpD;UACJ,CAAC,CAAC;QACN;MAAE,GAEDM,aAAa,CAAC0C,GAAG,CAAC,UAAArB,IAAI;QAAA,oBACnB,gCAAC,oBAAQ;UAAC,GAAG,EAAEA,IAAI,CAAC3B,KAAM;UAAC,KAAK,EAAE2B,IAAI,CAAC3B,KAAM;UAAC,KAAK,EAAE2B,IAAI,CAAC3B,KAAK,KAAKC,0BAAa,CAACmB,eAAe,GAAG;YAAC6B,OAAO,EAAE;UAAG,CAAC,GAAG,CAAC;QAAE,GAAE,KAAI,CAACP,OAAO,CAACf,IAAI,CAACX,KAAK,EAAE,KAAI,CAACb,KAAK,CAACO,MAAM,CAACkC,aAAa,CAAC,CAAY;MAAA,EAAC,CAC/L,EACR,IAAI,CAACzC,KAAK,CAACO,MAAM,CAACwC,IAAI,gBAAG,gCAAC,0BAAc,QAAE,IAAI,CAACC,UAAU,CAAC,IAAI,CAAChD,KAAK,CAACO,MAAM,CAACwC,IAAI,EAAE,IAAI,CAAC/C,KAAK,CAACO,MAAM,CAAC0C,QAAQ,EAAE,IAAI,CAACjD,KAAK,CAACO,MAAM,CAACkC,aAAa,CAAC,CAAkB,GAAG,IAAI,CAC9J;IAClB;EAAC;EAAA;AAAA,EA9DsB3C,0BAAa;AAiExCF,YAAY,CAACsD,SAAS,GAAG;EACrBC,MAAM,EAAEC,qBAAS,CAACC,MAAM,CAACC,UAAU;EACnCC,SAAS,EAAEH,qBAAS,CAACI,MAAM;EAC3BC,SAAS,EAAEL,qBAAS,CAACI,MAAM;EAC3BE,KAAK,EAAEN,qBAAS,CAACC,MAAM;EACvBM,SAAS,EAAEP,qBAAS,CAACI,MAAM;EAC3BvD,IAAI,EAAEmD,qBAAS,CAACC,MAAM,CAACC,UAAU;EACjC/C,MAAM,EAAE6C,qBAAS,CAACC,MAAM;EACxBO,OAAO,EAAER,qBAAS,CAACS,IAAI;EACvBjB,QAAQ,EAAEQ,qBAAS,CAACS;AACxB,CAAC;AAAC,eAEa,IAAAC,kBAAU,EAACvE,MAAM,CAAC,CAACK,YAAY,CAAC;AAAA"}
1
+ {"version":3,"file":"ConfigSelect.js","names":["styles","fullWidth","width","noMargin","marginTop","ConfigSelect","value","ConfigGeneric","getValue","props","data","attr","selectOptions","JSON","parse","stringify","schema","options","Array","isArray","initialValue","unshift","label","I18n","t","DIFFERENT_LABEL","DIFFERENT_VALUE","setState","error","disabled","defaultValue","state","filter","item","hidden","custom","executeCustom","customObj","instanceObj","arrayIndex","globalData","execute","find","Utils","clsx","classes","undefined","index","getText","val","noTranslation","e","target","onChange","map","opacity","help","renderHelp","helpLink","propTypes","socket","PropTypes","object","isRequired","themeType","string","themeName","style","className","onError","func","withStyles"],"sources":["JsonConfigComponent/ConfigSelect.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@mui/styles';\n\nimport InputLabel from '@mui/material/InputLabel';\nimport MenuItem from '@mui/material/MenuItem';\nimport FormHelperText from '@mui/material/FormHelperText';\nimport FormControl from '@mui/material/FormControl';\nimport Select from '@mui/material/Select';\n\nimport I18n from './wrapper/i18n';\nimport Utils from './wrapper/Components/Utils';\n\nimport ConfigGeneric from './ConfigGeneric';\n\nconst styles = () => ({\n fullWidth: {\n width: '100%'\n },\n noMargin: {\n '&>div': {\n marginTop: 0,\n },\n }\n});\n\nclass ConfigSelect extends ConfigGeneric {\n componentDidMount() {\n super.componentDidMount();\n const value = ConfigGeneric.getValue(this.props.data, this.props.attr);\n\n const selectOptions = JSON.parse(JSON.stringify(this.props.schema.options));\n\n // if __different\n if (Array.isArray(value)) {\n this.initialValue = [...value];\n selectOptions.unshift({label: I18n.t(ConfigGeneric.DIFFERENT_LABEL), value: ConfigGeneric.DIFFERENT_VALUE});\n this.setState({value: ConfigGeneric.DIFFERENT_VALUE, selectOptions});\n } else {\n this.setState({value, selectOptions});\n }\n }\n\n renderItem(error, disabled, defaultValue) {\n if (!this.state.selectOptions) {\n return null;\n }\n\n const selectOptions = (this.state.selectOptions || []).filter(item => {\n if (!item.hidden) {\n return true;\n } else if (this.props.custom) {\n return !this.executeCustom(item.hidden, this.props.data, this.props.customObj, this.props.instanceObj, this.props.arrayIndex, this.props.globalData);\n } else {\n return !this.execute(item.hidden, this.props.schema.default, this.props.data, this.props.arrayIndex, this.props.globalData);\n }\n });\n\n // eslint-disable-next-line\n const item = selectOptions.find(item => item.value == this.state.value); // let \"==\" be and not ===\n\n return <FormControl\n variant=\"standard\"\n className={Utils.clsx(this.props.classes.fullWidth, this.props.arrayIndex !== undefined && this.props.classes.noMargin)}\n id={`jsonSelect_${this.props.schema.attr}_${this.props.index || this.props.index === 0 ? this.props.index : ''}`}\n >\n {this.props.schema.label ? <InputLabel>{this.getText(this.props.schema.label)}</InputLabel> : null}\n <Select\n variant=\"standard\"\n error={!!error}\n disabled={!!disabled}\n value={this.state.value || '_'}\n renderValue={val => this.getText(item?.label, this.props.schema.noTranslation)}\n onChange={e => {\n this.setState({ value: e.target.value === '_' ? '' : e.target.value }, () => {\n if (this.state.value === ConfigGeneric.DIFFERENT_VALUE) {\n this.onChange(this.props.attr, this.initialValue);\n } else {\n this.onChange(this.props.attr, this.state.value);\n }\n });\n }}\n >\n {selectOptions.map(item =>\n <MenuItem key={item.value} value={item.value} style={item.value === ConfigGeneric.DIFFERENT_VALUE ? {opacity: 0.5} : {}}>{this.getText(item.label, this.props.schema.noTranslation)}</MenuItem>)}\n </Select>\n {this.props.schema.help ? <FormHelperText>{this.renderHelp(this.props.schema.help, this.props.schema.helpLink, this.props.schema.noTranslation)}</FormHelperText> : null}\n </FormControl>;\n }\n}\n\nConfigSelect.propTypes = {\n socket: PropTypes.object.isRequired,\n themeType: PropTypes.string,\n themeName: PropTypes.string,\n style: PropTypes.object,\n className: PropTypes.string,\n data: PropTypes.object.isRequired,\n schema: PropTypes.object,\n onError: PropTypes.func,\n onChange: PropTypes.func,\n};\n\nexport default withStyles(styles)(ConfigSelect);"],"mappings":"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"}
@@ -155,48 +155,46 @@ var ConfigSendto = /*#__PURE__*/function (_ConfigGeneric) {
155
155
  var _componentDidMount = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
156
156
  var hostname, adminInstance, instanceObj, hostObj, ip;
157
157
  return _regenerator["default"].wrap(function _callee$(_context) {
158
- while (1) {
159
- switch (_context.prev = _context.next) {
160
- case 0:
161
- (0, _get2["default"])((0, _getPrototypeOf2["default"])(ConfigSendto.prototype), "componentDidMount", this).call(this);
162
- hostname = window.location.hostname;
163
- if (!this.props.schema.openUrl) {
164
- _context.next = 19;
165
- break;
166
- }
167
- _context.next = 5;
168
- return this.props.socket.getCurrentInstance();
169
- case 5:
170
- adminInstance = _context.sent;
171
- _context.next = 8;
172
- return this.props.socket.getObject("system.adapter.".concat(adminInstance));
173
- case 8:
174
- instanceObj = _context.sent;
175
- _context.next = 11;
176
- return this.props.socket.getObject("system.host.".concat(instanceObj.common.host));
177
- case 11:
178
- hostObj = _context.sent;
179
- ip = findNetworkAddressOfHost(hostObj, window.location.hostname);
180
- if (!ip) {
181
- _context.next = 17;
182
- break;
183
- }
184
- hostname = "".concat(ip, ":").concat(window.location.port);
158
+ while (1) switch (_context.prev = _context.next) {
159
+ case 0:
160
+ (0, _get2["default"])((0, _getPrototypeOf2["default"])(ConfigSendto.prototype), "componentDidMount", this).call(this);
161
+ hostname = window.location.hostname;
162
+ if (!this.props.schema.openUrl) {
185
163
  _context.next = 19;
186
164
  break;
187
- case 17:
188
- console.warn("Cannot find suitable IP in host ".concat(instanceObj.common.host, " for ").concat(instanceObj._id));
189
- return _context.abrupt("return", null);
190
- case 19:
191
- this.setState({
192
- _error: '',
193
- _message: '',
194
- hostname: hostname
195
- });
196
- case 20:
197
- case "end":
198
- return _context.stop();
199
- }
165
+ }
166
+ _context.next = 5;
167
+ return this.props.socket.getCurrentInstance();
168
+ case 5:
169
+ adminInstance = _context.sent;
170
+ _context.next = 8;
171
+ return this.props.socket.getObject("system.adapter.".concat(adminInstance));
172
+ case 8:
173
+ instanceObj = _context.sent;
174
+ _context.next = 11;
175
+ return this.props.socket.getObject("system.host.".concat(instanceObj.common.host));
176
+ case 11:
177
+ hostObj = _context.sent;
178
+ ip = findNetworkAddressOfHost(hostObj, window.location.hostname);
179
+ if (!ip) {
180
+ _context.next = 17;
181
+ break;
182
+ }
183
+ hostname = "".concat(ip, ":").concat(window.location.port);
184
+ _context.next = 19;
185
+ break;
186
+ case 17:
187
+ console.warn("Cannot find suitable IP in host ".concat(instanceObj.common.host, " for ").concat(instanceObj._id));
188
+ return _context.abrupt("return", null);
189
+ case 19:
190
+ this.setState({
191
+ _error: '',
192
+ _message: '',
193
+ hostname: hostname
194
+ });
195
+ case 20:
196
+ case "end":
197
+ return _context.stop();
200
198
  }
201
199
  }, _callee, this);
202
200
  }));
@@ -272,7 +270,21 @@ var ConfigSendto = /*#__PURE__*/function (_ConfigGeneric) {
272
270
  _originIp: _originIp
273
271
  };
274
272
  }
273
+ var timeout;
274
+ if (this.props.schema.timeout) {
275
+ timeout = setTimeout(function () {
276
+ _this3.props.onCommandRunning(false);
277
+ _this3.setState({
278
+ _error: _i18n["default"].t('ra_Request timed out'),
279
+ running: false
280
+ });
281
+ }, parseInt(this.props.schema.timeout, 10) || 10000);
282
+ }
275
283
  this.props.socket.sendTo("".concat(this.props.adapterName, ".").concat(this.props.instance), this.props.schema.command || 'send', data).then(function (response) {
284
+ if (timeout) {
285
+ clearTimeout(timeout);
286
+ timeout = null;
287
+ }
276
288
  if (response !== null && response !== void 0 && response.error) {
277
289
  if (_this3.props.schema.error && _this3.props.schema.error[response.error]) {
278
290
  var error = _this3.getText(_this3.props.schema.error[response.error]);
@@ -404,8 +416,9 @@ var ConfigSendto = /*#__PURE__*/function (_ConfigGeneric) {
404
416
  variant: this.props.schema.variant || undefined,
405
417
  color: this.props.schema.color || 'grey',
406
418
  className: this.props.classes.fullWidth,
407
- disabled: disabled,
419
+ disabled: disabled || !this.props.alive,
408
420
  startIcon: icon,
421
+ title: this.props.alive ? this.getText(this.props.schema.title) || '' : _i18n["default"].t('ra_Instance is not alive'),
409
422
  onClick: function onClick() {
410
423
  if (_this5.props.schema.confirm) {
411
424
  _this5.setState({
@@ -1 +1 @@
1
- {"version":3,"file":"ConfigSendto.js","names":["styles","fullWidth","width","icon","height","marginRight","ip2int","ip","split","reduce","ipInt","octet","parseInt","findNetworkAddressOfHost","obj","localIp","networkInterfaces","hardware","hostIp","Object","keys","forEach","inter","internal","includes","family","match","address","startsWith","netmask","ConfigSendto","hostname","window","location","props","schema","openUrl","socket","getCurrentInstance","adminInstance","getObject","instanceObj","common","host","hostObj","port","console","warn","_id","setState","_error","_message","state","undefined","onCommandRunning","running","_origin","protocol","pathname","replace","_originIp","length","data","jsonData","getPattern","JSON","parse","e","error","sendTo","adapterName","instance","command","then","response","getText","args","arg","I18n","t","open","result","text","alert","useNative","attrs","attr","onChange","setTimeout","forceUpdate","stringify","saveConfig","toString","confirmDialog","confirm","confirmData","type","title","ok","cancel","isOk","_onClick","disabled","defaultValue","getIcon","classes","variant","color","showProcess","label","noTranslation","renderErrorDialog","renderMessageDialog","ConfigGeneric","propTypes","PropTypes","object","isRequired","themeType","string","themeName","style","className","onError","func","number","commandRunning","bool","withStyles"],"sources":["JsonConfigComponent/ConfigSendto.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@mui/styles';\n\nimport { Button, CircularProgress } from '@mui/material';\n\nimport IconWarning from '@mui/icons-material/Warning';\nimport IconError from '@mui/icons-material/Error';\nimport IconInfo from '@mui/icons-material/Info';\nimport IconAuth from '@mui/icons-material/Key';\nimport IconSend from '@mui/icons-material/Send';\nimport IconWeb from '@mui/icons-material/Public';\nimport IconSearch from '@mui/icons-material/Search';\n\nimport I18n from './wrapper/i18n';\nimport Icon from './wrapper/Components/Icon';\nimport DialogError from './wrapper/Dialogs/Error';\nimport DialogMessage from './wrapper/Dialogs/Message';\nimport DialogConfirm from './wrapper/Dialogs/Confirm';\n\nimport ConfigGeneric from './ConfigGeneric';\n\nconst styles = () => ({\n fullWidth: {\n width: '100%'\n },\n icon: {\n width: 24,\n height: 24,\n marginRight: 4\n }\n});\n\nfunction ip2int(ip) {\n return ip.split('.').reduce((ipInt, octet) => (ipInt << 8) + parseInt(octet, 10), 0) >>> 0;\n}\n\n// copied from iobroker.admin/src-rx/src/Utils.js\nfunction findNetworkAddressOfHost(obj, localIp) {\n const networkInterfaces = obj?.native?.hardware?.networkInterfaces;\n if (!networkInterfaces) {\n return null;\n }\n\n let hostIp;\n\n // check ipv4 addresses\n Object.keys(networkInterfaces).forEach(inter =>\n networkInterfaces[inter].forEach(ip => {\n if (ip.internal) {\n return;\n } else if (localIp.includes(':') && ip.family !== 'IPv6') {\n return;\n } else if (localIp.includes('.') && !localIp.match(/[^.\\d]/) && ip.family !== 'IPv4') {\n return;\n }\n // if ip4 and not docker or wsl\n if (ip.family === 'IPv4' && !ip.address.startsWith('172') && (localIp === '127.0.0.0' || localIp === 'localhost' || localIp.match(/[^.\\d]/))) { // if DNS name\n hostIp = ip.address;\n } else if (!hostIp) {\n if (ip.family === 'IPv4' && localIp.includes('.') &&\n (ip2int(localIp) & ip2int(ip.netmask)) === (ip2int(ip.address) & ip2int(ip.netmask))) {\n hostIp = ip.address;\n } else {\n hostIp = ip.address;\n }\n }\n }));\n\n // check ipv6 addresses\n if (!hostIp) {\n Object.keys(networkInterfaces).forEach(inter =>\n networkInterfaces[inter].forEach(ip => {\n if (ip.internal) {\n return;\n } else if (localIp.includes(':') && ip.family !== 'IPv6') {\n return;\n } else if (localIp.includes('.') && !localIp.match(/[^.\\d]/) && ip.family !== 'IPv4') {\n return;\n }\n if (ip.family === 'IPv6' && (localIp === '127.0.0.0' || localIp === 'localhost' || localIp.match(/[^.\\d]/))) { // if DNS name\n hostIp = ip.address;\n } else if (!hostIp) {\n if (ip.family === 'IPv4' && localIp.includes('.') &&\n (ip2int(localIp) & ip2int(ip.netmask)) === (ip2int(ip.address) & ip2int(ip.netmask))) {\n hostIp = ip.address;\n } else {\n hostIp = ip.address;\n }\n }\n }));\n }\n\n if (!hostIp) {\n Object.keys(networkInterfaces).forEach(inter => {\n networkInterfaces[inter].forEach(ip => {\n if (ip.internal) {\n return;\n } else if (localIp.includes(':') && ip.family !== 'IPv6') {\n return;\n } else if (localIp.includes('.') && !localIp.match(/[^.\\d]/) && ip.family !== 'IPv4') {\n return;\n }\n if (localIp === '127.0.0.0' || localIp === 'localhost' || localIp.match(/[^.\\d]/)) { // if DNS name\n hostIp = ip.address;\n } else {\n hostIp = ip.address;\n }\n });\n });\n }\n\n if (!hostIp) {\n Object.keys(networkInterfaces).forEach(inter => {\n networkInterfaces[inter].forEach(ip => {\n if (ip.internal) {\n return;\n }\n hostIp = ip.address;\n });\n });\n }\n\n return hostIp;\n}\n\n\nclass ConfigSendto extends ConfigGeneric {\n async componentDidMount() {\n super.componentDidMount();\n\n let hostname = window.location.hostname;\n if (this.props.schema.openUrl) {\n // read admin host\n const adminInstance = await this.props.socket.getCurrentInstance();\n const instanceObj = await this.props.socket.getObject(`system.adapter.${adminInstance}`);\n const hostObj = await this.props.socket.getObject(`system.host.${instanceObj.common.host}`);\n\n const ip = findNetworkAddressOfHost(hostObj, window.location.hostname);\n if (ip) {\n hostname = `${ip}:${window.location.port}`;\n } else {\n console.warn(`Cannot find suitable IP in host ${instanceObj.common.host} for ${instanceObj._id}`);\n return null;\n }\n }\n this.setState( { _error: '', _message: '', hostname });\n }\n\n renderErrorDialog() {\n if (this.state._error) {\n return <DialogError text={this.state._error} classes={undefined} onClose={() => this.setState({ _error: '' })} />;\n } else {\n return null;\n }\n }\n\n renderMessageDialog() {\n if (this.state._message) {\n return <DialogMessage text={this.state._message} classes={undefined} onClose={() => this.setState({ _message: '' })} />;\n } else {\n return null;\n }\n }\n\n _onClick() {\n this.props.onCommandRunning(true);\n this.setState({ running: true });\n\n const _origin = `${window.location.protocol}//${window.location.host}${window.location.pathname.replace(/\\/index\\.html$/, '')}`\n const _originIp = `${window.location.protocol}//${this.state.hostname.split(':').length > 3 ? `[${this.state.hostname}]` : this.state.hostname}${window.location.pathname.replace(/\\/index\\.html$/, '')}`\n\n let data = this.props.schema.data;\n if (data === undefined && this.props.schema.jsonData) {\n data = this.getPattern(this.props.schema.jsonData, {\n _origin,\n _originIp,\n ...this.props.data\n });\n try {\n data = JSON.parse(data);\n } catch (e) {\n console.error(`Cannot parse json data: ${data}`);\n }\n }\n if (data === undefined) {\n data = null;\n }\n if (this.props.schema.openUrl && !data) {\n data = {\n _origin,\n _originIp,\n }\n }\n\n this.props.socket.sendTo(\n `${this.props.adapterName}.${this.props.instance}`,\n this.props.schema.command || 'send',\n data\n )\n .then(response => {\n if (response?.error) {\n if (this.props.schema.error && this.props.schema.error[response.error]) {\n let error = this.getText(this.props.schema.error[response.error]);\n if (response.args) {\n response.args.forEach(arg => error = error.replace('%s', arg));\n }\n this.setState({_error: error});\n } else {\n this.setState({_error: response.error ? I18n.t(response.error) : I18n.t('ra_Error')});\n }\n } else {\n if (response?.openUrl && this.props.schema.openUrl) {\n window.open(response.openUrl, response.window || this.props.schema.window || '_blank');\n } else\n if (response?.result && this.props.schema.result && this.props.schema.result[response.result]) {\n let text = this.getText(this.props.schema.result[response.result]);\n if (response.args) {\n response.args.forEach(arg => text = text.replace('%s', arg));\n }\n window.alert(text);\n } if (response?.native && this.props.schema.useNative) {\n const attrs = Object.keys(response.native);\n attrs.forEach(attr =>\n this.onChange(attr, response.native[attr]));\n setTimeout(() => this.props.forceUpdate(attrs, this.props.data), 300);\n } else {\n if (response?.result) {\n window.alert(typeof response.result === 'object' ? JSON.stringify(response.result) : response.result);\n } else {\n window.alert(I18n.t('ra_Ok'));\n }\n }\n\n if (response?.saveConfig) {\n this.props.onChange(null, null, null, true);\n }\n }\n })\n .catch(e => {\n if (this.props.schema.error && this.props.schema.error[e.toString()]) {\n this.setState({ _error: this.getText(this.props.schema.error[e.toString()]) });\n } else {\n this.setState({ _error: I18n.t(e.toString()) || I18n.t('ra_Error') });\n }\n })\n .then(() => {\n this.props.onCommandRunning(false);\n this.setState({ running: false });\n });\n }\n\n renderConfirmDialog() {\n if (!this.state.confirmDialog) {\n return null;\n }\n const confirm = this.state.confirmData || this.props.schema.confirm;\n let icon = null;\n if (confirm.type === 'warning') {\n icon = <IconWarning />;\n } else if (confirm.type === 'error') {\n icon = <IconError />;\n } else if (confirm.type === 'info') {\n icon = <IconInfo />;\n }\n\n return <DialogConfirm\n title={ this.getText(confirm.title) || I18n.t('ra_Please confirm') }\n text={ this.getText(confirm.text) }\n ok={ this.getText(confirm.ok) || I18n.t('ra_Ok') }\n cancel={ this.getText(confirm.cancel) || I18n.t('ra_Cancel') }\n icon={icon}\n onClose={isOk =>\n this.setState({ confirmDialog: false}, () =>\n isOk && this._onClick())\n }\n />;\n }\n\n getIcon() {\n let icon = null;\n if (this.props.schema.icon === 'auth') {\n icon = <IconAuth />;\n } else if (this.props.schema.icon === 'send') {\n icon = <IconSend />;\n } else if (this.props.schema.icon === 'web') {\n icon = <IconWeb />;\n } else if (this.props.schema.icon === 'warning') {\n icon = <IconWarning />;\n } else if (this.props.schema.icon === 'error') {\n icon = <IconError />;\n } else if (this.props.schema.icon === 'info') {\n icon = <IconInfo />;\n } else if (this.props.schema.icon === 'search') {\n icon = <IconSearch />;\n } else if (this.props.schema.icon) {\n icon = <Icon src={this.props.schema.icon} />;\n }\n\n return icon;\n }\n\n renderItem(error, disabled, defaultValue) {\n let icon = this.getIcon();\n\n return <div className={this.props.classes.fullWidth}>\n <Button\n variant={this.props.schema.variant || undefined}\n color={this.props.schema.color || 'grey'}\n className={this.props.classes.fullWidth}\n disabled={disabled}\n startIcon={icon}\n onClick={() => {\n if (this.props.schema.confirm) {\n this.setState({ confirmDialog: true });\n } else {\n this._onClick();\n }\n }}\n >\n {this.props.schema.showProcess && this.state.running ? <CircularProgress size={20} style={{ marginRight: 8 }} /> : null}\n {this.getText(this.props.schema.label, this.props.schema.noTranslation)}\n </Button>\n {this.renderErrorDialog()}\n {this.renderMessageDialog()}\n </div>;\n }\n}\n\nConfigSendto.propTypes = {\n socket: PropTypes.object.isRequired,\n themeType: PropTypes.string,\n themeName: PropTypes.string,\n style: PropTypes.object,\n className: PropTypes.string,\n data: PropTypes.object.isRequired,\n schema: PropTypes.object,\n onError: PropTypes.func,\n onChange: PropTypes.func,\n adapterName: PropTypes.string,\n instance: PropTypes.number,\n commandRunning: PropTypes.bool,\n onCommandRunning: PropTypes.func,\n};\n\nexport default withStyles(styles)(ConfigSendto);"],"mappings":"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"}
1
+ {"version":3,"file":"ConfigSendto.js","names":["styles","fullWidth","width","icon","height","marginRight","ip2int","ip","split","reduce","ipInt","octet","parseInt","findNetworkAddressOfHost","obj","localIp","networkInterfaces","hardware","hostIp","Object","keys","forEach","inter","internal","includes","family","match","address","startsWith","netmask","ConfigSendto","hostname","window","location","props","schema","openUrl","socket","getCurrentInstance","adminInstance","getObject","instanceObj","common","host","hostObj","port","console","warn","_id","setState","_error","_message","state","undefined","onCommandRunning","running","_origin","protocol","pathname","replace","_originIp","length","data","jsonData","getPattern","JSON","parse","e","error","timeout","setTimeout","I18n","t","sendTo","adapterName","instance","command","then","response","clearTimeout","getText","args","arg","open","result","text","alert","useNative","attrs","attr","onChange","forceUpdate","stringify","saveConfig","toString","confirmDialog","confirm","confirmData","type","title","ok","cancel","isOk","_onClick","disabled","defaultValue","getIcon","classes","variant","color","alive","showProcess","label","noTranslation","renderErrorDialog","renderMessageDialog","ConfigGeneric","propTypes","PropTypes","object","isRequired","themeType","string","themeName","style","className","onError","func","number","commandRunning","bool","withStyles"],"sources":["JsonConfigComponent/ConfigSendto.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@mui/styles';\n\nimport { Button, CircularProgress } from '@mui/material';\n\nimport IconWarning from '@mui/icons-material/Warning';\nimport IconError from '@mui/icons-material/Error';\nimport IconInfo from '@mui/icons-material/Info';\nimport IconAuth from '@mui/icons-material/Key';\nimport IconSend from '@mui/icons-material/Send';\nimport IconWeb from '@mui/icons-material/Public';\nimport IconSearch from '@mui/icons-material/Search';\n\nimport I18n from './wrapper/i18n';\nimport Icon from './wrapper/Components/Icon';\nimport DialogError from './wrapper/Dialogs/Error';\nimport DialogMessage from './wrapper/Dialogs/Message';\nimport DialogConfirm from './wrapper/Dialogs/Confirm';\n\nimport ConfigGeneric from './ConfigGeneric';\n\nconst styles = () => ({\n fullWidth: {\n width: '100%'\n },\n icon: {\n width: 24,\n height: 24,\n marginRight: 4,\n },\n});\n\nfunction ip2int(ip) {\n return ip.split('.').reduce((ipInt, octet) => (ipInt << 8) + parseInt(octet, 10), 0) >>> 0;\n}\n\n// copied from iobroker.admin/src-rx/src/Utils.js\nfunction findNetworkAddressOfHost(obj, localIp) {\n const networkInterfaces = obj?.native?.hardware?.networkInterfaces;\n if (!networkInterfaces) {\n return null;\n }\n\n let hostIp;\n\n // check ipv4 addresses\n Object.keys(networkInterfaces).forEach(inter =>\n networkInterfaces[inter].forEach(ip => {\n if (ip.internal) {\n return;\n } else if (localIp.includes(':') && ip.family !== 'IPv6') {\n return;\n } else if (localIp.includes('.') && !localIp.match(/[^.\\d]/) && ip.family !== 'IPv4') {\n return;\n }\n // if ip4 and not docker or wsl\n if (ip.family === 'IPv4' && !ip.address.startsWith('172') && (localIp === '127.0.0.0' || localIp === 'localhost' || localIp.match(/[^.\\d]/))) { // if DNS name\n hostIp = ip.address;\n } else if (!hostIp) {\n if (ip.family === 'IPv4' && localIp.includes('.') &&\n (ip2int(localIp) & ip2int(ip.netmask)) === (ip2int(ip.address) & ip2int(ip.netmask))) {\n hostIp = ip.address;\n } else {\n hostIp = ip.address;\n }\n }\n }));\n\n // check ipv6 addresses\n if (!hostIp) {\n Object.keys(networkInterfaces).forEach(inter =>\n networkInterfaces[inter].forEach(ip => {\n if (ip.internal) {\n return;\n } else if (localIp.includes(':') && ip.family !== 'IPv6') {\n return;\n } else if (localIp.includes('.') && !localIp.match(/[^.\\d]/) && ip.family !== 'IPv4') {\n return;\n }\n if (ip.family === 'IPv6' && (localIp === '127.0.0.0' || localIp === 'localhost' || localIp.match(/[^.\\d]/))) { // if DNS name\n hostIp = ip.address;\n } else if (!hostIp) {\n if (ip.family === 'IPv4' && localIp.includes('.') &&\n (ip2int(localIp) & ip2int(ip.netmask)) === (ip2int(ip.address) & ip2int(ip.netmask))) {\n hostIp = ip.address;\n } else {\n hostIp = ip.address;\n }\n }\n }));\n }\n\n if (!hostIp) {\n Object.keys(networkInterfaces).forEach(inter => {\n networkInterfaces[inter].forEach(ip => {\n if (ip.internal) {\n return;\n } else if (localIp.includes(':') && ip.family !== 'IPv6') {\n return;\n } else if (localIp.includes('.') && !localIp.match(/[^.\\d]/) && ip.family !== 'IPv4') {\n return;\n }\n if (localIp === '127.0.0.0' || localIp === 'localhost' || localIp.match(/[^.\\d]/)) { // if DNS name\n hostIp = ip.address;\n } else {\n hostIp = ip.address;\n }\n });\n });\n }\n\n if (!hostIp) {\n Object.keys(networkInterfaces).forEach(inter => {\n networkInterfaces[inter].forEach(ip => {\n if (ip.internal) {\n return;\n }\n hostIp = ip.address;\n });\n });\n }\n\n return hostIp;\n}\n\nclass ConfigSendto extends ConfigGeneric {\n async componentDidMount() {\n super.componentDidMount();\n\n let hostname = window.location.hostname;\n if (this.props.schema.openUrl) {\n // read admin host\n const adminInstance = await this.props.socket.getCurrentInstance();\n const instanceObj = await this.props.socket.getObject(`system.adapter.${adminInstance}`);\n const hostObj = await this.props.socket.getObject(`system.host.${instanceObj.common.host}`);\n\n const ip = findNetworkAddressOfHost(hostObj, window.location.hostname);\n if (ip) {\n hostname = `${ip}:${window.location.port}`;\n } else {\n console.warn(`Cannot find suitable IP in host ${instanceObj.common.host} for ${instanceObj._id}`);\n return null;\n }\n }\n this.setState( { _error: '', _message: '', hostname });\n }\n\n renderErrorDialog() {\n if (this.state._error) {\n return <DialogError text={this.state._error} classes={undefined} onClose={() => this.setState({ _error: '' })} />;\n } else {\n return null;\n }\n }\n\n renderMessageDialog() {\n if (this.state._message) {\n return <DialogMessage text={this.state._message} classes={undefined} onClose={() => this.setState({ _message: '' })} />;\n } else {\n return null;\n }\n }\n\n _onClick() {\n this.props.onCommandRunning(true);\n this.setState({ running: true });\n\n const _origin = `${window.location.protocol}//${window.location.host}${window.location.pathname.replace(/\\/index\\.html$/, '')}`\n const _originIp = `${window.location.protocol}//${this.state.hostname.split(':').length > 3 ? `[${this.state.hostname}]` : this.state.hostname}${window.location.pathname.replace(/\\/index\\.html$/, '')}`\n\n let data = this.props.schema.data;\n if (data === undefined && this.props.schema.jsonData) {\n data = this.getPattern(this.props.schema.jsonData, {\n _origin,\n _originIp,\n ...this.props.data,\n });\n try {\n data = JSON.parse(data);\n } catch (e) {\n console.error(`Cannot parse json data: ${data}`);\n }\n }\n if (data === undefined) {\n data = null;\n }\n if (this.props.schema.openUrl && !data) {\n data = {\n _origin,\n _originIp,\n };\n }\n let timeout;\n if (this.props.schema.timeout) {\n timeout = setTimeout(() => {\n this.props.onCommandRunning(false);\n this.setState({ _error: I18n.t('ra_Request timed out'), running: false });\n }, parseInt(this.props.schema.timeout, 10) || 10000);\n }\n\n this.props.socket.sendTo(\n `${this.props.adapterName}.${this.props.instance}`,\n this.props.schema.command || 'send',\n data\n )\n .then(response => {\n if (timeout) {\n clearTimeout(timeout);\n timeout = null;\n }\n if (response?.error) {\n if (this.props.schema.error && this.props.schema.error[response.error]) {\n let error = this.getText(this.props.schema.error[response.error]);\n if (response.args) {\n response.args.forEach(arg => error = error.replace('%s', arg));\n }\n this.setState({ _error: error });\n } else {\n this.setState({ _error: response.error ? I18n.t(response.error) : I18n.t('ra_Error') });\n }\n } else {\n if (response?.openUrl && this.props.schema.openUrl) {\n window.open(response.openUrl, response.window || this.props.schema.window || '_blank');\n } else\n if (response?.result && this.props.schema.result && this.props.schema.result[response.result]) {\n let text = this.getText(this.props.schema.result[response.result]);\n if (response.args) {\n response.args.forEach(arg => text = text.replace('%s', arg));\n }\n window.alert(text);\n } if (response?.native && this.props.schema.useNative) {\n const attrs = Object.keys(response.native);\n attrs.forEach(attr =>\n this.onChange(attr, response.native[attr]));\n setTimeout(() => this.props.forceUpdate(attrs, this.props.data), 300);\n } else {\n if (response?.result) {\n window.alert(typeof response.result === 'object' ? JSON.stringify(response.result) : response.result);\n } else {\n window.alert(I18n.t('ra_Ok'));\n }\n }\n\n if (response?.saveConfig) {\n this.props.onChange(null, null, null, true);\n }\n }\n })\n .catch(e => {\n if (this.props.schema.error && this.props.schema.error[e.toString()]) {\n this.setState({ _error: this.getText(this.props.schema.error[e.toString()]) });\n } else {\n this.setState({ _error: I18n.t(e.toString()) || I18n.t('ra_Error') });\n }\n })\n .then(() => {\n this.props.onCommandRunning(false);\n this.setState({ running: false });\n });\n }\n\n renderConfirmDialog() {\n if (!this.state.confirmDialog) {\n return null;\n }\n const confirm = this.state.confirmData || this.props.schema.confirm;\n let icon = null;\n if (confirm.type === 'warning') {\n icon = <IconWarning />;\n } else if (confirm.type === 'error') {\n icon = <IconError />;\n } else if (confirm.type === 'info') {\n icon = <IconInfo />;\n }\n\n return <DialogConfirm\n title={this.getText(confirm.title) || I18n.t('ra_Please confirm')}\n text={this.getText(confirm.text)}\n ok={this.getText(confirm.ok) || I18n.t('ra_Ok')}\n cancel={this.getText(confirm.cancel) || I18n.t('ra_Cancel')}\n icon={icon}\n onClose={isOk =>\n this.setState({ confirmDialog: false }, () =>\n isOk && this._onClick())\n }\n />;\n }\n\n getIcon() {\n let icon = null;\n if (this.props.schema.icon === 'auth') {\n icon = <IconAuth />;\n } else if (this.props.schema.icon === 'send') {\n icon = <IconSend />;\n } else if (this.props.schema.icon === 'web') {\n icon = <IconWeb />;\n } else if (this.props.schema.icon === 'warning') {\n icon = <IconWarning />;\n } else if (this.props.schema.icon === 'error') {\n icon = <IconError />;\n } else if (this.props.schema.icon === 'info') {\n icon = <IconInfo />;\n } else if (this.props.schema.icon === 'search') {\n icon = <IconSearch />;\n } else if (this.props.schema.icon) {\n icon = <Icon src={this.props.schema.icon} />;\n }\n\n return icon;\n }\n\n renderItem(error, disabled, defaultValue) {\n let icon = this.getIcon();\n\n return <div className={this.props.classes.fullWidth}>\n <Button\n variant={this.props.schema.variant || undefined}\n color={this.props.schema.color || 'grey'}\n className={this.props.classes.fullWidth}\n disabled={disabled || !this.props.alive}\n startIcon={icon}\n title={this.props.alive ? this.getText(this.props.schema.title) || '' : I18n.t('ra_Instance is not alive')}\n onClick={() => {\n if (this.props.schema.confirm) {\n this.setState({ confirmDialog: true });\n } else {\n this._onClick();\n }\n }}\n >\n {this.props.schema.showProcess && this.state.running ? <CircularProgress size={20} style={{ marginRight: 8 }} /> : null}\n {this.getText(this.props.schema.label, this.props.schema.noTranslation)}\n </Button>\n {this.renderErrorDialog()}\n {this.renderMessageDialog()}\n </div>;\n }\n}\n\nConfigSendto.propTypes = {\n socket: PropTypes.object.isRequired,\n themeType: PropTypes.string,\n themeName: PropTypes.string,\n style: PropTypes.object,\n className: PropTypes.string,\n data: PropTypes.object.isRequired,\n schema: PropTypes.object,\n onError: PropTypes.func,\n onChange: PropTypes.func,\n adapterName: PropTypes.string,\n instance: PropTypes.number,\n commandRunning: PropTypes.bool,\n onCommandRunning: PropTypes.func,\n};\n\nexport default withStyles(styles)(ConfigSendto);\n"],"mappings":"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"}
@@ -50,47 +50,45 @@ var ConfigSetState = /*#__PURE__*/function (_ConfigGeneric) {
50
50
  var _onClick2 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
51
51
  var val, _obj$common, _obj$common2, obj;
52
52
  return _regenerator["default"].wrap(function _callee$(_context) {
53
- while (1) {
54
- switch (_context.prev = _context.next) {
55
- case 0:
56
- val = this.props.schema.val;
57
- if (!(typeof val === 'string' && val.includes('${'))) {
58
- _context.next = 7;
59
- break;
60
- }
61
- val = this.getPattern(val);
62
- _context.next = 5;
63
- return this.props.socket.getObject(this.props.schema.id);
64
- case 5:
65
- obj = _context.sent;
66
- if ((obj === null || obj === void 0 ? void 0 : (_obj$common = obj.common) === null || _obj$common === void 0 ? void 0 : _obj$common.type) === 'number') {
67
- val = parseFloat(val);
68
- } else if ((obj === null || obj === void 0 ? void 0 : (_obj$common2 = obj.common) === null || _obj$common2 === void 0 ? void 0 : _obj$common2.type) === 'boolean') {
69
- val = val === 'true' || val === true || val === '1' || val === 1;
70
- }
71
- case 7:
72
- _context.prev = 7;
73
- _context.next = 10;
74
- return this.props.socket.setState(this.props.schema.id, {
75
- val: val,
76
- ack: !!this.props.schema.ack
77
- });
78
- case 10:
79
- this.props.schema.okText && window.alert(this.getText(this.props.schema.okText));
80
- _context.next = 16;
53
+ while (1) switch (_context.prev = _context.next) {
54
+ case 0:
55
+ val = this.props.schema.val;
56
+ if (!(typeof val === 'string' && val.includes('${'))) {
57
+ _context.next = 7;
81
58
  break;
82
- case 13:
83
- _context.prev = 13;
84
- _context.t0 = _context["catch"](7);
85
- if (this.props.schema.error && this.props.schema.error[_context.t0.toString()]) {
86
- window.alert(this.getText(this.props.schema.error[_context.t0.toString()]));
87
- } else {
88
- window.alert(_i18n["default"].t(_context.t0.toString()) || _i18n["default"].t('ra_Error'));
89
- }
90
- case 16:
91
- case "end":
92
- return _context.stop();
93
- }
59
+ }
60
+ val = this.getPattern(val);
61
+ _context.next = 5;
62
+ return this.props.socket.getObject(this.props.schema.id);
63
+ case 5:
64
+ obj = _context.sent;
65
+ if ((obj === null || obj === void 0 ? void 0 : (_obj$common = obj.common) === null || _obj$common === void 0 ? void 0 : _obj$common.type) === 'number') {
66
+ val = parseFloat(val);
67
+ } else if ((obj === null || obj === void 0 ? void 0 : (_obj$common2 = obj.common) === null || _obj$common2 === void 0 ? void 0 : _obj$common2.type) === 'boolean') {
68
+ val = val === 'true' || val === true || val === '1' || val === 1;
69
+ }
70
+ case 7:
71
+ _context.prev = 7;
72
+ _context.next = 10;
73
+ return this.props.socket.setState(this.props.schema.id, {
74
+ val: val,
75
+ ack: !!this.props.schema.ack
76
+ });
77
+ case 10:
78
+ this.props.schema.okText && window.alert(this.getText(this.props.schema.okText));
79
+ _context.next = 16;
80
+ break;
81
+ case 13:
82
+ _context.prev = 13;
83
+ _context.t0 = _context["catch"](7);
84
+ if (this.props.schema.error && this.props.schema.error[_context.t0.toString()]) {
85
+ window.alert(this.getText(this.props.schema.error[_context.t0.toString()]));
86
+ } else {
87
+ window.alert(_i18n["default"].t(_context.t0.toString()) || _i18n["default"].t('ra_Error'));
88
+ }
89
+ case 16:
90
+ case "end":
91
+ return _context.stop();
94
92
  }
95
93
  }, _callee, this, [[7, 13]]);
96
94
  }));
@@ -126,24 +124,22 @@ var ConfigSetState = /*#__PURE__*/function (_ConfigGeneric) {
126
124
  confirmDialog: false
127
125
  }, /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2() {
128
126
  return _regenerator["default"].wrap(function _callee2$(_context2) {
129
- while (1) {
130
- switch (_context2.prev = _context2.next) {
131
- case 0:
132
- _context2.t0 = isOk;
133
- if (!_context2.t0) {
134
- _context2.next = 5;
135
- break;
136
- }
137
- _context2.next = 4;
138
- return _this._onClick();
139
- case 4:
140
- _context2.t0 = _context2.sent;
141
- case 5:
142
- return _context2.abrupt("return", _context2.t0);
143
- case 6:
144
- case "end":
145
- return _context2.stop();
146
- }
127
+ while (1) switch (_context2.prev = _context2.next) {
128
+ case 0:
129
+ _context2.t0 = isOk;
130
+ if (!_context2.t0) {
131
+ _context2.next = 5;
132
+ break;
133
+ }
134
+ _context2.next = 4;
135
+ return _this._onClick();
136
+ case 4:
137
+ _context2.t0 = _context2.sent;
138
+ case 5:
139
+ return _context2.abrupt("return", _context2.t0);
140
+ case 6:
141
+ case "end":
142
+ return _context2.stop();
147
143
  }
148
144
  }, _callee2);
149
145
  })));
@@ -161,25 +157,23 @@ var ConfigSetState = /*#__PURE__*/function (_ConfigGeneric) {
161
157
  disabled: disabled,
162
158
  onClick: /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3() {
163
159
  return _regenerator["default"].wrap(function _callee3$(_context3) {
164
- while (1) {
165
- switch (_context3.prev = _context3.next) {
166
- case 0:
167
- if (!_this2.props.schema.confirm) {
168
- _context3.next = 4;
169
- break;
170
- }
171
- _this2.setState({
172
- confirmDialog: true
173
- });
174
- _context3.next = 6;
160
+ while (1) switch (_context3.prev = _context3.next) {
161
+ case 0:
162
+ if (!_this2.props.schema.confirm) {
163
+ _context3.next = 4;
175
164
  break;
176
- case 4:
177
- _context3.next = 6;
178
- return _this2._onClick();
179
- case 6:
180
- case "end":
181
- return _context3.stop();
182
- }
165
+ }
166
+ _this2.setState({
167
+ confirmDialog: true
168
+ });
169
+ _context3.next = 6;
170
+ break;
171
+ case 4:
172
+ _context3.next = 6;
173
+ return _this2._onClick();
174
+ case 6:
175
+ case "end":
176
+ return _context3.stop();
183
177
  }
184
178
  }, _callee3);
185
179
  }))
@@ -1 +1 @@
1
- {"version":3,"file":"ConfigSetState.js","names":["styles","theme","fullWidth","width","icon","height","marginRight","ConfigSetState","val","props","schema","includes","getPattern","socket","getObject","id","obj","common","type","parseFloat","setState","ack","okText","window","alert","getText","error","toString","I18n","t","state","confirmDialog","confirm","confirmData","title","text","ok","cancel","isOk","_onClick","disabled","defaultValue","variant","undefined","color","classes","label","noTranslation","ConfigGeneric","propTypes","PropTypes","object","isRequired","themeType","string","themeName","style","className","data","onError","func","onChange","adapterName","instance","number","commandRunning","bool","onCommandRunning","withStyles"],"sources":["JsonConfigComponent/ConfigSetState.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@mui/styles';\n\nimport Button from '@mui/material/Button';\n\nimport ConfigGeneric from './ConfigGeneric';\nimport IconWarning from '@mui/icons-material/Warning';\nimport IconError from '@mui/icons-material/Error';\nimport IconInfo from '@mui/icons-material/Info';\n\nimport I18n from './wrapper/i18n';\nimport Icon from './wrapper/Components/Icon';\nimport ConfirmDialog from './wrapper/Dialogs/Confirm';\n\nconst styles = theme => ({\n fullWidth: {\n width: '100%'\n },\n icon: {\n width: 24,\n height: 24,\n marginRight: 4\n }\n});\n\nclass ConfigSetState extends ConfigGeneric {\n async _onClick() {\n let val = this.props.schema.val;\n if (typeof val === 'string' && val.includes('${')) {\n val = this.getPattern(val);\n const obj = await this.props.socket.getObject(this.props.schema.id);\n if (obj?.common?.type === 'number') {\n val = parseFloat(val);\n } else if (obj?.common?.type === 'boolean') {\n val = val === 'true' || val === true || val === '1' || val === 1;\n }\n }\n\n try {\n await this.props.socket.setState(this.props.schema.id, {val, ack: !!this.props.schema.ack});\n this.props.schema.okText && window.alert(this.getText(this.props.schema.okText));\n } catch (e) {\n if (this.props.schema.error && this.props.schema.error[e.toString()]) {\n window.alert(this.getText(this.props.schema.error[e.toString()]));\n } else {\n window.alert(I18n.t(e.toString()) || I18n.t('ra_Error'));\n }\n }\n }\n\n renderConfirmDialog() {\n if (!this.state.confirmDialog) {\n return null;\n }\n const confirm = this.state.confirmData || this.props.schema.confirm;\n let icon = null;\n if (confirm.type === 'warning') {\n icon = <IconWarning />;\n } else if (confirm.type === 'error') {\n icon = <IconError />;\n } else if (confirm.type === 'info') {\n icon = <IconInfo />;\n }\n\n return <ConfirmDialog\n title={ this.getText(confirm.title) || I18n.t('ra_Please confirm') }\n text={ this.getText(confirm.text) }\n ok={ this.getText(confirm.ok) || I18n.t('ra_Ok') }\n cancel={ this.getText(confirm.cancel) || I18n.t('ra_Cancel') }\n icon={icon}\n onClose={isOk =>\n this.setState({ confirmDialog: false}, async () =>\n isOk && (await this._onClick()))\n }\n />;\n }\n\n renderItem(error, disabled, defaultValue) {\n return <Button\n variant={this.props.schema.variant || undefined}\n color={this.props.schema.color || 'grey'}\n className={this.props.classes.fullWidth}\n disabled={disabled}\n onClick={async () => {\n if (this.props.schema.confirm) {\n this.setState({confirmDialog: true});\n } else {\n await this._onClick();\n }\n }}\n >\n {this.props.schema.icon ? <Icon src={this.props.schema.icon} className={this.props.classes.icon}/> : null}\n {this.getText(this.props.schema.label, this.props.schema.noTranslation)}\n </Button>;\n }\n}\n\nConfigSetState.propTypes = {\n socket: PropTypes.object.isRequired,\n themeType: PropTypes.string,\n themeName: PropTypes.string,\n style: PropTypes.object,\n className: PropTypes.string,\n data: PropTypes.object.isRequired,\n schema: PropTypes.object,\n onError: PropTypes.func,\n onChange: PropTypes.func,\n adapterName: PropTypes.string,\n instance: PropTypes.number,\n commandRunning: PropTypes.bool,\n onCommandRunning: PropTypes.func,\n};\n\nexport default withStyles(styles)(ConfigSetState);"],"mappings":"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"}
1
+ {"version":3,"file":"ConfigSetState.js","names":["styles","theme","fullWidth","width","icon","height","marginRight","ConfigSetState","val","props","schema","includes","getPattern","socket","getObject","id","obj","common","type","parseFloat","setState","ack","okText","window","alert","getText","error","toString","I18n","t","state","confirmDialog","confirm","confirmData","title","text","ok","cancel","isOk","_onClick","disabled","defaultValue","variant","undefined","color","classes","label","noTranslation","ConfigGeneric","propTypes","PropTypes","object","isRequired","themeType","string","themeName","style","className","data","onError","func","onChange","adapterName","instance","number","commandRunning","bool","onCommandRunning","withStyles"],"sources":["JsonConfigComponent/ConfigSetState.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@mui/styles';\n\nimport Button from '@mui/material/Button';\n\nimport ConfigGeneric from './ConfigGeneric';\nimport IconWarning from '@mui/icons-material/Warning';\nimport IconError from '@mui/icons-material/Error';\nimport IconInfo from '@mui/icons-material/Info';\n\nimport I18n from './wrapper/i18n';\nimport Icon from './wrapper/Components/Icon';\nimport ConfirmDialog from './wrapper/Dialogs/Confirm';\n\nconst styles = theme => ({\n fullWidth: {\n width: '100%'\n },\n icon: {\n width: 24,\n height: 24,\n marginRight: 4\n }\n});\n\nclass ConfigSetState extends ConfigGeneric {\n async _onClick() {\n let val = this.props.schema.val;\n if (typeof val === 'string' && val.includes('${')) {\n val = this.getPattern(val);\n const obj = await this.props.socket.getObject(this.props.schema.id);\n if (obj?.common?.type === 'number') {\n val = parseFloat(val);\n } else if (obj?.common?.type === 'boolean') {\n val = val === 'true' || val === true || val === '1' || val === 1;\n }\n }\n\n try {\n await this.props.socket.setState(this.props.schema.id, {val, ack: !!this.props.schema.ack});\n this.props.schema.okText && window.alert(this.getText(this.props.schema.okText));\n } catch (e) {\n if (this.props.schema.error && this.props.schema.error[e.toString()]) {\n window.alert(this.getText(this.props.schema.error[e.toString()]));\n } else {\n window.alert(I18n.t(e.toString()) || I18n.t('ra_Error'));\n }\n }\n }\n\n renderConfirmDialog() {\n if (!this.state.confirmDialog) {\n return null;\n }\n const confirm = this.state.confirmData || this.props.schema.confirm;\n let icon = null;\n if (confirm.type === 'warning') {\n icon = <IconWarning />;\n } else if (confirm.type === 'error') {\n icon = <IconError />;\n } else if (confirm.type === 'info') {\n icon = <IconInfo />;\n }\n\n return <ConfirmDialog\n title={ this.getText(confirm.title) || I18n.t('ra_Please confirm') }\n text={ this.getText(confirm.text) }\n ok={ this.getText(confirm.ok) || I18n.t('ra_Ok') }\n cancel={ this.getText(confirm.cancel) || I18n.t('ra_Cancel') }\n icon={icon}\n onClose={isOk =>\n this.setState({ confirmDialog: false}, async () =>\n isOk && (await this._onClick()))\n }\n />;\n }\n\n renderItem(error, disabled, defaultValue) {\n return <Button\n variant={this.props.schema.variant || undefined}\n color={this.props.schema.color || 'grey'}\n className={this.props.classes.fullWidth}\n disabled={disabled}\n onClick={async () => {\n if (this.props.schema.confirm) {\n this.setState({confirmDialog: true});\n } else {\n await this._onClick();\n }\n }}\n >\n {this.props.schema.icon ? <Icon src={this.props.schema.icon} className={this.props.classes.icon}/> : null}\n {this.getText(this.props.schema.label, this.props.schema.noTranslation)}\n </Button>;\n }\n}\n\nConfigSetState.propTypes = {\n socket: PropTypes.object.isRequired,\n themeType: PropTypes.string,\n themeName: PropTypes.string,\n style: PropTypes.object,\n className: PropTypes.string,\n data: PropTypes.object.isRequired,\n schema: PropTypes.object,\n onError: PropTypes.func,\n onChange: PropTypes.func,\n adapterName: PropTypes.string,\n instance: PropTypes.number,\n commandRunning: PropTypes.bool,\n onCommandRunning: PropTypes.func,\n};\n\nexport default withStyles(styles)(ConfigSetState);"],"mappings":"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"}
@@ -287,29 +287,27 @@ var ConfigTable = /*#__PURE__*/function (_ConfigGeneric) {
287
287
  var _componentDidMount = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
288
288
  var value;
289
289
  return _regenerator["default"].wrap(function _callee$(_context) {
290
- while (1) {
291
- switch (_context.prev = _context.next) {
292
- case 0:
293
- (0, _get2["default"])((0, _getPrototypeOf2["default"])(ConfigTable.prototype), "componentDidMount", this).call(this);
294
- value = _ConfigGeneric2["default"].getValue(this.props.data, this.props.attr) || []; // if the list is given as an object
295
- if (this.props.schema.objKeyName) {
296
- value = objectToArray(value, this.props.schema.objKeyName, this.props.schema.objValueName);
297
- }
298
- if (!Array.isArray(value)) {
299
- value = [];
300
- }
301
- this.setState({
302
- value: value,
303
- visibleValue: null,
304
- orderBy: /*this.props.schema.items.length ? this.props.schema.items[0].attr : */'',
305
- order: 'asc',
306
- iteration: 0,
307
- filterOn: []
308
- });
309
- case 5:
310
- case "end":
311
- return _context.stop();
312
- }
290
+ while (1) switch (_context.prev = _context.next) {
291
+ case 0:
292
+ (0, _get2["default"])((0, _getPrototypeOf2["default"])(ConfigTable.prototype), "componentDidMount", this).call(this);
293
+ value = _ConfigGeneric2["default"].getValue(this.props.data, this.props.attr) || []; // if the list is given as an object
294
+ if (this.props.schema.objKeyName) {
295
+ value = objectToArray(value, this.props.schema.objKeyName, this.props.schema.objValueName);
296
+ }
297
+ if (!Array.isArray(value)) {
298
+ value = [];
299
+ }
300
+ this.setState({
301
+ value: value,
302
+ visibleValue: null,
303
+ orderBy: /*this.props.schema.items.length ? this.props.schema.items[0].attr : */'',
304
+ order: 'asc',
305
+ iteration: 0,
306
+ filterOn: []
307
+ });
308
+ case 5:
309
+ case "end":
310
+ return _context.stop();
313
311
  }
314
312
  }, _callee, this);
315
313
  }));