@iobroker/adapter-react-v5 4.0.24 → 4.0.26

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 (172) hide show
  1. package/Components/404.js.map +1 -1
  2. package/Components/ColorPicker.d.ts +2 -2
  3. package/Components/ColorPicker.js +1 -1
  4. package/Components/ColorPicker.js.map +1 -1
  5. package/Components/ComplexCron.js.map +1 -1
  6. package/Components/CustomModal.js.map +1 -1
  7. package/Components/FileBrowser.d.ts +15 -15
  8. package/Components/FileBrowser.js +4 -4
  9. package/Components/FileBrowser.js.map +1 -1
  10. package/Components/FileViewer.d.ts +2 -2
  11. package/Components/FileViewer.js +3 -3
  12. package/Components/FileViewer.js.map +1 -1
  13. package/Components/Icon.d.ts +2 -2
  14. package/Components/Icon.js.map +1 -1
  15. package/Components/IconPicker.d.ts +1 -1
  16. package/Components/IconPicker.js.map +1 -1
  17. package/Components/IconSelector.d.ts +1 -1
  18. package/Components/IconSelector.js.map +1 -1
  19. package/Components/Image.d.ts +3 -3
  20. package/Components/Image.js.map +1 -1
  21. package/Components/JsonConfigComponent/ChipInput.d.ts +1 -1
  22. package/Components/JsonConfigComponent/ChipInput.js.map +1 -1
  23. package/Components/JsonConfigComponent/ConfigAlive.js.map +1 -1
  24. package/Components/JsonConfigComponent/ConfigAutocomplete.js.map +1 -1
  25. package/Components/JsonConfigComponent/ConfigAutocompleteSendTo.js.map +1 -1
  26. package/Components/JsonConfigComponent/ConfigCRON.js.map +1 -1
  27. package/Components/JsonConfigComponent/ConfigCertCollection.js.map +1 -1
  28. package/Components/JsonConfigComponent/ConfigCertificateSelect.js.map +1 -1
  29. package/Components/JsonConfigComponent/ConfigCertificates.js.map +1 -1
  30. package/Components/JsonConfigComponent/ConfigCheckLicense.js.map +1 -1
  31. package/Components/JsonConfigComponent/ConfigCheckbox.js.map +1 -1
  32. package/Components/JsonConfigComponent/ConfigChip.js.map +1 -1
  33. package/Components/JsonConfigComponent/ConfigColor.js.map +1 -1
  34. package/Components/JsonConfigComponent/ConfigCoordinates.js.map +1 -1
  35. package/Components/JsonConfigComponent/ConfigCustom.d.ts +1 -1
  36. package/Components/JsonConfigComponent/ConfigCustom.js.map +1 -1
  37. package/Components/JsonConfigComponent/ConfigDatePicker.js.map +1 -1
  38. package/Components/JsonConfigComponent/ConfigFile.js.map +1 -1
  39. package/Components/JsonConfigComponent/ConfigFileSelector.js.map +1 -1
  40. package/Components/JsonConfigComponent/ConfigFunc.js.map +1 -1
  41. package/Components/JsonConfigComponent/ConfigGeneric.d.ts +2 -2
  42. package/Components/JsonConfigComponent/ConfigGeneric.js.map +1 -1
  43. package/Components/JsonConfigComponent/ConfigIP.js.map +1 -1
  44. package/Components/JsonConfigComponent/ConfigImageUpload.js.map +1 -1
  45. package/Components/JsonConfigComponent/ConfigInstanceSelect.js.map +1 -1
  46. package/Components/JsonConfigComponent/ConfigJsonEditor.js.map +1 -1
  47. package/Components/JsonConfigComponent/ConfigLanguage.js.map +1 -1
  48. package/Components/JsonConfigComponent/ConfigNumber.js.map +1 -1
  49. package/Components/JsonConfigComponent/ConfigObjectId.js.map +1 -1
  50. package/Components/JsonConfigComponent/ConfigPanel.js.map +1 -1
  51. package/Components/JsonConfigComponent/ConfigPassword.js.map +1 -1
  52. package/Components/JsonConfigComponent/ConfigPattern.js.map +1 -1
  53. package/Components/JsonConfigComponent/ConfigPort.js.map +1 -1
  54. package/Components/JsonConfigComponent/ConfigRoom.js.map +1 -1
  55. package/Components/JsonConfigComponent/ConfigSelect.js.map +1 -1
  56. package/Components/JsonConfigComponent/ConfigSelectSendTo.js.map +1 -1
  57. package/Components/JsonConfigComponent/ConfigSendto.js.map +1 -1
  58. package/Components/JsonConfigComponent/ConfigSetState.js.map +1 -1
  59. package/Components/JsonConfigComponent/ConfigSlider.js.map +1 -1
  60. package/Components/JsonConfigComponent/ConfigStaticDivider.js.map +1 -1
  61. package/Components/JsonConfigComponent/ConfigStaticHeader.js.map +1 -1
  62. package/Components/JsonConfigComponent/ConfigStaticImage.js.map +1 -1
  63. package/Components/JsonConfigComponent/ConfigStaticText.js.map +1 -1
  64. package/Components/JsonConfigComponent/ConfigTable.js.map +1 -1
  65. package/Components/JsonConfigComponent/ConfigTabs.js.map +1 -1
  66. package/Components/JsonConfigComponent/ConfigText.js.map +1 -1
  67. package/Components/JsonConfigComponent/ConfigTextSendTo.js.map +1 -1
  68. package/Components/JsonConfigComponent/ConfigTimePicker.js.map +1 -1
  69. package/Components/JsonConfigComponent/ConfigTopic.js.map +1 -1
  70. package/Components/JsonConfigComponent/ConfigUUID.d.ts +2 -1
  71. package/Components/JsonConfigComponent/ConfigUUID.js.map +1 -1
  72. package/Components/JsonConfigComponent/ConfigUser.js.map +1 -1
  73. package/Components/JsonConfigComponent/index.js.map +1 -1
  74. package/Components/Loader.d.ts +1 -1
  75. package/Components/Loader.js.map +1 -1
  76. package/Components/Loaders/PT.d.ts +1 -1
  77. package/Components/Loaders/PT.js.map +1 -1
  78. package/Components/Loaders/Vendor.d.ts +1 -1
  79. package/Components/Loaders/Vendor.js.map +1 -1
  80. package/Components/Logo.d.ts +1 -1
  81. package/Components/Logo.js.map +1 -1
  82. package/Components/MDUtils.js.map +1 -1
  83. package/Components/ObjectBrowser.d.ts +4 -4
  84. package/Components/ObjectBrowser.js.map +1 -1
  85. package/Components/Router.js.map +1 -1
  86. package/Components/SaveCloseButtons.d.ts +1 -1
  87. package/Components/SaveCloseButtons.js.map +1 -1
  88. package/Components/Schedule.js.map +1 -1
  89. package/Components/SelectWithIcon.js.map +1 -1
  90. package/Components/SimpleCron/cron2text.js.map +1 -1
  91. package/Components/SimpleCron/index.js.map +1 -1
  92. package/Components/TabContainer.d.ts +1 -1
  93. package/Components/TabContainer.js.map +1 -1
  94. package/Components/TabContent.d.ts +1 -1
  95. package/Components/TabContent.js.map +1 -1
  96. package/Components/TabHeader.d.ts +1 -1
  97. package/Components/TabHeader.js.map +1 -1
  98. package/Components/TableResize.js.map +1 -1
  99. package/Components/TextWithIcon.js +19 -11
  100. package/Components/TextWithIcon.js.map +1 -1
  101. package/Components/ToggleThemeMenu.d.ts +2 -1
  102. package/Components/ToggleThemeMenu.js.map +1 -1
  103. package/Components/TreeTable.js.map +1 -1
  104. package/Components/UploadImage.js.map +1 -1
  105. package/Components/Utils.js +5 -5
  106. package/Components/Utils.js.map +1 -1
  107. package/Components/copy-to-clipboard.js.map +1 -1
  108. package/Components/withWidth.d.ts +1 -1
  109. package/Components/withWidth.js.map +1 -1
  110. package/Dialogs/ComplexCron.js.map +1 -1
  111. package/Dialogs/Confirm.js +7 -4
  112. package/Dialogs/Confirm.js.map +1 -1
  113. package/Dialogs/Cron.js.map +1 -1
  114. package/Dialogs/Error.d.ts +1 -1
  115. package/Dialogs/Error.js +3 -2
  116. package/Dialogs/Error.js.map +1 -1
  117. package/Dialogs/Message.d.ts +1 -1
  118. package/Dialogs/Message.js +5 -4
  119. package/Dialogs/Message.js.map +1 -1
  120. package/Dialogs/SelectFile.d.ts +1 -1
  121. package/Dialogs/SelectFile.js +2 -2
  122. package/Dialogs/SelectFile.js.map +1 -1
  123. package/Dialogs/SelectID.d.ts +1 -1
  124. package/Dialogs/SelectID.js +4 -2
  125. package/Dialogs/SelectID.js.map +1 -1
  126. package/Dialogs/SimpleCron.js.map +1 -1
  127. package/Dialogs/TextInput.d.ts +1 -1
  128. package/Dialogs/TextInput.js.map +1 -1
  129. package/GenericApp.d.ts +2 -1
  130. package/GenericApp.js.map +1 -1
  131. package/LegacyConnection.js +2 -2
  132. package/LegacyConnection.js.map +1 -1
  133. package/README.md +6 -0
  134. package/Theme.js.map +1 -1
  135. package/assets/devices/Irrigation.svg +19 -38
  136. package/i18n.js.map +1 -1
  137. package/icons/IconAdapter.d.ts +2 -1
  138. package/icons/IconAdapter.js.map +1 -1
  139. package/icons/IconAlias.d.ts +2 -1
  140. package/icons/IconAlias.js.map +1 -1
  141. package/icons/IconChannel.d.ts +2 -1
  142. package/icons/IconChannel.js +0 -4
  143. package/icons/IconChannel.js.map +1 -1
  144. package/icons/IconClearFilter.d.ts +2 -1
  145. package/icons/IconClearFilter.js.map +1 -1
  146. package/icons/IconClosed.d.ts +2 -1
  147. package/icons/IconClosed.js.map +1 -1
  148. package/icons/IconCopy.d.ts +2 -1
  149. package/icons/IconCopy.js.map +1 -1
  150. package/icons/IconDevice.d.ts +2 -1
  151. package/icons/IconDevice.js +0 -7
  152. package/icons/IconDevice.js.map +1 -1
  153. package/icons/IconDocument.d.ts +2 -1
  154. package/icons/IconDocument.js.map +1 -1
  155. package/icons/IconDocumentReadOnly.d.ts +2 -1
  156. package/icons/IconDocumentReadOnly.js.map +1 -1
  157. package/icons/IconExpert.d.ts +2 -1
  158. package/icons/IconExpert.js.map +1 -1
  159. package/icons/IconFx.d.ts +2 -1
  160. package/icons/IconFx.js.map +1 -1
  161. package/icons/IconInstance.d.ts +2 -1
  162. package/icons/IconInstance.js.map +1 -1
  163. package/icons/IconLogout.d.ts +2 -1
  164. package/icons/IconLogout.js.map +1 -1
  165. package/icons/IconNoIcon.d.ts +2 -1
  166. package/icons/IconNoIcon.js.map +1 -1
  167. package/icons/IconOpen.d.ts +2 -1
  168. package/icons/IconOpen.js.map +1 -1
  169. package/icons/IconState.d.ts +2 -1
  170. package/icons/IconState.js +5 -8
  171. package/icons/IconState.js.map +1 -1
  172. package/package.json +10 -10
