@iobroker/adapter-react-v5 3.4.1 → 3.4.3

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 (51) hide show
  1. package/Components/JsonConfigComponent/ChipInput.js +5 -0
  2. package/Components/JsonConfigComponent/ChipInput.js.map +1 -1
  3. package/Components/JsonConfigComponent/ConfigCheckLicense.d.ts +3 -0
  4. package/Components/JsonConfigComponent/ConfigCheckLicense.js +592 -0
  5. package/Components/JsonConfigComponent/ConfigCheckLicense.js.map +1 -0
  6. package/Components/JsonConfigComponent/ConfigColor.js +5 -4
  7. package/Components/JsonConfigComponent/ConfigColor.js.map +1 -1
  8. package/Components/JsonConfigComponent/ConfigCustom.js +14 -3
  9. package/Components/JsonConfigComponent/ConfigCustom.js.map +1 -1
  10. package/Components/JsonConfigComponent/ConfigGeneric.d.ts +1 -1
  11. package/Components/JsonConfigComponent/ConfigGeneric.js +20 -10
  12. package/Components/JsonConfigComponent/ConfigGeneric.js.map +1 -1
  13. package/Components/JsonConfigComponent/ConfigIP.js +1 -1
  14. package/Components/JsonConfigComponent/ConfigIP.js.map +1 -1
  15. package/Components/JsonConfigComponent/ConfigNumber.js +5 -1
  16. package/Components/JsonConfigComponent/ConfigNumber.js.map +1 -1
  17. package/Components/JsonConfigComponent/ConfigPanel.js +11 -7
  18. package/Components/JsonConfigComponent/ConfigPanel.js.map +1 -1
  19. package/Components/JsonConfigComponent/ConfigSelect.d.ts +1 -1
  20. package/Components/JsonConfigComponent/ConfigSelect.js +7 -2
  21. package/Components/JsonConfigComponent/ConfigSelect.js.map +1 -1
  22. package/Components/JsonConfigComponent/ConfigSendto.js +29 -6
  23. package/Components/JsonConfigComponent/ConfigSendto.js.map +1 -1
  24. package/Components/JsonConfigComponent/ConfigStaticText.js +5 -1
  25. package/Components/JsonConfigComponent/ConfigStaticText.js.map +1 -1
  26. package/Components/JsonConfigComponent/ConfigTable.js +44 -38
  27. package/Components/JsonConfigComponent/ConfigTable.js.map +1 -1
  28. package/Components/JsonConfigComponent/ConfigText.d.ts +1 -1
  29. package/Components/JsonConfigComponent/ConfigText.js +74 -22
  30. package/Components/JsonConfigComponent/ConfigText.js.map +1 -1
  31. package/Components/JsonConfigComponent/ConfigUUID.d.ts +13 -0
  32. package/Components/JsonConfigComponent/ConfigUUID.js +97 -0
  33. package/Components/JsonConfigComponent/ConfigUUID.js.map +1 -0
  34. package/Components/JsonConfigComponent/index.js +29 -7
  35. package/Components/JsonConfigComponent/index.js.map +1 -1
  36. package/Components/Utils.d.ts +33 -1
  37. package/Components/Utils.js +123 -7
  38. package/Components/Utils.js.map +1 -1
  39. package/README.md +4 -1
  40. package/i18n/de.json +10 -1
  41. package/i18n/en.json +10 -1
  42. package/i18n/es.json +10 -1
  43. package/i18n/fr.json +10 -1
  44. package/i18n/it.json +10 -1
  45. package/i18n/nl.json +10 -1
  46. package/i18n/pl.json +10 -1
  47. package/i18n/pt.json +10 -1
  48. package/i18n/ru.json +10 -1
  49. package/i18n/uk.json +10 -1
  50. package/i18n/zh-cn.json +10 -1
  51. package/package.json +1 -1
