@iobroker/adapter-react-v5 4.4.7 → 4.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (84) hide show
  1. package/Components/CustomModal.js +6 -3
  2. package/Components/CustomModal.js.map +1 -1
  3. package/Components/FileBrowser.js +4 -2
  4. package/Components/FileBrowser.js.map +1 -1
  5. package/Components/FileViewer.d.ts +5 -0
  6. package/Components/FileViewer.js +34 -7
  7. package/Components/FileViewer.js.map +1 -1
  8. package/Components/JsonConfigComponent/ConfigAccordion.d.ts +1 -0
  9. package/Components/JsonConfigComponent/ConfigAccordion.js +3 -1
  10. package/Components/JsonConfigComponent/ConfigAccordion.js.map +1 -1
  11. package/Components/JsonConfigComponent/ConfigCRON.js +2 -4
  12. package/Components/JsonConfigComponent/ConfigCRON.js.map +1 -1
  13. package/Components/JsonConfigComponent/ConfigCheckLicense.js +29 -12
  14. package/Components/JsonConfigComponent/ConfigCheckLicense.js.map +1 -1
  15. package/Components/JsonConfigComponent/ConfigCustom.js +4 -5
  16. package/Components/JsonConfigComponent/ConfigCustom.js.map +1 -1
  17. package/Components/JsonConfigComponent/ConfigFile.js +9 -14
  18. package/Components/JsonConfigComponent/ConfigFile.js.map +1 -1
  19. package/Components/JsonConfigComponent/ConfigGeneric.d.ts +1 -0
  20. package/Components/JsonConfigComponent/ConfigGeneric.js +9 -8
  21. package/Components/JsonConfigComponent/ConfigGeneric.js.map +1 -1
  22. package/Components/JsonConfigComponent/ConfigIP.js +5 -0
  23. package/Components/JsonConfigComponent/ConfigIP.js.map +1 -1
  24. package/Components/JsonConfigComponent/ConfigNumber.js +42 -31
  25. package/Components/JsonConfigComponent/ConfigNumber.js.map +1 -1
  26. package/Components/JsonConfigComponent/ConfigPanel.js +2 -0
  27. package/Components/JsonConfigComponent/ConfigPanel.js.map +1 -1
  28. package/Components/JsonConfigComponent/ConfigPort.js +44 -29
  29. package/Components/JsonConfigComponent/ConfigPort.js.map +1 -1
  30. package/Components/JsonConfigComponent/ConfigSelect.js +29 -12
  31. package/Components/JsonConfigComponent/ConfigSelect.js.map +1 -1
  32. package/Components/JsonConfigComponent/ConfigSelectSendTo.js +11 -21
  33. package/Components/JsonConfigComponent/ConfigSelectSendTo.js.map +1 -1
  34. package/Components/JsonConfigComponent/ConfigSendto.js +16 -20
  35. package/Components/JsonConfigComponent/ConfigSendto.js.map +1 -1
  36. package/Components/JsonConfigComponent/ConfigSetState.js +18 -19
  37. package/Components/JsonConfigComponent/ConfigSetState.js.map +1 -1
  38. package/Components/JsonConfigComponent/ConfigStaticText.js +14 -23
  39. package/Components/JsonConfigComponent/ConfigStaticText.js.map +1 -1
  40. package/Components/JsonConfigComponent/ConfigTable.js +12 -8
  41. package/Components/JsonConfigComponent/ConfigTable.js.map +1 -1
  42. package/Components/JsonConfigComponent/ConfigTabs.d.ts +1 -0
  43. package/Components/JsonConfigComponent/ConfigTabs.js +5 -4
  44. package/Components/JsonConfigComponent/ConfigTabs.js.map +1 -1
  45. package/Components/JsonConfigComponent/ConfigText.js +3 -7
  46. package/Components/JsonConfigComponent/ConfigText.js.map +1 -1
  47. package/Components/JsonConfigComponent/ConfigTextSendTo.js +3 -4
  48. package/Components/JsonConfigComponent/ConfigTextSendTo.js.map +1 -1
  49. package/Components/JsonConfigComponent/ConfigTimePicker.js.map +1 -1
  50. package/Components/JsonConfigComponent/ConfigUUID.js +5 -6
  51. package/Components/JsonConfigComponent/ConfigUUID.js.map +1 -1
  52. package/Components/JsonConfigComponent/index.js +2 -0
  53. package/Components/JsonConfigComponent/index.js.map +1 -1
  54. package/Components/ObjectBrowser.d.ts +23 -1
  55. package/Components/ObjectBrowser.js +460 -50
  56. package/Components/ObjectBrowser.js.map +1 -1
  57. package/Components/TabContainer.d.ts +3 -0
  58. package/Components/TabContainer.js +7 -2
  59. package/Components/TabContainer.js.map +1 -1
  60. package/Components/TabContent.d.ts +1 -0
  61. package/Components/TabContent.js +7 -0
  62. package/Components/TabContent.js.map +1 -1
  63. package/Components/TableResize.js +7 -4
  64. package/Components/TableResize.js.map +1 -1
  65. package/Components/ToggleThemeMenu.js +5 -5
  66. package/Components/ToggleThemeMenu.js.map +1 -1
  67. package/Components/UploadImage.js +10 -7
  68. package/Components/UploadImage.js.map +1 -1
  69. package/Components/Utils.d.ts +2 -1
  70. package/Components/Utils.js +105 -98
  71. package/Components/Utils.js.map +1 -1
  72. package/README.md +6 -0
  73. package/i18n/de.json +10 -2
  74. package/i18n/en.json +10 -2
  75. package/i18n/es.json +10 -2
  76. package/i18n/fr.json +10 -2
  77. package/i18n/it.json +10 -2
  78. package/i18n/nl.json +10 -2
  79. package/i18n/pl.json +10 -2
  80. package/i18n/pt.json +10 -2
  81. package/i18n/ru.json +10 -2
  82. package/i18n/uk.json +10 -2
  83. package/i18n/zh-cn.json +10 -2
  84. package/package.json +7 -7
