@iobroker/adapter-react-v5 3.1.3 → 3.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (69) hide show
  1. package/Components/FileBrowser.js +277 -237
  2. package/Components/FileBrowser.js.map +1 -1
  3. package/Components/FileViewer.js +3 -1
  4. package/Components/FileViewer.js.map +1 -1
  5. package/Components/JsonConfigComponent/ConfigAutocomplete.js +5 -3
  6. package/Components/JsonConfigComponent/ConfigAutocomplete.js.map +1 -1
  7. package/Components/JsonConfigComponent/ConfigAutocompleteSendTo.js +5 -3
  8. package/Components/JsonConfigComponent/ConfigAutocompleteSendTo.js.map +1 -1
  9. package/Components/JsonConfigComponent/ConfigCertificateSelect.js +16 -2
  10. package/Components/JsonConfigComponent/ConfigCertificateSelect.js.map +1 -1
  11. package/Components/JsonConfigComponent/ConfigCustom.js +148 -25
  12. package/Components/JsonConfigComponent/ConfigCustom.js.map +1 -1
  13. package/Components/JsonConfigComponent/ConfigGeneric.js +105 -20
  14. package/Components/JsonConfigComponent/ConfigGeneric.js.map +1 -1
  15. package/Components/JsonConfigComponent/ConfigInstanceSelect.js +132 -46
  16. package/Components/JsonConfigComponent/ConfigInstanceSelect.js.map +1 -1
  17. package/Components/JsonConfigComponent/ConfigLanguage.js +25 -1
  18. package/Components/JsonConfigComponent/ConfigLanguage.js.map +1 -1
  19. package/Components/JsonConfigComponent/ConfigNumber.js +5 -4
  20. package/Components/JsonConfigComponent/ConfigNumber.js.map +1 -1
  21. package/Components/JsonConfigComponent/ConfigObjectId.js +3 -2
  22. package/Components/JsonConfigComponent/ConfigObjectId.js.map +1 -1
  23. package/Components/JsonConfigComponent/ConfigPanel.js +51 -40
  24. package/Components/JsonConfigComponent/ConfigPanel.js.map +1 -1
  25. package/Components/JsonConfigComponent/ConfigPattern.js +1 -1
  26. package/Components/JsonConfigComponent/ConfigPattern.js.map +1 -1
  27. package/Components/JsonConfigComponent/ConfigSelect.js +4 -2
  28. package/Components/JsonConfigComponent/ConfigSelect.js.map +1 -1
  29. package/Components/JsonConfigComponent/ConfigSendto.js +2 -2
  30. package/Components/JsonConfigComponent/ConfigSendto.js.map +1 -1
  31. package/Components/JsonConfigComponent/ConfigSetState.js +2 -2
  32. package/Components/JsonConfigComponent/ConfigSetState.js.map +1 -1
  33. package/Components/JsonConfigComponent/ConfigStaticHeader.js +31 -8
  34. package/Components/JsonConfigComponent/ConfigStaticHeader.js.map +1 -1
  35. package/Components/JsonConfigComponent/ConfigStaticImage.js +1 -1
  36. package/Components/JsonConfigComponent/ConfigStaticImage.js.map +1 -1
  37. package/Components/JsonConfigComponent/ConfigTable.js +1 -1
  38. package/Components/JsonConfigComponent/ConfigTable.js.map +1 -1
  39. package/Components/JsonConfigComponent/ConfigTabs.js +12 -3
  40. package/Components/JsonConfigComponent/ConfigTabs.js.map +1 -1
  41. package/Components/JsonConfigComponent/ConfigText.js +4 -2
  42. package/Components/JsonConfigComponent/ConfigText.js.map +1 -1
  43. package/Components/JsonConfigComponent/ConfigTopic.js.map +1 -1
  44. package/Components/JsonConfigComponent/index.js +12 -4
  45. package/Components/JsonConfigComponent/index.js.map +1 -1
  46. package/Components/ObjectBrowser.js +228 -222
  47. package/Components/ObjectBrowser.js.map +1 -1
  48. package/Components/TableResize.js +34 -16
  49. package/Components/TableResize.js.map +1 -1
  50. package/Components/TreeTable.js +2 -2
  51. package/Components/TreeTable.js.map +1 -1
  52. package/Components/Utils.js +5 -5
  53. package/Components/Utils.js.map +1 -1
  54. package/Dialogs/Confirm.js +3 -3
  55. package/Dialogs/Confirm.js.map +1 -1
  56. package/Dialogs/FileSelect.js +259 -0
  57. package/Dialogs/FileSelect.js.map +1 -0
  58. package/Dialogs/SelectID.js +15 -16
  59. package/Dialogs/SelectID.js.map +1 -1
  60. package/README.md +3 -0
  61. package/package.json +1 -1
  62. package/GenericApp.js +0 -1025
  63. package/GenericApp.js.map +0 -1
  64. package/Prompt.js +0 -21
  65. package/Prompt.js.map +0 -1
  66. package/Theme.js +0 -422
  67. package/Theme.js.map +0 -1
  68. package/i18n.js +0 -180
  69. package/i18n.js.map +0 -1
@@ -37,6 +37,8 @@ var _FormControl = _interopRequireDefault(require("@mui/material/FormControl"));
37
37
 
38
38
  var _Select = _interopRequireDefault(require("@mui/material/Select"));
39
39
 
40
+ var _i18n = _interopRequireDefault(require("../../i18n"));
41
+
40
42
  var _ConfigGeneric2 = _interopRequireDefault(require("./ConfigGeneric"));
41
43
 
