@iobroker/adapter-react-v5 3.0.3 → 3.0.6

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.
@@ -1 +1 @@
1
- {"version":3,"file":"ConfigTextSendTo.js","names":["styles","theme","fullWidth","width","ConfigTextSendTo","askInstance","props","alive","data","schema","undefined","jsonData","getPattern","JSON","parse","e","console","error","socket","sendTo","adapterName","instance","command","then","text","setState","context","getContext","Array","isArray","alsoDependsOn","forEach","attr","ConfigGeneric","getValue","stringify","disabled","defaultValue","state","setTimeout","container","endAdornment","copyToClipboard","copy","window","alert","getText","label","renderHelp","help","helpLink","noTranslation","classes","propTypes","PropTypes","object","isRequired","string","number","withStyles"],"sources":["JsonConfigComponent/ConfigTextSendTo.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@mui/styles';\n\nimport TextField from '@mui/material/TextField';\nimport IconButton from '@mui/material/IconButton';\n\nimport copy from '../copy-to-clipboard';\nimport CopyIcon from '../..//icons/IconCopy';\n\nimport ConfigGeneric from './ConfigGeneric';\n\nconst styles = theme => ({\n fullWidth: {\n width: '100%'\n }\n});\n\nclass ConfigTextSendTo extends ConfigGeneric {\n componentDidMount() {\n super.componentDidMount();\n\n this.askInstance();\n }\n\n askInstance() {\n if (this.props.alive) {\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 }\n\n if (data === undefined) {\n data = null;\n }\n\n this.props.socket.sendTo(this.props.adapterName + '.' + this.props.instance, this.props.schema.command || 'send', data)\n .then(text => this.setState({text: text || '', context: this.getContext()}));\n }\n }\n\n getContext() {\n const context = {};\n if (Array.isArray(this.props.schema.alsoDependsOn)) {\n this.props.schema.alsoDependsOn.forEach(attr =>\n context[attr] = ConfigGeneric.getValue(this.props.data, attr));\n }\n return JSON.stringify(context);\n }\n\n renderItem(error, disabled, defaultValue) {\n if (this.state.text === undefined) {\n return null;\n }\n\n if (this.props.alive) {\n const context = this.getContext();\n if (context !== this.state.context) {\n setTimeout(() => {\n this.askInstance();\n }, 300);\n }\n }\n\n if (this.props.schema.container === 'text') {\n return <TextField\n variant=\"standard\"\n fullWidth\n InputProps={{\n endAdornment: this.props.schema.copyToClipboard ?\n <IconButton\n size=\"small\"\n onClick={e => {\n copy(this.state.text);\n window.alert('Copied');\n }}>\n <CopyIcon/>\n </IconButton>\n : undefined,\n }}\n value={this.state.text}\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 } else {\n return <div className={this.props.classes.fullWidth}>{this.state.text}</div>;\n }\n }\n}\n\nConfigTextSendTo.propTypes = {\n socket: PropTypes.object.isRequired,\n data: PropTypes.object.isRequired,\n schema: PropTypes.object,\n adapterName: PropTypes.string,\n instance: PropTypes.number,\n};\n\nexport default withStyles(styles)(ConfigTextSendTo);"],"mappings":"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"}
1
+ {"version":3,"file":"ConfigTextSendTo.js","names":["styles","theme","fullWidth","width","ConfigTextSendTo","askInstance","props","alive","data","schema","undefined","jsonData","getPattern","JSON","parse","e","console","error","socket","sendTo","adapterName","instance","command","then","text","setState","context","getContext","Array","isArray","alsoDependsOn","forEach","attr","ConfigGeneric","getValue","stringify","disabled","defaultValue","state","setTimeout","container","endAdornment","copyToClipboard","copy","window","alert","getText","label","renderHelp","help","helpLink","noTranslation","classes","propTypes","PropTypes","object","isRequired","string","number","withStyles"],"sources":["JsonConfigComponent/ConfigTextSendTo.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@mui/styles';\n\nimport TextField from '@mui/material/TextField';\nimport IconButton from '@mui/material/IconButton';\n\nimport copy from '../copy-to-clipboard';\nimport CopyIcon from '../../icons/IconCopy';\n\nimport ConfigGeneric from './ConfigGeneric';\n\nconst styles = theme => ({\n fullWidth: {\n width: '100%'\n }\n});\n\nclass ConfigTextSendTo extends ConfigGeneric {\n componentDidMount() {\n super.componentDidMount();\n\n this.askInstance();\n }\n\n askInstance() {\n if (this.props.alive) {\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 }\n\n if (data === undefined) {\n data = null;\n }\n\n this.props.socket.sendTo(this.props.adapterName + '.' + this.props.instance, this.props.schema.command || 'send', data)\n .then(text => this.setState({text: text || '', context: this.getContext()}));\n }\n }\n\n getContext() {\n const context = {};\n if (Array.isArray(this.props.schema.alsoDependsOn)) {\n this.props.schema.alsoDependsOn.forEach(attr =>\n context[attr] = ConfigGeneric.getValue(this.props.data, attr));\n }\n return JSON.stringify(context);\n }\n\n renderItem(error, disabled, defaultValue) {\n if (this.state.text === undefined) {\n return null;\n }\n\n if (this.props.alive) {\n const context = this.getContext();\n if (context !== this.state.context) {\n setTimeout(() => {\n this.askInstance();\n }, 300);\n }\n }\n\n if (this.props.schema.container === 'text') {\n return <TextField\n variant=\"standard\"\n fullWidth\n InputProps={{\n endAdornment: this.props.schema.copyToClipboard ?\n <IconButton\n size=\"small\"\n onClick={e => {\n copy(this.state.text);\n window.alert('Copied');\n }}>\n <CopyIcon/>\n </IconButton>\n : undefined,\n }}\n value={this.state.text}\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 } else {\n return <div className={this.props.classes.fullWidth}>{this.state.text}</div>;\n }\n }\n}\n\nConfigTextSendTo.propTypes = {\n socket: PropTypes.object.isRequired,\n data: PropTypes.object.isRequired,\n schema: PropTypes.object,\n adapterName: PropTypes.string,\n instance: PropTypes.number,\n};\n\nexport default withStyles(styles)(ConfigTextSendTo);"],"mappings":"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"}
@@ -149,12 +149,12 @@ var JsonConfigComponent = /*#__PURE__*/function (_Component) {
149
149
  updateData: _this.props.updateData,
150
150
  systemConfig: null,
151
151
  alive: false,
152
- commandRunning: false
152
+ commandRunning: false,
153
+ schema: JSON.parse(JSON.stringify(_this.props.schema))
153
154
  };
154
155
  _this.forceUpdateHandlers = {};
155
- _this.schema = JSON.parse(JSON.stringify(_this.props.schema));
156
156
 
157
- _this.buildDependencies(_this.schema);
157
+ _this.buildDependencies(_this.state.schema);
158
158
 
159
159
  _this.readData();
160
160
 
@@ -417,15 +417,16 @@ var JsonConfigComponent = /*#__PURE__*/function (_Component) {
417
417
 
418
418
  return /*#__PURE__*/_react["default"].createElement("div", {
419
419
  className: this.props.classes.root
420
- }, this.renderItem(this.schema));
420
+ }, this.renderItem(this.state.schema));
421
421
  }