@@ -1 +1 @@
1
- {"version":3,"file":"ConfigFile.js","names":["_react","_interopRequireDefault","require","_propTypes","_styles","_Button","_TextField","_IconButton","_Article","_Videocam","_Code","_PlayArrow","_SelectFile","_ConfigGeneric2","_ConfigFileSelector","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","result","NewTarget","constructor","Reflect","construct","arguments","apply","_possibleConstructorReturn2","sham","Proxy","Boolean","prototype","valueOf","call","e","styles","fullWidth","width","fullWidthOneButton","marginRight","fullWidthIcon","selectedImage","height","display","IMAGE_EXT","AUDIO_EXT","VIDEO_EXT","DOC_EXT","JS_EXT","ConfigFile","_ConfigGeneric","_inherits2","_super","_classCallCheck2","_createClass2","key","value","componentDidMount","_get2","ConfigGeneric","getValue","props","data","attr","imagePrefix","undefined","setState","loadFile","pos","state","indexOf","adapter","substring","path","socket","readFile","Promise","resolve","play","then","AudioContext","file","context","buf","ConfigFileSelector","base64ToArrayBuffer","decodeAudioData","buffer","source","createBufferSource","connect","destination","start","err","window","alert","concat","getIcon","_this","extension","split","pop","toLowerCase","includes","createElement","className","classes","style","backgroundImage","backgroundSize","backgroundRepeat","color","onClick","renderFileBrowser","_this2","showFileBrowser","selected","onClose","onOk","onChange","schema","trim","selectOnlyFolders","allowUpload","allowDownload","allowCreateFolder","allowView","showToolbar","limitPath","renderItem","error","disabled","_this3","icon","variant","inputProps","maxLength","max","readOnly","disableEdit","target","placeholder","getText","label","helperText","renderHelp","help","helpLink","noTranslation","getDerivedStateFromProps","toString","propTypes","PropTypes","object","isRequired","themeType","string","themeName","onError","func","_default","withStyles","exports"],"sources":["JsonConfigComponent/ConfigFile.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@mui/styles';\n\nimport Button from '@mui/material/Button';\nimport TextField from '@mui/material/TextField';\nimport IconButton from '@mui/material/IconButton';\n\nimport IconText from '@mui/icons-material/Article';\nimport IconVideo from '@mui/icons-material/Videocam';\nimport IconCode from '@mui/icons-material/Code';\nimport IconPlay from '@mui/icons-material/PlayArrow';\n\nimport SelectFileDialog from './wrapper/Dialogs/SelectFile';\n\nimport ConfigGeneric from './ConfigGeneric';\nimport ConfigFileSelector from './ConfigFileSelector';\n\nconst styles = () => ({\n fullWidth: {\n width: '100%',\n },\n fullWidthOneButton: {\n width: 'calc(100% - 69px)',\n marginRight: 4,\n },\n fullWidthIcon: {\n width: 'calc(100% - 119px)',\n marginRight: 4,\n },\n selectedImage: {\n height: 40,\n width: 40,\n display: 'inline-block',\n marginRight: 8,\n },\n});\n\nconst IMAGE_EXT = ['jpg', 'jpeg', 'svg', 'png', 'webp'];\nconst AUDIO_EXT = ['mp3', 'ogg', 'wav', 'aac'];\nconst VIDEO_EXT = ['avi', 'mp4', 'mov'];\nconst DOC_EXT = ['txt', 'log', 'html', 'htm'];\nconst JS_EXT = ['json', 'js', 'ts'];\n\nclass ConfigFile extends ConfigGeneric {\n componentDidMount() {\n super.componentDidMount();\n const value = ConfigGeneric.getValue(this.props.data, this.props.attr);\n this.imagePrefix = this.props.imagePrefix === undefined ? './files' : this.props.imagePrefix;\n this.setState({ value });\n }\n\n static getDerivedStateFromProps(props, state) {\n const value = ConfigGeneric.getValue(props.data, props.attr);\n if (value === null || value === undefined || value.toString().trim() !== (state.value || '').toString().trim()) {\n return { value };\n }\n return null;\n }\n\n loadFile() {\n const pos = this.state.value.indexOf('/');\n if (pos !== -1) {\n const adapter = this.state.value.substring(0, pos);\n const path = this.state.value.substring(pos + 1);\n return this.props.socket.readFile(adapter, path, true);\n }\n\n return Promise.resolve(null);\n }\n\n play() {\n this.loadFile()\n .then(data => {\n if (typeof AudioContext !== 'undefined' && data?.file) {\n const context = new AudioContext();\n const buf = ConfigFileSelector.base64ToArrayBuffer(data.file);\n context.decodeAudioData(buf, buffer => {\n const source = context.createBufferSource(); // creates a sound source\n source.buffer = buffer; // tell the source which sounds to play\n source.connect(context.destination); // connect the source to the context's destination (the speakers)\n source.start(0);\n }, err => window.alert(`Cannot play: ${err}`));\n }\n });\n }\n\n getIcon() {\n const extension = this.state.value.split('.').pop().toLowerCase();\n if (IMAGE_EXT.includes(extension)) {\n return <div\n className={this.props.classes.selectedImage}\n style={{\n backgroundImage: `url(${this.imagePrefix}/${this.state.value})`,\n backgroundSize: 'contain',\n backgroundRepeat: 'no-repeat',\n }}\n />;\n } if (AUDIO_EXT.includes(extension)) {\n return <IconButton style={{ color: '#00FF00' }} onClick={() => this.play()}><IconPlay /></IconButton>;\n } if (DOC_EXT.includes(extension)) {\n return <IconText />;\n } if (VIDEO_EXT.includes(extension)) {\n return <IconVideo />;\n } if (JS_EXT.includes(extension)) {\n return <IconCode />;\n }\n return null;\n }\n\n renderFileBrowser() {\n if (!this.state.showFileBrowser) {\n return null;\n }\n return <SelectFileDialog\n imagePrefix={this.props.imagePrefix}\n socket={this.props.socket}\n selected={this.state.value}\n onClose={() => this.setState({ showFileBrowser: false })}\n onOk={value => {\n this.setState({ value }, () =>\n this.onChange(this.props.attr, this.props.schema.trim === false ? value : (value || '').trim()));\n }}\n selectOnlyFolders={this.props.schema.selectOnlyFolders}\n allowUpload={this.props.schema.allowUpload}\n allowDownload={this.props.schema.allowDownload}\n allowCreateFolder={this.props.schema.allowCreateFolder}\n allowView={this.props.schema.allowView}\n showToolbar={this.props.schema.showToolbar}\n limitPath={this.props.schema.limitPath}\n />;\n }\n\n renderItem(error, disabled /* , defaultValue */) {\n const icon = this.getIcon();\n\n return <div className={this.props.classes.fullWidth}>\n {icon}\n <TextField\n variant=\"standard\"\n className={icon ? this.props.classes.fullWidthIcon : this.props.classes.fullWidthOneButton}\n value={this.state.value === null || this.state.value === undefined ? '' : this.state.value}\n error={!!error}\n disabled={!!disabled}\n inputProps={{\n maxLength: this.props.schema.maxLength || this.props.schema.max || undefined,\n readOnly: !!this.props.schema.disableEdit,\n }}\n onChange={e => {\n const value = e.target.value;\n this.setState({ value }, () =>\n this.onChange(this.props.attr, this.props.schema.trim === false ? value : (value || '').trim()));\n }}\n placeholder={this.getText(this.props.schema.placeholder)}\n label={this.getText(this.props.schema.label)}\n helperText={this.renderHelp(this.props.schema.help, this.props.schema.helpLink, this.props.schema.noTranslation)}\n />\n <Button variant=\"outlined\" onClick={() => this.setState({ showFileBrowser: true })}>...</Button>\n {this.renderFileBrowser()}\n </div>;\n }\n}\n\nConfigFile.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 imagePrefix: PropTypes.func,\n};\n\nexport default withStyles(styles)(ConfigFile);\n"],"mappings":"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"}
1
+ {"version":3,"file":"ConfigFile.js","names":["_react","_interopRequireDefault","require","_propTypes","_styles","_material","_iconsMaterial","_SelectFile","_ConfigGeneric2","_ConfigFileSelector","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","result","NewTarget","constructor","Reflect","construct","arguments","apply","_possibleConstructorReturn2","sham","Proxy","Boolean","prototype","valueOf","call","e","styles","fullWidth","width","fullWidthOneButton","marginRight","fullWidthIcon","selectedImage","height","display","IMAGE_EXT","AUDIO_EXT","VIDEO_EXT","DOC_EXT","JS_EXT","ConfigFile","_ConfigGeneric","_inherits2","_super","_classCallCheck2","_createClass2","key","value","componentDidMount","_get2","ConfigGeneric","getValue","props","data","attr","imagePrefix","undefined","setState","loadFile","pos","state","indexOf","adapter","substring","path","socket","readFile","Promise","resolve","play","then","AudioContext","file","context","buf","ConfigFileSelector","base64ToArrayBuffer","decodeAudioData","buffer","source","createBufferSource","connect","destination","start","err","window","alert","concat","getIcon","_this","extension","split","pop","toLowerCase","includes","createElement","className","classes","style","backgroundImage","backgroundSize","backgroundRepeat","IconButton","color","onClick","PlayArrow","Article","Videocam","Code","renderFileBrowser","_this2","showFileBrowser","selected","onClose","onOk","onChange","schema","trim","selectOnlyFolders","allowUpload","allowDownload","allowCreateFolder","allowView","showToolbar","limitPath","renderItem","error","disabled","_this3","icon","TextField","variant","inputProps","maxLength","max","readOnly","disableEdit","target","placeholder","getText","label","helperText","renderHelp","help","helpLink","noTranslation","Button","getDerivedStateFromProps","toString","propTypes","PropTypes","object","isRequired","themeType","string","themeName","onError","func","_default","withStyles","exports"],"sources":["JsonConfigComponent/ConfigFile.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@mui/styles';\n\nimport {\n Button,\n TextField,\n IconButton,\n} from '@mui/material';\n\nimport {\n Article as IconText,\n Code as IconCode,\n PlayArrow as IconPlay,\n Videocam as IconVideo,\n} from '@mui/icons-material';\n\nimport SelectFileDialog from './wrapper/Dialogs/SelectFile';\n\nimport ConfigGeneric from './ConfigGeneric';\nimport ConfigFileSelector from './ConfigFileSelector';\n\nconst styles = () => ({\n fullWidth: {\n width: '100%',\n },\n fullWidthOneButton: {\n width: 'calc(100% - 69px)',\n marginRight: 4,\n },\n fullWidthIcon: {\n width: 'calc(100% - 119px)',\n marginRight: 4,\n },\n selectedImage: {\n height: 40,\n width: 40,\n display: 'inline-block',\n marginRight: 8,\n },\n});\n\nconst IMAGE_EXT = ['jpg', 'jpeg', 'svg', 'png', 'webp'];\nconst AUDIO_EXT = ['mp3', 'ogg', 'wav', 'aac'];\nconst VIDEO_EXT = ['avi', 'mp4', 'mov'];\nconst DOC_EXT = ['txt', 'log', 'html', 'htm'];\nconst JS_EXT = ['json', 'js', 'ts'];\n\nclass ConfigFile extends ConfigGeneric {\n componentDidMount() {\n super.componentDidMount();\n const value = ConfigGeneric.getValue(this.props.data, this.props.attr);\n this.imagePrefix = this.props.imagePrefix === undefined ? './files' : this.props.imagePrefix;\n this.setState({ value });\n }\n\n static getDerivedStateFromProps(props, state) {\n const value = ConfigGeneric.getValue(props.data, props.attr);\n if (value === null || value === undefined || value.toString().trim() !== (state.value || '').toString().trim()) {\n return { value };\n }\n return null;\n }\n\n loadFile() {\n const pos = this.state.value.indexOf('/');\n if (pos !== -1) {\n const adapter = this.state.value.substring(0, pos);\n const path = this.state.value.substring(pos + 1);\n return this.props.socket.readFile(adapter, path, true);\n }\n\n return Promise.resolve(null);\n }\n\n play() {\n this.loadFile()\n .then(data => {\n if (typeof AudioContext !== 'undefined' && data?.file) {\n const context = new AudioContext();\n const buf = ConfigFileSelector.base64ToArrayBuffer(data.file);\n context.decodeAudioData(buf, buffer => {\n const source = context.createBufferSource(); // creates a sound source\n source.buffer = buffer; // tell the source which sounds to play\n source.connect(context.destination); // connect the source to the context's destination (the speakers)\n source.start(0);\n }, err => window.alert(`Cannot play: ${err}`));\n }\n });\n }\n\n getIcon() {\n const extension = this.state.value.split('.').pop().toLowerCase();\n if (IMAGE_EXT.includes(extension)) {\n return <div\n className={this.props.classes.selectedImage}\n style={{\n backgroundImage: `url(${this.imagePrefix}/${this.state.value})`,\n backgroundSize: 'contain',\n backgroundRepeat: 'no-repeat',\n }}\n />;\n } if (AUDIO_EXT.includes(extension)) {\n return <IconButton style={{ color: '#00FF00' }} onClick={() => this.play()}><IconPlay /></IconButton>;\n } if (DOC_EXT.includes(extension)) {\n return <IconText />;\n } if (VIDEO_EXT.includes(extension)) {\n return <IconVideo />;\n } if (JS_EXT.includes(extension)) {\n return <IconCode />;\n }\n return null;\n }\n\n renderFileBrowser() {\n if (!this.state.showFileBrowser) {\n return null;\n }\n return <SelectFileDialog\n imagePrefix={this.props.imagePrefix}\n socket={this.props.socket}\n selected={this.state.value}\n onClose={() => this.setState({ showFileBrowser: false })}\n onOk={value => {\n this.setState({ value }, () =>\n this.onChange(this.props.attr, this.props.schema.trim === false ? value : (value || '').trim()));\n }}\n selectOnlyFolders={this.props.schema.selectOnlyFolders}\n allowUpload={this.props.schema.allowUpload}\n allowDownload={this.props.schema.allowDownload}\n allowCreateFolder={this.props.schema.allowCreateFolder}\n allowView={this.props.schema.allowView}\n showToolbar={this.props.schema.showToolbar}\n limitPath={this.props.schema.limitPath}\n />;\n }\n\n renderItem(error, disabled /* , defaultValue */) {\n const icon = this.getIcon();\n\n return <div className={this.props.classes.fullWidth}>\n {icon}\n <TextField\n variant=\"standard\"\n className={icon ? this.props.classes.fullWidthIcon : this.props.classes.fullWidthOneButton}\n value={this.state.value === null || this.state.value === undefined ? '' : this.state.value}\n error={!!error}\n disabled={!!disabled}\n inputProps={{\n maxLength: this.props.schema.maxLength || this.props.schema.max || undefined,\n readOnly: !!this.props.schema.disableEdit,\n }}\n onChange={e => {\n const value = e.target.value;\n this.setState({ value }, () =>\n this.onChange(this.props.attr, this.props.schema.trim === false ? value : (value || '').trim()));\n }}\n placeholder={this.getText(this.props.schema.placeholder)}\n label={this.getText(this.props.schema.label)}\n helperText={this.renderHelp(this.props.schema.help, this.props.schema.helpLink, this.props.schema.noTranslation)}\n />\n <Button variant=\"outlined\" onClick={() => this.setState({ showFileBrowser: true })}>...</Button>\n {this.renderFileBrowser()}\n </div>;\n }\n}\n\nConfigFile.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 imagePrefix: PropTypes.func,\n};\n\nexport default withStyles(styles)(ConfigFile);\n"],"mappings":"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"}
@@ -72,6 +72,7 @@ declare namespace ConfigGeneric {
72
72
  let disabled: PropTypes.Requireable<boolean>;
73
73
  let systemConfig: PropTypes.Requireable<object>;
74
74
  let alive: PropTypes.Requireable<boolean>;
75
+ let changed: PropTypes.Requireable<boolean>;
75
76
  let common: PropTypes.Requireable<object>;
76
77
  let adapterName: PropTypes.Requireable<string>;
77
78
  let instance: PropTypes.Requireable<number>;
@@ -371,8 +371,8 @@ var ConfigGeneric = /*#__PURE__*/function (_Component) {
371
371
  }
372
372
  try {
373
373
  // eslint-disable-next-line no-new-func
374
- var f = new Function('data', 'originalData', '_system', '_alive', '_common', '_socket', '_instance', 'arrayIndex', 'globalData', func.includes('return') ? func : "return ".concat(func));
375
- return f(data || this.props.data, this.props.originalData, this.props.systemConfig, this.props.alive, this.props.common, this.props.socket, this.props.instance, arrayIndex, globalData);
374
+ var f = new Function('data', 'originalData', '_system', '_alive', '_common', '_socket', '_instance', 'arrayIndex', 'globalData', '_changed', func.includes('return') ? func : "return ".concat(func));
375
+ return f(data || this.props.data, this.props.originalData, this.props.systemConfig, this.props.alive, this.props.common, this.props.socket, this.props.instance, arrayIndex, globalData, this.props.changed);
376
376
  } catch (e) {
377
377
  console.error("Cannot execute ".concat(func, ": ").concat(e));
378
378
  return defaultValue;
@@ -389,8 +389,8 @@ var ConfigGeneric = /*#__PURE__*/function (_Component) {
389
389
  }
390
390
  try {
391
391
  // eslint-disable-next-line no-new-func
392
- var f = new Function('data', 'originalData', '_system', 'instanceObj', 'customObj', '_socket', 'arrayIndex', 'globalData', func.includes('return') ? func : "return ".concat(func));
393
- return f(data || this.props.data, this.props.originalData, this.props.systemConfig, instanceObj, customObj, this.props.socket, arrayIndex, globalData);
392
+ var f = new Function('data', 'originalData', '_system', 'instanceObj', 'customObj', '_socket', 'arrayIndex', 'globalData', '_changed', func.includes('return') ? func : "return ".concat(func));
393
+ return f(data || this.props.data, this.props.originalData, this.props.systemConfig, instanceObj, customObj, this.props.socket, arrayIndex, globalData, this.props.changed);
394
394
  } catch (e) {
395
395
  console.error("Cannot execute ".concat(func, ": ").concat(e));
396
396
  return null;
@@ -477,12 +477,12 @@ var ConfigGeneric = /*#__PURE__*/function (_Component) {
477
477
  try {
478
478
  if (this.props.custom) {
479
479
  // eslint-disable-next-line no-new-func
480
- var _f = new Function('data', 'originalData', 'arrayIndex', 'globalData', '_system', 'instanceObj', 'customObj', '_socket', "return `".concat(pattern.replace(/`/g, '\\`'), "`"));
481
- return _f(data, this.props.originalData, this.props.arrayIndex, this.props.globalData, this.props.systemConfig, this.props.instanceObj, this.props.customObj, this.props.socket, this.props.arrayIndex, this.props.globalData);
480
+ var _f = new Function('data', 'originalData', 'arrayIndex', 'globalData', '_system', 'instanceObj', 'customObj', '_socket', '_changed', "return `".concat(pattern.replace(/`/g, '\\`'), "`"));
481
+ return _f(data, this.props.originalData, this.props.arrayIndex, this.props.globalData, this.props.systemConfig, this.props.instanceObj, this.props.customObj, this.props.socket, this.props.changed);
482
482
  }
483
483
  // eslint-disable-next-line no-new-func
484
- var f = new Function('data', 'originalData', 'arrayIndex', 'globalData', '_system', '_alive', '_common', '_socket', "return `".concat(pattern.replace(/`/g, '\\`'), "`"));
485
- return f(data, this.props.originalData, this.props.arrayIndex, this.props.globalData, this.props.systemConfig, this.props.alive, this.props.common, this.props.socket);
484
+ var f = new Function('data', 'originalData', 'arrayIndex', 'globalData', '_system', '_alive', '_common', '_socket', '_changed', "return `".concat(pattern.replace(/`/g, '\\`'), "`"));
485
+ return f(data, this.props.originalData, this.props.arrayIndex, this.props.globalData, this.props.systemConfig, this.props.alive, this.props.common, this.props.socket, this.props.changed);
486
486
  } catch (e) {
487
487
  console.error("Cannot execute ".concat(pattern, ": ").concat(e));
488
488
  return pattern;
@@ -686,6 +686,7 @@ ConfigGeneric.propTypes = {
686
686
  disabled: _propTypes["default"].bool,
687
687
  systemConfig: _propTypes["default"].object,
688
688
  alive: _propTypes["default"].bool,
689
+ changed: _propTypes["default"].bool,
689
690
  common: _propTypes["default"].object,
690
691
  adapterName: _propTypes["default"].string,
691
692
  instance: _propTypes["default"].number,
@@ -1 +1 @@
1
- {"version":3,"file":"ConfigGeneric.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_material","_Info","_Warning","_Error","_i18n","_Utils","_Confirm","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof3","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","result","NewTarget","constructor","Reflect","construct","_possibleConstructorReturn2","sham","Proxy","Boolean","valueOf","e","ConfigGeneric","_Component","_inherits2","_super","props","_this","_classCallCheck2","_assertThisInitialized2","data","value","getValue","attr","state","setState","forceUpdate","confirmDialog","confirmNewValue","confirmAttr","confirmData","isError","schema","custom","defaultValue","defaultFunc","executeCustom","instanceObj","arrayIndex","globalData","execute","lang","I18n","getLanguage","_createClass2","componentDidMount","_this2","registerOnForceUpdate","onUpdate","LIKE_SELECT","undefined","includes","type","setTimeout","onChange","setValue","defaultSendTo","sendTo","_this3","alive","defaultSendToDone","jsonData","getPattern","JSON","parse","console","error","concat","socket","adapterName","instance","then","onError","t","componentWillUnmount","sendToTimeout","clearTimeout","getText","text","noTranslation","_typeof2","func","en","toString","renderConfirmDialog","_this4","confirm","icon","createElement","title","ok","cancel","onClose","isOk","stringify","confirmDepAttr","confirmDepNewValue","confirmOldValue","newValue","cb","_this5","condition","Promise","resolve","confirmDependsOn","_loop","dep","z","val","v","_ret","changed","onChangeDependsOn","_newValue","calculateFunc","customObj","hiddenDependsOn","hidden","labelDependsOn","helpDependsOn","ignoreOwnChanges","newValue_","_attr","f","Function","originalData","systemConfig","common","calculate","disabled","validator","renderItem","label","renderHelp","link","Utils","renderTextWithA","href","rel","style","color","themeType","textDecoration","pattern","log","replace","render","_this6","_this$calculate","hideOnlyControl","item","Grid","xs","lg","md","sm","marginBottom","textAlign","darkStyle","newLine","Fragment","flexBasis","height","validatorNoSaveOnError","validatorErrorText","renderedItem","commandRunning","noPlaceRequired","tooltip","width","button","container","flex","Button","variant","onClick","buttonTooltip","buttonTooltipNoTranslation","split","part","shift","Component","getPrototypeOf","_asyncToGenerator2","_regenerator","mark","_callee","wrap","_callee$","_context","prev","next","stop","propTypes","PropTypes","isRequired","string","any","themeName","customs","bool","number","dateFormat","isFloatComma","_default","exports"],"sources":["JsonConfigComponent/ConfigGeneric.jsx"],"sourcesContent":["import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\n\nimport { Grid, Button } from '@mui/material';\n\nimport IconInfo from '@mui/icons-material/Info';\nimport IconWarning from '@mui/icons-material/Warning';\nimport IconError from '@mui/icons-material/Error';\n\nimport I18n from './wrapper/i18n';\nimport Utils from './wrapper/Components/Utils';\nimport ConfirmDialog from './wrapper/Dialogs/Confirm';\n\nclass ConfigGeneric extends Component {\n static DIFFERENT_VALUE = '__different__';\n\n static DIFFERENT_LABEL = 'ra___different__';\n\n static NONE_VALUE = '';\n\n static NONE_LABEL = 'ra_none';\n\n static AsyncFunction = Object.getPrototypeOf(async () => {}).constructor;\n\n constructor(props) {\n super(props);\n\n this.state = {\n confirmDialog: false,\n confirmNewValue: null,\n confirmAttr: null,\n confirmData: null,\n };\n\n this.isError = {};\n\n if (props.schema) {\n if (props.custom) {\n this.defaultValue = props.schema.defaultFunc\n ? this.executeCustom(\n props.schema.defaultFunc,\n props.schema.default,\n props.data,\n props.instanceObj,\n props.arrayIndex,\n props.globalData,\n )\n : props.schema.default;\n } else {\n this.defaultValue = props.schema.defaultFunc\n ? this.execute(\n props.schema.defaultFunc,\n props.schema.default,\n props.data,\n props.arrayIndex,\n props.globalData,\n )\n : props.schema.default;\n }\n }\n\n this.lang = I18n.getLanguage();\n }\n\n componentDidMount() {\n this.props.registerOnForceUpdate && this.props.registerOnForceUpdate(this.props.attr, this.onUpdate);\n const LIKE_SELECT = ['select', 'autocomplete', 'autocompleteSendTo'];\n // init default value\n if (this.defaultValue !== undefined) {\n const value = ConfigGeneric.getValue(this.props.data, this.props.attr);\n if (\n value === undefined ||\n (LIKE_SELECT.includes(this.props.schema.type) && (value === '' || value === null))\n ) {\n setTimeout(() => {\n if (this.props.custom) {\n this.props.onChange(this.props.attr, this.defaultValue, () =>\n setTimeout(() => this.props.forceUpdate([this.props.attr], this.props.data), 100));\n // this.onChange(this.props.attr, this.defaultValue);\n } else {\n ConfigGeneric.setValue(this.props.data, this.props.attr, this.defaultValue);\n this.props.onChange(this.props.data, undefined, () =>\n this.props.forceUpdate([this.props.attr], this.props.data));\n }\n }, 100);\n }\n } else if (this.props.schema.defaultSendTo) {\n this.sendTo();\n }\n }\n\n sendTo() {\n if (this.props.alive) {\n this.defaultSendToDone = true;\n let data = this.props.schema.data;\n if (data === undefined && this.props.schema.jsonData) {\n data = this.getPattern(this.props.schema.jsonData);\n try {\n data = JSON.parse(data);\n } catch (e) {\n console.error(`Cannot parse json data: ${data}`);\n }\n } else {\n data = {\n attr: this.props.attr,\n value: ConfigGeneric.getValue(this.props.data, this.props.attr),\n };\n }\n\n if (data === undefined) {\n data = null;\n }\n\n this.props.socket\n .sendTo(`${this.props.adapterName}.${this.props.instance}`, this.props.schema.defaultSendTo, data)\n .then(value => {\n if (value !== null && value !== undefined) {\n if (this.props.custom) {\n this.props.onChange(this.props.attr, value, () =>\n this.props.forceUpdate([this.props.attr], this.props.data));\n // this.onChange(this.props.attr, this.defaultValue);\n } else {\n ConfigGeneric.setValue(this.props.data, this.props.attr, value);\n this.props.onChange(this.props.data, undefined, () =>\n this.props.forceUpdate([this.props.attr], this.props.data));\n }\n }\n });\n } else {\n this.defaultSendToDone = false;\n // show error, that instance does not started\n this.onError(this.props.attr, I18n.t('ra_Instance %s is not alive', this.props.instance));\n }\n }\n\n componentWillUnmount() {\n this.props.registerOnForceUpdate && this.props.registerOnForceUpdate(this.props.attr);\n if (this.sendToTimeout) {\n clearTimeout(this.sendToTimeout);\n this.sendToTimeout = null;\n }\n }\n\n onUpdate = data => {\n const value = ConfigGeneric.getValue(data || this.props.data, this.props.attr) || '';\n if (this.state.value !== value) {\n this.setState({ value });\n } else {\n this.forceUpdate();\n }\n };\n\n /**\n * Extract attribute out of data\n *\n * @param {Record<string, any>} data\n * @param {string|string[]} attr\n * @return {*|null}\n */\n static getValue(data, attr) {\n if (typeof attr === 'string') {\n return ConfigGeneric.getValue(data, attr.split('.'));\n }\n if (attr.length === 1) {\n return data[attr[0]];\n }\n const part = attr.shift();\n if (typeof data[part] === 'object') {\n return ConfigGeneric.getValue(data[part], attr);\n }\n return null;\n }\n\n static setValue(data, attr, value) {\n if (typeof attr === 'string') {\n ConfigGeneric.setValue(data, attr.split('.'), value);\n return;\n }\n if (attr.length === 1) {\n if (value === null) {\n delete data[attr[0]];\n } else {\n data[attr[0]] = value;\n }\n } else {\n const part = attr.shift();\n if (!data[part] || typeof data[part] === 'object') {\n data[part] = data[part] || {};\n }\n ConfigGeneric.setValue(data[part], attr, value);\n }\n }\n\n getText(text, noTranslation) {\n if (!text) {\n return '';\n }\n\n if (typeof text === 'string') {\n text = noTranslation ? text : I18n.t(text);\n if (text.includes('${')) {\n return this.getPattern(text);\n }\n return text;\n }\n if (text && typeof text === 'object') {\n if (text.func) {\n // calculate pattern\n if (typeof text.func === 'object') {\n return this.getPattern(text.func[this.lang] || text.func.en || '');\n }\n return this.getPattern(text.func);\n }\n\n return text[this.lang] || text.en || '';\n }\n\n return text.toString();\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 (\n <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 if (isOk) {\n const data = JSON.parse(JSON.stringify(this.props.data));\n if (this.state.confirmDepAttr) {\n ConfigGeneric.setValue(data, this.state.confirmDepAttr, this.state.confirmDepNewValue);\n }\n\n ConfigGeneric.setValue(data, this.state.confirmAttr, this.state.confirmNewValue);\n this.setState(\n {\n confirmDialog: false,\n confirmDepAttr: null,\n confirmDepNewValue: null,\n confirmNewValue: null,\n confirmAttr: null,\n // eslint-disable-next-line react/no-unused-state\n confirmOldValue: null,\n confirmData: null,\n },\n () => this.props.onChange(data),\n );\n } else {\n this.setState({\n confirmDialog: false,\n confirmDepAttr: null,\n confirmDepNewValue: null,\n confirmNewValue: null,\n confirmAttr: null,\n // eslint-disable-next-line react/no-unused-state\n confirmOldValue: null,\n confirmData: null,\n });\n }\n })}\n />\n );\n }\n\n /**\n * Trigger onChange, to activate save button on change\n *\n * @param attr the changed attribute\n * @param newValue new value of the attribute\n * @param {(() => void)?} cb optional callback function, else returns a Promise\n * @return {Promise<void>}\n */\n // eslint-disable-next-line react/no-unused-class-component-methods\n onChange(attr, newValue, cb) {\n const data = JSON.parse(JSON.stringify(this.props.data));\n ConfigGeneric.setValue(data, attr, newValue);\n\n if (\n this.props.schema.confirm &&\n this.execute(this.props.schema.confirm.condition, false, data, this.props.arrayIndex, this.props.globalData)\n ) {\n return new Promise(resolve => {\n this.setState(\n {\n confirmDialog: true,\n confirmNewValue: newValue,\n confirmAttr: attr,\n confirmData: null,\n },\n () => {\n if (typeof cb === 'function') {\n cb();\n } else {\n resolve();\n }\n },\n );\n });\n }\n // find any inputs with confirmation\n if (this.props.schema.confirmDependsOn) {\n for (let z = 0; z < this.props.schema.confirmDependsOn.length; z++) {\n const dep = this.props.schema.confirmDependsOn[z];\n if (dep.confirm) {\n const val = ConfigGeneric.getValue(data, dep.attr);\n\n if (\n this.execute(\n dep.confirm.condition,\n false,\n data,\n this.props.arrayIndex,\n this.props.globalData,\n )\n ) {\n return new Promise(resolve => {\n this.setState(\n {\n confirmDialog: true,\n confirmNewValue: newValue,\n confirmAttr: attr,\n confirmDepNewValue: val,\n confirmDepAttr: dep.attr,\n confirmData: dep.confirm,\n },\n () => {\n if (typeof cb === 'function') {\n cb();\n } else {\n resolve();\n }\n },\n );\n });\n }\n }\n }\n }\n\n const changed = [];\n if (this.props.schema.onChangeDependsOn) {\n for (let z = 0; z < this.props.schema.onChangeDependsOn.length; z++) {\n const dep = this.props.schema.onChangeDependsOn[z];\n if (dep.onChange) {\n const val = ConfigGeneric.getValue(data, dep.attr);\n\n let _newValue;\n if (this.props.custom) {\n _newValue = this.executeCustom(\n dep.onChange.calculateFunc,\n data,\n this.props.customObj,\n this.props.instanceObj,\n this.props.arrayIndex,\n this.props.globalData,\n );\n } else {\n _newValue = this.execute(\n dep.onChange.calculateFunc,\n val,\n data,\n this.props.arrayIndex,\n this.props.globalData,\n );\n }\n\n if (_newValue !== val) {\n ConfigGeneric.setValue(data, dep.attr, _newValue);\n changed.push(dep.attr);\n }\n }\n }\n }\n\n if (this.props.schema.hiddenDependsOn) {\n for (let z = 0; z < this.props.schema.hiddenDependsOn.length; z++) {\n const dep = this.props.schema.hiddenDependsOn[z];\n dep.hidden && changed.push(dep.attr);\n }\n }\n\n if (this.props.schema.labelDependsOn) {\n for (let z = 0; z < this.props.schema.labelDependsOn.length; z++) {\n const dep = this.props.schema.labelDependsOn[z];\n dep.hidden && changed.push(dep.attr);\n }\n }\n\n if (this.props.schema.helpDependsOn) {\n for (let z = 0; z < this.props.schema.helpDependsOn.length; z++) {\n const dep = this.props.schema.helpDependsOn[z];\n dep.hidden && changed.push(dep.attr);\n }\n }\n\n if (this.props.schema.onChange && !this.props.schema.onChange.ignoreOwnChanges) {\n const val = ConfigGeneric.getValue(data, this.props.attr);\n\n const newValue_ = this.props.custom\n ? this.executeCustom(\n this.props.schema.onChange.calculateFunc,\n data,\n this.props.customObj,\n this.props.instanceObj,\n this.props.arrayIndex,\n this.props.globalData,\n )\n : this.execute(\n this.props.schema.onChange.calculateFunc,\n val,\n data,\n this.props.arrayIndex,\n this.props.globalData,\n );\n if (newValue_ !== val) {\n ConfigGeneric.setValue(data, this.props.attr, newValue_);\n }\n }\n\n if (this.props.custom) {\n this.props.onChange(attr, newValue, () => cb && cb());\n\n changed &&\n changed.length &&\n changed.forEach((_attr, i) =>\n setTimeout(() => this.props.onChange(_attr, ConfigGeneric.getValue(data, _attr)), i * 50));\n } else {\n this.props.onChange(data, undefined, () => {\n changed.length && this.props.forceUpdate(changed, data);\n cb && cb();\n });\n }\n\n return Promise.resolve();\n }\n\n execute(func, defaultValue, data, arrayIndex, globalData) {\n if (func && typeof func === 'object') {\n func = func.func;\n }\n\n if (!func) {\n return defaultValue;\n }\n try {\n // eslint-disable-next-line no-new-func\n const f = new Function(\n 'data',\n 'originalData',\n '_system',\n '_alive',\n '_common',\n '_socket',\n '_instance',\n 'arrayIndex',\n 'globalData',\n func.includes('return') ? func : `return ${func}`,\n );\n return f(\n data || this.props.data,\n this.props.originalData,\n this.props.systemConfig,\n this.props.alive,\n this.props.common,\n this.props.socket,\n this.props.instance,\n arrayIndex,\n globalData,\n );\n } catch (e) {\n console.error(`Cannot execute ${func}: ${e}`);\n return defaultValue;\n }\n }\n\n executeCustom(func, data, customObj, instanceObj, arrayIndex, globalData) {\n if (func && typeof func === 'object') {\n func = func.func;\n }\n\n if (!func) {\n return null;\n }\n try {\n // eslint-disable-next-line no-new-func\n const f = new Function(\n 'data',\n 'originalData',\n '_system',\n 'instanceObj',\n 'customObj',\n '_socket',\n 'arrayIndex',\n 'globalData',\n func.includes('return') ? func : `return ${func}`,\n );\n return f(\n data || this.props.data,\n this.props.originalData,\n this.props.systemConfig,\n instanceObj,\n customObj,\n this.props.socket,\n arrayIndex,\n globalData,\n );\n } catch (e) {\n console.error(`Cannot execute ${func}: ${e}`);\n return null;\n }\n }\n\n calculate(schema) {\n let error;\n let disabled;\n let hidden;\n let defaultValue;\n\n if (this.props.custom) {\n error = schema.validator\n ? !this.executeCustom(\n schema.validator,\n this.props.data,\n this.props.customObj,\n this.props.instanceObj,\n this.props.arrayIndex,\n this.props.globalData,\n )\n : false;\n disabled = schema.disabled\n ? this.executeCustom(\n schema.disabled,\n this.props.data,\n this.props.customObj,\n this.props.instanceObj,\n this.props.arrayIndex,\n this.props.globalData,\n )\n : false;\n hidden = schema.hidden\n ? this.executeCustom(\n schema.hidden,\n this.props.data,\n this.props.customObj,\n this.props.instanceObj,\n this.props.arrayIndex,\n this.props.globalData,\n )\n : false;\n defaultValue = schema.defaultFunc\n ? this.executeCustom(\n schema.defaultFunc,\n this.props.data,\n this.props.customObj,\n this.props.instanceObj,\n this.props.arrayIndex,\n this.props.globalData,\n )\n : schema.default;\n } else {\n error = schema.validator\n ? !this.execute(schema.validator, false, this.props.data, this.props.arrayIndex, this.props.globalData)\n : false;\n disabled = schema.disabled\n ? this.execute(schema.disabled, false, this.props.data, this.props.arrayIndex, this.props.globalData)\n : false;\n hidden = schema.hidden\n ? this.execute(schema.hidden, false, this.props.data, this.props.arrayIndex, this.props.globalData)\n : false;\n defaultValue = schema.defaultFunc\n ? this.execute(\n schema.defaultFunc,\n schema.default,\n this.props.data,\n this.props.arrayIndex,\n this.props.globalData,\n )\n : schema.default;\n }\n\n return {\n error, disabled, hidden, defaultValue,\n };\n }\n\n onError(attr, error) {\n if (!error) {\n delete this.isError[attr];\n } else {\n this.isError[attr] = error;\n }\n\n this.props.onError && this.props.onError(attr, error);\n }\n\n renderItem(/* error, disabled, defaultValue */) {\n return this.getText(this.props.schema.label) || this.getText(this.props.schema.text);\n }\n\n // eslint-disable-next-line react/no-unused-class-component-methods\n renderHelp(text, link, noTranslation) {\n if (!link) {\n text = this.getText(text, noTranslation) || '';\n if (\n text &&\n (text.includes('<a ') || text.includes('<br') || text.includes('<b>') || text.includes('<i>'))\n ) {\n return Utils.renderTextWithA(text);\n }\n return text;\n }\n return <a\n href={link}\n target=\"_blank\"\n rel=\"noreferrer\"\n style={{\n color: this.props.themeType === 'dark' ? '#a147ff' : '#5b238f',\n textDecoration: 'underline',\n }}\n >\n {this.getText(text, noTranslation)}\n </a>;\n }\n\n getPattern(pattern, data) {\n data = data || this.props.data;\n if (!pattern) {\n return '';\n }\n if (typeof pattern === 'object') {\n if (pattern.func) {\n pattern = pattern.func;\n } else {\n console.log(`Object must be stringified: ${JSON.stringify(pattern)}`);\n pattern = JSON.stringify(pattern);\n }\n }\n\n try {\n if (this.props.custom) {\n // eslint-disable-next-line no-new-func\n const f = new Function(\n 'data',\n 'originalData',\n 'arrayIndex',\n 'globalData',\n '_system',\n 'instanceObj',\n 'customObj',\n '_socket',\n `return \\`${pattern.replace(/`/g, '\\\\`')}\\``,\n );\n return f(\n data,\n this.props.originalData,\n this.props.arrayIndex,\n this.props.globalData,\n this.props.systemConfig,\n this.props.instanceObj,\n this.props.customObj,\n this.props.socket,\n this.props.arrayIndex,\n this.props.globalData,\n );\n }\n // eslint-disable-next-line no-new-func\n const f = new Function(\n 'data',\n 'originalData',\n 'arrayIndex',\n 'globalData',\n '_system',\n '_alive',\n '_common',\n '_socket',\n `return \\`${pattern.replace(/`/g, '\\\\`')}\\``,\n );\n return f(\n data,\n this.props.originalData,\n this.props.arrayIndex,\n this.props.globalData,\n this.props.systemConfig,\n this.props.alive,\n this.props.common,\n this.props.socket,\n );\n } catch (e) {\n console.error(`Cannot execute ${pattern}: ${e}`);\n return pattern;\n }\n }\n\n render() {\n const schema = this.props.schema;\n\n if (!schema) {\n return null;\n }\n\n if (this.props.alive && this.defaultSendToDone === false) {\n this.sendToTimeout = setTimeout(() => {\n this.sendToTimeout = null;\n this.sendTo();\n }, 200);\n }\n\n const {\n error, disabled, hidden, defaultValue,\n } = this.calculate(schema);\n\n if (hidden) {\n // Remove all errors if element is hidden\n if (Object.keys(this.isError).length) {\n setTimeout(\n isError => Object.keys(isError).forEach(attr => this.props.onError(attr)),\n 100,\n JSON.parse(JSON.stringify(this.isError)),\n );\n this.isError = {};\n }\n\n if (schema.hideOnlyControl) {\n const item = (\n <Grid\n item\n xs={schema.xs || undefined}\n lg={schema.lg || undefined}\n md={schema.md || undefined}\n sm={schema.sm || undefined}\n style={({\n marginBottom: 0, /* marginRight: 8, */\n textAlign: 'left',\n ...schema.style,\n ...(this.props.themeType === 'dark' ? schema.darkStyle : {}),\n })}\n />\n );\n\n if (schema.newLine) {\n return (\n <>\n <div style={{ flexBasis: '100%', height: 0 }} />\n {item}\n </>\n );\n }\n return item;\n }\n return null;\n }\n // Add error\n if (schema.validatorNoSaveOnError) {\n if (error && !Object.keys(this.isError).length) {\n this.isError = {\n [this.props.attr]: schema.validatorErrorText ? I18n.t(schema.validatorErrorText) : true,\n };\n setTimeout(\n isError => Object.keys(isError).forEach(attr => this.props.onError(attr, isError[attr])),\n 100,\n JSON.parse(JSON.stringify(this.isError)),\n );\n } else if (!error && Object.keys(this.isError).length) {\n setTimeout(\n isError => Object.keys(isError).forEach(attr => this.props.onError(attr)),\n 100,\n JSON.parse(JSON.stringify(this.isError)),\n );\n this.isError = {};\n }\n }\n\n const renderedItem = this.renderItem(\n error,\n disabled || this.props.commandRunning || this.props.disabled,\n defaultValue,\n );\n\n if (this.noPlaceRequired) {\n return renderedItem;\n }\n\n const item = <Grid\n item\n title={this.getText(schema.tooltip)}\n xs={schema.xs || undefined}\n lg={schema.lg || undefined}\n md={schema.md || undefined}\n sm={schema.sm || undefined}\n style={({\n\n marginBottom: 0,\n // marginRight: 8,\n textAlign: 'left',\n width:\n schema.type === 'divider' || schema.type === 'header'\n ? schema.width || '100%'\n : undefined,\n ...schema.style,\n ...(this.props.themeType === 'dark' ? schema.darkStyle : {}),\n })}\n >\n {this.props.schema.defaultSendTo && this.props.schema.button ?\n <Grid container style={{ width: '100%' }}>\n <Grid item flex={1}>\n {renderedItem}\n </Grid>\n <Grid item>\n <Button\n variant=\"outlined\"\n onClick={() => this.sendTo()}\n title={\n this.props.schema.buttonTooltip\n ? this.getText(\n this.props.schema.buttonTooltip,\n this.props.schema.buttonTooltipNoTranslation,\n )\n : I18n.t('ra_Request data by instance')\n }\n >\n {this.getText(this.props.schema.button)}\n </Button>\n </Grid>\n </Grid> : renderedItem}\n </Grid>;\n\n if (schema.newLine) {\n return <>\n <div style={{ flexBasis: '100%', height: 0 }} />\n {this.renderConfirmDialog()}\n {item}\n </>;\n }\n if (this.state.confirmDialog) {\n return <>\n {this.renderConfirmDialog()}\n {item}\n </>;\n }\n return item;\n }\n}\n\nConfigGeneric.propTypes = {\n socket: PropTypes.object.isRequired,\n data: PropTypes.object,\n originalData: PropTypes.object,\n schema: PropTypes.object,\n attr: PropTypes.string,\n // eslint-disable-next-line react/no-unused-prop-types\n value: PropTypes.any,\n // eslint-disable-next-line react/no-unused-prop-types\n themeName: PropTypes.string,\n style: PropTypes.object,\n onError: PropTypes.func,\n onChange: PropTypes.func,\n // eslint-disable-next-line react/no-unused-prop-types\n customs: PropTypes.object,\n forceUpdate: PropTypes.func.isRequired,\n disabled: PropTypes.bool,\n\n systemConfig: PropTypes.object,\n alive: PropTypes.bool,\n common: PropTypes.object,\n adapterName: PropTypes.string,\n instance: PropTypes.number,\n // eslint-disable-next-line react/no-unused-prop-types\n dateFormat: PropTypes.string,\n // eslint-disable-next-line react/no-unused-prop-types\n isFloatComma: PropTypes.bool,\n\n customObj: PropTypes.object,\n instanceObj: PropTypes.object,\n custom: PropTypes.bool,\n};\n\nexport default ConfigGeneric;\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAC,sBAAA,CAAAF,OAAA;AAEA,IAAAG,SAAA,GAAAH,OAAA;AAEA,IAAAI,KAAA,GAAAF,sBAAA,CAAAF,OAAA;AACA,IAAAK,QAAA,GAAAH,sBAAA,CAAAF,OAAA;AACA,IAAAM,MAAA,GAAAJ,sBAAA,CAAAF,OAAA;AAEA,IAAAO,KAAA,GAAAL,sBAAA,CAAAF,OAAA;AACA,IAAAQ,MAAA,GAAAN,sBAAA,CAAAF,OAAA;AACA,IAAAS,QAAA,GAAAP,sBAAA,CAAAF,OAAA;AAAsD,SAAAU,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,yBAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAZ,wBAAAgB,GAAA,EAAAJ,WAAA,SAAAA,WAAA,IAAAI,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,aAAAE,QAAA,CAAAF,GAAA,yBAAAA,GAAA,uCAAAA,GAAA,UAAAG,KAAA,GAAAR,wBAAA,CAAAC,WAAA,OAAAO,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAJ,GAAA,YAAAG,KAAA,CAAAE,GAAA,CAAAL,GAAA,SAAAM,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAX,GAAA,QAAAW,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAd,GAAA,EAAAW,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAV,GAAA,EAAAW,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAX,GAAA,CAAAW,GAAA,SAAAL,MAAA,cAAAN,GAAA,MAAAG,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAAhB,GAAA,EAAAM,MAAA,YAAAA,MAAA;AAAA,SAAAW,QAAAC,MAAA,EAAAC,cAAA,QAAAC,IAAA,GAAAZ,MAAA,CAAAY,IAAA,CAAAF,MAAA,OAAAV,MAAA,CAAAa,qBAAA,QAAAC,OAAA,GAAAd,MAAA,CAAAa,qBAAA,CAAAH,MAAA,GAAAC,cAAA,KAAAG,OAAA,GAAAA,OAAA,CAAAC,MAAA,WAAAC,GAAA,WAAAhB,MAAA,CAAAE,wBAAA,CAAAQ,MAAA,EAAAM,GAAA,EAAAC,UAAA,OAAAL,IAAA,CAAAM,IAAA,CAAAC,KAAA,CAAAP,IAAA,EAAAE,OAAA,YAAAF,IAAA;AAAA,SAAAQ,cAAAC,MAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAF,CAAA,UAAAG,MAAA,WAAAF,SAAA,CAAAD,CAAA,IAAAC,SAAA,CAAAD,CAAA,QAAAA,CAAA,OAAAb,OAAA,CAAAT,MAAA,CAAAyB,MAAA,OAAAC,OAAA,WAAAvB,GAAA,QAAAwB,gBAAA,aAAAN,MAAA,EAAAlB,GAAA,EAAAsB,MAAA,CAAAtB,GAAA,SAAAH,MAAA,CAAA4B,yBAAA,GAAA5B,MAAA,CAAA6B,gBAAA,CAAAR,MAAA,EAAArB,MAAA,CAAA4B,yBAAA,CAAAH,MAAA,KAAAhB,OAAA,CAAAT,MAAA,CAAAyB,MAAA,GAAAC,OAAA,WAAAvB,GAAA,IAAAH,MAAA,CAAAC,cAAA,CAAAoB,MAAA,EAAAlB,GAAA,EAAAH,MAAA,CAAAE,wBAAA,CAAAuB,MAAA,EAAAtB,GAAA,iBAAAkB,MAAA;AAAA,SAAAS,aAAAC,OAAA,QAAAC,yBAAA,GAAAC,yBAAA,oBAAAC,qBAAA,QAAAC,KAAA,OAAAC,gBAAA,aAAAL,OAAA,GAAAM,MAAA,MAAAL,yBAAA,QAAAM,SAAA,OAAAF,gBAAA,mBAAAG,WAAA,EAAAF,MAAA,GAAAG,OAAA,CAAAC,SAAA,CAAAN,KAAA,EAAAZ,SAAA,EAAAe,SAAA,YAAAD,MAAA,GAAAF,KAAA,CAAAhB,KAAA,OAAAI,SAAA,gBAAAmB,2BAAA,mBAAAL,MAAA;AAAA,SAAAJ,0BAAA,eAAAO,OAAA,qBAAAA,OAAA,CAAAC,SAAA,oBAAAD,OAAA,CAAAC,SAAA,CAAAE,IAAA,2BAAAC,KAAA,oCAAAC,OAAA,CAAAzC,SAAA,CAAA0C,OAAA,CAAAxC,IAAA,CAAAkC,OAAA,CAAAC,SAAA,CAAAI,OAAA,8CAAAE,CAAA;AAAA,IAEhDC,aAAa,0BAAAC,UAAA;EAAA,IAAAC,UAAA,aAAAF,aAAA,EAAAC,UAAA;EAAA,IAAAE,MAAA,GAAArB,YAAA,CAAAkB,aAAA;EAWf,SAAAA,cAAYI,KAAK,EAAE;IAAA,IAAAC,KAAA;IAAA,IAAAC,gBAAA,mBAAAN,aAAA;IACfK,KAAA,GAAAF,MAAA,CAAA7C,IAAA,OAAM8C,KAAK;IAAE,IAAAzB,gBAAA,iBAAA4B,uBAAA,aAAAF,KAAA,eAsHN,UAAAG,IAAI,EAAI;MACf,IAAMC,KAAK,GAAGT,aAAa,CAACU,QAAQ,CAACF,IAAI,IAAIH,KAAA,CAAKD,KAAK,CAACI,IAAI,EAAEH,KAAA,CAAKD,KAAK,CAACO,IAAI,CAAC,IAAI,EAAE;MACpF,IAAIN,KAAA,CAAKO,KAAK,CAACH,KAAK,KAAKA,KAAK,EAAE;QAC5BJ,KAAA,CAAKQ,QAAQ,CAAC;UAAEJ,KAAK,EAALA;QAAM,CAAC,CAAC;MAC5B,CAAC,MAAM;QACHJ,KAAA,CAAKS,WAAW,CAAC,CAAC;MACtB;IACJ,CAAC;IA3HGT,KAAA,CAAKO,KAAK,GAAG;MACTG,aAAa,EAAE,KAAK;MACpBC,eAAe,EAAE,IAAI;MACrBC,WAAW,EAAE,IAAI;MACjBC,WAAW,EAAE;IACjB,CAAC;IAEDb,KAAA,CAAKc,OAAO,GAAG,CAAC,CAAC;IAEjB,IAAIf,KAAK,CAACgB,MAAM,EAAE;MACd,IAAIhB,KAAK,CAACiB,MAAM,EAAE;QACdhB,KAAA,CAAKiB,YAAY,GAAGlB,KAAK,CAACgB,MAAM,CAACG,WAAW,GACtClB,KAAA,CAAKmB,aAAa,CAChBpB,KAAK,CAACgB,MAAM,CAACG,WAAW,EACxBnB,KAAK,CAACgB,MAAM,WAAQ,EACpBhB,KAAK,CAACI,IAAI,EACVJ,KAAK,CAACqB,WAAW,EACjBrB,KAAK,CAACsB,UAAU,EAChBtB,KAAK,CAACuB,UACV,CAAC,GACCvB,KAAK,CAACgB,MAAM,WAAQ;MAC9B,CAAC,MAAM;QACHf,KAAA,CAAKiB,YAAY,GAAGlB,KAAK,CAACgB,MAAM,CAACG,WAAW,GACtClB,KAAA,CAAKuB,OAAO,CACVxB,KAAK,CAACgB,MAAM,CAACG,WAAW,EACxBnB,KAAK,CAACgB,MAAM,WAAQ,EACpBhB,KAAK,CAACI,IAAI,EACVJ,KAAK,CAACsB,UAAU,EAChBtB,KAAK,CAACuB,UACV,CAAC,GACCvB,KAAK,CAACgB,MAAM,WAAQ;MAC9B;IACJ;IAEAf,KAAA,CAAKwB,IAAI,GAAGC,gBAAI,CAACC,WAAW,CAAC,CAAC;IAAC,OAAA1B,KAAA;EACnC;EAAC,IAAA2B,aAAA,aAAAhC,aAAA;IAAA7C,GAAA;IAAAsD,KAAA,EAED,SAAAwB,kBAAA,EAAoB;MAAA,IAAAC,MAAA;MAChB,IAAI,CAAC9B,KAAK,CAAC+B,qBAAqB,IAAI,IAAI,CAAC/B,KAAK,CAAC+B,qBAAqB,CAAC,IAAI,CAAC/B,KAAK,CAACO,IAAI,EAAE,IAAI,CAACyB,QAAQ,CAAC;MACpG,IAAMC,WAAW,GAAG,CAAC,QAAQ,EAAE,cAAc,EAAE,oBAAoB,CAAC;MACpE;MACA,IAAI,IAAI,CAACf,YAAY,KAAKgB,SAAS,EAAE;QACjC,IAAM7B,KAAK,GAAGT,aAAa,CAACU,QAAQ,CAAC,IAAI,CAACN,KAAK,CAACI,IAAI,EAAE,IAAI,CAACJ,KAAK,CAACO,IAAI,CAAC;QACtE,IACIF,KAAK,KAAK6B,SAAS,IAClBD,WAAW,CAACE,QAAQ,CAAC,IAAI,CAACnC,KAAK,CAACgB,MAAM,CAACoB,IAAI,CAAC,KAAK/B,KAAK,KAAK,EAAE,IAAIA,KAAK,KAAK,IAAI,CAAE,EACpF;UACEgC,UAAU,CAAC,YAAM;YACb,IAAIP,MAAI,CAAC9B,KAAK,CAACiB,MAAM,EAAE;cACnBa,MAAI,CAAC9B,KAAK,CAACsC,QAAQ,CAACR,MAAI,CAAC9B,KAAK,CAACO,IAAI,EAAEuB,MAAI,CAACZ,YAAY,EAAE;gBAAA,OACpDmB,UAAU,CAAC;kBAAA,OAAMP,MAAI,CAAC9B,KAAK,CAACU,WAAW,CAAC,CAACoB,MAAI,CAAC9B,KAAK,CAACO,IAAI,CAAC,EAAEuB,MAAI,CAAC9B,KAAK,CAACI,IAAI,CAAC;gBAAA,GAAE,GAAG,CAAC;cAAA,EAAC;cACtF;YACJ,CAAC,MAAM;cACHR,aAAa,CAAC2C,QAAQ,CAACT,MAAI,CAAC9B,KAAK,CAACI,IAAI,EAAE0B,MAAI,CAAC9B,KAAK,CAACO,IAAI,EAAEuB,MAAI,CAACZ,YAAY,CAAC;cAC3EY,MAAI,CAAC9B,KAAK,CAACsC,QAAQ,CAACR,MAAI,CAAC9B,KAAK,CAACI,IAAI,EAAE8B,SAAS,EAAE;gBAAA,OAC5CJ,MAAI,CAAC9B,KAAK,CAACU,WAAW,CAAC,CAACoB,MAAI,CAAC9B,KAAK,CAACO,IAAI,CAAC,EAAEuB,MAAI,CAAC9B,KAAK,CAACI,IAAI,CAAC;cAAA,EAAC;YACnE;UACJ,CAAC,EAAE,GAAG,CAAC;QACX;MACJ,CAAC,MAAM,IAAI,IAAI,CAACJ,KAAK,CAACgB,MAAM,CAACwB,aAAa,EAAE;QACxC,IAAI,CAACC,MAAM,CAAC,CAAC;MACjB;IACJ;EAAC;IAAA1F,GAAA;IAAAsD,KAAA,EAED,SAAAoC,OAAA,EAAS;MAAA,IAAAC,MAAA;MACL,IAAI,IAAI,CAAC1C,KAAK,CAAC2C,KAAK,EAAE;QAClB,IAAI,CAACC,iBAAiB,GAAG,IAAI;QAC7B,IAAIxC,IAAI,GAAG,IAAI,CAACJ,KAAK,CAACgB,MAAM,CAACZ,IAAI;QACjC,IAAIA,IAAI,KAAK8B,SAAS,IAAI,IAAI,CAAClC,KAAK,CAACgB,MAAM,CAAC6B,QAAQ,EAAE;UAClDzC,IAAI,GAAG,IAAI,CAAC0C,UAAU,CAAC,IAAI,CAAC9C,KAAK,CAACgB,MAAM,CAAC6B,QAAQ,CAAC;UAClD,IAAI;YACAzC,IAAI,GAAG2C,IAAI,CAACC,KAAK,CAAC5C,IAAI,CAAC;UAC3B,CAAC,CAAC,OAAOT,CAAC,EAAE;YACRsD,OAAO,CAACC,KAAK,4BAAAC,MAAA,CAA4B/C,IAAI,CAAE,CAAC;UACpD;QACJ,CAAC,MAAM;UACHA,IAAI,GAAG;YACHG,IAAI,EAAE,IAAI,CAACP,KAAK,CAACO,IAAI;YACrBF,KAAK,EAAET,aAAa,CAACU,QAAQ,CAAC,IAAI,CAACN,KAAK,CAACI,IAAI,EAAE,IAAI,CAACJ,KAAK,CAACO,IAAI;UAClE,CAAC;QACL;QAEA,IAAIH,IAAI,KAAK8B,SAAS,EAAE;UACpB9B,IAAI,GAAG,IAAI;QACf;QAEA,IAAI,CAACJ,KAAK,CAACoD,MAAM,CACZX,MAAM,IAAAU,MAAA,CAAI,IAAI,CAACnD,KAAK,CAACqD,WAAW,OAAAF,MAAA,CAAI,IAAI,CAACnD,KAAK,CAACsD,QAAQ,GAAI,IAAI,CAACtD,KAAK,CAACgB,MAAM,CAACwB,aAAa,EAAEpC,IAAI,CAAC,CACjGmD,IAAI,CAAC,UAAAlD,KAAK,EAAI;UACX,IAAIA,KAAK,KAAK,IAAI,IAAIA,KAAK,KAAK6B,SAAS,EAAE;YACvC,IAAIQ,MAAI,CAAC1C,KAAK,CAACiB,MAAM,EAAE;cACnByB,MAAI,CAAC1C,KAAK,CAACsC,QAAQ,CAACI,MAAI,CAAC1C,KAAK,CAACO,IAAI,EAAEF,KAAK,EAAE;gBAAA,OACxCqC,MAAI,CAAC1C,KAAK,CAACU,WAAW,CAAC,CAACgC,MAAI,CAAC1C,KAAK,CAACO,IAAI,CAAC,EAAEmC,MAAI,CAAC1C,KAAK,CAACI,IAAI,CAAC;cAAA,EAAC;cAC/D;YACJ,CAAC,MAAM;cACHR,aAAa,CAAC2C,QAAQ,CAACG,MAAI,CAAC1C,KAAK,CAACI,IAAI,EAAEsC,MAAI,CAAC1C,KAAK,CAACO,IAAI,EAAEF,KAAK,CAAC;cAC/DqC,MAAI,CAAC1C,KAAK,CAACsC,QAAQ,CAACI,MAAI,CAAC1C,KAAK,CAACI,IAAI,EAAE8B,SAAS,EAAE;gBAAA,OAC5CQ,MAAI,CAAC1C,KAAK,CAACU,WAAW,CAAC,CAACgC,MAAI,CAAC1C,KAAK,CAACO,IAAI,CAAC,EAAEmC,MAAI,CAAC1C,KAAK,CAACI,IAAI,CAAC;cAAA,EAAC;YACnE;UACJ;QACJ,CAAC,CAAC;MACV,CAAC,MAAM;QACH,IAAI,CAACwC,iBAAiB,GAAG,KAAK;QAC9B;QACA,IAAI,CAACY,OAAO,CAAC,IAAI,CAACxD,KAAK,CAACO,IAAI,EAAEmB,gBAAI,CAAC+B,CAAC,CAAC,6BAA6B,EAAE,IAAI,CAACzD,KAAK,CAACsD,QAAQ,CAAC,CAAC;MAC7F;IACJ;EAAC;IAAAvG,GAAA;IAAAsD,KAAA,EAED,SAAAqD,qBAAA,EAAuB;MACnB,IAAI,CAAC1D,KAAK,CAAC+B,qBAAqB,IAAI,IAAI,CAAC/B,KAAK,CAAC+B,qBAAqB,CAAC,IAAI,CAAC/B,KAAK,CAACO,IAAI,CAAC;MACrF,IAAI,IAAI,CAACoD,aAAa,EAAE;QACpBC,YAAY,CAAC,IAAI,CAACD,aAAa,CAAC;QAChC,IAAI,CAACA,aAAa,GAAG,IAAI;MAC7B;IACJ;EAAC;IAAA5G,GAAA;IAAAsD,KAAA,EAoDD,SAAAwD,QAAQC,IAAI,EAAEC,aAAa,EAAE;MACzB,IAAI,CAACD,IAAI,EAAE;QACP,OAAO,EAAE;MACb;MAEA,IAAI,OAAOA,IAAI,KAAK,QAAQ,EAAE;QAC1BA,IAAI,GAAGC,aAAa,GAAGD,IAAI,GAAGpC,gBAAI,CAAC+B,CAAC,CAACK,IAAI,CAAC;QAC1C,IAAIA,IAAI,CAAC3B,QAAQ,CAAC,IAAI,CAAC,EAAE;UACrB,OAAO,IAAI,CAACW,UAAU,CAACgB,IAAI,CAAC;QAChC;QACA,OAAOA,IAAI;MACf;MACA,IAAIA,IAAI,IAAI,IAAAE,QAAA,aAAOF,IAAI,MAAK,QAAQ,EAAE;QAClC,IAAIA,IAAI,CAACG,IAAI,EAAE;UACX;UACA,IAAI,IAAAD,QAAA,aAAOF,IAAI,CAACG,IAAI,MAAK,QAAQ,EAAE;YAC/B,OAAO,IAAI,CAACnB,UAAU,CAACgB,IAAI,CAACG,IAAI,CAAC,IAAI,CAACxC,IAAI,CAAC,IAAIqC,IAAI,CAACG,IAAI,CAACC,EAAE,IAAI,EAAE,CAAC;UACtE;UACA,OAAO,IAAI,CAACpB,UAAU,CAACgB,IAAI,CAACG,IAAI,CAAC;QACrC;QAEA,OAAOH,IAAI,CAAC,IAAI,CAACrC,IAAI,CAAC,IAAIqC,IAAI,CAACI,EAAE,IAAI,EAAE;MAC3C;MAEA,OAAOJ,IAAI,CAACK,QAAQ,CAAC,CAAC;IAC1B;EAAC;IAAApH,GAAA;IAAAsD,KAAA,EAED,SAAA+D,oBAAA,EAAsB;MAAA,IAAAC,MAAA;MAClB,IAAI,CAAC,IAAI,CAAC7D,KAAK,CAACG,aAAa,EAAE;QAC3B,OAAO,IAAI;MACf;MACA,IAAM2D,OAAO,GAAG,IAAI,CAAC9D,KAAK,CAACM,WAAW,IAAI,IAAI,CAACd,KAAK,CAACgB,MAAM,CAACsD,OAAO;MACnE,IAAIC,IAAI,GAAG,IAAI;MACf,IAAID,OAAO,CAAClC,IAAI,KAAK,SAAS,EAAE;QAC5BmC,IAAI,gBAAGpJ,MAAA,YAAAqJ,aAAA,CAAC9I,QAAA,WAAW,MAAE,CAAC;MAC1B,CAAC,MAAM,IAAI4I,OAAO,CAAClC,IAAI,KAAK,OAAO,EAAE;QACjCmC,IAAI,gBAAGpJ,MAAA,YAAAqJ,aAAA,CAAC7I,MAAA,WAAS,MAAE,CAAC;MACxB,CAAC,MAAM,IAAI2I,OAAO,CAAClC,IAAI,KAAK,MAAM,EAAE;QAChCmC,IAAI,gBAAGpJ,MAAA,YAAAqJ,aAAA,CAAC/I,KAAA,WAAQ,MAAE,CAAC;MACvB;MAEA,oBACIN,MAAA,YAAAqJ,aAAA,CAAC1I,QAAA,WAAa;QACV2I,KAAK,EAAE,IAAI,CAACZ,OAAO,CAACS,OAAO,CAACG,KAAK,CAAC,IAAI/C,gBAAI,CAAC+B,CAAC,CAAC,mBAAmB,CAAE;QAClEK,IAAI,EAAE,IAAI,CAACD,OAAO,CAACS,OAAO,CAACR,IAAI,CAAE;QACjCY,EAAE,EAAE,IAAI,CAACb,OAAO,CAACS,OAAO,CAACI,EAAE,CAAC,IAAIhD,gBAAI,CAAC+B,CAAC,CAAC,OAAO,CAAE;QAChDkB,MAAM,EAAE,IAAI,CAACd,OAAO,CAACS,OAAO,CAACK,MAAM,CAAC,IAAIjD,gBAAI,CAAC+B,CAAC,CAAC,WAAW,CAAE;QAC5Dc,IAAI,EAAEA,IAAK;QACXK,OAAO,EAAE,SAAAA,QAAAC,IAAI;UAAA,OACTR,MAAI,CAAC5D,QAAQ,CAAC;YAAEE,aAAa,EAAE;UAAM,CAAC,EAAE,YAAM;YAC1C,IAAIkE,IAAI,EAAE;cACN,IAAMzE,IAAI,GAAG2C,IAAI,CAACC,KAAK,CAACD,IAAI,CAAC+B,SAAS,CAACT,MAAI,CAACrE,KAAK,CAACI,IAAI,CAAC,CAAC;cACxD,IAAIiE,MAAI,CAAC7D,KAAK,CAACuE,cAAc,EAAE;gBAC3BnF,aAAa,CAAC2C,QAAQ,CAACnC,IAAI,EAAEiE,MAAI,CAAC7D,KAAK,CAACuE,cAAc,EAAEV,MAAI,CAAC7D,KAAK,CAACwE,kBAAkB,CAAC;cAC1F;cAEApF,aAAa,CAAC2C,QAAQ,CAACnC,IAAI,EAAEiE,MAAI,CAAC7D,KAAK,CAACK,WAAW,EAAEwD,MAAI,CAAC7D,KAAK,CAACI,eAAe,CAAC;cAChFyD,MAAI,CAAC5D,QAAQ,CACT;gBACIE,aAAa,EAAE,KAAK;gBACpBoE,cAAc,EAAE,IAAI;gBACpBC,kBAAkB,EAAE,IAAI;gBACxBpE,eAAe,EAAE,IAAI;gBACrBC,WAAW,EAAE,IAAI;gBACjB;gBACAoE,eAAe,EAAE,IAAI;gBACrBnE,WAAW,EAAE;cACjB,CAAC,EACD;gBAAA,OAAMuD,MAAI,CAACrE,KAAK,CAACsC,QAAQ,CAAClC,IAAI,CAAC;cAAA,CACnC,CAAC;YACL,CAAC,MAAM;cACHiE,MAAI,CAAC5D,QAAQ,CAAC;gBACVE,aAAa,EAAE,KAAK;gBACpBoE,cAAc,EAAE,IAAI;gBACpBC,kBAAkB,EAAE,IAAI;gBACxBpE,eAAe,EAAE,IAAI;gBACrBC,WAAW,EAAE,IAAI;gBACjB;gBACAoE,eAAe,EAAE,IAAI;gBACrBnE,WAAW,EAAE;cACjB,CAAC,CAAC;YACN;UACJ,CAAC,CAAC;QAAA;MAAC,CACV,CAAC;IAEV;;IAEA;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;IACI;EAAA;IAAA/D,GAAA;IAAAsD,KAAA,EACA,SAAAiC,SAAS/B,IAAI,EAAE2E,QAAQ,EAAEC,EAAE,EAAE;MAAA,IAAAC,MAAA;MACzB,IAAMhF,IAAI,GAAG2C,IAAI,CAACC,KAAK,CAACD,IAAI,CAAC+B,SAAS,CAAC,IAAI,CAAC9E,KAAK,CAACI,IAAI,CAAC,CAAC;MACxDR,aAAa,CAAC2C,QAAQ,CAACnC,IAAI,EAAEG,IAAI,EAAE2E,QAAQ,CAAC;MAE5C,IACI,IAAI,CAAClF,KAAK,CAACgB,MAAM,CAACsD,OAAO,IACzB,IAAI,CAAC9C,OAAO,CAAC,IAAI,CAACxB,KAAK,CAACgB,MAAM,CAACsD,OAAO,CAACe,SAAS,EAAE,KAAK,EAAEjF,IAAI,EAAE,IAAI,CAACJ,KAAK,CAACsB,UAAU,EAAE,IAAI,CAACtB,KAAK,CAACuB,UAAU,CAAC,EAC9G;QACE,OAAO,IAAI+D,OAAO,CAAC,UAAAC,OAAO,EAAI;UAC1BH,MAAI,CAAC3E,QAAQ,CACT;YACIE,aAAa,EAAE,IAAI;YACnBC,eAAe,EAAEsE,QAAQ;YACzBrE,WAAW,EAAEN,IAAI;YACjBO,WAAW,EAAE;UACjB,CAAC,EACD,YAAM;YACF,IAAI,OAAOqE,EAAE,KAAK,UAAU,EAAE;cAC1BA,EAAE,CAAC,CAAC;YACR,CAAC,MAAM;cACHI,OAAO,CAAC,CAAC;YACb;UACJ,CACJ,CAAC;QACL,CAAC,CAAC;MACN;MACA;MACA,IAAI,IAAI,CAACvF,KAAK,CAACgB,MAAM,CAACwE,gBAAgB,EAAE;QAAA,IAAAC,KAAA,YAAAA,MAAA,EACgC;YAChE,IAAMC,GAAG,GAAGN,MAAI,CAACpF,KAAK,CAACgB,MAAM,CAACwE,gBAAgB,CAACG,CAAC,CAAC;YACjD,IAAID,GAAG,CAACpB,OAAO,EAAE;cACb,IAAMsB,GAAG,GAAGhG,aAAa,CAACU,QAAQ,CAACF,IAAI,EAAEsF,GAAG,CAACnF,IAAI,CAAC;cAElD,IACI6E,MAAI,CAAC5D,OAAO,CACRkE,GAAG,CAACpB,OAAO,CAACe,SAAS,EACrB,KAAK,EACLjF,IAAI,EACJgF,MAAI,CAACpF,KAAK,CAACsB,UAAU,EACrB8D,MAAI,CAACpF,KAAK,CAACuB,UACf,CAAC,EACH;gBAAA;kBAAAsE,CAAA,EACS,IAAIP,OAAO,CAAC,UAAAC,OAAO,EAAI;oBAC1BH,MAAI,CAAC3E,QAAQ,CACT;sBACIE,aAAa,EAAE,IAAI;sBACnBC,eAAe,EAAEsE,QAAQ;sBACzBrE,WAAW,EAAEN,IAAI;sBACjByE,kBAAkB,EAAEY,GAAG;sBACvBb,cAAc,EAAEW,GAAG,CAACnF,IAAI;sBACxBO,WAAW,EAAE4E,GAAG,CAACpB;oBACrB,CAAC,EACD,YAAM;sBACF,IAAI,OAAOa,EAAE,KAAK,UAAU,EAAE;wBAC1BA,EAAE,CAAC,CAAC;sBACR,CAAC,MAAM;wBACHI,OAAO,CAAC,CAAC;sBACb;oBACJ,CACJ,CAAC;kBACL,CAAC;gBAAC;cACN;YACJ;UACJ,CAAC;UAAAO,IAAA;QAnCD,KAAK,IAAIH,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAG,IAAI,CAAC3F,KAAK,CAACgB,MAAM,CAACwE,gBAAgB,CAACpH,MAAM,EAAEuH,CAAC,EAAE;UAAAG,IAAA,GAAAL,KAAA;UAAA,IAAAK,IAAA,SAAAA,IAAA,CAAAD,CAAA;QAAA;MAoCtE;MAEA,IAAME,OAAO,GAAG,EAAE;MAClB,IAAI,IAAI,CAAC/F,KAAK,CAACgB,MAAM,CAACgF,iBAAiB,EAAE;QACrC,KAAK,IAAIL,EAAC,GAAG,CAAC,EAAEA,EAAC,GAAG,IAAI,CAAC3F,KAAK,CAACgB,MAAM,CAACgF,iBAAiB,CAAC5H,MAAM,EAAEuH,EAAC,EAAE,EAAE;UACjE,IAAMD,GAAG,GAAG,IAAI,CAAC1F,KAAK,CAACgB,MAAM,CAACgF,iBAAiB,CAACL,EAAC,CAAC;UAClD,IAAID,GAAG,CAACpD,QAAQ,EAAE;YACd,IAAMsD,GAAG,GAAGhG,aAAa,CAACU,QAAQ,CAACF,IAAI,EAAEsF,GAAG,CAACnF,IAAI,CAAC;YAElD,IAAI0F,SAAS;YACb,IAAI,IAAI,CAACjG,KAAK,CAACiB,MAAM,EAAE;cACnBgF,SAAS,GAAG,IAAI,CAAC7E,aAAa,CAC1BsE,GAAG,CAACpD,QAAQ,CAAC4D,aAAa,EAC1B9F,IAAI,EACJ,IAAI,CAACJ,KAAK,CAACmG,SAAS,EACpB,IAAI,CAACnG,KAAK,CAACqB,WAAW,EACtB,IAAI,CAACrB,KAAK,CAACsB,UAAU,EACrB,IAAI,CAACtB,KAAK,CAACuB,UACf,CAAC;YACL,CAAC,MAAM;cACH0E,SAAS,GAAG,IAAI,CAACzE,OAAO,CACpBkE,GAAG,CAACpD,QAAQ,CAAC4D,aAAa,EAC1BN,GAAG,EACHxF,IAAI,EACJ,IAAI,CAACJ,KAAK,CAACsB,UAAU,EACrB,IAAI,CAACtB,KAAK,CAACuB,UACf,CAAC;YACL;YAEA,IAAI0E,SAAS,KAAKL,GAAG,EAAE;cACnBhG,aAAa,CAAC2C,QAAQ,CAACnC,IAAI,EAAEsF,GAAG,CAACnF,IAAI,EAAE0F,SAAS,CAAC;cACjDF,OAAO,CAACjI,IAAI,CAAC4H,GAAG,CAACnF,IAAI,CAAC;YAC1B;UACJ;QACJ;MACJ;MAEA,IAAI,IAAI,CAACP,KAAK,CAACgB,MAAM,CAACoF,eAAe,EAAE;QACnC,KAAK,IAAIT,GAAC,GAAG,CAAC,EAAEA,GAAC,GAAG,IAAI,CAAC3F,KAAK,CAACgB,MAAM,CAACoF,eAAe,CAAChI,MAAM,EAAEuH,GAAC,EAAE,EAAE;UAC/D,IAAMD,IAAG,GAAG,IAAI,CAAC1F,KAAK,CAACgB,MAAM,CAACoF,eAAe,CAACT,GAAC,CAAC;UAChDD,IAAG,CAACW,MAAM,IAAIN,OAAO,CAACjI,IAAI,CAAC4H,IAAG,CAACnF,IAAI,CAAC;QACxC;MACJ;MAEA,IAAI,IAAI,CAACP,KAAK,CAACgB,MAAM,CAACsF,cAAc,EAAE;QAClC,KAAK,IAAIX,GAAC,GAAG,CAAC,EAAEA,GAAC,GAAG,IAAI,CAAC3F,KAAK,CAACgB,MAAM,CAACsF,cAAc,CAAClI,MAAM,EAAEuH,GAAC,EAAE,EAAE;UAC9D,IAAMD,KAAG,GAAG,IAAI,CAAC1F,KAAK,CAACgB,MAAM,CAACsF,cAAc,CAACX,GAAC,CAAC;UAC/CD,KAAG,CAACW,MAAM,IAAIN,OAAO,CAACjI,IAAI,CAAC4H,KAAG,CAACnF,IAAI,CAAC;QACxC;MACJ;MAEA,IAAI,IAAI,CAACP,KAAK,CAACgB,MAAM,CAACuF,aAAa,EAAE;QACjC,KAAK,IAAIZ,GAAC,GAAG,CAAC,EAAEA,GAAC,GAAG,IAAI,CAAC3F,KAAK,CAACgB,MAAM,CAACuF,aAAa,CAACnI,MAAM,EAAEuH,GAAC,EAAE,EAAE;UAC7D,IAAMD,KAAG,GAAG,IAAI,CAAC1F,KAAK,CAACgB,MAAM,CAACuF,aAAa,CAACZ,GAAC,CAAC;UAC9CD,KAAG,CAACW,MAAM,IAAIN,OAAO,CAACjI,IAAI,CAAC4H,KAAG,CAACnF,IAAI,CAAC;QACxC;MACJ;MAEA,IAAI,IAAI,CAACP,KAAK,CAACgB,MAAM,CAACsB,QAAQ,IAAI,CAAC,IAAI,CAACtC,KAAK,CAACgB,MAAM,CAACsB,QAAQ,CAACkE,gBAAgB,EAAE;QAC5E,IAAMZ,IAAG,GAAGhG,aAAa,CAACU,QAAQ,CAACF,IAAI,EAAE,IAAI,CAACJ,KAAK,CAACO,IAAI,CAAC;QAEzD,IAAMkG,SAAS,GAAG,IAAI,CAACzG,KAAK,CAACiB,MAAM,GAC7B,IAAI,CAACG,aAAa,CAChB,IAAI,CAACpB,KAAK,CAACgB,MAAM,CAACsB,QAAQ,CAAC4D,aAAa,EACxC9F,IAAI,EACJ,IAAI,CAACJ,KAAK,CAACmG,SAAS,EACpB,IAAI,CAACnG,KAAK,CAACqB,WAAW,EACtB,IAAI,CAACrB,KAAK,CAACsB,UAAU,EACrB,IAAI,CAACtB,KAAK,CAACuB,UACf,CAAC,GACC,IAAI,CAACC,OAAO,CACV,IAAI,CAACxB,KAAK,CAACgB,MAAM,CAACsB,QAAQ,CAAC4D,aAAa,EACxCN,IAAG,EACHxF,IAAI,EACJ,IAAI,CAACJ,KAAK,CAACsB,UAAU,EACrB,IAAI,CAACtB,KAAK,CAACuB,UACf,CAAC;QACL,IAAIkF,SAAS,KAAKb,IAAG,EAAE;UACnBhG,aAAa,CAAC2C,QAAQ,CAACnC,IAAI,EAAE,IAAI,CAACJ,KAAK,CAACO,IAAI,EAAEkG,SAAS,CAAC;QAC5D;MACJ;MAEA,IAAI,IAAI,CAACzG,KAAK,CAACiB,MAAM,EAAE;QACnB,IAAI,CAACjB,KAAK,CAACsC,QAAQ,CAAC/B,IAAI,EAAE2E,QAAQ,EAAE;UAAA,OAAMC,EAAE,IAAIA,EAAE,CAAC,CAAC;QAAA,EAAC;QAErDY,OAAO,IACCA,OAAO,CAAC3H,MAAM,IACd2H,OAAO,CAACzH,OAAO,CAAC,UAACoI,KAAK,EAAExI,CAAC;UAAA,OACrBmE,UAAU,CAAC;YAAA,OAAM+C,MAAI,CAACpF,KAAK,CAACsC,QAAQ,CAACoE,KAAK,EAAE9G,aAAa,CAACU,QAAQ,CAACF,IAAI,EAAEsG,KAAK,CAAC,CAAC;UAAA,GAAExI,CAAC,GAAG,EAAE,CAAC;QAAA,EAAC;MAC1G,CAAC,MAAM;QACH,IAAI,CAAC8B,KAAK,CAACsC,QAAQ,CAAClC,IAAI,EAAE8B,SAAS,EAAE,YAAM;UACvC6D,OAAO,CAAC3H,MAAM,IAAIgH,MAAI,CAACpF,KAAK,CAACU,WAAW,CAACqF,OAAO,EAAE3F,IAAI,CAAC;UACvD+E,EAAE,IAAIA,EAAE,CAAC,CAAC;QACd,CAAC,CAAC;MACN;MAEA,OAAOG,OAAO,CAACC,OAAO,CAAC,CAAC;IAC5B;EAAC;IAAAxI,GAAA;IAAAsD,KAAA,EAED,SAAAmB,QAAQyC,IAAI,EAAE/C,YAAY,EAAEd,IAAI,EAAEkB,UAAU,EAAEC,UAAU,EAAE;MACtD,IAAI0C,IAAI,IAAI,IAAAD,QAAA,aAAOC,IAAI,MAAK,QAAQ,EAAE;QAClCA,IAAI,GAAGA,IAAI,CAACA,IAAI;MACpB;MAEA,IAAI,CAACA,IAAI,EAAE;QACP,OAAO/C,YAAY;MACvB;MACA,IAAI;QACA;QACA,IAAMyF,CAAC,GAAG,IAAIC,QAAQ,CAClB,MAAM,EACN,cAAc,EACd,SAAS,EACT,QAAQ,EACR,SAAS,EACT,SAAS,EACT,WAAW,EACX,YAAY,EACZ,YAAY,EACZ3C,IAAI,CAAC9B,QAAQ,CAAC,QAAQ,CAAC,GAAG8B,IAAI,aAAAd,MAAA,CAAac,IAAI,CACnD,CAAC;QACD,OAAO0C,CAAC,CACJvG,IAAI,IAAI,IAAI,CAACJ,KAAK,CAACI,IAAI,EACvB,IAAI,CAACJ,KAAK,CAAC6G,YAAY,EACvB,IAAI,CAAC7G,KAAK,CAAC8G,YAAY,EACvB,IAAI,CAAC9G,KAAK,CAAC2C,KAAK,EAChB,IAAI,CAAC3C,KAAK,CAAC+G,MAAM,EACjB,IAAI,CAAC/G,KAAK,CAACoD,MAAM,EACjB,IAAI,CAACpD,KAAK,CAACsD,QAAQ,EACnBhC,UAAU,EACVC,UACJ,CAAC;MACL,CAAC,CAAC,OAAO5B,CAAC,EAAE;QACRsD,OAAO,CAACC,KAAK,mBAAAC,MAAA,CAAmBc,IAAI,QAAAd,MAAA,CAAKxD,CAAC,CAAE,CAAC;QAC7C,OAAOuB,YAAY;MACvB;IACJ;EAAC;IAAAnE,GAAA;IAAAsD,KAAA,EAED,SAAAe,cAAc6C,IAAI,EAAE7D,IAAI,EAAE+F,SAAS,EAAE9E,WAAW,EAAEC,UAAU,EAAEC,UAAU,EAAE;MACtE,IAAI0C,IAAI,IAAI,IAAAD,QAAA,aAAOC,IAAI,MAAK,QAAQ,EAAE;QAClCA,IAAI,GAAGA,IAAI,CAACA,IAAI;MACpB;MAEA,IAAI,CAACA,IAAI,EAAE;QACP,OAAO,IAAI;MACf;MACA,IAAI;QACA;QACA,IAAM0C,CAAC,GAAG,IAAIC,QAAQ,CAClB,MAAM,EACN,cAAc,EACd,SAAS,EACT,aAAa,EACb,WAAW,EACX,SAAS,EACT,YAAY,EACZ,YAAY,EACZ3C,IAAI,CAAC9B,QAAQ,CAAC,QAAQ,CAAC,GAAG8B,IAAI,aAAAd,MAAA,CAAac,IAAI,CACnD,CAAC;QACD,OAAO0C,CAAC,CACJvG,IAAI,IAAI,IAAI,CAACJ,KAAK,CAACI,IAAI,EACvB,IAAI,CAACJ,KAAK,CAAC6G,YAAY,EACvB,IAAI,CAAC7G,KAAK,CAAC8G,YAAY,EACvBzF,WAAW,EACX8E,SAAS,EACT,IAAI,CAACnG,KAAK,CAACoD,MAAM,EACjB9B,UAAU,EACVC,UACJ,CAAC;MACL,CAAC,CAAC,OAAO5B,CAAC,EAAE;QACRsD,OAAO,CAACC,KAAK,mBAAAC,MAAA,CAAmBc,IAAI,QAAAd,MAAA,CAAKxD,CAAC,CAAE,CAAC;QAC7C,OAAO,IAAI;MACf;IACJ;EAAC;IAAA5C,GAAA;IAAAsD,KAAA,EAED,SAAA2G,UAAUhG,MAAM,EAAE;MACd,IAAIkC,KAAK;MACT,IAAI+D,QAAQ;MACZ,IAAIZ,MAAM;MACV,IAAInF,YAAY;MAEhB,IAAI,IAAI,CAAClB,KAAK,CAACiB,MAAM,EAAE;QACnBiC,KAAK,GAAGlC,MAAM,CAACkG,SAAS,GAClB,CAAC,IAAI,CAAC9F,aAAa,CACjBJ,MAAM,CAACkG,SAAS,EAChB,IAAI,CAAClH,KAAK,CAACI,IAAI,EACf,IAAI,CAACJ,KAAK,CAACmG,SAAS,EACpB,IAAI,CAACnG,KAAK,CAACqB,WAAW,EACtB,IAAI,CAACrB,KAAK,CAACsB,UAAU,EACrB,IAAI,CAACtB,KAAK,CAACuB,UACf,CAAC,GACC,KAAK;QACX0F,QAAQ,GAAGjG,MAAM,CAACiG,QAAQ,GACpB,IAAI,CAAC7F,aAAa,CAChBJ,MAAM,CAACiG,QAAQ,EACf,IAAI,CAACjH,KAAK,CAACI,IAAI,EACf,IAAI,CAACJ,KAAK,CAACmG,SAAS,EACpB,IAAI,CAACnG,KAAK,CAACqB,WAAW,EACtB,IAAI,CAACrB,KAAK,CAACsB,UAAU,EACrB,IAAI,CAACtB,KAAK,CAACuB,UACf,CAAC,GACC,KAAK;QACX8E,MAAM,GAAGrF,MAAM,CAACqF,MAAM,GAChB,IAAI,CAACjF,aAAa,CAChBJ,MAAM,CAACqF,MAAM,EACb,IAAI,CAACrG,KAAK,CAACI,IAAI,EACf,IAAI,CAACJ,KAAK,CAACmG,SAAS,EACpB,IAAI,CAACnG,KAAK,CAACqB,WAAW,EACtB,IAAI,CAACrB,KAAK,CAACsB,UAAU,EACrB,IAAI,CAACtB,KAAK,CAACuB,UACf,CAAC,GACC,KAAK;QACXL,YAAY,GAAGF,MAAM,CAACG,WAAW,GAC3B,IAAI,CAACC,aAAa,CAChBJ,MAAM,CAACG,WAAW,EAClB,IAAI,CAACnB,KAAK,CAACI,IAAI,EACf,IAAI,CAACJ,KAAK,CAACmG,SAAS,EACpB,IAAI,CAACnG,KAAK,CAACqB,WAAW,EACtB,IAAI,CAACrB,KAAK,CAACsB,UAAU,EACrB,IAAI,CAACtB,KAAK,CAACuB,UACf,CAAC,GACCP,MAAM,WAAQ;MACxB,CAAC,MAAM;QACHkC,KAAK,GAAGlC,MAAM,CAACkG,SAAS,GAClB,CAAC,IAAI,CAAC1F,OAAO,CAACR,MAAM,CAACkG,SAAS,EAAE,KAAK,EAAE,IAAI,CAAClH,KAAK,CAACI,IAAI,EAAE,IAAI,CAACJ,KAAK,CAACsB,UAAU,EAAE,IAAI,CAACtB,KAAK,CAACuB,UAAU,CAAC,GACrG,KAAK;QACX0F,QAAQ,GAAGjG,MAAM,CAACiG,QAAQ,GACpB,IAAI,CAACzF,OAAO,CAACR,MAAM,CAACiG,QAAQ,EAAE,KAAK,EAAE,IAAI,CAACjH,KAAK,CAACI,IAAI,EAAE,IAAI,CAACJ,KAAK,CAACsB,UAAU,EAAE,IAAI,CAACtB,KAAK,CAACuB,UAAU,CAAC,GACnG,KAAK;QACX8E,MAAM,GAAGrF,MAAM,CAACqF,MAAM,GAChB,IAAI,CAAC7E,OAAO,CAACR,MAAM,CAACqF,MAAM,EAAE,KAAK,EAAE,IAAI,CAACrG,KAAK,CAACI,IAAI,EAAE,IAAI,CAACJ,KAAK,CAACsB,UAAU,EAAE,IAAI,CAACtB,KAAK,CAACuB,UAAU,CAAC,GACjG,KAAK;QACXL,YAAY,GAAGF,MAAM,CAACG,WAAW,GAC3B,IAAI,CAACK,OAAO,CACVR,MAAM,CAACG,WAAW,EAClBH,MAAM,WAAQ,EACd,IAAI,CAAChB,KAAK,CAACI,IAAI,EACf,IAAI,CAACJ,KAAK,CAACsB,UAAU,EACrB,IAAI,CAACtB,KAAK,CAACuB,UACf,CAAC,GACCP,MAAM,WAAQ;MACxB;MAEA,OAAO;QACHkC,KAAK,EAALA,KAAK;QAAE+D,QAAQ,EAARA,QAAQ;QAAEZ,MAAM,EAANA,MAAM;QAAEnF,YAAY,EAAZA;MAC7B,CAAC;IACL;EAAC;IAAAnE,GAAA;IAAAsD,KAAA,EAED,SAAAmD,QAAQjD,IAAI,EAAE2C,KAAK,EAAE;MACjB,IAAI,CAACA,KAAK,EAAE;QACR,OAAO,IAAI,CAACnC,OAAO,CAACR,IAAI,CAAC;MAC7B,CAAC,MAAM;QACH,IAAI,CAACQ,OAAO,CAACR,IAAI,CAAC,GAAG2C,KAAK;MAC9B;MAEA,IAAI,CAAClD,KAAK,CAACwD,OAAO,IAAI,IAAI,CAACxD,KAAK,CAACwD,OAAO,CAACjD,IAAI,EAAE2C,KAAK,CAAC;IACzD;EAAC;IAAAnG,GAAA;IAAAsD,KAAA,EAED,SAAA8G,WAAA,CAAW;IAAA,EAAqC;MAC5C,OAAO,IAAI,CAACtD,OAAO,CAAC,IAAI,CAAC7D,KAAK,CAACgB,MAAM,CAACoG,KAAK,CAAC,IAAI,IAAI,CAACvD,OAAO,CAAC,IAAI,CAAC7D,KAAK,CAACgB,MAAM,CAAC8C,IAAI,CAAC;IACxF;;IAEA;EAAA;IAAA/G,GAAA;IAAAsD,KAAA,EACA,SAAAgH,WAAWvD,IAAI,EAAEwD,IAAI,EAAEvD,aAAa,EAAE;MAClC,IAAI,CAACuD,IAAI,EAAE;QACPxD,IAAI,GAAG,IAAI,CAACD,OAAO,CAACC,IAAI,EAAEC,aAAa,CAAC,IAAI,EAAE;QAC9C,IACID,IAAI,KACHA,IAAI,CAAC3B,QAAQ,CAAC,KAAK,CAAC,IAAI2B,IAAI,CAAC3B,QAAQ,CAAC,KAAK,CAAC,IAAI2B,IAAI,CAAC3B,QAAQ,CAAC,KAAK,CAAC,IAAI2B,IAAI,CAAC3B,QAAQ,CAAC,KAAK,CAAC,CAAC,EAChG;UACE,OAAOoF,iBAAK,CAACC,eAAe,CAAC1D,IAAI,CAAC;QACtC;QACA,OAAOA,IAAI;MACf;MACA,oBAAO3I,MAAA,YAAAqJ,aAAA;QACHiD,IAAI,EAAEH,IAAK;QACXrJ,MAAM,EAAC,QAAQ;QACfyJ,GAAG,EAAC,YAAY;QAChBC,KAAK,EAAE;UACHC,KAAK,EAAE,IAAI,CAAC5H,KAAK,CAAC6H,SAAS,KAAK,MAAM,GAAG,SAAS,GAAG,SAAS;UAC9DC,cAAc,EAAE;QACpB;MAAE,GAED,IAAI,CAACjE,OAAO,CAACC,IAAI,EAAEC,aAAa,CAClC,CAAC;IACR;EAAC;IAAAhH,GAAA;IAAAsD,KAAA,EAED,SAAAyC,WAAWiF,OAAO,EAAE3H,IAAI,EAAE;MACtBA,IAAI,GAAGA,IAAI,IAAI,IAAI,CAACJ,KAAK,CAACI,IAAI;MAC9B,IAAI,CAAC2H,OAAO,EAAE;QACV,OAAO,EAAE;MACb;MACA,IAAI,IAAA/D,QAAA,aAAO+D,OAAO,MAAK,QAAQ,EAAE;QAC7B,IAAIA,OAAO,CAAC9D,IAAI,EAAE;UACd8D,OAAO,GAAGA,OAAO,CAAC9D,IAAI;QAC1B,CAAC,MAAM;UACHhB,OAAO,CAAC+E,GAAG,gCAAA7E,MAAA,CAAgCJ,IAAI,CAAC+B,SAAS,CAACiD,OAAO,CAAC,CAAE,CAAC;UACrEA,OAAO,GAAGhF,IAAI,CAAC+B,SAAS,CAACiD,OAAO,CAAC;QACrC;MACJ;MAEA,IAAI;QACA,IAAI,IAAI,CAAC/H,KAAK,CAACiB,MAAM,EAAE;UACnB;UACA,IAAM0F,EAAC,GAAG,IAAIC,QAAQ,CAClB,MAAM,EACN,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,aAAa,EACb,WAAW,EACX,SAAS,aAAAzD,MAAA,CACG4E,OAAO,CAACE,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,MAC5C,CAAC;UACD,OAAOtB,EAAC,CACJvG,IAAI,EACJ,IAAI,CAACJ,KAAK,CAAC6G,YAAY,EACvB,IAAI,CAAC7G,KAAK,CAACsB,UAAU,EACrB,IAAI,CAACtB,KAAK,CAACuB,UAAU,EACrB,IAAI,CAACvB,KAAK,CAAC8G,YAAY,EACvB,IAAI,CAAC9G,KAAK,CAACqB,WAAW,EACtB,IAAI,CAACrB,KAAK,CAACmG,SAAS,EACpB,IAAI,CAACnG,KAAK,CAACoD,MAAM,EACjB,IAAI,CAACpD,KAAK,CAACsB,UAAU,EACrB,IAAI,CAACtB,KAAK,CAACuB,UACf,CAAC;QACL;QACA;QACA,IAAMoF,CAAC,GAAG,IAAIC,QAAQ,CAClB,MAAM,EACN,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,QAAQ,EACR,SAAS,EACT,SAAS,aAAAzD,MAAA,CACG4E,OAAO,CAACE,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,MAC5C,CAAC;QACD,OAAOtB,CAAC,CACJvG,IAAI,EACJ,IAAI,CAACJ,KAAK,CAAC6G,YAAY,EACvB,IAAI,CAAC7G,KAAK,CAACsB,UAAU,EACrB,IAAI,CAACtB,KAAK,CAACuB,UAAU,EACrB,IAAI,CAACvB,KAAK,CAAC8G,YAAY,EACvB,IAAI,CAAC9G,KAAK,CAAC2C,KAAK,EAChB,IAAI,CAAC3C,KAAK,CAAC+G,MAAM,EACjB,IAAI,CAAC/G,KAAK,CAACoD,MACf,CAAC;MACL,CAAC,CAAC,OAAOzD,CAAC,EAAE;QACRsD,OAAO,CAACC,KAAK,mBAAAC,MAAA,CAAmB4E,OAAO,QAAA5E,MAAA,CAAKxD,CAAC,CAAE,CAAC;QAChD,OAAOoI,OAAO;MAClB;IACJ;EAAC;IAAAhL,GAAA;IAAAsD,KAAA,EAED,SAAA6H,OAAA,EAAS;MAAA,IAAAC,MAAA;MACL,IAAMnH,MAAM,GAAG,IAAI,CAAChB,KAAK,CAACgB,MAAM;MAEhC,IAAI,CAACA,MAAM,EAAE;QACT,OAAO,IAAI;MACf;MAEA,IAAI,IAAI,CAAChB,KAAK,CAAC2C,KAAK,IAAI,IAAI,CAACC,iBAAiB,KAAK,KAAK,EAAE;QACtD,IAAI,CAACe,aAAa,GAAGtB,UAAU,CAAC,YAAM;UAClC8F,MAAI,CAACxE,aAAa,GAAG,IAAI;UACzBwE,MAAI,CAAC1F,MAAM,CAAC,CAAC;QACjB,CAAC,EAAE,GAAG,CAAC;MACX;MAEA,IAAA2F,eAAA,GAEI,IAAI,CAACpB,SAAS,CAAChG,MAAM,CAAC;QADtBkC,KAAK,GAAAkF,eAAA,CAALlF,KAAK;QAAE+D,QAAQ,GAAAmB,eAAA,CAARnB,QAAQ;QAAEZ,MAAM,GAAA+B,eAAA,CAAN/B,MAAM;QAAEnF,YAAY,GAAAkH,eAAA,CAAZlH,YAAY;MAGzC,IAAImF,MAAM,EAAE;QACR;QACA,IAAIzJ,MAAM,CAACY,IAAI,CAAC,IAAI,CAACuD,OAAO,CAAC,CAAC3C,MAAM,EAAE;UAClCiE,UAAU,CACN,UAAAtB,OAAO;YAAA,OAAInE,MAAM,CAACY,IAAI,CAACuD,OAAO,CAAC,CAACzC,OAAO,CAAC,UAAAiC,IAAI;cAAA,OAAI4H,MAAI,CAACnI,KAAK,CAACwD,OAAO,CAACjD,IAAI,CAAC;YAAA,EAAC;UAAA,GACzE,GAAG,EACHwC,IAAI,CAACC,KAAK,CAACD,IAAI,CAAC+B,SAAS,CAAC,IAAI,CAAC/D,OAAO,CAAC,CAC3C,CAAC;UACD,IAAI,CAACA,OAAO,GAAG,CAAC,CAAC;QACrB;QAEA,IAAIC,MAAM,CAACqH,eAAe,EAAE;UACxB,IAAMC,KAAI,gBACNnN,MAAA,YAAAqJ,aAAA,CAAChJ,SAAA,CAAA+M,IAAI;YACDD,IAAI;YACJE,EAAE,EAAExH,MAAM,CAACwH,EAAE,IAAItG,SAAU;YAC3BuG,EAAE,EAAEzH,MAAM,CAACyH,EAAE,IAAIvG,SAAU;YAC3BwG,EAAE,EAAE1H,MAAM,CAAC0H,EAAE,IAAIxG,SAAU;YAC3ByG,EAAE,EAAE3H,MAAM,CAAC2H,EAAE,IAAIzG,SAAU;YAC3ByF,KAAK,EAAA3J,aAAA,CAAAA,aAAA;cACD4K,YAAY,EAAE,CAAC;cAAE;cACjBC,SAAS,EAAE;YAAM,GACd7H,MAAM,CAAC2G,KAAK,GACX,IAAI,CAAC3H,KAAK,CAAC6H,SAAS,KAAK,MAAM,GAAG7G,MAAM,CAAC8H,SAAS,GAAG,CAAC,CAAC;UAC5D,CACN,CACJ;UAED,IAAI9H,MAAM,CAAC+H,OAAO,EAAE;YAChB,oBACI5N,MAAA,YAAAqJ,aAAA,CAAArJ,MAAA,YAAA6N,QAAA,qBACI7N,MAAA,YAAAqJ,aAAA;cAAKmD,KAAK,EAAE;gBAAEsB,SAAS,EAAE,MAAM;gBAAEC,MAAM,EAAE;cAAE;YAAE,CAAE,CAAC,EAC/CZ,KACH,CAAC;UAEX;UACA,OAAOA,KAAI;QACf;QACA,OAAO,IAAI;MACf;MACA;MACA,IAAItH,MAAM,CAACmI,sBAAsB,EAAE;QAC/B,IAAIjG,KAAK,IAAI,CAACtG,MAAM,CAACY,IAAI,CAAC,IAAI,CAACuD,OAAO,CAAC,CAAC3C,MAAM,EAAE;UAC5C,IAAI,CAAC2C,OAAO,OAAAxC,gBAAA,iBACP,IAAI,CAACyB,KAAK,CAACO,IAAI,EAAGS,MAAM,CAACoI,kBAAkB,GAAG1H,gBAAI,CAAC+B,CAAC,CAACzC,MAAM,CAACoI,kBAAkB,CAAC,GAAG,IAAI,CAC1F;UACD/G,UAAU,CACN,UAAAtB,OAAO;YAAA,OAAInE,MAAM,CAACY,IAAI,CAACuD,OAAO,CAAC,CAACzC,OAAO,CAAC,UAAAiC,IAAI;cAAA,OAAI4H,MAAI,CAACnI,KAAK,CAACwD,OAAO,CAACjD,IAAI,EAAEQ,OAAO,CAACR,IAAI,CAAC,CAAC;YAAA,EAAC;UAAA,GACxF,GAAG,EACHwC,IAAI,CAACC,KAAK,CAACD,IAAI,CAAC+B,SAAS,CAAC,IAAI,CAAC/D,OAAO,CAAC,CAC3C,CAAC;QACL,CAAC,MAAM,IAAI,CAACmC,KAAK,IAAItG,MAAM,CAACY,IAAI,CAAC,IAAI,CAACuD,OAAO,CAAC,CAAC3C,MAAM,EAAE;UACnDiE,UAAU,CACN,UAAAtB,OAAO;YAAA,OAAInE,MAAM,CAACY,IAAI,CAACuD,OAAO,CAAC,CAACzC,OAAO,CAAC,UAAAiC,IAAI;cAAA,OAAI4H,MAAI,CAACnI,KAAK,CAACwD,OAAO,CAACjD,IAAI,CAAC;YAAA,EAAC;UAAA,GACzE,GAAG,EACHwC,IAAI,CAACC,KAAK,CAACD,IAAI,CAAC+B,SAAS,CAAC,IAAI,CAAC/D,OAAO,CAAC,CAC3C,CAAC;UACD,IAAI,CAACA,OAAO,GAAG,CAAC,CAAC;QACrB;MACJ;MAEA,IAAMsI,YAAY,GAAG,IAAI,CAAClC,UAAU,CAChCjE,KAAK,EACL+D,QAAQ,IAAI,IAAI,CAACjH,KAAK,CAACsJ,cAAc,IAAI,IAAI,CAACtJ,KAAK,CAACiH,QAAQ,EAC5D/F,YACJ,CAAC;MAED,IAAI,IAAI,CAACqI,eAAe,EAAE;QACtB,OAAOF,YAAY;MACvB;MAEA,IAAMf,IAAI,gBAAGnN,MAAA,YAAAqJ,aAAA,CAAChJ,SAAA,CAAA+M,IAAI;QACdD,IAAI;QACJ7D,KAAK,EAAE,IAAI,CAACZ,OAAO,CAAC7C,MAAM,CAACwI,OAAO,CAAE;QACpChB,EAAE,EAAExH,MAAM,CAACwH,EAAE,IAAItG,SAAU;QAC3BuG,EAAE,EAAEzH,MAAM,CAACyH,EAAE,IAAIvG,SAAU;QAC3BwG,EAAE,EAAE1H,MAAM,CAAC0H,EAAE,IAAIxG,SAAU;QAC3ByG,EAAE,EAAE3H,MAAM,CAAC2H,EAAE,IAAIzG,SAAU;QAC3ByF,KAAK,EAAA3J,aAAA,CAAAA,aAAA;UAED4K,YAAY,EAAE,CAAC;UACf;UACAC,SAAS,EAAE,MAAM;UACjBY,KAAK,EACOzI,MAAM,CAACoB,IAAI,KAAK,SAAS,IAAIpB,MAAM,CAACoB,IAAI,KAAK,QAAQ,GAC/CpB,MAAM,CAACyI,KAAK,IAAI,MAAM,GACtBvH;QAAS,GACxBlB,MAAM,CAAC2G,KAAK,GACX,IAAI,CAAC3H,KAAK,CAAC6H,SAAS,KAAK,MAAM,GAAG7G,MAAM,CAAC8H,SAAS,GAAG,CAAC,CAAC;MAC5D,GAEF,IAAI,CAAC9I,KAAK,CAACgB,MAAM,CAACwB,aAAa,IAAI,IAAI,CAACxC,KAAK,CAACgB,MAAM,CAAC0I,MAAM,gBACxDvO,MAAA,YAAAqJ,aAAA,CAAChJ,SAAA,CAAA+M,IAAI;QAACoB,SAAS;QAAChC,KAAK,EAAE;UAAE8B,KAAK,EAAE;QAAO;MAAE,gBACrCtO,MAAA,YAAAqJ,aAAA,CAAChJ,SAAA,CAAA+M,IAAI;QAACD,IAAI;QAACsB,IAAI,EAAE;MAAE,GACdP,YACC,CAAC,eACPlO,MAAA,YAAAqJ,aAAA,CAAChJ,SAAA,CAAA+M,IAAI;QAACD,IAAI;MAAA,gBACNnN,MAAA,YAAAqJ,aAAA,CAAChJ,SAAA,CAAAqO,MAAM;QACHC,OAAO,EAAC,UAAU;QAClBC,OAAO,EAAE,SAAAA,QAAA;UAAA,OAAM5B,MAAI,CAAC1F,MAAM,CAAC,CAAC;QAAA,CAAC;QAC7BgC,KAAK,EACD,IAAI,CAACzE,KAAK,CAACgB,MAAM,CAACgJ,aAAa,GACzB,IAAI,CAACnG,OAAO,CACV,IAAI,CAAC7D,KAAK,CAACgB,MAAM,CAACgJ,aAAa,EAC/B,IAAI,CAAChK,KAAK,CAACgB,MAAM,CAACiJ,0BACtB,CAAC,GACCvI,gBAAI,CAAC+B,CAAC,CAAC,6BAA6B;MAC7C,GAEA,IAAI,CAACI,OAAO,CAAC,IAAI,CAAC7D,KAAK,CAACgB,MAAM,CAAC0I,MAAM,CAClC,CACN,CACJ,CAAC,GAAGL,YACZ,CAAC;MAEP,IAAIrI,MAAM,CAAC+H,OAAO,EAAE;QAChB,oBAAO5N,MAAA,YAAAqJ,aAAA,CAAArJ,MAAA,YAAA6N,QAAA,qBACH7N,MAAA,YAAAqJ,aAAA;UAAKmD,KAAK,EAAE;YAAEsB,SAAS,EAAE,MAAM;YAAEC,MAAM,EAAE;UAAE;QAAE,CAAE,CAAC,EAC/C,IAAI,CAAC9E,mBAAmB,CAAC,CAAC,EAC1BkE,IACH,CAAC;MACP;MACA,IAAI,IAAI,CAAC9H,KAAK,CAACG,aAAa,EAAE;QAC1B,oBAAOxF,MAAA,YAAAqJ,aAAA,CAAArJ,MAAA,YAAA6N,QAAA,QACF,IAAI,CAAC5E,mBAAmB,CAAC,CAAC,EAC1BkE,IACH,CAAC;MACP;MACA,OAAOA,IAAI;IACf;EAAC;IAAAvL,GAAA;IAAAsD,KAAA;IAhsBD;AACJ;AACA;AACA;AACA;AACA;AACA;IACI,SAAAC,SAAgBF,IAAI,EAAEG,IAAI,EAAE;MACxB,IAAI,OAAOA,IAAI,KAAK,QAAQ,EAAE;QAC1B,OAAOX,aAAa,CAACU,QAAQ,CAACF,IAAI,EAAEG,IAAI,CAAC2J,KAAK,CAAC,GAAG,CAAC,CAAC;MACxD;MACA,IAAI3J,IAAI,CAACnC,MAAM,KAAK,CAAC,EAAE;QACnB,OAAOgC,IAAI,CAACG,IAAI,CAAC,CAAC,CAAC,CAAC;MACxB;MACA,IAAM4J,IAAI,GAAG5J,IAAI,CAAC6J,KAAK,CAAC,CAAC;MACzB,IAAI,IAAApG,QAAA,aAAO5D,IAAI,CAAC+J,IAAI,CAAC,MAAK,QAAQ,EAAE;QAChC,OAAOvK,aAAa,CAACU,QAAQ,CAACF,IAAI,CAAC+J,IAAI,CAAC,EAAE5J,IAAI,CAAC;MACnD;MACA,OAAO,IAAI;IACf;EAAC;IAAAxD,GAAA;IAAAsD,KAAA,EAED,SAAAkC,SAAgBnC,IAAI,EAAEG,IAAI,EAAEF,KAAK,EAAE;MAC/B,IAAI,OAAOE,IAAI,KAAK,QAAQ,EAAE;QAC1BX,aAAa,CAAC2C,QAAQ,CAACnC,IAAI,EAAEG,IAAI,CAAC2J,KAAK,CAAC,GAAG,CAAC,EAAE7J,KAAK,CAAC;QACpD;MACJ;MACA,IAAIE,IAAI,CAACnC,MAAM,KAAK,CAAC,EAAE;QACnB,IAAIiC,KAAK,KAAK,IAAI,EAAE;UAChB,OAAOD,IAAI,CAACG,IAAI,CAAC,CAAC,CAAC,CAAC;QACxB,CAAC,MAAM;UACHH,IAAI,CAACG,IAAI,CAAC,CAAC,CAAC,CAAC,GAAGF,KAAK;QACzB;MACJ,CAAC,MAAM;QACH,IAAM8J,IAAI,GAAG5J,IAAI,CAAC6J,KAAK,CAAC,CAAC;QACzB,IAAI,CAAChK,IAAI,CAAC+J,IAAI,CAAC,IAAI,IAAAnG,QAAA,aAAO5D,IAAI,CAAC+J,IAAI,CAAC,MAAK,QAAQ,EAAE;UAC/C/J,IAAI,CAAC+J,IAAI,CAAC,GAAG/J,IAAI,CAAC+J,IAAI,CAAC,IAAI,CAAC,CAAC;QACjC;QACAvK,aAAa,CAAC2C,QAAQ,CAACnC,IAAI,CAAC+J,IAAI,CAAC,EAAE5J,IAAI,EAAEF,KAAK,CAAC;MACnD;IACJ;EAAC;EAAA,OAAAT,aAAA;AAAA,EAlLuByK,gBAAS;AAAA,IAAA9L,gBAAA,aAA/BqB,aAAa,qBACU,eAAe;AAAA,IAAArB,gBAAA,aADtCqB,aAAa,qBAGU,kBAAkB;AAAA,IAAArB,gBAAA,aAHzCqB,aAAa,gBAKK,EAAE;AAAA,IAAArB,gBAAA,aALpBqB,aAAa,gBAOK,SAAS;AAAA,IAAArB,gBAAA,aAP3BqB,aAAa,mBASQhD,MAAM,CAAC0N,cAAc,mBAAAC,kBAAA,2BAAAC,YAAA,YAAAC,IAAA,CAAC,SAAAC,QAAA;EAAA,OAAAF,YAAA,YAAAG,IAAA,UAAAC,SAAAC,QAAA;IAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;MAAA;MAAA;QAAA,OAAAF,QAAA,CAAAG,IAAA;IAAA;EAAA,GAAAN,OAAA;AAAA,CAAc,GAAC,CAACvL,WAAW;AAq0B5ES,aAAa,CAACqL,SAAS,GAAG;EACtB7H,MAAM,EAAE8H,qBAAS,CAAC5N,MAAM,CAAC6N,UAAU;EACnC/K,IAAI,EAAE8K,qBAAS,CAAC5N,MAAM;EACtBuJ,YAAY,EAAEqE,qBAAS,CAAC5N,MAAM;EAC9B0D,MAAM,EAAEkK,qBAAS,CAAC5N,MAAM;EACxBiD,IAAI,EAAE2K,qBAAS,CAACE,MAAM;EACtB;EACA/K,KAAK,EAAE6K,qBAAS,CAACG,GAAG;EACpB;EACAC,SAAS,EAAEJ,qBAAS,CAACE,MAAM;EAC3BzD,KAAK,EAAEuD,qBAAS,CAAC5N,MAAM;EACvBkG,OAAO,EAAE0H,qBAAS,CAACjH,IAAI;EACvB3B,QAAQ,EAAE4I,qBAAS,CAACjH,IAAI;EACxB;EACAsH,OAAO,EAAEL,qBAAS,CAAC5N,MAAM;EACzBoD,WAAW,EAAEwK,qBAAS,CAACjH,IAAI,CAACkH,UAAU;EACtClE,QAAQ,EAAEiE,qBAAS,CAACM,IAAI;EAExB1E,YAAY,EAAEoE,qBAAS,CAAC5N,MAAM;EAC9BqF,KAAK,EAAEuI,qBAAS,CAACM,IAAI;EACrBzE,MAAM,EAAEmE,qBAAS,CAAC5N,MAAM;EACxB+F,WAAW,EAAE6H,qBAAS,CAACE,MAAM;EAC7B9H,QAAQ,EAAE4H,qBAAS,CAACO,MAAM;EAC1B;EACAC,UAAU,EAAER,qBAAS,CAACE,MAAM;EAC5B;EACAO,YAAY,EAAET,qBAAS,CAACM,IAAI;EAE5BrF,SAAS,EAAE+E,qBAAS,CAAC5N,MAAM;EAC3B+D,WAAW,EAAE6J,qBAAS,CAAC5N,MAAM;EAC7B2D,MAAM,EAAEiK,qBAAS,CAACM;AACtB,CAAC;AAAC,IAAAI,QAAA,GAEahM,aAAa;AAAAiM,OAAA,cAAAD,QAAA"}
1
+ {"version":3,"file":"ConfigGeneric.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_material","_Info","_Warning","_Error","_i18n","_Utils","_Confirm","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof3","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","result","NewTarget","constructor","Reflect","construct","_possibleConstructorReturn2","sham","Proxy","Boolean","valueOf","e","ConfigGeneric","_Component","_inherits2","_super","props","_this","_classCallCheck2","_assertThisInitialized2","data","value","getValue","attr","state","setState","forceUpdate","confirmDialog","confirmNewValue","confirmAttr","confirmData","isError","schema","custom","defaultValue","defaultFunc","executeCustom","instanceObj","arrayIndex","globalData","execute","lang","I18n","getLanguage","_createClass2","componentDidMount","_this2","registerOnForceUpdate","onUpdate","LIKE_SELECT","undefined","includes","type","setTimeout","onChange","setValue","defaultSendTo","sendTo","_this3","alive","defaultSendToDone","jsonData","getPattern","JSON","parse","console","error","concat","socket","adapterName","instance","then","onError","t","componentWillUnmount","sendToTimeout","clearTimeout","getText","text","noTranslation","_typeof2","func","en","toString","renderConfirmDialog","_this4","confirm","icon","createElement","title","ok","cancel","onClose","isOk","stringify","confirmDepAttr","confirmDepNewValue","confirmOldValue","newValue","cb","_this5","condition","Promise","resolve","confirmDependsOn","_loop","dep","z","val","v","_ret","changed","onChangeDependsOn","_newValue","calculateFunc","customObj","hiddenDependsOn","hidden","labelDependsOn","helpDependsOn","ignoreOwnChanges","newValue_","_attr","f","Function","originalData","systemConfig","common","calculate","disabled","validator","renderItem","label","renderHelp","link","Utils","renderTextWithA","href","rel","style","color","themeType","textDecoration","pattern","log","replace","render","_this6","_this$calculate","hideOnlyControl","item","Grid","xs","lg","md","sm","marginBottom","textAlign","darkStyle","newLine","Fragment","flexBasis","height","validatorNoSaveOnError","validatorErrorText","renderedItem","commandRunning","noPlaceRequired","tooltip","width","button","container","flex","Button","variant","onClick","buttonTooltip","buttonTooltipNoTranslation","split","part","shift","Component","getPrototypeOf","_asyncToGenerator2","_regenerator","mark","_callee","wrap","_callee$","_context","prev","next","stop","propTypes","PropTypes","isRequired","string","any","themeName","customs","bool","number","dateFormat","isFloatComma","_default","exports"],"sources":["JsonConfigComponent/ConfigGeneric.jsx"],"sourcesContent":["import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\n\nimport { Grid, Button } from '@mui/material';\n\nimport IconInfo from '@mui/icons-material/Info';\nimport IconWarning from '@mui/icons-material/Warning';\nimport IconError from '@mui/icons-material/Error';\n\nimport I18n from './wrapper/i18n';\nimport Utils from './wrapper/Components/Utils';\nimport ConfirmDialog from './wrapper/Dialogs/Confirm';\n\nclass ConfigGeneric extends Component {\n static DIFFERENT_VALUE = '__different__';\n\n static DIFFERENT_LABEL = 'ra___different__';\n\n static NONE_VALUE = '';\n\n static NONE_LABEL = 'ra_none';\n\n static AsyncFunction = Object.getPrototypeOf(async () => {}).constructor;\n\n constructor(props) {\n super(props);\n\n this.state = {\n confirmDialog: false,\n confirmNewValue: null,\n confirmAttr: null,\n confirmData: null,\n };\n\n this.isError = {};\n\n if (props.schema) {\n if (props.custom) {\n this.defaultValue = props.schema.defaultFunc\n ? this.executeCustom(\n props.schema.defaultFunc,\n props.schema.default,\n props.data,\n props.instanceObj,\n props.arrayIndex,\n props.globalData,\n )\n : props.schema.default;\n } else {\n this.defaultValue = props.schema.defaultFunc\n ? this.execute(\n props.schema.defaultFunc,\n props.schema.default,\n props.data,\n props.arrayIndex,\n props.globalData,\n )\n : props.schema.default;\n }\n }\n\n this.lang = I18n.getLanguage();\n }\n\n componentDidMount() {\n this.props.registerOnForceUpdate && this.props.registerOnForceUpdate(this.props.attr, this.onUpdate);\n const LIKE_SELECT = ['select', 'autocomplete', 'autocompleteSendTo'];\n // init default value\n if (this.defaultValue !== undefined) {\n const value = ConfigGeneric.getValue(this.props.data, this.props.attr);\n if (\n value === undefined ||\n (LIKE_SELECT.includes(this.props.schema.type) && (value === '' || value === null))\n ) {\n setTimeout(() => {\n if (this.props.custom) {\n this.props.onChange(this.props.attr, this.defaultValue, () =>\n setTimeout(() => this.props.forceUpdate([this.props.attr], this.props.data), 100));\n // this.onChange(this.props.attr, this.defaultValue);\n } else {\n ConfigGeneric.setValue(this.props.data, this.props.attr, this.defaultValue);\n this.props.onChange(this.props.data, undefined, () =>\n this.props.forceUpdate([this.props.attr], this.props.data));\n }\n }, 100);\n }\n } else if (this.props.schema.defaultSendTo) {\n this.sendTo();\n }\n }\n\n sendTo() {\n if (this.props.alive) {\n this.defaultSendToDone = true;\n let data = this.props.schema.data;\n if (data === undefined && this.props.schema.jsonData) {\n data = this.getPattern(this.props.schema.jsonData);\n try {\n data = JSON.parse(data);\n } catch (e) {\n console.error(`Cannot parse json data: ${data}`);\n }\n } else {\n data = {\n attr: this.props.attr,\n value: ConfigGeneric.getValue(this.props.data, this.props.attr),\n };\n }\n\n if (data === undefined) {\n data = null;\n }\n\n this.props.socket\n .sendTo(`${this.props.adapterName}.${this.props.instance}`, this.props.schema.defaultSendTo, data)\n .then(value => {\n if (value !== null && value !== undefined) {\n if (this.props.custom) {\n this.props.onChange(this.props.attr, value, () =>\n this.props.forceUpdate([this.props.attr], this.props.data));\n // this.onChange(this.props.attr, this.defaultValue);\n } else {\n ConfigGeneric.setValue(this.props.data, this.props.attr, value);\n this.props.onChange(this.props.data, undefined, () =>\n this.props.forceUpdate([this.props.attr], this.props.data));\n }\n }\n });\n } else {\n this.defaultSendToDone = false;\n // show error, that instance does not started\n this.onError(this.props.attr, I18n.t('ra_Instance %s is not alive', this.props.instance));\n }\n }\n\n componentWillUnmount() {\n this.props.registerOnForceUpdate && this.props.registerOnForceUpdate(this.props.attr);\n if (this.sendToTimeout) {\n clearTimeout(this.sendToTimeout);\n this.sendToTimeout = null;\n }\n }\n\n onUpdate = data => {\n const value = ConfigGeneric.getValue(data || this.props.data, this.props.attr) || '';\n if (this.state.value !== value) {\n this.setState({ value });\n } else {\n this.forceUpdate();\n }\n };\n\n /**\n * Extract attribute out of data\n *\n * @param {Record<string, any>} data\n * @param {string|string[]} attr\n * @return {*|null}\n */\n static getValue(data, attr) {\n if (typeof attr === 'string') {\n return ConfigGeneric.getValue(data, attr.split('.'));\n }\n if (attr.length === 1) {\n return data[attr[0]];\n }\n const part = attr.shift();\n if (typeof data[part] === 'object') {\n return ConfigGeneric.getValue(data[part], attr);\n }\n return null;\n }\n\n static setValue(data, attr, value) {\n if (typeof attr === 'string') {\n ConfigGeneric.setValue(data, attr.split('.'), value);\n return;\n }\n if (attr.length === 1) {\n if (value === null) {\n delete data[attr[0]];\n } else {\n data[attr[0]] = value;\n }\n } else {\n const part = attr.shift();\n if (!data[part] || typeof data[part] === 'object') {\n data[part] = data[part] || {};\n }\n ConfigGeneric.setValue(data[part], attr, value);\n }\n }\n\n getText(text, noTranslation) {\n if (!text) {\n return '';\n }\n\n if (typeof text === 'string') {\n text = noTranslation ? text : I18n.t(text);\n if (text.includes('${')) {\n return this.getPattern(text);\n }\n return text;\n }\n if (text && typeof text === 'object') {\n if (text.func) {\n // calculate pattern\n if (typeof text.func === 'object') {\n return this.getPattern(text.func[this.lang] || text.func.en || '');\n }\n return this.getPattern(text.func);\n }\n\n return text[this.lang] || text.en || '';\n }\n\n return text.toString();\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 (\n <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 if (isOk) {\n const data = JSON.parse(JSON.stringify(this.props.data));\n if (this.state.confirmDepAttr) {\n ConfigGeneric.setValue(data, this.state.confirmDepAttr, this.state.confirmDepNewValue);\n }\n\n ConfigGeneric.setValue(data, this.state.confirmAttr, this.state.confirmNewValue);\n this.setState(\n {\n confirmDialog: false,\n confirmDepAttr: null,\n confirmDepNewValue: null,\n confirmNewValue: null,\n confirmAttr: null,\n // eslint-disable-next-line react/no-unused-state\n confirmOldValue: null,\n confirmData: null,\n },\n () => this.props.onChange(data),\n );\n } else {\n this.setState({\n confirmDialog: false,\n confirmDepAttr: null,\n confirmDepNewValue: null,\n confirmNewValue: null,\n confirmAttr: null,\n // eslint-disable-next-line react/no-unused-state\n confirmOldValue: null,\n confirmData: null,\n });\n }\n })}\n />\n );\n }\n\n /**\n * Trigger onChange, to activate save button on change\n *\n * @param attr the changed attribute\n * @param newValue new value of the attribute\n * @param {(() => void)?} cb optional callback function, else returns a Promise\n * @return {Promise<void>}\n */\n // eslint-disable-next-line react/no-unused-class-component-methods\n onChange(attr, newValue, cb) {\n const data = JSON.parse(JSON.stringify(this.props.data));\n ConfigGeneric.setValue(data, attr, newValue);\n\n if (\n this.props.schema.confirm &&\n this.execute(this.props.schema.confirm.condition, false, data, this.props.arrayIndex, this.props.globalData)\n ) {\n return new Promise(resolve => {\n this.setState(\n {\n confirmDialog: true,\n confirmNewValue: newValue,\n confirmAttr: attr,\n confirmData: null,\n },\n () => {\n if (typeof cb === 'function') {\n cb();\n } else {\n resolve();\n }\n },\n );\n });\n }\n // find any inputs with confirmation\n if (this.props.schema.confirmDependsOn) {\n for (let z = 0; z < this.props.schema.confirmDependsOn.length; z++) {\n const dep = this.props.schema.confirmDependsOn[z];\n if (dep.confirm) {\n const val = ConfigGeneric.getValue(data, dep.attr);\n\n if (\n this.execute(\n dep.confirm.condition,\n false,\n data,\n this.props.arrayIndex,\n this.props.globalData,\n )\n ) {\n return new Promise(resolve => {\n this.setState(\n {\n confirmDialog: true,\n confirmNewValue: newValue,\n confirmAttr: attr,\n confirmDepNewValue: val,\n confirmDepAttr: dep.attr,\n confirmData: dep.confirm,\n },\n () => {\n if (typeof cb === 'function') {\n cb();\n } else {\n resolve();\n }\n },\n );\n });\n }\n }\n }\n }\n\n const changed = [];\n if (this.props.schema.onChangeDependsOn) {\n for (let z = 0; z < this.props.schema.onChangeDependsOn.length; z++) {\n const dep = this.props.schema.onChangeDependsOn[z];\n if (dep.onChange) {\n const val = ConfigGeneric.getValue(data, dep.attr);\n\n let _newValue;\n if (this.props.custom) {\n _newValue = this.executeCustom(\n dep.onChange.calculateFunc,\n data,\n this.props.customObj,\n this.props.instanceObj,\n this.props.arrayIndex,\n this.props.globalData,\n );\n } else {\n _newValue = this.execute(\n dep.onChange.calculateFunc,\n val,\n data,\n this.props.arrayIndex,\n this.props.globalData,\n );\n }\n\n if (_newValue !== val) {\n ConfigGeneric.setValue(data, dep.attr, _newValue);\n changed.push(dep.attr);\n }\n }\n }\n }\n\n if (this.props.schema.hiddenDependsOn) {\n for (let z = 0; z < this.props.schema.hiddenDependsOn.length; z++) {\n const dep = this.props.schema.hiddenDependsOn[z];\n dep.hidden && changed.push(dep.attr);\n }\n }\n\n if (this.props.schema.labelDependsOn) {\n for (let z = 0; z < this.props.schema.labelDependsOn.length; z++) {\n const dep = this.props.schema.labelDependsOn[z];\n dep.hidden && changed.push(dep.attr);\n }\n }\n\n if (this.props.schema.helpDependsOn) {\n for (let z = 0; z < this.props.schema.helpDependsOn.length; z++) {\n const dep = this.props.schema.helpDependsOn[z];\n dep.hidden && changed.push(dep.attr);\n }\n }\n\n if (this.props.schema.onChange && !this.props.schema.onChange.ignoreOwnChanges) {\n const val = ConfigGeneric.getValue(data, this.props.attr);\n\n const newValue_ = this.props.custom\n ? this.executeCustom(\n this.props.schema.onChange.calculateFunc,\n data,\n this.props.customObj,\n this.props.instanceObj,\n this.props.arrayIndex,\n this.props.globalData,\n )\n : this.execute(\n this.props.schema.onChange.calculateFunc,\n val,\n data,\n this.props.arrayIndex,\n this.props.globalData,\n );\n if (newValue_ !== val) {\n ConfigGeneric.setValue(data, this.props.attr, newValue_);\n }\n }\n\n if (this.props.custom) {\n this.props.onChange(attr, newValue, () => cb && cb());\n\n changed &&\n changed.length &&\n changed.forEach((_attr, i) =>\n setTimeout(() => this.props.onChange(_attr, ConfigGeneric.getValue(data, _attr)), i * 50));\n } else {\n this.props.onChange(data, undefined, () => {\n changed.length && this.props.forceUpdate(changed, data);\n cb && cb();\n });\n }\n\n return Promise.resolve();\n }\n\n execute(func, defaultValue, data, arrayIndex, globalData) {\n if (func && typeof func === 'object') {\n func = func.func;\n }\n\n if (!func) {\n return defaultValue;\n }\n try {\n // eslint-disable-next-line no-new-func\n const f = new Function(\n 'data',\n 'originalData',\n '_system',\n '_alive',\n '_common',\n '_socket',\n '_instance',\n 'arrayIndex',\n 'globalData',\n '_changed',\n func.includes('return') ? func : `return ${func}`,\n );\n return f(\n data || this.props.data,\n this.props.originalData,\n this.props.systemConfig,\n this.props.alive,\n this.props.common,\n this.props.socket,\n this.props.instance,\n arrayIndex,\n globalData,\n this.props.changed,\n );\n } catch (e) {\n console.error(`Cannot execute ${func}: ${e}`);\n return defaultValue;\n }\n }\n\n executeCustom(func, data, customObj, instanceObj, arrayIndex, globalData) {\n if (func && typeof func === 'object') {\n func = func.func;\n }\n\n if (!func) {\n return null;\n }\n try {\n // eslint-disable-next-line no-new-func\n const f = new Function(\n 'data',\n 'originalData',\n '_system',\n 'instanceObj',\n 'customObj',\n '_socket',\n 'arrayIndex',\n 'globalData',\n '_changed',\n func.includes('return') ? func : `return ${func}`,\n );\n return f(\n data || this.props.data,\n this.props.originalData,\n this.props.systemConfig,\n instanceObj,\n customObj,\n this.props.socket,\n arrayIndex,\n globalData,\n this.props.changed,\n );\n } catch (e) {\n console.error(`Cannot execute ${func}: ${e}`);\n return null;\n }\n }\n\n calculate(schema) {\n let error;\n let disabled;\n let hidden;\n let defaultValue;\n\n if (this.props.custom) {\n error = schema.validator\n ? !this.executeCustom(\n schema.validator,\n this.props.data,\n this.props.customObj,\n this.props.instanceObj,\n this.props.arrayIndex,\n this.props.globalData,\n )\n : false;\n disabled = schema.disabled\n ? this.executeCustom(\n schema.disabled,\n this.props.data,\n this.props.customObj,\n this.props.instanceObj,\n this.props.arrayIndex,\n this.props.globalData,\n )\n : false;\n hidden = schema.hidden\n ? this.executeCustom(\n schema.hidden,\n this.props.data,\n this.props.customObj,\n this.props.instanceObj,\n this.props.arrayIndex,\n this.props.globalData,\n )\n : false;\n defaultValue = schema.defaultFunc\n ? this.executeCustom(\n schema.defaultFunc,\n this.props.data,\n this.props.customObj,\n this.props.instanceObj,\n this.props.arrayIndex,\n this.props.globalData,\n )\n : schema.default;\n } else {\n error = schema.validator\n ? !this.execute(schema.validator, false, this.props.data, this.props.arrayIndex, this.props.globalData)\n : false;\n disabled = schema.disabled\n ? this.execute(schema.disabled, false, this.props.data, this.props.arrayIndex, this.props.globalData)\n : false;\n hidden = schema.hidden\n ? this.execute(schema.hidden, false, this.props.data, this.props.arrayIndex, this.props.globalData)\n : false;\n defaultValue = schema.defaultFunc\n ? this.execute(\n schema.defaultFunc,\n schema.default,\n this.props.data,\n this.props.arrayIndex,\n this.props.globalData,\n )\n : schema.default;\n }\n\n return {\n error, disabled, hidden, defaultValue,\n };\n }\n\n onError(attr, error) {\n if (!error) {\n delete this.isError[attr];\n } else {\n this.isError[attr] = error;\n }\n\n this.props.onError && this.props.onError(attr, error);\n }\n\n renderItem(/* error, disabled, defaultValue */) {\n return this.getText(this.props.schema.label) || this.getText(this.props.schema.text);\n }\n\n // eslint-disable-next-line react/no-unused-class-component-methods\n renderHelp(text, link, noTranslation) {\n if (!link) {\n text = this.getText(text, noTranslation) || '';\n if (\n text &&\n (text.includes('<a ') || text.includes('<br') || text.includes('<b>') || text.includes('<i>'))\n ) {\n return Utils.renderTextWithA(text);\n }\n return text;\n }\n return <a\n href={link}\n target=\"_blank\"\n rel=\"noreferrer\"\n style={{\n color: this.props.themeType === 'dark' ? '#a147ff' : '#5b238f',\n textDecoration: 'underline',\n }}\n >\n {this.getText(text, noTranslation)}\n </a>;\n }\n\n getPattern(pattern, data) {\n data = data || this.props.data;\n if (!pattern) {\n return '';\n }\n if (typeof pattern === 'object') {\n if (pattern.func) {\n pattern = pattern.func;\n } else {\n console.log(`Object must be stringified: ${JSON.stringify(pattern)}`);\n pattern = JSON.stringify(pattern);\n }\n }\n\n try {\n if (this.props.custom) {\n // eslint-disable-next-line no-new-func\n const f = new Function(\n 'data',\n 'originalData',\n 'arrayIndex',\n 'globalData',\n '_system',\n 'instanceObj',\n 'customObj',\n '_socket',\n '_changed',\n `return \\`${pattern.replace(/`/g, '\\\\`')}\\``,\n );\n return f(\n data,\n this.props.originalData,\n this.props.arrayIndex,\n this.props.globalData,\n this.props.systemConfig,\n this.props.instanceObj,\n this.props.customObj,\n this.props.socket,\n this.props.changed,\n );\n }\n // eslint-disable-next-line no-new-func\n const f = new Function(\n 'data',\n 'originalData',\n 'arrayIndex',\n 'globalData',\n '_system',\n '_alive',\n '_common',\n '_socket',\n '_changed',\n `return \\`${pattern.replace(/`/g, '\\\\`')}\\``,\n );\n return f(\n data,\n this.props.originalData,\n this.props.arrayIndex,\n this.props.globalData,\n this.props.systemConfig,\n this.props.alive,\n this.props.common,\n this.props.socket,\n this.props.changed,\n );\n } catch (e) {\n console.error(`Cannot execute ${pattern}: ${e}`);\n return pattern;\n }\n }\n\n render() {\n const schema = this.props.schema;\n\n if (!schema) {\n return null;\n }\n\n if (this.props.alive && this.defaultSendToDone === false) {\n this.sendToTimeout = setTimeout(() => {\n this.sendToTimeout = null;\n this.sendTo();\n }, 200);\n }\n\n const {\n error, disabled, hidden, defaultValue,\n } = this.calculate(schema);\n\n if (hidden) {\n // Remove all errors if element is hidden\n if (Object.keys(this.isError).length) {\n setTimeout(\n isError => Object.keys(isError).forEach(attr => this.props.onError(attr)),\n 100,\n JSON.parse(JSON.stringify(this.isError)),\n );\n this.isError = {};\n }\n\n if (schema.hideOnlyControl) {\n const item = <Grid\n item\n xs={schema.xs || undefined}\n lg={schema.lg || undefined}\n md={schema.md || undefined}\n sm={schema.sm || undefined}\n style={({\n marginBottom: 0, /* marginRight: 8, */\n textAlign: 'left',\n ...schema.style,\n ...(this.props.themeType === 'dark' ? schema.darkStyle : {}),\n })}\n />;\n\n if (schema.newLine) {\n return <>\n <div style={{ flexBasis: '100%', height: 0 }} />\n {item}\n </>;\n }\n return item;\n }\n return null;\n }\n // Add error\n if (schema.validatorNoSaveOnError) {\n if (error && !Object.keys(this.isError).length) {\n this.isError = {\n [this.props.attr]: schema.validatorErrorText ? I18n.t(schema.validatorErrorText) : true,\n };\n setTimeout(\n isError => Object.keys(isError).forEach(attr => this.props.onError(attr, isError[attr])),\n 100,\n JSON.parse(JSON.stringify(this.isError)),\n );\n } else if (!error && Object.keys(this.isError).length) {\n setTimeout(\n isError => Object.keys(isError).forEach(attr => this.props.onError(attr)),\n 100,\n JSON.parse(JSON.stringify(this.isError)),\n );\n this.isError = {};\n }\n }\n\n const renderedItem = this.renderItem(\n error,\n disabled || this.props.commandRunning || this.props.disabled,\n defaultValue,\n );\n\n if (this.noPlaceRequired) {\n return renderedItem;\n }\n\n const item = <Grid\n item\n title={this.getText(schema.tooltip)}\n xs={schema.xs || undefined}\n lg={schema.lg || undefined}\n md={schema.md || undefined}\n sm={schema.sm || undefined}\n style={({\n marginBottom: 0,\n // marginRight: 8,\n textAlign: 'left',\n width:\n schema.type === 'divider' || schema.type === 'header'\n ? schema.width || '100%'\n : undefined,\n ...schema.style,\n ...(this.props.themeType === 'dark' ? schema.darkStyle : {}),\n })}\n >\n {this.props.schema.defaultSendTo && this.props.schema.button ?\n <Grid container style={{ width: '100%' }}>\n <Grid item flex={1}>\n {renderedItem}\n </Grid>\n <Grid item>\n <Button\n variant=\"outlined\"\n onClick={() => this.sendTo()}\n title={\n this.props.schema.buttonTooltip\n ? this.getText(\n this.props.schema.buttonTooltip,\n this.props.schema.buttonTooltipNoTranslation,\n )\n : I18n.t('ra_Request data by instance')\n }\n >\n {this.getText(this.props.schema.button)}\n </Button>\n </Grid>\n </Grid> : renderedItem}\n </Grid>;\n\n if (schema.newLine) {\n return <>\n <div style={{ flexBasis: '100%', height: 0 }} />\n {this.renderConfirmDialog()}\n {item}\n </>;\n }\n if (this.state.confirmDialog) {\n return <>\n {this.renderConfirmDialog()}\n {item}\n </>;\n }\n return item;\n }\n}\n\nConfigGeneric.propTypes = {\n socket: PropTypes.object.isRequired,\n data: PropTypes.object,\n originalData: PropTypes.object,\n schema: PropTypes.object,\n attr: PropTypes.string,\n // eslint-disable-next-line react/no-unused-prop-types\n value: PropTypes.any,\n // eslint-disable-next-line react/no-unused-prop-types\n themeName: PropTypes.string,\n style: PropTypes.object,\n onError: PropTypes.func,\n onChange: PropTypes.func,\n // eslint-disable-next-line react/no-unused-prop-types\n customs: PropTypes.object,\n forceUpdate: PropTypes.func.isRequired,\n disabled: PropTypes.bool,\n\n systemConfig: PropTypes.object,\n alive: PropTypes.bool,\n changed: PropTypes.bool,\n common: PropTypes.object,\n adapterName: PropTypes.string,\n instance: PropTypes.number,\n // eslint-disable-next-line react/no-unused-prop-types\n dateFormat: PropTypes.string,\n // eslint-disable-next-line react/no-unused-prop-types\n isFloatComma: PropTypes.bool,\n\n customObj: PropTypes.object,\n instanceObj: PropTypes.object,\n custom: PropTypes.bool,\n};\n\nexport default ConfigGeneric;\n"],"mappings":"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"}
@@ -54,6 +54,11 @@ var ConfigIP = /*#__PURE__*/function (_ConfigGeneric) {
54
54
  return item.family === 'ipv6';
55
55
  });
56
56
  }
57
+ if (_this.props.schema.noInternal) {
58
+ ips = ips.filter(function (item) {
59
+ return !item.internal;
60
+ });
61
+ }
57
62
  ips.forEach(function (item) {
58
63
  if (item.address === '0.0.0.0') {
59
64
  item.name = "[IPv4] 0.0.0.0 - ".concat(_i18n["default"].t('ra_Listen on all IPs'));
@@ -1 +1 @@
1
- {"version":3,"file":"ConfigIP.js","names":["_react","_interopRequireDefault","require","_propTypes","_styles","_material","_i18n","_ConfigGeneric2","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","result","NewTarget","constructor","Reflect","construct","arguments","apply","_possibleConstructorReturn2","sham","Proxy","Boolean","prototype","valueOf","call","e","styles","fullWidth","width","ConfigIP","_ConfigGeneric","_inherits2","_super","_classCallCheck2","_createClass2","key","value","componentDidMount","_this","_get2","props","socket","getHostByIp","common","host","then","ips","schema","listenOnAllPorts","filter","item","address","onlyIp4","family","onlyIp6","forEach","name","concat","I18n","t","setState","renderItem","error","disabled","_this$state$ips","_this2","_this$state$ips2","ConfigGeneric","getValue","data","attr","state","find","it","createElement","FormControl","className","classes","variant","label","InputLabel","getText","TextField","onChange","target","Select","renderValue","val","map","i","MenuItem","help","FormHelperText","renderHelp","helpLink","noTranslation","propTypes","PropTypes","object","isRequired","themeType","string","themeName","style","onError","func","_default","withStyles","exports"],"sources":["JsonConfigComponent/ConfigIP.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@mui/styles';\n\nimport {\n InputLabel,\n TextField,\n FormHelperText,\n MenuItem,\n FormControl,\n Select,\n} from '@mui/material';\n\nimport I18n from './wrapper/i18n';\n\nimport ConfigGeneric from './ConfigGeneric';\n\nconst styles = () => ({\n fullWidth: {\n width: '100%',\n },\n});\n\nclass ConfigIP extends ConfigGeneric {\n componentDidMount() {\n super.componentDidMount();\n this.props.socket.getHostByIp(this.props.common.host)\n .then(ips => {\n // [{name, address, family}]\n if (!this.props.schema.listenOnAllPorts) {\n ips = ips.filter(item => item.address !== '0.0.0.0' && item.address !== '::');\n }\n if (this.props.schema.onlyIp4) {\n ips = ips.filter(item => item.family === 'ipv4');\n } else if (this.props.schema.onlyIp6) {\n ips = ips.filter(item => item.family === 'ipv6');\n }\n ips.forEach(item => {\n if (item.address === '0.0.0.0') {\n item.name = `[IPv4] 0.0.0.0 - ${I18n.t('ra_Listen on all IPs')}`;\n } else\n if (item.address === '::') {\n item.name = `[IPv6] :: - ${I18n.t('ra_Listen on all IPs')}`;\n }\n });\n this.setState({ ips });\n });\n }\n\n renderItem(error, disabled /* , defaultValue */) {\n const value = ConfigGeneric.getValue(this.props.data, this.props.attr);\n const item = this.state.ips?.find(it => it.address === value);\n\n return <FormControl className={this.props.classes.fullWidth} variant=\"standard\">\n {this.props.schema.label ? <InputLabel>{this.getText(this.props.schema.label)}</InputLabel> : null}\n {!this.state.ips ?\n <TextField\n fullWidth\n variant=\"standard\"\n error={!!error}\n disabled={!!disabled}\n value={value}\n onChange={e => this.onChange(this.props.attr, e.target.value)}\n /> :\n <Select\n variant=\"standard\"\n error={!!error}\n disabled={!!disabled}\n value={value}\n renderValue={val => item?.name || val}\n onChange={e => this.onChange(this.props.attr, e.target.value)}\n >\n {this.state.ips?.map((it, i) =>\n <MenuItem key={i} value={it.address}>{it.name}</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\nConfigIP.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)(ConfigIP);\n"],"mappings":"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"}
1
+ {"version":3,"file":"ConfigIP.js","names":["_react","_interopRequireDefault","require","_propTypes","_styles","_material","_i18n","_ConfigGeneric2","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","result","NewTarget","constructor","Reflect","construct","arguments","apply","_possibleConstructorReturn2","sham","Proxy","Boolean","prototype","valueOf","call","e","styles","fullWidth","width","ConfigIP","_ConfigGeneric","_inherits2","_super","_classCallCheck2","_createClass2","key","value","componentDidMount","_this","_get2","props","socket","getHostByIp","common","host","then","ips","schema","listenOnAllPorts","filter","item","address","onlyIp4","family","onlyIp6","noInternal","internal","forEach","name","concat","I18n","t","setState","renderItem","error","disabled","_this$state$ips","_this2","_this$state$ips2","ConfigGeneric","getValue","data","attr","state","find","it","createElement","FormControl","className","classes","variant","label","InputLabel","getText","TextField","onChange","target","Select","renderValue","val","map","i","MenuItem","help","FormHelperText","renderHelp","helpLink","noTranslation","propTypes","PropTypes","object","isRequired","themeType","string","themeName","style","onError","func","_default","withStyles","exports"],"sources":["JsonConfigComponent/ConfigIP.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@mui/styles';\n\nimport {\n InputLabel,\n TextField,\n FormHelperText,\n MenuItem,\n FormControl,\n Select,\n} from '@mui/material';\n\nimport I18n from './wrapper/i18n';\n\nimport ConfigGeneric from './ConfigGeneric';\n\nconst styles = () => ({\n fullWidth: {\n width: '100%',\n },\n});\n\nclass ConfigIP extends ConfigGeneric {\n componentDidMount() {\n super.componentDidMount();\n this.props.socket.getHostByIp(this.props.common.host)\n .then(ips => {\n // [{name, address, family}]\n if (!this.props.schema.listenOnAllPorts) {\n ips = ips.filter(item => item.address !== '0.0.0.0' && item.address !== '::');\n }\n if (this.props.schema.onlyIp4) {\n ips = ips.filter(item => item.family === 'ipv4');\n } else if (this.props.schema.onlyIp6) {\n ips = ips.filter(item => item.family === 'ipv6');\n }\n if (this.props.schema.noInternal) {\n ips = ips.filter(item => !item.internal);\n }\n ips.forEach(item => {\n if (item.address === '0.0.0.0') {\n item.name = `[IPv4] 0.0.0.0 - ${I18n.t('ra_Listen on all IPs')}`;\n } else if (item.address === '::') {\n item.name = `[IPv6] :: - ${I18n.t('ra_Listen on all IPs')}`;\n }\n });\n this.setState({ ips });\n });\n }\n\n renderItem(error, disabled /* , defaultValue */) {\n const value = ConfigGeneric.getValue(this.props.data, this.props.attr);\n const item = this.state.ips?.find(it => it.address === value);\n\n return <FormControl className={this.props.classes.fullWidth} variant=\"standard\">\n {this.props.schema.label ? <InputLabel>{this.getText(this.props.schema.label)}</InputLabel> : null}\n {!this.state.ips ?\n <TextField\n fullWidth\n variant=\"standard\"\n error={!!error}\n disabled={!!disabled}\n value={value}\n onChange={e => this.onChange(this.props.attr, e.target.value)}\n /> :\n <Select\n variant=\"standard\"\n error={!!error}\n disabled={!!disabled}\n value={value}\n renderValue={val => item?.name || val}\n onChange={e => this.onChange(this.props.attr, e.target.value)}\n >\n {this.state.ips?.map((it, i) =>\n <MenuItem key={i} value={it.address}>{it.name}</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\nConfigIP.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)(ConfigIP);\n"],"mappings":"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"}