42
44
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
@@ -73,7 +75,7 @@ var ConfigSelect = /*#__PURE__*/function (_ConfigGeneric) {
73
75
  if (Array.isArray(value)) {
74
76
  this.initialValue = (0, _toConsumableArray2["default"])(value);
75
77
  selectOptions.unshift({
76
- label: _ConfigGeneric2["default"].DIFFERENT_LABEL,
78
+ label: _i18n["default"].t(_ConfigGeneric2["default"].DIFFERENT_LABEL),
77
79
  value: _ConfigGeneric2["default"].DIFFERENT_VALUE
78
80
  });
79
81
  this.setState({
@@ -113,7 +115,7 @@ var ConfigSelect = /*#__PURE__*/function (_ConfigGeneric) {
113
115
  return /*#__PURE__*/_react["default"].createElement(_FormControl["default"], {
114
116
  variant: "standard",
115
117
  className: this.props.classes.fullWidth,
116
- id: "jsonSelect_".concat(this.props.schema.attr, "_").concat(this.props.index)
118
+ id: "jsonSelect_".concat(this.props.schema.attr, "_").concat(this.props.index || this.props.index === 0 ? this.props.index : '')
117
119
  }, /*#__PURE__*/_react["default"].createElement(_InputLabel["default"], null, this.getText(this.props.schema.label)), /*#__PURE__*/_react["default"].createElement(_Select["default"], {
118
120
  variant: "standard",
119
121
  error: !!error,
@@ -1 +1 @@
1
- {"version":3,"file":"ConfigSelect.js","names":["styles","theme","fullWidth","width","ConfigSelect","value","ConfigGeneric","getValue","props","data","attr","selectOptions","JSON","parse","stringify","schema","options","Array","isArray","initialValue","unshift","label","DIFFERENT_LABEL","DIFFERENT_VALUE","setState","error","disabled","defaultValue","state","filter","item","hidden","custom","executeCustom","customObj","instanceObj","arrayIndex","globalData","execute","find","classes","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 ConfigGeneric from './ConfigGeneric';\n\nconst styles = theme => ({\n fullWidth: {\n width: '100%'\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: 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 variant=\"standard\" className={this.props.classes.fullWidth} id={`jsonSelect_${this.props.schema.attr}_${this.props.index}`}>\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":"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"}
1
+ {"version":3,"file":"ConfigSelect.js","names":["styles","theme","fullWidth","width","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","classes","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 '../../i18n';\nimport ConfigGeneric from './ConfigGeneric';\n\nconst styles = theme => ({\n fullWidth: {\n width: '100%'\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 variant=\"standard\" className={this.props.classes.fullWidth} id={`jsonSelect_${this.props.schema.attr}_${this.props.index || this.props.index === 0 ? this.props.index : ''}`}>\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":"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"}
@@ -37,6 +37,8 @@ var _Error = _interopRequireDefault(require("../../Dialogs/Error"));
37
37
 
38
38
  var _Message = _interopRequireDefault(require("../../Dialogs/Message"));
39
39
 
40
+ var _Confirm = _interopRequireDefault(require("../../Dialogs/Confirm"));
41
+
40
42
  var _ConfigGeneric2 = _interopRequireDefault(require("./ConfigGeneric"));
41
43
 
42
44
  var _Warning = _interopRequireDefault(require("@mui/icons-material/Warning"));
@@ -45,8 +47,6 @@ var _Error2 = _interopRequireDefault(require("@mui/icons-material/Error"));
45
47
 
46
48
  var _Info = _interopRequireDefault(require("@mui/icons-material/Info"));
47
49
 
48
- var _Confirm = _interopRequireDefault(require("../../Dialogs/Confirm"));
49
-
50
50
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
51
51
 
52
52
  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; } }
@@ -1 +1 @@
1
- {"version":3,"file":"ConfigSendto.js","names":["styles","theme","fullWidth","width","icon","height","marginRight","ConfigSendto","setState","_error","_message","state","undefined","props","onCommandRunning","data","schema","jsonData","getPattern","JSON","parse","e","console","error","socket","sendTo","adapterName","instance","command","then","response","getText","args","forEach","arg","replace","I18n","t","result","text","window","alert","stringify","toString","confirmDialog","confirm","confirmData","type","title","ok","cancel","isOk","_onClick","disabled","defaultValue","classes","variant","color","label","noTranslation","renderErrorDialog","renderMessageDialog","ConfigGeneric","propTypes","PropTypes","object","isRequired","themeType","string","themeName","style","className","onError","func","onChange","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 from '@mui/material/Button';\n\nimport I18n from '../../i18n';\nimport Icon from '../Icon';\nimport DialogError from '../../Dialogs/Error';\nimport DialogMessage from '../../Dialogs/Message';\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';\nimport ConfirmDialog from '../../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 ConfigSendto extends ConfigGeneric {\n componentDidMount() {\n super.componentDidMount();\n\n this.setState( {_error: '', _message: ''});\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({_error: ''})} />;\n } else {\n return null;\n }\n }\n\n _onClick() {\n this.props.onCommandRunning(true);\n\n let data = this.props.schema.data;\n if (data === undefined && this.props.schema.jsonData) {\n data = this.getPattern(this.props.schema.jsonData, {}, this.props.data);\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\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?.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 } 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 })\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(() => this.props.onCommandRunning(false))\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}, () =>\n isOk && this._onClick())\n }\n />;\n }\n\n renderItem(error, disabled, defaultValue) {\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 onClick={() => {\n if (this.props.schema.confirm) {\n this.setState({confirmDialog: true});\n } else {\n 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 {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","theme","fullWidth","width","icon","height","marginRight","ConfigSendto","setState","_error","_message","state","undefined","props","onCommandRunning","data","schema","jsonData","getPattern","JSON","parse","e","console","error","socket","sendTo","adapterName","instance","command","then","response","getText","args","forEach","arg","replace","I18n","t","result","text","window","alert","stringify","toString","confirmDialog","confirm","confirmData","type","title","ok","cancel","isOk","_onClick","disabled","defaultValue","classes","variant","color","label","noTranslation","renderErrorDialog","renderMessageDialog","ConfigGeneric","propTypes","PropTypes","object","isRequired","themeType","string","themeName","style","className","onError","func","onChange","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 from '@mui/material/Button';\n\nimport I18n from '../../i18n';\nimport Icon from '../Icon';\nimport DialogError from '../../Dialogs/Error';\nimport DialogMessage from '../../Dialogs/Message';\nimport ConfirmDialog from '../../Dialogs/Confirm';\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\nconst styles = theme => ({\n fullWidth: {\n width: '100%'\n },\n icon: {\n width: 24,\n height: 24,\n marginRight: 4\n }\n});\n\nclass ConfigSendto extends ConfigGeneric {\n componentDidMount() {\n super.componentDidMount();\n\n this.setState( {_error: '', _message: ''});\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({_error: ''})} />;\n } else {\n return null;\n }\n }\n\n _onClick() {\n this.props.onCommandRunning(true);\n\n let data = this.props.schema.data;\n if (data === undefined && this.props.schema.jsonData) {\n data = this.getPattern(this.props.schema.jsonData, {}, this.props.data);\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\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?.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 } 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 })\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(() => this.props.onCommandRunning(false))\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}, () =>\n isOk && this._onClick())\n }\n />;\n }\n\n renderItem(error, disabled, defaultValue) {\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 onClick={() => {\n if (this.props.schema.confirm) {\n this.setState({confirmDialog: true});\n } else {\n 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 {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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"}
@@ -33,6 +33,8 @@ var _i18n = _interopRequireDefault(require("../../i18n"));
33
33
 
34
34
  var _Icon = _interopRequireDefault(require("../Icon"));
35
35
 
36
+ var _Confirm = _interopRequireDefault(require("../../Dialogs/Confirm"));
37
+
36
38
  var _ConfigGeneric2 = _interopRequireDefault(require("./ConfigGeneric"));
37
39
 
38
40
  var _Warning = _interopRequireDefault(require("@mui/icons-material/Warning"));
@@ -41,8 +43,6 @@ var _Error = _interopRequireDefault(require("@mui/icons-material/Error"));
41
43
 
42
44
  var _Info = _interopRequireDefault(require("@mui/icons-material/Info"));
43
45
 
44
- var _Confirm = _interopRequireDefault(require("../../Dialogs/Confirm"));
45
-
46
46
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
47
47
 
48
48
  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; } }
@@ -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 I18n from '../../i18n';\nimport Icon from '../Icon';\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';\nimport ConfirmDialog from '../../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 I18n from '../../i18n';\nimport Icon from '../Icon';\nimport ConfirmDialog from '../../Dialogs/Confirm';\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\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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"}
@@ -23,8 +23,6 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
23
23
 
24
24
  var _styles = require("@mui/styles");
25
25
 
26
- var _material = require("@mui/material");
27
-
28
26
  var _ConfigGeneric2 = _interopRequireDefault(require("./ConfigGeneric"));
29
27
 
30
28
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
@@ -37,8 +35,10 @@ var styles = function styles(theme) {
37
35
  width: '100%',
38
36
  background: theme.palette.primary.main,
39
37
  color: theme.palette.primary.contrastText,
40
- padding: 4,
41
- borderRadius: 3
38
+ padding: '4px !important',
39
+ borderRadius: 3,
40
+ marginBlockEnd: 0,
41
+ marginBlockStart: 0
42
42
  }
43
43
  };
44
44
  };
@@ -56,10 +56,33 @@ var ConfigStaticHeader = /*#__PURE__*/function (_ConfigGeneric) {
56
56
  (0, _createClass2["default"])(ConfigStaticHeader, [{
57
57
  key: "renderItem",
58
58
  value: function renderItem() {
59
- return /*#__PURE__*/_react["default"].createElement(_material.Typography, {
60
- className: this.props.classes.header,
61
- component: this.props.schema.size ? 'h' + this.props.schema.size : 'h5'
62
- }, this.getText(this.props.schema.text, this.props.schema.noTranslation));
59
+ switch ((this.props.schema.size || 5).toString()) {
60
+ case '1':
61
+ return /*#__PURE__*/_react["default"].createElement("h1", {
62
+ className: this.props.classes.header
63
+ }, this.getText(this.props.schema.text, this.props.schema.noTranslation));
64
+
65
+ case '2':
66
+ return /*#__PURE__*/_react["default"].createElement("h2", {
67
+ className: this.props.classes.header
68
+ }, this.getText(this.props.schema.text, this.props.schema.noTranslation));
69
+
70
+ case '3':
71
+ return /*#__PURE__*/_react["default"].createElement("h3", {
72
+ className: this.props.classes.header
73
+ }, this.getText(this.props.schema.text, this.props.schema.noTranslation));
74
+
75
+ case '4':
76
+ return /*#__PURE__*/_react["default"].createElement("h4", {
77
+ className: this.props.classes.header
78
+ }, this.getText(this.props.schema.text, this.props.schema.noTranslation));
79
+
80
+ case '5':
81
+ default:
82
+ return /*#__PURE__*/_react["default"].createElement("h5", {
83
+ className: this.props.classes.header
84
+ }, this.getText(this.props.schema.text, this.props.schema.noTranslation));
85
+ }
63
86
  }
64
87
  }]);
65
88
  return ConfigStaticHeader;
@@ -1 +1 @@
1
- {"version":3,"file":"ConfigStaticHeader.js","names":["styles","theme","header","width","background","palette","primary","main","color","contrastText","padding","borderRadius","ConfigStaticHeader","props","classes","schema","size","getText","text","noTranslation","ConfigGeneric","propTypes","socket","PropTypes","object","isRequired","themeType","string","themeName","style","className","data","onError","func","onChange","withStyles"],"sources":["JsonConfigComponent/ConfigStaticHeader.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@mui/styles';\n\nimport {Typography} from '@mui/material';\n\nimport ConfigGeneric from './ConfigGeneric';\n\nconst styles = theme => ({\n header: {\n width: '100%',\n background: theme.palette.primary.main,\n color: theme.palette.primary.contrastText,\n padding: 4,\n borderRadius: 3\n },\n});\n\nclass ConfigStaticHeader extends ConfigGeneric {\n renderItem() {\n return <Typography\n className={this.props.classes.header}\n component={this.props.schema.size ? 'h' + this.props.schema.size : 'h5'}\n >\n {this.getText(this.props.schema.text, this.props.schema.noTranslation)}\n </Typography>;\n }\n}\n\nConfigStaticHeader.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)(ConfigStaticHeader);"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AAEA;;AAEA;;;;;;AAEA,IAAMA,MAAM,GAAG,SAATA,MAAS,CAAAC,KAAK;EAAA,OAAK;IACrBC,MAAM,EAAE;MACJC,KAAK,EAAE,MADH;MAEJC,UAAU,EAAEH,KAAK,CAACI,OAAN,CAAcC,OAAd,CAAsBC,IAF9B;MAGJC,KAAK,EAAEP,KAAK,CAACI,OAAN,CAAcC,OAAd,CAAsBG,YAHzB;MAIJC,OAAO,EAAE,CAJL;MAKJC,YAAY,EAAE;IALV;EADa,CAAL;AAAA,CAApB;;IAUMC,kB;;;;;;;;;;;;WACF,sBAAa;MACT,oBAAO,gCAAC,oBAAD;QACH,SAAS,EAAE,KAAKC,KAAL,CAAWC,OAAX,CAAmBZ,MAD3B;QAEH,SAAS,EAAE,KAAKW,KAAL,CAAWE,MAAX,CAAkBC,IAAlB,GAAyB,MAAM,KAAKH,KAAL,CAAWE,MAAX,CAAkBC,IAAjD,GAAwD;MAFhE,GAIF,KAAKC,OAAL,CAAa,KAAKJ,KAAL,CAAWE,MAAX,CAAkBG,IAA/B,EAAqC,KAAKL,KAAL,CAAWE,MAAX,CAAkBI,aAAvD,CAJE,CAAP;IAMH;;;EAR4BC,0B;;AAWjCR,kBAAkB,CAACS,SAAnB,GAA+B;EAC3BC,MAAM,EAAEC,qBAAA,CAAUC,MAAV,CAAiBC,UADE;EAE3BC,SAAS,EAAEH,qBAAA,CAAUI,MAFM;EAG3BC,SAAS,EAAEL,qBAAA,CAAUI,MAHM;EAI3BE,KAAK,EAAEN,qBAAA,CAAUC,MAJU;EAK3BM,SAAS,EAAEP,qBAAA,CAAUI,MALM;EAM3BI,IAAI,EAAER,qBAAA,CAAUC,MAAV,CAAiBC,UANI;EAO3BV,MAAM,EAAEQ,qBAAA,CAAUC,MAPS;EAQ3BQ,OAAO,EAAET,qBAAA,CAAUU,IARQ;EAS3BC,QAAQ,EAAEX,qBAAA,CAAUU;AATO,CAA/B;;eAYe,IAAAE,kBAAA,EAAWnC,MAAX,EAAmBY,kBAAnB,C"}
1
+ {"version":3,"file":"ConfigStaticHeader.js","names":["styles","theme","header","width","background","palette","primary","main","color","contrastText","padding","borderRadius","marginBlockEnd","marginBlockStart","ConfigStaticHeader","props","schema","size","toString","classes","getText","text","noTranslation","ConfigGeneric","propTypes","socket","PropTypes","object","isRequired","themeType","string","themeName","style","className","data","onError","func","onChange","withStyles"],"sources":["JsonConfigComponent/ConfigStaticHeader.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@mui/styles';\n\nimport ConfigGeneric from './ConfigGeneric';\n\nconst styles = theme => ({\n header: {\n width: '100%',\n background: theme.palette.primary.main,\n color: theme.palette.primary.contrastText,\n padding: '4px !important',\n borderRadius: 3,\n marginBlockEnd: 0,\n marginBlockStart: 0,\n },\n});\n\nclass ConfigStaticHeader extends ConfigGeneric {\n renderItem() {\n switch ((this.props.schema.size || 5).toString()) {\n case '1':\n return <h1 className={this.props.classes.header}>\n {this.getText(this.props.schema.text, this.props.schema.noTranslation)}\n </h1>;\n\n case '2':\n return <h2 className={this.props.classes.header}>\n {this.getText(this.props.schema.text, this.props.schema.noTranslation)}\n </h2>;\n\n case '3':\n return <h3 className={this.props.classes.header}>\n {this.getText(this.props.schema.text, this.props.schema.noTranslation)}\n </h3>;\n\n case '4':\n return <h4 className={this.props.classes.header}>\n {this.getText(this.props.schema.text, this.props.schema.noTranslation)}\n </h4>;\n\n case '5':\n default:\n return <h5 className={this.props.classes.header}>\n {this.getText(this.props.schema.text, this.props.schema.noTranslation)}\n </h5>;\n }\n }\n}\n\nConfigStaticHeader.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)(ConfigStaticHeader);"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AAEA;;;;;;AAEA,IAAMA,MAAM,GAAG,SAATA,MAAS,CAAAC,KAAK;EAAA,OAAK;IACrBC,MAAM,EAAE;MACJC,KAAK,EAAE,MADH;MAEJC,UAAU,EAAEH,KAAK,CAACI,OAAN,CAAcC,OAAd,CAAsBC,IAF9B;MAGJC,KAAK,EAAEP,KAAK,CAACI,OAAN,CAAcC,OAAd,CAAsBG,YAHzB;MAIJC,OAAO,EAAE,gBAJL;MAKJC,YAAY,EAAE,CALV;MAMJC,cAAc,EAAE,CANZ;MAOJC,gBAAgB,EAAE;IAPd;EADa,CAAL;AAAA,CAApB;;IAYMC,kB;;;;;;;;;;;;WACF,sBAAa;MACT,QAAQ,CAAC,KAAKC,KAAL,CAAWC,MAAX,CAAkBC,IAAlB,IAA0B,CAA3B,EAA8BC,QAA9B,EAAR;QACI,KAAK,GAAL;UACI,oBAAO;YAAI,SAAS,EAAE,KAAKH,KAAL,CAAWI,OAAX,CAAmBjB;UAAlC,GACF,KAAKkB,OAAL,CAAa,KAAKL,KAAL,CAAWC,MAAX,CAAkBK,IAA/B,EAAqC,KAAKN,KAAL,CAAWC,MAAX,CAAkBM,aAAvD,CADE,CAAP;;QAIJ,KAAK,GAAL;UACI,oBAAO;YAAI,SAAS,EAAE,KAAKP,KAAL,CAAWI,OAAX,CAAmBjB;UAAlC,GACF,KAAKkB,OAAL,CAAa,KAAKL,KAAL,CAAWC,MAAX,CAAkBK,IAA/B,EAAqC,KAAKN,KAAL,CAAWC,MAAX,CAAkBM,aAAvD,CADE,CAAP;;QAIJ,KAAK,GAAL;UACI,oBAAO;YAAI,SAAS,EAAE,KAAKP,KAAL,CAAWI,OAAX,CAAmBjB;UAAlC,GACF,KAAKkB,OAAL,CAAa,KAAKL,KAAL,CAAWC,MAAX,CAAkBK,IAA/B,EAAqC,KAAKN,KAAL,CAAWC,MAAX,CAAkBM,aAAvD,CADE,CAAP;;QAIJ,KAAK,GAAL;UACI,oBAAO;YAAI,SAAS,EAAE,KAAKP,KAAL,CAAWI,OAAX,CAAmBjB;UAAlC,GACF,KAAKkB,OAAL,CAAa,KAAKL,KAAL,CAAWC,MAAX,CAAkBK,IAA/B,EAAqC,KAAKN,KAAL,CAAWC,MAAX,CAAkBM,aAAvD,CADE,CAAP;;QAIJ,KAAK,GAAL;QACA;UACI,oBAAO;YAAI,SAAS,EAAE,KAAKP,KAAL,CAAWI,OAAX,CAAmBjB;UAAlC,GACF,KAAKkB,OAAL,CAAa,KAAKL,KAAL,CAAWC,MAAX,CAAkBK,IAA/B,EAAqC,KAAKN,KAAL,CAAWC,MAAX,CAAkBM,aAAvD,CADE,CAAP;MAvBR;IA2BH;;;EA7B4BC,0B;;AAgCjCT,kBAAkB,CAACU,SAAnB,GAA+B;EAC3BC,MAAM,EAAEC,qBAAA,CAAUC,MAAV,CAAiBC,UADE;EAE3BC,SAAS,EAAEH,qBAAA,CAAUI,MAFM;EAG3BC,SAAS,EAAEL,qBAAA,CAAUI,MAHM;EAI3BE,KAAK,EAAEN,qBAAA,CAAUC,MAJU;EAK3BM,SAAS,EAAEP,qBAAA,CAAUI,MALM;EAM3BI,IAAI,EAAER,qBAAA,CAAUC,MAAV,CAAiBC,UANI;EAO3BZ,MAAM,EAAEU,qBAAA,CAAUC,MAPS;EAQ3BQ,OAAO,EAAET,qBAAA,CAAUU,IARQ;EAS3BC,QAAQ,EAAEX,qBAAA,CAAUU;AATO,CAA/B;;eAYe,IAAAE,kBAAA,EAAWtC,MAAX,EAAmBc,kBAAnB,C"}
@@ -55,7 +55,7 @@ var ConfigStaticImage = /*#__PURE__*/function (_ConfigGeneric) {
55
55
 
56
56
  var src = this.props.schema.src;
57
57
 
58
- if (src && !src.startsWith('.') && !src.startsWith('http')) {
58
+ if (src && !src.startsWith('.') && !src.startsWith('http') && !src.startsWith("adapter/".concat(this.props.adapterName, "/")) && !src.startsWith("./adapter/".concat(this.props.adapterName, "/"))) {
59
59
  src = "adapter/".concat(this.props.adapterName, "/").concat(src);
60
60
  }
61
61
 
@@ -1 +1 @@
1
- {"version":3,"file":"ConfigStaticImage.js","names":["styles","theme","fullWidth","height","width","ConfigStaticImage","src","props","schema","startsWith","adapterName","classes","href","window","open","ConfigGeneric","propTypes","socket","PropTypes","object","isRequired","themeType","string","themeName","style","className","data","onError","func","onChange","withStyles"],"sources":["JsonConfigComponent/ConfigStaticImage.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@mui/styles';\n\nimport ConfigGeneric from './ConfigGeneric';\n\nconst styles = theme => ({\n fullWidth: {\n height: '100%',\n width: '100%',\n }\n});\n\nclass ConfigStaticImage extends ConfigGeneric {\n renderItem() {\n let src = this.props.schema.src;\n if (src && !src.startsWith('.') && !src.startsWith('http')) {\n src = `adapter/${this.props.adapterName}/${src}`;\n }\n\n return <img\n className={this.props.classes.fullWidth}\n src={src}\n onClick={this.props.schema.href ? () => this.props.schema.href && window.open(this.props.schema.href, '_blank') : null}\n alt=\"\"\n />;\n }\n}\n\nConfigStaticImage.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)(ConfigStaticImage);"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AAEA;;;;;;AAEA,IAAMA,MAAM,GAAG,SAATA,MAAS,CAAAC,KAAK;EAAA,OAAK;IACrBC,SAAS,EAAE;MACPC,MAAM,EAAE,MADD;MAEPC,KAAK,EAAE;IAFA;EADU,CAAL;AAAA,CAApB;;IAOMC,iB;;;;;;;;;;;;WACF,sBAAa;MAAA;;MACT,IAAIC,GAAG,GAAG,KAAKC,KAAL,CAAWC,MAAX,CAAkBF,GAA5B;;MACA,IAAIA,GAAG,IAAI,CAACA,GAAG,CAACG,UAAJ,CAAe,GAAf,CAAR,IAA+B,CAACH,GAAG,CAACG,UAAJ,CAAe,MAAf,CAApC,EAA4D;QACxDH,GAAG,qBAAc,KAAKC,KAAL,CAAWG,WAAzB,cAAwCJ,GAAxC,CAAH;MACH;;MAED,oBAAO;QACH,SAAS,EAAE,KAAKC,KAAL,CAAWI,OAAX,CAAmBT,SAD3B;QAEH,GAAG,EAAEI,GAFF;QAGH,OAAO,EAAE,KAAKC,KAAL,CAAWC,MAAX,CAAkBI,IAAlB,GAAyB;UAAA,OAAM,KAAI,CAACL,KAAL,CAAWC,MAAX,CAAkBI,IAAlB,IAA0BC,MAAM,CAACC,IAAP,CAAY,KAAI,CAACP,KAAL,CAAWC,MAAX,CAAkBI,IAA9B,EAAoC,QAApC,CAAhC;QAAA,CAAzB,GAAyG,IAH/G;QAIH,GAAG,EAAC;MAJD,EAAP;IAMH;;;EAb2BG,0B;;AAgBhCV,iBAAiB,CAACW,SAAlB,GAA8B;EAC1BC,MAAM,EAAEC,qBAAA,CAAUC,MAAV,CAAiBC,UADC;EAE1BC,SAAS,EAAEH,qBAAA,CAAUI,MAFK;EAG1BC,SAAS,EAAEL,qBAAA,CAAUI,MAHK;EAI1BE,KAAK,EAAEN,qBAAA,CAAUC,MAJS;EAK1BM,SAAS,EAAEP,qBAAA,CAAUI,MALK;EAM1BI,IAAI,EAAER,qBAAA,CAAUC,MAAV,CAAiBC,UANG;EAO1BZ,MAAM,EAAEU,qBAAA,CAAUC,MAPQ;EAQ1BQ,OAAO,EAAET,qBAAA,CAAUU,IARO;EAS1BC,QAAQ,EAAEX,qBAAA,CAAUU;AATM,CAA9B;;eAYe,IAAAE,kBAAA,EAAW9B,MAAX,EAAmBK,iBAAnB,C"}
1
+ {"version":3,"file":"ConfigStaticImage.js","names":["styles","theme","fullWidth","height","width","ConfigStaticImage","src","props","schema","startsWith","adapterName","classes","href","window","open","ConfigGeneric","propTypes","socket","PropTypes","object","isRequired","themeType","string","themeName","style","className","data","onError","func","onChange","withStyles"],"sources":["JsonConfigComponent/ConfigStaticImage.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@mui/styles';\n\nimport ConfigGeneric from './ConfigGeneric';\n\nconst styles = theme => ({\n fullWidth: {\n height: '100%',\n width: '100%',\n }\n});\n\nclass ConfigStaticImage extends ConfigGeneric {\n renderItem() {\n let src = this.props.schema.src;\n if (src && !src.startsWith('.') &&\n !src.startsWith('http') &&\n !src.startsWith(`adapter/${this.props.adapterName}/`) &&\n !src.startsWith(`./adapter/${this.props.adapterName}/`)\n ) {\n src = `adapter/${this.props.adapterName}/${src}`;\n }\n\n return <img\n className={this.props.classes.fullWidth}\n src={src}\n onClick={this.props.schema.href ? () => this.props.schema.href && window.open(this.props.schema.href, '_blank') : null}\n alt=\"\"\n />;\n }\n}\n\nConfigStaticImage.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)(ConfigStaticImage);"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AAEA;;;;;;AAEA,IAAMA,MAAM,GAAG,SAATA,MAAS,CAAAC,KAAK;EAAA,OAAK;IACrBC,SAAS,EAAE;MACPC,MAAM,EAAE,MADD;MAEPC,KAAK,EAAE;IAFA;EADU,CAAL;AAAA,CAApB;;IAOMC,iB;;;;;;;;;;;;WACF,sBAAa;MAAA;;MACT,IAAIC,GAAG,GAAG,KAAKC,KAAL,CAAWC,MAAX,CAAkBF,GAA5B;;MACA,IAAIA,GAAG,IAAI,CAACA,GAAG,CAACG,UAAJ,CAAe,GAAf,CAAR,IACA,CAACH,GAAG,CAACG,UAAJ,CAAe,MAAf,CADD,IAEA,CAACH,GAAG,CAACG,UAAJ,mBAA0B,KAAKF,KAAL,CAAWG,WAArC,OAFD,IAGA,CAACJ,GAAG,CAACG,UAAJ,qBAA4B,KAAKF,KAAL,CAAWG,WAAvC,OAHL,EAIE;QACEJ,GAAG,qBAAc,KAAKC,KAAL,CAAWG,WAAzB,cAAwCJ,GAAxC,CAAH;MACH;;MAED,oBAAO;QACH,SAAS,EAAE,KAAKC,KAAL,CAAWI,OAAX,CAAmBT,SAD3B;QAEH,GAAG,EAAEI,GAFF;QAGH,OAAO,EAAE,KAAKC,KAAL,CAAWC,MAAX,CAAkBI,IAAlB,GAAyB;UAAA,OAAM,KAAI,CAACL,KAAL,CAAWC,MAAX,CAAkBI,IAAlB,IAA0BC,MAAM,CAACC,IAAP,CAAY,KAAI,CAACP,KAAL,CAAWC,MAAX,CAAkBI,IAA9B,EAAoC,QAApC,CAAhC;QAAA,CAAzB,GAAyG,IAH/G;QAIH,GAAG,EAAC;MAJD,EAAP;IAMH;;;EAjB2BG,0B;;AAoBhCV,iBAAiB,CAACW,SAAlB,GAA8B;EAC1BC,MAAM,EAAEC,qBAAA,CAAUC,MAAV,CAAiBC,UADC;EAE1BC,SAAS,EAAEH,qBAAA,CAAUI,MAFK;EAG1BC,SAAS,EAAEL,qBAAA,CAAUI,MAHK;EAI1BE,KAAK,EAAEN,qBAAA,CAAUC,MAJS;EAK1BM,SAAS,EAAEP,qBAAA,CAAUI,MALK;EAM1BI,IAAI,EAAER,qBAAA,CAAUC,MAAV,CAAiBC,UANG;EAO1BZ,MAAM,EAAEU,qBAAA,CAAUC,MAPQ;EAQ1BQ,OAAO,EAAET,qBAAA,CAAUU,IARO;EAS1BC,QAAQ,EAAEX,qBAAA,CAAUU;AATM,CAA9B;;eAYe,IAAAE,kBAAA,EAAW9B,MAAX,EAAmBK,iBAAnB,C"}
@@ -614,7 +614,7 @@ var ConfigTable = /*#__PURE__*/function (_ConfigGeneric) {
614
614
  }, this.getText(schema.label))) : null, !schema.noDelete ? /*#__PURE__*/_react["default"].createElement(_material.Tooltip, {
615
615
  title: doAnyFilterSet ? _i18n["default"].t('ra_Cannot add items with set filter') : _i18n["default"].t('ra_Add row')
616
616
  }, /*#__PURE__*/_react["default"].createElement("span", null, /*#__PURE__*/_react["default"].createElement(_material.IconButton, {
617
- disabled: !!doAnyFilterSet,
617
+ disabled: !!doAnyFilterSet && !this.props.schema.allowAddByFilter,
618
618
  onClick: this.onAdd
619
619
  }, /*#__PURE__*/_react["default"].createElement(_Add["default"], null)))) : null), /*#__PURE__*/_react["default"].createElement(_material.TableContainer, null, /*#__PURE__*/_react["default"].createElement(_material.Table, {
620
620
  className: classes.table,
@@ -1 +1 @@
1
- {"version":3,"file":"ConfigTable.js","names":["styles","theme","fullWidth","width","root","paper","marginBottom","spacing","backgroundColor","headerText","table","minWidth","visuallyHidden","border","clip","height","margin","overflow","padding","position","top","addIcon","display","justifyContent","highlight","palette","mode","color","secondary","main","text","primary","dark","title","flex","rootTool","paddingLeft","paddingRight","silver","opacity","filteredOut","textAlign","buttonEmpty","buttonCell","whiteSpace","objectToArray","object","nameOfFirstAttr","nameOfSecondAttr","array","Object","keys","forEach","key","item","push","assign","arrayToObject","row","undefined","ConfigTable","props","property","orderCheck","state","order","orderBy","isAsc","newOrder","newValue","stableSort","setState","iteration","applyFilter","value","comparator","getComparator","stabilizedThis","map","el","index","sort","a","b","JSON","parse","stringify","visibleValue","splice","pos","indexOf","i","onChangeWrapper","updateVisible","typingTimer","clearTimeout","setTimeout","schema","objKeyName","objValue","objValueName","onChange","attr","handleRequestSort","newItem","items","reduce","accumulator","currentValue","defaultValue","defaultFunc","custom","executeCustom","data","instanceObj","length","execute","clear","_","filterRefs","valueInputRef","current","children","toLowerCase","filter","idx","includes","createRef","ConfigGeneric","getValue","Array","isArray","filterOn","attrItem","systemConfig","schemaForAttribute","find","schemaItem","socket","adapterName","instance","common","alive","themeType","themeName","customs","valueChange","newObj","error","onError","buttonsWidth","classes","headCell","endsWith","clsx","I18n","t","endAdornment","getText","noDelete","disabled","doAnyFilterSet","isAnyFilterSet","label","onAdd","enhancedTableHead","itemTable","onMoveUp","onMoveDown","onDelete","e","help","renderHelp","helpLink","noTranslation","descendingComparator","propTypes","PropTypes","isRequired","string","style","className","func","withStyles"],"sources":["JsonConfigComponent/ConfigTable.jsx"],"sourcesContent":["import React, { createRef } from 'react';\nimport PropTypes from 'prop-types';\nimport { /*lighten,*/ withStyles } from '@mui/styles';\nimport clsx from 'clsx';\n\nimport FormHelperText from '@mui/material/FormHelperText';\nimport { IconButton, InputAdornment, Paper, Table, TableBody, TableCell, TableContainer, TableHead, TableRow, TableSortLabel, TextField, Toolbar, Tooltip, Typography } from '@mui/material';\n\nimport AddIcon from '@mui/icons-material/Add';\nimport DeleteIcon from '@mui/icons-material/Delete';\nimport CloseIcon from '@mui/icons-material/Close';\nimport UpIcon from '@mui/icons-material/ArrowUpward';\nimport DownIcon from '@mui/icons-material/ArrowDownward';\nimport IconFilterOn from '@mui/icons-material/FilterAlt';\nimport IconFilterOff from '@mui/icons-material/FilterAltOff';\n\nimport I18n from '../../i18n';\n\nimport ConfigGeneric from './ConfigGeneric';\nimport ConfigPanel from './ConfigPanel';\n\nconst styles = theme => ({\n fullWidth: {\n width: '100%'\n },\n root: {\n width: '100%',\n },\n paper: {\n width: '100%',\n marginBottom: theme.spacing(2),\n backgroundColor: `rgba(255, 255, 255, 0.1)`,\n },\n headerText: {\n width: '100%'\n },\n table: {\n minWidth: 750,\n },\n visuallyHidden: {\n border: 0,\n clip: 'rect(0 0 0 0)',\n height: 1,\n margin: -1,\n overflow: 'hidden',\n padding: 0,\n position: 'absolute',\n top: 20,\n width: 1,\n },\n addIcon: {\n display: 'flex',\n justifyContent: 'space-between'\n },\n highlight:\n theme.palette.mode === 'light'\n ? {\n color: theme.palette.secondary.main,\n // backgroundColor: lighten(theme.palette.secondary.light, 0.85),\n }\n : {\n color: theme.palette.text.primary,\n backgroundColor: theme.palette.secondary.dark,\n },\n title: {\n flex: '1 1 100%',\n },\n rootTool: {\n paddingLeft: theme.spacing(2),\n paddingRight: theme.spacing(1),\n },\n silver: {\n opacity: 0.2\n },\n flex: {\n display: 'flex'\n },\n filteredOut: {\n padding: 10,\n display: 'flex',\n textAlign: 'center'\n },\n buttonEmpty: {\n width: 30,\n display: 'inline-block'\n },\n buttonCell: {\n whiteSpace: 'nowrap',\n }\n});\n\nfunction objectToArray(object, nameOfFirstAttr, nameOfSecondAttr) {\n nameOfFirstAttr = nameOfFirstAttr || 'key';\n\n const array = [];\n Object.keys(object).forEach(key => {\n const item = {};\n item[nameOfFirstAttr] = key;\n\n if (nameOfSecondAttr) {\n item[nameOfSecondAttr] = object[key]\n array.push(item);\n } else {\n array.push(Object.assign(item, object[key]));\n }\n });\n\n return array;\n}\n\nfunction arrayToObject(array, nameOfFirstAttr, nameOfSecondAttr) {\n nameOfFirstAttr = nameOfFirstAttr || 'key';\n\n const object = {};\n\n array.forEach(row => {\n let key = row[nameOfFirstAttr];\n if (key === null || key === undefined) {\n key = '';\n }\n delete row[nameOfFirstAttr];\n\n if (nameOfSecondAttr) {\n object[key] = row[nameOfSecondAttr];\n } else {\n object[key] = row;\n }\n });\n\n return object;\n}\n\nclass ConfigTable extends ConfigGeneric {\n constructor(props) {\n super(props)\n this.filterRefs = {};\n this.props.schema.items = this.props.schema.items || [];\n this.props.schema.items.forEach(el => {\n if (el.filter) {\n this.filterRefs[el.attr] = createRef();\n }\n });\n }\n\n async componentDidMount() {\n super.componentDidMount();\n let value = ConfigGeneric.getValue(this.props.data, this.props.attr) || [];\n\n // if the list is given as an object\n if (this.props.schema.objKeyName) {\n value = objectToArray(value, this.props.schema.objKeyName, this.props.schema.objValueName);\n }\n\n if (!Array.isArray(value)) {\n value = [];\n }\n\n const visibleValue = value.map((_, i) => i);\n\n this.setState({\n value,\n visibleValue,\n orderBy: /*this.props.schema.items.length ? this.props.schema.items[0].attr : */'',\n order: 'asc',\n iteration: 0,\n filterOn: [],\n });\n }\n\n componentWillUnmount() {\n this.typingTimer && clearTimeout(this.typingTimer)\n this.typingTimer = null;\n super.componentWillUnmount();\n }\n\n itemTable(attrItem, data, idx) {\n const { value, systemConfig } = this.state;\n const { schema } = this.props;\n const schemaForAttribute = schema.items.find(el => el.attr === attrItem);\n\n if (!schemaForAttribute) {\n return null;\n }\n\n const schemaItem = {\n items: {\n [attrItem]: schemaForAttribute\n }\n };\n\n return <ConfigPanel\n index={idx + this.state.iteration}\n arrayIndex={idx}\n globalData={this.props.data}\n socket={this.props.socket}\n adapterName={this.props.adapterName}\n instance={this.props.instance}\n common={this.props.common}\n alive={this.props.alive}\n themeType={this.props.themeType}\n themeName={this.props.themeName}\n data={data}\n table\n custom\n schema={schemaItem}\n systemConfig={systemConfig}\n customs={this.props.customs}\n onChange={(attr, valueChange) => {\n const newObj = JSON.parse(JSON.stringify(value));\n newObj[idx][attr] = valueChange;\n this.setState({ value: newObj }, () =>\n this.onChangeWrapper(newObj,true));\n }}\n onError={(error, attr) => this.onError(error, attr)}\n />;\n }\n\n static descendingComparator(a, b, orderBy) {\n if (b[orderBy] < a[orderBy]) {\n return -1;\n } else\n if (b[orderBy] > a[orderBy]) {\n return 1;\n } else {\n return 0;\n }\n }\n\n static getComparator(order, orderBy) {\n return order === 'desc'\n ? (a, b) => ConfigTable.descendingComparator(a, b, orderBy)\n : (a, b) => -ConfigTable.descendingComparator(a, b, orderBy);\n }\n\n handleRequestSort = (property, orderCheck = false) => {\n const { order, orderBy } = this.state;\n if (orderBy) {\n const isAsc = orderBy === property && order === 'asc';\n const newOrder = orderCheck ? order : (isAsc ? 'desc' : 'asc');\n const newValue = this.stableSort(newOrder, property);\n this.setState({ order: newOrder, orderBy: property, iteration: this.state.iteration + 10000 }, () =>\n this.applyFilter(false, newValue));\n }\n }\n\n stableSort = (order, orderBy) => {\n const { value } = this.state;\n const comparator = ConfigTable.getComparator(order, orderBy);\n const stabilizedThis = value.map((el, index) => [el, index]);\n\n stabilizedThis.sort((a, b) => {\n const order = comparator(a[0], b[0]);\n if (order !== 0) {\n return order;\n } else {\n return a[1] - b[1];\n }\n });\n\n return stabilizedThis.map(el => el[0]);\n }\n\n enhancedTableHead(buttonsWidth) {\n const { schema, classes } = this.props;\n const { order, orderBy } = this.state;\n return <TableHead>\n <TableRow>\n {schema.items.map(headCell => (\n <TableCell\n style={{ width: typeof headCell.width === 'string' && headCell.width.endsWith('%') ? headCell.width : headCell.width }}\n key={headCell.attr}\n align=\"left\"\n sortDirection={orderBy === headCell.attr ? order : false}\n >\n <div className={classes.flex}>\n {headCell.sort && <TableSortLabel\n active\n className={clsx(orderBy !== headCell.attr && classes.silver)}\n direction={orderBy === headCell.attr ? order : 'asc'}\n onClick={() => this.handleRequestSort(headCell.attr)}\n />}\n {headCell.filter && this.state.filterOn.includes(headCell.attr) ?\n <TextField\n variant=\"standard\"\n ref={this.filterRefs[headCell.attr]}\n onChange={() => this.applyFilter()}\n title={I18n.t('ra_You can filter entries by entering here some text')}\n InputProps={{\n endAdornment: this.filterRefs[headCell.attr]?.current?.children[0]?.children[0]?.value && <InputAdornment position=\"end\">\n <IconButton\n size=\"small\"\n onClick={() => {\n this.filterRefs[headCell.attr].current.children[0].children[0].value = '';\n this.applyFilter();\n }}\n >\n <CloseIcon />\n </IconButton>\n </InputAdornment>,\n }}\n fullWidth\n placeholder={this.getText(headCell.title)}\n />\n : <span className={this.props.classes.headerText}>{this.getText(headCell.title)}</span>}\n { headCell.filter ? <IconButton\n title={I18n.t('ra_Show/hide filter input')}\n size=\"small\"\n onClick={() => {\n const filterOn = [...this.state.filterOn];\n const pos = this.state.filterOn.indexOf(headCell.attr);\n if (pos === -1) {\n filterOn.push(headCell.attr);\n } else {\n filterOn.splice(pos, 1);\n }\n this.setState({ filterOn }, () => {\n if (pos && this.filterRefs[headCell.attr].current.children[0].children[0].value) {\n this.filterRefs[headCell.attr].current.children[0].children[0].value = '';\n this.applyFilter();\n }\n });\n }}\n >{this.state.filterOn.includes(headCell.attr) ? <IconFilterOff /> : <IconFilterOn />}</IconButton> : null}\n </div>\n </TableCell>\n ))}\n {!schema.noDelete && <TableCell style={{ paddingLeft: 20, paddingRight: 20, width: buttonsWidth, textAlign: 'right' }} padding=\"checkbox\">\n <IconButton disabled size=\"small\">\n <DeleteIcon />\n </IconButton>\n </TableCell>}\n </TableRow>\n </TableHead>;\n }\n\n onDelete = index => () => {\n const newValue = JSON.parse(JSON.stringify(this.state.value));\n let visibleValue = JSON.parse(JSON.stringify(this.state.visibleValue));\n newValue.splice(index, 1);\n const pos = visibleValue.indexOf(index);\n if (pos !== -1) {\n visibleValue.splice(pos, 1);\n visibleValue = visibleValue.map(i => i > index ? i - 1 : i);\n }\n\n this.setState({ value: newValue, visibleValue, iteration: this.state.iteration + 10000 }, () =>\n this.onChangeWrapper(newValue));\n };\n\n onChangeWrapper = (newValue, updateVisible = false) => {\n this.typingTimer && clearTimeout(this.typingTimer);\n\n this.typingTimer = setTimeout((value, updateVisible) => {\n this.typingTimer = null;\n\n if (this.props.schema.objKeyName) {\n const objValue = arrayToObject(JSON.parse(JSON.stringify(value)), this.props.schema.objKeyName, this.props.schema.objValueName);\n this.onChange(this.props.attr, objValue);\n } else {\n this.onChange(this.props.attr, value);\n }\n\n if (updateVisible) {\n this.applyFilter(false, value);\n this.handleRequestSort(this.state.orderBy, true);\n }\n }, 300, newValue, updateVisible);\n }\n\n onAdd = () => {\n const { schema } = this.props;\n const newValue = JSON.parse(JSON.stringify(this.state.value));\n const visibleValue = JSON.parse(JSON.stringify(this.state.visibleValue));\n\n const newItem = schema.items.reduce((accumulator, currentValue) => {\n let defaultValue;\n if (currentValue.defaultFunc) {\n if (this.props.custom) {\n defaultValue = currentValue.defaultFunc ? this.executeCustom(currentValue.defaultFunc, this.props.schema.default, this.props.data, this.props.instanceObj, newValue.length, this.props.data) : this.props.schema.default;\n } else {\n defaultValue = currentValue.defaultFunc ? this.execute(currentValue.defaultFunc, this.props.schema.default, this.props.data, newValue.length, this.props.data) : this.props.schema.default;\n }\n } else {\n defaultValue = currentValue.default === undefined ? null : currentValue.default;\n }\n\n accumulator[currentValue.attr] = defaultValue;\n return accumulator;\n }, {});\n\n newValue.push(newItem);\n visibleValue.push(newValue.length - 1);\n\n this.setState({ value: newValue, visibleValue }, () =>\n this.onChangeWrapper(newValue));\n }\n\n isAnyFilterSet() {\n return Object.keys(this.filterRefs).find(attr => this.filterRefs[attr].current?.children[0].children[0].value);\n }\n\n applyFilter = (clear = false, value = this.state.value) => {\n let visibleValue = value.map((_, i) => i);\n Object.keys(this.filterRefs).forEach(attr => {\n let valueInputRef = this.filterRefs[attr].current?.children[0].children[0].value;\n if (!clear && valueInputRef) {\n valueInputRef = valueInputRef.toLowerCase();\n visibleValue = visibleValue.filter(idx => value[idx] && value[idx][attr] && value[idx][attr].toLowerCase().includes(valueInputRef));\n } else if (this.filterRefs[attr].current) {\n this.filterRefs[attr].current.children[0].children[0].value = '';\n }\n });\n\n if (JSON.stringify(visibleValue) !== JSON.stringify(this.state.visibleValue)) {\n this.setState({ visibleValue });\n }\n }\n\n onMoveUp(idx) {\n const value = JSON.parse(JSON.stringify(this.state.value));\n const item = value[idx];\n value.splice(idx, 1);\n value.splice(idx - 1, 0, item);\n this.setState({ value, iteration: this.state.iteration + 10000 }, () =>\n this.onChangeWrapper(value));\n }\n\n onMoveDown(idx) {\n const value = JSON.parse(JSON.stringify(this.state.value));\n const item = value[idx];\n value.splice(idx, 1);\n value.splice(idx + 1, 0, item);\n this.setState({ value, iteration: this.state.iteration + 10000 }, () =>\n this.onChangeWrapper(value));\n }\n\n renderItem(error, disabled, defaultValue) {\n const { classes, schema } = this.props;\n const { value, visibleValue } = this.state;\n\n if (!value) {\n return null;\n }\n\n const doAnyFilterSet = this.isAnyFilterSet();\n\n return <Paper className={classes.paper}>\n <div className={classes.addIcon}>\n {schema.label ? <Toolbar\n variant=\"dense\"\n className={classes.rootTool}\n >\n <Typography className={classes.title} variant=\"h6\" id=\"tableTitle\" component=\"div\">\n {this.getText(schema.label)}\n </Typography>\n </Toolbar> : null}\n {!schema.noDelete ? <Tooltip title={doAnyFilterSet ? I18n.t('ra_Cannot add items with set filter') : I18n.t('ra_Add row')}>\n <span>\n <IconButton disabled={!!doAnyFilterSet} onClick={this.onAdd}>\n <AddIcon />\n </IconButton>\n </span>\n </Tooltip> : null}\n </div>\n <TableContainer>\n <Table className={classes.table} size=\"small\">\n {this.enhancedTableHead(!doAnyFilterSet && !this.state.orderBy ? 120 : 64)}\n <TableBody>\n {visibleValue.map((idx, i) =>\n <TableRow\n hover\n key={idx}\n >\n {schema.items.map(headCell => {\n return <TableCell key={headCell.attr + '_' + idx} align=\"left\">\n {this.itemTable(headCell.attr, value[idx], idx)}\n </TableCell>;\n })}\n {!schema.noDelete && <TableCell align=\"left\" className={classes.buttonCell}>\n {!doAnyFilterSet && !this.state.orderBy ? (i ? <Tooltip title={I18n.t('ra_Move up')}>\n <IconButton size=\"small\" onClick={() => this.onMoveUp(idx)}>\n <UpIcon />\n </IconButton>\n </Tooltip> : <div className={classes.buttonEmpty}/>) : null}\n {!doAnyFilterSet && !this.state.orderBy ? (i < visibleValue.length - 1 ? <Tooltip title={I18n.t('ra_Move down')}>\n <IconButton size=\"small\" onClick={() => this.onMoveDown(idx)}>\n <DownIcon />\n </IconButton>\n </Tooltip> : <div className={classes.buttonEmpty}/> ) : null}\n <Tooltip title={I18n.t('ra_Delete current row')}>\n <IconButton size=\"small\" onClick={this.onDelete(idx)}>\n <DeleteIcon />\n </IconButton>\n </Tooltip>\n </TableCell>}\n </TableRow>)}\n </TableBody>\n </Table>\n {!visibleValue.length && value.length ?\n <div className={classes.filteredOut}>\n <Typography className={classes.title} variant=\"h6\" id=\"tableTitle\" component=\"div\">\n {I18n.t('ra_All items are filtered out')}\n <IconButton\n size=\"small\"\n onClick={e => this.applyFilter(true)}\n >\n <CloseIcon />\n </IconButton>\n </Typography>\n </div> : null}\n </TableContainer>\n {schema.help ? <FormHelperText>{this.renderHelp(this.props.schema.help, this.props.schema.helpLink, this.props.schema.noTranslation)}</FormHelperText> : null}\n </Paper>;\n }\n}\n\nConfigTable.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)(ConfigTable);\n"],"mappings":"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"}
1
+ {"version":3,"file":"ConfigTable.js","names":["styles","theme","fullWidth","width","root","paper","marginBottom","spacing","backgroundColor","headerText","table","minWidth","visuallyHidden","border","clip","height","margin","overflow","padding","position","top","addIcon","display","justifyContent","highlight","palette","mode","color","secondary","main","text","primary","dark","title","flex","rootTool","paddingLeft","paddingRight","silver","opacity","filteredOut","textAlign","buttonEmpty","buttonCell","whiteSpace","objectToArray","object","nameOfFirstAttr","nameOfSecondAttr","array","Object","keys","forEach","key","item","push","assign","arrayToObject","row","undefined","ConfigTable","props","property","orderCheck","state","order","orderBy","isAsc","newOrder","newValue","stableSort","setState","iteration","applyFilter","value","comparator","getComparator","stabilizedThis","map","el","index","sort","a","b","JSON","parse","stringify","visibleValue","splice","pos","indexOf","i","onChangeWrapper","updateVisible","typingTimer","clearTimeout","setTimeout","schema","objKeyName","objValue","objValueName","onChange","attr","handleRequestSort","newItem","items","reduce","accumulator","currentValue","defaultValue","defaultFunc","custom","executeCustom","data","instanceObj","length","execute","clear","_","filterRefs","valueInputRef","current","children","toLowerCase","filter","idx","includes","createRef","ConfigGeneric","getValue","Array","isArray","filterOn","attrItem","systemConfig","schemaForAttribute","find","schemaItem","socket","adapterName","instance","common","alive","themeType","themeName","customs","valueChange","newObj","error","onError","buttonsWidth","classes","headCell","endsWith","clsx","I18n","t","endAdornment","getText","noDelete","disabled","doAnyFilterSet","isAnyFilterSet","label","allowAddByFilter","onAdd","enhancedTableHead","itemTable","onMoveUp","onMoveDown","onDelete","e","help","renderHelp","helpLink","noTranslation","descendingComparator","propTypes","PropTypes","isRequired","string","style","className","func","withStyles"],"sources":["JsonConfigComponent/ConfigTable.jsx"],"sourcesContent":["import React, { createRef } from 'react';\nimport PropTypes from 'prop-types';\nimport { /*lighten,*/ withStyles } from '@mui/styles';\nimport clsx from 'clsx';\n\nimport FormHelperText from '@mui/material/FormHelperText';\nimport { IconButton, InputAdornment, Paper, Table, TableBody, TableCell, TableContainer, TableHead, TableRow, TableSortLabel, TextField, Toolbar, Tooltip, Typography } from '@mui/material';\n\nimport AddIcon from '@mui/icons-material/Add';\nimport DeleteIcon from '@mui/icons-material/Delete';\nimport CloseIcon from '@mui/icons-material/Close';\nimport UpIcon from '@mui/icons-material/ArrowUpward';\nimport DownIcon from '@mui/icons-material/ArrowDownward';\nimport IconFilterOn from '@mui/icons-material/FilterAlt';\nimport IconFilterOff from '@mui/icons-material/FilterAltOff';\n\nimport I18n from '../../i18n';\n\nimport ConfigGeneric from './ConfigGeneric';\nimport ConfigPanel from './ConfigPanel';\n\nconst styles = theme => ({\n fullWidth: {\n width: '100%'\n },\n root: {\n width: '100%',\n },\n paper: {\n width: '100%',\n marginBottom: theme.spacing(2),\n backgroundColor: `rgba(255, 255, 255, 0.1)`,\n },\n headerText: {\n width: '100%'\n },\n table: {\n minWidth: 750,\n },\n visuallyHidden: {\n border: 0,\n clip: 'rect(0 0 0 0)',\n height: 1,\n margin: -1,\n overflow: 'hidden',\n padding: 0,\n position: 'absolute',\n top: 20,\n width: 1,\n },\n addIcon: {\n display: 'flex',\n justifyContent: 'space-between'\n },\n highlight:\n theme.palette.mode === 'light'\n ? {\n color: theme.palette.secondary.main,\n // backgroundColor: lighten(theme.palette.secondary.light, 0.85),\n }\n : {\n color: theme.palette.text.primary,\n backgroundColor: theme.palette.secondary.dark,\n },\n title: {\n flex: '1 1 100%',\n },\n rootTool: {\n paddingLeft: theme.spacing(2),\n paddingRight: theme.spacing(1),\n },\n silver: {\n opacity: 0.2\n },\n flex: {\n display: 'flex'\n },\n filteredOut: {\n padding: 10,\n display: 'flex',\n textAlign: 'center'\n },\n buttonEmpty: {\n width: 30,\n display: 'inline-block'\n },\n buttonCell: {\n whiteSpace: 'nowrap',\n }\n});\n\nfunction objectToArray(object, nameOfFirstAttr, nameOfSecondAttr) {\n nameOfFirstAttr = nameOfFirstAttr || 'key';\n\n const array = [];\n Object.keys(object).forEach(key => {\n const item = {};\n item[nameOfFirstAttr] = key;\n\n if (nameOfSecondAttr) {\n item[nameOfSecondAttr] = object[key]\n array.push(item);\n } else {\n array.push(Object.assign(item, object[key]));\n }\n });\n\n return array;\n}\n\nfunction arrayToObject(array, nameOfFirstAttr, nameOfSecondAttr) {\n nameOfFirstAttr = nameOfFirstAttr || 'key';\n\n const object = {};\n\n array.forEach(row => {\n let key = row[nameOfFirstAttr];\n if (key === null || key === undefined) {\n key = '';\n }\n delete row[nameOfFirstAttr];\n\n if (nameOfSecondAttr) {\n object[key] = row[nameOfSecondAttr];\n } else {\n object[key] = row;\n }\n });\n\n return object;\n}\n\nclass ConfigTable extends ConfigGeneric {\n constructor(props) {\n super(props)\n this.filterRefs = {};\n this.props.schema.items = this.props.schema.items || [];\n this.props.schema.items.forEach(el => {\n if (el.filter) {\n this.filterRefs[el.attr] = createRef();\n }\n });\n }\n\n async componentDidMount() {\n super.componentDidMount();\n let value = ConfigGeneric.getValue(this.props.data, this.props.attr) || [];\n\n // if the list is given as an object\n if (this.props.schema.objKeyName) {\n value = objectToArray(value, this.props.schema.objKeyName, this.props.schema.objValueName);\n }\n\n if (!Array.isArray(value)) {\n value = [];\n }\n\n const visibleValue = value.map((_, i) => i);\n\n this.setState({\n value,\n visibleValue,\n orderBy: /*this.props.schema.items.length ? this.props.schema.items[0].attr : */'',\n order: 'asc',\n iteration: 0,\n filterOn: [],\n });\n }\n\n componentWillUnmount() {\n this.typingTimer && clearTimeout(this.typingTimer)\n this.typingTimer = null;\n super.componentWillUnmount();\n }\n\n itemTable(attrItem, data, idx) {\n const { value, systemConfig } = this.state;\n const { schema } = this.props;\n const schemaForAttribute = schema.items.find(el => el.attr === attrItem);\n\n if (!schemaForAttribute) {\n return null;\n }\n\n const schemaItem = {\n items: {\n [attrItem]: schemaForAttribute\n }\n };\n\n return <ConfigPanel\n index={idx + this.state.iteration}\n arrayIndex={idx}\n globalData={this.props.data}\n socket={this.props.socket}\n adapterName={this.props.adapterName}\n instance={this.props.instance}\n common={this.props.common}\n alive={this.props.alive}\n themeType={this.props.themeType}\n themeName={this.props.themeName}\n data={data}\n table\n custom\n schema={schemaItem}\n systemConfig={systemConfig}\n customs={this.props.customs}\n onChange={(attr, valueChange) => {\n const newObj = JSON.parse(JSON.stringify(value));\n newObj[idx][attr] = valueChange;\n this.setState({ value: newObj }, () =>\n this.onChangeWrapper(newObj,true));\n }}\n onError={(error, attr) => this.onError(error, attr)}\n />;\n }\n\n static descendingComparator(a, b, orderBy) {\n if (b[orderBy] < a[orderBy]) {\n return -1;\n } else\n if (b[orderBy] > a[orderBy]) {\n return 1;\n } else {\n return 0;\n }\n }\n\n static getComparator(order, orderBy) {\n return order === 'desc'\n ? (a, b) => ConfigTable.descendingComparator(a, b, orderBy)\n : (a, b) => -ConfigTable.descendingComparator(a, b, orderBy);\n }\n\n handleRequestSort = (property, orderCheck = false) => {\n const { order, orderBy } = this.state;\n if (orderBy) {\n const isAsc = orderBy === property && order === 'asc';\n const newOrder = orderCheck ? order : (isAsc ? 'desc' : 'asc');\n const newValue = this.stableSort(newOrder, property);\n this.setState({ order: newOrder, orderBy: property, iteration: this.state.iteration + 10000 }, () =>\n this.applyFilter(false, newValue));\n }\n }\n\n stableSort = (order, orderBy) => {\n const { value } = this.state;\n const comparator = ConfigTable.getComparator(order, orderBy);\n const stabilizedThis = value.map((el, index) => [el, index]);\n\n stabilizedThis.sort((a, b) => {\n const order = comparator(a[0], b[0]);\n if (order !== 0) {\n return order;\n } else {\n return a[1] - b[1];\n }\n });\n\n return stabilizedThis.map(el => el[0]);\n }\n\n enhancedTableHead(buttonsWidth) {\n const { schema, classes } = this.props;\n const { order, orderBy } = this.state;\n return <TableHead>\n <TableRow>\n {schema.items.map(headCell => (\n <TableCell\n style={{ width: typeof headCell.width === 'string' && headCell.width.endsWith('%') ? headCell.width : headCell.width }}\n key={headCell.attr}\n align=\"left\"\n sortDirection={orderBy === headCell.attr ? order : false}\n >\n <div className={classes.flex}>\n {headCell.sort && <TableSortLabel\n active\n className={clsx(orderBy !== headCell.attr && classes.silver)}\n direction={orderBy === headCell.attr ? order : 'asc'}\n onClick={() => this.handleRequestSort(headCell.attr)}\n />}\n {headCell.filter && this.state.filterOn.includes(headCell.attr) ?\n <TextField\n variant=\"standard\"\n ref={this.filterRefs[headCell.attr]}\n onChange={() => this.applyFilter()}\n title={I18n.t('ra_You can filter entries by entering here some text')}\n InputProps={{\n endAdornment: this.filterRefs[headCell.attr]?.current?.children[0]?.children[0]?.value && <InputAdornment position=\"end\">\n <IconButton\n size=\"small\"\n onClick={() => {\n this.filterRefs[headCell.attr].current.children[0].children[0].value = '';\n this.applyFilter();\n }}\n >\n <CloseIcon />\n </IconButton>\n </InputAdornment>,\n }}\n fullWidth\n placeholder={this.getText(headCell.title)}\n />\n : <span className={this.props.classes.headerText}>{this.getText(headCell.title)}</span>}\n { headCell.filter ? <IconButton\n title={I18n.t('ra_Show/hide filter input')}\n size=\"small\"\n onClick={() => {\n const filterOn = [...this.state.filterOn];\n const pos = this.state.filterOn.indexOf(headCell.attr);\n if (pos === -1) {\n filterOn.push(headCell.attr);\n } else {\n filterOn.splice(pos, 1);\n }\n this.setState({ filterOn }, () => {\n if (pos && this.filterRefs[headCell.attr].current.children[0].children[0].value) {\n this.filterRefs[headCell.attr].current.children[0].children[0].value = '';\n this.applyFilter();\n }\n });\n }}\n >{this.state.filterOn.includes(headCell.attr) ? <IconFilterOff /> : <IconFilterOn />}</IconButton> : null}\n </div>\n </TableCell>\n ))}\n {!schema.noDelete && <TableCell style={{ paddingLeft: 20, paddingRight: 20, width: buttonsWidth, textAlign: 'right' }} padding=\"checkbox\">\n <IconButton disabled size=\"small\">\n <DeleteIcon />\n </IconButton>\n </TableCell>}\n </TableRow>\n </TableHead>;\n }\n\n onDelete = index => () => {\n const newValue = JSON.parse(JSON.stringify(this.state.value));\n let visibleValue = JSON.parse(JSON.stringify(this.state.visibleValue));\n newValue.splice(index, 1);\n const pos = visibleValue.indexOf(index);\n if (pos !== -1) {\n visibleValue.splice(pos, 1);\n visibleValue = visibleValue.map(i => i > index ? i - 1 : i);\n }\n\n this.setState({ value: newValue, visibleValue, iteration: this.state.iteration + 10000 }, () =>\n this.onChangeWrapper(newValue));\n };\n\n onChangeWrapper = (newValue, updateVisible = false) => {\n this.typingTimer && clearTimeout(this.typingTimer);\n\n this.typingTimer = setTimeout((value, updateVisible) => {\n this.typingTimer = null;\n\n if (this.props.schema.objKeyName) {\n const objValue = arrayToObject(JSON.parse(JSON.stringify(value)), this.props.schema.objKeyName, this.props.schema.objValueName);\n this.onChange(this.props.attr, objValue);\n } else {\n this.onChange(this.props.attr, value);\n }\n\n if (updateVisible) {\n this.applyFilter(false, value);\n this.handleRequestSort(this.state.orderBy, true);\n }\n }, 300, newValue, updateVisible);\n }\n\n onAdd = () => {\n const { schema } = this.props;\n const newValue = JSON.parse(JSON.stringify(this.state.value));\n const visibleValue = JSON.parse(JSON.stringify(this.state.visibleValue));\n\n const newItem = schema.items.reduce((accumulator, currentValue) => {\n let defaultValue;\n if (currentValue.defaultFunc) {\n if (this.props.custom) {\n defaultValue = currentValue.defaultFunc ? this.executeCustom(currentValue.defaultFunc, this.props.schema.default, this.props.data, this.props.instanceObj, newValue.length, this.props.data) : this.props.schema.default;\n } else {\n defaultValue = currentValue.defaultFunc ? this.execute(currentValue.defaultFunc, this.props.schema.default, this.props.data, newValue.length, this.props.data) : this.props.schema.default;\n }\n } else {\n defaultValue = currentValue.default === undefined ? null : currentValue.default;\n }\n\n accumulator[currentValue.attr] = defaultValue;\n return accumulator;\n }, {});\n\n newValue.push(newItem);\n visibleValue.push(newValue.length - 1);\n\n this.setState({ value: newValue, visibleValue }, () =>\n this.onChangeWrapper(newValue));\n }\n\n isAnyFilterSet() {\n return Object.keys(this.filterRefs).find(attr => this.filterRefs[attr].current?.children[0].children[0].value);\n }\n\n applyFilter = (clear = false, value = this.state.value) => {\n let visibleValue = value.map((_, i) => i);\n Object.keys(this.filterRefs).forEach(attr => {\n let valueInputRef = this.filterRefs[attr].current?.children[0].children[0].value;\n if (!clear && valueInputRef) {\n valueInputRef = valueInputRef.toLowerCase();\n visibleValue = visibleValue.filter(idx => value[idx] && value[idx][attr] && value[idx][attr].toLowerCase().includes(valueInputRef));\n } else if (this.filterRefs[attr].current) {\n this.filterRefs[attr].current.children[0].children[0].value = '';\n }\n });\n\n if (JSON.stringify(visibleValue) !== JSON.stringify(this.state.visibleValue)) {\n this.setState({ visibleValue });\n }\n }\n\n onMoveUp(idx) {\n const value = JSON.parse(JSON.stringify(this.state.value));\n const item = value[idx];\n value.splice(idx, 1);\n value.splice(idx - 1, 0, item);\n this.setState({ value, iteration: this.state.iteration + 10000 }, () =>\n this.onChangeWrapper(value));\n }\n\n onMoveDown(idx) {\n const value = JSON.parse(JSON.stringify(this.state.value));\n const item = value[idx];\n value.splice(idx, 1);\n value.splice(idx + 1, 0, item);\n this.setState({ value, iteration: this.state.iteration + 10000 }, () =>\n this.onChangeWrapper(value));\n }\n\n renderItem(error, disabled, defaultValue) {\n const { classes, schema } = this.props;\n const { value, visibleValue } = this.state;\n\n if (!value) {\n return null;\n }\n\n const doAnyFilterSet = this.isAnyFilterSet();\n\n return <Paper className={classes.paper}>\n <div className={classes.addIcon}>\n {schema.label ? <Toolbar\n variant=\"dense\"\n className={classes.rootTool}\n >\n <Typography className={classes.title} variant=\"h6\" id=\"tableTitle\" component=\"div\">\n {this.getText(schema.label)}\n </Typography>\n </Toolbar> : null}\n {!schema.noDelete ? <Tooltip title={doAnyFilterSet ? I18n.t('ra_Cannot add items with set filter') : I18n.t('ra_Add row')}>\n <span>\n <IconButton disabled={!!doAnyFilterSet && !this.props.schema.allowAddByFilter} onClick={this.onAdd}>\n <AddIcon />\n </IconButton>\n </span>\n </Tooltip> : null}\n </div>\n <TableContainer>\n <Table className={classes.table} size=\"small\">\n {this.enhancedTableHead(!doAnyFilterSet && !this.state.orderBy ? 120 : 64)}\n <TableBody>\n {visibleValue.map((idx, i) =>\n <TableRow\n hover\n key={idx}\n >\n {schema.items.map(headCell => {\n return <TableCell key={headCell.attr + '_' + idx} align=\"left\">\n {this.itemTable(headCell.attr, value[idx], idx)}\n </TableCell>;\n })}\n {!schema.noDelete && <TableCell align=\"left\" className={classes.buttonCell}>\n {!doAnyFilterSet && !this.state.orderBy ? (i ? <Tooltip title={I18n.t('ra_Move up')}>\n <IconButton size=\"small\" onClick={() => this.onMoveUp(idx)}>\n <UpIcon />\n </IconButton>\n </Tooltip> : <div className={classes.buttonEmpty}/>) : null}\n {!doAnyFilterSet && !this.state.orderBy ? (i < visibleValue.length - 1 ? <Tooltip title={I18n.t('ra_Move down')}>\n <IconButton size=\"small\" onClick={() => this.onMoveDown(idx)}>\n <DownIcon />\n </IconButton>\n </Tooltip> : <div className={classes.buttonEmpty}/> ) : null}\n <Tooltip title={I18n.t('ra_Delete current row')}>\n <IconButton size=\"small\" onClick={this.onDelete(idx)}>\n <DeleteIcon />\n </IconButton>\n </Tooltip>\n </TableCell>}\n </TableRow>)}\n </TableBody>\n </Table>\n {!visibleValue.length && value.length ?\n <div className={classes.filteredOut}>\n <Typography className={classes.title} variant=\"h6\" id=\"tableTitle\" component=\"div\">\n {I18n.t('ra_All items are filtered out')}\n <IconButton\n size=\"small\"\n onClick={e => this.applyFilter(true)}\n >\n <CloseIcon />\n </IconButton>\n </Typography>\n </div> : null}\n </TableContainer>\n {schema.help ? <FormHelperText>{this.renderHelp(this.props.schema.help, this.props.schema.helpLink, this.props.schema.noTranslation)}</FormHelperText> : null}\n </Paper>;\n }\n}\n\nConfigTable.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)(ConfigTable);\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AAEA;;AACA;;AAEA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAEA;;AAEA;;AACA;;;;;;;;;;AAEA,IAAMA,MAAM,GAAG,SAATA,MAAS,CAAAC,KAAK;EAAA,OAAK;IACrBC,SAAS,EAAE;MACPC,KAAK,EAAE;IADA,CADU;IAIrBC,IAAI,EAAE;MACFD,KAAK,EAAE;IADL,CAJe;IAOrBE,KAAK,EAAE;MACHF,KAAK,EAAE,MADJ;MAEHG,YAAY,EAAEL,KAAK,CAACM,OAAN,CAAc,CAAd,CAFX;MAGHC,eAAe;IAHZ,CAPc;IAYrBC,UAAU,EAAE;MACRN,KAAK,EAAE;IADC,CAZS;IAerBO,KAAK,EAAE;MACHC,QAAQ,EAAE;IADP,CAfc;IAkBrBC,cAAc,EAAE;MACZC,MAAM,EAAE,CADI;MAEZC,IAAI,EAAE,eAFM;MAGZC,MAAM,EAAE,CAHI;MAIZC,MAAM,EAAE,CAAC,CAJG;MAKZC,QAAQ,EAAE,QALE;MAMZC,OAAO,EAAE,CANG;MAOZC,QAAQ,EAAE,UAPE;MAQZC,GAAG,EAAE,EARO;MASZjB,KAAK,EAAE;IATK,CAlBK;IA6BrBkB,OAAO,EAAE;MACLC,OAAO,EAAE,MADJ;MAELC,cAAc,EAAE;IAFX,CA7BY;IAiCrBC,SAAS,EACLvB,KAAK,CAACwB,OAAN,CAAcC,IAAd,KAAuB,OAAvB,GACM;MACEC,KAAK,EAAE1B,KAAK,CAACwB,OAAN,CAAcG,SAAd,CAAwBC,IADjC,CAEE;;IAFF,CADN,GAKM;MACEF,KAAK,EAAE1B,KAAK,CAACwB,OAAN,CAAcK,IAAd,CAAmBC,OAD5B;MAEEvB,eAAe,EAAEP,KAAK,CAACwB,OAAN,CAAcG,SAAd,CAAwBI;IAF3C,CAvCW;IA2CrBC,KAAK,EAAE;MACHC,IAAI,EAAE;IADH,CA3Cc;IA8CrBC,QAAQ,EAAE;MACNC,WAAW,EAAEnC,KAAK,CAACM,OAAN,CAAc,CAAd,CADP;MAEN8B,YAAY,EAAEpC,KAAK,CAACM,OAAN,CAAc,CAAd;IAFR,CA9CW;IAkDrB+B,MAAM,EAAE;MACJC,OAAO,EAAE;IADL,CAlDa;IAqDrBL,IAAI,EAAE;MACFZ,OAAO,EAAE;IADP,CArDe;IAwDrBkB,WAAW,EAAE;MACTtB,OAAO,EAAE,EADA;MAETI,OAAO,EAAE,MAFA;MAGTmB,SAAS,EAAE;IAHF,CAxDQ;IA6DrBC,WAAW,EAAE;MACTvC,KAAK,EAAE,EADE;MAETmB,OAAO,EAAE;IAFA,CA7DQ;IAiErBqB,UAAU,EAAE;MACRC,UAAU,EAAE;IADJ;EAjES,CAAL;AAAA,CAApB;;AAsEA,SAASC,aAAT,CAAuBC,MAAvB,EAA+BC,eAA/B,EAAgDC,gBAAhD,EAAkE;EAC9DD,eAAe,GAAIA,eAAe,IAAI,KAAtC;EAEA,IAAME,KAAK,GAAG,EAAd;EACAC,MAAM,CAACC,IAAP,CAAYL,MAAZ,EAAoBM,OAApB,CAA4B,UAAAC,GAAG,EAAI;IAC/B,IAAMC,IAAI,GAAG,EAAb;IACAA,IAAI,CAACP,eAAD,CAAJ,GAAwBM,GAAxB;;IAEA,IAAIL,gBAAJ,EAAsB;MAClBM,IAAI,CAACN,gBAAD,CAAJ,GAAyBF,MAAM,CAACO,GAAD,CAA/B;MACAJ,KAAK,CAACM,IAAN,CAAWD,IAAX;IACH,CAHD,MAGO;MACHL,KAAK,CAACM,IAAN,CAAWL,MAAM,CAACM,MAAP,CAAcF,IAAd,EAAoBR,MAAM,CAACO,GAAD,CAA1B,CAAX;IACH;EACJ,CAVD;EAYA,OAAOJ,KAAP;AACH;;AAED,SAASQ,aAAT,CAAuBR,KAAvB,EAA8BF,eAA9B,EAA+CC,gBAA/C,EAAiE;EAC7DD,eAAe,GAAIA,eAAe,IAAK,KAAvC;EAEA,IAAMD,MAAM,GAAG,EAAf;EAEAG,KAAK,CAACG,OAAN,CAAc,UAAAM,GAAG,EAAI;IACjB,IAAIL,GAAG,GAAGK,GAAG,CAACX,eAAD,CAAb;;IACA,IAAIM,GAAG,KAAK,IAAR,IAAgBA,GAAG,KAAKM,SAA5B,EAAuC;MACnCN,GAAG,GAAG,EAAN;IACH;;IACD,OAAOK,GAAG,CAACX,eAAD,CAAV;;IAEA,IAAIC,gBAAJ,EAAsB;MAClBF,MAAM,CAACO,GAAD,CAAN,GAAcK,GAAG,CAACV,gBAAD,CAAjB;IACH,CAFD,MAEO;MACHF,MAAM,CAACO,GAAD,CAAN,GAAcK,GAAd;IACH;EACJ,CAZD;EAcA,OAAOZ,MAAP;AACH;;IAEKc,W;;;;;EACF,qBAAYC,KAAZ,EAAmB;IAAA;;IAAA;IACf,0BAAMA,KAAN;IADe,sGAqGC,UAACC,QAAD,EAAkC;MAAA,IAAvBC,UAAuB,uEAAV,KAAU;MAClD,kBAA2B,MAAKC,KAAhC;MAAA,IAAQC,KAAR,eAAQA,KAAR;MAAA,IAAeC,OAAf,eAAeA,OAAf;;MACA,IAAIA,OAAJ,EAAa;QACT,IAAMC,KAAK,GAAGD,OAAO,KAAKJ,QAAZ,IAAwBG,KAAK,KAAK,KAAhD;QACA,IAAMG,QAAQ,GAAGL,UAAU,GAAGE,KAAH,GAAYE,KAAK,GAAG,MAAH,GAAY,KAAxD;;QACA,IAAME,QAAQ,GAAG,MAAKC,UAAL,CAAgBF,QAAhB,EAA0BN,QAA1B,CAAjB;;QACA,MAAKS,QAAL,CAAc;UAAEN,KAAK,EAAEG,QAAT;UAAmBF,OAAO,EAAEJ,QAA5B;UAAsCU,SAAS,EAAE,MAAKR,KAAL,CAAWQ,SAAX,GAAuB;QAAxE,CAAd,EAA+F;UAAA,OAC3F,MAAKC,WAAL,CAAiB,KAAjB,EAAwBJ,QAAxB,CAD2F;QAAA,CAA/F;MAEH;IACJ,CA9GkB;IAAA,+FAgHN,UAACJ,KAAD,EAAQC,OAAR,EAAoB;MAC7B,IAAQQ,KAAR,GAAkB,MAAKV,KAAvB,CAAQU,KAAR;MACA,IAAMC,UAAU,GAAGf,WAAW,CAACgB,aAAZ,CAA0BX,KAA1B,EAAiCC,OAAjC,CAAnB;MACA,IAAMW,cAAc,GAAGH,KAAK,CAACI,GAAN,CAAU,UAACC,EAAD,EAAKC,KAAL;QAAA,OAAe,CAACD,EAAD,EAAKC,KAAL,CAAf;MAAA,CAAV,CAAvB;MAEAH,cAAc,CAACI,IAAf,CAAoB,UAACC,CAAD,EAAIC,CAAJ,EAAU;QAC1B,IAAMlB,KAAK,GAAGU,UAAU,CAACO,CAAC,CAAC,CAAD,CAAF,EAAOC,CAAC,CAAC,CAAD,CAAR,CAAxB;;QACA,IAAIlB,KAAK,KAAK,CAAd,EAAiB;UACb,OAAOA,KAAP;QACH,CAFD,MAEO;UACH,OAAOiB,CAAC,CAAC,CAAD,CAAD,GAAOC,CAAC,CAAC,CAAD,CAAf;QACH;MACJ,CAPD;MASA,OAAON,cAAc,CAACC,GAAf,CAAmB,UAAAC,EAAE;QAAA,OAAIA,EAAE,CAAC,CAAD,CAAN;MAAA,CAArB,CAAP;IACH,CA/HkB;IAAA,6FA0MR,UAAAC,KAAK;MAAA,OAAI,YAAM;QACtB,IAAMX,QAAQ,GAAGe,IAAI,CAACC,KAAL,CAAWD,IAAI,CAACE,SAAL,CAAe,MAAKtB,KAAL,CAAWU,KAA1B,CAAX,CAAjB;QACA,IAAIa,YAAY,GAAGH,IAAI,CAACC,KAAL,CAAWD,IAAI,CAACE,SAAL,CAAe,MAAKtB,KAAL,CAAWuB,YAA1B,CAAX,CAAnB;QACAlB,QAAQ,CAACmB,MAAT,CAAgBR,KAAhB,EAAuB,CAAvB;QACA,IAAMS,GAAG,GAAGF,YAAY,CAACG,OAAb,CAAqBV,KAArB,CAAZ;;QACA,IAAIS,GAAG,KAAK,CAAC,CAAb,EAAgB;UACZF,YAAY,CAACC,MAAb,CAAoBC,GAApB,EAAyB,CAAzB;UACAF,YAAY,GAAGA,YAAY,CAACT,GAAb,CAAiB,UAAAa,CAAC;YAAA,OAAIA,CAAC,GAAGX,KAAJ,GAAYW,CAAC,GAAG,CAAhB,GAAoBA,CAAxB;UAAA,CAAlB,CAAf;QACH;;QAED,MAAKpB,QAAL,CAAc;UAAEG,KAAK,EAAEL,QAAT;UAAmBkB,YAAY,EAAZA,YAAnB;UAAiCf,SAAS,EAAE,MAAKR,KAAL,CAAWQ,SAAX,GAAuB;QAAnE,CAAd,EAA0F;UAAA,OACtF,MAAKoB,eAAL,CAAqBvB,QAArB,CADsF;QAAA,CAA1F;MAEH,CAZe;IAAA,CA1MG;IAAA,oGAwND,UAACA,QAAD,EAAqC;MAAA,IAA1BwB,aAA0B,uEAAV,KAAU;MACnD,MAAKC,WAAL,IAAoBC,YAAY,CAAC,MAAKD,WAAN,CAAhC;MAEA,MAAKA,WAAL,GAAmBE,UAAU,CAAC,UAACtB,KAAD,EAAQmB,aAAR,EAA0B;QACpD,MAAKC,WAAL,GAAmB,IAAnB;;QAEA,IAAI,MAAKjC,KAAL,CAAWoC,MAAX,CAAkBC,UAAtB,EAAkC;UAC9B,IAAMC,QAAQ,GAAG1C,aAAa,CAAC2B,IAAI,CAACC,KAAL,CAAWD,IAAI,CAACE,SAAL,CAAeZ,KAAf,CAAX,CAAD,EAAoC,MAAKb,KAAL,CAAWoC,MAAX,CAAkBC,UAAtD,EAAkE,MAAKrC,KAAL,CAAWoC,MAAX,CAAkBG,YAApF,CAA9B;;UACA,MAAKC,QAAL,CAAc,MAAKxC,KAAL,CAAWyC,IAAzB,EAA+BH,QAA/B;QACH,CAHD,MAGO;UACH,MAAKE,QAAL,CAAc,MAAKxC,KAAL,CAAWyC,IAAzB,EAA+B5B,KAA/B;QACH;;QAED,IAAImB,aAAJ,EAAmB;UACf,MAAKpB,WAAL,CAAiB,KAAjB,EAAwBC,KAAxB;;UACA,MAAK6B,iBAAL,CAAuB,MAAKvC,KAAL,CAAWE,OAAlC,EAA2C,IAA3C;QACH;MACJ,CAd4B,EAc1B,GAd0B,EAcrBG,QAdqB,EAcXwB,aAdW,CAA7B;IAeH,CA1OkB;IAAA,0FA4OX,YAAM;MACV,IAAQI,MAAR,GAAmB,MAAKpC,KAAxB,CAAQoC,MAAR;MACA,IAAM5B,QAAQ,GAAGe,IAAI,CAACC,KAAL,CAAWD,IAAI,CAACE,SAAL,CAAe,MAAKtB,KAAL,CAAWU,KAA1B,CAAX,CAAjB;MACA,IAAMa,YAAY,GAAGH,IAAI,CAACC,KAAL,CAAWD,IAAI,CAACE,SAAL,CAAe,MAAKtB,KAAL,CAAWuB,YAA1B,CAAX,CAArB;MAEA,IAAMiB,OAAO,GAAGP,MAAM,CAACQ,KAAP,CAAaC,MAAb,CAAoB,UAACC,WAAD,EAAcC,YAAd,EAA+B;QAC/D,IAAIC,YAAJ;;QACA,IAAID,YAAY,CAACE,WAAjB,EAA8B;UAC1B,IAAI,MAAKjD,KAAL,CAAWkD,MAAf,EAAuB;YACnBF,YAAY,GAAGD,YAAY,CAACE,WAAb,GAA2B,MAAKE,aAAL,CAAmBJ,YAAY,CAACE,WAAhC,EAA6C,MAAKjD,KAAL,CAAWoC,MAAX,WAA7C,EAAwE,MAAKpC,KAAL,CAAWoD,IAAnF,EAAyF,MAAKpD,KAAL,CAAWqD,WAApG,EAAiH7C,QAAQ,CAAC8C,MAA1H,EAAkI,MAAKtD,KAAL,CAAWoD,IAA7I,CAA3B,GAAgL,MAAKpD,KAAL,CAAWoC,MAAX,WAA/L;UACH,CAFD,MAEO;YACHY,YAAY,GAAGD,YAAY,CAACE,WAAb,GAA2B,MAAKM,OAAL,CAAaR,YAAY,CAACE,WAA1B,EAAuC,MAAKjD,KAAL,CAAWoC,MAAX,WAAvC,EAAkE,MAAKpC,KAAL,CAAWoD,IAA7E,EAAmF5C,QAAQ,CAAC8C,MAA5F,EAAoG,MAAKtD,KAAL,CAAWoD,IAA/G,CAA3B,GAAkJ,MAAKpD,KAAL,CAAWoC,MAAX,WAAjK;UACH;QACJ,CAND,MAMO;UACHY,YAAY,GAAGD,YAAY,WAAZ,KAAyBjD,SAAzB,GAAqC,IAArC,GAA4CiD,YAAY,WAAvE;QACH;;QAEDD,WAAW,CAACC,YAAY,CAACN,IAAd,CAAX,GAAiCO,YAAjC;QACA,OAAOF,WAAP;MACH,CAde,EAcb,EAda,CAAhB;MAgBAtC,QAAQ,CAACd,IAAT,CAAciD,OAAd;MACAjB,YAAY,CAAChC,IAAb,CAAkBc,QAAQ,CAAC8C,MAAT,GAAkB,CAApC;;MAEA,MAAK5C,QAAL,CAAc;QAAEG,KAAK,EAAEL,QAAT;QAAmBkB,YAAY,EAAZA;MAAnB,CAAd,EAAiD;QAAA,OAC7C,MAAKK,eAAL,CAAqBvB,QAArB,CAD6C;MAAA,CAAjD;IAEH,CAtQkB;IAAA,gGA4QL,YAA6C;MAAA,IAA5CgD,KAA4C,uEAApC,KAAoC;MAAA,IAA7B3C,KAA6B,uEAArB,MAAKV,KAAL,CAAWU,KAAU;MACvD,IAAIa,YAAY,GAAGb,KAAK,CAACI,GAAN,CAAU,UAACwC,CAAD,EAAI3B,CAAJ;QAAA,OAAUA,CAAV;MAAA,CAAV,CAAnB;MACAzC,MAAM,CAACC,IAAP,CAAY,MAAKoE,UAAjB,EAA6BnE,OAA7B,CAAqC,UAAAkD,IAAI,EAAI;QAAA;;QACzC,IAAIkB,aAAa,4BAAG,MAAKD,UAAL,CAAgBjB,IAAhB,EAAsBmB,OAAzB,0DAAG,sBAA+BC,QAA/B,CAAwC,CAAxC,EAA2CA,QAA3C,CAAoD,CAApD,EAAuDhD,KAA3E;;QACA,IAAI,CAAC2C,KAAD,IAAUG,aAAd,EAA6B;UACzBA,aAAa,GAAGA,aAAa,CAACG,WAAd,EAAhB;UACApC,YAAY,GAAGA,YAAY,CAACqC,MAAb,CAAoB,UAAAC,GAAG;YAAA,OAAInD,KAAK,CAACmD,GAAD,CAAL,IAAcnD,KAAK,CAACmD,GAAD,CAAL,CAAWvB,IAAX,CAAd,IAAkC5B,KAAK,CAACmD,GAAD,CAAL,CAAWvB,IAAX,EAAiBqB,WAAjB,GAA+BG,QAA/B,CAAwCN,aAAxC,CAAtC;UAAA,CAAvB,CAAf;QACH,CAHD,MAGO,IAAI,MAAKD,UAAL,CAAgBjB,IAAhB,EAAsBmB,OAA1B,EAAmC;UACtC,MAAKF,UAAL,CAAgBjB,IAAhB,EAAsBmB,OAAtB,CAA8BC,QAA9B,CAAuC,CAAvC,EAA0CA,QAA1C,CAAmD,CAAnD,EAAsDhD,KAAtD,GAA8D,EAA9D;QACH;MACJ,CARD;;MAUA,IAAIU,IAAI,CAACE,SAAL,CAAeC,YAAf,MAAiCH,IAAI,CAACE,SAAL,CAAe,MAAKtB,KAAL,CAAWuB,YAA1B,CAArC,EAA8E;QAC1E,MAAKhB,QAAL,CAAc;UAAEgB,YAAY,EAAZA;QAAF,CAAd;MACH;IACJ,CA3RkB;IAEf,MAAKgC,UAAL,GAAkB,EAAlB;IACA,MAAK1D,KAAL,CAAWoC,MAAX,CAAkBQ,KAAlB,GAA0B,MAAK5C,KAAL,CAAWoC,MAAX,CAAkBQ,KAAlB,IAA2B,EAArD;;IACA,MAAK5C,KAAL,CAAWoC,MAAX,CAAkBQ,KAAlB,CAAwBrD,OAAxB,CAAgC,UAAA2B,EAAE,EAAI;MAClC,IAAIA,EAAE,CAAC6C,MAAP,EAAe;QACX,MAAKL,UAAL,CAAgBxC,EAAE,CAACuB,IAAnB,iBAA2B,IAAAyB,gBAAA,GAA3B;MACH;IACJ,CAJD;;IAJe;EASlB;;;;;6GAED;QAAA;QAAA;UAAA;YAAA;cAAA;gBACI;gBACIrD,KAFR,GAEgBsD,0BAAA,CAAcC,QAAd,CAAuB,KAAKpE,KAAL,CAAWoD,IAAlC,EAAwC,KAAKpD,KAAL,CAAWyC,IAAnD,KAA4D,EAF5E,EAII;;gBACA,IAAI,KAAKzC,KAAL,CAAWoC,MAAX,CAAkBC,UAAtB,EAAkC;kBAC9BxB,KAAK,GAAG7B,aAAa,CAAC6B,KAAD,EAAQ,KAAKb,KAAL,CAAWoC,MAAX,CAAkBC,UAA1B,EAAsC,KAAKrC,KAAL,CAAWoC,MAAX,CAAkBG,YAAxD,CAArB;gBACH;;gBAED,IAAI,CAAC8B,KAAK,CAACC,OAAN,CAAczD,KAAd,CAAL,EAA2B;kBACvBA,KAAK,GAAG,EAAR;gBACH;;gBAEKa,YAbV,GAayBb,KAAK,CAACI,GAAN,CAAU,UAACwC,CAAD,EAAI3B,CAAJ;kBAAA,OAAUA,CAAV;gBAAA,CAAV,CAbzB;gBAeI,KAAKpB,QAAL,CAAc;kBACVG,KAAK,EAALA,KADU;kBAEVa,YAAY,EAAZA,YAFU;kBAGVrB,OAAO;kBAAE;kBAAuE,EAHtE;kBAIVD,KAAK,EAAE,KAJG;kBAKVO,SAAS,EAAE,CALD;kBAMV4D,QAAQ,EAAE;gBANA,CAAd;;cAfJ;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;WAyBA,gCAAuB;MACnB,KAAKtC,WAAL,IAAoBC,YAAY,CAAC,KAAKD,WAAN,CAAhC;MACA,KAAKA,WAAL,GAAmB,IAAnB;MACA;IACH;;;WAED,mBAAUuC,QAAV,EAAoBpB,IAApB,EAA0BY,GAA1B,EAA+B;MAAA;;MAC3B,mBAAgC,KAAK7D,KAArC;MAAA,IAAQU,KAAR,gBAAQA,KAAR;MAAA,IAAe4D,YAAf,gBAAeA,YAAf;MACA,IAAQrC,MAAR,GAAmB,KAAKpC,KAAxB,CAAQoC,MAAR;MACA,IAAMsC,kBAAkB,GAAGtC,MAAM,CAACQ,KAAP,CAAa+B,IAAb,CAAkB,UAAAzD,EAAE;QAAA,OAAIA,EAAE,CAACuB,IAAH,KAAY+B,QAAhB;MAAA,CAApB,CAA3B;;MAEA,IAAI,CAACE,kBAAL,EAAyB;QACrB,OAAO,IAAP;MACH;;MAED,IAAME,UAAU,GAAG;QACfhC,KAAK,uCACA4B,QADA,EACWE,kBADX;MADU,CAAnB;MAMA,oBAAO,gCAAC,uBAAD;QACH,KAAK,EAAEV,GAAG,GAAG,KAAK7D,KAAL,CAAWQ,SADrB;QAEH,UAAU,EAAEqD,GAFT;QAGH,UAAU,EAAE,KAAKhE,KAAL,CAAWoD,IAHpB;QAIH,MAAM,EAAE,KAAKpD,KAAL,CAAW6E,MAJhB;QAKH,WAAW,EAAE,KAAK7E,KAAL,CAAW8E,WALrB;QAMH,QAAQ,EAAE,KAAK9E,KAAL,CAAW+E,QANlB;QAOH,MAAM,EAAE,KAAK/E,KAAL,CAAWgF,MAPhB;QAQH,KAAK,EAAE,KAAKhF,KAAL,CAAWiF,KARf;QASH,SAAS,EAAE,KAAKjF,KAAL,CAAWkF,SATnB;QAUH,SAAS,EAAE,KAAKlF,KAAL,CAAWmF,SAVnB;QAWH,IAAI,EAAE/B,IAXH;QAYH,KAAK,MAZF;QAaH,MAAM,MAbH;QAcH,MAAM,EAAEwB,UAdL;QAeH,YAAY,EAAEH,YAfX;QAgBH,OAAO,EAAE,KAAKzE,KAAL,CAAWoF,OAhBjB;QAiBH,QAAQ,EAAE,kBAAC3C,IAAD,EAAO4C,WAAP,EAAuB;UAC7B,IAAMC,MAAM,GAAG/D,IAAI,CAACC,KAAL,CAAWD,IAAI,CAACE,SAAL,CAAeZ,KAAf,CAAX,CAAf;UACAyE,MAAM,CAACtB,GAAD,CAAN,CAAYvB,IAAZ,IAAoB4C,WAApB;;UACA,MAAI,CAAC3E,QAAL,CAAc;YAAEG,KAAK,EAAEyE;UAAT,CAAd,EAAiC;YAAA,OAC7B,MAAI,CAACvD,eAAL,CAAqBuD,MAArB,EAA4B,IAA5B,CAD6B;UAAA,CAAjC;QAEH,CAtBE;QAuBH,OAAO,EAAE,iBAACC,KAAD,EAAQ9C,IAAR;UAAA,OAAiB,MAAI,CAAC+C,OAAL,CAAaD,KAAb,EAAoB9C,IAApB,CAAjB;QAAA;MAvBN,EAAP;IAyBH;;;WA+CD,2BAAkBgD,YAAlB,EAAgC;MAAA;;MAC5B,kBAA4B,KAAKzF,KAAjC;MAAA,IAAQoC,MAAR,eAAQA,MAAR;MAAA,IAAgBsD,OAAhB,eAAgBA,OAAhB;MACA,mBAA2B,KAAKvF,KAAhC;MAAA,IAAQC,KAAR,gBAAQA,KAAR;MAAA,IAAeC,OAAf,gBAAeA,OAAf;MACA,oBAAO,gCAAC,mBAAD,qBACH,gCAAC,kBAAD,QACK+B,MAAM,CAACQ,KAAP,CAAa3B,GAAb,CAAiB,UAAA0E,QAAQ;QAAA;;QAAA,oBACtB,gCAAC,mBAAD;UACI,KAAK,EAAE;YAAErJ,KAAK,EAAE,OAAOqJ,QAAQ,CAACrJ,KAAhB,KAA0B,QAA1B,IAAsCqJ,QAAQ,CAACrJ,KAAT,CAAesJ,QAAf,CAAwB,GAAxB,CAAtC,GAAqED,QAAQ,CAACrJ,KAA9E,GAAsFqJ,QAAQ,CAACrJ;UAAxG,CADX;UAEI,GAAG,EAAEqJ,QAAQ,CAAClD,IAFlB;UAGI,KAAK,EAAC,MAHV;UAII,aAAa,EAAEpC,OAAO,KAAKsF,QAAQ,CAAClD,IAArB,GAA4BrC,KAA5B,GAAoC;QAJvD,gBAMI;UAAK,SAAS,EAAEsF,OAAO,CAACrH;QAAxB,GACKsH,QAAQ,CAACvE,IAAT,iBAAiB,gCAAC,wBAAD;UACd,MAAM,MADQ;UAEd,SAAS,EAAE,IAAAyE,gBAAA,EAAKxF,OAAO,KAAKsF,QAAQ,CAAClD,IAArB,IAA6BiD,OAAO,CAACjH,MAA1C,CAFG;UAGd,SAAS,EAAE4B,OAAO,KAAKsF,QAAQ,CAAClD,IAArB,GAA4BrC,KAA5B,GAAoC,KAHjC;UAId,OAAO,EAAE;YAAA,OAAM,MAAI,CAACsC,iBAAL,CAAuBiD,QAAQ,CAAClD,IAAhC,CAAN;UAAA;QAJK,EADtB,EAOKkD,QAAQ,CAAC5B,MAAT,IAAmB,MAAI,CAAC5D,KAAL,CAAWoE,QAAX,CAAoBN,QAApB,CAA6B0B,QAAQ,CAAClD,IAAtC,CAAnB,gBACG,gCAAC,mBAAD;UACI,OAAO,EAAC,UADZ;UAEI,GAAG,EAAE,MAAI,CAACiB,UAAL,CAAgBiC,QAAQ,CAAClD,IAAzB,CAFT;UAGI,QAAQ,EAAE;YAAA,OAAM,MAAI,CAAC7B,WAAL,EAAN;UAAA,CAHd;UAII,KAAK,EAAEkF,gBAAA,CAAKC,CAAL,CAAO,sDAAP,CAJX;UAKI,UAAU,EAAE;YACRC,YAAY,EAAE,gCAAI,CAACtC,UAAL,CAAgBiC,QAAQ,CAAClD,IAAzB,2GAAgCmB,OAAhC,4GAAyCC,QAAzC,CAAkD,CAAlD,6GAAsDA,QAAtD,CAA+D,CAA/D,mFAAmEhD,KAAnE,kBAA4E,gCAAC,wBAAD;cAAgB,QAAQ,EAAC;YAAzB,gBACtF,gCAAC,oBAAD;cACI,IAAI,EAAC,OADT;cAEI,OAAO,EAAE,mBAAM;gBACX,MAAI,CAAC6C,UAAL,CAAgBiC,QAAQ,CAAClD,IAAzB,EAA+BmB,OAA/B,CAAuCC,QAAvC,CAAgD,CAAhD,EAAmDA,QAAnD,CAA4D,CAA5D,EAA+DhD,KAA/D,GAAuE,EAAvE;;gBACA,MAAI,CAACD,WAAL;cACH;YALL,gBAOI,gCAAC,iBAAD,OAPJ,CADsF;UADlF,CALhB;UAkBI,SAAS,MAlBb;UAmBI,WAAW,EAAE,MAAI,CAACqF,OAAL,CAAaN,QAAQ,CAACvH,KAAtB;QAnBjB,EADH,gBAsBK;UAAM,SAAS,EAAE,MAAI,CAAC4B,KAAL,CAAW0F,OAAX,CAAmB9I;QAApC,GAAiD,MAAI,CAACqJ,OAAL,CAAaN,QAAQ,CAACvH,KAAtB,CAAjD,CA7BV,EA8BMuH,QAAQ,CAAC5B,MAAT,gBAAkB,gCAAC,oBAAD;UAChB,KAAK,EAAE+B,gBAAA,CAAKC,CAAL,CAAO,2BAAP,CADS;UAEhB,IAAI,EAAC,OAFW;UAGhB,OAAO,EAAE,mBAAM;YACX,IAAMxB,QAAQ,uCAAO,MAAI,CAACpE,KAAL,CAAWoE,QAAlB,CAAd;;YACA,IAAM3C,GAAG,GAAG,MAAI,CAACzB,KAAL,CAAWoE,QAAX,CAAoB1C,OAApB,CAA4B8D,QAAQ,CAAClD,IAArC,CAAZ;;YACA,IAAIb,GAAG,KAAK,CAAC,CAAb,EAAgB;cACZ2C,QAAQ,CAAC7E,IAAT,CAAciG,QAAQ,CAAClD,IAAvB;YACH,CAFD,MAEO;cACH8B,QAAQ,CAAC5C,MAAT,CAAgBC,GAAhB,EAAqB,CAArB;YACH;;YACD,MAAI,CAAClB,QAAL,CAAc;cAAE6D,QAAQ,EAARA;YAAF,CAAd,EAA4B,YAAM;cAC9B,IAAI3C,GAAG,IAAI,MAAI,CAAC8B,UAAL,CAAgBiC,QAAQ,CAAClD,IAAzB,EAA+BmB,OAA/B,CAAuCC,QAAvC,CAAgD,CAAhD,EAAmDA,QAAnD,CAA4D,CAA5D,EAA+DhD,KAA1E,EAAiF;gBAC7E,MAAI,CAAC6C,UAAL,CAAgBiC,QAAQ,CAAClD,IAAzB,EAA+BmB,OAA/B,CAAuCC,QAAvC,CAAgD,CAAhD,EAAmDA,QAAnD,CAA4D,CAA5D,EAA+DhD,KAA/D,GAAuE,EAAvE;;gBACA,MAAI,CAACD,WAAL;cACH;YACJ,CALD;UAMH;QAjBe,GAkBlB,MAAI,CAACT,KAAL,CAAWoE,QAAX,CAAoBN,QAApB,CAA6B0B,QAAQ,CAAClD,IAAtC,iBAA8C,gCAAC,wBAAD,OAA9C,gBAAkE,gCAAC,qBAAD,OAlBhD,CAAlB,GAkBmG,IAhDzG,CANJ,CADsB;MAAA,CAAzB,CADL,EA4DK,CAACL,MAAM,CAAC8D,QAAR,iBAAoB,gCAAC,mBAAD;QAAW,KAAK,EAAE;UAAE3H,WAAW,EAAE,EAAf;UAAmBC,YAAY,EAAE,EAAjC;UAAqClC,KAAK,EAAEmJ,YAA5C;UAA0D7G,SAAS,EAAE;QAArE,CAAlB;QAAkG,OAAO,EAAC;MAA1G,gBACjB,gCAAC,oBAAD;QAAY,QAAQ,MAApB;QAAqB,IAAI,EAAC;MAA1B,gBACI,gCAAC,kBAAD,OADJ,CADiB,CA5DzB,CADG,CAAP;IAoEH;;;WAgED,0BAAiB;MAAA;;MACb,OAAOS,MAAM,CAACC,IAAP,CAAY,KAAKoE,UAAjB,EAA6BiB,IAA7B,CAAkC,UAAAlC,IAAI;QAAA;;QAAA,gCAAI,MAAI,CAACiB,UAAL,CAAgBjB,IAAhB,EAAsBmB,OAA1B,0DAAI,sBAA+BC,QAA/B,CAAwC,CAAxC,EAA2CA,QAA3C,CAAoD,CAApD,EAAuDhD,KAA3D;MAAA,CAAtC,CAAP;IACH;;;WAmBD,kBAASmD,GAAT,EAAc;MAAA;;MACV,IAAMnD,KAAK,GAAGU,IAAI,CAACC,KAAL,CAAWD,IAAI,CAACE,SAAL,CAAe,KAAKtB,KAAL,CAAWU,KAA1B,CAAX,CAAd;MACA,IAAMpB,IAAI,GAAGoB,KAAK,CAACmD,GAAD,CAAlB;MACAnD,KAAK,CAACc,MAAN,CAAaqC,GAAb,EAAkB,CAAlB;MACAnD,KAAK,CAACc,MAAN,CAAaqC,GAAG,GAAG,CAAnB,EAAsB,CAAtB,EAAyBvE,IAAzB;MACA,KAAKiB,QAAL,CAAc;QAAEG,KAAK,EAALA,KAAF;QAASF,SAAS,EAAE,KAAKR,KAAL,CAAWQ,SAAX,GAAuB;MAA3C,CAAd,EAAkE;QAAA,OAC9D,MAAI,CAACoB,eAAL,CAAqBlB,KAArB,CAD8D;MAAA,CAAlE;IAEH;;;WAED,oBAAWmD,GAAX,EAAgB;MAAA;;MACZ,IAAMnD,KAAK,GAAGU,IAAI,CAACC,KAAL,CAAWD,IAAI,CAACE,SAAL,CAAe,KAAKtB,KAAL,CAAWU,KAA1B,CAAX,CAAd;MACA,IAAMpB,IAAI,GAAGoB,KAAK,CAACmD,GAAD,CAAlB;MACAnD,KAAK,CAACc,MAAN,CAAaqC,GAAb,EAAkB,CAAlB;MACAnD,KAAK,CAACc,MAAN,CAAaqC,GAAG,GAAG,CAAnB,EAAsB,CAAtB,EAAyBvE,IAAzB;MACA,KAAKiB,QAAL,CAAc;QAAEG,KAAK,EAALA,KAAF;QAASF,SAAS,EAAE,KAAKR,KAAL,CAAWQ,SAAX,GAAuB;MAA3C,CAAd,EAAkE;QAAA,OAC9D,MAAI,CAACoB,eAAL,CAAqBlB,KAArB,CAD8D;MAAA,CAAlE;IAEH;;;WAED,oBAAW0E,KAAX,EAAkBY,QAAlB,EAA4BnD,YAA5B,EAA0C;MAAA;;MACtC,mBAA4B,KAAKhD,KAAjC;MAAA,IAAQ0F,OAAR,gBAAQA,OAAR;MAAA,IAAiBtD,MAAjB,gBAAiBA,MAAjB;MACA,mBAAgC,KAAKjC,KAArC;MAAA,IAAQU,KAAR,gBAAQA,KAAR;MAAA,IAAea,YAAf,gBAAeA,YAAf;;MAEA,IAAI,CAACb,KAAL,EAAY;QACR,OAAO,IAAP;MACH;;MAED,IAAMuF,cAAc,GAAG,KAAKC,cAAL,EAAvB;MAEA,oBAAO,gCAAC,eAAD;QAAO,SAAS,EAAEX,OAAO,CAAClJ;MAA1B,gBACH;QAAK,SAAS,EAAEkJ,OAAO,CAAClI;MAAxB,GACK4E,MAAM,CAACkE,KAAP,gBAAe,gCAAC,iBAAD;QACZ,OAAO,EAAC,OADI;QAEZ,SAAS,EAAEZ,OAAO,CAACpH;MAFP,gBAIZ,gCAAC,oBAAD;QAAY,SAAS,EAAEoH,OAAO,CAACtH,KAA/B;QAAsC,OAAO,EAAC,IAA9C;QAAmD,EAAE,EAAC,YAAtD;QAAmE,SAAS,EAAC;MAA7E,GACK,KAAK6H,OAAL,CAAa7D,MAAM,CAACkE,KAApB,CADL,CAJY,CAAf,GAOY,IARjB,EASK,CAAClE,MAAM,CAAC8D,QAAR,gBAAmB,gCAAC,iBAAD;QAAS,KAAK,EAAEE,cAAc,GAAGN,gBAAA,CAAKC,CAAL,CAAO,qCAAP,CAAH,GAAmDD,gBAAA,CAAKC,CAAL,CAAO,YAAP;MAAjF,gBAChB,2DACI,gCAAC,oBAAD;QAAY,QAAQ,EAAE,CAAC,CAACK,cAAF,IAAoB,CAAC,KAAKpG,KAAL,CAAWoC,MAAX,CAAkBmE,gBAA7D;QAA+E,OAAO,EAAE,KAAKC;MAA7F,gBACI,gCAAC,eAAD,OADJ,CADJ,CADgB,CAAnB,GAMY,IAfjB,CADG,eAkBH,gCAAC,wBAAD,qBACI,gCAAC,eAAD;QAAO,SAAS,EAAEd,OAAO,CAAC7I,KAA1B;QAAiC,IAAI,EAAC;MAAtC,GACK,KAAK4J,iBAAL,CAAuB,CAACL,cAAD,IAAmB,CAAC,KAAKjG,KAAL,CAAWE,OAA/B,GAAyC,GAAzC,GAA+C,EAAtE,CADL,eAEI,gCAAC,mBAAD,QACKqB,YAAY,CAACT,GAAb,CAAiB,UAAC+C,GAAD,EAAMlC,CAAN;QAAA,oBACd,gCAAC,kBAAD;UACI,KAAK,MADT;UAEI,GAAG,EAAEkC;QAFT,GAIK5B,MAAM,CAACQ,KAAP,CAAa3B,GAAb,CAAiB,UAAA0E,QAAQ,EAAI;UAC1B,oBAAO,gCAAC,mBAAD;YAAW,GAAG,EAAEA,QAAQ,CAAClD,IAAT,GAAgB,GAAhB,GAAsBuB,GAAtC;YAA2C,KAAK,EAAC;UAAjD,GACF,MAAI,CAAC0C,SAAL,CAAef,QAAQ,CAAClD,IAAxB,EAA8B5B,KAAK,CAACmD,GAAD,CAAnC,EAA0CA,GAA1C,CADE,CAAP;QAGH,CAJA,CAJL,EASK,CAAC5B,MAAM,CAAC8D,QAAR,iBAAoB,gCAAC,mBAAD;UAAW,KAAK,EAAC,MAAjB;UAAwB,SAAS,EAAER,OAAO,CAAC5G;QAA3C,GAChB,CAACsH,cAAD,IAAmB,CAAC,MAAI,CAACjG,KAAL,CAAWE,OAA/B,GAA0CyB,CAAC,gBAAG,gCAAC,iBAAD;UAAS,KAAK,EAAEgE,gBAAA,CAAKC,CAAL,CAAO,YAAP;QAAhB,gBAC3C,gCAAC,oBAAD;UAAY,IAAI,EAAC,OAAjB;UAAyB,OAAO,EAAE;YAAA,OAAM,MAAI,CAACY,QAAL,CAAc3C,GAAd,CAAN;UAAA;QAAlC,gBACI,gCAAC,uBAAD,OADJ,CAD2C,CAAH,gBAI/B;UAAK,SAAS,EAAE0B,OAAO,CAAC7G;QAAxB,EAJZ,GAIsD,IALtC,EAMhB,CAACuH,cAAD,IAAmB,CAAC,MAAI,CAACjG,KAAL,CAAWE,OAA/B,GAA0CyB,CAAC,GAAGJ,YAAY,CAAC4B,MAAb,GAAsB,CAA1B,gBAA8B,gCAAC,iBAAD;UAAS,KAAK,EAAEwC,gBAAA,CAAKC,CAAL,CAAO,cAAP;QAAhB,gBACrE,gCAAC,oBAAD;UAAY,IAAI,EAAC,OAAjB;UAAyB,OAAO,EAAE;YAAA,OAAM,MAAI,CAACa,UAAL,CAAgB5C,GAAhB,CAAN;UAAA;QAAlC,gBACI,gCAAC,yBAAD,OADJ,CADqE,CAA9B,gBAI9B;UAAK,SAAS,EAAE0B,OAAO,CAAC7G;QAAxB,EAJZ,GAIuD,IAVvC,eAWjB,gCAAC,iBAAD;UAAS,KAAK,EAAEiH,gBAAA,CAAKC,CAAL,CAAO,uBAAP;QAAhB,gBACI,gCAAC,oBAAD;UAAY,IAAI,EAAC,OAAjB;UAAyB,OAAO,EAAE,MAAI,CAACc,QAAL,CAAc7C,GAAd;QAAlC,gBACI,gCAAC,kBAAD,OADJ,CADJ,CAXiB,CATzB,CADc;MAAA,CAAjB,CADL,CAFJ,CADJ,EAkCK,CAACtC,YAAY,CAAC4B,MAAd,IAAwBzC,KAAK,CAACyC,MAA9B,gBACG;QAAK,SAAS,EAAEoC,OAAO,CAAC/G;MAAxB,gBACI,gCAAC,oBAAD;QAAY,SAAS,EAAE+G,OAAO,CAACtH,KAA/B;QAAsC,OAAO,EAAC,IAA9C;QAAmD,EAAE,EAAC,YAAtD;QAAmE,SAAS,EAAC;MAA7E,GACK0H,gBAAA,CAAKC,CAAL,CAAO,+BAAP,CADL,eAEI,gCAAC,oBAAD;QACI,IAAI,EAAC,OADT;QAEI,OAAO,EAAE,iBAAAe,CAAC;UAAA,OAAI,MAAI,CAAClG,WAAL,CAAiB,IAAjB,CAAJ;QAAA;MAFd,gBAII,gCAAC,iBAAD,OAJJ,CAFJ,CADJ,CADH,GAWY,IA7CjB,CAlBG,EAiEFwB,MAAM,CAAC2E,IAAP,gBAAc,gCAAC,0BAAD,QAAiB,KAAKC,UAAL,CAAgB,KAAKhH,KAAL,CAAWoC,MAAX,CAAkB2E,IAAlC,EAAwC,KAAK/G,KAAL,CAAWoC,MAAX,CAAkB6E,QAA1D,EAAoE,KAAKjH,KAAL,CAAWoC,MAAX,CAAkB8E,aAAtF,CAAjB,CAAd,GAAwJ,IAjEtJ,CAAP;IAmEH;;;WAxSD,8BAA4B7F,CAA5B,EAA+BC,CAA/B,EAAkCjB,OAAlC,EAA2C;MACvC,IAAIiB,CAAC,CAACjB,OAAD,CAAD,GAAagB,CAAC,CAAChB,OAAD,CAAlB,EAA6B;QACzB,OAAO,CAAC,CAAR;MACH,CAFD,MAGI,IAAIiB,CAAC,CAACjB,OAAD,CAAD,GAAagB,CAAC,CAAChB,OAAD,CAAlB,EAA6B;QACzB,OAAO,CAAP;MACH,CAFD,MAEO;QACH,OAAO,CAAP;MACH;IACR;;;WAED,uBAAqBD,KAArB,EAA4BC,OAA5B,EAAqC;MACjC,OAAOD,KAAK,KAAK,MAAV,GACD,UAACiB,CAAD,EAAIC,CAAJ;QAAA,OAAWvB,WAAW,CAACoH,oBAAZ,CAAiC9F,CAAjC,EAAoCC,CAApC,EAAuCjB,OAAvC,CAAX;MAAA,CADC,GAED,UAACgB,CAAD,EAAIC,CAAJ;QAAA,OAAU,CAACvB,WAAW,CAACoH,oBAAZ,CAAiC9F,CAAjC,EAAoCC,CAApC,EAAuCjB,OAAvC,CAAX;MAAA,CAFN;IAGH;;;EApGqB8D,0B;;AAgY1BpE,WAAW,CAACqH,SAAZ,GAAwB;EACpBvC,MAAM,EAAEwC,qBAAA,CAAUpI,MAAV,CAAiBqI,UADL;EAEpBpC,SAAS,EAAEmC,qBAAA,CAAUE,MAFD;EAGpBpC,SAAS,EAAEkC,qBAAA,CAAUE,MAHD;EAIpBC,KAAK,EAAEH,qBAAA,CAAUpI,MAJG;EAKpBwI,SAAS,EAAEJ,qBAAA,CAAUE,MALD;EAMpBnE,IAAI,EAAEiE,qBAAA,CAAUpI,MAAV,CAAiBqI,UANH;EAOpBlF,MAAM,EAAEiF,qBAAA,CAAUpI,MAPE;EAQpBuG,OAAO,EAAE6B,qBAAA,CAAUK,IARC;EASpBlF,QAAQ,EAAE6E,qBAAA,CAAUK;AATA,CAAxB;;eAYe,IAAAC,kBAAA,EAAWxL,MAAX,EAAmB4D,WAAnB,C"}