422
422
  }], [{
423
423
  key: "getDerivedStateFromProps",
424
424
  value: function getDerivedStateFromProps(props, state) {
425
- if (JSON.stringify(props.updateData) !== JSON.stringify(state.updateData)) {
425
+ if (props.updateData !== state.updateData) {
426
426
  return {
427
427
  updateData: props.updateData,
428
- originalData: JSON.stringify(props.data)
428
+ originalData: JSON.stringify(props.data),
429
+ schema: JSON.parse(JSON.stringify(props.schema))
429
430
  };
430
431
  } else {
431
432
  return null;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["styles","theme","root","width","height","JsonConfigComponent","props","commandRunning","setState","id","state","val","alive","data","value","cb","onValueChange","_data","Object","keys","forEach","attr","startsWith","changed","JSON","stringify","originalData","onChange","error","errors","parse","onError","length","Array","isArray","a","forceUpdateHandlers","updateData","systemConfig","schema","buildDependencies","readData","custom","common","Promise","resolve","socket","getObject","adapterName","instance","then","obj","readSettings","getCompactSystemConfig","getState","subscribeState","onAlive","_list","items","flatten","attrs","confirm","alsoDependsOn","dep","console","warn","replace","confirmDependsOn","depObj","cancel","push","onChangeDependsOn","hidden","hiddenDependsOn","label","labelDependsOn","help","helpDependsOn","item","type","onCommandRunning","themeType","themeName","customs","dateFormat","isFloatComma","multiEdit","customObj","instanceObj","forceUpdate","registerOnForceUpdate","classes","renderItem","i18n","lang","I18n","getLanguage","path","fileExists","exists","fileName","readFile","json","file","undefined","extendTranslations","e","Component","propTypes","PropTypes","object","isRequired","string","number","bool","style","className","func","withStyles"],"sources":["JsonConfigComponent/index.jsx"],"sourcesContent":["import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@mui/styles';\n\nimport LinearProgress from '@mui/material/LinearProgress';\n\nimport I18n from '../../i18n';\n\nimport ConfigTabs from './ConfigTabs';\nimport ConfigPanel from './ConfigPanel';\n\nconst styles = theme => ({\n root: {\n width: '100%',\n height: '100%'\n }\n});\n\nclass JsonConfigComponent extends Component {\n constructor(props) {\n super(props);\n\n this.state = {\n originalData: JSON.stringify(this.props.data),\n changed: false,\n errors: {\n\n },\n updateData: this.props.updateData,\n systemConfig: null,\n alive: false,\n commandRunning: false,\n };\n\n this.forceUpdateHandlers = {};\n\n this.schema = JSON.parse(JSON.stringify(this.props.schema));\n this.buildDependencies(this.schema);\n\n this.readData();\n }\n\n static getDerivedStateFromProps(props, state) {\n if (JSON.stringify(props.updateData) !== JSON.stringify(state.updateData)) {\n return {updateData: props.updateData, originalData: JSON.stringify(props.data)};\n } else {\n return null;\n }\n }\n\n static loadI18n(socket, i18n, adapterName) {\n if (i18n === true || (i18n && typeof i18n === 'string')) {\n const lang = I18n.getLanguage();\n const path = typeof i18n === 'string' ? i18n : 'i18n';\n return socket.fileExists(adapterName + '.admin', `${path}/${lang}.json`)\n .then(exists => {\n if (exists) {\n return `${path}/${lang}.json`;\n } else {\n return socket.fileExists(adapterName + '.admin', `${path}/${lang}/translations.json`)\n .then(exists =>\n exists ? `${path}/${lang}/translations.json` : '')\n }\n })\n .then(fileName => {\n if (fileName) {\n return socket.readFile(adapterName + '.admin', fileName)\n .then(json => {\n if (json.file !== undefined) {\n json = json.file;\n }\n try {\n json = JSON.parse(json);\n // apply file to I18n\n I18n.extendTranslations(json, lang);\n } catch (e) {\n console.error(`Cannot parse language file \"${adapterName}.admin/${fileName}: ${e}`);\n }\n })\n } else {\n console.warn(`Cannot find i18n for ${adapterName} / ${fileName}`);\n return Promise.resolve();\n }\n });\n } else if (i18n && typeof i18n === 'object') {\n I18n.extendTranslations(i18n);\n return Promise.resolve();\n } else {\n return Promise.resolve();\n }\n }\n\n onCommandRunning = commandRunning => this.setState( {commandRunning});\n\n readSettings() {\n if ((this.props.custom || this.props.common) && this.props.data) {\n return Promise.resolve();\n } else {\n return this.props.socket.getObject(`system.adapter.${this.props.adapterName}.${this.props.instance}`)\n .then(obj => this.setState({common: obj.common, data: this.props.data || obj.native}));\n }\n }\n\n readData() {\n this.readSettings()\n .then(() => this.props.socket.getCompactSystemConfig())\n .then(systemConfig =>\n this.props.socket.getState(`system.adapter.${this.props.adapterName}.${this.props.instance}.alive`)\n .then(state => {\n if (this.props.custom) {\n this.setState({systemConfig: systemConfig.common, alive: !!(state && state.val)});\n } else {\n this.setState({systemConfig: systemConfig.common, alive: !!(state && state.val)}, () =>\n this.props.socket.subscribeState(`system.adapter.${this.props.adapterName}.${this.props.instance}.alive`, this.onAlive));\n }\n }));\n }\n\n onAlive = (id, state) => {\n if ((state?.val || false) !== this.state.alive) {\n this.setState({alive: state?.val || false});\n }\n }\n\n onChange = (data, value, cb) => {\n if (this.props.onValueChange) {\n this.props.onValueChange(data, value);\n cb && cb();\n } else {\n const state = {data};\n\n const _data = {};\n // remove all attributes starting with \"_\"\n Object.keys(data).forEach(attr => !attr.startsWith('_') && (_data[attr] = data[attr]));\n\n state.changed = JSON.stringify(_data) !== this.state.originalData;\n\n this.setState({state}, () => {\n this.props.onChange(_data, state.changed);\n cb && cb();\n });\n }\n }\n\n onError = (attr, error) => {\n const errors = JSON.parse(JSON.stringify(this.state.errors));\n if (error) {\n errors[attr] = error;\n } else {\n delete errors[attr];\n }\n\n if (JSON.stringify(errors) !== JSON.parse(JSON.stringify(this.state.errors))) {\n this.setState({errors}, () =>\n this.props.onError(!!Object.keys(this.state.errors).length));\n }\n }\n\n flatten(schema, _list) {\n _list = _list || {};\n if (schema.items) {\n Object.keys(schema.items).forEach(attr => {\n _list[attr] = schema.items[attr];\n this.flatten(schema.items[attr], _list);\n });\n }\n\n return _list;\n }\n\n buildDependencies(schema) {\n const attrs = this.flatten(schema);\n Object.keys(attrs).forEach(attr => {\n if (attrs[attr].confirm?.alsoDependsOn) {\n attrs[attr].confirm?.alsoDependsOn.forEach(dep => {\n if (!attrs[dep]) {\n console.error(`[JsonConfigComponent] Attribute ${dep} does not exist!`);\n if (dep.startsWith('data.')) {\n console.warn(`[JsonConfigComponent] please use \"${dep.replace(/^data\\./, '')}\" instead of \"${dep}\"`);\n }\n } else {\n attrs[dep].confirmDependsOn = attrs[dep].confirmDependsOn || [];\n\n const depObj = {...attrs[attr], attr};\n if (depObj.confirm) {\n depObj.confirm.cancel = 'Undo';\n }\n\n attrs[dep].confirmDependsOn.push(depObj);\n }\n });\n }\n\n if (attrs[attr].onChange?.alsoDependsOn) {\n attrs[attr].onChange?.alsoDependsOn.forEach(dep => {\n if (!attrs[dep]) {\n console.error(`[JsonConfigComponent] Attribute ${dep} does not exist!`);\n if (dep.startsWith('data.')) {\n console.warn(`[JsonConfigComponent] please use \"${dep.replace(/^data\\./, '')}\" instead of \"${dep}\"`);\n }\n } else {\n attrs[dep].onChangeDependsOn = attrs[dep].onChangeDependsOn || [];\n\n const depObj = {...attrs[attr], attr};\n\n attrs[dep].onChangeDependsOn.push(depObj);\n }\n });\n }\n\n if (attrs[attr].hidden?.alsoDependsOn) {\n attrs[attr].hidden?.alsoDependsOn.forEach(dep => {\n if (!attrs[dep]) {\n console.error(`[JsonConfigComponent] Attribute ${dep} does not exist!`);\n if (dep.startsWith('data.')) {\n console.warn(`[JsonConfigComponent] please use \"${dep.replace(/^data\\./, '')}\" instead of \"${dep}\"`);\n }\n } else {\n attrs[dep].hiddenDependsOn = attrs[dep].hiddenDependsOn || [];\n\n const depObj = {...attrs[attr], attr};\n\n attrs[dep].hiddenDependsOn.push(depObj);\n }\n });\n }\n\n if (attrs[attr].label?.alsoDependsOn) {\n attrs[attr].label?.alsoDependsOn.forEach(dep => {\n if (!attrs[dep]) {\n console.error(`[JsonConfigComponent] Attribute ${dep} does not exist!`);\n if (dep.startsWith('data.')) {\n console.warn(`[JsonConfigComponent] please use \"${dep.replace(/^data\\./, '')}\" instead of \"${dep}\"`);\n }\n } else {\n attrs[dep].labelDependsOn = attrs[dep].labelDependsOn || [];\n\n const depObj = {...attrs[attr], attr};\n\n attrs[dep].labelDependsOn.push(depObj);\n }\n });\n }\n\n if (attrs[attr].help?.alsoDependsOn) {\n attrs[attr].help?.alsoDependsOn.forEach(dep => {\n if (!attrs[dep]) {\n console.error(`[JsonConfigComponent] Attribute ${dep} does not exist!`);\n if (dep.startsWith('data.')) {\n console.warn(`[JsonConfigComponent] please use \"${dep.replace(/^data\\./, '')}\" instead of \"${dep}\"`);\n }\n } else {\n attrs[dep].helpDependsOn = attrs[dep].helpDependsOn || [];\n\n const depObj = {...attrs[attr], attr};\n\n attrs[dep].helpDependsOn.push(depObj);\n }\n });\n }\n });\n }\n\n renderItem(item) {\n if (item.type === 'tabs') {\n return <ConfigTabs\n onCommandRunning={this.onCommandRunning}\n commandRunning={this.state.commandRunning}\n socket={this.props.socket}\n adapterName={this.props.adapterName}\n instance={this.props.instance}\n common={this.props.common}\n alive={this.state.alive}\n themeType={this.props.themeType}\n themeName={this.props.themeName}\n data={this.props.data}\n originalData={JSON.parse(this.state.originalData)}\n schema={item}\n systemConfig={this.state.systemConfig}\n customs={this.props.customs}\n dateFormat={this.props.dateFormat}\n isFloatComma={this.props.isFloatComma}\n multiEdit={this.props.multiEdit}\n\n custom={this.props.custom}\n customObj={this.props.customObj}\n instanceObj={this.props.instanceObj}\n\n forceUpdate={this.forceUpdate}\n registerOnForceUpdate={this.registerOnForceUpdate}\n\n onChange={this.onChange}\n onError={(attr, error) => this.onError(attr, error)}\n />;\n } else if (item.type === 'panel' || !item.type) {\n return <ConfigPanel\n index={1000}\n isParentTab={true}\n onCommandRunning={this.onCommandRunning}\n commandRunning={this.state.commandRunning}\n socket={this.props.socket}\n adapterName={this.props.adapterName}\n instance={this.props.instance}\n common={this.props.common}\n alive={this.state.alive}\n themeType={this.props.themeType}\n themeName={this.props.themeName}\n data={this.props.data}\n originalData={JSON.parse(this.state.originalData)}\n schema={item}\n systemConfig={this.state.systemConfig}\n customs={this.props.customs}\n dateFormat={this.props.dateFormat}\n isFloatComma={this.props.isFloatComma}\n multiEdit={this.props.multiEdit}\n\n forceUpdate={this.forceUpdate}\n registerOnForceUpdate={this.registerOnForceUpdate}\n\n custom={this.props.custom}\n customObj={this.props.customObj}\n instanceObj={this.props.instanceObj}\n\n onChange={this.onChange}\n onError={(attr, error) => this.onError(attr, error)}\n />\n }\n }\n\n forceUpdate = (attr, data) => {\n if (Array.isArray(attr)) {\n attr.forEach(a =>\n this.forceUpdateHandlers[a] && this.forceUpdateHandlers[a](data));\n } else {\n if (this.forceUpdateHandlers[attr]) {\n this.forceUpdateHandlers[attr](data);\n }\n }\n }\n\n registerOnForceUpdate = (attr, cb) => {\n if (cb) {\n this.forceUpdateHandlers[attr] = cb;\n } else if (this.forceUpdateHandlers[attr]) {\n delete this.forceUpdateHandlers[attr];\n }\n }\n\n render() {\n if (!this.state.systemConfig) {\n return <LinearProgress />;\n }\n\n return <div className={this.props.classes.root}>\n {this.renderItem(this.schema)}\n </div>;\n }\n}\n\nJsonConfigComponent.propTypes = {\n socket: PropTypes.object.isRequired,\n\n adapterName: PropTypes.string,\n instance: PropTypes.number,\n common: PropTypes.object,\n customs: PropTypes.object, // custom components\n\n custom: PropTypes.bool, // is the customs settings must be shown\n customObj: PropTypes.object,\n multiEdit: PropTypes.bool, // set if user edits more than one object simultaneously\n instanceObj: PropTypes.object,\n dateFormat: PropTypes.string,\n isFloatComma: PropTypes.bool,\n\n themeType: PropTypes.string,\n themeName: PropTypes.string,\n style: PropTypes.object,\n className: PropTypes.string,\n data: PropTypes.object.isRequired,\n updateData: PropTypes.number,\n schema: PropTypes.object,\n onError: PropTypes.func,\n onChange: PropTypes.func,\n onValueChange: PropTypes.func,\n};\n\nexport default withStyles(styles)(JsonConfigComponent);"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AAEA;;AAEA;;AAEA;;AACA;;;;;;;;;;;;;;AAEA,IAAMA,MAAM,GAAG,SAATA,MAAS,CAAAC,KAAK;EAAA,OAAK;IACrBC,IAAI,EAAE;MACFC,KAAK,EAAE,MADL;MAEFC,MAAM,EAAE;IAFN;EADe,CAAL;AAAA,CAApB;;IAOMC,mB;;;;;EACF,6BAAYC,KAAZ,EAAmB;IAAA;;IAAA;IACf,0BAAMA,KAAN;IADe,qGAyEA,UAAAC,cAAc;MAAA,OAAI,MAAKC,QAAL,CAAe;QAACD,cAAc,EAAdA;MAAD,CAAf,CAAJ;IAAA,CAzEd;IAAA,4FAmGT,UAACE,EAAD,EAAKC,KAAL,EAAe;MACrB,IAAI,CAAC,CAAAA,KAAK,SAAL,IAAAA,KAAK,WAAL,YAAAA,KAAK,CAAEC,GAAP,KAAc,KAAf,MAA0B,MAAKD,KAAL,CAAWE,KAAzC,EAAgD;QAC5C,MAAKJ,QAAL,CAAc;UAACI,KAAK,EAAE,CAAAF,KAAK,SAAL,IAAAA,KAAK,WAAL,YAAAA,KAAK,CAAEC,GAAP,KAAc;QAAtB,CAAd;MACH;IACJ,CAvGkB;IAAA,6FAyGR,UAACE,IAAD,EAAOC,KAAP,EAAcC,EAAd,EAAqB;MAC5B,IAAI,MAAKT,KAAL,CAAWU,aAAf,EAA8B;QAC1B,MAAKV,KAAL,CAAWU,aAAX,CAAyBH,IAAzB,EAA+BC,KAA/B;;QACAC,EAAE,IAAIA,EAAE,EAAR;MACH,CAHD,MAGO;QACH,IAAML,KAAK,GAAG;UAACG,IAAI,EAAJA;QAAD,CAAd;QAEA,IAAMI,KAAK,GAAG,EAAd,CAHG,CAIH;;QACAC,MAAM,CAACC,IAAP,CAAYN,IAAZ,EAAkBO,OAAlB,CAA0B,UAAAC,IAAI;UAAA,OAAI,CAACA,IAAI,CAACC,UAAL,CAAgB,GAAhB,CAAD,KAA0BL,KAAK,CAACI,IAAD,CAAL,GAAcR,IAAI,CAACQ,IAAD,CAA5C,CAAJ;QAAA,CAA9B;QAEAX,KAAK,CAACa,OAAN,GAAgBC,IAAI,CAACC,SAAL,CAAeR,KAAf,MAA0B,MAAKP,KAAL,CAAWgB,YAArD;;QAEA,MAAKlB,QAAL,CAAc;UAACE,KAAK,EAALA;QAAD,CAAd,EAAuB,YAAM;UACzB,MAAKJ,KAAL,CAAWqB,QAAX,CAAoBV,KAApB,EAA2BP,KAAK,CAACa,OAAjC;;UACAR,EAAE,IAAIA,EAAE,EAAR;QACH,CAHD;MAIH;IACJ,CA3HkB;IAAA,4FA6HT,UAACM,IAAD,EAAOO,KAAP,EAAiB;MACvB,IAAMC,MAAM,GAAGL,IAAI,CAACM,KAAL,CAAWN,IAAI,CAACC,SAAL,CAAe,MAAKf,KAAL,CAAWmB,MAA1B,CAAX,CAAf;;MACA,IAAID,KAAJ,EAAW;QACPC,MAAM,CAACR,IAAD,CAAN,GAAeO,KAAf;MACH,CAFD,MAEO;QACH,OAAOC,MAAM,CAACR,IAAD,CAAb;MACH;;MAED,IAAIG,IAAI,CAACC,SAAL,CAAeI,MAAf,MAA2BL,IAAI,CAACM,KAAL,CAAWN,IAAI,CAACC,SAAL,CAAe,MAAKf,KAAL,CAAWmB,MAA1B,CAAX,CAA/B,EAA8E;QAC1E,MAAKrB,QAAL,CAAc;UAACqB,MAAM,EAANA;QAAD,CAAd,EAAwB;UAAA,OACpB,MAAKvB,KAAL,CAAWyB,OAAX,CAAmB,CAAC,CAACb,MAAM,CAACC,IAAP,CAAY,MAAKT,KAAL,CAAWmB,MAAvB,EAA+BG,MAApD,CADoB;QAAA,CAAxB;MAEH;IACJ,CAzIkB;IAAA,gGAsTL,UAACX,IAAD,EAAOR,IAAP,EAAgB;MAC1B,IAAIoB,KAAK,CAACC,OAAN,CAAcb,IAAd,CAAJ,EAAyB;QACrBA,IAAI,CAACD,OAAL,CAAa,UAAAe,CAAC;UAAA,OACV,MAAKC,mBAAL,CAAyBD,CAAzB,KAA+B,MAAKC,mBAAL,CAAyBD,CAAzB,EAA4BtB,IAA5B,CADrB;QAAA,CAAd;MAEH,CAHD,MAGO;QACH,IAAI,MAAKuB,mBAAL,CAAyBf,IAAzB,CAAJ,EAAoC;UAChC,MAAKe,mBAAL,CAAyBf,IAAzB,EAA+BR,IAA/B;QACH;MACJ;IACJ,CA/TkB;IAAA,0GAiUK,UAACQ,IAAD,EAAON,EAAP,EAAc;MAClC,IAAIA,EAAJ,EAAQ;QACJ,MAAKqB,mBAAL,CAAyBf,IAAzB,IAAiCN,EAAjC;MACH,CAFD,MAEO,IAAI,MAAKqB,mBAAL,CAAyBf,IAAzB,CAAJ,EAAoC;QACvC,OAAO,MAAKe,mBAAL,CAAyBf,IAAzB,CAAP;MACH;IACJ,CAvUkB;IAGf,MAAKX,KAAL,GAAa;MACTgB,YAAY,EAAEF,IAAI,CAACC,SAAL,CAAe,MAAKnB,KAAL,CAAWO,IAA1B,CADL;MAETU,OAAO,EAAE,KAFA;MAGTM,MAAM,EAAE,EAHC;MAMTQ,UAAU,EAAE,MAAK/B,KAAL,CAAW+B,UANd;MAOTC,YAAY,EAAE,IAPL;MAQT1B,KAAK,EAAE,KARE;MASTL,cAAc,EAAE;IATP,CAAb;IAYA,MAAK6B,mBAAL,GAA2B,EAA3B;IAEA,MAAKG,MAAL,GAAcf,IAAI,CAACM,KAAL,CAAWN,IAAI,CAACC,SAAL,CAAe,MAAKnB,KAAL,CAAWiC,MAA1B,CAAX,CAAd;;IACA,MAAKC,iBAAL,CAAuB,MAAKD,MAA5B;;IAEA,MAAKE,QAAL;;IApBe;EAqBlB;;;;WAsDD,wBAAe;MAAA;;MACX,IAAI,CAAC,KAAKnC,KAAL,CAAWoC,MAAX,IAAqB,KAAKpC,KAAL,CAAWqC,MAAjC,KAA4C,KAAKrC,KAAL,CAAWO,IAA3D,EAAiE;QAC7D,OAAO+B,OAAO,CAACC,OAAR,EAAP;MACH,CAFD,MAEO;QACH,OAAO,KAAKvC,KAAL,CAAWwC,MAAX,CAAkBC,SAAlB,0BAA8C,KAAKzC,KAAL,CAAW0C,WAAzD,cAAwE,KAAK1C,KAAL,CAAW2C,QAAnF,GACFC,IADE,CACG,UAAAC,GAAG;UAAA,OAAI,MAAI,CAAC3C,QAAL,CAAc;YAACmC,MAAM,EAAEQ,GAAG,CAACR,MAAb;YAAqB9B,IAAI,EAAE,MAAI,CAACP,KAAL,CAAWO,IAAX,IAAmBsC,GAAG;UAAjD,CAAd,CAAJ;QAAA,CADN,CAAP;MAEH;IACJ;;;WAED,oBAAW;MAAA;;MACP,KAAKC,YAAL,GACKF,IADL,CACU;QAAA,OAAM,MAAI,CAAC5C,KAAL,CAAWwC,MAAX,CAAkBO,sBAAlB,EAAN;MAAA,CADV,EAEKH,IAFL,CAEU,UAAAZ,YAAY;QAAA,OACd,MAAI,CAAChC,KAAL,CAAWwC,MAAX,CAAkBQ,QAAlB,0BAA6C,MAAI,CAAChD,KAAL,CAAW0C,WAAxD,cAAuE,MAAI,CAAC1C,KAAL,CAAW2C,QAAlF,aACKC,IADL,CACU,UAAAxC,KAAK,EAAI;UACX,IAAI,MAAI,CAACJ,KAAL,CAAWoC,MAAf,EAAuB;YACnB,MAAI,CAAClC,QAAL,CAAc;cAAC8B,YAAY,EAAEA,YAAY,CAACK,MAA5B;cAAoC/B,KAAK,EAAE,CAAC,EAAEF,KAAK,IAAIA,KAAK,CAACC,GAAjB;YAA5C,CAAd;UACH,CAFD,MAEO;YACH,MAAI,CAACH,QAAL,CAAc;cAAC8B,YAAY,EAAEA,YAAY,CAACK,MAA5B;cAAoC/B,KAAK,EAAE,CAAC,EAAEF,KAAK,IAAIA,KAAK,CAACC,GAAjB;YAA5C,CAAd,EAAkF;cAAA,OAC9E,MAAI,CAACL,KAAL,CAAWwC,MAAX,CAAkBS,cAAlB,0BAAmD,MAAI,CAACjD,KAAL,CAAW0C,WAA9D,cAA6E,MAAI,CAAC1C,KAAL,CAAW2C,QAAxF,aAA0G,MAAI,CAACO,OAA/G,CAD8E;YAAA,CAAlF;UAEH;QACJ,CARL,CADc;MAAA,CAFtB;IAYH;;;WA0CD,iBAAQjB,MAAR,EAAgBkB,KAAhB,EAAuB;MAAA;;MACnBA,KAAK,GAAGA,KAAK,IAAI,EAAjB;;MACA,IAAIlB,MAAM,CAACmB,KAAX,EAAkB;QACdxC,MAAM,CAACC,IAAP,CAAYoB,MAAM,CAACmB,KAAnB,EAA0BtC,OAA1B,CAAkC,UAAAC,IAAI,EAAI;UACtCoC,KAAK,CAACpC,IAAD,CAAL,GAAckB,MAAM,CAACmB,KAAP,CAAarC,IAAb,CAAd;;UACA,MAAI,CAACsC,OAAL,CAAapB,MAAM,CAACmB,KAAP,CAAarC,IAAb,CAAb,EAAiCoC,KAAjC;QACH,CAHD;MAIH;;MAED,OAAOA,KAAP;IACH;;;WAED,2BAAkBlB,MAAlB,EAA0B;MACtB,IAAMqB,KAAK,GAAG,KAAKD,OAAL,CAAapB,MAAb,CAAd;MACArB,MAAM,CAACC,IAAP,CAAYyC,KAAZ,EAAmBxC,OAAnB,CAA2B,UAAAC,IAAI,EAAI;QAAA;;QAC/B,2BAAIuC,KAAK,CAACvC,IAAD,CAAL,CAAYwC,OAAhB,gDAAI,oBAAqBC,aAAzB,EAAwC;UAAA;;UACpC,wBAAAF,KAAK,CAACvC,IAAD,CAAL,CAAYwC,OAAZ,8EAAqBC,aAArB,CAAmC1C,OAAnC,CAA2C,UAAA2C,GAAG,EAAI;YAC9C,IAAI,CAACH,KAAK,CAACG,GAAD,CAAV,EAAiB;cACbC,OAAO,CAACpC,KAAR,2CAAiDmC,GAAjD;;cACA,IAAIA,GAAG,CAACzC,UAAJ,CAAe,OAAf,CAAJ,EAA6B;gBACzB0C,OAAO,CAACC,IAAR,8CAAkDF,GAAG,CAACG,OAAJ,CAAY,SAAZ,EAAuB,EAAvB,CAAlD,6BAA6FH,GAA7F;cACH;YACJ,CALD,MAKO;cACHH,KAAK,CAACG,GAAD,CAAL,CAAWI,gBAAX,GAA8BP,KAAK,CAACG,GAAD,CAAL,CAAWI,gBAAX,IAA+B,EAA7D;;cAEA,IAAMC,MAAM,mCAAOR,KAAK,CAACvC,IAAD,CAAZ;gBAAoBA,IAAI,EAAJA;cAApB,EAAZ;;cACA,IAAI+C,MAAM,CAACP,OAAX,EAAoB;gBAChBO,MAAM,CAACP,OAAP,CAAeQ,MAAf,GAAwB,MAAxB;cACH;;cAEDT,KAAK,CAACG,GAAD,CAAL,CAAWI,gBAAX,CAA4BG,IAA5B,CAAiCF,MAAjC;YACH;UACJ,CAhBD;QAiBH;;QAED,4BAAIR,KAAK,CAACvC,IAAD,CAAL,CAAYM,QAAhB,iDAAI,qBAAsBmC,aAA1B,EAAyC;UAAA;;UACrC,yBAAAF,KAAK,CAACvC,IAAD,CAAL,CAAYM,QAAZ,gFAAsBmC,aAAtB,CAAoC1C,OAApC,CAA4C,UAAA2C,GAAG,EAAI;YAC/C,IAAI,CAACH,KAAK,CAACG,GAAD,CAAV,EAAiB;cACbC,OAAO,CAACpC,KAAR,2CAAiDmC,GAAjD;;cACA,IAAIA,GAAG,CAACzC,UAAJ,CAAe,OAAf,CAAJ,EAA6B;gBACzB0C,OAAO,CAACC,IAAR,8CAAkDF,GAAG,CAACG,OAAJ,CAAY,SAAZ,EAAuB,EAAvB,CAAlD,6BAA6FH,GAA7F;cACH;YACJ,CALD,MAKO;cACHH,KAAK,CAACG,GAAD,CAAL,CAAWQ,iBAAX,GAA+BX,KAAK,CAACG,GAAD,CAAL,CAAWQ,iBAAX,IAAgC,EAA/D;;cAEA,IAAMH,MAAM,mCAAOR,KAAK,CAACvC,IAAD,CAAZ;gBAAoBA,IAAI,EAAJA;cAApB,EAAZ;;cAEAuC,KAAK,CAACG,GAAD,CAAL,CAAWQ,iBAAX,CAA6BD,IAA7B,CAAkCF,MAAlC;YACH;UACJ,CAbD;QAcH;;QAED,0BAAIR,KAAK,CAACvC,IAAD,CAAL,CAAYmD,MAAhB,+CAAI,mBAAoBV,aAAxB,EAAuC;UAAA;;UACnC,uBAAAF,KAAK,CAACvC,IAAD,CAAL,CAAYmD,MAAZ,4EAAoBV,aAApB,CAAkC1C,OAAlC,CAA0C,UAAA2C,GAAG,EAAI;YAC7C,IAAI,CAACH,KAAK,CAACG,GAAD,CAAV,EAAiB;cACbC,OAAO,CAACpC,KAAR,2CAAiDmC,GAAjD;;cACA,IAAIA,GAAG,CAACzC,UAAJ,CAAe,OAAf,CAAJ,EAA6B;gBACzB0C,OAAO,CAACC,IAAR,8CAAkDF,GAAG,CAACG,OAAJ,CAAY,SAAZ,EAAuB,EAAvB,CAAlD,6BAA6FH,GAA7F;cACH;YACJ,CALD,MAKO;cACHH,KAAK,CAACG,GAAD,CAAL,CAAWU,eAAX,GAA6Bb,KAAK,CAACG,GAAD,CAAL,CAAWU,eAAX,IAA8B,EAA3D;;cAEA,IAAML,MAAM,mCAAOR,KAAK,CAACvC,IAAD,CAAZ;gBAAoBA,IAAI,EAAJA;cAApB,EAAZ;;cAEAuC,KAAK,CAACG,GAAD,CAAL,CAAWU,eAAX,CAA2BH,IAA3B,CAAgCF,MAAhC;YACH;UACJ,CAbD;QAcH;;QAED,yBAAIR,KAAK,CAACvC,IAAD,CAAL,CAAYqD,KAAhB,8CAAI,kBAAmBZ,aAAvB,EAAsC;UAAA;;UAClC,sBAAAF,KAAK,CAACvC,IAAD,CAAL,CAAYqD,KAAZ,0EAAmBZ,aAAnB,CAAiC1C,OAAjC,CAAyC,UAAA2C,GAAG,EAAI;YAC5C,IAAI,CAACH,KAAK,CAACG,GAAD,CAAV,EAAiB;cACbC,OAAO,CAACpC,KAAR,2CAAiDmC,GAAjD;;cACA,IAAIA,GAAG,CAACzC,UAAJ,CAAe,OAAf,CAAJ,EAA6B;gBACzB0C,OAAO,CAACC,IAAR,8CAAkDF,GAAG,CAACG,OAAJ,CAAY,SAAZ,EAAuB,EAAvB,CAAlD,6BAA6FH,GAA7F;cACH;YACJ,CALD,MAKO;cACHH,KAAK,CAACG,GAAD,CAAL,CAAWY,cAAX,GAA4Bf,KAAK,CAACG,GAAD,CAAL,CAAWY,cAAX,IAA6B,EAAzD;;cAEA,IAAMP,MAAM,mCAAOR,KAAK,CAACvC,IAAD,CAAZ;gBAAoBA,IAAI,EAAJA;cAApB,EAAZ;;cAEAuC,KAAK,CAACG,GAAD,CAAL,CAAWY,cAAX,CAA0BL,IAA1B,CAA+BF,MAA/B;YACH;UACJ,CAbD;QAcH;;QAED,wBAAIR,KAAK,CAACvC,IAAD,CAAL,CAAYuD,IAAhB,6CAAI,iBAAkBd,aAAtB,EAAqC;UAAA;;UACjC,qBAAAF,KAAK,CAACvC,IAAD,CAAL,CAAYuD,IAAZ,wEAAkBd,aAAlB,CAAgC1C,OAAhC,CAAwC,UAAA2C,GAAG,EAAI;YAC3C,IAAI,CAACH,KAAK,CAACG,GAAD,CAAV,EAAiB;cACbC,OAAO,CAACpC,KAAR,2CAAiDmC,GAAjD;;cACA,IAAIA,GAAG,CAACzC,UAAJ,CAAe,OAAf,CAAJ,EAA6B;gBACzB0C,OAAO,CAACC,IAAR,8CAAkDF,GAAG,CAACG,OAAJ,CAAY,SAAZ,EAAuB,EAAvB,CAAlD,6BAA6FH,GAA7F;cACH;YACJ,CALD,MAKO;cACHH,KAAK,CAACG,GAAD,CAAL,CAAWc,aAAX,GAA2BjB,KAAK,CAACG,GAAD,CAAL,CAAWc,aAAX,IAA4B,EAAvD;;cAEA,IAAMT,MAAM,mCAAOR,KAAK,CAACvC,IAAD,CAAZ;gBAAoBA,IAAI,EAAJA;cAApB,EAAZ;;cAEAuC,KAAK,CAACG,GAAD,CAAL,CAAWc,aAAX,CAAyBP,IAAzB,CAA8BF,MAA9B;YACH;UACJ,CAbD;QAcH;MACJ,CAxFD;IAyFH;;;WAED,oBAAWU,IAAX,EAAiB;MAAA;;MACb,IAAIA,IAAI,CAACC,IAAL,KAAc,MAAlB,EAA0B;QACtB,oBAAO,gCAAC,sBAAD;UACH,gBAAgB,EAAE,KAAKC,gBADpB;UAEH,cAAc,EAAE,KAAKtE,KAAL,CAAWH,cAFxB;UAGH,MAAM,EAAE,KAAKD,KAAL,CAAWwC,MAHhB;UAIH,WAAW,EAAE,KAAKxC,KAAL,CAAW0C,WAJrB;UAKH,QAAQ,EAAE,KAAK1C,KAAL,CAAW2C,QALlB;UAMH,MAAM,EAAE,KAAK3C,KAAL,CAAWqC,MANhB;UAOH,KAAK,EAAE,KAAKjC,KAAL,CAAWE,KAPf;UAQH,SAAS,EAAE,KAAKN,KAAL,CAAW2E,SARnB;UASH,SAAS,EAAE,KAAK3E,KAAL,CAAW4E,SATnB;UAUH,IAAI,EAAE,KAAK5E,KAAL,CAAWO,IAVd;UAWH,YAAY,EAAEW,IAAI,CAACM,KAAL,CAAW,KAAKpB,KAAL,CAAWgB,YAAtB,CAXX;UAYH,MAAM,EAAEoD,IAZL;UAaH,YAAY,EAAE,KAAKpE,KAAL,CAAW4B,YAbtB;UAcH,OAAO,EAAE,KAAKhC,KAAL,CAAW6E,OAdjB;UAeH,UAAU,EAAE,KAAK7E,KAAL,CAAW8E,UAfpB;UAgBH,YAAY,EAAE,KAAK9E,KAAL,CAAW+E,YAhBtB;UAiBH,SAAS,EAAE,KAAK/E,KAAL,CAAWgF,SAjBnB;UAmBH,MAAM,EAAE,KAAKhF,KAAL,CAAWoC,MAnBhB;UAoBH,SAAS,EAAE,KAAKpC,KAAL,CAAWiF,SApBnB;UAqBH,WAAW,EAAE,KAAKjF,KAAL,CAAWkF,WArBrB;UAuBH,WAAW,EAAE,KAAKC,WAvBf;UAwBH,qBAAqB,EAAE,KAAKC,qBAxBzB;UA0BH,QAAQ,EAAE,KAAK/D,QA1BZ;UA2BH,OAAO,EAAE,iBAACN,IAAD,EAAOO,KAAP;YAAA,OAAiB,MAAI,CAACG,OAAL,CAAaV,IAAb,EAAmBO,KAAnB,CAAjB;UAAA;QA3BN,EAAP;MA6BH,CA9BD,MA8BO,IAAIkD,IAAI,CAACC,IAAL,KAAc,OAAd,IAAyB,CAACD,IAAI,CAACC,IAAnC,EAAyC;QAC5C,oBAAO,gCAAC,uBAAD;UACH,KAAK,EAAE,IADJ;UAEH,WAAW,EAAE,IAFV;UAGH,gBAAgB,EAAE,KAAKC,gBAHpB;UAIH,cAAc,EAAE,KAAKtE,KAAL,CAAWH,cAJxB;UAKH,MAAM,EAAE,KAAKD,KAAL,CAAWwC,MALhB;UAMH,WAAW,EAAE,KAAKxC,KAAL,CAAW0C,WANrB;UAOH,QAAQ,EAAE,KAAK1C,KAAL,CAAW2C,QAPlB;UAQH,MAAM,EAAE,KAAK3C,KAAL,CAAWqC,MARhB;UASH,KAAK,EAAE,KAAKjC,KAAL,CAAWE,KATf;UAUH,SAAS,EAAE,KAAKN,KAAL,CAAW2E,SAVnB;UAWH,SAAS,EAAE,KAAK3E,KAAL,CAAW4E,SAXnB;UAYH,IAAI,EAAE,KAAK5E,KAAL,CAAWO,IAZd;UAaH,YAAY,EAAEW,IAAI,CAACM,KAAL,CAAW,KAAKpB,KAAL,CAAWgB,YAAtB,CAbX;UAcH,MAAM,EAAEoD,IAdL;UAeH,YAAY,EAAE,KAAKpE,KAAL,CAAW4B,YAftB;UAgBH,OAAO,EAAE,KAAKhC,KAAL,CAAW6E,OAhBjB;UAiBH,UAAU,EAAE,KAAK7E,KAAL,CAAW8E,UAjBpB;UAkBH,YAAY,EAAE,KAAK9E,KAAL,CAAW+E,YAlBtB;UAmBH,SAAS,EAAE,KAAK/E,KAAL,CAAWgF,SAnBnB;UAqBH,WAAW,EAAE,KAAKG,WArBf;UAsBH,qBAAqB,EAAE,KAAKC,qBAtBzB;UAwBH,MAAM,EAAE,KAAKpF,KAAL,CAAWoC,MAxBhB;UAyBH,SAAS,EAAE,KAAKpC,KAAL,CAAWiF,SAzBnB;UA0BH,WAAW,EAAE,KAAKjF,KAAL,CAAWkF,WA1BrB;UA4BH,QAAQ,EAAE,KAAK7D,QA5BZ;UA6BH,OAAO,EAAE,iBAACN,IAAD,EAAOO,KAAP;YAAA,OAAiB,MAAI,CAACG,OAAL,CAAaV,IAAb,EAAmBO,KAAnB,CAAjB;UAAA;QA7BN,EAAP;MA+BH;IACJ;;;WAqBD,kBAAS;MACL,IAAI,CAAC,KAAKlB,KAAL,CAAW4B,YAAhB,EAA8B;QAC1B,oBAAO,gCAAC,0BAAD,OAAP;MACH;;MAED,oBAAO;QAAK,SAAS,EAAE,KAAKhC,KAAL,CAAWqF,OAAX,CAAmBzF;MAAnC,GACF,KAAK0F,UAAL,CAAgB,KAAKrD,MAArB,CADE,CAAP;IAGH;;;WA1TD,kCAAgCjC,KAAhC,EAAuCI,KAAvC,EAA8C;MAC1C,IAAIc,IAAI,CAACC,SAAL,CAAenB,KAAK,CAAC+B,UAArB,MAAqCb,IAAI,CAACC,SAAL,CAAef,KAAK,CAAC2B,UAArB,CAAzC,EAA2E;QACvE,OAAO;UAACA,UAAU,EAAE/B,KAAK,CAAC+B,UAAnB;UAA+BX,YAAY,EAAEF,IAAI,CAACC,SAAL,CAAenB,KAAK,CAACO,IAArB;QAA7C,CAAP;MACH,CAFD,MAEO;QACH,OAAO,IAAP;MACH;IACJ;;;WAED,kBAAgBiC,MAAhB,EAAwB+C,IAAxB,EAA8B7C,WAA9B,EAA2C;MACvC,IAAI6C,IAAI,KAAK,IAAT,IAAkBA,IAAI,IAAI,OAAOA,IAAP,KAAgB,QAA9C,EAAyD;QACrD,IAAMC,IAAI,GAAGC,gBAAA,CAAKC,WAAL,EAAb;;QACA,IAAMC,IAAI,GAAG,OAAOJ,IAAP,KAAgB,QAAhB,GAA2BA,IAA3B,GAAkC,MAA/C;QACA,OAAO/C,MAAM,CAACoD,UAAP,CAAkBlD,WAAW,GAAG,QAAhC,YAA6CiD,IAA7C,cAAqDH,IAArD,YACF5C,IADE,CACG,UAAAiD,MAAM,EAAI;UACZ,IAAIA,MAAJ,EAAY;YACR,iBAAUF,IAAV,cAAkBH,IAAlB;UACH,CAFD,MAEO;YACH,OAAOhD,MAAM,CAACoD,UAAP,CAAkBlD,WAAW,GAAG,QAAhC,YAA6CiD,IAA7C,cAAqDH,IAArD,yBACF5C,IADE,CACG,UAAAiD,MAAM;cAAA,OACRA,MAAM,aAAMF,IAAN,cAAcH,IAAd,0BAAyC,EADvC;YAAA,CADT,CAAP;UAGH;QACJ,CATE,EAUF5C,IAVE,CAUG,UAAAkD,QAAQ,EAAI;UACd,IAAIA,QAAJ,EAAc;YACV,OAAOtD,MAAM,CAACuD,QAAP,CAAgBrD,WAAW,GAAG,QAA9B,EAAwCoD,QAAxC,EACFlD,IADE,CACG,UAAAoD,IAAI,EAAI;cACV,IAAIA,IAAI,CAACC,IAAL,KAAcC,SAAlB,EAA6B;gBACzBF,IAAI,GAAGA,IAAI,CAACC,IAAZ;cACH;;cACD,IAAI;gBACAD,IAAI,GAAG9E,IAAI,CAACM,KAAL,CAAWwE,IAAX,CAAP,CADA,CAEA;;gBACAP,gBAAA,CAAKU,kBAAL,CAAwBH,IAAxB,EAA8BR,IAA9B;cACH,CAJD,CAIE,OAAOY,CAAP,EAAU;gBACR1C,OAAO,CAACpC,KAAR,wCAA6CoB,WAA7C,oBAAkEoD,QAAlE,eAA+EM,CAA/E;cACH;YACJ,CAZE,CAAP;UAaH,CAdD,MAcO;YACH1C,OAAO,CAACC,IAAR,gCAAqCjB,WAArC,gBAAsDoD,QAAtD;YACA,OAAOxD,OAAO,CAACC,OAAR,EAAP;UACH;QACJ,CA7BE,CAAP;MA8BH,CAjCD,MAiCO,IAAIgD,IAAI,IAAI,yBAAOA,IAAP,MAAgB,QAA5B,EAAsC;QACzCE,gBAAA,CAAKU,kBAAL,CAAwBZ,IAAxB;;QACA,OAAOjD,OAAO,CAACC,OAAR,EAAP;MACH,CAHM,MAGA;QACH,OAAOD,OAAO,CAACC,OAAR,EAAP;MACH;IACJ;;;EAxE6B8D,gB;;AAqVlCtG,mBAAmB,CAACuG,SAApB,GAAgC;EAC5B9D,MAAM,EAAE+D,qBAAA,CAAUC,MAAV,CAAiBC,UADG;EAG5B/D,WAAW,EAAE6D,qBAAA,CAAUG,MAHK;EAI5B/D,QAAQ,EAAE4D,qBAAA,CAAUI,MAJQ;EAK5BtE,MAAM,EAAEkE,qBAAA,CAAUC,MALU;EAM5B3B,OAAO,EAAE0B,qBAAA,CAAUC,MANS;EAMD;EAE3BpE,MAAM,EAAEmE,qBAAA,CAAUK,IARU;EAQJ;EACxB3B,SAAS,EAAEsB,qBAAA,CAAUC,MATO;EAU5BxB,SAAS,EAAEuB,qBAAA,CAAUK,IAVO;EAUD;EAC3B1B,WAAW,EAAEqB,qBAAA,CAAUC,MAXK;EAY5B1B,UAAU,EAAEyB,qBAAA,CAAUG,MAZM;EAa5B3B,YAAY,EAAEwB,qBAAA,CAAUK,IAbI;EAe5BjC,SAAS,EAAE4B,qBAAA,CAAUG,MAfO;EAgB5B9B,SAAS,EAAE2B,qBAAA,CAAUG,MAhBO;EAiB5BG,KAAK,EAAEN,qBAAA,CAAUC,MAjBW;EAkB5BM,SAAS,EAAEP,qBAAA,CAAUG,MAlBO;EAmB5BnG,IAAI,EAAEgG,qBAAA,CAAUC,MAAV,CAAiBC,UAnBK;EAoB5B1E,UAAU,EAAEwE,qBAAA,CAAUI,MApBM;EAqB5B1E,MAAM,EAAEsE,qBAAA,CAAUC,MArBU;EAsB5B/E,OAAO,EAAE8E,qBAAA,CAAUQ,IAtBS;EAuB5B1F,QAAQ,EAAEkF,qBAAA,CAAUQ,IAvBQ;EAwB5BrG,aAAa,EAAE6F,qBAAA,CAAUQ;AAxBG,CAAhC;;eA2Be,IAAAC,kBAAA,EAAWtH,MAAX,EAAmBK,mBAAnB,C"}
1
+ {"version":3,"file":"index.js","names":["styles","theme","root","width","height","JsonConfigComponent","props","commandRunning","setState","id","state","val","alive","data","value","cb","onValueChange","_data","Object","keys","forEach","attr","startsWith","changed","JSON","stringify","originalData","onChange","error","errors","parse","onError","length","Array","isArray","a","forceUpdateHandlers","updateData","systemConfig","schema","buildDependencies","readData","custom","common","Promise","resolve","socket","getObject","adapterName","instance","then","obj","readSettings","getCompactSystemConfig","getState","subscribeState","onAlive","_list","items","flatten","attrs","confirm","alsoDependsOn","dep","console","warn","replace","confirmDependsOn","depObj","cancel","push","onChangeDependsOn","hidden","hiddenDependsOn","label","labelDependsOn","help","helpDependsOn","item","type","onCommandRunning","themeType","themeName","customs","dateFormat","isFloatComma","multiEdit","customObj","instanceObj","forceUpdate","registerOnForceUpdate","classes","renderItem","i18n","lang","I18n","getLanguage","path","fileExists","exists","fileName","readFile","json","file","undefined","extendTranslations","e","Component","propTypes","PropTypes","object","isRequired","string","number","bool","style","className","func","withStyles"],"sources":["JsonConfigComponent/index.jsx"],"sourcesContent":["import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@mui/styles';\n\nimport LinearProgress from '@mui/material/LinearProgress';\n\nimport I18n from '../../i18n';\n\nimport ConfigTabs from './ConfigTabs';\nimport ConfigPanel from './ConfigPanel';\n\nconst styles = theme => ({\n root: {\n width: '100%',\n height: '100%'\n }\n});\n\nclass JsonConfigComponent extends Component {\n constructor(props) {\n super(props);\n\n this.state = {\n originalData: JSON.stringify(this.props.data),\n changed: false,\n errors: {\n\n },\n updateData: this.props.updateData,\n systemConfig: null,\n alive: false,\n commandRunning: false,\n schema: JSON.parse(JSON.stringify(this.props.schema))\n };\n\n this.forceUpdateHandlers = {};\n\n this.buildDependencies(this.state.schema);\n\n this.readData();\n }\n\n static getDerivedStateFromProps(props, state) {\n if (props.updateData !== state.updateData) {\n return {\n updateData: props.updateData,\n originalData: JSON.stringify(props.data),\n schema: JSON.parse(JSON.stringify(props.schema)),\n };\n } else {\n return null;\n }\n }\n\n static loadI18n(socket, i18n, adapterName) {\n if (i18n === true || (i18n && typeof i18n === 'string')) {\n const lang = I18n.getLanguage();\n const path = typeof i18n === 'string' ? i18n : 'i18n';\n return socket.fileExists(adapterName + '.admin', `${path}/${lang}.json`)\n .then(exists => {\n if (exists) {\n return `${path}/${lang}.json`;\n } else {\n return socket.fileExists(adapterName + '.admin', `${path}/${lang}/translations.json`)\n .then(exists =>\n exists ? `${path}/${lang}/translations.json` : '')\n }\n })\n .then(fileName => {\n if (fileName) {\n return socket.readFile(adapterName + '.admin', fileName)\n .then(json => {\n if (json.file !== undefined) {\n json = json.file;\n }\n try {\n json = JSON.parse(json);\n // apply file to I18n\n I18n.extendTranslations(json, lang);\n } catch (e) {\n console.error(`Cannot parse language file \"${adapterName}.admin/${fileName}: ${e}`);\n }\n })\n } else {\n console.warn(`Cannot find i18n for ${adapterName} / ${fileName}`);\n return Promise.resolve();\n }\n });\n } else if (i18n && typeof i18n === 'object') {\n I18n.extendTranslations(i18n);\n return Promise.resolve();\n } else {\n return Promise.resolve();\n }\n }\n\n onCommandRunning = commandRunning => this.setState( {commandRunning});\n\n readSettings() {\n if ((this.props.custom || this.props.common) && this.props.data) {\n return Promise.resolve();\n } else {\n return this.props.socket.getObject(`system.adapter.${this.props.adapterName}.${this.props.instance}`)\n .then(obj => this.setState({common: obj.common, data: this.props.data || obj.native}));\n }\n }\n\n readData() {\n this.readSettings()\n .then(() => this.props.socket.getCompactSystemConfig())\n .then(systemConfig =>\n this.props.socket.getState(`system.adapter.${this.props.adapterName}.${this.props.instance}.alive`)\n .then(state => {\n if (this.props.custom) {\n this.setState({systemConfig: systemConfig.common, alive: !!(state && state.val)});\n } else {\n this.setState({systemConfig: systemConfig.common, alive: !!(state && state.val)}, () =>\n this.props.socket.subscribeState(`system.adapter.${this.props.adapterName}.${this.props.instance}.alive`, this.onAlive));\n }\n }));\n }\n\n onAlive = (id, state) => {\n if ((state?.val || false) !== this.state.alive) {\n this.setState({alive: state?.val || false});\n }\n }\n\n onChange = (data, value, cb) => {\n if (this.props.onValueChange) {\n this.props.onValueChange(data, value);\n cb && cb();\n } else {\n const state = {data};\n\n const _data = {};\n // remove all attributes starting with \"_\"\n Object.keys(data).forEach(attr => !attr.startsWith('_') && (_data[attr] = data[attr]));\n\n state.changed = JSON.stringify(_data) !== this.state.originalData;\n\n this.setState({state}, () => {\n this.props.onChange(_data, state.changed);\n cb && cb();\n });\n }\n }\n\n onError = (attr, error) => {\n const errors = JSON.parse(JSON.stringify(this.state.errors));\n if (error) {\n errors[attr] = error;\n } else {\n delete errors[attr];\n }\n\n if (JSON.stringify(errors) !== JSON.parse(JSON.stringify(this.state.errors))) {\n this.setState({errors}, () =>\n this.props.onError(!!Object.keys(this.state.errors).length));\n }\n }\n\n flatten(schema, _list) {\n _list = _list || {};\n if (schema.items) {\n Object.keys(schema.items).forEach(attr => {\n _list[attr] = schema.items[attr];\n this.flatten(schema.items[attr], _list);\n });\n }\n\n return _list;\n }\n\n buildDependencies(schema) {\n const attrs = this.flatten(schema);\n Object.keys(attrs).forEach(attr => {\n if (attrs[attr].confirm?.alsoDependsOn) {\n attrs[attr].confirm?.alsoDependsOn.forEach(dep => {\n if (!attrs[dep]) {\n console.error(`[JsonConfigComponent] Attribute ${dep} does not exist!`);\n if (dep.startsWith('data.')) {\n console.warn(`[JsonConfigComponent] please use \"${dep.replace(/^data\\./, '')}\" instead of \"${dep}\"`);\n }\n } else {\n attrs[dep].confirmDependsOn = attrs[dep].confirmDependsOn || [];\n\n const depObj = {...attrs[attr], attr};\n if (depObj.confirm) {\n depObj.confirm.cancel = 'Undo';\n }\n\n attrs[dep].confirmDependsOn.push(depObj);\n }\n });\n }\n\n if (attrs[attr].onChange?.alsoDependsOn) {\n attrs[attr].onChange?.alsoDependsOn.forEach(dep => {\n if (!attrs[dep]) {\n console.error(`[JsonConfigComponent] Attribute ${dep} does not exist!`);\n if (dep.startsWith('data.')) {\n console.warn(`[JsonConfigComponent] please use \"${dep.replace(/^data\\./, '')}\" instead of \"${dep}\"`);\n }\n } else {\n attrs[dep].onChangeDependsOn = attrs[dep].onChangeDependsOn || [];\n\n const depObj = {...attrs[attr], attr};\n\n attrs[dep].onChangeDependsOn.push(depObj);\n }\n });\n }\n\n if (attrs[attr].hidden?.alsoDependsOn) {\n attrs[attr].hidden?.alsoDependsOn.forEach(dep => {\n if (!attrs[dep]) {\n console.error(`[JsonConfigComponent] Attribute ${dep} does not exist!`);\n if (dep.startsWith('data.')) {\n console.warn(`[JsonConfigComponent] please use \"${dep.replace(/^data\\./, '')}\" instead of \"${dep}\"`);\n }\n } else {\n attrs[dep].hiddenDependsOn = attrs[dep].hiddenDependsOn || [];\n\n const depObj = {...attrs[attr], attr};\n\n attrs[dep].hiddenDependsOn.push(depObj);\n }\n });\n }\n\n if (attrs[attr].label?.alsoDependsOn) {\n attrs[attr].label?.alsoDependsOn.forEach(dep => {\n if (!attrs[dep]) {\n console.error(`[JsonConfigComponent] Attribute ${dep} does not exist!`);\n if (dep.startsWith('data.')) {\n console.warn(`[JsonConfigComponent] please use \"${dep.replace(/^data\\./, '')}\" instead of \"${dep}\"`);\n }\n } else {\n attrs[dep].labelDependsOn = attrs[dep].labelDependsOn || [];\n\n const depObj = {...attrs[attr], attr};\n\n attrs[dep].labelDependsOn.push(depObj);\n }\n });\n }\n\n if (attrs[attr].help?.alsoDependsOn) {\n attrs[attr].help?.alsoDependsOn.forEach(dep => {\n if (!attrs[dep]) {\n console.error(`[JsonConfigComponent] Attribute ${dep} does not exist!`);\n if (dep.startsWith('data.')) {\n console.warn(`[JsonConfigComponent] please use \"${dep.replace(/^data\\./, '')}\" instead of \"${dep}\"`);\n }\n } else {\n attrs[dep].helpDependsOn = attrs[dep].helpDependsOn || [];\n\n const depObj = {...attrs[attr], attr};\n\n attrs[dep].helpDependsOn.push(depObj);\n }\n });\n }\n });\n }\n\n renderItem(item) {\n if (item.type === 'tabs') {\n return <ConfigTabs\n onCommandRunning={this.onCommandRunning}\n commandRunning={this.state.commandRunning}\n socket={this.props.socket}\n adapterName={this.props.adapterName}\n instance={this.props.instance}\n common={this.props.common}\n alive={this.state.alive}\n themeType={this.props.themeType}\n themeName={this.props.themeName}\n data={this.props.data}\n originalData={JSON.parse(this.state.originalData)}\n schema={item}\n systemConfig={this.state.systemConfig}\n customs={this.props.customs}\n dateFormat={this.props.dateFormat}\n isFloatComma={this.props.isFloatComma}\n multiEdit={this.props.multiEdit}\n\n custom={this.props.custom}\n customObj={this.props.customObj}\n instanceObj={this.props.instanceObj}\n\n forceUpdate={this.forceUpdate}\n registerOnForceUpdate={this.registerOnForceUpdate}\n\n onChange={this.onChange}\n onError={(attr, error) => this.onError(attr, error)}\n />;\n } else if (item.type === 'panel' || !item.type) {\n return <ConfigPanel\n index={1000}\n isParentTab={true}\n onCommandRunning={this.onCommandRunning}\n commandRunning={this.state.commandRunning}\n socket={this.props.socket}\n adapterName={this.props.adapterName}\n instance={this.props.instance}\n common={this.props.common}\n alive={this.state.alive}\n themeType={this.props.themeType}\n themeName={this.props.themeName}\n data={this.props.data}\n originalData={JSON.parse(this.state.originalData)}\n schema={item}\n systemConfig={this.state.systemConfig}\n customs={this.props.customs}\n dateFormat={this.props.dateFormat}\n isFloatComma={this.props.isFloatComma}\n multiEdit={this.props.multiEdit}\n\n forceUpdate={this.forceUpdate}\n registerOnForceUpdate={this.registerOnForceUpdate}\n\n custom={this.props.custom}\n customObj={this.props.customObj}\n instanceObj={this.props.instanceObj}\n\n onChange={this.onChange}\n onError={(attr, error) => this.onError(attr, error)}\n />\n }\n }\n\n forceUpdate = (attr, data) => {\n if (Array.isArray(attr)) {\n attr.forEach(a =>\n this.forceUpdateHandlers[a] && this.forceUpdateHandlers[a](data));\n } else {\n if (this.forceUpdateHandlers[attr]) {\n this.forceUpdateHandlers[attr](data);\n }\n }\n }\n\n registerOnForceUpdate = (attr, cb) => {\n if (cb) {\n this.forceUpdateHandlers[attr] = cb;\n } else if (this.forceUpdateHandlers[attr]) {\n delete this.forceUpdateHandlers[attr];\n }\n }\n\n render() {\n if (!this.state.systemConfig) {\n return <LinearProgress />;\n }\n\n return <div className={this.props.classes.root}>\n {this.renderItem(this.state.schema)}\n </div>;\n }\n}\n\nJsonConfigComponent.propTypes = {\n socket: PropTypes.object.isRequired,\n\n adapterName: PropTypes.string,\n instance: PropTypes.number,\n common: PropTypes.object,\n customs: PropTypes.object, // custom components\n\n custom: PropTypes.bool, // is the customs settings must be shown\n customObj: PropTypes.object,\n multiEdit: PropTypes.bool, // set if user edits more than one object simultaneously\n instanceObj: PropTypes.object,\n dateFormat: PropTypes.string,\n isFloatComma: PropTypes.bool,\n\n themeType: PropTypes.string,\n themeName: PropTypes.string,\n style: PropTypes.object,\n className: PropTypes.string,\n data: PropTypes.object.isRequired,\n updateData: PropTypes.number,\n schema: PropTypes.object,\n onError: PropTypes.func,\n onChange: PropTypes.func,\n onValueChange: PropTypes.func,\n};\n\nexport default withStyles(styles)(JsonConfigComponent);"],"mappings":"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"}
@@ -11,6 +11,8 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
11
11
 
12
12
  var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
13
13
 
14
+ var _react = _interopRequireDefault(require("react"));
15
+
14
16
  var _styles = require("@mui/material/styles");
15
17
 
16
18
  var _useMediaQuery = _interopRequireDefault(require("@mui/material/useMediaQuery"));
@@ -30,7 +32,7 @@ var withWidth = function withWidth() {
30
32
  return function (WrappedComponent) {
31
33
  return function (props) {
32
34
  var width = useWidth();
33
- return /*#__PURE__*/React.createElement(WrappedComponent, (0, _extends2["default"])({}, props, {
35
+ return /*#__PURE__*/_react["default"].createElement(WrappedComponent, (0, _extends2["default"])({}, props, {
34
36
  width: width
35
37
  }));
36
38
  };
@@ -1 +1 @@
1
- {"version":3,"file":"withWidth.js","names":["useWidth","theme","useTheme","keys","breakpoints","reverse","reduce","output","key","matches","useMediaQuery","up","withWidth","WrappedComponent","props","width"],"sources":["withWidth.js"],"sourcesContent":["import { useTheme } from '@mui/material/styles';\nimport useMediaQuery from '@mui/material/useMediaQuery';\n\nfunction useWidth() {\n const theme = useTheme();\n const keys = [...theme.breakpoints.keys].reverse();\n return keys.reduce((output, key) => {\n // eslint-disable-next-line react-hooks/rules-of-hooks\n const matches = useMediaQuery(theme.breakpoints.up(key));\n return !output && matches ? key : output;\n }, null) || 'xs';\n}\n\n// FIXME checkout https://mui.com/components/use-media-query/#migrating-from-withwidth\nconst withWidth = () => WrappedComponent => props => {\n const width = useWidth();\n return <WrappedComponent {...props} width={width} />;\n};\n\nexport default withWidth;"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AAEA,SAASA,QAAT,GAAoB;EAChB,IAAMC,KAAK,GAAG,IAAAC,gBAAA,GAAd;EACA,IAAMC,IAAI,GAAG,oCAAIF,KAAK,CAACG,WAAN,CAAkBD,IAAtB,EAA4BE,OAA5B,EAAb;EACA,OAAOF,IAAI,CAACG,MAAL,CAAY,UAACC,MAAD,EAASC,GAAT,EAAiB;IAChC;IACA,IAAMC,OAAO,GAAG,IAAAC,yBAAA,EAAcT,KAAK,CAACG,WAAN,CAAkBO,EAAlB,CAAqBH,GAArB,CAAd,CAAhB;IACA,OAAO,CAACD,MAAD,IAAWE,OAAX,GAAqBD,GAArB,GAA2BD,MAAlC;EACH,CAJM,EAIJ,IAJI,KAIK,IAJZ;AAKH,C,CAED;;;AACA,IAAMK,SAAS,GAAG,SAAZA,SAAY;EAAA,OAAM,UAAAC,gBAAgB;IAAA,OAAI,UAAAC,KAAK,EAAI;MACjD,IAAMC,KAAK,GAAGf,QAAQ,EAAtB;MACA,oBAAO,oBAAC,gBAAD,gCAAsBc,KAAtB;QAA6B,KAAK,EAAEC;MAApC,GAAP;IACH,CAHuC;EAAA,CAAtB;AAAA,CAAlB;;eAKeH,S"}
1
+ {"version":3,"file":"withWidth.js","names":["useWidth","theme","useTheme","keys","breakpoints","reverse","reduce","output","key","matches","useMediaQuery","up","withWidth","WrappedComponent","props","width"],"sources":["withWidth.js"],"sourcesContent":["import React from 'react';\nimport { useTheme } from '@mui/material/styles';\nimport useMediaQuery from '@mui/material/useMediaQuery';\n\nfunction useWidth() {\n const theme = useTheme();\n const keys = [...theme.breakpoints.keys].reverse();\n return keys.reduce((output, key) => {\n // eslint-disable-next-line react-hooks/rules-of-hooks\n const matches = useMediaQuery(theme.breakpoints.up(key));\n return !output && matches ? key : output;\n }, null) || 'xs';\n}\n\n// FIXME checkout https://mui.com/components/use-media-query/#migrating-from-withwidth\nconst withWidth = () => WrappedComponent => props => {\n const width = useWidth();\n return <WrappedComponent {...props} width={width} />;\n};\n\nexport default withWidth;"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AACA;;AAEA,SAASA,QAAT,GAAoB;EAChB,IAAMC,KAAK,GAAG,IAAAC,gBAAA,GAAd;EACA,IAAMC,IAAI,GAAG,oCAAIF,KAAK,CAACG,WAAN,CAAkBD,IAAtB,EAA4BE,OAA5B,EAAb;EACA,OAAOF,IAAI,CAACG,MAAL,CAAY,UAACC,MAAD,EAASC,GAAT,EAAiB;IAChC;IACA,IAAMC,OAAO,GAAG,IAAAC,yBAAA,EAAcT,KAAK,CAACG,WAAN,CAAkBO,EAAlB,CAAqBH,GAArB,CAAd,CAAhB;IACA,OAAO,CAACD,MAAD,IAAWE,OAAX,GAAqBD,GAArB,GAA2BD,MAAlC;EACH,CAJM,EAIJ,IAJI,KAIK,IAJZ;AAKH,C,CAED;;;AACA,IAAMK,SAAS,GAAG,SAAZA,SAAY;EAAA,OAAM,UAAAC,gBAAgB;IAAA,OAAI,UAAAC,KAAK,EAAI;MACjD,IAAMC,KAAK,GAAGf,QAAQ,EAAtB;MACA,oBAAO,gCAAC,gBAAD,gCAAsBc,KAAtB;QAA6B,KAAK,EAAEC;MAApC,GAAP;IACH,CAHuC;EAAA,CAAtB;AAAA,CAAlB;;eAKeH,S"}
package/README.md CHANGED
@@ -641,7 +641,7 @@ If you still have questions, try to find an answer [here](https://mui.com/guides
641
641
  -->
642
642
 
643
643
  ## Changelog
644
- ### 3.0.3 (2022-05-24)
644
+ ### 3.0.6 (2022-05-25)
645
645
  * (bluefox) Added JsonConfigComponent
646
646
 
647
647
  ### 2.1.11 (2022-05-24)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@iobroker/adapter-react-v5",
3
- "version": "3.0.3",
3
+ "version": "3.0.6",
4
4
  "description": "React classes to develop admin interfaces for ioBroker with react.",
5
5
  "author": {
6
6
  "name": "bluefox",