@@ -47,7 +47,7 @@ var ConfigColor = /*#__PURE__*/function (_ConfigGeneric) {
47
47
  }, /*#__PURE__*/_react["default"].createElement(_reactColor.ChromePicker, {
48
48
  color: this.state.colorDialogValue,
49
49
  onChange: function onChange(value) {
50
- _this.setState({
50
+ return _this.setState({
51
51
  colorDialogValue: value
52
52
  }, function () {
53
53
  return _this.onChange(_this.props.attr, _ColorPicker["default"].getColor(_this.state.colorDialogValue, true));
@@ -74,9 +74,9 @@ var ConfigColor = /*#__PURE__*/function (_ConfigGeneric) {
74
74
  label: this.getText(this.props.schema.label),
75
75
  value: value || '',
76
76
  onClick: function onClick() {
77
- return _this2.setState({
77
+ return !_this2.props.schema.readOnly && _this2.setState({
78
78
  showColorDialog: true,
79
- colorDialogValue: value
79
+ colorDialogValue: value || ''
80
80
  });
81
81
  },
82
82
  onChange: function onChange(e) {
@@ -88,7 +88,8 @@ var ConfigColor = /*#__PURE__*/function (_ConfigGeneric) {
88
88
  //paddingLeft: noPadding ? 0 : 8,
89
89
  backgroundColor: value,
90
90
  color: textColor ? '#FFF' : '#000'
91
- }
91
+ },
92
+ readOnly: this.props.schema.readOnly || false
92
93
  },
93
94
  InputProps: {
94
95
  endAdornment: value ? /*#__PURE__*/_react["default"].createElement(_IconButton["default"], {
@@ -1 +1 @@
1
- {"version":3,"file":"ConfigColor.js","names":["styles","theme","ConfigColor","state","showColorDialog","setState","colorDialogValue","value","onChange","props","attr","ColorPicker","getColor","error","disabled","defaultValue","ConfigGeneric","getValue","data","textColor","Utils","isUseBright","undefined","renderColorDialog","minWidth","width","getText","schema","label","e","color","target","style","backgroundColor","endAdornment","onPaste","stopPropagation","shrink","propTypes","socket","PropTypes","object","isRequired","themeType","string","themeName","className","onError","func","withStyles"],"sources":["JsonConfigComponent/ConfigColor.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport {withStyles} from '@mui/styles';\nimport { ChromePicker } from 'react-color';\n\nimport IconButton from '@mui/material/IconButton';\nimport TextField from '@mui/material/TextField';\nimport Dialog from '@mui/material/Dialog';\n\nimport ClearIcon from '@mui/icons-material/Close';\n\nimport Utils from '../Utils';\nimport ColorPicker from '../ColorPicker';\n\nimport ConfigGeneric from './ConfigGeneric';\n\nconst styles = theme => ({});\n\nclass ConfigColor extends ConfigGeneric {\n renderColorDialog() {\n return !!this.state.showColorDialog && <Dialog\n onClose={() => this.setState({showColorDialog: false})}\n open={this.state.showColorDialog}>\n <ChromePicker\n color={this.state.colorDialogValue}\n onChange={value => {\n this.setState({colorDialogValue: value}, () =>\n this.onChange(this.props.attr, ColorPicker.getColor(this.state.colorDialogValue, true)));\n }}\n />\n </Dialog>;\n }\n\n renderItem(error, disabled, defaultValue) {\n const value = ConfigGeneric.getValue(this.props.data, this.props.attr);\n let textColor = Utils.isUseBright(value, null);\n if (textColor === null) {\n textColor = undefined;\n }\n return <>\n { this.renderColorDialog() }\n <TextField\n variant=\"standard\"\n disabled={!!disabled}\n style={{minWidth: 100, width: 'calc(100% - 8px)'}}\n label={this.getText(this.props.schema.label)}\n value={value || ''}\n onClick={() => this.setState({showColorDialog: true, colorDialogValue: value})}\n onChange={e => {\n const color = e.target.value;\n this.onChange(this.props.attr, color);\n }}\n inputProps={{\n style: {\n //paddingLeft: noPadding ? 0 : 8,\n backgroundColor: value,\n color: textColor ? '#FFF' : '#000'\n }\n }}\n InputProps={{\n endAdornment: value ?\n <IconButton\n disabled={!!this.props.onPaste}\n size=\"small\"\n onClick={e => {\n e.stopPropagation();\n this.onChange(this.props.attr, '');\n }}>\n <ClearIcon/>\n </IconButton>\n : undefined,\n }}\n InputLabelProps={{shrink: true}}\n />\n </>;\n }\n}\n\nConfigColor.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)(ConfigColor);"],"mappings":"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"}
1
+ {"version":3,"file":"ConfigColor.js","names":["styles","theme","ConfigColor","state","showColorDialog","setState","colorDialogValue","value","onChange","props","attr","ColorPicker","getColor","error","disabled","defaultValue","ConfigGeneric","getValue","data","textColor","Utils","isUseBright","undefined","renderColorDialog","minWidth","width","getText","schema","label","readOnly","e","color","target","style","backgroundColor","endAdornment","onPaste","stopPropagation","shrink","propTypes","socket","PropTypes","object","isRequired","themeType","string","themeName","className","onError","func","withStyles"],"sources":["JsonConfigComponent/ConfigColor.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport {withStyles} from '@mui/styles';\nimport { ChromePicker } from 'react-color';\n\nimport IconButton from '@mui/material/IconButton';\nimport TextField from '@mui/material/TextField';\nimport Dialog from '@mui/material/Dialog';\n\nimport ClearIcon from '@mui/icons-material/Close';\n\nimport Utils from '../Utils';\nimport ColorPicker from '../ColorPicker';\n\nimport ConfigGeneric from './ConfigGeneric';\n\nconst styles = theme => ({});\n\nclass ConfigColor extends ConfigGeneric {\n renderColorDialog() {\n return !!this.state.showColorDialog && <Dialog\n onClose={() => this.setState({showColorDialog: false})}\n open={this.state.showColorDialog}>\n <ChromePicker\n color={this.state.colorDialogValue}\n onChange={value =>\n this.setState({ colorDialogValue: value }, () =>\n this.onChange(this.props.attr, ColorPicker.getColor(this.state.colorDialogValue, true)))}\n />\n </Dialog>;\n }\n\n renderItem(error, disabled, defaultValue) {\n const value = ConfigGeneric.getValue(this.props.data, this.props.attr);\n let textColor = Utils.isUseBright(value, null);\n if (textColor === null) {\n textColor = undefined;\n }\n return <>\n { this.renderColorDialog() }\n <TextField\n variant=\"standard\"\n disabled={!!disabled}\n style={{minWidth: 100, width: 'calc(100% - 8px)'}}\n label={this.getText(this.props.schema.label)}\n value={value || ''}\n onClick={() => !this.props.schema.readOnly && this.setState({ showColorDialog: true, colorDialogValue: value || '' })}\n onChange={e => {\n const color = e.target.value;\n this.onChange(this.props.attr, color);\n }}\n inputProps={{\n style: {\n //paddingLeft: noPadding ? 0 : 8,\n backgroundColor: value,\n color: textColor ? '#FFF' : '#000'\n },\n readOnly: this.props.schema.readOnly || false,\n }}\n InputProps={{\n endAdornment: value ?\n <IconButton\n disabled={!!this.props.onPaste}\n size=\"small\"\n onClick={e => {\n e.stopPropagation();\n this.onChange(this.props.attr, '');\n }}>\n <ClearIcon/>\n </IconButton>\n : undefined,\n }}\n InputLabelProps={{ shrink: true }}\n />\n </>;\n }\n}\n\nConfigColor.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)(ConfigColor);"],"mappings":";;;;;;;;;;;;AAAA;AACA;AACA;AACA;AAEA;AACA;AACA;AAEA;AAEA;AACA;AAEA;AAA4C;AAAA;AAE5C,IAAMA,MAAM,GAAG,SAATA,MAAM,CAAGC,KAAK;EAAA,OAAK,CAAC,CAAC;AAAA,CAAC;AAAC,IAEvBC,WAAW;EAAA;EAAA;EAAA;IAAA;IAAA;EAAA;EAAA;IAAA;IAAA,OACb,6BAAoB;MAAA;MAChB,OAAO,CAAC,CAAC,IAAI,CAACC,KAAK,CAACC,eAAe,iBAAI,gCAAC,kBAAM;QAC1C,OAAO,EAAE;UAAA,OAAM,KAAI,CAACC,QAAQ,CAAC;YAACD,eAAe,EAAE;UAAK,CAAC,CAAC;QAAA,CAAC;QACvD,IAAI,EAAE,IAAI,CAACD,KAAK,CAACC;MAAgB,gBACjC,gCAAC,wBAAY;QACT,KAAK,EAAE,IAAI,CAACD,KAAK,CAACG,gBAAiB;QACnC,QAAQ,EAAE,kBAAAC,KAAK;UAAA,OACX,KAAI,CAACF,QAAQ,CAAC;YAAEC,gBAAgB,EAAEC;UAAM,CAAC,EAAE;YAAA,OACvC,KAAI,CAACC,QAAQ,CAAC,KAAI,CAACC,KAAK,CAACC,IAAI,EAAEC,uBAAW,CAACC,QAAQ,CAAC,KAAI,CAACT,KAAK,CAACG,gBAAgB,EAAE,IAAI,CAAC,CAAC;UAAA,EAAC;QAAA;MAAC,EACnG,CACG;IACb;EAAC;IAAA;IAAA,OAED,oBAAWO,KAAK,EAAEC,QAAQ,EAAEC,YAAY,EAAE;MAAA;MACtC,IAAMR,KAAK,GAAGS,0BAAa,CAACC,QAAQ,CAAC,IAAI,CAACR,KAAK,CAACS,IAAI,EAAE,IAAI,CAACT,KAAK,CAACC,IAAI,CAAC;MACtE,IAAIS,SAAS,GAAGC,iBAAK,CAACC,WAAW,CAACd,KAAK,EAAE,IAAI,CAAC;MAC9C,IAAIY,SAAS,KAAK,IAAI,EAAE;QACpBA,SAAS,GAAGG,SAAS;MACzB;MACA,oBAAO,kEACD,IAAI,CAACC,iBAAiB,EAAE,eAC1B,gCAAC,qBAAS;QACN,OAAO,EAAC,UAAU;QAClB,QAAQ,EAAE,CAAC,CAACT,QAAS;QACrB,KAAK,EAAE;UAACU,QAAQ,EAAE,GAAG;UAAEC,KAAK,EAAE;QAAkB,CAAE;QAClD,KAAK,EAAE,IAAI,CAACC,OAAO,CAAC,IAAI,CAACjB,KAAK,CAACkB,MAAM,CAACC,KAAK,CAAE;QAC7C,KAAK,EAAErB,KAAK,IAAI,EAAG;QACnB,OAAO,EAAE;UAAA,OAAM,CAAC,MAAI,CAACE,KAAK,CAACkB,MAAM,CAACE,QAAQ,IAAI,MAAI,CAACxB,QAAQ,CAAC;YAAED,eAAe,EAAE,IAAI;YAAEE,gBAAgB,EAAEC,KAAK,IAAI;UAAG,CAAC,CAAC;QAAA,CAAC;QACtH,QAAQ,EAAE,kBAAAuB,CAAC,EAAI;UACX,IAAMC,KAAK,GAAGD,CAAC,CAACE,MAAM,CAACzB,KAAK;UAC5B,MAAI,CAACC,QAAQ,CAAC,MAAI,CAACC,KAAK,CAACC,IAAI,EAAEqB,KAAK,CAAC;QACzC,CAAE;QACF,UAAU,EAAE;UACRE,KAAK,EAAE;YACH;YACAC,eAAe,EAAE3B,KAAK;YACtBwB,KAAK,EAAEZ,SAAS,GAAG,MAAM,GAAG;UAChC,CAAC;UACDU,QAAQ,EAAE,IAAI,CAACpB,KAAK,CAACkB,MAAM,CAACE,QAAQ,IAAI;QAC5C,CAAE;QACF,UAAU,EAAE;UACRM,YAAY,EAAE5B,KAAK,gBACf,gCAAC,sBAAU;YACP,QAAQ,EAAE,CAAC,CAAC,IAAI,CAACE,KAAK,CAAC2B,OAAQ;YAC/B,IAAI,EAAC,OAAO;YACZ,OAAO,EAAE,iBAAAN,CAAC,EAAI;cACVA,CAAC,CAACO,eAAe,EAAE;cACnB,MAAI,CAAC7B,QAAQ,CAAC,MAAI,CAACC,KAAK,CAACC,IAAI,EAAE,EAAE,CAAC;YACtC;UAAE,gBACF,gCAAC,iBAAS,OAAE,CACH,GACXY;QACV,CAAE;QACF,eAAe,EAAE;UAAEgB,MAAM,EAAE;QAAK;MAAE,EACpC,CACH;IACP;EAAC;EAAA;AAAA,EAzDqBtB,0BAAa;AA4DvCd,WAAW,CAACqC,SAAS,GAAG;EACpBC,MAAM,EAAEC,qBAAS,CAACC,MAAM,CAACC,UAAU;EACnCC,SAAS,EAAEH,qBAAS,CAACI,MAAM;EAC3BC,SAAS,EAAEL,qBAAS,CAACI,MAAM;EAC3BZ,KAAK,EAAEQ,qBAAS,CAACC,MAAM;EACvBK,SAAS,EAAEN,qBAAS,CAACI,MAAM;EAC3B3B,IAAI,EAAEuB,qBAAS,CAACC,MAAM,CAACC,UAAU;EACjChB,MAAM,EAAEc,qBAAS,CAACC,MAAM;EACxBM,OAAO,EAAEP,qBAAS,CAACQ,IAAI;EACvBzC,QAAQ,EAAEiC,qBAAS,CAACQ;AACxB,CAAC;AAAC,eAEa,IAAAC,kBAAU,EAAClD,MAAM,CAAC,CAACE,WAAW,CAAC;AAAA"}
@@ -65,8 +65,8 @@ var getOrLoadRemote = function getOrLoadRemote(remote, shareScope) {
65
65
  _context.next = 14;
66
66
  break;
67
67
  case 12:
68
- console.error('Cannot load ' + remote);
69
- return _context.abrupt("return", reject('Cannot load ' + remote));
68
+ console.error("Cannot load ".concat(remote));
69
+ return _context.abrupt("return", reject("Cannot load ".concat(remote)));
70
70
  case 14:
71
71
  // resolve promise so marking remote as loaded
72
72
  resolve(window[remote]);
@@ -199,7 +199,18 @@ var ConfigCustom = /*#__PURE__*/function (_Component) {
199
199
  }).then(function (json) {
200
200
  return _i18n["default"].extendTranslations(json, lang);
201
201
  })["catch"](function (error) {
202
- return console.log("Cannot load i18n \"".concat(file, "\": ").concat(error));
202
+ if (lang !== 'en') {
203
+ // try to load English
204
+ return fetch("".concat(i18nURL, "/i18n/en.json")).then(function (data) {
205
+ return data.json();
206
+ }).then(function (json) {
207
+ return _i18n["default"].extendTranslations(json, lang);
208
+ })["catch"](function (error) {
209
+ return console.log("Cannot load i18n \"".concat(file, "\": ").concat(error));
210
+ });
211
+ } else {
212
+ console.log("Cannot load i18n \"".concat(file, "\": ").concat(error));
213
+ }
203
214
  });
204
215
  case 12:
205
216
  _context3.next = 15;
@@ -1 +1 @@
1
- {"version":3,"file":"ConfigCustom.js","names":["getOrLoadRemote","remote","shareScope","remoteFallbackUrl","undefined","Promise","resolve","reject","window","existingRemote","document","querySelector","onload","__initialized","__webpack_share_scopes__","init","console","error","onerror","d","script","createElement","type","setAttribute","async","src","getElementsByTagName","appendChild","loadComponent","sharedScope","module","url","container","get","factory","Module","ConfigCustom","props","state","Component","schema","setState","startsWith","location","protocol","host","replace","adapterName","i18n","pos","lastIndexOf","i18nURL","substring","lang","I18n","getLanguage","file","fetch","then","data","json","extendTranslations","log","name","split","uniqueName","fileToLoad","componentName","join","component","keys","Object","item","xs","lg","md","sm","assign","marginBottom","textAlign","width","style","themeType","darkStyle","newLine","flexBasis","height","propTypes","socket","PropTypes","object","string","themeName","className","attr","isRequired","onError","func","onChange"],"sources":["JsonConfigComponent/ConfigCustom.jsx"],"sourcesContent":["import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\n\nimport LinearProgress from '@mui/material/LinearProgress';\nimport Grid from '@mui/material/Grid';\n\nimport I18n from '../../i18n';\nconst getOrLoadRemote = (remote, shareScope, remoteFallbackUrl = undefined) =>\n new Promise((resolve, reject) => {\n // check if remote exists on window\n if (!window[remote]) {\n // search dom to see if remote tag exists, but might still be loading (async)\n const existingRemote = document.querySelector(`script[data-webpack=\"${remote}\"]`);\n // when remote is loaded.\n const onload = async () => {\n // check if it was initialized\n if (window[remote]) {\n if (!window[remote].__initialized) {\n // if share scope doesn't exist (like in webpack 4) then expect shareScope to be a manual object\n if (typeof __webpack_share_scopes__ === 'undefined') {\n // use default share scope object passed in manually\n await window[remote].init(shareScope.default);\n } else {\n // otherwise, init share scope as usual\n // eslint-disable-next-line\n await window[remote].init(__webpack_share_scopes__[shareScope]);\n }\n // mark remote as initialized\n window[remote].__initialized = true;\n }\n } else {\n console.error('Cannot load ' + remote);\n return reject('Cannot load ' + remote);\n }\n // resolve promise so marking remote as loaded\n resolve(window[remote]);\n };\n\n if (existingRemote) {\n // if existing remote but not loaded, hook into its onload and wait for it to be ready\n existingRemote.onload = onload;\n existingRemote.onerror = reject;\n // check if remote fallback exists as param passed to function\n // TODO: should scan public config for a matching key if no override exists\n } else if (remoteFallbackUrl) {\n // inject remote if a fallback exists and call the same onload function\n const d = document;\n const script = d.createElement('script');\n script.type = 'text/javascript';\n // mark as data-webpack so runtime can track it internally\n script.setAttribute('data-webpack', `${remote}`);\n script.async = true;\n script.onerror = reject;\n script.onload = onload;\n script.src = remoteFallbackUrl;\n d.getElementsByTagName('head')[0].appendChild(script);\n } else {\n // no remote and no fallback exist, reject\n reject(`Cannot Find Remote ${remote} to inject`);\n }\n } else {\n // remote already instantiated, resolve\n resolve(window[remote]);\n }\n });\n\nconst loadComponent = (remote, sharedScope, module, url) => async () => {\n const container = await getOrLoadRemote(remote, sharedScope, url);\n const factory = await container.get(module);\n const Module = factory();\n return Module;\n};\n\nclass ConfigCustom extends Component {\n constructor(props) {\n super(props);\n // schema.url - location of Widget\n // schema.name - Component name\n // schema.i18n - i18n\n\n this.state = {\n Component: null,\n error: '',\n };\n }\n\n // load component dynamically\n async componentDidMount() {\n if (!this.props.schema.url) {\n console.error('URL is empty. Cannot load custom component!');\n this.setState({ error: 'URL is empty. Cannot load custom component!' });\n return;\n }\n\n let url;\n /*if (this.props.schema.url.startsWith('http:') || this.props.schema.url.startsWith('https:')) {\n url = this.props.schema.url;\n } else */\n if (this.props.schema.url.startsWith('./')) {\n url = `${window.location.protocol}//${window.location.host}${this.props.schema.url.replace(/^\\./, '')}`;\n } else {\n url = `${window.location.protocol}//${window.location.host}/adapter/${this.props.adapterName}/${this.props.schema.url}`;\n }\n\n if (this.props.schema.i18n === true) {\n // load i18n from files\n const pos = url.lastIndexOf('/');\n let i18nURL;\n if (pos !== -1) {\n i18nURL = url.substring(0, pos);\n } else {\n i18nURL = url;\n }\n const lang = I18n.getLanguage();\n const file = `${i18nURL}/i18n/${lang}.json`;\n\n await fetch(file)\n .then(data => data.json())\n .then(json => I18n.extendTranslations(json, lang))\n .catch(error => console.log(`Cannot load i18n \"${file}\": ${error}`));\n } else if (this.props.schema.i18n && typeof this.props.schema.i18n === 'object') {\n try {\n I18n.extendTranslations(this.props.schema.i18n);\n } catch (error) {\n console.error(`Cannot import i18n: ${error}`);\n }\n }\n\n try {\n const [uniqueName, fileToLoad, ...componentName] = this.props.schema.name.split('/');\n console.log(uniqueName, fileToLoad, componentName.join('/'));\n // const component = await window.importFederation(uniqueName, {url, format: 'esm', from: 'vite'}, fileToLoad);\n const component = (await loadComponent(uniqueName, 'default', `./${fileToLoad}`, url)()).default;\n\n if (!component || !component || !component[componentName.join('/')]) {\n const keys = Object.keys(component || {});\n console.error('URL is empty. Cannot load custom component!');\n this.setState({ error: `Component ${this.props.schema.name} not found in ${this.props.schema.url}. Found: ${keys.join(', ')}` });\n } else {\n this.setState({ Component: component[componentName.join('/')] });\n }\n } catch (error) {\n this.setState({ error: `Cannot import from ${this.props.schema.url}: ${error}` });\n }\n }\n\n render() {\n const Component = this.state.Component;\n\n // render temporary placeholder\n if (!Component) {\n if (this.state.error) {\n return;\n } else {\n const schema = this.props.schema || {};\n\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={Object.assign({}, {\n marginBottom: 0,\n //marginRight: 8,\n textAlign: 'left',\n width: schema.type === 'divider' || schema.type === 'header' ? schema.width || '100%' : undefined\n }, schema.style, this.props.themeType === 'dark' ? schema.darkStyle : {})}>\n {this.state.error ? <div>{this.state.error}</div> : <LinearProgress />}\n </Grid>;\n\n if (schema.newLine) {\n return <>\n <div style={{ flexBasis: '100%', height: 0 }} />\n {item}\n </>;\n } else {\n return item;\n }\n }\n }\n\n return <Component {...this.props} />;\n }\n}\n\nConfigCustom.propTypes = {\n socket: PropTypes.object,\n themeType: PropTypes.string,\n themeName: PropTypes.string,\n style: PropTypes.object,\n className: PropTypes.string,\n attr: PropTypes.string,\n data: PropTypes.object.isRequired,\n schema: PropTypes.object.isRequired,\n onError: PropTypes.func,\n onChange: PropTypes.func,\n};\n\nexport default ConfigCustom;"],"mappings":";;;;;;;;;;;;;;;;;AAAA;AACA;AAEA;AACA;AAEA;AAA8B;AAAA;AAAA;AAAA;AAC9B,IAAMA,eAAe,GAAG,SAAlBA,eAAe,CAAIC,MAAM,EAAEC,UAAU;EAAA,IAAEC,iBAAiB,uEAAGC,SAAS;EAAA,OACtE,IAAIC,OAAO,CAAC,UAACC,OAAO,EAAEC,MAAM,EAAK;IACjC;IACI,IAAI,CAACC,MAAM,CAACP,MAAM,CAAC,EAAE;MACjB;MACA,IAAMQ,cAAc,GAAGC,QAAQ,CAACC,aAAa,iCAAyBV,MAAM,SAAK;MACjF;MACA,IAAMW,MAAM;QAAA,yFAAG;UAAA;YAAA;cAAA;gBAAA;kBAAA,KAEPJ,MAAM,CAACP,MAAM,CAAC;oBAAA;oBAAA;kBAAA;kBAAA,IACTO,MAAM,CAACP,MAAM,CAAC,CAACY,aAAa;oBAAA;oBAAA;kBAAA;kBAAA,MAEzB,OAAOC,wBAAwB,KAAK,WAAW;oBAAA;oBAAA;kBAAA;kBAAA;kBAAA,OAEzCN,MAAM,CAACP,MAAM,CAAC,CAACc,IAAI,CAACb,UAAU,WAAQ,CAAC;gBAAA;kBAAA;kBAAA;gBAAA;kBAAA;kBAAA,OAIvCM,MAAM,CAACP,MAAM,CAAC,CAACc,IAAI,CAACD,wBAAwB,CAACZ,UAAU,CAAC,CAAC;gBAAA;kBAEnE;kBACAM,MAAM,CAACP,MAAM,CAAC,CAACY,aAAa,GAAG,IAAI;gBAAC;kBAAA;kBAAA;gBAAA;kBAGxCG,OAAO,CAACC,KAAK,CAAC,cAAc,GAAGhB,MAAM,CAAC;kBAAC,iCAChCM,MAAM,CAAC,cAAc,GAAGN,MAAM,CAAC;gBAAA;kBAE1C;kBACAK,OAAO,CAACE,MAAM,CAACP,MAAM,CAAC,CAAC;gBAAC;gBAAA;kBAAA;cAAA;YAAA;UAAA;QAAA,CAC3B;QAAA,gBAtBKW,MAAM;UAAA;QAAA;MAAA,GAsBX;MAED,IAAIH,cAAc,EAAE;QAChB;QACAA,cAAc,CAACG,MAAM,GAAGA,MAAM;QAC9BH,cAAc,CAACS,OAAO,GAAGX,MAAM;QAC/B;QACA;MACJ,CAAC,MAAM,IAAIJ,iBAAiB,EAAE;QAC1B;QACA,IAAMgB,CAAC,GAAGT,QAAQ;QAClB,IAAMU,MAAM,GAAGD,CAAC,CAACE,aAAa,CAAC,QAAQ,CAAC;QACxCD,MAAM,CAACE,IAAI,GAAG,iBAAiB;QAC/B;QACAF,MAAM,CAACG,YAAY,CAAC,cAAc,YAAKtB,MAAM,EAAG;QAChDmB,MAAM,CAACI,KAAK,GAAG,IAAI;QACnBJ,MAAM,CAACF,OAAO,GAAGX,MAAM;QACvBa,MAAM,CAACR,MAAM,GAAGA,MAAM;QACtBQ,MAAM,CAACK,GAAG,GAAGtB,iBAAiB;QAC9BgB,CAAC,CAACO,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAACC,WAAW,CAACP,MAAM,CAAC;MACzD,CAAC,MAAM;QACH;QACAb,MAAM,8BAAuBN,MAAM,gBAAa;MACpD;IACJ,CAAC,MAAM;MACH;MACAK,OAAO,CAACE,MAAM,CAACP,MAAM,CAAC,CAAC;IAC3B;EACJ,CAAC,CAAC;AAAA;AAEN,IAAM2B,aAAa,GAAG,SAAhBA,aAAa,CAAI3B,MAAM,EAAE4B,WAAW,EAAEC,MAAM,EAAEC,GAAG;EAAA,kGAAK;IAAA;IAAA;MAAA;QAAA;UAAA;YAAA;YAAA,OAChC/B,eAAe,CAACC,MAAM,EAAE4B,WAAW,EAAEE,GAAG,CAAC;UAAA;YAA3DC,SAAS;YAAA;YAAA,OACOA,SAAS,CAACC,GAAG,CAACH,MAAM,CAAC;UAAA;YAArCI,OAAO;YACPC,MAAM,GAAGD,OAAO,EAAE;YAAA,kCACjBC,MAAM;UAAA;UAAA;YAAA;QAAA;MAAA;IAAA;EAAA,CAChB;AAAA;AAAC,IAEIC,YAAY;EAAA;EAAA;EACd,sBAAYC,KAAK,EAAE;IAAA;IAAA;IACf,0BAAMA,KAAK;IACX;IACA;IACA;;IAEA,MAAKC,KAAK,GAAG;MACTC,SAAS,EAAE,IAAI;MACftB,KAAK,EAAE;IACX,CAAC;IAAC;EACN;;EAEA;EAAA;IAAA;IAAA;MAAA,uGACA;QAAA;QAAA;UAAA;YAAA;cAAA;gBAAA,IACS,IAAI,CAACoB,KAAK,CAACG,MAAM,CAACT,GAAG;kBAAA;kBAAA;gBAAA;gBACtBf,OAAO,CAACC,KAAK,CAAC,6CAA6C,CAAC;gBAC5D,IAAI,CAACwB,QAAQ,CAAC;kBAAExB,KAAK,EAAE;gBAA8C,CAAC,CAAC;gBAAC;cAAA;gBAK5E;AACR;AACA;gBACQ,IAAI,IAAI,CAACoB,KAAK,CAACG,MAAM,CAACT,GAAG,CAACW,UAAU,CAAC,IAAI,CAAC,EAAE;kBACxCX,GAAG,aAAMvB,MAAM,CAACmC,QAAQ,CAACC,QAAQ,eAAKpC,MAAM,CAACmC,QAAQ,CAACE,IAAI,SAAG,IAAI,CAACR,KAAK,CAACG,MAAM,CAACT,GAAG,CAACe,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAE;gBAC3G,CAAC,MAAM;kBACHf,GAAG,aAAMvB,MAAM,CAACmC,QAAQ,CAACC,QAAQ,eAAKpC,MAAM,CAACmC,QAAQ,CAACE,IAAI,sBAAY,IAAI,CAACR,KAAK,CAACU,WAAW,cAAI,IAAI,CAACV,KAAK,CAACG,MAAM,CAACT,GAAG,CAAE;gBAC3H;gBAAC,MAEG,IAAI,CAACM,KAAK,CAACG,MAAM,CAACQ,IAAI,KAAK,IAAI;kBAAA;kBAAA;gBAAA;gBAC/B;gBACMC,GAAG,GAAGlB,GAAG,CAACmB,WAAW,CAAC,GAAG,CAAC;gBAEhC,IAAID,GAAG,KAAK,CAAC,CAAC,EAAE;kBACZE,OAAO,GAAGpB,GAAG,CAACqB,SAAS,CAAC,CAAC,EAAEH,GAAG,CAAC;gBACnC,CAAC,MAAM;kBACHE,OAAO,GAAGpB,GAAG;gBACjB;gBACMsB,IAAI,GAAGC,gBAAI,CAACC,WAAW,EAAE;gBACzBC,IAAI,aAAML,OAAO,mBAASE,IAAI;gBAAA;gBAAA,OAE9BI,KAAK,CAACD,IAAI,CAAC,CACZE,IAAI,CAAC,UAAAC,IAAI;kBAAA,OAAIA,IAAI,CAACC,IAAI,EAAE;gBAAA,EAAC,CACzBF,IAAI,CAAC,UAAAE,IAAI;kBAAA,OAAIN,gBAAI,CAACO,kBAAkB,CAACD,IAAI,EAAEP,IAAI,CAAC;gBAAA,EAAC,SAC5C,CAAC,UAAApC,KAAK;kBAAA,OAAID,OAAO,CAAC8C,GAAG,8BAAsBN,IAAI,iBAAMvC,KAAK,EAAG;gBAAA,EAAC;cAAA;gBAAA;gBAAA;cAAA;gBACrE,IAAI,IAAI,CAACoB,KAAK,CAACG,MAAM,CAACQ,IAAI,IAAI,yBAAO,IAAI,CAACX,KAAK,CAACG,MAAM,CAACQ,IAAI,MAAK,QAAQ,EAAE;kBAC7E,IAAI;oBACAM,gBAAI,CAACO,kBAAkB,CAAC,IAAI,CAACxB,KAAK,CAACG,MAAM,CAACQ,IAAI,CAAC;kBACnD,CAAC,CAAC,OAAO/B,KAAK,EAAE;oBACZD,OAAO,CAACC,KAAK,+BAAwBA,KAAK,EAAG;kBACjD;gBACJ;cAAC;gBAAA;gBAAA,wBAGsD,IAAI,CAACoB,KAAK,CAACG,MAAM,CAACuB,IAAI,CAACC,KAAK,CAAC,GAAG,CAAC,6EAA7EC,UAAU,8BAAEC,UAAU,8BAAKC,aAAa;gBAC/CnD,OAAO,CAAC8C,GAAG,CAACG,UAAU,EAAEC,UAAU,EAAEC,aAAa,CAACC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAC5D;gBAAA;gBAAA,OACyBxC,aAAa,CAACqC,UAAU,EAAE,SAAS,cAAOC,UAAU,GAAInC,GAAG,CAAC,EAAE;cAAA;gBAAjFsC,SAAS;gBAEf,IAAI,CAACA,SAAS,IAAI,CAACA,SAAS,IAAI,CAACA,SAAS,CAACF,aAAa,CAACC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE;kBAC3DE,IAAI,GAAGC,MAAM,CAACD,IAAI,CAACD,SAAS,IAAI,CAAC,CAAC,CAAC;kBACzCrD,OAAO,CAACC,KAAK,CAAC,6CAA6C,CAAC;kBAC5D,IAAI,CAACwB,QAAQ,CAAC;oBAAExB,KAAK,sBAAe,IAAI,CAACoB,KAAK,CAACG,MAAM,CAACuB,IAAI,2BAAiB,IAAI,CAAC1B,KAAK,CAACG,MAAM,CAACT,GAAG,sBAAYuC,IAAI,CAACF,IAAI,CAAC,IAAI,CAAC;kBAAG,CAAC,CAAC;gBACpI,CAAC,MAAM;kBACH,IAAI,CAAC3B,QAAQ,CAAC;oBAAEF,SAAS,EAAE8B,SAAS,CAACF,aAAa,CAACC,IAAI,CAAC,GAAG,CAAC;kBAAE,CAAC,CAAC;gBACpE;gBAAC;gBAAA;cAAA;gBAAA;gBAAA;gBAED,IAAI,CAAC3B,QAAQ,CAAC;kBAAExB,KAAK,+BAAwB,IAAI,CAACoB,KAAK,CAACG,MAAM,CAACT,GAAG;gBAAa,CAAC,CAAC;cAAC;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,CAEzF;MAAA;QAAA;MAAA;MAAA;IAAA;EAAA;IAAA;IAAA,OAED,kBAAS;MACL,IAAMQ,SAAS,GAAG,IAAI,CAACD,KAAK,CAACC,SAAS;;MAEtC;MACA,IAAI,CAACA,SAAS,EAAE;QACZ,IAAI,IAAI,CAACD,KAAK,CAACrB,KAAK,EAAE;UAClB;QACJ,CAAC,MAAM;UACH,IAAMuB,MAAM,GAAG,IAAI,CAACH,KAAK,CAACG,MAAM,IAAI,CAAC,CAAC;UAEtC,IAAMgC,IAAI,gBAAG,gCAAC,gBAAI;YACd,IAAI;YACJ,EAAE,EAAEhC,MAAM,CAACiC,EAAE,IAAIrE,SAAU;YAC3B,EAAE,EAAEoC,MAAM,CAACkC,EAAE,IAAItE,SAAU;YAC3B,EAAE,EAAEoC,MAAM,CAACmC,EAAE,IAAIvE,SAAU;YAC3B,EAAE,EAAEoC,MAAM,CAACoC,EAAE,IAAIxE,SAAU;YAC3B,KAAK,EAAEmE,MAAM,CAACM,MAAM,CAAC,CAAC,CAAC,EAAE;cACrBC,YAAY,EAAE,CAAC;cACf;cACAC,SAAS,EAAE,MAAM;cACjBC,KAAK,EAAExC,MAAM,CAAClB,IAAI,KAAK,SAAS,IAAIkB,MAAM,CAAClB,IAAI,KAAK,QAAQ,GAAGkB,MAAM,CAACwC,KAAK,IAAI,MAAM,GAAG5E;YAC5F,CAAC,EAAEoC,MAAM,CAACyC,KAAK,EAAE,IAAI,CAAC5C,KAAK,CAAC6C,SAAS,KAAK,MAAM,GAAG1C,MAAM,CAAC2C,SAAS,GAAG,CAAC,CAAC;UAAE,GACzE,IAAI,CAAC7C,KAAK,CAACrB,KAAK,gBAAG,6CAAM,IAAI,CAACqB,KAAK,CAACrB,KAAK,CAAO,gBAAG,gCAAC,0BAAc,OAAG,CACnE;UAEP,IAAIuB,MAAM,CAAC4C,OAAO,EAAE;YAChB,oBAAO,+EACH;cAAK,KAAK,EAAE;gBAAEC,SAAS,EAAE,MAAM;gBAAEC,MAAM,EAAE;cAAE;YAAE,EAAG,EAC/Cd,IAAI,CACN;UACP,CAAC,MAAM;YACH,OAAOA,IAAI;UACf;QACJ;MACJ;MAEA,oBAAO,gCAAC,SAAS,EAAK,IAAI,CAACnC,KAAK,CAAI;IACxC;EAAC;EAAA;AAAA,EA9GsBE,gBAAS;AAiHpCH,YAAY,CAACmD,SAAS,GAAG;EACrBC,MAAM,EAAEC,qBAAS,CAACC,MAAM;EACxBR,SAAS,EAAEO,qBAAS,CAACE,MAAM;EAC3BC,SAAS,EAAEH,qBAAS,CAACE,MAAM;EAC3BV,KAAK,EAAEQ,qBAAS,CAACC,MAAM;EACvBG,SAAS,EAAEJ,qBAAS,CAACE,MAAM;EAC3BG,IAAI,EAAEL,qBAAS,CAACE,MAAM;EACtBhC,IAAI,EAAE8B,qBAAS,CAACC,MAAM,CAACK,UAAU;EACjCvD,MAAM,EAAEiD,qBAAS,CAACC,MAAM,CAACK,UAAU;EACnCC,OAAO,EAAEP,qBAAS,CAACQ,IAAI;EACvBC,QAAQ,EAAET,qBAAS,CAACQ;AACxB,CAAC;AAAC,eAEa7D,YAAY;AAAA"}
1
+ {"version":3,"file":"ConfigCustom.js","names":["getOrLoadRemote","remote","shareScope","remoteFallbackUrl","undefined","Promise","resolve","reject","window","existingRemote","document","querySelector","onload","__initialized","__webpack_share_scopes__","init","console","error","onerror","d","script","createElement","type","setAttribute","async","src","getElementsByTagName","appendChild","loadComponent","sharedScope","module","url","container","get","factory","Module","ConfigCustom","props","state","Component","schema","setState","startsWith","location","protocol","host","replace","adapterName","i18n","pos","lastIndexOf","i18nURL","substring","lang","I18n","getLanguage","file","fetch","then","data","json","extendTranslations","log","name","split","uniqueName","fileToLoad","componentName","join","component","keys","Object","item","xs","lg","md","sm","assign","marginBottom","textAlign","width","style","themeType","darkStyle","newLine","flexBasis","height","propTypes","socket","PropTypes","object","string","themeName","className","attr","isRequired","onError","func","onChange"],"sources":["JsonConfigComponent/ConfigCustom.jsx"],"sourcesContent":["import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\n\nimport LinearProgress from '@mui/material/LinearProgress';\nimport Grid from '@mui/material/Grid';\n\nimport I18n from '../../i18n';\nconst getOrLoadRemote = (remote, shareScope, remoteFallbackUrl = undefined) =>\n new Promise((resolve, reject) => {\n // check if remote exists on window\n if (!window[remote]) {\n // search dom to see if remote tag exists, but might still be loading (async)\n const existingRemote = document.querySelector(`script[data-webpack=\"${remote}\"]`);\n // when remote is loaded.\n const onload = async () => {\n // check if it was initialized\n if (window[remote]) {\n if (!window[remote].__initialized) {\n // if share scope doesn't exist (like in webpack 4) then expect shareScope to be a manual object\n if (typeof __webpack_share_scopes__ === 'undefined') {\n // use default share scope object passed in manually\n await window[remote].init(shareScope.default);\n } else {\n // otherwise, init share scope as usual\n // eslint-disable-next-line\n await window[remote].init(__webpack_share_scopes__[shareScope]);\n }\n // mark remote as initialized\n window[remote].__initialized = true;\n }\n } else {\n console.error(`Cannot load ${remote}`);\n return reject(`Cannot load ${remote}`);\n }\n // resolve promise so marking remote as loaded\n resolve(window[remote]);\n };\n\n if (existingRemote) {\n // if existing remote but not loaded, hook into its onload and wait for it to be ready\n existingRemote.onload = onload;\n existingRemote.onerror = reject;\n // check if remote fallback exists as param passed to function\n // TODO: should scan public config for a matching key if no override exists\n } else if (remoteFallbackUrl) {\n // inject remote if a fallback exists and call the same onload function\n const d = document;\n const script = d.createElement('script');\n script.type = 'text/javascript';\n // mark as data-webpack so runtime can track it internally\n script.setAttribute('data-webpack', `${remote}`);\n script.async = true;\n script.onerror = reject;\n script.onload = onload;\n script.src = remoteFallbackUrl;\n d.getElementsByTagName('head')[0].appendChild(script);\n } else {\n // no remote and no fallback exist, reject\n reject(`Cannot Find Remote ${remote} to inject`);\n }\n } else {\n // remote already instantiated, resolve\n resolve(window[remote]);\n }\n });\n\nconst loadComponent = (remote, sharedScope, module, url) => async () => {\n const container = await getOrLoadRemote(remote, sharedScope, url);\n const factory = await container.get(module);\n const Module = factory();\n return Module;\n};\n\nclass ConfigCustom extends Component {\n constructor(props) {\n super(props);\n // schema.url - location of Widget\n // schema.name - Component name\n // schema.i18n - i18n\n\n this.state = {\n Component: null,\n error: '',\n };\n }\n\n // load component dynamically\n async componentDidMount() {\n if (!this.props.schema.url) {\n console.error('URL is empty. Cannot load custom component!');\n this.setState({ error: 'URL is empty. Cannot load custom component!' });\n return;\n }\n\n let url;\n /*if (this.props.schema.url.startsWith('http:') || this.props.schema.url.startsWith('https:')) {\n url = this.props.schema.url;\n } else */\n if (this.props.schema.url.startsWith('./')) {\n url = `${window.location.protocol}//${window.location.host}${this.props.schema.url.replace(/^\\./, '')}`;\n } else {\n url = `${window.location.protocol}//${window.location.host}/adapter/${this.props.adapterName}/${this.props.schema.url}`;\n }\n\n if (this.props.schema.i18n === true) {\n // load i18n from files\n const pos = url.lastIndexOf('/');\n let i18nURL;\n if (pos !== -1) {\n i18nURL = url.substring(0, pos);\n } else {\n i18nURL = url;\n }\n const lang = I18n.getLanguage();\n const file = `${i18nURL}/i18n/${lang}.json`;\n\n await fetch(file)\n .then(data => data.json())\n .then(json => I18n.extendTranslations(json, lang))\n .catch(error => {\n if (lang !== 'en') {\n // try to load English\n return fetch(`${i18nURL}/i18n/en.json`)\n .then(data => data.json())\n .then(json => I18n.extendTranslations(json, lang))\n .catch(error => console.log(`Cannot load i18n \"${file}\": ${error}`));\n } else {\n console.log(`Cannot load i18n \"${file}\": ${error}`);\n }\n });\n } else if (this.props.schema.i18n && typeof this.props.schema.i18n === 'object') {\n try {\n I18n.extendTranslations(this.props.schema.i18n);\n } catch (error) {\n console.error(`Cannot import i18n: ${error}`);\n }\n }\n\n try {\n const [uniqueName, fileToLoad, ...componentName] = this.props.schema.name.split('/');\n console.log(uniqueName, fileToLoad, componentName.join('/'));\n // const component = await window.importFederation(uniqueName, {url, format: 'esm', from: 'vite'}, fileToLoad);\n const component = (await loadComponent(uniqueName, 'default', `./${fileToLoad}`, url)()).default;\n\n if (!component || !component || !component[componentName.join('/')]) {\n const keys = Object.keys(component || {});\n console.error('URL is empty. Cannot load custom component!');\n this.setState({ error: `Component ${this.props.schema.name} not found in ${this.props.schema.url}. Found: ${keys.join(', ')}` });\n } else {\n this.setState({ Component: component[componentName.join('/')] });\n }\n } catch (error) {\n this.setState({ error: `Cannot import from ${this.props.schema.url}: ${error}` });\n }\n }\n\n render() {\n const Component = this.state.Component;\n\n // render temporary placeholder\n if (!Component) {\n if (this.state.error) {\n return;\n } else {\n const schema = this.props.schema || {};\n\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={Object.assign({}, {\n marginBottom: 0,\n //marginRight: 8,\n textAlign: 'left',\n width: schema.type === 'divider' || schema.type === 'header' ? schema.width || '100%' : undefined\n }, schema.style, this.props.themeType === 'dark' ? schema.darkStyle : {})}>\n {this.state.error ? <div>{this.state.error}</div> : <LinearProgress />}\n </Grid>;\n\n if (schema.newLine) {\n return <>\n <div style={{ flexBasis: '100%', height: 0 }} />\n {item}\n </>;\n } else {\n return item;\n }\n }\n }\n\n return <Component {...this.props} />;\n }\n}\n\nConfigCustom.propTypes = {\n socket: PropTypes.object,\n themeType: PropTypes.string,\n themeName: PropTypes.string,\n style: PropTypes.object,\n className: PropTypes.string,\n attr: PropTypes.string,\n data: PropTypes.object.isRequired,\n schema: PropTypes.object.isRequired,\n onError: PropTypes.func,\n onChange: PropTypes.func,\n};\n\nexport default ConfigCustom;"],"mappings":";;;;;;;;;;;;;;;;;AAAA;AACA;AAEA;AACA;AAEA;AAA8B;AAAA;AAAA;AAAA;AAC9B,IAAMA,eAAe,GAAG,SAAlBA,eAAe,CAAIC,MAAM,EAAEC,UAAU;EAAA,IAAEC,iBAAiB,uEAAGC,SAAS;EAAA,OACtE,IAAIC,OAAO,CAAC,UAACC,OAAO,EAAEC,MAAM,EAAK;IACjC;IACI,IAAI,CAACC,MAAM,CAACP,MAAM,CAAC,EAAE;MACjB;MACA,IAAMQ,cAAc,GAAGC,QAAQ,CAACC,aAAa,iCAAyBV,MAAM,SAAK;MACjF;MACA,IAAMW,MAAM;QAAA,yFAAG;UAAA;YAAA;cAAA;gBAAA;kBAAA,KAEPJ,MAAM,CAACP,MAAM,CAAC;oBAAA;oBAAA;kBAAA;kBAAA,IACTO,MAAM,CAACP,MAAM,CAAC,CAACY,aAAa;oBAAA;oBAAA;kBAAA;kBAAA,MAEzB,OAAOC,wBAAwB,KAAK,WAAW;oBAAA;oBAAA;kBAAA;kBAAA;kBAAA,OAEzCN,MAAM,CAACP,MAAM,CAAC,CAACc,IAAI,CAACb,UAAU,WAAQ,CAAC;gBAAA;kBAAA;kBAAA;gBAAA;kBAAA;kBAAA,OAIvCM,MAAM,CAACP,MAAM,CAAC,CAACc,IAAI,CAACD,wBAAwB,CAACZ,UAAU,CAAC,CAAC;gBAAA;kBAEnE;kBACAM,MAAM,CAACP,MAAM,CAAC,CAACY,aAAa,GAAG,IAAI;gBAAC;kBAAA;kBAAA;gBAAA;kBAGxCG,OAAO,CAACC,KAAK,uBAAgBhB,MAAM,EAAG;kBAAC,iCAChCM,MAAM,uBAAgBN,MAAM,EAAG;gBAAA;kBAE1C;kBACAK,OAAO,CAACE,MAAM,CAACP,MAAM,CAAC,CAAC;gBAAC;gBAAA;kBAAA;cAAA;YAAA;UAAA;QAAA,CAC3B;QAAA,gBAtBKW,MAAM;UAAA;QAAA;MAAA,GAsBX;MAED,IAAIH,cAAc,EAAE;QAChB;QACAA,cAAc,CAACG,MAAM,GAAGA,MAAM;QAC9BH,cAAc,CAACS,OAAO,GAAGX,MAAM;QAC/B;QACA;MACJ,CAAC,MAAM,IAAIJ,iBAAiB,EAAE;QAC1B;QACA,IAAMgB,CAAC,GAAGT,QAAQ;QAClB,IAAMU,MAAM,GAAGD,CAAC,CAACE,aAAa,CAAC,QAAQ,CAAC;QACxCD,MAAM,CAACE,IAAI,GAAG,iBAAiB;QAC/B;QACAF,MAAM,CAACG,YAAY,CAAC,cAAc,YAAKtB,MAAM,EAAG;QAChDmB,MAAM,CAACI,KAAK,GAAG,IAAI;QACnBJ,MAAM,CAACF,OAAO,GAAGX,MAAM;QACvBa,MAAM,CAACR,MAAM,GAAGA,MAAM;QACtBQ,MAAM,CAACK,GAAG,GAAGtB,iBAAiB;QAC9BgB,CAAC,CAACO,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAACC,WAAW,CAACP,MAAM,CAAC;MACzD,CAAC,MAAM;QACH;QACAb,MAAM,8BAAuBN,MAAM,gBAAa;MACpD;IACJ,CAAC,MAAM;MACH;MACAK,OAAO,CAACE,MAAM,CAACP,MAAM,CAAC,CAAC;IAC3B;EACJ,CAAC,CAAC;AAAA;AAEN,IAAM2B,aAAa,GAAG,SAAhBA,aAAa,CAAI3B,MAAM,EAAE4B,WAAW,EAAEC,MAAM,EAAEC,GAAG;EAAA,kGAAK;IAAA;IAAA;MAAA;QAAA;UAAA;YAAA;YAAA,OAChC/B,eAAe,CAACC,MAAM,EAAE4B,WAAW,EAAEE,GAAG,CAAC;UAAA;YAA3DC,SAAS;YAAA;YAAA,OACOA,SAAS,CAACC,GAAG,CAACH,MAAM,CAAC;UAAA;YAArCI,OAAO;YACPC,MAAM,GAAGD,OAAO,EAAE;YAAA,kCACjBC,MAAM;UAAA;UAAA;YAAA;QAAA;MAAA;IAAA;EAAA,CAChB;AAAA;AAAC,IAEIC,YAAY;EAAA;EAAA;EACd,sBAAYC,KAAK,EAAE;IAAA;IAAA;IACf,0BAAMA,KAAK;IACX;IACA;IACA;;IAEA,MAAKC,KAAK,GAAG;MACTC,SAAS,EAAE,IAAI;MACftB,KAAK,EAAE;IACX,CAAC;IAAC;EACN;;EAEA;EAAA;IAAA;IAAA;MAAA,uGACA;QAAA;QAAA;UAAA;YAAA;cAAA;gBAAA,IACS,IAAI,CAACoB,KAAK,CAACG,MAAM,CAACT,GAAG;kBAAA;kBAAA;gBAAA;gBACtBf,OAAO,CAACC,KAAK,CAAC,6CAA6C,CAAC;gBAC5D,IAAI,CAACwB,QAAQ,CAAC;kBAAExB,KAAK,EAAE;gBAA8C,CAAC,CAAC;gBAAC;cAAA;gBAK5E;AACR;AACA;gBACQ,IAAI,IAAI,CAACoB,KAAK,CAACG,MAAM,CAACT,GAAG,CAACW,UAAU,CAAC,IAAI,CAAC,EAAE;kBACxCX,GAAG,aAAMvB,MAAM,CAACmC,QAAQ,CAACC,QAAQ,eAAKpC,MAAM,CAACmC,QAAQ,CAACE,IAAI,SAAG,IAAI,CAACR,KAAK,CAACG,MAAM,CAACT,GAAG,CAACe,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAE;gBAC3G,CAAC,MAAM;kBACHf,GAAG,aAAMvB,MAAM,CAACmC,QAAQ,CAACC,QAAQ,eAAKpC,MAAM,CAACmC,QAAQ,CAACE,IAAI,sBAAY,IAAI,CAACR,KAAK,CAACU,WAAW,cAAI,IAAI,CAACV,KAAK,CAACG,MAAM,CAACT,GAAG,CAAE;gBAC3H;gBAAC,MAEG,IAAI,CAACM,KAAK,CAACG,MAAM,CAACQ,IAAI,KAAK,IAAI;kBAAA;kBAAA;gBAAA;gBAC/B;gBACMC,GAAG,GAAGlB,GAAG,CAACmB,WAAW,CAAC,GAAG,CAAC;gBAEhC,IAAID,GAAG,KAAK,CAAC,CAAC,EAAE;kBACZE,OAAO,GAAGpB,GAAG,CAACqB,SAAS,CAAC,CAAC,EAAEH,GAAG,CAAC;gBACnC,CAAC,MAAM;kBACHE,OAAO,GAAGpB,GAAG;gBACjB;gBACMsB,IAAI,GAAGC,gBAAI,CAACC,WAAW,EAAE;gBACzBC,IAAI,aAAML,OAAO,mBAASE,IAAI;gBAAA;gBAAA,OAE9BI,KAAK,CAACD,IAAI,CAAC,CACZE,IAAI,CAAC,UAAAC,IAAI;kBAAA,OAAIA,IAAI,CAACC,IAAI,EAAE;gBAAA,EAAC,CACzBF,IAAI,CAAC,UAAAE,IAAI;kBAAA,OAAIN,gBAAI,CAACO,kBAAkB,CAACD,IAAI,EAAEP,IAAI,CAAC;gBAAA,EAAC,SAC5C,CAAC,UAAApC,KAAK,EAAI;kBACZ,IAAIoC,IAAI,KAAK,IAAI,EAAE;oBACf;oBACA,OAAOI,KAAK,WAAIN,OAAO,mBAAgB,CAClCO,IAAI,CAAC,UAAAC,IAAI;sBAAA,OAAIA,IAAI,CAACC,IAAI,EAAE;oBAAA,EAAC,CACzBF,IAAI,CAAC,UAAAE,IAAI;sBAAA,OAAIN,gBAAI,CAACO,kBAAkB,CAACD,IAAI,EAAEP,IAAI,CAAC;oBAAA,EAAC,SAC5C,CAAC,UAAApC,KAAK;sBAAA,OAAID,OAAO,CAAC8C,GAAG,8BAAsBN,IAAI,iBAAMvC,KAAK,EAAG;oBAAA,EAAC;kBAC5E,CAAC,MAAM;oBACHD,OAAO,CAAC8C,GAAG,8BAAsBN,IAAI,iBAAMvC,KAAK,EAAG;kBACvD;gBACJ,CAAC,CAAC;cAAA;gBAAA;gBAAA;cAAA;gBACH,IAAI,IAAI,CAACoB,KAAK,CAACG,MAAM,CAACQ,IAAI,IAAI,yBAAO,IAAI,CAACX,KAAK,CAACG,MAAM,CAACQ,IAAI,MAAK,QAAQ,EAAE;kBAC7E,IAAI;oBACAM,gBAAI,CAACO,kBAAkB,CAAC,IAAI,CAACxB,KAAK,CAACG,MAAM,CAACQ,IAAI,CAAC;kBACnD,CAAC,CAAC,OAAO/B,KAAK,EAAE;oBACZD,OAAO,CAACC,KAAK,+BAAwBA,KAAK,EAAG;kBACjD;gBACJ;cAAC;gBAAA;gBAAA,wBAGsD,IAAI,CAACoB,KAAK,CAACG,MAAM,CAACuB,IAAI,CAACC,KAAK,CAAC,GAAG,CAAC,6EAA7EC,UAAU,8BAAEC,UAAU,8BAAKC,aAAa;gBAC/CnD,OAAO,CAAC8C,GAAG,CAACG,UAAU,EAAEC,UAAU,EAAEC,aAAa,CAACC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAC5D;gBAAA;gBAAA,OACyBxC,aAAa,CAACqC,UAAU,EAAE,SAAS,cAAOC,UAAU,GAAInC,GAAG,CAAC,EAAE;cAAA;gBAAjFsC,SAAS;gBAEf,IAAI,CAACA,SAAS,IAAI,CAACA,SAAS,IAAI,CAACA,SAAS,CAACF,aAAa,CAACC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE;kBAC3DE,IAAI,GAAGC,MAAM,CAACD,IAAI,CAACD,SAAS,IAAI,CAAC,CAAC,CAAC;kBACzCrD,OAAO,CAACC,KAAK,CAAC,6CAA6C,CAAC;kBAC5D,IAAI,CAACwB,QAAQ,CAAC;oBAAExB,KAAK,sBAAe,IAAI,CAACoB,KAAK,CAACG,MAAM,CAACuB,IAAI,2BAAiB,IAAI,CAAC1B,KAAK,CAACG,MAAM,CAACT,GAAG,sBAAYuC,IAAI,CAACF,IAAI,CAAC,IAAI,CAAC;kBAAG,CAAC,CAAC;gBACpI,CAAC,MAAM;kBACH,IAAI,CAAC3B,QAAQ,CAAC;oBAAEF,SAAS,EAAE8B,SAAS,CAACF,aAAa,CAACC,IAAI,CAAC,GAAG,CAAC;kBAAE,CAAC,CAAC;gBACpE;gBAAC;gBAAA;cAAA;gBAAA;gBAAA;gBAED,IAAI,CAAC3B,QAAQ,CAAC;kBAAExB,KAAK,+BAAwB,IAAI,CAACoB,KAAK,CAACG,MAAM,CAACT,GAAG;gBAAa,CAAC,CAAC;cAAC;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,CAEzF;MAAA;QAAA;MAAA;MAAA;IAAA;EAAA;IAAA;IAAA,OAED,kBAAS;MACL,IAAMQ,SAAS,GAAG,IAAI,CAACD,KAAK,CAACC,SAAS;;MAEtC;MACA,IAAI,CAACA,SAAS,EAAE;QACZ,IAAI,IAAI,CAACD,KAAK,CAACrB,KAAK,EAAE;UAClB;QACJ,CAAC,MAAM;UACH,IAAMuB,MAAM,GAAG,IAAI,CAACH,KAAK,CAACG,MAAM,IAAI,CAAC,CAAC;UAEtC,IAAMgC,IAAI,gBAAG,gCAAC,gBAAI;YACd,IAAI;YACJ,EAAE,EAAEhC,MAAM,CAACiC,EAAE,IAAIrE,SAAU;YAC3B,EAAE,EAAEoC,MAAM,CAACkC,EAAE,IAAItE,SAAU;YAC3B,EAAE,EAAEoC,MAAM,CAACmC,EAAE,IAAIvE,SAAU;YAC3B,EAAE,EAAEoC,MAAM,CAACoC,EAAE,IAAIxE,SAAU;YAC3B,KAAK,EAAEmE,MAAM,CAACM,MAAM,CAAC,CAAC,CAAC,EAAE;cACrBC,YAAY,EAAE,CAAC;cACf;cACAC,SAAS,EAAE,MAAM;cACjBC,KAAK,EAAExC,MAAM,CAAClB,IAAI,KAAK,SAAS,IAAIkB,MAAM,CAAClB,IAAI,KAAK,QAAQ,GAAGkB,MAAM,CAACwC,KAAK,IAAI,MAAM,GAAG5E;YAC5F,CAAC,EAAEoC,MAAM,CAACyC,KAAK,EAAE,IAAI,CAAC5C,KAAK,CAAC6C,SAAS,KAAK,MAAM,GAAG1C,MAAM,CAAC2C,SAAS,GAAG,CAAC,CAAC;UAAE,GACzE,IAAI,CAAC7C,KAAK,CAACrB,KAAK,gBAAG,6CAAM,IAAI,CAACqB,KAAK,CAACrB,KAAK,CAAO,gBAAG,gCAAC,0BAAc,OAAG,CACnE;UAEP,IAAIuB,MAAM,CAAC4C,OAAO,EAAE;YAChB,oBAAO,+EACH;cAAK,KAAK,EAAE;gBAAEC,SAAS,EAAE,MAAM;gBAAEC,MAAM,EAAE;cAAE;YAAE,EAAG,EAC/Cd,IAAI,CACN;UACP,CAAC,MAAM;YACH,OAAOA,IAAI;UACf;QACJ;MACJ;MAEA,oBAAO,gCAAC,SAAS,EAAK,IAAI,CAACnC,KAAK,CAAI;IACxC;EAAC;EAAA;AAAA,EAxHsBE,gBAAS;AA2HpCH,YAAY,CAACmD,SAAS,GAAG;EACrBC,MAAM,EAAEC,qBAAS,CAACC,MAAM;EACxBR,SAAS,EAAEO,qBAAS,CAACE,MAAM;EAC3BC,SAAS,EAAEH,qBAAS,CAACE,MAAM;EAC3BV,KAAK,EAAEQ,qBAAS,CAACC,MAAM;EACvBG,SAAS,EAAEJ,qBAAS,CAACE,MAAM;EAC3BG,IAAI,EAAEL,qBAAS,CAACE,MAAM;EACtBhC,IAAI,EAAE8B,qBAAS,CAACC,MAAM,CAACK,UAAU;EACjCvD,MAAM,EAAEiD,qBAAS,CAACC,MAAM,CAACK,UAAU;EACnCC,OAAO,EAAEP,qBAAS,CAACQ,IAAI;EACvBC,QAAQ,EAAET,qBAAS,CAACQ;AACxB,CAAC;AAAC,eAEa7D,YAAY;AAAA"}
@@ -25,7 +25,7 @@ declare class ConfigGeneric extends React.Component<any, any, any> {
25
25
  onUpdate: (data: any) => void;
26
26
  getText(text: any, noTranslation: any): any;
27
27
  renderConfirmDialog(): JSX.Element;
28
- onChange(attr: any, newValue: any): void;
28
+ onChange(attr: any, newValue: any, cb: any): void;
29
29
  execute(func: any, defaultValue: any, data: any, arrayIndex: any, globalData: any): any;
30
30
  executeCustom(func: any, data: any, customObj: any, instanceObj: any, arrayIndex: any, globalData: any): any;
31
31
  calculate(schema: any): {
@@ -54,11 +54,11 @@ var ConfigGeneric = /*#__PURE__*/function (_Component) {
54
54
  confirmData: null
55
55
  };
56
56
  _this.isError = {};
57
- if (_this.props.schema) {
58
- if (_this.props.custom) {
59
- _this.defaultValue = _this.props.schema.defaultFunc ? _this.executeCustom(_this.props.schema.defaultFunc, _this.props.schema["default"], _this.props.data, _this.props.instanceObj, _this.props.arrayIndex, _this.props.globalData) : _this.props.schema["default"];
57
+ if (props.schema) {
58
+ if (props.custom) {
59
+ _this.defaultValue = props.schema.defaultFunc ? _this.executeCustom(props.schema.defaultFunc, props.schema["default"], props.data, props.instanceObj, props.arrayIndex, props.globalData) : props.schema["default"];
60
60
  } else {
61
- _this.defaultValue = _this.props.schema.defaultFunc ? _this.execute(_this.props.schema.defaultFunc, _this.props.schema["default"], _this.props.data, _this.props.arrayIndex, _this.props.globalData) : _this.props.schema["default"];
61
+ _this.defaultValue = props.schema.defaultFunc ? _this.execute(props.schema.defaultFunc, props.schema["default"], props.data, props.arrayIndex, props.globalData) : props.schema["default"];
62
62
  }
63
63
  }
64
64
  _this.lang = _i18n["default"].getLanguage();
@@ -77,7 +77,9 @@ var ConfigGeneric = /*#__PURE__*/function (_Component) {
77
77
  setTimeout(function () {
78
78
  if (_this2.props.custom) {
79
79
  _this2.props.onChange(_this2.props.attr, _this2.defaultValue, function () {
80
- return _this2.props.forceUpdate([_this2.props.attr], _this2.props.data);
80
+ return setTimeout(function () {
81
+ return _this2.props.forceUpdate([_this2.props.attr], _this2.props.data);
82
+ }, 100);
81
83
  });
82
84
  //this.onChange(this.props.attr, this.defaultValue);
83
85
  } else {
@@ -231,7 +233,7 @@ var ConfigGeneric = /*#__PURE__*/function (_Component) {
231
233
  }
232
234
  }, {
233
235
  key: "onChange",
234
- value: function onChange(attr, newValue) {
236
+ value: function onChange(attr, newValue, cb) {
235
237
  var _this5 = this;
236
238
  var data = JSON.parse(JSON.stringify(this.props.data));
237
239
  ConfigGeneric.setValue(data, attr, newValue);
@@ -268,7 +270,12 @@ var ConfigGeneric = /*#__PURE__*/function (_Component) {
268
270
  var _dep = this.props.schema.onChangeDependsOn[_z];
269
271
  if (_dep.onChange) {
270
272
  var _val = ConfigGeneric.getValue(data, _dep.attr);
271
- var _newValue = this.props.custom ? this.executeCustom(_dep.onChange.calculateFunc, data, this.props.customObj, this.props.instanceObj, this.props.arrayIndex, this.props.globalData) : this.execute(_dep.onChange.calculateFunc, _val, data, this.props.arrayIndex, this.props.globalData);
273
+ var _newValue = void 0;
274
+ if (this.props.custom) {
275
+ _newValue = this.executeCustom(_dep.onChange.calculateFunc, data, this.props.customObj, this.props.instanceObj, this.props.arrayIndex, this.props.globalData);
276
+ } else {
277
+ _newValue = this.execute(_dep.onChange.calculateFunc, _val, data, this.props.arrayIndex, this.props.globalData);
278
+ }
272
279
  if (_newValue !== _val) {
273
280
  ConfigGeneric.setValue(data, _dep.attr, _newValue);
274
281
  changed.push(_dep.attr);
@@ -302,15 +309,18 @@ var ConfigGeneric = /*#__PURE__*/function (_Component) {
302
309
  }
303
310
  }
304
311
  if (this.props.custom) {
305
- this.props.onChange(attr, newValue);
312
+ this.props.onChange(attr, newValue, function () {
313
+ return cb && cb();
314
+ });
306
315
  changed && changed.length && changed.forEach(function (_attr, i) {
307
316
  return setTimeout(function () {
308
- return _this5.props.onChange(_attr, ConfigGeneric.getValue(data, attr));
317
+ return _this5.props.onChange(_attr, ConfigGeneric.getValue(data, _attr));
309
318
  }, i * 50);
310
319
  });
311
320
  } else {
312
321
  this.props.onChange(data, undefined, function () {
313
- return changed.length && _this5.props.forceUpdate(changed, data);
322
+ changed.length && _this5.props.forceUpdate(changed, data);
323
+ cb && cb();
314
324
  });
315
325
  }
316
326
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ConfigGeneric.js","names":["ConfigGeneric","props","data","value","getValue","attr","state","setState","forceUpdate","confirmDialog","confirmNewValue","confirmAttr","confirmData","isError","schema","custom","defaultValue","defaultFunc","executeCustom","instanceObj","arrayIndex","globalData","execute","lang","I18n","getLanguage","registerOnForceUpdate","onUpdate","LIKE_SELECT","undefined","includes","type","setTimeout","onChange","setValue","defaultSendTo","sendTo","alive","defaultSendToDone","jsonData","getPattern","JSON","parse","e","console","error","socket","adapterName","instance","then","onError","t","sendToTimeout","clearTimeout","text","noTranslation","func","en","confirm","icon","getText","title","ok","cancel","isOk","stringify","confirmDepAttr","confirmDepNewValue","confirmOldValue","newValue","condition","confirmDependsOn","z","length","dep","val","changed","onChangeDependsOn","calculateFunc","customObj","push","hiddenDependsOn","hidden","labelDependsOn","helpDependsOn","ignoreOwnChanges","forEach","_attr","i","f","Function","result","originalData","systemConfig","common","log","disabled","validator","label","link","Utils","renderTextWithA","color","themeType","textDecoration","pattern","replace","calculate","Object","keys","hideOnlyControl","item","xs","lg","md","sm","assign","marginBottom","textAlign","style","darkStyle","newLine","flexBasis","height","validatorNoSaveOnError","validatorErrorText","renderedItem","renderItem","commandRunning","tooltip","width","button","buttonTooltip","buttonTooltipNoTranslation","renderConfirmDialog","split","part","shift","Component","getPrototypeOf","constructor","propTypes","PropTypes","object","isRequired","string","any","themeName","customs","bool","number","dateFormat","isFloatComma"],"sources":["JsonConfigComponent/ConfigGeneric.jsx"],"sourcesContent":["import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\n\nimport Grid from '@mui/material/Grid';\nimport Button from '@mui/material/Button';\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 '../../i18n';\nimport Utils from '../Utils';\nimport ConfirmDialog from '../../Dialogs/Confirm';\n\nclass ConfigGeneric extends Component {\n static DIFFERENT_VALUE = '__different__';\n static DIFFERENT_LABEL = 'ra___different__';\n static NONE_VALUE = '';\n static NONE_LABEL = 'ra_none';\n static AsyncFunction = Object.getPrototypeOf(async function(){}).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 (this.props.schema) {\n if (this.props.custom) {\n this.defaultValue = this.props.schema.defaultFunc ? this.executeCustom(this.props.schema.defaultFunc, this.props.schema.default, this.props.data, this.props.instanceObj, this.props.arrayIndex, this.props.globalData) : this.props.schema.default;\n } else {\n this.defaultValue = this.props.schema.defaultFunc ? this.execute(this.props.schema.defaultFunc, this.props.schema.default, this.props.data, this.props.arrayIndex, this.props.globalData) : this.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 (value === undefined || (LIKE_SELECT.includes(this.props.schema.type) && (value === '' || value === null))) {\n setTimeout(() => {\n if (this.props.custom) {\n this.props.onChange(this.props.attr, this.defaultValue, () =>\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, 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.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 static getValue(data, attr) {\n if (typeof attr === 'string') {\n return ConfigGeneric.getValue(data, attr.split('.'));\n } else {\n if (attr.length === 1) {\n return data[attr[0]];\n } else {\n const part = attr.shift();\n if (typeof data[part] === 'object') {\n return ConfigGeneric.getValue(data[part], attr);\n } else {\n return null;\n }\n }\n }\n }\n\n static setValue(data, attr, value) {\n if (typeof attr === 'string') {\n return ConfigGeneric.setValue(data, attr.split('.'), value);\n } else {\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 return ConfigGeneric.setValue(data[part], attr, value);\n }\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 } else {\n return text;\n }\n } else 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 } else {\n this.getPattern(text.func);\n }\n } else {\n return text[this.lang] || text.en || '';\n }\n }\n }\n\n renderConfirmDialog() {\n if (!this.state.confirmDialog) {\n return null;\n }\n const confirm = this.state.confirmData || this.props.schema.confirm;\n let icon = null;\n if (confirm.type === 'warning') {\n icon = <IconWarning />;\n } else if (confirm.type === 'error') {\n icon = <IconError />;\n } else if (confirm.type === 'info') {\n icon = <IconInfo />;\n }\n\n return <ConfirmDialog\n title={ this.getText(confirm.title) || I18n.t('ra_Please confirm') }\n text={ this.getText(confirm.text) }\n ok={ this.getText(confirm.ok) || I18n.t('ra_Ok') }\n cancel={ this.getText(confirm.cancel) || I18n.t('ra_Cancel') }\n icon={icon}\n onClose={isOk =>\n this.setState({ confirmDialog: false}, () => {\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({confirmDialog: false, confirmDepAttr: null, confirmDepNewValue: null, confirmNewValue: null, confirmAttr: null, confirmOldValue: null, confirmData: null}, () =>\n this.props.onChange(data));\n } else {\n this.setState({confirmDialog: false, confirmDepAttr: null, confirmDepNewValue: null, confirmNewValue: null, confirmAttr: null, confirmOldValue: null, confirmData: null});\n }\n })\n }\n />;\n }\n\n onChange(attr, newValue) {\n const data = JSON.parse(JSON.stringify(this.props.data));\n ConfigGeneric.setValue(data, attr, newValue);\n\n if (this.props.schema.confirm && this.execute(this.props.schema.confirm.condition, false, data, this.props.arrayIndex, this.props.globalData)) {\n return this.setState({\n confirmDialog: true,\n confirmNewValue: newValue,\n confirmAttr: attr,\n confirmData: null,\n });\n } else {\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 (this.execute(dep.confirm.condition, false, data, this.props.arrayIndex, this.props.globalData)) {\n return this.setState({\n confirmDialog: true,\n confirmNewValue: newValue,\n confirmAttr: attr,\n confirmDepNewValue: val,\n confirmDepAttr: dep.attr,\n confirmData: dep.confirm,\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 const newValue = this.props.custom ?\n this.executeCustom(dep.onChange.calculateFunc, data, this.props.customObj, this.props.instanceObj, this.props.arrayIndex, this.props.globalData)\n :\n this.execute(dep.onChange.calculateFunc, val, data, this.props.arrayIndex, this.props.globalData);\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(this.props.schema.onChange.calculateFunc, data, this.props.customObj, this.props.instanceObj, this.props.arrayIndex, this.props.globalData)\n :\n this.execute(this.props.schema.onChange.calculateFunc, val, data, this.props.arrayIndex, this.props.globalData);\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);\n\n changed && changed.length && 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 }\n }\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 } else {\n try {\n // eslint-disable-next-line no-new-func\n const f = new Function('data', 'originalData', '_system', '_alive', '_common', '_socket', '_instance', 'arrayIndex', 'globalData', func.includes('return') ? func : 'return ' + func);\n const result = 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);\n // console.log(result);\n return result;\n } catch (e) {\n console.error(`Cannot execute ${func}: ${e}`);\n return defaultValue;\n }\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 } else {\n try {\n // eslint-disable-next-line no-new-func\n const f = new Function('data', 'originalData', '_system', 'instanceObj', 'customObj', '_socket', 'arrayIndex', 'globalData', func.includes('return') ? func : 'return ' + func);\n const result = f(data || this.props.data, this.props.originalData, this.props.systemConfig, instanceObj, customObj, this.props.socket, arrayIndex, globalData);\n console.log(result);\n return result;\n } catch (e) {\n console.error(`Cannot execute ${func}: ${e}`);\n return null;\n }\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 ? !this.executeCustom(schema.validator, this.props.data, this.props.customObj, this.props.instanceObj, this.props.arrayIndex, this.props.globalData) : false;\n disabled = schema.disabled ? this.executeCustom(schema.disabled, this.props.data, this.props.customObj, this.props.instanceObj, this.props.arrayIndex, this.props.globalData) : false;\n hidden = schema.hidden ? this.executeCustom(schema.hidden, this.props.data, this.props.customObj, this.props.instanceObj, this.props.arrayIndex, this.props.globalData) : false;\n defaultValue = schema.defaultFunc ? this.executeCustom(schema.defaultFunc, this.props.data, this.props.customObj, this.props.instanceObj, this.props.arrayIndex, this.props.globalData) : schema.default;\n } else {\n error = schema.validator ? !this.execute(schema.validator, false, this.props.data, this.props.arrayIndex, this.props.globalData) : false;\n disabled = schema.disabled ? this.execute(schema.disabled, false, this.props.data, this.props.arrayIndex, this.props.globalData) : false;\n hidden = schema.hidden ? this.execute(schema.hidden, false, this.props.data, this.props.arrayIndex, this.props.globalData) : false;\n defaultValue = schema.defaultFunc ? this.execute(schema.defaultFunc, schema.default, this.props.data, this.props.arrayIndex, this.props.globalData) : schema.default;\n }\n\n return { error, disabled, hidden, defaultValue };\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 renderHelp(text, link, noTranslation) {\n if (!link) {\n text = this.getText(text, noTranslation) || '';\n if (text && text.includes('<a ')) {\n return Utils.renderTextWithA(text);\n } else {\n return text;\n }\n } else {\n return <a\n href={link}\n target=\"_blank\"\n rel=\"noreferrer\"\n style={{ color: this.props.themeType === 'dark' ? '#a147ff' : '#5b238f', textDecoration: 'underline' }}\n >{this.getText(text, noTranslation)}</a>;\n }\n }\n\n getPattern(pattern, data) {\n data = data || this.props.data;\n if (!pattern) {\n return '';\n } else {\n if (typeof pattern === 'object') {\n pattern = pattern.func;\n }\n\n try {\n if (this.props.custom) {\n // eslint-disable-next-line no-new-func\n const f = new Function('data', 'originalData', 'arrayIndex', 'globalData', '_system', 'instanceObj', 'customObj', '_socket', 'return `' + pattern.replace(/`/g, '\\\\`') + '`');\n 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);\n } else {\n // eslint-disable-next-line no-new-func\n const f = new Function('data', 'originalData', 'arrayIndex', 'globalData', '_system', '_alive', '_common', '_socket', 'return `' + pattern.replace(/`/g, '\\\\`') + '`');\n return f(data, this.props.originalData, this.props.arrayIndex, this.props.globalData, this.props.systemConfig, this.props.alive, this.props.common, this.props.socket);\n }\n } catch (e) {\n console.error(`Cannot execute ${pattern}: ${e}`);\n return pattern;\n }\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(() => {this.sendToTimeout = null; this.sendTo();}, 200);\n }\n\n const { error, disabled, hidden, defaultValue } = this.calculate(schema);\n\n if (hidden) {\n // Remove all errors if element is hidden\n if (Object.keys(this.isError).length) {\n setTimeout(isError =>\n Object.keys(isError).forEach(attr => this.props.onError(attr)),\n 100, JSON.parse(JSON.stringify(this.isError)));\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={Object.assign(\n {},\n {marginBottom: 0, /*marginRight: 8, */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 } else {\n return item;\n }\n } else {\n return null;\n }\n } else {\n // Add error\n if (schema.validatorNoSaveOnError) {\n if (error && !Object.keys(this.isError).length) {\n this.isError = {[this.props.attr]: schema.validatorErrorText ? I18n.t(schema.validatorErrorText) : true};\n setTimeout(isError =>\n Object.keys(isError).forEach(attr => this.props.onError(attr, isError[attr])),\n 100, JSON.parse(JSON.stringify(this.isError)));\n } else if (!error && Object.keys(this.isError).length) {\n setTimeout(isError =>\n Object.keys(isError).forEach(attr => this.props.onError(attr)),\n 100, JSON.parse(JSON.stringify(this.isError)));\n this.isError = {};\n }\n }\n\n const renderedItem = this.renderItem(error, disabled || this.props.commandRunning || this.props.disabled, defaultValue);\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={Object.assign({}, {\n marginBottom: 0,\n // marginRight: 8,\n textAlign: 'left',\n width: schema.type === 'divider' || schema.type === 'header' ? schema.width || '100%' : undefined\n }, schema.style, this.props.themeType === 'dark' ? schema.darkStyle : {})}>\n { this.props.schema.defaultSendTo && this.props.schema.button ? <Grid container style={{ width: '100%' }}>\n <Grid item flex={1}>{renderedItem}</Grid>\n <Grid item><Button\n variant=\"outlined\"\n onClick={() => this.sendTo()}\n title={this.props.schema.buttonTooltip ? this.getText(this.props.schema.buttonTooltip, this.props.schema.buttonTooltipNoTranslation) : I18n.t('ra_Request data by instance')}\n >{this.getText(this.props.schema.button)}</Button></Grid>\n </Grid>\n :\n renderedItem\n }\n </Grid>;\n\n if (schema.newLine) {\n return <>\n <div style={{flexBasis: '100%', height: 0}} />\n {this.renderConfirmDialog()}\n {item}\n </>;\n } else {\n if (this.state.confirmDialog) {\n return <>\n {this.renderConfirmDialog()}\n {item}\n </>;\n } else {\n return item;\n }\n }\n }\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 value: PropTypes.any,\n themeName: PropTypes.string,\n style: PropTypes.object,\n onError: PropTypes.func,\n onChange: PropTypes.func,\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 dateFormat: PropTypes.string,\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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"}
1
+ {"version":3,"file":"ConfigGeneric.js","names":["ConfigGeneric","props","data","value","getValue","attr","state","setState","forceUpdate","confirmDialog","confirmNewValue","confirmAttr","confirmData","isError","schema","custom","defaultValue","defaultFunc","executeCustom","instanceObj","arrayIndex","globalData","execute","lang","I18n","getLanguage","registerOnForceUpdate","onUpdate","LIKE_SELECT","undefined","includes","type","setTimeout","onChange","setValue","defaultSendTo","sendTo","alive","defaultSendToDone","jsonData","getPattern","JSON","parse","e","console","error","socket","adapterName","instance","then","onError","t","sendToTimeout","clearTimeout","text","noTranslation","func","en","confirm","icon","getText","title","ok","cancel","isOk","stringify","confirmDepAttr","confirmDepNewValue","confirmOldValue","newValue","cb","condition","confirmDependsOn","z","length","dep","val","changed","onChangeDependsOn","_newValue","calculateFunc","customObj","push","hiddenDependsOn","hidden","labelDependsOn","helpDependsOn","ignoreOwnChanges","forEach","_attr","i","f","Function","result","originalData","systemConfig","common","log","disabled","validator","label","link","Utils","renderTextWithA","color","themeType","textDecoration","pattern","replace","calculate","Object","keys","hideOnlyControl","item","xs","lg","md","sm","assign","marginBottom","textAlign","style","darkStyle","newLine","flexBasis","height","validatorNoSaveOnError","validatorErrorText","renderedItem","renderItem","commandRunning","tooltip","width","button","buttonTooltip","buttonTooltipNoTranslation","renderConfirmDialog","split","part","shift","Component","getPrototypeOf","constructor","propTypes","PropTypes","object","isRequired","string","any","themeName","customs","bool","number","dateFormat","isFloatComma"],"sources":["JsonConfigComponent/ConfigGeneric.jsx"],"sourcesContent":["import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\n\nimport Grid from '@mui/material/Grid';\nimport Button from '@mui/material/Button';\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 '../../i18n';\nimport Utils from '../Utils';\nimport ConfirmDialog from '../../Dialogs/Confirm';\n\nclass ConfigGeneric extends Component {\n static DIFFERENT_VALUE = '__different__';\n static DIFFERENT_LABEL = 'ra___different__';\n static NONE_VALUE = '';\n static NONE_LABEL = 'ra_none';\n static AsyncFunction = Object.getPrototypeOf(async function(){}).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 ? this.executeCustom(props.schema.defaultFunc, props.schema.default, props.data, props.instanceObj, props.arrayIndex, props.globalData) : props.schema.default;\n } else {\n this.defaultValue = props.schema.defaultFunc ? this.execute(props.schema.defaultFunc, props.schema.default, props.data, props.arrayIndex, props.globalData) : 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 (value === undefined || (LIKE_SELECT.includes(this.props.schema.type) && (value === '' || value === null))) {\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.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 static getValue(data, attr) {\n if (typeof attr === 'string') {\n return ConfigGeneric.getValue(data, attr.split('.'));\n } else {\n if (attr.length === 1) {\n return data[attr[0]];\n } else {\n const part = attr.shift();\n if (typeof data[part] === 'object') {\n return ConfigGeneric.getValue(data[part], attr);\n } else {\n return null;\n }\n }\n }\n }\n\n static setValue(data, attr, value) {\n if (typeof attr === 'string') {\n return ConfigGeneric.setValue(data, attr.split('.'), value);\n } else {\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 return ConfigGeneric.setValue(data[part], attr, value);\n }\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 } else {\n return text;\n }\n } else 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 } else {\n this.getPattern(text.func);\n }\n } else {\n return text[this.lang] || text.en || '';\n }\n }\n }\n\n renderConfirmDialog() {\n if (!this.state.confirmDialog) {\n return null;\n }\n const confirm = this.state.confirmData || this.props.schema.confirm;\n let icon = null;\n if (confirm.type === 'warning') {\n icon = <IconWarning />;\n } else if (confirm.type === 'error') {\n icon = <IconError />;\n } else if (confirm.type === 'info') {\n icon = <IconInfo />;\n }\n\n return <ConfirmDialog\n title={ this.getText(confirm.title) || I18n.t('ra_Please confirm') }\n text={ this.getText(confirm.text) }\n ok={ this.getText(confirm.ok) || I18n.t('ra_Ok') }\n cancel={ this.getText(confirm.cancel) || I18n.t('ra_Cancel') }\n icon={icon}\n onClose={isOk =>\n this.setState({ confirmDialog: false}, () => {\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 confirmDialog: false,\n confirmDepAttr: null,\n confirmDepNewValue: null,\n confirmNewValue: null,\n confirmAttr: null,\n confirmOldValue: null,\n confirmData: null,\n }, () =>\n this.props.onChange(data));\n } else {\n this.setState({\n confirmDialog: false,\n confirmDepAttr: null,\n confirmDepNewValue: null,\n confirmNewValue: null,\n confirmAttr: null,\n confirmOldValue: null,\n confirmData: null,\n });\n }\n })\n }\n />;\n }\n\n onChange(attr, newValue, cb) {\n const data = JSON.parse(JSON.stringify(this.props.data));\n ConfigGeneric.setValue(data, attr, newValue);\n\n if (this.props.schema.confirm && this.execute(this.props.schema.confirm.condition, false, data, this.props.arrayIndex, this.props.globalData)) {\n return this.setState({\n confirmDialog: true,\n confirmNewValue: newValue,\n confirmAttr: attr,\n confirmData: null,\n });\n } else {\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 (this.execute(dep.confirm.condition, false, data, this.props.arrayIndex, this.props.globalData)) {\n return this.setState({\n confirmDialog: true,\n confirmNewValue: newValue,\n confirmAttr: attr,\n confirmDepNewValue: val,\n confirmDepAttr: dep.attr,\n confirmData: dep.confirm,\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(dep.onChange.calculateFunc, data, this.props.customObj, this.props.instanceObj, this.props.arrayIndex, this.props.globalData);\n } else {\n _newValue = this.execute(dep.onChange.calculateFunc, val, data, this.props.arrayIndex, this.props.globalData);\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(this.props.schema.onChange.calculateFunc, data, this.props.customObj, this.props.instanceObj, this.props.arrayIndex, this.props.globalData)\n :\n this.execute(this.props.schema.onChange.calculateFunc, val, data, this.props.arrayIndex, this.props.globalData);\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 && changed.length && 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 }\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 } else {\n try {\n // eslint-disable-next-line no-new-func\n const f = new Function('data', 'originalData', '_system', '_alive', '_common', '_socket', '_instance', 'arrayIndex', 'globalData', func.includes('return') ? func : 'return ' + func);\n const result = 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);\n // console.log(result);\n return result;\n } catch (e) {\n console.error(`Cannot execute ${func}: ${e}`);\n return defaultValue;\n }\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 } else {\n try {\n // eslint-disable-next-line no-new-func\n const f = new Function('data', 'originalData', '_system', 'instanceObj', 'customObj', '_socket', 'arrayIndex', 'globalData', func.includes('return') ? func : 'return ' + func);\n const result = f(data || this.props.data, this.props.originalData, this.props.systemConfig, instanceObj, customObj, this.props.socket, arrayIndex, globalData);\n console.log(result);\n return result;\n } catch (e) {\n console.error(`Cannot execute ${func}: ${e}`);\n return null;\n }\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 ? !this.executeCustom(schema.validator, this.props.data, this.props.customObj, this.props.instanceObj, this.props.arrayIndex, this.props.globalData) : false;\n disabled = schema.disabled ? this.executeCustom(schema.disabled, this.props.data, this.props.customObj, this.props.instanceObj, this.props.arrayIndex, this.props.globalData) : false;\n hidden = schema.hidden ? this.executeCustom(schema.hidden, this.props.data, this.props.customObj, this.props.instanceObj, this.props.arrayIndex, this.props.globalData) : false;\n defaultValue = schema.defaultFunc ? this.executeCustom(schema.defaultFunc, this.props.data, this.props.customObj, this.props.instanceObj, this.props.arrayIndex, this.props.globalData) : schema.default;\n } else {\n error = schema.validator ? !this.execute(schema.validator, false, this.props.data, this.props.arrayIndex, this.props.globalData) : false;\n disabled = schema.disabled ? this.execute(schema.disabled, false, this.props.data, this.props.arrayIndex, this.props.globalData) : false;\n hidden = schema.hidden ? this.execute(schema.hidden, false, this.props.data, this.props.arrayIndex, this.props.globalData) : false;\n defaultValue = schema.defaultFunc ? this.execute(schema.defaultFunc, schema.default, this.props.data, this.props.arrayIndex, this.props.globalData) : schema.default;\n }\n\n return { error, disabled, hidden, defaultValue };\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 renderHelp(text, link, noTranslation) {\n if (!link) {\n text = this.getText(text, noTranslation) || '';\n if (text && text.includes('<a ')) {\n return Utils.renderTextWithA(text);\n } else {\n return text;\n }\n } else {\n return <a\n href={link}\n target=\"_blank\"\n rel=\"noreferrer\"\n style={{ color: this.props.themeType === 'dark' ? '#a147ff' : '#5b238f', textDecoration: 'underline' }}\n >{this.getText(text, noTranslation)}</a>;\n }\n }\n\n getPattern(pattern, data) {\n data = data || this.props.data;\n if (!pattern) {\n return '';\n } else {\n if (typeof pattern === 'object') {\n pattern = pattern.func;\n }\n\n try {\n if (this.props.custom) {\n // eslint-disable-next-line no-new-func\n const f = new Function('data', 'originalData', 'arrayIndex', 'globalData', '_system', 'instanceObj', 'customObj', '_socket', 'return `' + pattern.replace(/`/g, '\\\\`') + '`');\n 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);\n } else {\n // eslint-disable-next-line no-new-func\n const f = new Function('data', 'originalData', 'arrayIndex', 'globalData', '_system', '_alive', '_common', '_socket', 'return `' + pattern.replace(/`/g, '\\\\`') + '`');\n return f(data, this.props.originalData, this.props.arrayIndex, this.props.globalData, this.props.systemConfig, this.props.alive, this.props.common, this.props.socket);\n }\n } catch (e) {\n console.error(`Cannot execute ${pattern}: ${e}`);\n return pattern;\n }\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(() => {this.sendToTimeout = null; this.sendTo();}, 200);\n }\n\n const { error, disabled, hidden, defaultValue } = this.calculate(schema);\n\n if (hidden) {\n // Remove all errors if element is hidden\n if (Object.keys(this.isError).length) {\n setTimeout(isError =>\n Object.keys(isError).forEach(attr => this.props.onError(attr)),\n 100, JSON.parse(JSON.stringify(this.isError)));\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={Object.assign(\n {},\n {marginBottom: 0, /*marginRight: 8, */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 } else {\n return item;\n }\n } else {\n return null;\n }\n } else {\n // Add error\n if (schema.validatorNoSaveOnError) {\n if (error && !Object.keys(this.isError).length) {\n this.isError = {[this.props.attr]: schema.validatorErrorText ? I18n.t(schema.validatorErrorText) : true};\n setTimeout(isError =>\n Object.keys(isError).forEach(attr => this.props.onError(attr, isError[attr])),\n 100, JSON.parse(JSON.stringify(this.isError)));\n } else if (!error && Object.keys(this.isError).length) {\n setTimeout(isError =>\n Object.keys(isError).forEach(attr => this.props.onError(attr)),\n 100, JSON.parse(JSON.stringify(this.isError)));\n this.isError = {};\n }\n }\n\n const renderedItem = this.renderItem(error, disabled || this.props.commandRunning || this.props.disabled, defaultValue);\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={Object.assign({}, {\n marginBottom: 0,\n // marginRight: 8,\n textAlign: 'left',\n width: schema.type === 'divider' || schema.type === 'header' ? schema.width || '100%' : undefined\n }, schema.style, this.props.themeType === 'dark' ? schema.darkStyle : {})}>\n { this.props.schema.defaultSendTo && this.props.schema.button ? <Grid container style={{ width: '100%' }}>\n <Grid item flex={1}>{renderedItem}</Grid>\n <Grid item><Button\n variant=\"outlined\"\n onClick={() => this.sendTo()}\n title={this.props.schema.buttonTooltip ? this.getText(this.props.schema.buttonTooltip, this.props.schema.buttonTooltipNoTranslation) : I18n.t('ra_Request data by instance')}\n >{this.getText(this.props.schema.button)}</Button></Grid>\n </Grid>\n :\n renderedItem\n }\n </Grid>;\n\n if (schema.newLine) {\n return <>\n <div style={{flexBasis: '100%', height: 0}} />\n {this.renderConfirmDialog()}\n {item}\n </>;\n } else {\n if (this.state.confirmDialog) {\n return <>\n {this.renderConfirmDialog()}\n {item}\n </>;\n } else {\n return item;\n }\n }\n }\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 value: PropTypes.any,\n themeName: PropTypes.string,\n style: PropTypes.object,\n onError: PropTypes.func,\n onChange: PropTypes.func,\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 dateFormat: PropTypes.string,\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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"}
@@ -23,7 +23,7 @@ var _i18n = _interopRequireDefault(require("../../i18n"));
23
23
  var _ConfigGeneric2 = _interopRequireDefault(require("./ConfigGeneric"));
24
24
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
25
25
  function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
26
- var styles = function styles(theme) {
26
+ var styles = function styles() {
27
27
  return {
28
28
  fullWidth: {
29
29
  width: '100%'
@@ -1 +1 @@
1
- {"version":3,"file":"ConfigIP.js","names":["styles","theme","fullWidth","width","ConfigIP","props","socket","getHostByIp","common","host","then","ips","schema","listenOnAllPorts","filter","item","address","onlyIp4","family","onlyIp6","forEach","name","I18n","t","setState","error","disabled","defaultValue","value","ConfigGeneric","getValue","data","attr","state","find","classes","getText","label","val","e","onChange","target","map","i","help","renderHelp","helpLink","noTranslation","propTypes","PropTypes","object","isRequired","themeType","string","themeName","style","className","onError","func","withStyles"],"sources":["JsonConfigComponent/ConfigIP.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@mui/styles';\n\nimport InputLabel from '@mui/material/InputLabel';\nimport MenuItem from '@mui/material/MenuItem';\nimport FormHelperText from '@mui/material/FormHelperText';\nimport FormControl from '@mui/material/FormControl';\nimport Select from '@mui/material/Select';\n\nimport I18n from '../../i18n';\n\nimport ConfigGeneric from './ConfigGeneric';\n\nconst styles = theme => ({\n fullWidth: {\n width: '100%'\n }\n});\n\nclass ConfigIP extends ConfigGeneric {\n\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\n 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(item => item.address === value);\n\n return <FormControl className={this.props.classes.fullWidth} variant=\"standard\">\n <InputLabel>{this.getText(this.props.schema.label)}</InputLabel>\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((item, i) =>\n <MenuItem key={i} value={item.address}>{item.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);"],"mappings":";;;;;;;;;;;;;AAAA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AAEA;AAEA;AAA4C;AAAA;AAE5C,IAAMA,MAAM,GAAG,SAATA,MAAM,CAAGC,KAAK;EAAA,OAAK;IACrBC,SAAS,EAAE;MACPC,KAAK,EAAE;IACX;EACJ,CAAC;AAAA,CAAC;AAAC,IAEGC,QAAQ;EAAA;EAAA;EAAA;IAAA;IAAA;EAAA;EAAA;IAAA;IAAA,OAEV,6BAAoB;MAAA;MAChB;MACA,IAAI,CAACC,KAAK,CAACC,MAAM,CAACC,WAAW,CAAC,IAAI,CAACF,KAAK,CAACG,MAAM,CAACC,IAAI,CAAC,CAChDC,IAAI,CAAC,UAAAC,GAAG,EAAI;QACT;QACA,IAAI,CAAC,KAAI,CAACN,KAAK,CAACO,MAAM,CAACC,gBAAgB,EAAE;UACrCF,GAAG,GAAGA,GAAG,CAACG,MAAM,CAAC,UAAAC,IAAI;YAAA,OAAIA,IAAI,CAACC,OAAO,KAAK,SAAS,IAAID,IAAI,CAACC,OAAO,KAAK,IAAI;UAAA,EAAC;QACjF;QACA,IAAI,KAAI,CAACX,KAAK,CAACO,MAAM,CAACK,OAAO,EAAE;UAC3BN,GAAG,GAAGA,GAAG,CAACG,MAAM,CAAC,UAAAC,IAAI;YAAA,OAAIA,IAAI,CAACG,MAAM,KAAK,MAAM;UAAA,EAAC;QACpD,CAAC,MACD,IAAI,KAAI,CAACb,KAAK,CAACO,MAAM,CAACO,OAAO,EAAE;UAC3BR,GAAG,GAAGA,GAAG,CAACG,MAAM,CAAC,UAAAC,IAAI;YAAA,OAAIA,IAAI,CAACG,MAAM,KAAK,MAAM;UAAA,EAAC;QACpD;QACAP,GAAG,CAACS,OAAO,CAAC,UAAAL,IAAI,EAAI;UAChB,IAAIA,IAAI,CAACC,OAAO,KAAK,SAAS,EAAE;YAC5BD,IAAI,CAACM,IAAI,GAAG,mBAAmB,GAAGC,gBAAI,CAACC,CAAC,CAAC,sBAAsB,CAAC;UACpE,CAAC,MACD,IAAIR,IAAI,CAACC,OAAO,KAAK,IAAI,EAAE;YACvBD,IAAI,CAACM,IAAI,GAAG,cAAc,GAAGC,gBAAI,CAACC,CAAC,CAAC,sBAAsB,CAAC;UAC/D;QACJ,CAAC,CAAC;QACF,KAAI,CAACC,QAAQ,CAAC;UAACb,GAAG,EAAHA;QAAG,CAAC,CAAC;MACxB,CAAC,CAAC;IACV;EAAC;IAAA;IAAA,OAED,oBAAWc,KAAK,EAAEC,QAAQ,EAAEC,YAAY,EAAE;MAAA;QAAA;QAAA;MACtC,IAAMC,KAAK,GAAGC,0BAAa,CAACC,QAAQ,CAAC,IAAI,CAACzB,KAAK,CAAC0B,IAAI,EAAE,IAAI,CAAC1B,KAAK,CAAC2B,IAAI,CAAC;MACtE,IAAMjB,IAAI,sBAAG,IAAI,CAACkB,KAAK,CAACtB,GAAG,oDAAd,gBAAgBuB,IAAI,CAAC,UAAAnB,IAAI;QAAA,OAAIA,IAAI,CAACC,OAAO,KAAKY,KAAK;MAAA,EAAC;MAEjE,oBAAO,gCAAC,uBAAW;QAAC,SAAS,EAAE,IAAI,CAACvB,KAAK,CAAC8B,OAAO,CAACjC,SAAU;QAAC,OAAO,EAAC;MAAU,gBAC3E,gCAAC,sBAAU,QAAE,IAAI,CAACkC,OAAO,CAAC,IAAI,CAAC/B,KAAK,CAACO,MAAM,CAACyB,KAAK,CAAC,CAAc,eAChE,gCAAC,kBAAM;QACH,OAAO,EAAC,UAAU;QAClB,KAAK,EAAE,CAAC,CAACZ,KAAM;QACf,QAAQ,EAAE,CAAC,CAACC,QAAS;QACrB,KAAK,EAAEE,KAAM;QACb,WAAW,EAAE,qBAAAU,GAAG;UAAA,OAAI,CAAAvB,IAAI,aAAJA,IAAI,uBAAJA,IAAI,CAAEM,IAAI,KAAIiB,GAAG;QAAA,CAAC;QACtC,QAAQ,EAAE,kBAAAC,CAAC;UAAA,OAAI,MAAI,CAACC,QAAQ,CAAC,MAAI,CAACnC,KAAK,CAAC2B,IAAI,EAAEO,CAAC,CAACE,MAAM,CAACb,KAAK,CAAC;QAAA;MAAC,uBAE7D,IAAI,CAACK,KAAK,CAACtB,GAAG,qDAAd,iBAAgB+B,GAAG,CAAC,UAAC3B,IAAI,EAAE4B,CAAC;QAAA,oBACzB,gCAAC,oBAAQ;UAAC,GAAG,EAAEA,CAAE;UAAC,KAAK,EAAE5B,IAAI,CAACC;QAAQ,GAAED,IAAI,CAACM,IAAI,CAAY;MAAA,EAAC,CAC7D,EACR,IAAI,CAAChB,KAAK,CAACO,MAAM,CAACgC,IAAI,gBAAG,gCAAC,0BAAc,QAAE,IAAI,CAACC,UAAU,CAAC,IAAI,CAACxC,KAAK,CAACO,MAAM,CAACgC,IAAI,EAAE,IAAI,CAACvC,KAAK,CAACO,MAAM,CAACkC,QAAQ,EAAE,IAAI,CAACzC,KAAK,CAACO,MAAM,CAACmC,aAAa,CAAC,CAAkB,GAAG,IAAI,CAC9J;IAClB;EAAC;EAAA;AAAA,EA/CkBlB,0BAAa;AAkDpCzB,QAAQ,CAAC4C,SAAS,GAAG;EACjB1C,MAAM,EAAE2C,qBAAS,CAACC,MAAM,CAACC,UAAU;EACnCC,SAAS,EAAEH,qBAAS,CAACI,MAAM;EAC3BC,SAAS,EAAEL,qBAAS,CAACI,MAAM;EAC3BE,KAAK,EAAEN,qBAAS,CAACC,MAAM;EACvBM,SAAS,EAAEP,qBAAS,CAACI,MAAM;EAC3BtB,IAAI,EAAEkB,qBAAS,CAACC,MAAM,CAACC,UAAU;EACjCvC,MAAM,EAAEqC,qBAAS,CAACC,MAAM;EACxBO,OAAO,EAAER,qBAAS,CAACS,IAAI;EACvBlB,QAAQ,EAAES,qBAAS,CAACS;AACxB,CAAC;AAAC,eAEa,IAAAC,kBAAU,EAAC3D,MAAM,CAAC,CAACI,QAAQ,CAAC;AAAA"}
1
+ {"version":3,"file":"ConfigIP.js","names":["styles","fullWidth","width","ConfigIP","props","socket","getHostByIp","common","host","then","ips","schema","listenOnAllPorts","filter","item","address","onlyIp4","family","onlyIp6","forEach","name","I18n","t","setState","error","disabled","defaultValue","value","ConfigGeneric","getValue","data","attr","state","find","classes","getText","label","val","e","onChange","target","map","i","help","renderHelp","helpLink","noTranslation","propTypes","PropTypes","object","isRequired","themeType","string","themeName","style","className","onError","func","withStyles"],"sources":["JsonConfigComponent/ConfigIP.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@mui/styles';\n\nimport InputLabel from '@mui/material/InputLabel';\nimport MenuItem from '@mui/material/MenuItem';\nimport FormHelperText from '@mui/material/FormHelperText';\nimport FormControl from '@mui/material/FormControl';\nimport Select from '@mui/material/Select';\n\nimport I18n from '../../i18n';\n\nimport ConfigGeneric from './ConfigGeneric';\n\nconst styles = () => ({\n fullWidth: {\n width: '100%'\n }\n});\n\nclass ConfigIP extends ConfigGeneric {\n\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\n 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(item => item.address === value);\n\n return <FormControl className={this.props.classes.fullWidth} variant=\"standard\">\n <InputLabel>{this.getText(this.props.schema.label)}</InputLabel>\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((item, i) =>\n <MenuItem key={i} value={item.address}>{item.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);"],"mappings":"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"}