@iobroker/adapter-react-v5 0.0.2
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.
- package/Components/404.js +155 -0
- package/Components/404.js.map +1 -0
- package/Components/ColorPicker.js +313 -0
- package/Components/ColorPicker.js.map +1 -0
- package/Components/ComplexCron.js +606 -0
- package/Components/ComplexCron.js.map +1 -0
- package/Components/FileBrowser.js +2147 -0
- package/Components/FileBrowser.js.map +1 -0
- package/Components/FileViewer.js +245 -0
- package/Components/FileViewer.js.map +1 -0
- package/Components/Icon.js +234 -0
- package/Components/Icon.js.map +1 -0
- package/Components/IconPicker.js +188 -0
- package/Components/IconPicker.js.map +1 -0
- package/Components/IconSelector.js +337 -0
- package/Components/IconSelector.js.map +1 -0
- package/Components/Image.js +215 -0
- package/Components/Image.js.map +1 -0
- package/Components/Loader.js +134 -0
- package/Components/Loader.js.map +1 -0
- package/Components/Loaders/PT.css +109 -0
- package/Components/Loaders/PT.js +104 -0
- package/Components/Loaders/PT.js.map +1 -0
- package/Components/Loaders/Vendor.css +13 -0
- package/Components/Loaders/Vendor.js +108 -0
- package/Components/Loaders/Vendor.js.map +1 -0
- package/Components/Logo.js +230 -0
- package/Components/Logo.js.map +1 -0
- package/Components/MDUtils.js +141 -0
- package/Components/MDUtils.js.map +1 -0
- package/Components/ObjectBrowser.js +6119 -0
- package/Components/ObjectBrowser.js.map +1 -0
- package/Components/Router.js +152 -0
- package/Components/Router.js.map +1 -0
- package/Components/SaveCloseButtons.js +177 -0
- package/Components/SaveCloseButtons.js.map +1 -0
- package/Components/Schedule.js +1891 -0
- package/Components/Schedule.js.map +1 -0
- package/Components/SelectWithIcon.js +235 -0
- package/Components/SelectWithIcon.js.map +1 -0
- package/Components/SimpleCron/cron2text.js +563 -0
- package/Components/SimpleCron/cron2text.js.map +1 -0
- package/Components/SimpleCron/cronText.js +60 -0
- package/Components/SimpleCron/cronText.js.map +1 -0
- package/Components/SimpleCron/index.js +861 -0
- package/Components/SimpleCron/index.js.map +1 -0
- package/Components/SimpleCron/jquery.cron.locale.js +322 -0
- package/Components/SimpleCron/jquery.cron.locale.js.map +1 -0
- package/Components/TabContainer.js +108 -0
- package/Components/TabContainer.js.map +1 -0
- package/Components/TabContent.js +96 -0
- package/Components/TabContent.js.map +1 -0
- package/Components/TabHeader.js +72 -0
- package/Components/TabHeader.js.map +1 -0
- package/Components/TextWithIcon.js +148 -0
- package/Components/TextWithIcon.js.map +1 -0
- package/Components/ToggleThemeMenu.js +49 -0
- package/Components/ToggleThemeMenu.js.map +1 -0
- package/Components/TreeTable.js +1030 -0
- package/Components/TreeTable.js.map +1 -0
- package/Components/Utils.js +1763 -0
- package/Components/Utils.js.map +1 -0
- package/Components/copy-to-clipboard.js +183 -0
- package/Components/copy-to-clipboard.js.map +1 -0
- package/Components/loader.css +222 -0
- package/Components/types.d.ts +121 -0
- package/Connection.js +3334 -0
- package/Connection.js.map +1 -0
- package/Dialogs/ComplexCron.js +193 -0
- package/Dialogs/ComplexCron.js.map +1 -0
- package/Dialogs/Confirm.js +211 -0
- package/Dialogs/Confirm.js.map +1 -0
- package/Dialogs/Cron.js +254 -0
- package/Dialogs/Cron.js.map +1 -0
- package/Dialogs/Error.js +137 -0
- package/Dialogs/Error.js.map +1 -0
- package/Dialogs/Message.js +118 -0
- package/Dialogs/Message.js.map +1 -0
- package/Dialogs/SelectID.js +313 -0
- package/Dialogs/SelectID.js.map +1 -0
- package/Dialogs/SimpleCron.js +177 -0
- package/Dialogs/SimpleCron.js.map +1 -0
- package/Dialogs/TextInput.js +194 -0
- package/Dialogs/TextInput.js.map +1 -0
- package/GenericApp.js +1022 -0
- package/GenericApp.js.map +1 -0
- package/LICENSE +22 -0
- package/Prompt.js +21 -0
- package/Prompt.js.map +1 -0
- package/README.md +645 -0
- package/Theme.js +422 -0
- package/Theme.js.map +1 -0
- package/assets/devices/Alarm Systems.svg +19 -0
- package/assets/devices/Amplifier.svg +22 -0
- package/assets/devices/Awnings.svg +5 -0
- package/assets/devices/Battery Status.svg +5 -0
- package/assets/devices/Ceiling Spotlights.svg +16 -0
- package/assets/devices/Chandelier.svg +7 -0
- package/assets/devices/Climate.svg +12 -0
- package/assets/devices/Coffee Makers.svg +6 -0
- package/assets/devices/Cold Water.svg +31 -0
- package/assets/devices/Computer.svg +21 -0
- package/assets/devices/Consumption.svg +8 -0
- package/assets/devices/Curtains.svg +43 -0
- package/assets/devices/Dishwashers.svg +12 -0
- package/assets/devices/Doors.svg +6 -0
- package/assets/devices/Doorstep.svg +35 -0
- package/assets/devices/Dryer.svg +14 -0
- package/assets/devices/Fan.svg +20 -0
- package/assets/devices/Floor Lamps.svg +5 -0
- package/assets/devices/Garage Doors.svg +9 -0
- package/assets/devices/Gates.svg +32 -0
- package/assets/devices/Hairdryer.svg +23 -0
- package/assets/devices/Handle.svg +6 -0
- package/assets/devices/Hanging Lamps.svg +9 -0
- package/assets/devices/Heater.svg +44 -0
- package/assets/devices/Hoods.svg +12 -0
- package/assets/devices/Hot Water.svg +10 -0
- package/assets/devices/Humidity.svg +41 -0
- package/assets/devices/Iron.svg +5 -0
- package/assets/devices/Irrigation.svg +42 -0
- package/assets/devices/Led Strip.svg +31 -0
- package/assets/devices/Light.svg +30 -0
- package/assets/devices/Lightings.svg +46 -0
- package/assets/devices/Lock.svg +19 -0
- package/assets/devices/Louvre.svg +7 -0
- package/assets/devices/Mowing Machine.svg +9 -0
- package/assets/devices/Music.svg +13 -0
- package/assets/devices/Outdoor Blinds.svg +7 -0
- package/assets/devices/People.svg +19 -0
- package/assets/devices/Pool.svg +8 -0
- package/assets/devices/Power Consumption.svg +13 -0
- package/assets/devices/Printer.svg +10 -0
- package/assets/devices/Pump.svg +10 -0
- package/assets/devices/Receiver.svg +19 -0
- package/assets/devices/Sconces.svg +10 -0
- package/assets/devices/Security.svg +34 -0
- package/assets/devices/Shading.svg +5 -0
- package/assets/devices/Shutters.svg +11 -0
- package/assets/devices/SmokeDetector.svg +13 -0
- package/assets/devices/Sockets.svg +13 -0
- package/assets/devices/Speaker.svg +35 -0
- package/assets/devices/Stove.svg +12 -0
- package/assets/devices/Table Lamps.svg +12 -0
- package/assets/devices/Temperature Sensors.svg +28 -0
- package/assets/devices/Tv.svg +8 -0
- package/assets/devices/Vacuum Cleaner.svg +16 -0
- package/assets/devices/Ventilation.svg +12 -0
- package/assets/devices/Washing Machines.svg +16 -0
- package/assets/devices/Water Consumption.svg +6 -0
- package/assets/devices/Water Heater.svg +8 -0
- package/assets/devices/Water.svg +40 -0
- package/assets/devices/Weather.svg +28 -0
- package/assets/devices/Window.svg +8 -0
- package/assets/devices/list.json +994 -0
- package/assets/devices/names.txt +63 -0
- package/assets/devices/parseNames.js +34 -0
- package/assets/lamp_ceiling.svg +9 -0
- package/assets/lamp_table.svg +8 -0
- package/assets/no_icon.svg +9 -0
- package/assets/rooms/Anteroom.svg +53 -0
- package/assets/rooms/Attic.svg +21 -0
- package/assets/rooms/Balcony.svg +13 -0
- package/assets/rooms/Barn.svg +6 -0
- package/assets/rooms/Basement.svg +5 -0
- package/assets/rooms/Bathroom.svg +38 -0
- package/assets/rooms/Bedroom.svg +5 -0
- package/assets/rooms/Boiler Room.svg +13 -0
- package/assets/rooms/Carport.svg +17 -0
- package/assets/rooms/Cellar.svg +89 -0
- package/assets/rooms/Chamber.svg +9 -0
- package/assets/rooms/Corridor.svg +53 -0
- package/assets/rooms/Dining Area.svg +37 -0
- package/assets/rooms/Dining Room.svg +37 -0
- package/assets/rooms/Dining.svg +37 -0
- package/assets/rooms/Dressing Room.svg +5 -0
- package/assets/rooms/Driveway.svg +15 -0
- package/assets/rooms/Entrance.svg +44 -0
- package/assets/rooms/Equipment Room.svg +15 -0
- package/assets/rooms/Front Yard.svg +64 -0
- package/assets/rooms/Gallery.svg +14 -0
- package/assets/rooms/Garage.svg +20 -0
- package/assets/rooms/Garden.svg +13 -0
- package/assets/rooms/Ground Floor.svg +95 -0
- package/assets/rooms/Guest Bathroom.svg +33 -0
- package/assets/rooms/Guest Room.svg +5 -0
- package/assets/rooms/Gym.svg +5 -0
- package/assets/rooms/Hall.svg +19 -0
- package/assets/rooms/Home Theater.svg +8 -0
- package/assets/rooms/Kitchen.svg +18 -0
- package/assets/rooms/Laundry Room.svg +12 -0
- package/assets/rooms/Living Area.svg +11 -0
- package/assets/rooms/Living Room.svg +10 -0
- package/assets/rooms/Locker Room.svg +17 -0
- package/assets/rooms/Nursery.svg +5 -0
- package/assets/rooms/Office.svg +8 -0
- package/assets/rooms/Outdoors.svg +7 -0
- package/assets/rooms/Playroom.svg +6 -0
- package/assets/rooms/Pool.svg +8 -0
- package/assets/rooms/Rear Wall.svg +30 -0
- package/assets/rooms/Second Floor.svg +95 -0
- package/assets/rooms/Shed.svg +16 -0
- package/assets/rooms/Sleeping Area.svg +22 -0
- package/assets/rooms/Stairway.svg +5 -0
- package/assets/rooms/Stairwell.svg +15 -0
- package/assets/rooms/Storeroom.svg +5 -0
- package/assets/rooms/Summer House.svg +27 -0
- package/assets/rooms/Swimming Pool.svg +21 -0
- package/assets/rooms/Terrace.svg +7 -0
- package/assets/rooms/Toilet.svg +10 -0
- package/assets/rooms/Upstairs.svg +6 -0
- package/assets/rooms/Wardrobe.svg +60 -0
- package/assets/rooms/Washroom.svg +20 -0
- package/assets/rooms/Wc.svg +10 -0
- package/assets/rooms/Windscreen.svg +60 -0
- package/assets/rooms/Workshop.svg +23 -0
- package/assets/rooms/Workspace.svg +8 -0
- package/assets/rooms/list.json +946 -0
- package/assets/rooms/names.txt +60 -0
- package/assets/rooms/parseNames.js +34 -0
- package/gulpfile.js +113 -0
- package/i18n/de.json +280 -0
- package/i18n/en.json +280 -0
- package/i18n/es.json +267 -0
- package/i18n/fr.json +267 -0
- package/i18n/it.json +267 -0
- package/i18n/nl.json +267 -0
- package/i18n/pl.json +267 -0
- package/i18n/pt.json +267 -0
- package/i18n/ru.json +280 -0
- package/i18n/zh-cn.json +267 -0
- package/i18n.js +171 -0
- package/i18n.js.map +1 -0
- package/icons/IconAdapter.js +39 -0
- package/icons/IconAdapter.js.map +1 -0
- package/icons/IconAlias.js +39 -0
- package/icons/IconAlias.js.map +1 -0
- package/icons/IconChannel.js +80 -0
- package/icons/IconChannel.js.map +1 -0
- package/icons/IconClearFilter.js +41 -0
- package/icons/IconClearFilter.js.map +1 -0
- package/icons/IconClosed.js +39 -0
- package/icons/IconClosed.js.map +1 -0
- package/icons/IconCopy.js +48 -0
- package/icons/IconCopy.js.map +1 -0
- package/icons/IconDevice.js +147 -0
- package/icons/IconDevice.js.map +1 -0
- package/icons/IconDocument.js +39 -0
- package/icons/IconDocument.js.map +1 -0
- package/icons/IconExpert.js +50 -0
- package/icons/IconExpert.js.map +1 -0
- package/icons/IconFx.js +39 -0
- package/icons/IconFx.js.map +1 -0
- package/icons/IconInstance.js +39 -0
- package/icons/IconInstance.js.map +1 -0
- package/icons/IconLogout.js +50 -0
- package/icons/IconLogout.js.map +1 -0
- package/icons/IconOpen.js +39 -0
- package/icons/IconOpen.js.map +1 -0
- package/icons/IconState.js +58 -0
- package/icons/IconState.js.map +1 -0
- package/index.css +55 -0
- package/package.json +42 -0
- package/types.d.ts +84 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["ComplexCron.js"],"names":["styles","theme","mainDiv","width","height","periodSelect","display","slider","marginTop","tabContent","padding","overflow","numberButton","minWidth","margin","numberButtonBreak","appBar","color","WEEKDAYS","MONTHS","convertMinusIntoArray","value","max","result","i","push","parts","toString","split","p","length","trim","items","iMax","parseInt","map","a","sort","splice","convertArrayIntoMinus","newParts","b","start","end","join","ComplexCron","props","cron","cronExpression","replace","state","cron2state","extended","tab","seconds","state2cron","modes","minutes","hours","dates","months","dows","Object","assign","setTimeout","onChange","setState","type","recalcCron","nums","pos","indexOf","values","classes","onToggle","I18n","t","every","everyN","select","JSON","parse","stringify","verticalAlign","e","target","num","console","log","shrink","getDigitsSelector","lang","paddingLeft","convertCronToText","language","checked","root","active","getPeriodsTab","cronParts","options","text","React","Component","propTypes","PropTypes","string","func"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport withStyles from '@mui/styles/withStyles';\n\nimport Checkbox from '@mui/material/Checkbox';\nimport Button from '@mui/material/Button';\nimport MenuItem from '@mui/material/MenuItem';\nimport Select from '@mui/material/Select';\nimport FormControlLabel from '@mui/material/FormControlLabel';\nimport AppBar from '@mui/material/AppBar';\nimport Tabs from '@mui/material/Tabs';\nimport Tab from '@mui/material/Tab';\nimport TextField from '@mui/material/TextField';\n\nimport I18n from '../i18n';\nimport convertCronToText from './SimpleCron/cronText';\n\nconst styles = theme => ({\n mainDiv: {\n width: '100%',\n height: '100%'\n },\n periodSelect: {\n //margin: '0 10px 60px 10px',\n display: 'block',\n width: 200\n },\n slider: {\n marginTop: 20,\n display: 'block',\n width: '100%'\n },\n tabContent: {\n padding: 20,\n height: 'calc(100% - 240px)',\n overflow: 'auto',\n },\n numberButton: {\n padding: 4,\n minWidth: 40,\n margin: 5\n },\n numberButtonBreak: {\n display: 'block'\n },\n appBar: {\n color: 'white'\n }\n});\n\nconst WEEKDAYS = [\n 'Sunday',\n 'Monday',\n 'Tuesday',\n 'Wednesday',\n 'Thursday',\n 'Friday',\n 'Saturday',\n 'Sunday',\n];\nconst MONTHS = [\n 'January',\n 'February',\n 'March',\n 'April',\n 'May',\n 'June',\n 'July',\n 'August',\n 'September',\n 'October',\n 'November',\n 'December'\n];\n\n// 5-7,9-11 => [5,6,7,9,10,11]\nfunction convertMinusIntoArray(value, max) {\n let result = [];\n\n if (value === '*') {\n if (max === 24 || max === 60 || max === 7) {\n for (let i = 0; i < max; i++) {\n result.push(i);\n }\n } else {\n for (let i = 1; i <= max; i++) {\n result.push(i);\n }\n }\n return result; // array with entries max\n }\n\n const parts = (value || '').toString().split(',');\n\n for (let p = 0; p < parts.length; p++) {\n if (! parts[p].trim().length) continue;\n const items = parts[p].trim().split('-');\n if (items.length > 1) {\n let iMax = parseInt(items[1], 10);\n for (let i = parseInt(items[0], 10); i <= iMax; i++) {\n result.push(i);\n }\n } else {\n result.push(parseInt(parts[p], 10));\n }\n }\n result = result.map(a => parseInt(a, 10));\n\n result.sort();\n\n\n // remove double entries\n for (let p = result.length - 1; p >= 0; p--) {\n if (result[p] === result[p + 1]) {\n result.splice(p + 1, 1);\n }\n }\n\n\n return result;\n}\n\n// [5,6,7,9,10,11] => 5-7,9-11\nfunction convertArrayIntoMinus(value, max) {\n if (typeof value !== 'object') {\n value = [value];\n }\n if (value.length === max) {\n return '*';\n }\n const newParts = [];\n if (!value.length) {\n return '-';\n }\n value = value.map(a => parseInt(a, 10));\n\n value.sort((a, b) => a -b);\n\n let start = value[0];\n let end = value[0];\n for (let p = 1; p < value.length; p++) {\n if (value[p] - 1 !== parseInt(value[p - 1], 10)) {\n if (start === end) {\n newParts.push(start)\n } else if (end - 1 === start) {\n newParts.push(start + ',' + end);\n } else {\n newParts.push(start + '-' + end);\n }\n start = value[p];\n end = value[p];\n } else {\n end = value[p];\n }\n }\n\n if (start === end) {\n newParts.push(start)\n } else if (end - 1 === start) {\n newParts.push(start + ',' + end);\n } else {\n newParts.push(start + '-' + end);\n }\n\n return newParts.join(',');\n}\n\nclass ComplexCron 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 = ComplexCron.cron2state(cron || '* * * * *');\n\n this.state = {\n extended: false,\n tab: state.seconds !== false ? 1 : 0,\n cron: ComplexCron.state2cron(state),\n modes: {\n seconds: null,\n minutes: null,\n hours: null,\n dates: null,\n months: null,\n dows: null\n }\n };\n Object.assign(this.state, state);\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 cron2state(cron) {\n cron = cron.replace(/['\"]/g, '').trim();\n const cronParts = cron.split(' ').map(p => p.trim());\n const options = {};\n\n if (cronParts.length === 6) {\n options.seconds = cronParts[0] || '*';\n options.minutes = cronParts[1] || '*';\n options.hours = cronParts[2] || '*';\n options.dates = cronParts[3] || '*';\n options.months = cronParts[4] || '*';\n options.dows = cronParts[5] || '*';\n } else {\n options.seconds = false;\n options.minutes = cronParts[0] || '*';\n options.hours = cronParts[1] || '*';\n options.dates = cronParts[2] || '*';\n options.months = cronParts[3] || '*';\n options.dows = cronParts[4] || '*';\n }\n return options;\n }\n static state2cron(state) {\n let text = `${state.minutes} ${state.hours} ${state.dates} ${state.months} ${state.dows}`;\n if (state.seconds !== false) {\n text = state.seconds + ' ' + text;\n }\n return text;\n }\n\n recalcCron() {\n let cron = ComplexCron.state2cron(this.state);\n if (cron !== this.state.cron) {\n this.setState({cron}, () => {\n this.props.onChange && this.props.onChange(this.state.cron);\n });\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 onToggle(i, type, max) {\n if (i === true) {\n this.setState({[type]: '*'}, () => this.recalcCron());\n } else if (i === false) {\n if (max === 60 || max === 24) {\n this.setState({[type]: '0'}, () => this.recalcCron());\n } else {\n this.setState({[type]: '1'}, () => this.recalcCron());\n }\n } else {\n let nums = convertMinusIntoArray(this.state[type], max);\n const pos = nums.indexOf(i);\n if (pos !== -1) {\n nums.splice(pos, 1);\n } else {\n nums.push(i);\n nums.sort();\n }\n this.setState({[type]: convertArrayIntoMinus(nums, max)}, () => this.recalcCron());\n }\n }\n\n getDigitsSelector(type, max) {\n let values = [];\n if (max === 7) {\n values = [1,2,3,4,5,6,0];\n } else if (max === 60 || max === 24) {\n for (let i = 0; i < max; i++) {\n values.push(i);\n }\n } else {\n for (let i = 1; i <= max; i++) {\n values.push(i);\n }\n }\n\n const parts = convertMinusIntoArray(this.state[type], max);\n\n return [\n <Button\n key=\"removeall\"\n variant={'outlined'}\n className={this.props.classes.numberButton}\n //style={{paddingBottom: 20}}\n color={'primary'}\n onClick={() => this.onToggle(false, type, max)}>{I18n.t('ra_Deselect all')}</Button>,\n <Button\n key=\"addall\"\n variant={'contained'}\n //style={{paddingBottom: 20}}\n className={this.props.classes.numberButton}\n color={'secondary'}\n onClick={() => this.onToggle(true, type, max)}>{I18n.t('ra_Select all')}</Button>,\n <div key=\"all\">\n {values.map(i =>\n [((max === 7 && i === 4) ||\n (max === 12 && i === 7) ||\n (max === 31 && !((i - 1) % 10)) ||\n (max === 60 && i && !(i % 10)) ||\n (max === 24 && i && !(i % 6))) ?\n (<div key={'allInner' + i} style={{width: '100%'}}/>) : null,\n (<Button\n key={'_' + i}\n variant={parts.indexOf(i) !== -1 ? 'contained' : 'outlined'}\n className={this.props.classes.numberButton}\n color={parts.indexOf(i) !== -1 ? 'secondary' : 'primary'}\n onClick={() => this.onToggle(i, type, max)}>{max === 7 ? I18n.t(WEEKDAYS[i]) : (max === 12 ? MONTHS[i - 1] : i)}</Button>\n )])}\n </div>\n ];\n }\n\n getPeriodsTab(type, max) {\n let value = this.state[type];\n let every = value === '*';\n let everyN = value.toString().indexOf('/') !== -1;\n let select;\n if (this.state.modes[type] === null) {\n select = every ? 'every' : (everyN ? 'everyN' : 'specific');\n const modes = JSON.parse(JSON.stringify(this.state.modes));\n modes[type] = select;\n return setTimeout(() => this.setState({modes}, () => this.recalcCron()), 100);\n } else {\n every = this.state.modes[type] === 'every';\n everyN = this.state.modes[type] === 'everyN';\n select = this.state.modes[type];\n }\n\n if (everyN) {\n value = parseInt(value.replace('*/', ''), 10) || 1;\n }\n\n return <div>\n <Select\n variant=\"standard\"\n className={this.props.classes.periodSelect}\n style={{verticalAlign: 'bottom'}}\n value={select}\n onChange={e => {\n const modes = JSON.parse(JSON.stringify(this.state.modes));\n modes[type] = e.target.value;\n if (e.target.value === 'every') {\n this.setState({[type]: '*', modes}, () => this.recalcCron());\n } else if (e.target.value === 'everyN') {\n const num = parseInt(this.state[type].toString().replace('*/', ''), 10) || 1;\n this.setState({[type]: '*/' + num, modes}, () => this.recalcCron());\n } else if (e.target.value === 'specific') {\n let num = parseInt(this.state[type].split(',')[0], 10) || 0;\n console.log(num);\n if (!num && (type === 'months' || type === 'dates')) {\n num = 1;\n }\n this.setState({[type]: convertArrayIntoMinus(num, max), modes}, () => this.recalcCron());\n }\n }}>\n <MenuItem key='every' value='every'>{I18n.t('sc_every_' + type)}</MenuItem>\n <MenuItem key='everyN' value='everyN'>{I18n.t('sc_everyN_' + type)}</MenuItem>\n <MenuItem key='specific' value='specific'>{I18n.t('sc_specific_' + type)}</MenuItem>\n </Select>\n {everyN && false && <span>{value}</span>}\n {everyN && <TextField\n variant=\"standard\"\n key=\"interval\"\n label={I18n.t('sc_' + type)}\n value={value}\n min={1}\n max={max}\n onChange={e => {\n this.setState({[type]: '*/' + e.target.value}, () => this.recalcCron());\n }}\n InputLabelProps={{shrink: true,}}\n type=\"number\"\n margin=\"normal\"\n />}\n {!every && !everyN && this.getDigitsSelector(type, max)}\n </div>;\n }\n\n convertCronToText(cron, lang) {\n if (cron.split(' ').indexOf('-') !== -1) {\n return I18n.t('ra_Invalid CRON');\n } else {\n return convertCronToText(cron, lang);\n }\n }\n\n render() {\n const tab = this.state.seconds !== false ? this.state.tab : this.state.tab + 1;\n return <div className={this.props.classes.mainDiv}>\n <div style={{paddingLeft: 8, width: '100%'}}><TextField variant=\"standard\" style={{width: '100%'}} value={this.state.cron} disabled={true}/></div>\n <div style={{paddingLeft: 8, width: '100%', height: 60}}>{this.convertCronToText(this.state.cron, this.props.language || 'en')}</div>\n <FormControlLabel\n control={<Checkbox checked={this.state.seconds}\n onChange={e => this.setState({seconds: e.target.checked ? '*' : false}, () => this.recalcCron())}/>}\n label={I18n.t('ra_use seconds')}\n />\n <AppBar position=\"static\" classes={{root: this.props.classes.appBar}} color=\"secondary\">\n <Tabs value={this.state.tab} className={this.props.classes.appBar} color=\"secondary\" onChange={(active, tab) =>\n this.setState({tab})}>\n {this.state.seconds !== false && <Tab id=\"sc_seconds\" label={I18n.t('sc_seconds')}/>}\n <Tab id=\"minutes\" label={I18n.t('sc_minutes')}/>\n <Tab id=\"hours\" label={I18n.t('sc_hours')}/>\n <Tab id=\"dates\" label={I18n.t('sc_dates')}/>\n <Tab id=\"months\" label={I18n.t('sc_months')}/>\n <Tab id=\"dows\" label={I18n.t('sc_dows')}/>\n </Tabs>\n </AppBar>\n {tab === 0 && <div className={this.props.classes.tabContent}>{this.getPeriodsTab('seconds', 60)}</div>}\n {tab === 1 && <div className={this.props.classes.tabContent}>{this.getPeriodsTab('minutes', 60)}</div>}\n {tab === 2 && <div className={this.props.classes.tabContent}>{this.getPeriodsTab('hours', 24)}</div>}\n {tab === 3 && <div className={this.props.classes.tabContent}>{this.getPeriodsTab('dates', 31)}</div>}\n {tab === 4 && <div className={this.props.classes.tabContent}>{this.getPeriodsTab('months', 12)}</div>}\n {tab === 5 && <div className={this.props.classes.tabContent}>{this.getPeriodsTab('dows', 7)}</div>}\n </div>;\n }\n}\n\nComplexCron.propTypes = {\n cronExpression: PropTypes.string,\n onChange: PropTypes.func,\n language: PropTypes.string,\n};\n\nexport default withStyles(styles)(ComplexCron);\n\n"],"file":"ComplexCron.js"}
|