@@ -1 +1 @@
1
- {"version":3,"file":"SelectWithIcon.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_withStyles","_material","_Icon","_Utils","_i18n","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","result","NewTarget","constructor","Reflect","construct","arguments","apply","_possibleConstructorReturn2","sham","Proxy","Boolean","valueOf","e","styles","theme","different","opacity","icon","width","height","marginRight","SelectWithIcon","_Component","_inherits2","_super","props","_this","_classCallCheck2","wordDifferent","t","list","Array","isArray","options","map","_obj$common","_obj$common2","name","Utils","getObjectNameFromObj","lang","replace","value","_id","common","color","values","_obj$common3","_obj$common4","unshift","allowNone","I18n","state","_createClass2","render","_this2","find","timeout","setTimeout","JSON","parse","stringify","setState","i","findIndex","splice","item","it","removePrefix","style","undefined","backgroundColor","getInvertedColor","themeType","dense","assign","select","createElement","Select","variant","disabled","inputProps","renderValue","src","className","classes","root","clsx","onChange","el","target","pos","length","clone","MenuItem","FormControl","fullWidth","InputLabel","label","Component","propTypes","PropTypes","func","isRequired","string","bool","oneOfType","array","object","_default","withStyles","exports"],"sources":["SelectWithIcon.js"],"sourcesContent":["import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport withStyles from '@mui/styles/withStyles';\n\nimport {FormControl, InputLabel, MenuItem, Select} from '@mui/material';\n\nimport Icon from './Icon';\nimport Utils from './Utils';\nimport I18n from '../i18n';\n\nconst styles = theme => ({\n different: {\n opacity: 0.5\n },\n icon: {\n width: 16,\n height: 16,\n marginRight: 8\n }\n});\n\nclass SelectWithIcon extends Component {\n constructor(props) {\n super(props);\n\n if (this.props.different) {\n this.wordDifferent = this.props.t(this.props.different);\n }\n\n let list;\n if (Array.isArray(this.props.list || this.props.options)) {\n list = this.props.list.map(obj => ({\n name: Utils.getObjectNameFromObj(obj, this.props.lang)\n .replace('system.group.', '')\n .replace('system.user.', '')\n .replace('enum.rooms.', '')\n .replace('enum.functions.', ''),\n value: obj._id,\n icon: obj.common?.icon,\n color: obj.common?.color,\n }));\n } else {\n list = Object.values(this.props.list || this.props.options).map(obj => ({\n name: Utils.getObjectNameFromObj(obj, this.props.lang)\n .replace('system.group.', '')\n .replace('system.user.', '')\n .replace('enum.rooms.', '')\n .replace('enum.functions.', ''),\n value: obj._id,\n icon: obj.common?.icon,\n color: obj.common?.color,\n }));\n }\n\n if (this.props.different && this.props.value === this.props.different) {\n list.unshift({value: this.props.different, name: this.wordDifferent});\n }\n\n if (this.props.allowNone) {\n list.unshift({value: '', name: I18n.t('ra_none')});\n }\n\n this.state = {\n list,\n };\n }\n\n render() {\n if (this.props.allowNone && !this.state.list.find(obj => obj.value === '')) {\n this.timeout = this.timeout || setTimeout(() => {\n this.timeout = null;\n const list = JSON.parse(JSON.stringify(this.state.list));\n list.unshift({value: '', name: I18n.t('ra_none')});\n this.setState({list});\n }, 100);\n } else if (!this.props.allowNone && this.state.list.find(obj => obj.value === '')) {\n this.timeout = this.timeout || setTimeout(() => {\n this.timeout = null;\n const list = JSON.parse(JSON.stringify(this.state.list));\n const i = this.state.list.findIndex(obj => obj.value === '');\n list.splice(i, 1);\n this.setState({list});\n }, 100);\n }\n\n const item = this.state.list.find(it => it.value === this.props.value || (this.props.removePrefix && it.value.replace(this.props.removePrefix, '') === this.props.value));\n\n const style = this.props.value === this.props.different ? {} :\n {\n color: item?.color || undefined,\n backgroundColor: Utils.getInvertedColor(item?.color, this.props.themeType)\n };\n\n if (this.props.dense && this.props.style) {\n Object.assign(style, this.props.style);\n }\n\n const select = <Select\n variant=\"standard\"\n disabled={this.props.disabled}\n value={this.props.value}\n inputProps={this.props.inputProps}\n renderValue={value => <span>{item?.icon ? <Icon src={item?.icon} className={this.props.classes.icon} /> : null}{item?.name}</span>}\n classes={{root: Utils.clsx(\n this.props.value === this.props.different ? this.props.classes.different : '',\n this.props.dense ? this.props.className : ''\n )}}\n style={style}\n onChange={el => {\n if (this.props.different && el.target.value !== this.props.different) {\n let pos = null;\n for (let i = 0; i < this.state.list.length; i++) {\n if (this.state.list[i].value === this.props.different) {\n pos = i;\n break;\n }\n }\n if (pos !== null) {\n const list = Utils.clone(this.state.list);\n list.splice(pos, 1);\n return this.setState({list}, () => this.props.onChange(el.target.value));\n }\n }\n\n this.props.onChange(this.props.removePrefix ? el.target.value.replace(this.props.removePrefix, '') : el.target.value);\n }}\n >\n {this.state.list.map(el => <MenuItem\n className={this.props.different && el.value === this.props.different ? this.props.classes.different : ''}\n style={this.props.different && el.value === this.props.different ? {} : { color: el.color || undefined, backgroundColor: Utils.getInvertedColor(el.color, this.props.themeType) }}\n key={el.value}\n value={el.value}\n >\n {el.icon ? <Icon src={el.icon} className={this.props.classes.icon} /> : null}\n {el.name}\n </MenuItem>)}\n </Select>;\n\n if (this.props.dense) {\n return select;\n } else {\n return <FormControl variant=\"standard\" fullWidth={!!this.props.fullWidth} style={this.props.style} className={this.props.className}>\n <InputLabel>{this.props.label}</InputLabel>\n {select}\n </FormControl>;\n\n }\n }\n}\n\nSelectWithIcon.propTypes = {\n t: PropTypes.func.isRequired,\n lang: PropTypes.string.isRequired,\n themeType: PropTypes.string,\n value: PropTypes.string,\n onChange: PropTypes.func.isRequired,\n disabled: PropTypes.bool,\n list: PropTypes.oneOfType([PropTypes.array, PropTypes.object]), // one of \"list\"(Array) or \"options\"(object) is required\n options: PropTypes.oneOfType([PropTypes.array, PropTypes.object]), // one of \"list\"(Array) or \"options\"(object) is required\n different: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n label: PropTypes.string,\n fullWidth: PropTypes.bool,\n className: PropTypes.string,\n style: PropTypes.object,\n removePrefix: PropTypes.string,\n allowNone: PropTypes.bool,\n inputProps: PropTypes.object,\n};\n\nexport default withStyles(styles)(SelectWithIcon);"],"mappings":"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"}
1
+ {"version":3,"file":"SelectWithIcon.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_withStyles","_material","_Icon","_Utils","_i18n","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","result","NewTarget","constructor","Reflect","construct","arguments","apply","_possibleConstructorReturn2","sham","Proxy","Boolean","valueOf","e","styles","theme","different","opacity","icon","width","height","marginRight","SelectWithIcon","_Component","_inherits2","_super","props","_this","_classCallCheck2","wordDifferent","t","list","Array","isArray","options","map","_obj$common","_obj$common2","name","Utils","getObjectNameFromObj","lang","replace","value","_id","common","color","values","_obj$common3","_obj$common4","unshift","allowNone","I18n","state","_createClass2","render","_this2","find","timeout","setTimeout","JSON","parse","stringify","setState","i","findIndex","splice","item","it","removePrefix","style","undefined","backgroundColor","getInvertedColor","themeType","dense","assign","select","createElement","Select","variant","disabled","inputProps","renderValue","src","className","classes","root","clsx","onChange","el","target","pos","length","clone","MenuItem","FormControl","fullWidth","InputLabel","label","Component","propTypes","PropTypes","func","isRequired","string","bool","oneOfType","array","object","_default","withStyles","exports"],"sources":["SelectWithIcon.js"],"sourcesContent":["import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport withStyles from '@mui/styles/withStyles';\n\nimport {FormControl, InputLabel, MenuItem, Select} from '@mui/material';\n\nimport Icon from './Icon';\nimport Utils from './Utils';\nimport I18n from '../i18n';\n\nconst styles = theme => ({\n different: {\n opacity: 0.5\n },\n icon: {\n width: 16,\n height: 16,\n marginRight: 8\n }\n});\n\nclass SelectWithIcon extends Component {\n constructor(props) {\n super(props);\n\n if (this.props.different) {\n this.wordDifferent = this.props.t(this.props.different);\n }\n\n let list;\n if (Array.isArray(this.props.list || this.props.options)) {\n list = this.props.list.map(obj => ({\n name: Utils.getObjectNameFromObj(obj, this.props.lang)\n .replace('system.group.', '')\n .replace('system.user.', '')\n .replace('enum.rooms.', '')\n .replace('enum.functions.', ''),\n value: obj._id,\n icon: obj.common?.icon,\n color: obj.common?.color,\n }));\n } else {\n list = Object.values(this.props.list || this.props.options).map(obj => ({\n name: Utils.getObjectNameFromObj(obj, this.props.lang)\n .replace('system.group.', '')\n .replace('system.user.', '')\n .replace('enum.rooms.', '')\n .replace('enum.functions.', ''),\n value: obj._id,\n icon: obj.common?.icon,\n color: obj.common?.color,\n }));\n }\n\n if (this.props.different && this.props.value === this.props.different) {\n list.unshift({value: this.props.different, name: this.wordDifferent});\n }\n\n if (this.props.allowNone) {\n list.unshift({value: '', name: I18n.t('ra_none')});\n }\n\n this.state = {\n list,\n };\n }\n\n render() {\n if (this.props.allowNone && !this.state.list.find(obj => obj.value === '')) {\n this.timeout = this.timeout || setTimeout(() => {\n this.timeout = null;\n const list = JSON.parse(JSON.stringify(this.state.list));\n list.unshift({value: '', name: I18n.t('ra_none')});\n this.setState({list});\n }, 100);\n } else if (!this.props.allowNone && this.state.list.find(obj => obj.value === '')) {\n this.timeout = this.timeout || setTimeout(() => {\n this.timeout = null;\n const list = JSON.parse(JSON.stringify(this.state.list));\n const i = this.state.list.findIndex(obj => obj.value === '');\n list.splice(i, 1);\n this.setState({list});\n }, 100);\n }\n\n const item = this.state.list.find(it => it.value === this.props.value || (this.props.removePrefix && it.value.replace(this.props.removePrefix, '') === this.props.value));\n\n const style = this.props.value === this.props.different ? {} :\n {\n color: item?.color || undefined,\n backgroundColor: Utils.getInvertedColor(item?.color, this.props.themeType)\n };\n\n if (this.props.dense && this.props.style) {\n Object.assign(style, this.props.style);\n }\n\n const select = <Select\n variant=\"standard\"\n disabled={this.props.disabled}\n value={this.props.value}\n inputProps={this.props.inputProps}\n renderValue={value => <span>{item?.icon ? <Icon src={item?.icon} className={this.props.classes.icon} /> : null}{item?.name}</span>}\n classes={{root: Utils.clsx(\n this.props.value === this.props.different ? this.props.classes.different : '',\n this.props.dense ? this.props.className : ''\n )}}\n style={style}\n onChange={el => {\n if (this.props.different && el.target.value !== this.props.different) {\n let pos = null;\n for (let i = 0; i < this.state.list.length; i++) {\n if (this.state.list[i].value === this.props.different) {\n pos = i;\n break;\n }\n }\n if (pos !== null) {\n const list = Utils.clone(this.state.list);\n list.splice(pos, 1);\n return this.setState({list}, () => this.props.onChange(el.target.value));\n }\n }\n\n this.props.onChange(this.props.removePrefix ? el.target.value.replace(this.props.removePrefix, '') : el.target.value);\n }}\n >\n {this.state.list.map(el => <MenuItem\n className={this.props.different && el.value === this.props.different ? this.props.classes.different : ''}\n style={this.props.different && el.value === this.props.different ? {} : { color: el.color || undefined, backgroundColor: Utils.getInvertedColor(el.color, this.props.themeType) }}\n key={el.value}\n value={el.value}\n >\n {el.icon ? <Icon src={el.icon} className={this.props.classes.icon} /> : null}\n {el.name}\n </MenuItem>)}\n </Select>;\n\n if (this.props.dense) {\n return select;\n } else {\n return <FormControl variant=\"standard\" fullWidth={!!this.props.fullWidth} style={this.props.style} className={this.props.className}>\n <InputLabel>{this.props.label}</InputLabel>\n {select}\n </FormControl>;\n\n }\n }\n}\n\nSelectWithIcon.propTypes = {\n t: PropTypes.func.isRequired,\n lang: PropTypes.string.isRequired,\n themeType: PropTypes.string,\n value: PropTypes.string,\n onChange: PropTypes.func.isRequired,\n disabled: PropTypes.bool,\n list: PropTypes.oneOfType([PropTypes.array, PropTypes.object]), // one of \"list\"(Array) or \"options\"(object) is required\n options: PropTypes.oneOfType([PropTypes.array, PropTypes.object]), // one of \"list\"(Array) or \"options\"(object) is required\n different: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n label: PropTypes.string,\n fullWidth: PropTypes.bool,\n className: PropTypes.string,\n style: PropTypes.object,\n removePrefix: PropTypes.string,\n allowNone: PropTypes.bool,\n inputProps: PropTypes.object,\n};\n\nexport default withStyles(styles)(SelectWithIcon);"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"cron2text.js","names":["cronToText","cronspec","withSeconds","locale","NAMES","JAN","FEB","MAR","APR","MAY","JUN","JUL","AUG","SEP","OCT","NOV","DEC","SUN","MON","TUE","WED","THU","FRI","SAT","REPLACEMENTS","FIELDS","s","m","h","D","M","Y","d","getValue","value","offset","arguments","length","undefined","max","isNaN","Math","min","cloneSchedule","sched","clone","field","slice","add","name","inc","i","indexOf","push","sort","a","b","addHash","schedules","curSched","hash","dc","addWeekday","except1","except2","exceptions","addRange","item","incSplit","split","range","rangeSplit","parse","toString","replace","isHash","itemSorter","parseExpr","expr","schedule","components","f","component","items","prepareExpr","prepared","toUpperCase","parseCron","hasSeconds","e","absFloor","number","ceil","floor","toInt","argumentForCoercion","coercedNumber","isFinite","ordinal","output","ORDINALS","th","st","nd","rd","numberList","numbers","lastVal","pop","join","numberToDateName","type","DOW","MONTH","dateList","outputText","zeroPad","x","scheduleToSentence","Every","hm","j","k","and","_default","exports"],"sources":["SimpleCron/cron2text.js"],"sourcesContent":["/**\n * Given a cronspec, return the human-readable string.\n * @param {string} cronspec\n * @param withSeconds\n * @param {Object=} locale\n */\nfunction cronToText(cronspec, withSeconds, locale) {\n\n // Constant array to convert valid names to values\n const NAMES = {\n JAN: 1, FEB: 2, MAR: 3, APR: 4, MAY: 5, JUN: 6, JUL: 7, AUG: 8,\n SEP: 9, OCT: 10, NOV: 11, DEC: 12,\n SUN: 1, MON: 2, TUE: 3, WED: 4, THU: 5, FRI: 6, SAT: 7\n };\n\n // Parsable replacements for common expressions\n const REPLACEMENTS = {\n '* * * * * *': '0/1 * * * * *',\n '@YEARLY': '0 0 1 1 *',\n '@ANNUALLY': '0 0 1 1 *',\n '@MONTHLY': '0 0 1 * *',\n '@WEEKLY': '0 0 * * 0',\n '@DAILY': '0 0 * * *',\n '@HOURLY': '0 * * * *'\n };\n\n // Contains the index, min, and max for each of the constraints\n const FIELDS = {\n s: [0, 0, 59], // seconds\n m: [1, 0, 59], // minutes\n h: [2, 0, 23], // hours\n D: [3, 1, 31], // day of month\n M: [4, 1, 12], // month\n Y: [6, 1970, 2099], // year\n d: [5, 1, 7, 1] // day of week\n };\n\n /**\n * Returns the value + offset if value is a number, otherwise it\n * attempts to look up the value in the NAMES table and returns\n * that result instead.\n *\n * @param {Number,String} value: The value that should be parsed\n * @param {Number=} offset: Any offset that must be added to the value\n * @param {Number=} max\n * @returns {Number|null}\n */\n function getValue(value) {\n const offset = arguments.length <= 1 || arguments[1] === undefined ? 0 : arguments[1];\n const max = arguments.length <= 2 || arguments[2] === undefined ? 9999 : arguments[2];\n\n return isNaN(value) ? NAMES[value] || null : Math.min(+value + offset, max);\n }\n\n /**\n * Returns a deep clone of a schedule skipping any day of week\n * constraints.\n *\n * @param {Object} sched: The schedule that will be cloned\n * @returns {Object}\n */\n function cloneSchedule(sched) {\n const clone = {};\n let field;\n\n for (field in sched) {\n if (field !== 'dc' && field !== 'd') {\n clone[field] = sched[field].slice(0);\n }\n }\n\n return clone;\n }\n\n /**\n * Adds values to the specified constraint in the current schedule.\n *\n * @param {Object} sched: The schedule to add the constraint to\n * @param {String} name: Name of constraint to add\n * @param {Number} min: Minimum value for this constraint\n * @param {Number} max: Maximum value for this constraint\n */\n function add(sched, name, min, max) {\n const inc = arguments.length <= 4 || arguments[4] === undefined ? 0 : arguments[4];\n\n let i = min;\n\n if (!sched[name]) {\n sched[name] = [];\n }\n\n while (i <= max) {\n if (sched[name].indexOf(i) < 0) {\n sched[name].push(i);\n }\n i += inc || 1;\n }\n\n sched[name].sort(function (a, b) {\n return a - b;\n });\n }\n\n /**\n * Adds a hash item (of the form x#y or xL) to the schedule.\n *\n * @param {Object} schedules: The current schedule array to add to\n * @param {Object} curSched: The current schedule to add to\n * @param {Number} value: The value to add (x of x#y or xL)\n * @param {Number} hash: The hash value to add (y of x#y)\n */\n function addHash(schedules, curSched, value, hash) {\n // if there are any existing day of week constraints that\n // aren't equal to the one we're adding, create a new\n // composite schedule\n if ((curSched.d && !curSched.dc) || (curSched.dc && curSched.dc.indexOf(hash) < 0)) {\n schedules.push(cloneSchedule(curSched));\n curSched = schedules[schedules.length - 1];\n }\n\n add(curSched, 'd', value, value);\n add(curSched, 'dc', hash, hash);\n }\n\n /**\n *\n * @param {Object} s: The existing set of schedules\n * @param {Object} curSched: The current schedule to add to\n * @param {Number} value\n */\n function addWeekday(s, curSched, value) {\n const except1 = {},\n except2 = {};\n if (value === 1) {\n // cron doesn't pass month boundaries, so if 1st is a\n // weekend then we need to use 2nd or 3rd instead\n add(curSched, 'D', 1, 3);\n add(curSched, 'd', NAMES.MON, NAMES.FRI);\n add(except1, 'D', 2, 2);\n add(except1, 'd', NAMES.TUE, NAMES.FRI);\n add(except2, 'D', 3, 3);\n add(except2, 'd', NAMES.TUE, NAMES.FRI);\n } else {\n // normally you want the closest day, so if v is a\n // Saturday, use the previous Friday. If it's a\n // sunday, use the following Monday.\n add(curSched, 'D', value - 1, value + 1);\n add(curSched, 'd', NAMES.MON, NAMES.FRI);\n add(except1, 'D', value - 1, value - 1);\n add(except1, 'd', NAMES.MON, NAMES.THU);\n add(except2, 'D', value + 1, value + 1);\n add(except2, 'd', NAMES.TUE, NAMES.FRI);\n }\n s.exceptions.push(except1);\n s.exceptions.push(except2);\n }\n\n /**\n * Adds a range item (of the form x-y/z) to the schedule.\n *\n * @param {String} item: The cron expression item to add\n * @param {Object} curSched: The current schedule to add to\n * @param {String} name: The name to use for this constraint\n * @param {Number} min: The min value for the constraint\n * @param {Number} max: The max value for the constraint\n * @param {Number} offset: The offset to apply to the cron value\n */\n function addRange(item, curSched, name, min, max, offset) {\n // parse range/x\n const incSplit = item.split('/'),\n inc = +incSplit[1],\n range = incSplit[0];\n\n // parse x-y or * or 0\n if (range !== '*' && range !== '0') {\n const rangeSplit = range.split('-');\n min = getValue(rangeSplit[0], offset, max);\n\n // fix for issue #13, range may be single digit\n max = getValue(rangeSplit[1], offset, max) || max;\n }\n\n add(curSched, name, min, max, inc);\n }\n\n /**\n * Parses a particular item within a cron expression.\n *\n * @param {String} item: The cron expression item to parse\n * @param {Object} s: The existing set of schedules\n * @param {String} name: The name to use for this constraint\n * @param {Number} min: The min value for the constraint\n * @param {Number} max: The max value for the constraint\n * @param {Number} offset: The offset to apply to the cron value\n */\n function parse(item, s, name, min, max, offset) {\n let value,\n split,\n schedules = s.schedules,\n curSched = schedules[schedules.length - 1];\n\n // L just means min - 1 (this also makes it work for any field)\n if (item === 'L') {\n item = (min - 1).toString(10);\n }\n\n // parse x\n if ((value = getValue(item, offset, max)) !== null) {\n add(curSched, name, value, value);\n }\n // parse xW\n else if ((value = getValue(item.replace('W', ''), offset, max)) !== null) {\n addWeekday(s, curSched, value);\n }\n // parse xL\n else if ((value = getValue(item.replace('L', ''), offset, max)) !== null) {\n addHash(schedules, curSched, value, min - 1);\n }\n // parse x#y\n else if ((split = item.split('#')).length === 2) {\n value = getValue(split[0], offset, max);\n addHash(schedules, curSched, value, getValue(split[1]));\n }\n // parse x-y or x-y/z or */z or 0/z\n else {\n addRange(item, curSched, name, min, max, offset);\n }\n }\n\n /**\n * Returns true if the item is either of the form x#y or xL.\n *\n * @param {String} item: The expression item to check\n */\n function isHash(item) {\n return item.indexOf('#') > -1 || item.indexOf('L') > 0;\n }\n\n function itemSorter(a, b) {\n return isHash(a) && !isHash(b) ? 1 : a - b;\n }\n\n /**\n * Parses each of the fields in a cron expression. The expression must\n * include the seconds field, the year field is optional.\n *\n * @param {String} expr: The cron expression to parse\n */\n function parseExpr(expr) {\n const schedule = { schedules: [{}], exceptions: [] };\n const components = expr.replace(/(\\s)+/g, ' ').split(' ');\n let field;\n let f;\n let component;\n let items;\n\n for (field in FIELDS) {\n f = FIELDS[field];\n component = components[f[0]];\n if (component && component !== '*' && component !== '?') {\n // need to sort so that any #'s come last, otherwise\n // schedule clones to handle # won't contain all of the\n // other constraints\n items = component.split(',').sort(itemSorter);\n let i;\n const length = items.length;\n for (i = 0; i < length; i++) {\n parse(items[i], schedule, field, f[1], f[2], f[3]);\n }\n }\n }\n\n return schedule;\n }\n\n /**\n * Make cron expression parsable.\n *\n * @param {String} expr: The cron expression to prepare\n */\n function prepareExpr(expr) {\n const prepared = expr.toUpperCase();\n return REPLACEMENTS[prepared] || prepared;\n }\n\n function parseCron(expr, hasSeconds) {\n const e = prepareExpr(expr);\n return parseExpr(hasSeconds ? e : '0 ' + e);\n }\n\n const schedule = parseCron(cronspec, withSeconds);\n\n function absFloor(number) {\n if (number < 0) {\n return Math.ceil(number);\n } else {\n return Math.floor(number);\n }\n }\n\n function toInt(argumentForCoercion) {\n const coercedNumber = +argumentForCoercion;\n let value = 0;\n\n if (coercedNumber !== 0 && isFinite(coercedNumber)) {\n value = absFloor(coercedNumber);\n }\n\n return value;\n }\n\n function ordinal(number) {\n const b = number % 10,\n output = (toInt(number % 100 / 10) === 1) ? locale.ORDINALS.th :\n (b === 1) ? locale.ORDINALS.st :\n (b === 2) ? locale.ORDINALS.nd :\n (b === 3) ? locale.ORDINALS.rd : locale.ORDINALS.th;\n return number + output;\n }\n\n /**\n * For an array of numbers, e.g. a list of hours in a schedule,\n * return a string listing out all of the values (complete with\n * \"and\" plus ordinal text on the last item).\n * @param {Number[]} numbers\n * @returns {string}\n */\n function numberList(numbers) {\n if (numbers.length < 2) {\n return ordinal(numbers);\n }\n\n const lastVal = numbers.pop();\n return numbers.join(', ') + ' ' + locale['and'] + ' ' + ordinal(lastVal);\n }\n\n /**\n * Parse a number into day of week, or a month name;\n * used in dateList below.\n * @param {Number|String} value\n * @param {String} type\n * @returns {String}\n */\n function numberToDateName(value, type) {\n if (type === 'dow') {\n return locale.DOW[value - 1];\n } else if (type === 'mon') {\n return locale.MONTH[value - 1];\n }\n }\n\n /**\n * From an array of numbers corresponding to dates (given in type: either\n * days of the week, or months), return a string listing all the values.\n * @param {Number[]} numbers\n * @param {String} type\n * @returns {String}\n */\n function dateList(numbers, type) {\n if (numbers.length < 2) {\n return numberToDateName('' + numbers[0], type);\n }\n\n const lastVal = '' + numbers.pop();\n let outputText = '';\n\n for (let i = 0, value; (value = numbers[i]); i++) {\n if (outputText.length > 0) {\n outputText += ', ';\n }\n outputText += numberToDateName(value, type);\n }\n return outputText + ' ' + locale['and'] + ' ' + numberToDateName(lastVal, type);\n }\n\n /**\n * Pad to equivalent of sprintf('%02d').\n * @param {Number} x\n * @returns {string}\n */\n function zeroPad(x) {\n return (x < 10) ? '0' + x : x;\n }\n\n //----------------\n\n /**\n * Given a schedule, generate a friendly sentence description.\n * @param {Object} schedule\n * @param {boolean} withSeconds\n * @returns {string}\n */\n function scheduleToSentence(schedule, withSeconds) {\n let outputText = locale.Every + ' ';\n\n if (schedule['h'] && schedule['m'] && schedule['h'].length <= 2 && schedule['m'].length <= 2 && withSeconds && schedule['s'] && schedule['s'].length <= 2 ) {\n // If there are only one or two specified values for\n // hour or minute, print them in HH:MM:SS format\n\n const hm = [];\n for (let i = 0; i < schedule['h'].length; i++) {\n for (let j = 0; j < schedule['m'].length; j++) {\n for (let k = 0; k < schedule['s'].length; k++) {\n hm.push(zeroPad(schedule['h'][i]) + ':' + zeroPad(schedule['m'][j]) + ':' + zeroPad(schedule['s'][k]));\n }\n }\n }\n if (hm.length < 2) {\n outputText = locale['At'] + ' ' + hm[0];\n } else {\n const lastVal = hm.pop();\n outputText = locale['At'] + ' ' + hm.join(', ') + ' ' + locale.and + ' ' + lastVal;\n }\n if (!schedule['d'] && !schedule['D']) {\n outputText += ' ' + locale['every day'] + ' ';\n }\n } else\n if (schedule['h'] && schedule['m'] && schedule['h'].length <= 2 && schedule['m'].length <= 2) {\n // If there are only one or two specified values for\n // hour or minute, print them in HH:MM format\n\n const hm = [];\n for (let i = 0; i < schedule['h'].length; i++) {\n for (let j = 0; j < schedule['m'].length; j++) {\n hm.push(zeroPad(schedule['h'][i]) + ':' + zeroPad(schedule['m'][j]));\n }\n }\n if (hm.length < 2) {\n outputText = locale['At'] + ' ' + hm[0];\n } else {\n const lastVal = hm.pop();\n outputText = locale['At'] + ' ' + hm.join(', ') + ' ' + locale.and + ' ' + lastVal;\n }\n\n if (!schedule['d'] && !schedule['D']) {\n outputText += ' ' + locale['every day'] + ' ';\n }\n } else {\n // Otherwise, list out every specified hour/minute value.\n\n if (schedule['h']) { // runs only at specific hours\n if (schedule['m']) { // and only at specific minutes\n if (withSeconds) {\n if (!schedule['s'] || schedule['s'].length === 60) {\n outputText += locale['second of every'] + ' ' + numberList(schedule['m']) + ' ' + locale['minute past the'] + ' ' + numberList(schedule['h']) + ' ' + locale['hour'];\n } else {\n outputText += numberList(schedule['s']) + ' ' + locale['second of every'] + ' ' +numberList(schedule['m']) + ' ' + locale['minute past the'] + ' ' + numberList(schedule['h']) + ' ' + locale['hour'];\n }\n } else {\n outputText += numberList(schedule['m']) + ' ' + locale['minute past the'] + ' ' + numberList(schedule['h']) + ' ' + locale['hour'];\n }\n } else { // specific hours, but every minute\n if (withSeconds) {\n if (!schedule['s'] || schedule['s'].length === 60) {\n outputText += locale['second of every'] + ' ' + locale['minute of'] + ' ' + numberList(schedule['h']) + ' ' + locale['hour'];\n } else {\n outputText += numberList(schedule['s']) + ' ' + locale['second of every'] + ' ' + locale['minute of'] + ' ' + numberList(schedule['h']) + ' ' + locale['hour'];\n }\n } else {\n outputText += locale['minute of'] + ' ' + numberList(schedule['h']) + ' ' + locale['hour'];\n }\n }\n } else if (schedule['m']) { // every hour, but specific minutes\n if (withSeconds) {\n if (!schedule['s'] || schedule['s'].length === 60) {\n outputText += locale['second of every'] + ' ' + numberList(schedule['m']) + ' ' + locale['minute every hour'];\n } else {\n outputText += numberList(schedule['s']) + ' ' + locale['second of every'] + ' ' + numberList(schedule['m']) + ' ' + locale['minute every hour'];\n }\n } else {\n outputText += numberList(schedule['m']) + ' ' + locale['minute every hour'];\n }\n } else if (withSeconds) {\n if (!schedule['s'] || schedule['s'].length === 60) {\n outputText += locale['second'];\n } else {\n outputText += numberList(schedule['s']) + ' ' + locale['second'];\n }\n } else { // cronspec has \"*\" for both hour and minute\n outputText += locale['minute'];\n }\n }\n\n if (schedule['D']) { // runs only on specific day(s) of month\n outputText += (locale['on the'] ? ' ' + locale['on the'] + ' ' : ' ') + numberList(schedule['D']);\n if (!schedule['M']) {\n outputText += ' ' + locale['of every month'];\n }\n }\n\n if (schedule['d']) { // runs only on specific day(s) of week\n if (schedule['D']) {\n // if both day fields are specified, cron uses both; superuser.com/a/348372\n outputText += ' ' + locale['and every'] + ' ';\n } else {\n outputText += ' ' + locale['on'] + ' ';\n }\n outputText += dateList(schedule['d'], 'dow');\n }\n\n if (schedule['M']) {\n // runs only in specific months; put this output last\n outputText += ' ' + locale['in'] + ' ' + dateList(schedule['M'], 'mon');\n }\n\n return outputText;\n }\n\n return scheduleToSentence(schedule.schedules[0], withSeconds);\n}\n\nexport default cronToText;\n"],"mappings":"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"}
1
+ {"version":3,"file":"cron2text.js","names":["cronToText","cronspec","withSeconds","locale","NAMES","JAN","FEB","MAR","APR","MAY","JUN","JUL","AUG","SEP","OCT","NOV","DEC","SUN","MON","TUE","WED","THU","FRI","SAT","REPLACEMENTS","FIELDS","s","m","h","D","M","Y","d","getValue","value","offset","arguments","length","undefined","max","isNaN","Math","min","cloneSchedule","sched","clone","field","slice","add","name","inc","i","indexOf","push","sort","a","b","addHash","schedules","curSched","hash","dc","addWeekday","except1","except2","exceptions","addRange","item","incSplit","split","range","rangeSplit","parse","toString","replace","isHash","itemSorter","parseExpr","expr","schedule","components","f","component","items","prepareExpr","prepared","toUpperCase","parseCron","hasSeconds","e","absFloor","number","ceil","floor","toInt","argumentForCoercion","coercedNumber","isFinite","ordinal","output","ORDINALS","th","st","nd","rd","numberList","numbers","lastVal","pop","join","numberToDateName","type","DOW","MONTH","dateList","outputText","zeroPad","x","scheduleToSentence","Every","hm","j","k","and","_default","exports"],"sources":["SimpleCron/cron2text.js"],"sourcesContent":["/**\n * Given a cronspec, return the human-readable string.\n * @param {string} cronspec\n * @param withSeconds\n * @param {Object=} locale\n */\nfunction cronToText(cronspec, withSeconds, locale) {\n\n // Constant array to convert valid names to values\n const NAMES = {\n JAN: 1, FEB: 2, MAR: 3, APR: 4, MAY: 5, JUN: 6, JUL: 7, AUG: 8,\n SEP: 9, OCT: 10, NOV: 11, DEC: 12,\n SUN: 1, MON: 2, TUE: 3, WED: 4, THU: 5, FRI: 6, SAT: 7\n };\n\n // Parsable replacements for common expressions\n const REPLACEMENTS = {\n '* * * * * *': '0/1 * * * * *',\n '@YEARLY': '0 0 1 1 *',\n '@ANNUALLY': '0 0 1 1 *',\n '@MONTHLY': '0 0 1 * *',\n '@WEEKLY': '0 0 * * 0',\n '@DAILY': '0 0 * * *',\n '@HOURLY': '0 * * * *'\n };\n\n // Contains the index, min, and max for each of the constraints\n const FIELDS = {\n s: [0, 0, 59], // seconds\n m: [1, 0, 59], // minutes\n h: [2, 0, 23], // hours\n D: [3, 1, 31], // day of month\n M: [4, 1, 12], // month\n Y: [6, 1970, 2099], // year\n d: [5, 1, 7, 1] // day of week\n };\n\n /**\n * Returns the value + offset if value is a number, otherwise it\n * attempts to look up the value in the NAMES table and returns\n * that result instead.\n *\n * @param {Number,String} value: The value that should be parsed\n * @param {Number=} offset: Any offset that must be added to the value\n * @param {Number=} max\n * @returns {Number|null}\n */\n function getValue(value) {\n const offset = arguments.length <= 1 || arguments[1] === undefined ? 0 : arguments[1];\n const max = arguments.length <= 2 || arguments[2] === undefined ? 9999 : arguments[2];\n\n return isNaN(value) ? NAMES[value] || null : Math.min(+value + offset, max);\n }\n\n /**\n * Returns a deep clone of a schedule skipping any day of week\n * constraints.\n *\n * @param {Object} sched: The schedule that will be cloned\n * @returns {Object}\n */\n function cloneSchedule(sched) {\n const clone = {};\n let field;\n\n for (field in sched) {\n if (field !== 'dc' && field !== 'd') {\n clone[field] = sched[field].slice(0);\n }\n }\n\n return clone;\n }\n\n /**\n * Adds values to the specified constraint in the current schedule.\n *\n * @param {Object} sched: The schedule to add the constraint to\n * @param {String} name: Name of constraint to add\n * @param {Number} min: Minimum value for this constraint\n * @param {Number} max: Maximum value for this constraint\n */\n function add(sched, name, min, max) {\n const inc = arguments.length <= 4 || arguments[4] === undefined ? 0 : arguments[4];\n\n let i = min;\n\n if (!sched[name]) {\n sched[name] = [];\n }\n\n while (i <= max) {\n if (sched[name].indexOf(i) < 0) {\n sched[name].push(i);\n }\n i += inc || 1;\n }\n\n sched[name].sort(function (a, b) {\n return a - b;\n });\n }\n\n /**\n * Adds a hash item (of the form x#y or xL) to the schedule.\n *\n * @param {Object} schedules: The current schedule array to add to\n * @param {Object} curSched: The current schedule to add to\n * @param {Number} value: The value to add (x of x#y or xL)\n * @param {Number} hash: The hash value to add (y of x#y)\n */\n function addHash(schedules, curSched, value, hash) {\n // if there are any existing day of week constraints that\n // aren't equal to the one we're adding, create a new\n // composite schedule\n if ((curSched.d && !curSched.dc) || (curSched.dc && curSched.dc.indexOf(hash) < 0)) {\n schedules.push(cloneSchedule(curSched));\n curSched = schedules[schedules.length - 1];\n }\n\n add(curSched, 'd', value, value);\n add(curSched, 'dc', hash, hash);\n }\n\n /**\n *\n * @param {Object} s: The existing set of schedules\n * @param {Object} curSched: The current schedule to add to\n * @param {Number} value\n */\n function addWeekday(s, curSched, value) {\n const except1 = {},\n except2 = {};\n if (value === 1) {\n // cron doesn't pass month boundaries, so if 1st is a\n // weekend then we need to use 2nd or 3rd instead\n add(curSched, 'D', 1, 3);\n add(curSched, 'd', NAMES.MON, NAMES.FRI);\n add(except1, 'D', 2, 2);\n add(except1, 'd', NAMES.TUE, NAMES.FRI);\n add(except2, 'D', 3, 3);\n add(except2, 'd', NAMES.TUE, NAMES.FRI);\n } else {\n // normally you want the closest day, so if v is a\n // Saturday, use the previous Friday. If it's a\n // sunday, use the following Monday.\n add(curSched, 'D', value - 1, value + 1);\n add(curSched, 'd', NAMES.MON, NAMES.FRI);\n add(except1, 'D', value - 1, value - 1);\n add(except1, 'd', NAMES.MON, NAMES.THU);\n add(except2, 'D', value + 1, value + 1);\n add(except2, 'd', NAMES.TUE, NAMES.FRI);\n }\n s.exceptions.push(except1);\n s.exceptions.push(except2);\n }\n\n /**\n * Adds a range item (of the form x-y/z) to the schedule.\n *\n * @param {String} item: The cron expression item to add\n * @param {Object} curSched: The current schedule to add to\n * @param {String} name: The name to use for this constraint\n * @param {Number} min: The min value for the constraint\n * @param {Number} max: The max value for the constraint\n * @param {Number} offset: The offset to apply to the cron value\n */\n function addRange(item, curSched, name, min, max, offset) {\n // parse range/x\n const incSplit = item.split('/'),\n inc = +incSplit[1],\n range = incSplit[0];\n\n // parse x-y or * or 0\n if (range !== '*' && range !== '0') {\n const rangeSplit = range.split('-');\n min = getValue(rangeSplit[0], offset, max);\n\n // fix for issue #13, range may be single digit\n max = getValue(rangeSplit[1], offset, max) || max;\n }\n\n add(curSched, name, min, max, inc);\n }\n\n /**\n * Parses a particular item within a cron expression.\n *\n * @param {String} item: The cron expression item to parse\n * @param {Object} s: The existing set of schedules\n * @param {String} name: The name to use for this constraint\n * @param {Number} min: The min value for the constraint\n * @param {Number} max: The max value for the constraint\n * @param {Number} offset: The offset to apply to the cron value\n */\n function parse(item, s, name, min, max, offset) {\n let value,\n split,\n schedules = s.schedules,\n curSched = schedules[schedules.length - 1];\n\n // L just means min - 1 (this also makes it work for any field)\n if (item === 'L') {\n item = (min - 1).toString(10);\n }\n\n // parse x\n if ((value = getValue(item, offset, max)) !== null) {\n add(curSched, name, value, value);\n }\n // parse xW\n else if ((value = getValue(item.replace('W', ''), offset, max)) !== null) {\n addWeekday(s, curSched, value);\n }\n // parse xL\n else if ((value = getValue(item.replace('L', ''), offset, max)) !== null) {\n addHash(schedules, curSched, value, min - 1);\n }\n // parse x#y\n else if ((split = item.split('#')).length === 2) {\n value = getValue(split[0], offset, max);\n addHash(schedules, curSched, value, getValue(split[1]));\n }\n // parse x-y or x-y/z or */z or 0/z\n else {\n addRange(item, curSched, name, min, max, offset);\n }\n }\n\n /**\n * Returns true if the item is either of the form x#y or xL.\n *\n * @param {String} item: The expression item to check\n */\n function isHash(item) {\n return item.indexOf('#') > -1 || item.indexOf('L') > 0;\n }\n\n function itemSorter(a, b) {\n return isHash(a) && !isHash(b) ? 1 : a - b;\n }\n\n /**\n * Parses each of the fields in a cron expression. The expression must\n * include the seconds field, the year field is optional.\n *\n * @param {String} expr: The cron expression to parse\n */\n function parseExpr(expr) {\n const schedule = { schedules: [{}], exceptions: [] };\n const components = expr.replace(/(\\s)+/g, ' ').split(' ');\n let field;\n let f;\n let component;\n let items;\n\n for (field in FIELDS) {\n f = FIELDS[field];\n component = components[f[0]];\n if (component && component !== '*' && component !== '?') {\n // need to sort so that any #'s come last, otherwise\n // schedule clones to handle # won't contain all of the\n // other constraints\n items = component.split(',').sort(itemSorter);\n let i;\n const length = items.length;\n for (i = 0; i < length; i++) {\n parse(items[i], schedule, field, f[1], f[2], f[3]);\n }\n }\n }\n\n return schedule;\n }\n\n /**\n * Make cron expression parsable.\n *\n * @param {String} expr: The cron expression to prepare\n */\n function prepareExpr(expr) {\n const prepared = expr.toUpperCase();\n return REPLACEMENTS[prepared] || prepared;\n }\n\n function parseCron(expr, hasSeconds) {\n const e = prepareExpr(expr);\n return parseExpr(hasSeconds ? e : '0 ' + e);\n }\n\n const schedule = parseCron(cronspec, withSeconds);\n\n function absFloor(number) {\n if (number < 0) {\n return Math.ceil(number);\n } else {\n return Math.floor(number);\n }\n }\n\n function toInt(argumentForCoercion) {\n const coercedNumber = +argumentForCoercion;\n let value = 0;\n\n if (coercedNumber !== 0 && isFinite(coercedNumber)) {\n value = absFloor(coercedNumber);\n }\n\n return value;\n }\n\n function ordinal(number) {\n const b = number % 10,\n output = (toInt(number % 100 / 10) === 1) ? locale.ORDINALS.th :\n (b === 1) ? locale.ORDINALS.st :\n (b === 2) ? locale.ORDINALS.nd :\n (b === 3) ? locale.ORDINALS.rd : locale.ORDINALS.th;\n return number + output;\n }\n\n /**\n * For an array of numbers, e.g. a list of hours in a schedule,\n * return a string listing out all of the values (complete with\n * \"and\" plus ordinal text on the last item).\n * @param {Number[]} numbers\n * @returns {string}\n */\n function numberList(numbers) {\n if (numbers.length < 2) {\n return ordinal(numbers);\n }\n\n const lastVal = numbers.pop();\n return numbers.join(', ') + ' ' + locale['and'] + ' ' + ordinal(lastVal);\n }\n\n /**\n * Parse a number into day of week, or a month name;\n * used in dateList below.\n * @param {Number|String} value\n * @param {String} type\n * @returns {String}\n */\n function numberToDateName(value, type) {\n if (type === 'dow') {\n return locale.DOW[value - 1];\n } else if (type === 'mon') {\n return locale.MONTH[value - 1];\n }\n }\n\n /**\n * From an array of numbers corresponding to dates (given in type: either\n * days of the week, or months), return a string listing all the values.\n * @param {Number[]} numbers\n * @param {String} type\n * @returns {String}\n */\n function dateList(numbers, type) {\n if (numbers.length < 2) {\n return numberToDateName('' + numbers[0], type);\n }\n\n const lastVal = '' + numbers.pop();\n let outputText = '';\n\n for (let i = 0, value; (value = numbers[i]); i++) {\n if (outputText.length > 0) {\n outputText += ', ';\n }\n outputText += numberToDateName(value, type);\n }\n return outputText + ' ' + locale['and'] + ' ' + numberToDateName(lastVal, type);\n }\n\n /**\n * Pad to equivalent of sprintf('%02d').\n * @param {Number} x\n * @returns {string}\n */\n function zeroPad(x) {\n return (x < 10) ? '0' + x : x;\n }\n\n //----------------\n\n /**\n * Given a schedule, generate a friendly sentence description.\n * @param {Object} schedule\n * @param {boolean} withSeconds\n * @returns {string}\n */\n function scheduleToSentence(schedule, withSeconds) {\n let outputText = locale.Every + ' ';\n\n if (schedule['h'] && schedule['m'] && schedule['h'].length <= 2 && schedule['m'].length <= 2 && withSeconds && schedule['s'] && schedule['s'].length <= 2 ) {\n // If there are only one or two specified values for\n // hour or minute, print them in HH:MM:SS format\n\n const hm = [];\n for (let i = 0; i < schedule['h'].length; i++) {\n for (let j = 0; j < schedule['m'].length; j++) {\n for (let k = 0; k < schedule['s'].length; k++) {\n hm.push(zeroPad(schedule['h'][i]) + ':' + zeroPad(schedule['m'][j]) + ':' + zeroPad(schedule['s'][k]));\n }\n }\n }\n if (hm.length < 2) {\n outputText = locale['At'] + ' ' + hm[0];\n } else {\n const lastVal = hm.pop();\n outputText = locale['At'] + ' ' + hm.join(', ') + ' ' + locale.and + ' ' + lastVal;\n }\n if (!schedule['d'] && !schedule['D']) {\n outputText += ' ' + locale['every day'] + ' ';\n }\n } else\n if (schedule['h'] && schedule['m'] && schedule['h'].length <= 2 && schedule['m'].length <= 2) {\n // If there are only one or two specified values for\n // hour or minute, print them in HH:MM format\n\n const hm = [];\n for (let i = 0; i < schedule['h'].length; i++) {\n for (let j = 0; j < schedule['m'].length; j++) {\n hm.push(zeroPad(schedule['h'][i]) + ':' + zeroPad(schedule['m'][j]));\n }\n }\n if (hm.length < 2) {\n outputText = locale['At'] + ' ' + hm[0];\n } else {\n const lastVal = hm.pop();\n outputText = locale['At'] + ' ' + hm.join(', ') + ' ' + locale.and + ' ' + lastVal;\n }\n\n if (!schedule['d'] && !schedule['D']) {\n outputText += ' ' + locale['every day'] + ' ';\n }\n } else {\n // Otherwise, list out every specified hour/minute value.\n\n if (schedule['h']) { // runs only at specific hours\n if (schedule['m']) { // and only at specific minutes\n if (withSeconds) {\n if (!schedule['s'] || schedule['s'].length === 60) {\n outputText += locale['second of every'] + ' ' + numberList(schedule['m']) + ' ' + locale['minute past the'] + ' ' + numberList(schedule['h']) + ' ' + locale['hour'];\n } else {\n outputText += numberList(schedule['s']) + ' ' + locale['second of every'] + ' ' +numberList(schedule['m']) + ' ' + locale['minute past the'] + ' ' + numberList(schedule['h']) + ' ' + locale['hour'];\n }\n } else {\n outputText += numberList(schedule['m']) + ' ' + locale['minute past the'] + ' ' + numberList(schedule['h']) + ' ' + locale['hour'];\n }\n } else { // specific hours, but every minute\n if (withSeconds) {\n if (!schedule['s'] || schedule['s'].length === 60) {\n outputText += locale['second of every'] + ' ' + locale['minute of'] + ' ' + numberList(schedule['h']) + ' ' + locale['hour'];\n } else {\n outputText += numberList(schedule['s']) + ' ' + locale['second of every'] + ' ' + locale['minute of'] + ' ' + numberList(schedule['h']) + ' ' + locale['hour'];\n }\n } else {\n outputText += locale['minute of'] + ' ' + numberList(schedule['h']) + ' ' + locale['hour'];\n }\n }\n } else if (schedule['m']) { // every hour, but specific minutes\n if (withSeconds) {\n if (!schedule['s'] || schedule['s'].length === 60) {\n outputText += locale['second of every'] + ' ' + numberList(schedule['m']) + ' ' + locale['minute every hour'];\n } else {\n outputText += numberList(schedule['s']) + ' ' + locale['second of every'] + ' ' + numberList(schedule['m']) + ' ' + locale['minute every hour'];\n }\n } else {\n outputText += numberList(schedule['m']) + ' ' + locale['minute every hour'];\n }\n } else if (withSeconds) {\n if (!schedule['s'] || schedule['s'].length === 60) {\n outputText += locale['second'];\n } else {\n outputText += numberList(schedule['s']) + ' ' + locale['second'];\n }\n } else { // cronspec has \"*\" for both hour and minute\n outputText += locale['minute'];\n }\n }\n\n if (schedule['D']) { // runs only on specific day(s) of month\n outputText += (locale['on the'] ? ' ' + locale['on the'] + ' ' : ' ') + numberList(schedule['D']);\n if (!schedule['M']) {\n outputText += ' ' + locale['of every month'];\n }\n }\n\n if (schedule['d']) { // runs only on specific day(s) of week\n if (schedule['D']) {\n // if both day fields are specified, cron uses both; superuser.com/a/348372\n outputText += ' ' + locale['and every'] + ' ';\n } else {\n outputText += ' ' + locale['on'] + ' ';\n }\n outputText += dateList(schedule['d'], 'dow');\n }\n\n if (schedule['M']) {\n // runs only in specific months; put this output last\n outputText += ' ' + locale['in'] + ' ' + dateList(schedule['M'], 'mon');\n }\n\n return outputText;\n }\n\n return scheduleToSentence(schedule.schedules[0], withSeconds);\n}\n\nexport default cronToText;\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_react","_interopRequireDefault","require","_propTypes","_withStyles","_InputLabel","_MenuItem","_FormControl","_Select","_TextField","_FormControlLabel","_Checkbox","_cronText","_i18n","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","result","NewTarget","constructor","Reflect","construct","arguments","apply","_possibleConstructorReturn2","sham","Proxy","Boolean","prototype","valueOf","call","e","styles","mainDiv","width","height","overflow","formControl","margin","minWidth","formControlMarginRight","marginRight","formControlPaddingTop","paddingTop","PERIODIC","once","interval","intervalBetween","specific","PERIODIC_TYPES","seconds","minutes","WEEKDAYS","padding","num","concat","DEFAULT_STATE","mode","period","unit","SimpleCron","_React$Component","_inherits2","_super","props","_this","_classCallCheck2","cron","cronExpression","replace","state","cron2state","extended","state2cron","time","date","timeFrom","timeTo","weekdays","Object","assign","setTimeout","onChange","_createClass2","key","value","recalcCron","getControlsWeekdaysElements","type","_this2","settings","createElement","style","paddingLeft","maxWidth","I18n","t","map","day","control","checked","indexOf","JSON","parse","stringify","pos","target","push","splice","sort","setState","_defineProperty2","toString","label","getControlsPeriodElements","_this3","display","marginBottom","variant","marginTop","verticalAlign","parseInt","min","max","InputLabelProps","shrink","hours","keys","getControlsTime","_this4","className","classes","root","getControlsDate","_this5","d","Date","getDate","getMonth","inputProps","getOnceElements","marginLeft","getIntervalElements","getIntervalBetweenElements","_this6","htmlFor","hour","getSpecificTimeElements","onModeChange","_this7","render","_this8","disabled","convertCronToText","language","name","id","periodArray2text","list","length","text","start","end","i","join","text2weekdays","parts","split","forEach","part","_parts","includes","trim","cronParts","options","months","dow","undefined","partsDate","month","React","Component","propTypes","PropTypes","string","func","_default","withStyles","exports"],"sources":["SimpleCron/index.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport withStyles from '@mui/styles/withStyles';\n\nimport InputLabel from '@mui/material/InputLabel';\nimport MenuItem from '@mui/material/MenuItem';\nimport FormControl from '@mui/material/FormControl';\nimport Select from '@mui/material/Select';\nimport TextField from '@mui/material/TextField';\nimport FormControlLabel from '@mui/material/FormControlLabel';\nimport Checkbox from '@mui/material/Checkbox';\n\nimport convertCronToText from './cronText';\n\nimport I18n from '../../i18n';\n\nconst styles = () => ({\n mainDiv: {\n width: '100%',\n height: '100%',\n overflow: 'auto',\n },\n formControl: {\n margin: 0,\n minWidth: 120,\n },\n formControlMarginRight: {\n marginRight: 5,\n },\n formControlPaddingTop: {\n paddingTop: 6.2,\n },\n});\n\nconst PERIODIC = {\n once: 'once',\n interval: 'interval',\n intervalBetween: 'intervalBetween',\n specific: 'specific',\n};\nconst PERIODIC_TYPES = {\n seconds: 'seconds',\n minutes: 'minutes',\n // hours: 'hours',\n};\nconst WEEKDAYS = [\n 'Sunday',\n 'Monday',\n 'Tuesday',\n 'Wednesday',\n 'Thursday',\n 'Friday',\n 'Saturday',\n 'Sunday',\n];\n\nfunction padding(num) {\n if (num < 10) {\n return `0${num}`;\n } else {\n return `${num}`;\n }\n}\nconst DEFAULT_STATE = {\n mode: PERIODIC.interval,\n interval: {\n period: 1,\n unit: PERIODIC_TYPES.minutes,\n },\n};\n\nclass SimpleCron extends React.Component {\n constructor(props) {\n super(props);\n let cron = typeof this.props.cronExpression === 'string' ? this.props.cronExpression.replace(/^[\"']/, '').replace(/[\"']\\n?$/, '') : '';\n if (cron[0] === '{') {\n cron = '';\n }\n const state = SimpleCron.cron2state(cron || '* * * * *') || DEFAULT_STATE;\n\n this.state = {\n extended: false,\n cron: SimpleCron.state2cron(state),\n mode: 'interval',\n once: {\n time: '00:00',\n date: '',\n },\n interval: {\n period: 1,\n unit: PERIODIC_TYPES.minutes,\n },\n intervalBetween: {\n period: 1,\n unit: PERIODIC_TYPES.minutes,\n timeFrom: 0,\n timeTo: 24,\n weekdays: [0, 1, 2, 3, 4, 5, 6],\n },\n specific: {\n time: '00:00',\n weekdays: [0, 1, 2, 3, 4, 5, 6],\n },\n };\n Object.assign(this.state, state);\n\n if (this.state.cron !== this.props.cronExpression) {\n setTimeout(() => this.props.onChange && this.props.onChange(this.state.cron), 100);\n }\n }\n\n static periodArray2text(list, max) {\n max = max || 7;\n if (list.length === max) {\n return '*';\n } else {\n let text = [];\n let start = null;\n let end = null;\n for (let i = 0; i < list.length; i++) {\n if (start === null) {\n start = list[i];\n end = list[i];\n } else if (list[i - 1] + 1 === list[i]) {\n end = list[i];\n } else {\n if (start !== end) {\n text.push(`${start}-${end}`);\n } else {\n text.push(start);\n }\n start = list[i];\n end = list[i];\n }\n }\n if (start !== end) {\n text.push(`${start}-${end}`);\n } else {\n text.push(start);\n }\n return text.join(',');\n }\n }\n\n static text2weekdays(text) {\n if (text === '*') {\n return [0,1,2,3,4,5,6];\n }\n const parts = text.split(',');\n const list = [];\n parts.forEach(part => {\n const _parts = part.split('-');\n if (_parts.length === 2) {\n const start = parseInt(_parts[0], 10);\n const end = parseInt(_parts[1], 10);\n for (let day = start; day <= end; day++) {\n if (!list.includes(day === 7 ? 0 : day)) {\n list.push(day === 7 ? 0 : day);\n }\n }\n } else {\n if (part === '7') {\n part = 0;\n }\n part = parseInt(part, 10);\n if (!list.includes(part)) {\n list.push(part);\n }\n }\n });\n list.sort();\n return list;\n }\n\n static cron2state(cron) {\n cron = cron.replace(/['\"]/g, '').trim();\n const cronParts = cron.split(' ');\n const options = {};\n const state = {\n mode: ''\n };\n if (cronParts.length === 6) {\n options.seconds = cronParts[0] || '*';\n options.minutes = cronParts[1] || '*';\n options.hours = cronParts[2] || '*';\n options.date = cronParts[3] || '*';\n options.months = cronParts[4] || '*';\n options.dow = cronParts[5] || '*';\n } else {\n options.seconds = null;\n options.minutes = cronParts[0] || '*';\n options.hours = cronParts[1] || '*';\n options.date = cronParts[2] || '*';\n options.months = cronParts[3] || '*';\n options.dow = cronParts[4] || '*';\n }\n\n // * * * * *\n if (options.seconds === null &&\n options.minutes === '*' &&\n options.hours === '*' &&\n options.date === '*' &&\n options.months === '*'\n ) {\n state.mode = PERIODIC.interval;\n state.interval = {\n period: 1,\n unit: PERIODIC_TYPES.minutes,\n };\n } // * * * * * *\n if (options.seconds === '*' &&\n options.minutes === '*' &&\n options.hours === '*' &&\n options.date === '*' &&\n options.months === '*'\n ) {\n state.mode = PERIODIC.interval;\n state.interval = {\n period: 1,\n unit: PERIODIC_TYPES.seconds,\n };\n } else// */n * * * *\n if (options.seconds === null &&\n options.minutes.includes('/') &&\n options.hours === '*' &&\n options.date === '*' &&\n options.months === '*'\n ) {\n state.mode = PERIODIC.interval;\n state.interval = {\n period: parseInt(options.minutes.split('/')[1], 10),\n unit: PERIODIC_TYPES.minutes,\n };\n } else\n // */n * * * * *\n if (options.seconds !== null &&\n options.seconds.includes('/') &&\n options.minutes === '*' &&\n options.hours === '*' &&\n options.date === '*' &&\n options.months === '*'\n ) {\n state.mode = PERIODIC.interval;\n state.interval = {\n period: parseInt(options.seconds.split('/')[1], 10),\n unit: PERIODIC_TYPES.seconds,\n };\n } else\n // */n * 1-24 * * 1-7 or */n * 1-24 * * *\n if (options.seconds !== null &&\n options.seconds.includes('/') &&\n options.minutes === '*' &&\n options.hours.includes('-') &&\n options.date === '*' &&\n options.months === '*'\n ) {\n state.mode = PERIODIC.intervalBetween;\n state.intervalBetween = {\n period: parseInt(options.seconds.split('/')[1], 10),\n unit: PERIODIC_TYPES.seconds,\n timeFrom: parseInt(options.hours.split('-')[0], 10),\n timeTo: parseInt(options.hours.split('-')[1], 10),\n weekdays: SimpleCron.text2weekdays(options.dow),\n };\n } else\n // */n 1-24 * * 1-7 or */n 1-24 * * *\n if (options.seconds === null &&\n options.minutes.includes('/') &&\n options.hours.includes('-') &&\n options.date === '*' &&\n options.months === '*'\n ) {\n state.mode = PERIODIC.intervalBetween;\n state.intervalBetween = {\n period: parseInt(options.minutes.split('/')[1], 10),\n unit: PERIODIC_TYPES.minutes,\n timeFrom: parseInt(options.hours.split('-')[0], 10),\n timeTo: parseInt(options.hours.split('-')[1], 10),\n weekdays: SimpleCron.text2weekdays(options.dow),\n };\n } else\n // m h * * 1-7 or m h * * *\n if (options.seconds === null &&\n parseInt(options.minutes, 10).toString() === options.minutes &&\n parseInt(options.hours, 10).toString() === options.hours &&\n options.date === '*' &&\n options.months === '*') {\n state.mode = PERIODIC.specific;\n state.specific = {\n time: `${padding(parseInt(options.hours, 10))}:${padding(parseInt(options.minutes, 10))}`,\n weekdays: SimpleCron.text2weekdays(options.dow),\n };\n } else\n // m h d M *\n if (options.seconds === null &&\n parseInt(options.minutes, 10).toString() === options.minutes &&\n parseInt(options.hours, 10).toString() === options.hours &&\n parseInt(options.date, 10).toString() === options.date &&\n parseInt(options.months, 10).toString() === options.months &&\n options.dow === '*'\n ) {\n state.mode = PERIODIC.once;\n state.once = {\n time: `${padding(parseInt(options.hours, 10))}:${padding(parseInt(options.minutes, 10))}`,\n date: `${padding(parseInt(options.date, 10))}.${padding(parseInt(options.months, 10))}`,\n // ignored\n weekdays: SimpleCron.text2weekdays(options.dow),\n }\n }\n\n if (state.mode) {\n return state;\n } else {\n return null;\n }\n }\n\n static state2cron(state) {\n let cron = '* * * * *';\n if (state.mode === PERIODIC.interval) {\n const settings = state.interval || {};\n if (settings.period > 60) settings.period = 60;\n if (settings.period < 1) settings.period = 1;\n\n if (settings.minutes > 60) settings.minutes = 60;\n if (settings.minutes < 1) settings.minutes = 1;\n\n if (settings.hours > 24) settings.hours = 24;\n if (settings.hours < 1) settings.hours = 1;\n\n if (state.extended) {\n cron = `${settings.minutes > 1 ? `*/${settings.minutes}` : '*'} ${settings.hours > 1 ? `*/${settings.hours}` : '*'} * * *`;\n } else {\n switch (settings.unit) {\n case PERIODIC_TYPES.seconds:\n cron = `${settings.period > 1 ? `*/${settings.period}` : '*'} * * * * *`;\n break;\n case PERIODIC_TYPES.minutes:\n cron = `${settings.period > 1 ? `*/${settings.period}` : '*'} * * * *`;\n break;\n default:\n break;\n }\n }\n } else if (state.mode === PERIODIC.intervalBetween) {\n const settings = state.intervalBetween || {};\n let hours;\n settings.timeFrom = settings.timeFrom || 0;\n settings.timeTo = settings.timeTo === undefined ? 24 : settings.timeTo;\n if (settings.timeFrom === 0 && settings.timeTo === 24) {\n hours = '*';\n } else {\n hours = settings.timeFrom !== settings.timeTo ? `${settings.timeFrom}-${settings.timeTo}` : '*';\n }\n if (settings.period > 60) settings.period = 60;\n if (settings.period < 1) settings.period = 1;\n settings.unit = settings.unit || PERIODIC_TYPES.minutes;\n switch (settings.unit) {\n case PERIODIC_TYPES.seconds:\n cron = `${settings.period > 1 ? `*/${settings.period}` : '*'} * ${hours} * * ${this.periodArray2text(settings.weekdays)}`;\n break;\n case PERIODIC_TYPES.minutes:\n cron = `${settings.period > 1 ? `*/${settings.period}` : '*'} ${hours} * * ${this.periodArray2text(settings.weekdays)}`;\n break;\n default:\n break;\n }\n } else if (state.mode === PERIODIC.specific) {\n const settings = state.specific || {};\n const parts = (settings.time || '00:00').split(':');\n let minutes = parseInt(parts[1], 10) || 0;\n if (minutes > 59) minutes = 59;\n if (minutes < 0) minutes = 0;\n let hours = parseInt(parts[0], 10) || 0;\n if (hours > 23) hours = 59;\n if (hours < 0) hours = 0;\n\n cron = `${minutes} ${hours} * * ${this.periodArray2text(settings.weekdays || [])}`;\n } else if (state.mode === PERIODIC.once) {\n const settings = state.once || {};\n if (!settings.date) {\n settings.date = `${new Date().getDate()}.${padding(new Date().getMonth() + 1)}`;\n }\n const parts = (settings.time || '00:00').split(':');\n const partsDate = settings.date.split('.');\n let minutes = parseInt(parts[1], 10) || 0;\n if (minutes > 59) minutes = 59;\n if (minutes < 0) minutes = 0;\n let hours = parseInt(parts[0], 10) || 0;\n if (hours > 23) hours = 59;\n if (hours < 0) hours = 0;\n let date = parseInt(partsDate[0], 10) || 1;\n if (date > 31) date = 31;\n if (date < 1) hours = 1;\n let month = parseInt(partsDate[1], 10) || 1;\n if (month > 12) month = 12;\n if (month < 1) month = 1;\n\n cron = `${minutes} ${hours} ${date} ${month} *`;\n }\n return cron;\n }\n\n recalcCron() {\n this.onChange(SimpleCron.state2cron(this.state));\n }\n\n getControlsWeekdaysElements(type) {\n const settings = this.state[type];\n return <div key=\"weekdays\" style={{ paddingLeft: 8, width: '100%', maxWidth: 600 }}>\n <h5>{I18n.t('ra_On weekdays')}</h5>\n {[1,2,3,4,5,6,0].map(day => (\n <FormControlLabel\n key={WEEKDAYS[day]}\n control={\n <Checkbox\n checked={settings.weekdays.indexOf(day) !== -1}\n onChange={e => {\n const settings = JSON.parse(JSON.stringify(this.state[type]));\n const pos = settings.weekdays.indexOf(day);\n e.target.checked && pos === -1 && settings.weekdays.push(day);\n !e.target.checked && pos !== -1 && settings.weekdays.splice(pos, 1);\n settings.weekdays.sort();\n this.setState({ [type]: settings }, () => this.recalcCron());\n }}\n value={day.toString()}\n />\n }\n label={I18n.t(WEEKDAYS[day])}\n />))\n }</div>;\n }\n\n getControlsPeriodElements(type) {\n const settings = this.state[type];\n\n if (this.state.extended) {\n return <div key=\"period\" style={{ paddingLeft: 8, display: 'inline-block' }}>\n <h5 style={{ marginBottom: 5 }}>{I18n.t('sc_period')}</h5>\n <TextField\n variant=\"standard\"\n style={{ marginTop: 0, marginBottom: 0, verticalAlign: 'bottom' }}\n key=\"value\"\n label={I18n.t('sc_minutes')}\n value={settings.minutes}\n onChange={e => {\n const settings = JSON.parse(JSON.stringify(this.state[type]));\n settings.minutes = parseInt(e.target.value, 10);\n if (settings.minutes < 1) {\n settings.minutes = 1;\n }\n this.setState({ [type]: settings }, () => this.recalcCron());\n }}\n min={1}\n max={60}\n type=\"number\"\n InputLabelProps={{ shrink: true }}\n margin=\"normal\"\n />\n <TextField\n variant=\"standard\"\n style={{ marginTop: 0, marginBottom: 0, verticalAlign: 'bottom' }}\n key=\"value\"\n label={I18n.t('sc_hours')}\n value={settings.hours}\n onChange={e => {\n const settings = JSON.parse(JSON.stringify(this.state[type]));\n settings.hours = parseInt(e.target.value, 10);\n if (settings.hours < 1) {\n settings.hours = 1;\n }\n this.setState({[type]: settings}, () => this.recalcCron());\n }}\n min={1}\n max={24}\n type=\"number\"\n InputLabelProps={{ shrink: true }}\n margin=\"normal\"\n />\n </div>;\n } else {\n return <div key=\"period\" style={{ paddingLeft: 8, display: 'inline-block' }}>\n <h5 style={{ marginBottom: 5 }}>{I18n.t('sc_period')}</h5>\n <TextField\n variant=\"standard\"\n style={{ marginTop: 0, marginBottom: 0, verticalAlign: 'bottom' }}\n key=\"value\"\n label={I18n.t('sc_every')}\n value={settings.period}\n onChange={e => {\n const settings = JSON.parse(JSON.stringify(this.state[type]));\n settings.period = parseInt(e.target.value, 10);\n if (settings.period < 1) {\n settings.period = 1;\n }\n this.setState({ [type]: settings }, () => this.recalcCron());\n }}\n min={1}\n max={60}\n type=\"number\"\n InputLabelProps={{ shrink: true }}\n margin=\"normal\"\n />\n <Select\n variant=\"standard\"\n style={{verticalAlign: 'bottom'}}\n value={settings.unit}\n onChange={e => {\n const settings = JSON.parse(JSON.stringify(this.state[type]));\n settings.unit = e.target.value;\n this.setState({ [type]: settings }, () => this.recalcCron());\n }}\n >\n {Object.keys(PERIODIC_TYPES).map(mode =>\n <MenuItem key={PERIODIC_TYPES[mode]} value={PERIODIC_TYPES[mode]}>{I18n.t(`sc_${PERIODIC_TYPES[mode]}`)}</MenuItem>)}\n </Select>\n </div>;\n }\n }\n\n getControlsTime(type) {\n const settings = this.state[type];\n return <FormControl variant=\"standard\" className={this.props.classes.formControl} classes={{root: this.props.classes.formControlMarginRight}}>\n <TextField\n variant=\"standard\"\n key=\"at\"\n label={I18n.t('sc_time')}\n value={settings.time}\n type=\"time\"\n onChange={e => {\n const settings = JSON.parse(JSON.stringify(this.state[type]));\n settings.time = e.target.value;\n this.setState({ [type]: settings }, () => this.recalcCron());\n }}\n InputLabelProps={{ shrink: true }}\n margin=\"normal\"\n />\n </FormControl>;\n }\n\n getControlsDate(type) {\n const settings = this.state[type];\n\n if (!settings.date) {\n const d = new Date();\n settings.date = `${d.getDate()}.${padding(d.getMonth() + 1)}`;\n }\n\n //<InputLabel htmlFor=\"formatted-text-mask-input\">{I18n.t('sc_at')}</InputLabel>\n return <FormControl variant=\"standard\" className={this.props.classes.formControl}>\n <TextField\n variant=\"standard\"\n key=\"date\"\n label={I18n.t('sc_date')}\n value={settings.date}\n type=\"text\"\n inputProps={{ className: this.props.classes.formControlPaddingTop }}\n onChange={e => {\n const settings = JSON.parse(JSON.stringify(this.state[type]));\n settings.date = e.target.value;\n this.setState({ [type]: settings }, () => this.recalcCron());\n }}\n InputLabelProps={{ shrink: true }}\n margin=\"normal\"\n />\n </FormControl>;\n }\n\n getOnceElements() {\n return <div style={{ marginLeft: 8 }}>\n {this.getControlsTime('once')}\n {this.getControlsDate('once')}\n </div>;\n }\n\n getIntervalElements() {\n return this.getControlsPeriodElements('interval');\n }\n\n getIntervalBetweenElements() {\n const settings = this.state.intervalBetween;\n return [\n this.getControlsPeriodElements('intervalBetween'),\n <div key=\"between\" style={{ paddingLeft: 8, display: 'inline-block', verticalAlign: 'top' }}>\n <h5 style={{ marginBottom: 5 }}>{I18n.t('sc_hours')}</h5>\n <FormControl variant=\"standard\" className={this.props.classes.formControl}>\n <InputLabel shrink htmlFor=\"age-label-placeholder\">{I18n.t('sc_from')}</InputLabel>\n <Select\n variant=\"standard\"\n style={{ width: 100 }}\n value={settings.timeFrom}\n onChange={e => {\n const settings = JSON.parse(JSON.stringify(this.state.intervalBetween));\n settings.timeFrom = parseInt(e.target.value, 10);\n this.setState({ intervalBetween: settings }, () => this.recalcCron());\n }}\n >\n {[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23].map(hour => (<MenuItem key={`B_${hour}`} value={hour}>{`${padding(hour)}:00`}</MenuItem>))}\n </Select>\n </FormControl>\n <FormControl variant=\"standard\" className={this.props.classes.formControl}>\n <InputLabel shrink htmlFor=\"age-label-placeholder\">{I18n.t('sc_to')}</InputLabel>\n <Select\n variant=\"standard\"\n style={{ width: 100 }}\n value={settings.timeTo}\n onChange={e => {\n const settings = JSON.parse(JSON.stringify(this.state.intervalBetween));\n settings.timeTo = parseInt(e.target.value, 10);\n this.setState({ intervalBetween: settings }, () => this.recalcCron());\n }}\n >\n {[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24].map(hour => (<MenuItem key={`A_${hour}`} value={hour}>{`${padding(hour)}:00`}</MenuItem>))}\n </Select>\n </FormControl>\n </div>,\n this.getControlsWeekdaysElements('intervalBetween'),\n ];\n }\n\n getSpecificTimeElements() {\n return [\n <div key=\"time\" style={{ marginLeft: 8 }}>{this.getControlsTime('specific')}</div>,\n this.getControlsWeekdaysElements('specific'),\n ]\n }\n\n onModeChange(mode) {\n if (mode !== this.state.mode) {\n this.setState({ mode }, () => this.recalcCron());\n }\n }\n\n onChange(cron) {\n if (cron !== this.state.cron) {\n this.setState({ cron });\n this.props.onChange && this.props.onChange(cron);\n }\n }\n\n render() {\n return <div className={this.props.classes.mainDiv}>\n <div style={{ paddingLeft: 8, width: '100%' }}><TextField style={{ width: '100%' }} value={this.state.cron} disabled/></div>\n <div style={{ paddingLeft: 8, width: '100%', height: 60 }}>{convertCronToText(this.state.cron, this.props.language || 'en')}</div>\n <div><FormControl variant=\"standard\" style={{ marginLeft: 8, marginTop: 8 }} className={this.props.classes.formControl}>\n <InputLabel>{I18n.t('ra_Repeat')}</InputLabel>\n <Select\n variant=\"standard\"\n value={this.state.mode}\n onChange={e => this.onModeChange(e.target.value)}\n inputProps={{ name: 'mode', id: 'mode' }}>\n {Object.keys(PERIODIC).map(mode =>\n <MenuItem key={PERIODIC[mode]} value={PERIODIC[mode]}>{I18n.t(`sc_${PERIODIC[mode]}`)}</MenuItem>)}\n </Select>\n </FormControl></div>\n {this.state.mode === PERIODIC.once && this.getOnceElements()}\n {this.state.mode === PERIODIC.interval && this.getIntervalElements()}\n {this.state.mode === PERIODIC.intervalBetween && this.getIntervalBetweenElements()}\n {this.state.mode === PERIODIC.specific && this.getSpecificTimeElements()}\n </div>;\n }\n}\n\nSimpleCron.propTypes = {\n cronExpression: PropTypes.string,\n onChange: PropTypes.func,\n language: PropTypes.string,\n};\n\nexport default withStyles(styles)(SimpleCron);\n\n"],"mappings":";;;;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,WAAA,GAAAH,sBAAA,CAAAC,OAAA;AAEA,IAAAG,WAAA,GAAAJ,sBAAA,CAAAC,OAAA;AACA,IAAAI,SAAA,GAAAL,sBAAA,CAAAC,OAAA;AACA,IAAAK,YAAA,GAAAN,sBAAA,CAAAC,OAAA;AACA,IAAAM,OAAA,GAAAP,sBAAA,CAAAC,OAAA;AACA,IAAAO,UAAA,GAAAR,sBAAA,CAAAC,OAAA;AACA,IAAAQ,iBAAA,GAAAT,sBAAA,CAAAC,OAAA;AACA,IAAAS,SAAA,GAAAV,sBAAA,CAAAC,OAAA;AAEA,IAAAU,SAAA,GAAAX,sBAAA,CAAAC,OAAA;AAEA,IAAAW,KAAA,GAAAZ,sBAAA,CAAAC,OAAA;AAA8B,SAAAY,aAAAC,OAAA,QAAAC,yBAAA,GAAAC,yBAAA,oBAAAC,qBAAA,QAAAC,KAAA,OAAAC,gBAAA,aAAAL,OAAA,GAAAM,MAAA,MAAAL,yBAAA,QAAAM,SAAA,OAAAF,gBAAA,mBAAAG,WAAA,EAAAF,MAAA,GAAAG,OAAA,CAAAC,SAAA,CAAAN,KAAA,EAAAO,SAAA,EAAAJ,SAAA,YAAAD,MAAA,GAAAF,KAAA,CAAAQ,KAAA,OAAAD,SAAA,gBAAAE,2BAAA,mBAAAP,MAAA;AAAA,SAAAJ,0BAAA,eAAAO,OAAA,qBAAAA,OAAA,CAAAC,SAAA,oBAAAD,OAAA,CAAAC,SAAA,CAAAI,IAAA,2BAAAC,KAAA,oCAAAC,OAAA,CAAAC,SAAA,CAAAC,OAAA,CAAAC,IAAA,CAAAV,OAAA,CAAAC,SAAA,CAAAM,OAAA,8CAAAI,CAAA;AAE9B,IAAMC,MAAM,GAAG,SAATA,MAAMA,CAAA;EAAA,OAAU;IAClBC,OAAO,EAAE;MACLC,KAAK,EAAE,MAAM;MACbC,MAAM,EAAE,MAAM;MACdC,QAAQ,EAAE;IACd,CAAC;IACDC,WAAW,EAAE;MACTC,MAAM,EAAE,CAAC;MACTC,QAAQ,EAAE;IACd,CAAC;IACDC,sBAAsB,EAAE;MACpBC,WAAW,EAAE;IACjB,CAAC;IACDC,qBAAqB,EAAE;MACnBC,UAAU,EAAE;IAChB;EACJ,CAAC;AAAA,CAAC;AAEF,IAAMC,QAAQ,GAAG;EACbC,IAAI,EAAE,MAAM;EACZC,QAAQ,EAAE,UAAU;EACpBC,eAAe,EAAE,iBAAiB;EAClCC,QAAQ,EAAE;AACd,CAAC;AACD,IAAMC,cAAc,GAAG;EACnBC,OAAO,EAAE,SAAS;EAClBC,OAAO,EAAE;EACT;AACJ,CAAC;;AACD,IAAMC,QAAQ,GAAG,CACb,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,WAAW,EACX,UAAU,EACV,QAAQ,EACR,UAAU,EACV,QAAQ,CACX;AAED,SAASC,OAAOA,CAACC,GAAG,EAAE;EAClB,IAAIA,GAAG,GAAG,EAAE,EAAE;IACV,WAAAC,MAAA,CAAWD,GAAG;EAClB,CAAC,MAAM;IACH,UAAAC,MAAA,CAAUD,GAAG;EACjB;AACJ;AACA,IAAME,aAAa,GAAG;EAClBC,IAAI,EAAEb,QAAQ,CAACE,QAAQ;EACvBA,QAAQ,EAAE;IACNY,MAAM,EAAE,CAAC;IACTC,IAAI,EAAEV,cAAc,CAACE;EACzB;AACJ,CAAC;AAAC,IAEIS,UAAU,0BAAAC,gBAAA;EAAA,IAAAC,UAAA,aAAAF,UAAA,EAAAC,gBAAA;EAAA,IAAAE,MAAA,GAAArD,YAAA,CAAAkD,UAAA;EACZ,SAAAA,WAAYI,KAAK,EAAE;IAAA,IAAAC,KAAA;IAAA,IAAAC,gBAAA,mBAAAN,UAAA;IACfK,KAAA,GAAAF,MAAA,CAAAjC,IAAA,OAAMkC,KAAK;IACX,IAAIG,IAAI,GAAG,OAAOF,KAAA,CAAKD,KAAK,CAACI,cAAc,KAAK,QAAQ,GAAGH,KAAA,CAAKD,KAAK,CAACI,cAAc,CAACC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAACA,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,GAAG,EAAE;IACtI,IAAIF,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;MACjBA,IAAI,GAAG,EAAE;IACb;IACA,IAAMG,KAAK,GAAGV,UAAU,CAACW,UAAU,CAACJ,IAAI,IAAI,WAAW,CAAC,IAAIX,aAAa;IAEzES,KAAA,CAAKK,KAAK,GAAG;MACTE,QAAQ,EAAE,KAAK;MACfL,IAAI,EAAEP,UAAU,CAACa,UAAU,CAACH,KAAK,CAAC;MAClCb,IAAI,EAAE,UAAU;MAChBZ,IAAI,EAAE;QACF6B,IAAI,EAAE,OAAO;QACbC,IAAI,EAAE;MACV,CAAC;MACD7B,QAAQ,EAAE;QACNY,MAAM,EAAE,CAAC;QACTC,IAAI,EAAEV,cAAc,CAACE;MACzB,CAAC;MACDJ,eAAe,EAAE;QACbW,MAAM,EAAE,CAAC;QACTC,IAAI,EAAEV,cAAc,CAACE,OAAO;QAC5ByB,QAAQ,EAAE,CAAC;QACXC,MAAM,EAAE,EAAE;QACVC,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;MAClC,CAAC;MACD9B,QAAQ,EAAE;QACN0B,IAAI,EAAE,OAAO;QACbI,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;MAClC;IACJ,CAAC;IACDC,MAAM,CAACC,MAAM,CAACf,KAAA,CAAKK,KAAK,EAAEA,KAAK,CAAC;IAEhC,IAAIL,KAAA,CAAKK,KAAK,CAACH,IAAI,KAAKF,KAAA,CAAKD,KAAK,CAACI,cAAc,EAAE;MAC/Ca,UAAU,CAAC;QAAA,OAAMhB,KAAA,CAAKD,KAAK,CAACkB,QAAQ,IAAIjB,KAAA,CAAKD,KAAK,CAACkB,QAAQ,CAACjB,KAAA,CAAKK,KAAK,CAACH,IAAI,CAAC;MAAA,GAAE,GAAG,CAAC;IACtF;IAAC,OAAAF,KAAA;EACL;EAAC,IAAAkB,aAAA,aAAAvB,UAAA;IAAAwB,GAAA;IAAAC,KAAA,EAsSD,SAAAC,WAAA,EAAa;MACT,IAAI,CAACJ,QAAQ,CAACtB,UAAU,CAACa,UAAU,CAAC,IAAI,CAACH,KAAK,CAAC,CAAC;IACpD;EAAC;IAAAc,GAAA;IAAAC,KAAA,EAED,SAAAE,4BAA4BC,IAAI,EAAE;MAAA,IAAAC,MAAA;MAC9B,IAAMC,QAAQ,GAAG,IAAI,CAACpB,KAAK,CAACkB,IAAI,CAAC;MACjC,oBAAO5F,MAAA,YAAA+F,aAAA;QAAKP,GAAG,EAAC,UAAU;QAACQ,KAAK,EAAE;UAAEC,WAAW,EAAE,CAAC;UAAE3D,KAAK,EAAE,MAAM;UAAE4D,QAAQ,EAAE;QAAI;MAAE,gBAC/ElG,MAAA,YAAA+F,aAAA,aAAKI,gBAAI,CAACC,CAAC,CAAC,gBAAgB,CAAC,CAAM,EAClC,CAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,CAAC,CAACC,GAAG,CAAC,UAAAC,GAAG;QAAA,oBACpBtG,MAAA,YAAA+F,aAAA,CAACrF,iBAAA,WAAgB;UACb8E,GAAG,EAAEhC,QAAQ,CAAC8C,GAAG,CAAE;UACnBC,OAAO,eACHvG,MAAA,YAAA+F,aAAA,CAACpF,SAAA,WAAQ;YACL6F,OAAO,EAAEV,QAAQ,CAACZ,QAAQ,CAACuB,OAAO,CAACH,GAAG,CAAC,KAAK,CAAC,CAAE;YAC/ChB,QAAQ,EAAE,SAAAA,SAAAnD,CAAC,EAAI;cACX,IAAM2D,QAAQ,GAAGY,IAAI,CAACC,KAAK,CAACD,IAAI,CAACE,SAAS,CAACf,MAAI,CAACnB,KAAK,CAACkB,IAAI,CAAC,CAAC,CAAC;cAC7D,IAAMiB,GAAG,GAAGf,QAAQ,CAACZ,QAAQ,CAACuB,OAAO,CAACH,GAAG,CAAC;cAC1CnE,CAAC,CAAC2E,MAAM,CAACN,OAAO,IAAIK,GAAG,KAAK,CAAC,CAAC,IAAIf,QAAQ,CAACZ,QAAQ,CAAC6B,IAAI,CAACT,GAAG,CAAC;cAC7D,CAACnE,CAAC,CAAC2E,MAAM,CAACN,OAAO,IAAIK,GAAG,KAAK,CAAC,CAAC,IAAIf,QAAQ,CAACZ,QAAQ,CAAC8B,MAAM,CAACH,GAAG,EAAE,CAAC,CAAC;cACnEf,QAAQ,CAACZ,QAAQ,CAAC+B,IAAI,EAAE;cACxBpB,MAAI,CAACqB,QAAQ,KAAAC,gBAAA,iBAAIvB,IAAI,EAAGE,QAAQ,GAAI;gBAAA,OAAMD,MAAI,CAACH,UAAU,EAAE;cAAA,EAAC;YAChE,CAAE;YACFD,KAAK,EAAEa,GAAG,CAACc,QAAQ;UAAG,EAE7B;UACDC,KAAK,EAAElB,gBAAI,CAACC,CAAC,CAAC5C,QAAQ,CAAC8C,GAAG,CAAC;QAAE,EAC/B;MAAA,CAAC,CAAC,CACD;IACf;EAAC;IAAAd,GAAA;IAAAC,KAAA,EAED,SAAA6B,0BAA0B1B,IAAI,EAAE;MAAA,IAAA2B,MAAA;MAC5B,IAAMzB,QAAQ,GAAG,IAAI,CAACpB,KAAK,CAACkB,IAAI,CAAC;MAEjC,IAAI,IAAI,CAAClB,KAAK,CAACE,QAAQ,EAAE;QACrB,oBAAO5E,MAAA,YAAA+F,aAAA;UAAKP,GAAG,EAAC,QAAQ;UAACQ,KAAK,EAAE;YAAEC,WAAW,EAAE,CAAC;YAAEuB,OAAO,EAAE;UAAe;QAAE,gBACxExH,MAAA,YAAA+F,aAAA;UAAIC,KAAK,EAAE;YAAEyB,YAAY,EAAE;UAAE;QAAE,GAAEtB,gBAAI,CAACC,CAAC,CAAC,WAAW,CAAC,CAAM,eAC1DpG,MAAA,YAAA+F,aAAA,CAACtF,UAAA,WAAS;UACNiH,OAAO,EAAC,UAAU;UAClB1B,KAAK,EAAE;YAAE2B,SAAS,EAAE,CAAC;YAAEF,YAAY,EAAE,CAAC;YAAEG,aAAa,EAAE;UAAS,CAAE;UAClEpC,GAAG,EAAC,OAAO;UACX6B,KAAK,EAAElB,gBAAI,CAACC,CAAC,CAAC,YAAY,CAAE;UAC5BX,KAAK,EAAEK,QAAQ,CAACvC,OAAQ;UACxB+B,QAAQ,EAAE,SAAAA,SAAAnD,CAAC,EAAI;YACX,IAAM2D,QAAQ,GAAGY,IAAI,CAACC,KAAK,CAACD,IAAI,CAACE,SAAS,CAACW,MAAI,CAAC7C,KAAK,CAACkB,IAAI,CAAC,CAAC,CAAC;YAC7DE,QAAQ,CAACvC,OAAO,GAAGsE,QAAQ,CAAC1F,CAAC,CAAC2E,MAAM,CAACrB,KAAK,EAAE,EAAE,CAAC;YAC/C,IAAIK,QAAQ,CAACvC,OAAO,GAAG,CAAC,EAAE;cACtBuC,QAAQ,CAACvC,OAAO,GAAG,CAAC;YACxB;YACAgE,MAAI,CAACL,QAAQ,KAAAC,gBAAA,iBAAIvB,IAAI,EAAGE,QAAQ,GAAI;cAAA,OAAMyB,MAAI,CAAC7B,UAAU,EAAE;YAAA,EAAC;UAChE,CAAE;UACFoC,GAAG,EAAE,CAAE;UACPC,GAAG,EAAE,EAAG;UACRnC,IAAI,EAAC,QAAQ;UACboC,eAAe,EAAE;YAAEC,MAAM,EAAE;UAAK,CAAE;UAClCvF,MAAM,EAAC;QAAQ,EACjB,eACF1C,MAAA,YAAA+F,aAAA,CAACtF,UAAA,WAAS;UACNiH,OAAO,EAAC,UAAU;UAClB1B,KAAK,EAAE;YAAE2B,SAAS,EAAE,CAAC;YAAEF,YAAY,EAAE,CAAC;YAAEG,aAAa,EAAE;UAAS,CAAE;UAClEpC,GAAG,EAAC,OAAO;UACX6B,KAAK,EAAElB,gBAAI,CAACC,CAAC,CAAC,UAAU,CAAE;UAC1BX,KAAK,EAAEK,QAAQ,CAACoC,KAAM;UACtB5C,QAAQ,EAAE,SAAAA,SAAAnD,CAAC,EAAI;YACX,IAAM2D,QAAQ,GAAGY,IAAI,CAACC,KAAK,CAACD,IAAI,CAACE,SAAS,CAACW,MAAI,CAAC7C,KAAK,CAACkB,IAAI,CAAC,CAAC,CAAC;YAC7DE,QAAQ,CAACoC,KAAK,GAAGL,QAAQ,CAAC1F,CAAC,CAAC2E,MAAM,CAACrB,KAAK,EAAE,EAAE,CAAC;YAC7C,IAAIK,QAAQ,CAACoC,KAAK,GAAG,CAAC,EAAE;cACpBpC,QAAQ,CAACoC,KAAK,GAAG,CAAC;YACtB;YACAX,MAAI,CAACL,QAAQ,KAAAC,gBAAA,iBAAGvB,IAAI,EAAGE,QAAQ,GAAG;cAAA,OAAMyB,MAAI,CAAC7B,UAAU,EAAE;YAAA,EAAC;UAC9D,CAAE;UACFoC,GAAG,EAAE,CAAE;UACPC,GAAG,EAAE,EAAG;UACRnC,IAAI,EAAC,QAAQ;UACboC,eAAe,EAAE;YAAEC,MAAM,EAAE;UAAK,CAAE;UAClCvF,MAAM,EAAC;QAAQ,EACjB,CACA;MACV,CAAC,MAAM;QACH,oBAAO1C,MAAA,YAAA+F,aAAA;UAAKP,GAAG,EAAC,QAAQ;UAACQ,KAAK,EAAE;YAAEC,WAAW,EAAE,CAAC;YAAEuB,OAAO,EAAE;UAAe;QAAE,gBACxExH,MAAA,YAAA+F,aAAA;UAAIC,KAAK,EAAE;YAAEyB,YAAY,EAAE;UAAE;QAAE,GAAEtB,gBAAI,CAACC,CAAC,CAAC,WAAW,CAAC,CAAM,eAC1DpG,MAAA,YAAA+F,aAAA,CAACtF,UAAA,WAAS;UACNiH,OAAO,EAAC,UAAU;UAClB1B,KAAK,EAAE;YAAE2B,SAAS,EAAE,CAAC;YAAEF,YAAY,EAAE,CAAC;YAAEG,aAAa,EAAE;UAAS,CAAE;UAClEpC,GAAG,EAAC,OAAO;UACX6B,KAAK,EAAElB,gBAAI,CAACC,CAAC,CAAC,UAAU,CAAE;UAC1BX,KAAK,EAAEK,QAAQ,CAAChC,MAAO;UACvBwB,QAAQ,EAAE,SAAAA,SAAAnD,CAAC,EAAI;YACX,IAAM2D,QAAQ,GAAGY,IAAI,CAACC,KAAK,CAACD,IAAI,CAACE,SAAS,CAACW,MAAI,CAAC7C,KAAK,CAACkB,IAAI,CAAC,CAAC,CAAC;YAC7DE,QAAQ,CAAChC,MAAM,GAAG+D,QAAQ,CAAC1F,CAAC,CAAC2E,MAAM,CAACrB,KAAK,EAAE,EAAE,CAAC;YAC9C,IAAIK,QAAQ,CAAChC,MAAM,GAAG,CAAC,EAAE;cACrBgC,QAAQ,CAAChC,MAAM,GAAG,CAAC;YACvB;YACAyD,MAAI,CAACL,QAAQ,KAAAC,gBAAA,iBAAIvB,IAAI,EAAGE,QAAQ,GAAI;cAAA,OAAMyB,MAAI,CAAC7B,UAAU,EAAE;YAAA,EAAC;UAChE,CAAE;UACFoC,GAAG,EAAE,CAAE;UACPC,GAAG,EAAE,EAAG;UACRnC,IAAI,EAAC,QAAQ;UACboC,eAAe,EAAE;YAAEC,MAAM,EAAE;UAAK,CAAE;UAClCvF,MAAM,EAAC;QAAQ,EACjB,eACF1C,MAAA,YAAA+F,aAAA,CAACvF,OAAA,WAAM;UACHkH,OAAO,EAAC,UAAU;UAClB1B,KAAK,EAAE;YAAC4B,aAAa,EAAE;UAAQ,CAAE;UACjCnC,KAAK,EAAEK,QAAQ,CAAC/B,IAAK;UACrBuB,QAAQ,EAAE,SAAAA,SAAAnD,CAAC,EAAI;YACX,IAAM2D,QAAQ,GAAGY,IAAI,CAACC,KAAK,CAACD,IAAI,CAACE,SAAS,CAACW,MAAI,CAAC7C,KAAK,CAACkB,IAAI,CAAC,CAAC,CAAC;YAC7DE,QAAQ,CAAC/B,IAAI,GAAG5B,CAAC,CAAC2E,MAAM,CAACrB,KAAK;YAC9B8B,MAAI,CAACL,QAAQ,KAAAC,gBAAA,iBAAIvB,IAAI,EAAGE,QAAQ,GAAI;cAAA,OAAMyB,MAAI,CAAC7B,UAAU,EAAE;YAAA,EAAC;UAChE;QAAE,GAEDP,MAAM,CAACgD,IAAI,CAAC9E,cAAc,CAAC,CAACgD,GAAG,CAAC,UAAAxC,IAAI;UAAA,oBACjC7D,MAAA,YAAA+F,aAAA,CAACzF,SAAA,WAAQ;YAACkF,GAAG,EAAEnC,cAAc,CAACQ,IAAI,CAAE;YAAC4B,KAAK,EAAEpC,cAAc,CAACQ,IAAI;UAAE,GAAEsC,gBAAI,CAACC,CAAC,OAAAzC,MAAA,CAAON,cAAc,CAACQ,IAAI,CAAC,EAAG,CAAY;QAAA,EAAC,CACnH,CACP;MACV;IACJ;EAAC;IAAA2B,GAAA;IAAAC,KAAA,EAED,SAAA2C,gBAAgBxC,IAAI,EAAE;MAAA,IAAAyC,MAAA;MAClB,IAAMvC,QAAQ,GAAG,IAAI,CAACpB,KAAK,CAACkB,IAAI,CAAC;MACjC,oBAAO5F,MAAA,YAAA+F,aAAA,CAACxF,YAAA,WAAW;QAACmH,OAAO,EAAC,UAAU;QAACY,SAAS,EAAE,IAAI,CAAClE,KAAK,CAACmE,OAAO,CAAC9F,WAAY;QAAC8F,OAAO,EAAE;UAACC,IAAI,EAAE,IAAI,CAACpE,KAAK,CAACmE,OAAO,CAAC3F;QAAsB;MAAE,gBACzI5C,MAAA,YAAA+F,aAAA,CAACtF,UAAA,WAAS;QACNiH,OAAO,EAAC,UAAU;QAClBlC,GAAG,EAAC,IAAI;QACR6B,KAAK,EAAElB,gBAAI,CAACC,CAAC,CAAC,SAAS,CAAE;QACzBX,KAAK,EAAEK,QAAQ,CAAChB,IAAK;QACrBc,IAAI,EAAC,MAAM;QACXN,QAAQ,EAAE,SAAAA,SAAAnD,CAAC,EAAI;UACX,IAAM2D,QAAQ,GAAGY,IAAI,CAACC,KAAK,CAACD,IAAI,CAACE,SAAS,CAACyB,MAAI,CAAC3D,KAAK,CAACkB,IAAI,CAAC,CAAC,CAAC;UAC7DE,QAAQ,CAAChB,IAAI,GAAG3C,CAAC,CAAC2E,MAAM,CAACrB,KAAK;UAC9B4C,MAAI,CAACnB,QAAQ,KAAAC,gBAAA,iBAAIvB,IAAI,EAAGE,QAAQ,GAAI;YAAA,OAAMuC,MAAI,CAAC3C,UAAU,EAAE;UAAA,EAAC;QAChE,CAAE;QACFsC,eAAe,EAAE;UAAEC,MAAM,EAAE;QAAK,CAAE;QAClCvF,MAAM,EAAC;MAAQ,EACjB,CACQ;IAClB;EAAC;IAAA8C,GAAA;IAAAC,KAAA,EAED,SAAAgD,gBAAgB7C,IAAI,EAAE;MAAA,IAAA8C,MAAA;MAClB,IAAM5C,QAAQ,GAAG,IAAI,CAACpB,KAAK,CAACkB,IAAI,CAAC;MAEjC,IAAI,CAACE,QAAQ,CAACf,IAAI,EAAE;QAChB,IAAM4D,CAAC,GAAG,IAAIC,IAAI,EAAE;QACpB9C,QAAQ,CAACf,IAAI,MAAApB,MAAA,CAAMgF,CAAC,CAACE,OAAO,EAAE,OAAAlF,MAAA,CAAIF,OAAO,CAACkF,CAAC,CAACG,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAE;MACjE;;MAEA;MACA,oBAAO9I,MAAA,YAAA+F,aAAA,CAACxF,YAAA,WAAW;QAACmH,OAAO,EAAC,UAAU;QAACY,SAAS,EAAE,IAAI,CAAClE,KAAK,CAACmE,OAAO,CAAC9F;MAAY,gBAC7EzC,MAAA,YAAA+F,aAAA,CAACtF,UAAA,WAAS;QACNiH,OAAO,EAAC,UAAU;QAClBlC,GAAG,EAAC,MAAM;QACV6B,KAAK,EAAElB,gBAAI,CAACC,CAAC,CAAC,SAAS,CAAE;QACzBX,KAAK,EAAEK,QAAQ,CAACf,IAAK;QACrBa,IAAI,EAAC,MAAM;QACXmD,UAAU,EAAE;UAAET,SAAS,EAAE,IAAI,CAAClE,KAAK,CAACmE,OAAO,CAACzF;QAAsB,CAAE;QACpEwC,QAAQ,EAAE,SAAAA,SAAAnD,CAAC,EAAI;UACX,IAAM2D,QAAQ,GAAGY,IAAI,CAACC,KAAK,CAACD,IAAI,CAACE,SAAS,CAAC8B,MAAI,CAAChE,KAAK,CAACkB,IAAI,CAAC,CAAC,CAAC;UAC7DE,QAAQ,CAACf,IAAI,GAAG5C,CAAC,CAAC2E,MAAM,CAACrB,KAAK;UAC9BiD,MAAI,CAACxB,QAAQ,KAAAC,gBAAA,iBAAIvB,IAAI,EAAGE,QAAQ,GAAI;YAAA,OAAM4C,MAAI,CAAChD,UAAU,EAAE;UAAA,EAAC;QAChE,CAAE;QACFsC,eAAe,EAAE;UAAEC,MAAM,EAAE;QAAK,CAAE;QAClCvF,MAAM,EAAC;MAAQ,EACjB,CACQ;IAClB;EAAC;IAAA8C,GAAA;IAAAC,KAAA,EAED,SAAAuD,gBAAA,EAAkB;MACd,oBAAOhJ,MAAA,YAAA+F,aAAA;QAAKC,KAAK,EAAE;UAAEiD,UAAU,EAAE;QAAE;MAAE,GAChC,IAAI,CAACb,eAAe,CAAC,MAAM,CAAC,EAC5B,IAAI,CAACK,eAAe,CAAC,MAAM,CAAC,CAC3B;IACV;EAAC;IAAAjD,GAAA;IAAAC,KAAA,EAED,SAAAyD,oBAAA,EAAsB;MAClB,OAAO,IAAI,CAAC5B,yBAAyB,CAAC,UAAU,CAAC;IACrD;EAAC;IAAA9B,GAAA;IAAAC,KAAA,EAED,SAAA0D,2BAAA,EAA6B;MAAA,IAAAC,MAAA;MACzB,IAAMtD,QAAQ,GAAG,IAAI,CAACpB,KAAK,CAACvB,eAAe;MAC3C,OAAO,CACH,IAAI,CAACmE,yBAAyB,CAAC,iBAAiB,CAAC,eACjDtH,MAAA,YAAA+F,aAAA;QAAKP,GAAG,EAAC,SAAS;QAACQ,KAAK,EAAE;UAAEC,WAAW,EAAE,CAAC;UAAEuB,OAAO,EAAE,cAAc;UAAEI,aAAa,EAAE;QAAM;MAAE,gBACxF5H,MAAA,YAAA+F,aAAA;QAAIC,KAAK,EAAE;UAAEyB,YAAY,EAAE;QAAE;MAAE,GAAEtB,gBAAI,CAACC,CAAC,CAAC,UAAU,CAAC,CAAM,eACzDpG,MAAA,YAAA+F,aAAA,CAACxF,YAAA,WAAW;QAACmH,OAAO,EAAC,UAAU;QAACY,SAAS,EAAE,IAAI,CAAClE,KAAK,CAACmE,OAAO,CAAC9F;MAAY,gBACtEzC,MAAA,YAAA+F,aAAA,CAAC1F,WAAA,WAAU;QAAC4H,MAAM;QAACoB,OAAO,EAAC;MAAuB,GAAElD,gBAAI,CAACC,CAAC,CAAC,SAAS,CAAC,CAAc,eACnFpG,MAAA,YAAA+F,aAAA,CAACvF,OAAA,WAAM;QACHkH,OAAO,EAAC,UAAU;QAClB1B,KAAK,EAAE;UAAE1D,KAAK,EAAE;QAAI,CAAE;QACtBmD,KAAK,EAAEK,QAAQ,CAACd,QAAS;QACzBM,QAAQ,EAAE,SAAAA,SAAAnD,CAAC,EAAI;UACX,IAAM2D,QAAQ,GAAGY,IAAI,CAACC,KAAK,CAACD,IAAI,CAACE,SAAS,CAACwC,MAAI,CAAC1E,KAAK,CAACvB,eAAe,CAAC,CAAC;UACvE2C,QAAQ,CAACd,QAAQ,GAAG6C,QAAQ,CAAC1F,CAAC,CAAC2E,MAAM,CAACrB,KAAK,EAAE,EAAE,CAAC;UAChD2D,MAAI,CAAClC,QAAQ,CAAC;YAAE/D,eAAe,EAAE2C;UAAS,CAAC,EAAE;YAAA,OAAMsD,MAAI,CAAC1D,UAAU,EAAE;UAAA,EAAC;QACzE;MAAE,GAEL,CAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,CAAC,CAACW,GAAG,CAAC,UAAAiD,IAAI;QAAA,oBAAKtJ,MAAA,YAAA+F,aAAA,CAACzF,SAAA,WAAQ;UAACkF,GAAG,OAAA7B,MAAA,CAAO2F,IAAI,CAAG;UAAC7D,KAAK,EAAE6D;QAAK,MAAA3F,MAAA,CAAKF,OAAO,CAAC6F,IAAI,CAAC,SAAiB;MAAA,CAAC,CAAC,CACtJ,CACK,eACdtJ,MAAA,YAAA+F,aAAA,CAACxF,YAAA,WAAW;QAACmH,OAAO,EAAC,UAAU;QAACY,SAAS,EAAE,IAAI,CAAClE,KAAK,CAACmE,OAAO,CAAC9F;MAAY,gBACtEzC,MAAA,YAAA+F,aAAA,CAAC1F,WAAA,WAAU;QAAC4H,MAAM;QAACoB,OAAO,EAAC;MAAuB,GAAElD,gBAAI,CAACC,CAAC,CAAC,OAAO,CAAC,CAAc,eACjFpG,MAAA,YAAA+F,aAAA,CAACvF,OAAA,WAAM;QACHkH,OAAO,EAAC,UAAU;QAClB1B,KAAK,EAAE;UAAE1D,KAAK,EAAE;QAAI,CAAE;QACtBmD,KAAK,EAAEK,QAAQ,CAACb,MAAO;QACvBK,QAAQ,EAAE,SAAAA,SAAAnD,CAAC,EAAI;UACX,IAAM2D,QAAQ,GAAGY,IAAI,CAACC,KAAK,CAACD,IAAI,CAACE,SAAS,CAACwC,MAAI,CAAC1E,KAAK,CAACvB,eAAe,CAAC,CAAC;UACvE2C,QAAQ,CAACb,MAAM,GAAG4C,QAAQ,CAAC1F,CAAC,CAAC2E,MAAM,CAACrB,KAAK,EAAE,EAAE,CAAC;UAC9C2D,MAAI,CAAClC,QAAQ,CAAC;YAAE/D,eAAe,EAAE2C;UAAS,CAAC,EAAE;YAAA,OAAMsD,MAAI,CAAC1D,UAAU,EAAE;UAAA,EAAC;QACzE;MAAE,GAED,CAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,CAAC,CAACW,GAAG,CAAC,UAAAiD,IAAI;QAAA,oBAAKtJ,MAAA,YAAA+F,aAAA,CAACzF,SAAA,WAAQ;UAACkF,GAAG,OAAA7B,MAAA,CAAO2F,IAAI,CAAG;UAAC7D,KAAK,EAAE6D;QAAK,MAAA3F,MAAA,CAAKF,OAAO,CAAC6F,IAAI,CAAC,SAAiB;MAAA,CAAC,CAAC,CACvJ,CACC,CACZ,EACN,IAAI,CAAC3D,2BAA2B,CAAC,iBAAiB,CAAC,CACtD;IACL;EAAC;IAAAH,GAAA;IAAAC,KAAA,EAED,SAAA8D,wBAAA,EAA0B;MACtB,OAAO,cACHvJ,MAAA,YAAA+F,aAAA;QAAKP,GAAG,EAAC,MAAM;QAACQ,KAAK,EAAE;UAAEiD,UAAU,EAAE;QAAE;MAAE,GAAE,IAAI,CAACb,eAAe,CAAC,UAAU,CAAC,CAAO,EAClF,IAAI,CAACzC,2BAA2B,CAAC,UAAU,CAAC,CAC/C;IACL;EAAC;IAAAH,GAAA;IAAAC,KAAA,EAED,SAAA+D,aAAa3F,IAAI,EAAE;MAAA,IAAA4F,MAAA;MACf,IAAI5F,IAAI,KAAK,IAAI,CAACa,KAAK,CAACb,IAAI,EAAE;QAC1B,IAAI,CAACqD,QAAQ,CAAC;UAAErD,IAAI,EAAJA;QAAK,CAAC,EAAE;UAAA,OAAM4F,MAAI,CAAC/D,UAAU,EAAE;QAAA,EAAC;MACpD;IACJ;EAAC;IAAAF,GAAA;IAAAC,KAAA,EAED,SAAAH,SAASf,IAAI,EAAE;MACX,IAAIA,IAAI,KAAK,IAAI,CAACG,KAAK,CAACH,IAAI,EAAE;QAC1B,IAAI,CAAC2C,QAAQ,CAAC;UAAE3C,IAAI,EAAJA;QAAK,CAAC,CAAC;QACvB,IAAI,CAACH,KAAK,CAACkB,QAAQ,IAAI,IAAI,CAAClB,KAAK,CAACkB,QAAQ,CAACf,IAAI,CAAC;MACpD;IACJ;EAAC;IAAAiB,GAAA;IAAAC,KAAA,EAED,SAAAiE,OAAA,EAAS;MAAA,IAAAC,MAAA;MACL,oBAAO3J,MAAA,YAAA+F,aAAA;QAAKuC,SAAS,EAAE,IAAI,CAAClE,KAAK,CAACmE,OAAO,CAAClG;MAAQ,gBAC9CrC,MAAA,YAAA+F,aAAA;QAAKC,KAAK,EAAE;UAAEC,WAAW,EAAE,CAAC;UAAE3D,KAAK,EAAE;QAAO;MAAE,gBAACtC,MAAA,YAAA+F,aAAA,CAACtF,UAAA,WAAS;QAACuF,KAAK,EAAE;UAAE1D,KAAK,EAAE;QAAO,CAAE;QAACmD,KAAK,EAAE,IAAI,CAACf,KAAK,CAACH,IAAK;QAACqF,QAAQ;MAAA,EAAE,CAAM,eAC5H5J,MAAA,YAAA+F,aAAA;QAAKC,KAAK,EAAE;UAAEC,WAAW,EAAE,CAAC;UAAE3D,KAAK,EAAE,MAAM;UAAEC,MAAM,EAAE;QAAG;MAAE,GAAE,IAAAsH,oBAAiB,EAAC,IAAI,CAACnF,KAAK,CAACH,IAAI,EAAE,IAAI,CAACH,KAAK,CAAC0F,QAAQ,IAAI,IAAI,CAAC,CAAO,eAClI9J,MAAA,YAAA+F,aAAA,2BAAK/F,MAAA,YAAA+F,aAAA,CAACxF,YAAA,WAAW;QAACmH,OAAO,EAAC,UAAU;QAAC1B,KAAK,EAAE;UAAEiD,UAAU,EAAE,CAAC;UAAEtB,SAAS,EAAE;QAAE,CAAE;QAACW,SAAS,EAAE,IAAI,CAAClE,KAAK,CAACmE,OAAO,CAAC9F;MAAY,gBACnHzC,MAAA,YAAA+F,aAAA,CAAC1F,WAAA,WAAU,QAAE8F,gBAAI,CAACC,CAAC,CAAC,WAAW,CAAC,CAAc,eAC9CpG,MAAA,YAAA+F,aAAA,CAACvF,OAAA,WAAM;QACHkH,OAAO,EAAC,UAAU;QAClBjC,KAAK,EAAE,IAAI,CAACf,KAAK,CAACb,IAAK;QACvByB,QAAQ,EAAE,SAAAA,SAAAnD,CAAC;UAAA,OAAIwH,MAAI,CAACH,YAAY,CAACrH,CAAC,CAAC2E,MAAM,CAACrB,KAAK,CAAC;QAAA,CAAC;QACjDsD,UAAU,EAAE;UAAEgB,IAAI,EAAE,MAAM;UAAEC,EAAE,EAAE;QAAO;MAAE,GACxC7E,MAAM,CAACgD,IAAI,CAACnF,QAAQ,CAAC,CAACqD,GAAG,CAAC,UAAAxC,IAAI;QAAA,oBAC3B7D,MAAA,YAAA+F,aAAA,CAACzF,SAAA,WAAQ;UAACkF,GAAG,EAAExC,QAAQ,CAACa,IAAI,CAAE;UAAC4B,KAAK,EAAEzC,QAAQ,CAACa,IAAI;QAAE,GAAEsC,gBAAI,CAACC,CAAC,OAAAzC,MAAA,CAAOX,QAAQ,CAACa,IAAI,CAAC,EAAG,CAAY;MAAA,EAAC,CACjG,CACC,CAAM,EACnB,IAAI,CAACa,KAAK,CAACb,IAAI,KAAKb,QAAQ,CAACC,IAAI,IAAI,IAAI,CAAC+F,eAAe,EAAE,EAC3D,IAAI,CAACtE,KAAK,CAACb,IAAI,KAAKb,QAAQ,CAACE,QAAQ,IAAI,IAAI,CAACgG,mBAAmB,EAAE,EACnE,IAAI,CAACxE,KAAK,CAACb,IAAI,KAAKb,QAAQ,CAACG,eAAe,IAAI,IAAI,CAACgG,0BAA0B,EAAE,EACjF,IAAI,CAACzE,KAAK,CAACb,IAAI,KAAKb,QAAQ,CAACI,QAAQ,IAAI,IAAI,CAACmG,uBAAuB,EAAE,CACtE;IACV;EAAC;IAAA/D,GAAA;IAAAC,KAAA,EAriBD,SAAAwE,iBAAwBC,IAAI,EAAEnC,GAAG,EAAE;MAC/BA,GAAG,GAAGA,GAAG,IAAI,CAAC;MACd,IAAImC,IAAI,CAACC,MAAM,KAAKpC,GAAG,EAAE;QACrB,OAAO,GAAG;MACd,CAAC,MAAM;QACH,IAAIqC,IAAI,GAAG,EAAE;QACb,IAAIC,KAAK,GAAG,IAAI;QAChB,IAAIC,GAAG,GAAG,IAAI;QACd,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGL,IAAI,CAACC,MAAM,EAAEI,CAAC,EAAE,EAAE;UAClC,IAAIF,KAAK,KAAK,IAAI,EAAE;YAChBA,KAAK,GAAGH,IAAI,CAACK,CAAC,CAAC;YACfD,GAAG,GAAGJ,IAAI,CAACK,CAAC,CAAC;UACjB,CAAC,MAAM,IAAIL,IAAI,CAACK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,KAAKL,IAAI,CAACK,CAAC,CAAC,EAAE;YACpCD,GAAG,GAAGJ,IAAI,CAACK,CAAC,CAAC;UACjB,CAAC,MAAM;YACH,IAAIF,KAAK,KAAKC,GAAG,EAAE;cACfF,IAAI,CAACrD,IAAI,IAAApD,MAAA,CAAI0G,KAAK,OAAA1G,MAAA,CAAI2G,GAAG,EAAG;YAChC,CAAC,MAAM;cACHF,IAAI,CAACrD,IAAI,CAACsD,KAAK,CAAC;YACpB;YACAA,KAAK,GAAGH,IAAI,CAACK,CAAC,CAAC;YACfD,GAAG,GAAGJ,IAAI,CAACK,CAAC,CAAC;UACjB;QACJ;QACA,IAAIF,KAAK,KAAKC,GAAG,EAAE;UACfF,IAAI,CAACrD,IAAI,IAAApD,MAAA,CAAI0G,KAAK,OAAA1G,MAAA,CAAI2G,GAAG,EAAG;QAChC,CAAC,MAAM;UACHF,IAAI,CAACrD,IAAI,CAACsD,KAAK,CAAC;QACpB;QACA,OAAOD,IAAI,CAACI,IAAI,CAAC,GAAG,CAAC;MACzB;IACJ;EAAC;IAAAhF,GAAA;IAAAC,KAAA,EAED,SAAAgF,cAAqBL,IAAI,EAAE;MACvB,IAAIA,IAAI,KAAK,GAAG,EAAE;QACd,OAAO,CAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,CAAC;MAC1B;MACA,IAAMM,KAAK,GAAGN,IAAI,CAACO,KAAK,CAAC,GAAG,CAAC;MAC7B,IAAMT,IAAI,GAAG,EAAE;MACfQ,KAAK,CAACE,OAAO,CAAC,UAAAC,IAAI,EAAI;QAClB,IAAMC,MAAM,GAAGD,IAAI,CAACF,KAAK,CAAC,GAAG,CAAC;QAC9B,IAAIG,MAAM,CAACX,MAAM,KAAK,CAAC,EAAE;UACrB,IAAME,KAAK,GAAGxC,QAAQ,CAACiD,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;UACrC,IAAMR,GAAG,GAAGzC,QAAQ,CAACiD,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;UACnC,KAAK,IAAIxE,GAAG,GAAG+D,KAAK,EAAE/D,GAAG,IAAIgE,GAAG,EAAEhE,GAAG,EAAE,EAAE;YACrC,IAAI,CAAC4D,IAAI,CAACa,QAAQ,CAACzE,GAAG,KAAK,CAAC,GAAG,CAAC,GAAGA,GAAG,CAAC,EAAE;cACrC4D,IAAI,CAACnD,IAAI,CAACT,GAAG,KAAK,CAAC,GAAG,CAAC,GAAGA,GAAG,CAAC;YAClC;UACJ;QACJ,CAAC,MAAM;UACH,IAAIuE,IAAI,KAAK,GAAG,EAAE;YACdA,IAAI,GAAG,CAAC;UACZ;UACAA,IAAI,GAAGhD,QAAQ,CAACgD,IAAI,EAAE,EAAE,CAAC;UACzB,IAAI,CAACX,IAAI,CAACa,QAAQ,CAACF,IAAI,CAAC,EAAE;YACtBX,IAAI,CAACnD,IAAI,CAAC8D,IAAI,CAAC;UACnB;QACJ;MACJ,CAAC,CAAC;MACFX,IAAI,CAACjD,IAAI,EAAE;MACX,OAAOiD,IAAI;IACf;EAAC;IAAA1E,GAAA;IAAAC,KAAA,EAED,SAAAd,WAAkBJ,IAAI,EAAE;MACpBA,IAAI,GAAGA,IAAI,CAACE,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAACuG,IAAI,EAAE;MACvC,IAAMC,SAAS,GAAG1G,IAAI,CAACoG,KAAK,CAAC,GAAG,CAAC;MACjC,IAAMO,OAAO,GAAG,CAAC,CAAC;MAClB,IAAMxG,KAAK,GAAG;QACVb,IAAI,EAAE;MACV,CAAC;MACD,IAAIoH,SAAS,CAACd,MAAM,KAAK,CAAC,EAAE;QACxBe,OAAO,CAAC5H,OAAO,GAAG2H,SAAS,CAAC,CAAC,CAAC,IAAI,GAAG;QACrCC,OAAO,CAAC3H,OAAO,GAAG0H,SAAS,CAAC,CAAC,CAAC,IAAI,GAAG;QACrCC,OAAO,CAAChD,KAAK,GAAG+C,SAAS,CAAC,CAAC,CAAC,IAAI,GAAG;QACnCC,OAAO,CAACnG,IAAI,GAAGkG,SAAS,CAAC,CAAC,CAAC,IAAI,GAAG;QAClCC,OAAO,CAACC,MAAM,GAAGF,SAAS,CAAC,CAAC,CAAC,IAAI,GAAG;QACpCC,OAAO,CAACE,GAAG,GAAGH,SAAS,CAAC,CAAC,CAAC,IAAI,GAAG;MACrC,CAAC,MAAM;QACHC,OAAO,CAAC5H,OAAO,GAAG,IAAI;QACtB4H,OAAO,CAAC3H,OAAO,GAAG0H,SAAS,CAAC,CAAC,CAAC,IAAI,GAAG;QACrCC,OAAO,CAAChD,KAAK,GAAG+C,SAAS,CAAC,CAAC,CAAC,IAAI,GAAG;QACnCC,OAAO,CAACnG,IAAI,GAAGkG,SAAS,CAAC,CAAC,CAAC,IAAI,GAAG;QAClCC,OAAO,CAACC,MAAM,GAAGF,SAAS,CAAC,CAAC,CAAC,IAAI,GAAG;QACpCC,OAAO,CAACE,GAAG,GAAGH,SAAS,CAAC,CAAC,CAAC,IAAI,GAAG;MACrC;;MAEA;MACA,IAAIC,OAAO,CAAC5H,OAAO,KAAK,IAAI,IACxB4H,OAAO,CAAC3H,OAAO,KAAK,GAAG,IACvB2H,OAAO,CAAChD,KAAK,KAAK,GAAG,IACrBgD,OAAO,CAACnG,IAAI,KAAK,GAAG,IACpBmG,OAAO,CAACC,MAAM,KAAK,GAAG,EACxB;QACEzG,KAAK,CAACb,IAAI,GAAGb,QAAQ,CAACE,QAAQ;QAC9BwB,KAAK,CAACxB,QAAQ,GAAG;UACbY,MAAM,EAAE,CAAC;UACTC,IAAI,EAAEV,cAAc,CAACE;QACzB,CAAC;MACL,CAAC,CAAC;MACF,IAAI2H,OAAO,CAAC5H,OAAO,KAAK,GAAG,IACvB4H,OAAO,CAAC3H,OAAO,KAAK,GAAG,IACvB2H,OAAO,CAAChD,KAAK,KAAK,GAAG,IACrBgD,OAAO,CAACnG,IAAI,KAAK,GAAG,IACpBmG,OAAO,CAACC,MAAM,KAAK,GAAG,EACxB;QACEzG,KAAK,CAACb,IAAI,GAAGb,QAAQ,CAACE,QAAQ;QAC9BwB,KAAK,CAACxB,QAAQ,GAAG;UACbY,MAAM,EAAE,CAAC;UACTC,IAAI,EAAEV,cAAc,CAACC;QACzB,CAAC;MACL,CAAC;QAAK;QACN,IAAI4H,OAAO,CAAC5H,OAAO,KAAK,IAAI,IACxB4H,OAAO,CAAC3H,OAAO,CAACwH,QAAQ,CAAC,GAAG,CAAC,IAC7BG,OAAO,CAAChD,KAAK,KAAK,GAAG,IACrBgD,OAAO,CAACnG,IAAI,KAAK,GAAG,IACpBmG,OAAO,CAACC,MAAM,KAAK,GAAG,EACxB;UACEzG,KAAK,CAACb,IAAI,GAAGb,QAAQ,CAACE,QAAQ;UAC9BwB,KAAK,CAACxB,QAAQ,GAAG;YACbY,MAAM,EAAE+D,QAAQ,CAACqD,OAAO,CAAC3H,OAAO,CAACoH,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;YACnD5G,IAAI,EAAEV,cAAc,CAACE;UACzB,CAAC;QACL,CAAC;UACD;UACA,IAAI2H,OAAO,CAAC5H,OAAO,KAAK,IAAI,IACxB4H,OAAO,CAAC5H,OAAO,CAACyH,QAAQ,CAAC,GAAG,CAAC,IAC7BG,OAAO,CAAC3H,OAAO,KAAK,GAAG,IACvB2H,OAAO,CAAChD,KAAK,KAAK,GAAG,IACrBgD,OAAO,CAACnG,IAAI,KAAK,GAAG,IACpBmG,OAAO,CAACC,MAAM,KAAK,GAAG,EACxB;YACEzG,KAAK,CAACb,IAAI,GAAGb,QAAQ,CAACE,QAAQ;YAC9BwB,KAAK,CAACxB,QAAQ,GAAG;cACbY,MAAM,EAAE+D,QAAQ,CAACqD,OAAO,CAAC5H,OAAO,CAACqH,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;cACnD5G,IAAI,EAAEV,cAAc,CAACC;YACzB,CAAC;UACL,CAAC;YACD;YACA,IAAI4H,OAAO,CAAC5H,OAAO,KAAK,IAAI,IACxB4H,OAAO,CAAC5H,OAAO,CAACyH,QAAQ,CAAC,GAAG,CAAC,IAC7BG,OAAO,CAAC3H,OAAO,KAAK,GAAG,IACvB2H,OAAO,CAAChD,KAAK,CAAC6C,QAAQ,CAAC,GAAG,CAAC,IAC3BG,OAAO,CAACnG,IAAI,KAAK,GAAG,IACpBmG,OAAO,CAACC,MAAM,KAAK,GAAG,EACxB;cACEzG,KAAK,CAACb,IAAI,GAAGb,QAAQ,CAACG,eAAe;cACrCuB,KAAK,CAACvB,eAAe,GAAG;gBACpBW,MAAM,EAAE+D,QAAQ,CAACqD,OAAO,CAAC5H,OAAO,CAACqH,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;gBACnD5G,IAAI,EAAEV,cAAc,CAACC,OAAO;gBAC5B0B,QAAQ,EAAE6C,QAAQ,CAACqD,OAAO,CAAChD,KAAK,CAACyC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;gBACnD1F,MAAM,EAAE4C,QAAQ,CAACqD,OAAO,CAAChD,KAAK,CAACyC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;gBACjDzF,QAAQ,EAAElB,UAAU,CAACyG,aAAa,CAACS,OAAO,CAACE,GAAG;cAClD,CAAC;YACL,CAAC;cACD;cACA,IAAIF,OAAO,CAAC5H,OAAO,KAAK,IAAI,IACxB4H,OAAO,CAAC3H,OAAO,CAACwH,QAAQ,CAAC,GAAG,CAAC,IAC7BG,OAAO,CAAChD,KAAK,CAAC6C,QAAQ,CAAC,GAAG,CAAC,IAC3BG,OAAO,CAACnG,IAAI,KAAK,GAAG,IACpBmG,OAAO,CAACC,MAAM,KAAK,GAAG,EACxB;gBACEzG,KAAK,CAACb,IAAI,GAAGb,QAAQ,CAACG,eAAe;gBACrCuB,KAAK,CAACvB,eAAe,GAAG;kBACpBW,MAAM,EAAE+D,QAAQ,CAACqD,OAAO,CAAC3H,OAAO,CAACoH,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;kBACnD5G,IAAI,EAAEV,cAAc,CAACE,OAAO;kBAC5ByB,QAAQ,EAAE6C,QAAQ,CAACqD,OAAO,CAAChD,KAAK,CAACyC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;kBACnD1F,MAAM,EAAE4C,QAAQ,CAACqD,OAAO,CAAChD,KAAK,CAACyC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;kBACjDzF,QAAQ,EAAElB,UAAU,CAACyG,aAAa,CAACS,OAAO,CAACE,GAAG;gBAClD,CAAC;cACL,CAAC;gBACD;gBACA,IAAIF,OAAO,CAAC5H,OAAO,KAAK,IAAI,IACxBuE,QAAQ,CAACqD,OAAO,CAAC3H,OAAO,EAAE,EAAE,CAAC,CAAC6D,QAAQ,EAAE,KAAK8D,OAAO,CAAC3H,OAAO,IAC5DsE,QAAQ,CAACqD,OAAO,CAAChD,KAAK,EAAE,EAAE,CAAC,CAACd,QAAQ,EAAE,KAAK8D,OAAO,CAAChD,KAAK,IACxDgD,OAAO,CAACnG,IAAI,KAAK,GAAG,IACpBmG,OAAO,CAACC,MAAM,KAAK,GAAG,EAAE;kBACxBzG,KAAK,CAACb,IAAI,GAAGb,QAAQ,CAACI,QAAQ;kBAC9BsB,KAAK,CAACtB,QAAQ,GAAG;oBACb0B,IAAI,KAAAnB,MAAA,CAAKF,OAAO,CAACoE,QAAQ,CAACqD,OAAO,CAAChD,KAAK,EAAE,EAAE,CAAC,CAAC,OAAAvE,MAAA,CAAIF,OAAO,CAACoE,QAAQ,CAACqD,OAAO,CAAC3H,OAAO,EAAE,EAAE,CAAC,CAAC,CAAE;oBACzF2B,QAAQ,EAAElB,UAAU,CAACyG,aAAa,CAACS,OAAO,CAACE,GAAG;kBAClD,CAAC;gBACL,CAAC;kBACD;kBACA,IAAIF,OAAO,CAAC5H,OAAO,KAAK,IAAI,IACxBuE,QAAQ,CAACqD,OAAO,CAAC3H,OAAO,EAAE,EAAE,CAAC,CAAC6D,QAAQ,EAAE,KAAK8D,OAAO,CAAC3H,OAAO,IAC5DsE,QAAQ,CAACqD,OAAO,CAAChD,KAAK,EAAE,EAAE,CAAC,CAACd,QAAQ,EAAE,KAAK8D,OAAO,CAAChD,KAAK,IACxDL,QAAQ,CAACqD,OAAO,CAACnG,IAAI,EAAE,EAAE,CAAC,CAACqC,QAAQ,EAAE,KAAK8D,OAAO,CAACnG,IAAI,IACtD8C,QAAQ,CAACqD,OAAO,CAACC,MAAM,EAAE,EAAE,CAAC,CAAC/D,QAAQ,EAAE,KAAK8D,OAAO,CAACC,MAAM,IAC1DD,OAAO,CAACE,GAAG,KAAK,GAAG,EACrB;oBACE1G,KAAK,CAACb,IAAI,GAAGb,QAAQ,CAACC,IAAI;oBAC1ByB,KAAK,CAACzB,IAAI,GAAG;sBACT6B,IAAI,KAAAnB,MAAA,CAAKF,OAAO,CAACoE,QAAQ,CAACqD,OAAO,CAAChD,KAAK,EAAE,EAAE,CAAC,CAAC,OAAAvE,MAAA,CAAIF,OAAO,CAACoE,QAAQ,CAACqD,OAAO,CAAC3H,OAAO,EAAE,EAAE,CAAC,CAAC,CAAE;sBACzFwB,IAAI,KAAApB,MAAA,CAAKF,OAAO,CAACoE,QAAQ,CAACqD,OAAO,CAACnG,IAAI,EAAE,EAAE,CAAC,CAAC,OAAApB,MAAA,CAAIF,OAAO,CAACoE,QAAQ,CAACqD,OAAO,CAACC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAE;sBAC3F;sBACIjG,QAAQ,EAAElB,UAAU,CAACyG,aAAa,CAACS,OAAO,CAACE,GAAG;oBAClD,CAAC;kBACL;MAEA,IAAI1G,KAAK,CAACb,IAAI,EAAE;QACZ,OAAOa,KAAK;MAChB,CAAC,MAAM;QACH,OAAO,IAAI;MACf;IACJ;EAAC;IAAAc,GAAA;IAAAC,KAAA,EAED,SAAAZ,WAAkBH,KAAK,EAAE;MACrB,IAAIH,IAAI,GAAG,WAAW;MACtB,IAAIG,KAAK,CAACb,IAAI,KAAKb,QAAQ,CAACE,QAAQ,EAAE;QAClC,IAAM4C,QAAQ,GAAGpB,KAAK,CAACxB,QAAQ,IAAI,CAAC,CAAC;QACrC,IAAI4C,QAAQ,CAAChC,MAAM,GAAG,EAAE,EAAEgC,QAAQ,CAAChC,MAAM,GAAG,EAAE;QAC9C,IAAIgC,QAAQ,CAAChC,MAAM,GAAG,CAAC,EAAEgC,QAAQ,CAAChC,MAAM,GAAG,CAAC;QAE5C,IAAIgC,QAAQ,CAACvC,OAAO,GAAG,EAAE,EAAEuC,QAAQ,CAACvC,OAAO,GAAG,EAAE;QAChD,IAAIuC,QAAQ,CAACvC,OAAO,GAAG,CAAC,EAAEuC,QAAQ,CAACvC,OAAO,GAAG,CAAC;QAE9C,IAAIuC,QAAQ,CAACoC,KAAK,GAAG,EAAE,EAAEpC,QAAQ,CAACoC,KAAK,GAAG,EAAE;QAC5C,IAAIpC,QAAQ,CAACoC,KAAK,GAAG,CAAC,EAAEpC,QAAQ,CAACoC,KAAK,GAAG,CAAC;QAE1C,IAAIxD,KAAK,CAACE,QAAQ,EAAE;UAChBL,IAAI,MAAAZ,MAAA,CAAMmC,QAAQ,CAACvC,OAAO,GAAG,CAAC,QAAAI,MAAA,CAAQmC,QAAQ,CAACvC,OAAO,IAAK,GAAG,OAAAI,MAAA,CAAImC,QAAQ,CAACoC,KAAK,GAAG,CAAC,QAAAvE,MAAA,CAAQmC,QAAQ,CAACoC,KAAK,IAAK,GAAG,WAAQ;QAC9H,CAAC,MAAM;UACH,QAAQpC,QAAQ,CAAC/B,IAAI;YACjB,KAAKV,cAAc,CAACC,OAAO;cACvBiB,IAAI,MAAAZ,MAAA,CAAMmC,QAAQ,CAAChC,MAAM,GAAG,CAAC,QAAAH,MAAA,CAAQmC,QAAQ,CAAChC,MAAM,IAAK,GAAG,eAAY;cACxE;YACJ,KAAKT,cAAc,CAACE,OAAO;cACvBgB,IAAI,MAAAZ,MAAA,CAAMmC,QAAQ,CAAChC,MAAM,GAAG,CAAC,QAAAH,MAAA,CAAQmC,QAAQ,CAAChC,MAAM,IAAK,GAAG,aAAU;cACtE;YACJ;cACI;UAAM;QAElB;MACJ,CAAC,MAAM,IAAIY,KAAK,CAACb,IAAI,KAAKb,QAAQ,CAACG,eAAe,EAAE;QAChD,IAAM2C,SAAQ,GAAGpB,KAAK,CAACvB,eAAe,IAAI,CAAC,CAAC;QAC5C,IAAI+E,KAAK;QACTpC,SAAQ,CAACd,QAAQ,GAAGc,SAAQ,CAACd,QAAQ,IAAI,CAAC;QAC1Cc,SAAQ,CAACb,MAAM,GAAGa,SAAQ,CAACb,MAAM,KAAKoG,SAAS,GAAG,EAAE,GAAGvF,SAAQ,CAACb,MAAM;QACtE,IAAIa,SAAQ,CAACd,QAAQ,KAAK,CAAC,IAAIc,SAAQ,CAACb,MAAM,KAAK,EAAE,EAAE;UACnDiD,KAAK,GAAG,GAAG;QACf,CAAC,MAAM;UACHA,KAAK,GAAGpC,SAAQ,CAACd,QAAQ,KAAKc,SAAQ,CAACb,MAAM,MAAAtB,MAAA,CAAMmC,SAAQ,CAACd,QAAQ,OAAArB,MAAA,CAAImC,SAAQ,CAACb,MAAM,IAAK,GAAG;QACnG;QACA,IAAIa,SAAQ,CAAChC,MAAM,GAAG,EAAE,EAAEgC,SAAQ,CAAChC,MAAM,GAAG,EAAE;QAC9C,IAAIgC,SAAQ,CAAChC,MAAM,GAAG,CAAC,EAAEgC,SAAQ,CAAChC,MAAM,GAAG,CAAC;QAC5CgC,SAAQ,CAAC/B,IAAI,GAAG+B,SAAQ,CAAC/B,IAAI,IAAIV,cAAc,CAACE,OAAO;QACvD,QAAQuC,SAAQ,CAAC/B,IAAI;UACjB,KAAKV,cAAc,CAACC,OAAO;YACvBiB,IAAI,MAAAZ,MAAA,CAAMmC,SAAQ,CAAChC,MAAM,GAAG,CAAC,QAAAH,MAAA,CAAQmC,SAAQ,CAAChC,MAAM,IAAK,GAAG,SAAAH,MAAA,CAAMuE,KAAK,WAAAvE,MAAA,CAAQ,IAAI,CAACsG,gBAAgB,CAACnE,SAAQ,CAACZ,QAAQ,CAAC,CAAE;YACzH;UACJ,KAAK7B,cAAc,CAACE,OAAO;YACvBgB,IAAI,MAAAZ,MAAA,CAAMmC,SAAQ,CAAChC,MAAM,GAAG,CAAC,QAAAH,MAAA,CAAQmC,SAAQ,CAAChC,MAAM,IAAK,GAAG,OAAAH,MAAA,CAAIuE,KAAK,WAAAvE,MAAA,CAAQ,IAAI,CAACsG,gBAAgB,CAACnE,SAAQ,CAACZ,QAAQ,CAAC,CAAE;YACvH;UACJ;YACI;QAAM;MAElB,CAAC,MAAM,IAAIR,KAAK,CAACb,IAAI,KAAKb,QAAQ,CAACI,QAAQ,EAAE;QACzC,IAAM0C,UAAQ,GAAGpB,KAAK,CAACtB,QAAQ,IAAI,CAAC,CAAC;QACrC,IAAMsH,KAAK,GAAG,CAAC5E,UAAQ,CAAChB,IAAI,IAAI,OAAO,EAAE6F,KAAK,CAAC,GAAG,CAAC;QACnD,IAAIpH,OAAO,GAAGsE,QAAQ,CAAC6C,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC;QACzC,IAAInH,OAAO,GAAG,EAAE,EAAEA,OAAO,GAAG,EAAE;QAC9B,IAAIA,OAAO,GAAG,CAAC,EAAEA,OAAO,GAAG,CAAC;QAC5B,IAAI2E,MAAK,GAAGL,QAAQ,CAAC6C,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC;QACvC,IAAIxC,MAAK,GAAG,EAAE,EAAEA,MAAK,GAAG,EAAE;QAC1B,IAAIA,MAAK,GAAG,CAAC,EAAEA,MAAK,GAAG,CAAC;QAExB3D,IAAI,MAAAZ,MAAA,CAAMJ,OAAO,OAAAI,MAAA,CAAIuE,MAAK,WAAAvE,MAAA,CAAQ,IAAI,CAACsG,gBAAgB,CAACnE,UAAQ,CAACZ,QAAQ,IAAI,EAAE,CAAC,CAAE;MACtF,CAAC,MAAM,IAAIR,KAAK,CAACb,IAAI,KAAKb,QAAQ,CAACC,IAAI,EAAE;QACrC,IAAM6C,UAAQ,GAAGpB,KAAK,CAACzB,IAAI,IAAI,CAAC,CAAC;QACjC,IAAI,CAAC6C,UAAQ,CAACf,IAAI,EAAE;UAChBe,UAAQ,CAACf,IAAI,MAAApB,MAAA,CAAM,IAAIiF,IAAI,EAAE,CAACC,OAAO,EAAE,OAAAlF,MAAA,CAAIF,OAAO,CAAC,IAAImF,IAAI,EAAE,CAACE,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAE;QACnF;QACA,IAAM4B,OAAK,GAAG,CAAC5E,UAAQ,CAAChB,IAAI,IAAI,OAAO,EAAE6F,KAAK,CAAC,GAAG,CAAC;QACnD,IAAMW,SAAS,GAAGxF,UAAQ,CAACf,IAAI,CAAC4F,KAAK,CAAC,GAAG,CAAC;QAC1C,IAAIpH,QAAO,GAAGsE,QAAQ,CAAC6C,OAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC;QACzC,IAAInH,QAAO,GAAG,EAAE,EAAEA,QAAO,GAAG,EAAE;QAC9B,IAAIA,QAAO,GAAG,CAAC,EAAEA,QAAO,GAAG,CAAC;QAC5B,IAAI2E,OAAK,GAAGL,QAAQ,CAAC6C,OAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC;QACvC,IAAIxC,OAAK,GAAG,EAAE,EAAEA,OAAK,GAAG,EAAE;QAC1B,IAAIA,OAAK,GAAG,CAAC,EAAEA,OAAK,GAAG,CAAC;QACxB,IAAInD,IAAI,GAAG8C,QAAQ,CAACyD,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC;QAC1C,IAAIvG,IAAI,GAAG,EAAE,EAAEA,IAAI,GAAG,EAAE;QACxB,IAAIA,IAAI,GAAG,CAAC,EAAEmD,OAAK,GAAG,CAAC;QACvB,IAAIqD,KAAK,GAAG1D,QAAQ,CAACyD,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC;QAC3C,IAAIC,KAAK,GAAG,EAAE,EAAEA,KAAK,GAAG,EAAE;QAC1B,IAAIA,KAAK,GAAG,CAAC,EAAEA,KAAK,GAAG,CAAC;QAExBhH,IAAI,MAAAZ,MAAA,CAAMJ,QAAO,OAAAI,MAAA,CAAIuE,OAAK,OAAAvE,MAAA,CAAIoB,IAAI,OAAApB,MAAA,CAAI4H,KAAK,OAAI;MACnD;MACA,OAAOhH,IAAI;IACf;EAAC;EAAA,OAAAP,UAAA;AAAA,EA1UoBwH,iBAAK,CAACC,SAAS;AAglBxCzH,UAAU,CAAC0H,SAAS,GAAG;EACnBlH,cAAc,EAAEmH,qBAAS,CAACC,MAAM;EAChCtG,QAAQ,EAAEqG,qBAAS,CAACE,IAAI;EACxB/B,QAAQ,EAAE6B,qBAAS,CAACC;AACxB,CAAC;AAAC,IAAAE,QAAA,GAEa,IAAAC,sBAAU,EAAC3J,MAAM,CAAC,CAAC4B,UAAU,CAAC;AAAAgI,OAAA,cAAAF,QAAA"}
1
+ {"version":3,"file":"index.js","names":["_react","_interopRequireDefault","require","_propTypes","_withStyles","_InputLabel","_MenuItem","_FormControl","_Select","_TextField","_FormControlLabel","_Checkbox","_cronText","_i18n","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","result","NewTarget","constructor","Reflect","construct","arguments","apply","_possibleConstructorReturn2","sham","Proxy","Boolean","prototype","valueOf","call","e","styles","mainDiv","width","height","overflow","formControl","margin","minWidth","formControlMarginRight","marginRight","formControlPaddingTop","paddingTop","PERIODIC","once","interval","intervalBetween","specific","PERIODIC_TYPES","seconds","minutes","WEEKDAYS","padding","num","concat","DEFAULT_STATE","mode","period","unit","SimpleCron","_React$Component","_inherits2","_super","props","_this","_classCallCheck2","cron","cronExpression","replace","state","cron2state","extended","state2cron","time","date","timeFrom","timeTo","weekdays","Object","assign","setTimeout","onChange","_createClass2","key","value","recalcCron","getControlsWeekdaysElements","type","_this2","settings","createElement","style","paddingLeft","maxWidth","I18n","t","map","day","control","checked","indexOf","JSON","parse","stringify","pos","target","push","splice","sort","setState","_defineProperty2","toString","label","getControlsPeriodElements","_this3","display","marginBottom","variant","marginTop","verticalAlign","parseInt","min","max","InputLabelProps","shrink","hours","keys","getControlsTime","_this4","className","classes","root","getControlsDate","_this5","d","Date","getDate","getMonth","inputProps","getOnceElements","marginLeft","getIntervalElements","getIntervalBetweenElements","_this6","htmlFor","hour","getSpecificTimeElements","onModeChange","_this7","render","_this8","disabled","convertCronToText","language","name","id","periodArray2text","list","length","text","start","end","i","join","text2weekdays","parts","split","forEach","part","_parts","includes","trim","cronParts","options","months","dow","undefined","partsDate","month","React","Component","propTypes","PropTypes","string","func","_default","withStyles","exports"],"sources":["SimpleCron/index.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport withStyles from '@mui/styles/withStyles';\n\nimport InputLabel from '@mui/material/InputLabel';\nimport MenuItem from '@mui/material/MenuItem';\nimport FormControl from '@mui/material/FormControl';\nimport Select from '@mui/material/Select';\nimport TextField from '@mui/material/TextField';\nimport FormControlLabel from '@mui/material/FormControlLabel';\nimport Checkbox from '@mui/material/Checkbox';\n\nimport convertCronToText from './cronText';\n\nimport I18n from '../../i18n';\n\nconst styles = () => ({\n mainDiv: {\n width: '100%',\n height: '100%',\n overflow: 'auto',\n },\n formControl: {\n margin: 0,\n minWidth: 120,\n },\n formControlMarginRight: {\n marginRight: 5,\n },\n formControlPaddingTop: {\n paddingTop: 6.2,\n },\n});\n\nconst PERIODIC = {\n once: 'once',\n interval: 'interval',\n intervalBetween: 'intervalBetween',\n specific: 'specific',\n};\nconst PERIODIC_TYPES = {\n seconds: 'seconds',\n minutes: 'minutes',\n // hours: 'hours',\n};\nconst WEEKDAYS = [\n 'Sunday',\n 'Monday',\n 'Tuesday',\n 'Wednesday',\n 'Thursday',\n 'Friday',\n 'Saturday',\n 'Sunday',\n];\n\nfunction padding(num) {\n if (num < 10) {\n return `0${num}`;\n } else {\n return `${num}`;\n }\n}\nconst DEFAULT_STATE = {\n mode: PERIODIC.interval,\n interval: {\n period: 1,\n unit: PERIODIC_TYPES.minutes,\n },\n};\n\nclass SimpleCron extends React.Component {\n constructor(props) {\n super(props);\n let cron = typeof this.props.cronExpression === 'string' ? this.props.cronExpression.replace(/^[\"']/, '').replace(/[\"']\\n?$/, '') : '';\n if (cron[0] === '{') {\n cron = '';\n }\n const state = SimpleCron.cron2state(cron || '* * * * *') || DEFAULT_STATE;\n\n this.state = {\n extended: false,\n cron: SimpleCron.state2cron(state),\n mode: 'interval',\n once: {\n time: '00:00',\n date: '',\n },\n interval: {\n period: 1,\n unit: PERIODIC_TYPES.minutes,\n },\n intervalBetween: {\n period: 1,\n unit: PERIODIC_TYPES.minutes,\n timeFrom: 0,\n timeTo: 24,\n weekdays: [0, 1, 2, 3, 4, 5, 6],\n },\n specific: {\n time: '00:00',\n weekdays: [0, 1, 2, 3, 4, 5, 6],\n },\n };\n Object.assign(this.state, state);\n\n if (this.state.cron !== this.props.cronExpression) {\n setTimeout(() => this.props.onChange && this.props.onChange(this.state.cron), 100);\n }\n }\n\n static periodArray2text(list, max) {\n max = max || 7;\n if (list.length === max) {\n return '*';\n } else {\n let text = [];\n let start = null;\n let end = null;\n for (let i = 0; i < list.length; i++) {\n if (start === null) {\n start = list[i];\n end = list[i];\n } else if (list[i - 1] + 1 === list[i]) {\n end = list[i];\n } else {\n if (start !== end) {\n text.push(`${start}-${end}`);\n } else {\n text.push(start);\n }\n start = list[i];\n end = list[i];\n }\n }\n if (start !== end) {\n text.push(`${start}-${end}`);\n } else {\n text.push(start);\n }\n return text.join(',');\n }\n }\n\n static text2weekdays(text) {\n if (text === '*') {\n return [0,1,2,3,4,5,6];\n }\n const parts = text.split(',');\n const list = [];\n parts.forEach(part => {\n const _parts = part.split('-');\n if (_parts.length === 2) {\n const start = parseInt(_parts[0], 10);\n const end = parseInt(_parts[1], 10);\n for (let day = start; day <= end; day++) {\n if (!list.includes(day === 7 ? 0 : day)) {\n list.push(day === 7 ? 0 : day);\n }\n }\n } else {\n if (part === '7') {\n part = 0;\n }\n part = parseInt(part, 10);\n if (!list.includes(part)) {\n list.push(part);\n }\n }\n });\n list.sort();\n return list;\n }\n\n static cron2state(cron) {\n cron = cron.replace(/['\"]/g, '').trim();\n const cronParts = cron.split(' ');\n const options = {};\n const state = {\n mode: ''\n };\n if (cronParts.length === 6) {\n options.seconds = cronParts[0] || '*';\n options.minutes = cronParts[1] || '*';\n options.hours = cronParts[2] || '*';\n options.date = cronParts[3] || '*';\n options.months = cronParts[4] || '*';\n options.dow = cronParts[5] || '*';\n } else {\n options.seconds = null;\n options.minutes = cronParts[0] || '*';\n options.hours = cronParts[1] || '*';\n options.date = cronParts[2] || '*';\n options.months = cronParts[3] || '*';\n options.dow = cronParts[4] || '*';\n }\n\n // * * * * *\n if (options.seconds === null &&\n options.minutes === '*' &&\n options.hours === '*' &&\n options.date === '*' &&\n options.months === '*'\n ) {\n state.mode = PERIODIC.interval;\n state.interval = {\n period: 1,\n unit: PERIODIC_TYPES.minutes,\n };\n } // * * * * * *\n if (options.seconds === '*' &&\n options.minutes === '*' &&\n options.hours === '*' &&\n options.date === '*' &&\n options.months === '*'\n ) {\n state.mode = PERIODIC.interval;\n state.interval = {\n period: 1,\n unit: PERIODIC_TYPES.seconds,\n };\n } else// */n * * * *\n if (options.seconds === null &&\n options.minutes.includes('/') &&\n options.hours === '*' &&\n options.date === '*' &&\n options.months === '*'\n ) {\n state.mode = PERIODIC.interval;\n state.interval = {\n period: parseInt(options.minutes.split('/')[1], 10),\n unit: PERIODIC_TYPES.minutes,\n };\n } else\n // */n * * * * *\n if (options.seconds !== null &&\n options.seconds.includes('/') &&\n options.minutes === '*' &&\n options.hours === '*' &&\n options.date === '*' &&\n options.months === '*'\n ) {\n state.mode = PERIODIC.interval;\n state.interval = {\n period: parseInt(options.seconds.split('/')[1], 10),\n unit: PERIODIC_TYPES.seconds,\n };\n } else\n // */n * 1-24 * * 1-7 or */n * 1-24 * * *\n if (options.seconds !== null &&\n options.seconds.includes('/') &&\n options.minutes === '*' &&\n options.hours.includes('-') &&\n options.date === '*' &&\n options.months === '*'\n ) {\n state.mode = PERIODIC.intervalBetween;\n state.intervalBetween = {\n period: parseInt(options.seconds.split('/')[1], 10),\n unit: PERIODIC_TYPES.seconds,\n timeFrom: parseInt(options.hours.split('-')[0], 10),\n timeTo: parseInt(options.hours.split('-')[1], 10),\n weekdays: SimpleCron.text2weekdays(options.dow),\n };\n } else\n // */n 1-24 * * 1-7 or */n 1-24 * * *\n if (options.seconds === null &&\n options.minutes.includes('/') &&\n options.hours.includes('-') &&\n options.date === '*' &&\n options.months === '*'\n ) {\n state.mode = PERIODIC.intervalBetween;\n state.intervalBetween = {\n period: parseInt(options.minutes.split('/')[1], 10),\n unit: PERIODIC_TYPES.minutes,\n timeFrom: parseInt(options.hours.split('-')[0], 10),\n timeTo: parseInt(options.hours.split('-')[1], 10),\n weekdays: SimpleCron.text2weekdays(options.dow),\n };\n } else\n // m h * * 1-7 or m h * * *\n if (options.seconds === null &&\n parseInt(options.minutes, 10).toString() === options.minutes &&\n parseInt(options.hours, 10).toString() === options.hours &&\n options.date === '*' &&\n options.months === '*') {\n state.mode = PERIODIC.specific;\n state.specific = {\n time: `${padding(parseInt(options.hours, 10))}:${padding(parseInt(options.minutes, 10))}`,\n weekdays: SimpleCron.text2weekdays(options.dow),\n };\n } else\n // m h d M *\n if (options.seconds === null &&\n parseInt(options.minutes, 10).toString() === options.minutes &&\n parseInt(options.hours, 10).toString() === options.hours &&\n parseInt(options.date, 10).toString() === options.date &&\n parseInt(options.months, 10).toString() === options.months &&\n options.dow === '*'\n ) {\n state.mode = PERIODIC.once;\n state.once = {\n time: `${padding(parseInt(options.hours, 10))}:${padding(parseInt(options.minutes, 10))}`,\n date: `${padding(parseInt(options.date, 10))}.${padding(parseInt(options.months, 10))}`,\n // ignored\n weekdays: SimpleCron.text2weekdays(options.dow),\n }\n }\n\n if (state.mode) {\n return state;\n } else {\n return null;\n }\n }\n\n static state2cron(state) {\n let cron = '* * * * *';\n if (state.mode === PERIODIC.interval) {\n const settings = state.interval || {};\n if (settings.period > 60) settings.period = 60;\n if (settings.period < 1) settings.period = 1;\n\n if (settings.minutes > 60) settings.minutes = 60;\n if (settings.minutes < 1) settings.minutes = 1;\n\n if (settings.hours > 24) settings.hours = 24;\n if (settings.hours < 1) settings.hours = 1;\n\n if (state.extended) {\n cron = `${settings.minutes > 1 ? `*/${settings.minutes}` : '*'} ${settings.hours > 1 ? `*/${settings.hours}` : '*'} * * *`;\n } else {\n switch (settings.unit) {\n case PERIODIC_TYPES.seconds:\n cron = `${settings.period > 1 ? `*/${settings.period}` : '*'} * * * * *`;\n break;\n case PERIODIC_TYPES.minutes:\n cron = `${settings.period > 1 ? `*/${settings.period}` : '*'} * * * *`;\n break;\n default:\n break;\n }\n }\n } else if (state.mode === PERIODIC.intervalBetween) {\n const settings = state.intervalBetween || {};\n let hours;\n settings.timeFrom = settings.timeFrom || 0;\n settings.timeTo = settings.timeTo === undefined ? 24 : settings.timeTo;\n if (settings.timeFrom === 0 && settings.timeTo === 24) {\n hours = '*';\n } else {\n hours = settings.timeFrom !== settings.timeTo ? `${settings.timeFrom}-${settings.timeTo}` : '*';\n }\n if (settings.period > 60) settings.period = 60;\n if (settings.period < 1) settings.period = 1;\n settings.unit = settings.unit || PERIODIC_TYPES.minutes;\n switch (settings.unit) {\n case PERIODIC_TYPES.seconds:\n cron = `${settings.period > 1 ? `*/${settings.period}` : '*'} * ${hours} * * ${this.periodArray2text(settings.weekdays)}`;\n break;\n case PERIODIC_TYPES.minutes:\n cron = `${settings.period > 1 ? `*/${settings.period}` : '*'} ${hours} * * ${this.periodArray2text(settings.weekdays)}`;\n break;\n default:\n break;\n }\n } else if (state.mode === PERIODIC.specific) {\n const settings = state.specific || {};\n const parts = (settings.time || '00:00').split(':');\n let minutes = parseInt(parts[1], 10) || 0;\n if (minutes > 59) minutes = 59;\n if (minutes < 0) minutes = 0;\n let hours = parseInt(parts[0], 10) || 0;\n if (hours > 23) hours = 59;\n if (hours < 0) hours = 0;\n\n cron = `${minutes} ${hours} * * ${this.periodArray2text(settings.weekdays || [])}`;\n } else if (state.mode === PERIODIC.once) {\n const settings = state.once || {};\n if (!settings.date) {\n settings.date = `${new Date().getDate()}.${padding(new Date().getMonth() + 1)}`;\n }\n const parts = (settings.time || '00:00').split(':');\n const partsDate = settings.date.split('.');\n let minutes = parseInt(parts[1], 10) || 0;\n if (minutes > 59) minutes = 59;\n if (minutes < 0) minutes = 0;\n let hours = parseInt(parts[0], 10) || 0;\n if (hours > 23) hours = 59;\n if (hours < 0) hours = 0;\n let date = parseInt(partsDate[0], 10) || 1;\n if (date > 31) date = 31;\n if (date < 1) hours = 1;\n let month = parseInt(partsDate[1], 10) || 1;\n if (month > 12) month = 12;\n if (month < 1) month = 1;\n\n cron = `${minutes} ${hours} ${date} ${month} *`;\n }\n return cron;\n }\n\n recalcCron() {\n this.onChange(SimpleCron.state2cron(this.state));\n }\n\n getControlsWeekdaysElements(type) {\n const settings = this.state[type];\n return <div key=\"weekdays\" style={{ paddingLeft: 8, width: '100%', maxWidth: 600 }}>\n <h5>{I18n.t('ra_On weekdays')}</h5>\n {[1,2,3,4,5,6,0].map(day => (\n <FormControlLabel\n key={WEEKDAYS[day]}\n control={\n <Checkbox\n checked={settings.weekdays.indexOf(day) !== -1}\n onChange={e => {\n const settings = JSON.parse(JSON.stringify(this.state[type]));\n const pos = settings.weekdays.indexOf(day);\n e.target.checked && pos === -1 && settings.weekdays.push(day);\n !e.target.checked && pos !== -1 && settings.weekdays.splice(pos, 1);\n settings.weekdays.sort();\n this.setState({ [type]: settings }, () => this.recalcCron());\n }}\n value={day.toString()}\n />\n }\n label={I18n.t(WEEKDAYS[day])}\n />))\n }</div>;\n }\n\n getControlsPeriodElements(type) {\n const settings = this.state[type];\n\n if (this.state.extended) {\n return <div key=\"period\" style={{ paddingLeft: 8, display: 'inline-block' }}>\n <h5 style={{ marginBottom: 5 }}>{I18n.t('sc_period')}</h5>\n <TextField\n variant=\"standard\"\n style={{ marginTop: 0, marginBottom: 0, verticalAlign: 'bottom' }}\n key=\"value\"\n label={I18n.t('sc_minutes')}\n value={settings.minutes}\n onChange={e => {\n const settings = JSON.parse(JSON.stringify(this.state[type]));\n settings.minutes = parseInt(e.target.value, 10);\n if (settings.minutes < 1) {\n settings.minutes = 1;\n }\n this.setState({ [type]: settings }, () => this.recalcCron());\n }}\n min={1}\n max={60}\n type=\"number\"\n InputLabelProps={{ shrink: true }}\n margin=\"normal\"\n />\n <TextField\n variant=\"standard\"\n style={{ marginTop: 0, marginBottom: 0, verticalAlign: 'bottom' }}\n key=\"value\"\n label={I18n.t('sc_hours')}\n value={settings.hours}\n onChange={e => {\n const settings = JSON.parse(JSON.stringify(this.state[type]));\n settings.hours = parseInt(e.target.value, 10);\n if (settings.hours < 1) {\n settings.hours = 1;\n }\n this.setState({[type]: settings}, () => this.recalcCron());\n }}\n min={1}\n max={24}\n type=\"number\"\n InputLabelProps={{ shrink: true }}\n margin=\"normal\"\n />\n </div>;\n } else {\n return <div key=\"period\" style={{ paddingLeft: 8, display: 'inline-block' }}>\n <h5 style={{ marginBottom: 5 }}>{I18n.t('sc_period')}</h5>\n <TextField\n variant=\"standard\"\n style={{ marginTop: 0, marginBottom: 0, verticalAlign: 'bottom' }}\n key=\"value\"\n label={I18n.t('sc_every')}\n value={settings.period}\n onChange={e => {\n const settings = JSON.parse(JSON.stringify(this.state[type]));\n settings.period = parseInt(e.target.value, 10);\n if (settings.period < 1) {\n settings.period = 1;\n }\n this.setState({ [type]: settings }, () => this.recalcCron());\n }}\n min={1}\n max={60}\n type=\"number\"\n InputLabelProps={{ shrink: true }}\n margin=\"normal\"\n />\n <Select\n variant=\"standard\"\n style={{verticalAlign: 'bottom'}}\n value={settings.unit}\n onChange={e => {\n const settings = JSON.parse(JSON.stringify(this.state[type]));\n settings.unit = e.target.value;\n this.setState({ [type]: settings }, () => this.recalcCron());\n }}\n >\n {Object.keys(PERIODIC_TYPES).map(mode =>\n <MenuItem key={PERIODIC_TYPES[mode]} value={PERIODIC_TYPES[mode]}>{I18n.t(`sc_${PERIODIC_TYPES[mode]}`)}</MenuItem>)}\n </Select>\n </div>;\n }\n }\n\n getControlsTime(type) {\n const settings = this.state[type];\n return <FormControl variant=\"standard\" className={this.props.classes.formControl} classes={{root: this.props.classes.formControlMarginRight}}>\n <TextField\n variant=\"standard\"\n key=\"at\"\n label={I18n.t('sc_time')}\n value={settings.time}\n type=\"time\"\n onChange={e => {\n const settings = JSON.parse(JSON.stringify(this.state[type]));\n settings.time = e.target.value;\n this.setState({ [type]: settings }, () => this.recalcCron());\n }}\n InputLabelProps={{ shrink: true }}\n margin=\"normal\"\n />\n </FormControl>;\n }\n\n getControlsDate(type) {\n const settings = this.state[type];\n\n if (!settings.date) {\n const d = new Date();\n settings.date = `${d.getDate()}.${padding(d.getMonth() + 1)}`;\n }\n\n //<InputLabel htmlFor=\"formatted-text-mask-input\">{I18n.t('sc_at')}</InputLabel>\n return <FormControl variant=\"standard\" className={this.props.classes.formControl}>\n <TextField\n variant=\"standard\"\n key=\"date\"\n label={I18n.t('sc_date')}\n value={settings.date}\n type=\"text\"\n inputProps={{ className: this.props.classes.formControlPaddingTop }}\n onChange={e => {\n const settings = JSON.parse(JSON.stringify(this.state[type]));\n settings.date = e.target.value;\n this.setState({ [type]: settings }, () => this.recalcCron());\n }}\n InputLabelProps={{ shrink: true }}\n margin=\"normal\"\n />\n </FormControl>;\n }\n\n getOnceElements() {\n return <div style={{ marginLeft: 8 }}>\n {this.getControlsTime('once')}\n {this.getControlsDate('once')}\n </div>;\n }\n\n getIntervalElements() {\n return this.getControlsPeriodElements('interval');\n }\n\n getIntervalBetweenElements() {\n const settings = this.state.intervalBetween;\n return [\n this.getControlsPeriodElements('intervalBetween'),\n <div key=\"between\" style={{ paddingLeft: 8, display: 'inline-block', verticalAlign: 'top' }}>\n <h5 style={{ marginBottom: 5 }}>{I18n.t('sc_hours')}</h5>\n <FormControl variant=\"standard\" className={this.props.classes.formControl}>\n <InputLabel shrink htmlFor=\"age-label-placeholder\">{I18n.t('sc_from')}</InputLabel>\n <Select\n variant=\"standard\"\n style={{ width: 100 }}\n value={settings.timeFrom}\n onChange={e => {\n const settings = JSON.parse(JSON.stringify(this.state.intervalBetween));\n settings.timeFrom = parseInt(e.target.value, 10);\n this.setState({ intervalBetween: settings }, () => this.recalcCron());\n }}\n >\n {[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23].map(hour => (<MenuItem key={`B_${hour}`} value={hour}>{`${padding(hour)}:00`}</MenuItem>))}\n </Select>\n </FormControl>\n <FormControl variant=\"standard\" className={this.props.classes.formControl}>\n <InputLabel shrink htmlFor=\"age-label-placeholder\">{I18n.t('sc_to')}</InputLabel>\n <Select\n variant=\"standard\"\n style={{ width: 100 }}\n value={settings.timeTo}\n onChange={e => {\n const settings = JSON.parse(JSON.stringify(this.state.intervalBetween));\n settings.timeTo = parseInt(e.target.value, 10);\n this.setState({ intervalBetween: settings }, () => this.recalcCron());\n }}\n >\n {[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24].map(hour => (<MenuItem key={`A_${hour}`} value={hour}>{`${padding(hour)}:00`}</MenuItem>))}\n </Select>\n </FormControl>\n </div>,\n this.getControlsWeekdaysElements('intervalBetween'),\n ];\n }\n\n getSpecificTimeElements() {\n return [\n <div key=\"time\" style={{ marginLeft: 8 }}>{this.getControlsTime('specific')}</div>,\n this.getControlsWeekdaysElements('specific'),\n ]\n }\n\n onModeChange(mode) {\n if (mode !== this.state.mode) {\n this.setState({ mode }, () => this.recalcCron());\n }\n }\n\n onChange(cron) {\n if (cron !== this.state.cron) {\n this.setState({ cron });\n this.props.onChange && this.props.onChange(cron);\n }\n }\n\n render() {\n return <div className={this.props.classes.mainDiv}>\n <div style={{ paddingLeft: 8, width: '100%' }}><TextField style={{ width: '100%' }} value={this.state.cron} disabled/></div>\n <div style={{ paddingLeft: 8, width: '100%', height: 60 }}>{convertCronToText(this.state.cron, this.props.language || 'en')}</div>\n <div><FormControl variant=\"standard\" style={{ marginLeft: 8, marginTop: 8 }} className={this.props.classes.formControl}>\n <InputLabel>{I18n.t('ra_Repeat')}</InputLabel>\n <Select\n variant=\"standard\"\n value={this.state.mode}\n onChange={e => this.onModeChange(e.target.value)}\n inputProps={{ name: 'mode', id: 'mode' }}>\n {Object.keys(PERIODIC).map(mode =>\n <MenuItem key={PERIODIC[mode]} value={PERIODIC[mode]}>{I18n.t(`sc_${PERIODIC[mode]}`)}</MenuItem>)}\n </Select>\n </FormControl></div>\n {this.state.mode === PERIODIC.once && this.getOnceElements()}\n {this.state.mode === PERIODIC.interval && this.getIntervalElements()}\n {this.state.mode === PERIODIC.intervalBetween && this.getIntervalBetweenElements()}\n {this.state.mode === PERIODIC.specific && this.getSpecificTimeElements()}\n </div>;\n }\n}\n\nSimpleCron.propTypes = {\n cronExpression: PropTypes.string,\n onChange: PropTypes.func,\n language: PropTypes.string,\n};\n\nexport default withStyles(styles)(SimpleCron);\n\n"],"mappings":"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"}