@iobroker/adapter-react-v5 7.3.2 → 7.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -2
- package/build/Components/ComplexCron.js +1 -1
- package/build/Components/ComplexCron.js.map +1 -1
- package/build/Components/Icon.d.ts +1 -2
- package/build/Components/Icon.js +5 -5
- package/build/Components/Icon.js.map +1 -1
- package/build/Components/IconDeviceType.d.ts +8 -0
- package/build/Components/IconDeviceType.js +207 -0
- package/build/Components/IconDeviceType.js.map +1 -0
- package/build/Components/SimpleCron/cronText.d.ts +1 -2
- package/build/Components/SimpleCron/cronText.js +1 -2
- package/build/Components/SimpleCron/cronText.js.map +1 -1
- package/build/Components/SimpleCron/index.js +1 -1
- package/build/Components/SimpleCron/index.js.map +1 -1
- package/build/icons/IconButtonImage.d.ts +3 -0
- package/build/icons/IconButtonImage.js +7 -0
- package/build/icons/IconButtonImage.js.map +1 -0
- package/build/icons/IconVacuum.d.ts +3 -0
- package/build/icons/IconVacuum.js +10 -0
- package/build/icons/IconVacuum.js.map +1 -0
- package/build/index.d.ts +7 -3
- package/build/index.js +7 -3
- package/build/index.js.map +1 -1
- package/modulefederation.admin.config.js +2 -0
- package/package.json +17 -17
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cronText.js","sourceRoot":"./src/","sources":["Components/SimpleCron/cronText.tsx"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,WAAW,CAAC;AAClC,OAAO,sBAAsB,CAAC;AAC9B,OAAO,sBAAsB,CAAC;AAC9B,OAAO,sBAAsB,CAAC;AAC9B,OAAO,sBAAsB,CAAC;AAC9B,OAAO,sBAAsB,CAAC;AAC9B,OAAO,yBAAyB,CAAC;AACjC,OAAO,sBAAsB,CAAC;AAC9B,OAAO,yBAAyB,CAAC;AACjC,OAAO,sBAAsB,CAAC;AAE9B,
|
|
1
|
+
{"version":3,"file":"cronText.js","sourceRoot":"./src/","sources":["Components/SimpleCron/cronText.tsx"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,WAAW,CAAC;AAClC,OAAO,sBAAsB,CAAC;AAC9B,OAAO,sBAAsB,CAAC;AAC9B,OAAO,sBAAsB,CAAC;AAC9B,OAAO,sBAAsB,CAAC;AAC9B,OAAO,sBAAsB,CAAC;AAC9B,OAAO,yBAAyB,CAAC;AACjC,OAAO,sBAAsB,CAAC;AAC9B,OAAO,yBAAyB,CAAC;AACjC,OAAO,sBAAsB,CAAC;AAE9B,MAAM,UAAU,iBAAiB,CAAC,IAAY,EAAE,IAAyB;IACrE,OAAO,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;AACtD,CAAC","sourcesContent":["import cronstrue from 'cronstrue';\nimport 'cronstrue/locales/fr';\nimport 'cronstrue/locales/es';\nimport 'cronstrue/locales/de';\nimport 'cronstrue/locales/it';\nimport 'cronstrue/locales/ru';\nimport 'cronstrue/locales/zh_CN';\nimport 'cronstrue/locales/uk';\nimport 'cronstrue/locales/pt_BR';\nimport 'cronstrue/locales/pl';\n\nexport function convertCronToText(cron: string, lang?: ioBroker.Languages): string {\n return cronstrue.toString(cron, { locale: lang });\n}\n"]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { InputLabel, MenuItem, Select, TextField, FormControl, FormControlLabel, Checkbox, } from '@mui/material';
|
|
3
|
-
import convertCronToText from './cronText';
|
|
3
|
+
import { convertCronToText } from './cronText';
|
|
4
4
|
import { I18n } from '../../i18n';
|
|
5
5
|
const styles = {
|
|
6
6
|
mainDiv: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"./src/","sources":["Components/SimpleCron/index.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from 'react';\n\nimport {\n InputLabel,\n MenuItem,\n Select,\n TextField,\n FormControl,\n FormControlLabel,\n Checkbox,\n type Theme,\n} from '@mui/material';\n\nimport convertCronToText from './cronText';\n\nimport { I18n } from '../../i18n';\n\nconst styles: Record<string, React.CSSProperties> = {\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\ntype SimpleCronType = 'once' | 'interval' | 'intervalBetween' | 'specific';\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 'ra_Sunday',\n 'ra_Monday',\n 'ra_Tuesday',\n 'ra_Wednesday',\n 'ra_Thursday',\n 'ra_Friday',\n 'ra_Saturday',\n 'ra_Sunday',\n];\n\nfunction padding(num: number): string {\n if (num < 10) {\n return `0${num}`;\n }\n\n return `${num}`;\n}\nconst DEFAULT_STATE = {\n mode: 'interval',\n interval: {\n period: 1,\n unit: PERIODIC_TYPES.minutes,\n },\n};\n\ninterface SimpleCronProps {\n cronExpression?: string;\n onChange: (cron: string) => void;\n language: ioBroker.Languages;\n}\n\ninterface SimpleCronState {\n extended: boolean;\n cron: string;\n mode: SimpleCronType;\n once: {\n time: string;\n date: string;\n // weekdays?: number[];\n };\n interval: {\n period: number;\n unit: string;\n minutes?: number; // if extended\n hours?: number; // if extended\n };\n intervalBetween: {\n period: number;\n unit: string;\n timeFrom: number;\n timeTo: number;\n weekdays: number[];\n minutes?: number; // if extended\n hours?: number; // if extended\n };\n specific: {\n time: string;\n weekdays: number[];\n };\n}\n\ninterface CronStructure {\n seconds: string | null;\n minutes: string;\n hours: string;\n date: string;\n months: string;\n dow: string;\n}\n\nfunction text2weekdays(text: string): number[] {\n if (text === '*') {\n return [0, 1, 2, 3, 4, 5, 6];\n }\n\n const parts = text.split(',');\n const list: number[] = [];\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 const numPart = parseInt(part, 10);\n if (!list.includes(numPart)) {\n list.push(numPart);\n }\n }\n });\n list.sort();\n return list;\n}\n\nexport function cron2state(cron: string, force?: boolean): Partial<SimpleCronState> | null {\n cron = cron.replace(/['\"]/g, '').trim();\n const cronParts = cron.split(' ');\n let options: CronStructure;\n let state: Partial<SimpleCronState> | null = null;\n\n if (cronParts.length === 6) {\n options = {\n seconds: cronParts[0] || '*',\n minutes: cronParts[1] || '*',\n hours: cronParts[2] || '*',\n date: cronParts[3] || '*',\n months: cronParts[4] || '*',\n dow: cronParts[5] || '*',\n };\n } else {\n options = {\n seconds: null,\n minutes: cronParts[0] || '*',\n hours: cronParts[1] || '*',\n date: cronParts[2] || '*',\n months: cronParts[3] || '*',\n dow: cronParts[4] || '*',\n };\n }\n\n // * * * * *\n if (\n options.seconds === null &&\n options.minutes === '*' &&\n options.hours === '*' &&\n options.date === '*' &&\n options.months === '*' &&\n (options.dow === '*' || force)\n ) {\n state = {\n mode: 'interval',\n interval: {\n period: 1,\n unit: PERIODIC_TYPES.minutes,\n },\n };\n } // * * * * * *\n\n if (\n options.seconds === '*' &&\n options.minutes === '*' &&\n options.hours === '*' &&\n options.date === '*' &&\n options.months === '*' &&\n (options.dow === '*' || force)\n ) {\n state = {\n mode: 'interval',\n interval: {\n period: 1,\n unit: PERIODIC_TYPES.seconds,\n },\n };\n } else if (\n options.seconds === null &&\n options.minutes.includes('/') &&\n options.hours === '*' &&\n options.date === '*' &&\n options.months === '*' &&\n (options.dow === '*' || force)\n ) {\n // */n * * * *\n state = {\n mode: 'interval',\n interval: {\n period: parseInt(options.minutes.split('/')[1], 10),\n unit: PERIODIC_TYPES.minutes,\n },\n };\n } else if (\n options.seconds !== null &&\n options.seconds.includes('/') &&\n options.minutes === '*' &&\n options.hours === '*' &&\n options.date === '*' &&\n options.months === '*' &&\n (options.dow === '*' || force)\n ) {\n // */n * * * * *\n state = {\n mode: 'interval',\n interval: {\n period: parseInt(options.seconds.split('/')[1], 10),\n unit: PERIODIC_TYPES.seconds,\n },\n };\n } else if (\n options.seconds !== null &&\n options.seconds.includes('/') &&\n options.minutes === '*' &&\n options.hours.includes('-') &&\n options.date === '*' &&\n options.months === '*' &&\n (options.dow === '*' || force)\n ) {\n // */n * 0-23 * * 1-7 or */n * 0-23 * * *\n state = {\n mode: 'intervalBetween',\n 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: text2weekdays(options.dow),\n },\n };\n } else if (\n options.seconds === null &&\n options.minutes.includes('/') &&\n options.hours.includes('-') &&\n options.date === '*' &&\n options.months === '*' &&\n (options.dow === '*' || force)\n ) {\n // */n 0-23 * * 1-7 or */n 0-23 * * *\n state = {\n mode: 'intervalBetween',\n 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: text2weekdays(options.dow),\n },\n };\n } else if (\n 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 (options.dow === '*' || force)\n ) {\n // m h * * 1-7 or m h * * *\n state = {\n mode: 'specific',\n specific: {\n time: `${padding(parseInt(options.hours, 10))}:${padding(parseInt(options.minutes, 10))}`,\n weekdays: text2weekdays(options.dow),\n },\n };\n } else if (\n 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 === '*' || force)\n ) {\n // m h d M *\n state = {\n mode: 'once',\n 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 },\n };\n }\n\n return state;\n}\n\nexport class SimpleCron extends React.Component<SimpleCronProps, SimpleCronState> {\n constructor(props: SimpleCronProps) {\n super(props);\n let cron =\n typeof props.cronExpression === 'string'\n ? props.cronExpression.replace(/^[\"']/, '').replace(/[\"']\\n?$/, '')\n : '';\n if (cron[0] === '{') {\n cron = '';\n }\n const state = cron2state(cron || '* * * * *', true) || DEFAULT_STATE;\n\n this.state = {\n extended: false,\n cron: SimpleCron.state2cron(state as SimpleCronState),\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: 23,\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 !== props.cronExpression) {\n setTimeout(() => props.onChange && props.onChange(this.state.cron), 100);\n }\n }\n\n static periodArray2text(list: number[], max: number = 7): string {\n max = max || 7;\n if (list.length === max) {\n return '*';\n }\n const text = [];\n let start = null;\n let end = null;\n if (!list.length) {\n return '_';\n }\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 static text2weekdays(text: string): number[] {\n return text2weekdays(text);\n }\n\n static state2cron(state: Partial<SimpleCronState>): string {\n let cron = '* * * * *';\n if (state.mode === 'interval') {\n const settings = state.interval || {\n period: 1,\n unit: PERIODIC_TYPES.minutes,\n };\n if (settings.period !== undefined && settings.period > 60) {\n settings.period = 60;\n }\n if (settings.period !== undefined && settings.period < 1) {\n settings.period = 1;\n }\n\n if (settings.minutes !== undefined && settings.minutes !== null && settings.minutes > 60) {\n settings.minutes = 60;\n }\n if (settings.minutes !== undefined && settings.minutes !== null && settings.minutes < 1) {\n settings.minutes = 1;\n }\n\n if (settings.hours !== undefined && settings.hours !== null && settings.hours > 24) {\n settings.hours = 24;\n }\n if (settings.hours !== undefined && settings.hours !== null && settings.hours < 1) {\n settings.hours = 1;\n }\n\n if (state.extended) {\n cron = `${settings.minutes !== undefined && settings.minutes !== null && settings.minutes > 1 ? `*/${settings.minutes}` : '*'} ${settings.hours !== undefined && settings.hours !== null && 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 === 'intervalBetween') {\n const settings = state.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 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 settings.timeTo = 23;\n }\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) {\n settings.period = 60;\n }\n if (settings.period < 1) {\n settings.period = 1;\n }\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 === 'specific') {\n const settings = state.specific || {\n time: '00:00',\n weekdays: [0, 1, 2, 3, 4, 5, 6],\n };\n const parts = (settings.time || '00:00').split(':');\n let minutes = parseInt(parts[1], 10) || 0;\n if (minutes > 59) {\n minutes = 59;\n }\n if (minutes < 0) {\n minutes = 0;\n }\n let hours = parseInt(parts[0], 10) || 0;\n if (hours > 23) {\n hours = 59;\n }\n if (hours < 0) {\n hours = 0;\n }\n\n cron = `${minutes} ${hours} * * ${this.periodArray2text(settings.weekdays || [])}`;\n } else if (state.mode === 'once') {\n const settings = state.once || {\n time: '00:00',\n date: '',\n };\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) {\n minutes = 59;\n }\n if (minutes < 0) {\n minutes = 0;\n }\n let hours = parseInt(parts[0], 10) || 0;\n if (hours > 23) {\n hours = 59;\n }\n if (hours < 0) {\n hours = 0;\n }\n let date = parseInt(partsDate[0], 10) || 1;\n if (date > 31) {\n date = 31;\n }\n if (date < 1) {\n hours = 1;\n }\n let month = parseInt(partsDate[1], 10) || 1;\n if (month > 12) {\n month = 12;\n }\n if (month < 1) {\n month = 1;\n }\n\n cron = `${minutes} ${hours} ${date} ${month} *`;\n }\n return cron;\n }\n\n recalcCron(): void {\n this.onChange(SimpleCron.state2cron(this.state));\n }\n\n getControlsWeekdaysElements(type: 'intervalBetween' | 'specific'): React.JSX.Element {\n const settings = type === 'intervalBetween' ? this.state.intervalBetween : this.state.specific;\n return (\n <div\n key=\"weekdays\"\n style={{ paddingLeft: 8, width: 'calc(100% - 8px)', maxWidth: 600 }}\n >\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.includes(day)}\n onChange={e => {\n const _settings = JSON.parse(JSON.stringify(this.state[type]));\n const pos = _settings.weekdays.indexOf(day);\n if (e.target.checked) {\n if (pos === -1) {\n _settings.weekdays.push(day);\n }\n } else {\n if (pos !== -1) {\n _settings.weekdays.splice(pos, 1);\n }\n }\n _settings.weekdays.sort();\n if (type === 'intervalBetween') {\n this.setState({ intervalBetween: _settings }, () => this.recalcCron());\n } else {\n this.setState({ specific: _settings }, () => this.recalcCron());\n }\n }}\n value={day.toString()}\n />\n }\n label={I18n.t(WEEKDAYS[day])}\n />\n ))}\n </div>\n );\n }\n\n getControlsPeriodElements(type: 'interval' | 'intervalBetween'): React.JSX.Element {\n const settings = type === 'interval' ? this.state.interval : this.state.intervalBetween;\n\n if (this.state.extended) {\n return (\n <div\n key=\"period\"\n style={{ paddingLeft: 8, display: 'inline-block' }}\n >\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 if (type === 'interval') {\n this.setState({ interval: _settings }, () => this.recalcCron());\n } else {\n this.setState({ intervalBetween: _settings }, () => this.recalcCron());\n }\n }}\n slotProps={{\n htmlInput: {\n min: 1,\n max: 60,\n },\n inputLabel: {\n shrink: true,\n },\n }}\n type=\"number\"\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 if (type === 'interval') {\n this.setState({ interval: _settings }, () => this.recalcCron());\n } else {\n this.setState({ intervalBetween: _settings }, () => this.recalcCron());\n }\n }}\n slotProps={{\n htmlInput: {\n min: 1,\n max: 24,\n },\n inputLabel: {\n shrink: true,\n },\n }}\n type=\"number\"\n margin=\"normal\"\n />\n </div>\n );\n }\n\n return (\n <div\n key=\"period\"\n style={{ paddingLeft: 8, display: 'inline-block' }}\n >\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 if (type === 'interval') {\n this.setState({ interval: _settings }, () => this.recalcCron());\n } else {\n this.setState({ intervalBetween: _settings }, () => this.recalcCron());\n }\n }}\n slotProps={{\n htmlInput: {\n min: 1,\n max: 60,\n },\n inputLabel: {\n shrink: true,\n },\n }}\n type=\"number\"\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 if (type === 'interval') {\n this.setState({ interval: _settings }, () => this.recalcCron());\n } else {\n this.setState({ intervalBetween: _settings }, () => this.recalcCron());\n }\n }}\n >\n <MenuItem value=\"seconds\">{I18n.t('sc_seconds')}</MenuItem>)\n <MenuItem value=\"minutes\">{I18n.t('sc_minutes')}</MenuItem>)\n </Select>\n </div>\n );\n }\n\n getControlsTime(type: 'once' | 'specific'): React.JSX.Element {\n const settings = type === 'once' ? this.state.once : this.state.specific;\n return (\n <FormControl\n variant=\"standard\"\n sx={{\n ...styles.formControl,\n '&.MuiFormControl-root': styles.formControlMarginRight,\n }}\n >\n <TextField\n variant=\"standard\"\n key=\"at\"\n label={I18n.t('sc_time')}\n value={settings.time}\n type=\"time\"\n sx={(theme: Theme) => ({\n '& input[type=\"time\"]::-webkit-calendar-picker-indicator': {\n filter: theme.palette.mode === 'dark' ? 'invert(80%)' : undefined,\n },\n })}\n onChange={e => {\n const _settings = JSON.parse(JSON.stringify(this.state[type]));\n _settings.time = e.target.value;\n if (type === 'once') {\n this.setState({ once: _settings }, () => this.recalcCron());\n } else {\n this.setState({ specific: _settings }, () => this.recalcCron());\n }\n }}\n slotProps={{\n inputLabel: {\n shrink: true,\n },\n }}\n margin=\"normal\"\n />\n </FormControl>\n );\n }\n\n getControlsDate(): React.JSX.Element {\n const settings = this.state.once;\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 (\n <FormControl\n variant=\"standard\"\n style={styles.formControl}\n >\n <TextField\n variant=\"standard\"\n key=\"date\"\n label={I18n.t('sc_date')}\n value={settings.date}\n type=\"text\"\n slotProps={{\n htmlInput: {\n style: styles.formControlPaddingTop,\n },\n inputLabel: {\n shrink: true,\n },\n }}\n onChange={e => {\n const _settings = JSON.parse(JSON.stringify(this.state.once));\n _settings.date = e.target.value;\n this.setState({ once: _settings }, () => this.recalcCron());\n }}\n margin=\"normal\"\n />\n </FormControl>\n );\n }\n\n getOnceElements(): React.JSX.Element {\n return (\n <div style={{ marginLeft: 8 }}>\n {this.getControlsTime('once')}\n {this.getControlsDate()}\n </div>\n );\n }\n\n getIntervalElements(): React.JSX.Element {\n return this.getControlsPeriodElements('interval');\n }\n\n getIntervalBetweenElements(): React.JSX.Element[] {\n const settings = this.state.intervalBetween;\n return [\n this.getControlsPeriodElements('intervalBetween'),\n <div\n key=\"between\"\n style={{ paddingLeft: 8, display: 'inline-block', verticalAlign: 'top' }}\n >\n <h5 style={{ marginBottom: 5 }}>{I18n.t('sc_hours')}</h5>\n <FormControl\n variant=\"standard\"\n style={styles.formControl}\n >\n <InputLabel\n shrink\n htmlFor=\"age-label-placeholder\"\n >\n {I18n.t('sc_from')}\n </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 as string, 10);\n if (_settings.timeTo === 24) {\n _settings.timeTo = 23;\n }\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(\n hour => (\n <MenuItem\n key={`B_${hour}`}\n value={hour}\n >\n {`${padding(hour)}:00`}\n </MenuItem>\n ),\n )}\n </Select>\n </FormControl>\n <FormControl\n variant=\"standard\"\n style={styles.formControl}\n >\n <InputLabel\n shrink\n htmlFor=\"age-label-placeholder\"\n >\n {I18n.t('sc_to')}\n </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 as string, 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].map(\n hour => (\n <MenuItem\n key={`A_${hour}`}\n value={hour}\n >\n {`${padding(hour)}:00`}\n </MenuItem>\n ),\n )}\n {!settings.timeFrom && <MenuItem value={24}>00:00</MenuItem>}\n </Select>\n </FormControl>\n </div>,\n this.getControlsWeekdaysElements('intervalBetween'),\n ];\n }\n\n getSpecificTimeElements(): React.JSX.Element[] {\n return [\n <div\n key=\"time\"\n style={{ marginLeft: 8 }}\n >\n {this.getControlsTime('specific')}\n </div>,\n this.getControlsWeekdaysElements('specific'),\n ];\n }\n\n onModeChange(mode: 'once' | 'interval' | 'intervalBetween' | 'specific'): void {\n if (mode !== this.state.mode) {\n this.setState({ mode }, () => this.recalcCron());\n }\n }\n\n onChange(cron: string): void {\n if (cron !== this.state.cron) {\n this.setState({ cron });\n this.props.onChange && this.props.onChange(cron);\n }\n }\n\n render(): React.JSX.Element {\n return (\n <div style={styles.mainDiv}>\n <div style={{ paddingLeft: 8, width: 'calc(100% - 8px)' }}>\n <TextField\n variant=\"standard\"\n style={{ width: '100%' }}\n value={this.state.cron}\n disabled\n error={this.state.cron.includes('_')}\n />\n </div>\n <div style={{ paddingLeft: 8, width: 'calc(100% - 8px)', height: 60 }}>\n {this.state.cron.includes('_')\n ? I18n.t('sc_invalid_cron')\n : convertCronToText(this.state.cron, this.props.language || 'en')}\n </div>\n <div>\n <FormControl\n variant=\"standard\"\n style={{ ...styles.formControl, marginLeft: 8, marginTop: 8 }}\n >\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 as SimpleCronType)}\n inputProps={{ name: 'mode', id: 'mode' }}\n >\n <MenuItem value=\"once\">{I18n.t('sc_once')}</MenuItem>\n <MenuItem value=\"interval\">{I18n.t('sc_interval')}</MenuItem>\n <MenuItem value=\"intervalBetween\">{I18n.t('sc_intervalBetween')}</MenuItem>\n <MenuItem value=\"specific\">{I18n.t('sc_specific')}</MenuItem>\n </Select>\n </FormControl>\n </div>\n {this.state.mode === PERIODIC.once && this.getOnceElements()}\n {this.state.mode === 'interval' && this.getIntervalElements()}\n {this.state.mode === 'intervalBetween' && this.getIntervalBetweenElements()}\n {this.state.mode === 'specific' && this.getSpecificTimeElements()}\n </div>\n );\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"./src/","sources":["Components/SimpleCron/index.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from 'react';\n\nimport {\n InputLabel,\n MenuItem,\n Select,\n TextField,\n FormControl,\n FormControlLabel,\n Checkbox,\n type Theme,\n} from '@mui/material';\n\nimport { convertCronToText } from './cronText';\n\nimport { I18n } from '../../i18n';\n\nconst styles: Record<string, React.CSSProperties> = {\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\ntype SimpleCronType = 'once' | 'interval' | 'intervalBetween' | 'specific';\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 'ra_Sunday',\n 'ra_Monday',\n 'ra_Tuesday',\n 'ra_Wednesday',\n 'ra_Thursday',\n 'ra_Friday',\n 'ra_Saturday',\n 'ra_Sunday',\n];\n\nfunction padding(num: number): string {\n if (num < 10) {\n return `0${num}`;\n }\n\n return `${num}`;\n}\nconst DEFAULT_STATE = {\n mode: 'interval',\n interval: {\n period: 1,\n unit: PERIODIC_TYPES.minutes,\n },\n};\n\ninterface SimpleCronProps {\n cronExpression?: string;\n onChange: (cron: string) => void;\n language: ioBroker.Languages;\n}\n\ninterface SimpleCronState {\n extended: boolean;\n cron: string;\n mode: SimpleCronType;\n once: {\n time: string;\n date: string;\n // weekdays?: number[];\n };\n interval: {\n period: number;\n unit: string;\n minutes?: number; // if extended\n hours?: number; // if extended\n };\n intervalBetween: {\n period: number;\n unit: string;\n timeFrom: number;\n timeTo: number;\n weekdays: number[];\n minutes?: number; // if extended\n hours?: number; // if extended\n };\n specific: {\n time: string;\n weekdays: number[];\n };\n}\n\ninterface CronStructure {\n seconds: string | null;\n minutes: string;\n hours: string;\n date: string;\n months: string;\n dow: string;\n}\n\nfunction text2weekdays(text: string): number[] {\n if (text === '*') {\n return [0, 1, 2, 3, 4, 5, 6];\n }\n\n const parts = text.split(',');\n const list: number[] = [];\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 const numPart = parseInt(part, 10);\n if (!list.includes(numPart)) {\n list.push(numPart);\n }\n }\n });\n list.sort();\n return list;\n}\n\nexport function cron2state(cron: string, force?: boolean): Partial<SimpleCronState> | null {\n cron = cron.replace(/['\"]/g, '').trim();\n const cronParts = cron.split(' ');\n let options: CronStructure;\n let state: Partial<SimpleCronState> | null = null;\n\n if (cronParts.length === 6) {\n options = {\n seconds: cronParts[0] || '*',\n minutes: cronParts[1] || '*',\n hours: cronParts[2] || '*',\n date: cronParts[3] || '*',\n months: cronParts[4] || '*',\n dow: cronParts[5] || '*',\n };\n } else {\n options = {\n seconds: null,\n minutes: cronParts[0] || '*',\n hours: cronParts[1] || '*',\n date: cronParts[2] || '*',\n months: cronParts[3] || '*',\n dow: cronParts[4] || '*',\n };\n }\n\n // * * * * *\n if (\n options.seconds === null &&\n options.minutes === '*' &&\n options.hours === '*' &&\n options.date === '*' &&\n options.months === '*' &&\n (options.dow === '*' || force)\n ) {\n state = {\n mode: 'interval',\n interval: {\n period: 1,\n unit: PERIODIC_TYPES.minutes,\n },\n };\n } // * * * * * *\n\n if (\n options.seconds === '*' &&\n options.minutes === '*' &&\n options.hours === '*' &&\n options.date === '*' &&\n options.months === '*' &&\n (options.dow === '*' || force)\n ) {\n state = {\n mode: 'interval',\n interval: {\n period: 1,\n unit: PERIODIC_TYPES.seconds,\n },\n };\n } else if (\n options.seconds === null &&\n options.minutes.includes('/') &&\n options.hours === '*' &&\n options.date === '*' &&\n options.months === '*' &&\n (options.dow === '*' || force)\n ) {\n // */n * * * *\n state = {\n mode: 'interval',\n interval: {\n period: parseInt(options.minutes.split('/')[1], 10),\n unit: PERIODIC_TYPES.minutes,\n },\n };\n } else if (\n options.seconds !== null &&\n options.seconds.includes('/') &&\n options.minutes === '*' &&\n options.hours === '*' &&\n options.date === '*' &&\n options.months === '*' &&\n (options.dow === '*' || force)\n ) {\n // */n * * * * *\n state = {\n mode: 'interval',\n interval: {\n period: parseInt(options.seconds.split('/')[1], 10),\n unit: PERIODIC_TYPES.seconds,\n },\n };\n } else if (\n options.seconds !== null &&\n options.seconds.includes('/') &&\n options.minutes === '*' &&\n options.hours.includes('-') &&\n options.date === '*' &&\n options.months === '*' &&\n (options.dow === '*' || force)\n ) {\n // */n * 0-23 * * 1-7 or */n * 0-23 * * *\n state = {\n mode: 'intervalBetween',\n 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: text2weekdays(options.dow),\n },\n };\n } else if (\n options.seconds === null &&\n options.minutes.includes('/') &&\n options.hours.includes('-') &&\n options.date === '*' &&\n options.months === '*' &&\n (options.dow === '*' || force)\n ) {\n // */n 0-23 * * 1-7 or */n 0-23 * * *\n state = {\n mode: 'intervalBetween',\n 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: text2weekdays(options.dow),\n },\n };\n } else if (\n 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 (options.dow === '*' || force)\n ) {\n // m h * * 1-7 or m h * * *\n state = {\n mode: 'specific',\n specific: {\n time: `${padding(parseInt(options.hours, 10))}:${padding(parseInt(options.minutes, 10))}`,\n weekdays: text2weekdays(options.dow),\n },\n };\n } else if (\n 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 === '*' || force)\n ) {\n // m h d M *\n state = {\n mode: 'once',\n 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 },\n };\n }\n\n return state;\n}\n\nexport class SimpleCron extends React.Component<SimpleCronProps, SimpleCronState> {\n constructor(props: SimpleCronProps) {\n super(props);\n let cron =\n typeof props.cronExpression === 'string'\n ? props.cronExpression.replace(/^[\"']/, '').replace(/[\"']\\n?$/, '')\n : '';\n if (cron[0] === '{') {\n cron = '';\n }\n const state = cron2state(cron || '* * * * *', true) || DEFAULT_STATE;\n\n this.state = {\n extended: false,\n cron: SimpleCron.state2cron(state as SimpleCronState),\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: 23,\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 !== props.cronExpression) {\n setTimeout(() => props.onChange && props.onChange(this.state.cron), 100);\n }\n }\n\n static periodArray2text(list: number[], max: number = 7): string {\n max = max || 7;\n if (list.length === max) {\n return '*';\n }\n const text = [];\n let start = null;\n let end = null;\n if (!list.length) {\n return '_';\n }\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 static text2weekdays(text: string): number[] {\n return text2weekdays(text);\n }\n\n static state2cron(state: Partial<SimpleCronState>): string {\n let cron = '* * * * *';\n if (state.mode === 'interval') {\n const settings = state.interval || {\n period: 1,\n unit: PERIODIC_TYPES.minutes,\n };\n if (settings.period !== undefined && settings.period > 60) {\n settings.period = 60;\n }\n if (settings.period !== undefined && settings.period < 1) {\n settings.period = 1;\n }\n\n if (settings.minutes !== undefined && settings.minutes !== null && settings.minutes > 60) {\n settings.minutes = 60;\n }\n if (settings.minutes !== undefined && settings.minutes !== null && settings.minutes < 1) {\n settings.minutes = 1;\n }\n\n if (settings.hours !== undefined && settings.hours !== null && settings.hours > 24) {\n settings.hours = 24;\n }\n if (settings.hours !== undefined && settings.hours !== null && settings.hours < 1) {\n settings.hours = 1;\n }\n\n if (state.extended) {\n cron = `${settings.minutes !== undefined && settings.minutes !== null && settings.minutes > 1 ? `*/${settings.minutes}` : '*'} ${settings.hours !== undefined && settings.hours !== null && 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 === 'intervalBetween') {\n const settings = state.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 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 settings.timeTo = 23;\n }\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) {\n settings.period = 60;\n }\n if (settings.period < 1) {\n settings.period = 1;\n }\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 === 'specific') {\n const settings = state.specific || {\n time: '00:00',\n weekdays: [0, 1, 2, 3, 4, 5, 6],\n };\n const parts = (settings.time || '00:00').split(':');\n let minutes = parseInt(parts[1], 10) || 0;\n if (minutes > 59) {\n minutes = 59;\n }\n if (minutes < 0) {\n minutes = 0;\n }\n let hours = parseInt(parts[0], 10) || 0;\n if (hours > 23) {\n hours = 59;\n }\n if (hours < 0) {\n hours = 0;\n }\n\n cron = `${minutes} ${hours} * * ${this.periodArray2text(settings.weekdays || [])}`;\n } else if (state.mode === 'once') {\n const settings = state.once || {\n time: '00:00',\n date: '',\n };\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) {\n minutes = 59;\n }\n if (minutes < 0) {\n minutes = 0;\n }\n let hours = parseInt(parts[0], 10) || 0;\n if (hours > 23) {\n hours = 59;\n }\n if (hours < 0) {\n hours = 0;\n }\n let date = parseInt(partsDate[0], 10) || 1;\n if (date > 31) {\n date = 31;\n }\n if (date < 1) {\n hours = 1;\n }\n let month = parseInt(partsDate[1], 10) || 1;\n if (month > 12) {\n month = 12;\n }\n if (month < 1) {\n month = 1;\n }\n\n cron = `${minutes} ${hours} ${date} ${month} *`;\n }\n return cron;\n }\n\n recalcCron(): void {\n this.onChange(SimpleCron.state2cron(this.state));\n }\n\n getControlsWeekdaysElements(type: 'intervalBetween' | 'specific'): React.JSX.Element {\n const settings = type === 'intervalBetween' ? this.state.intervalBetween : this.state.specific;\n return (\n <div\n key=\"weekdays\"\n style={{ paddingLeft: 8, width: 'calc(100% - 8px)', maxWidth: 600 }}\n >\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.includes(day)}\n onChange={e => {\n const _settings = JSON.parse(JSON.stringify(this.state[type]));\n const pos = _settings.weekdays.indexOf(day);\n if (e.target.checked) {\n if (pos === -1) {\n _settings.weekdays.push(day);\n }\n } else {\n if (pos !== -1) {\n _settings.weekdays.splice(pos, 1);\n }\n }\n _settings.weekdays.sort();\n if (type === 'intervalBetween') {\n this.setState({ intervalBetween: _settings }, () => this.recalcCron());\n } else {\n this.setState({ specific: _settings }, () => this.recalcCron());\n }\n }}\n value={day.toString()}\n />\n }\n label={I18n.t(WEEKDAYS[day])}\n />\n ))}\n </div>\n );\n }\n\n getControlsPeriodElements(type: 'interval' | 'intervalBetween'): React.JSX.Element {\n const settings = type === 'interval' ? this.state.interval : this.state.intervalBetween;\n\n if (this.state.extended) {\n return (\n <div\n key=\"period\"\n style={{ paddingLeft: 8, display: 'inline-block' }}\n >\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 if (type === 'interval') {\n this.setState({ interval: _settings }, () => this.recalcCron());\n } else {\n this.setState({ intervalBetween: _settings }, () => this.recalcCron());\n }\n }}\n slotProps={{\n htmlInput: {\n min: 1,\n max: 60,\n },\n inputLabel: {\n shrink: true,\n },\n }}\n type=\"number\"\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 if (type === 'interval') {\n this.setState({ interval: _settings }, () => this.recalcCron());\n } else {\n this.setState({ intervalBetween: _settings }, () => this.recalcCron());\n }\n }}\n slotProps={{\n htmlInput: {\n min: 1,\n max: 24,\n },\n inputLabel: {\n shrink: true,\n },\n }}\n type=\"number\"\n margin=\"normal\"\n />\n </div>\n );\n }\n\n return (\n <div\n key=\"period\"\n style={{ paddingLeft: 8, display: 'inline-block' }}\n >\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 if (type === 'interval') {\n this.setState({ interval: _settings }, () => this.recalcCron());\n } else {\n this.setState({ intervalBetween: _settings }, () => this.recalcCron());\n }\n }}\n slotProps={{\n htmlInput: {\n min: 1,\n max: 60,\n },\n inputLabel: {\n shrink: true,\n },\n }}\n type=\"number\"\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 if (type === 'interval') {\n this.setState({ interval: _settings }, () => this.recalcCron());\n } else {\n this.setState({ intervalBetween: _settings }, () => this.recalcCron());\n }\n }}\n >\n <MenuItem value=\"seconds\">{I18n.t('sc_seconds')}</MenuItem>)\n <MenuItem value=\"minutes\">{I18n.t('sc_minutes')}</MenuItem>)\n </Select>\n </div>\n );\n }\n\n getControlsTime(type: 'once' | 'specific'): React.JSX.Element {\n const settings = type === 'once' ? this.state.once : this.state.specific;\n return (\n <FormControl\n variant=\"standard\"\n sx={{\n ...styles.formControl,\n '&.MuiFormControl-root': styles.formControlMarginRight,\n }}\n >\n <TextField\n variant=\"standard\"\n key=\"at\"\n label={I18n.t('sc_time')}\n value={settings.time}\n type=\"time\"\n sx={(theme: Theme) => ({\n '& input[type=\"time\"]::-webkit-calendar-picker-indicator': {\n filter: theme.palette.mode === 'dark' ? 'invert(80%)' : undefined,\n },\n })}\n onChange={e => {\n const _settings = JSON.parse(JSON.stringify(this.state[type]));\n _settings.time = e.target.value;\n if (type === 'once') {\n this.setState({ once: _settings }, () => this.recalcCron());\n } else {\n this.setState({ specific: _settings }, () => this.recalcCron());\n }\n }}\n slotProps={{\n inputLabel: {\n shrink: true,\n },\n }}\n margin=\"normal\"\n />\n </FormControl>\n );\n }\n\n getControlsDate(): React.JSX.Element {\n const settings = this.state.once;\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 (\n <FormControl\n variant=\"standard\"\n style={styles.formControl}\n >\n <TextField\n variant=\"standard\"\n key=\"date\"\n label={I18n.t('sc_date')}\n value={settings.date}\n type=\"text\"\n slotProps={{\n htmlInput: {\n style: styles.formControlPaddingTop,\n },\n inputLabel: {\n shrink: true,\n },\n }}\n onChange={e => {\n const _settings = JSON.parse(JSON.stringify(this.state.once));\n _settings.date = e.target.value;\n this.setState({ once: _settings }, () => this.recalcCron());\n }}\n margin=\"normal\"\n />\n </FormControl>\n );\n }\n\n getOnceElements(): React.JSX.Element {\n return (\n <div style={{ marginLeft: 8 }}>\n {this.getControlsTime('once')}\n {this.getControlsDate()}\n </div>\n );\n }\n\n getIntervalElements(): React.JSX.Element {\n return this.getControlsPeriodElements('interval');\n }\n\n getIntervalBetweenElements(): React.JSX.Element[] {\n const settings = this.state.intervalBetween;\n return [\n this.getControlsPeriodElements('intervalBetween'),\n <div\n key=\"between\"\n style={{ paddingLeft: 8, display: 'inline-block', verticalAlign: 'top' }}\n >\n <h5 style={{ marginBottom: 5 }}>{I18n.t('sc_hours')}</h5>\n <FormControl\n variant=\"standard\"\n style={styles.formControl}\n >\n <InputLabel\n shrink\n htmlFor=\"age-label-placeholder\"\n >\n {I18n.t('sc_from')}\n </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 as string, 10);\n if (_settings.timeTo === 24) {\n _settings.timeTo = 23;\n }\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(\n hour => (\n <MenuItem\n key={`B_${hour}`}\n value={hour}\n >\n {`${padding(hour)}:00`}\n </MenuItem>\n ),\n )}\n </Select>\n </FormControl>\n <FormControl\n variant=\"standard\"\n style={styles.formControl}\n >\n <InputLabel\n shrink\n htmlFor=\"age-label-placeholder\"\n >\n {I18n.t('sc_to')}\n </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 as string, 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].map(\n hour => (\n <MenuItem\n key={`A_${hour}`}\n value={hour}\n >\n {`${padding(hour)}:00`}\n </MenuItem>\n ),\n )}\n {!settings.timeFrom && <MenuItem value={24}>00:00</MenuItem>}\n </Select>\n </FormControl>\n </div>,\n this.getControlsWeekdaysElements('intervalBetween'),\n ];\n }\n\n getSpecificTimeElements(): React.JSX.Element[] {\n return [\n <div\n key=\"time\"\n style={{ marginLeft: 8 }}\n >\n {this.getControlsTime('specific')}\n </div>,\n this.getControlsWeekdaysElements('specific'),\n ];\n }\n\n onModeChange(mode: 'once' | 'interval' | 'intervalBetween' | 'specific'): void {\n if (mode !== this.state.mode) {\n this.setState({ mode }, () => this.recalcCron());\n }\n }\n\n onChange(cron: string): void {\n if (cron !== this.state.cron) {\n this.setState({ cron });\n this.props.onChange && this.props.onChange(cron);\n }\n }\n\n render(): React.JSX.Element {\n return (\n <div style={styles.mainDiv}>\n <div style={{ paddingLeft: 8, width: 'calc(100% - 8px)' }}>\n <TextField\n variant=\"standard\"\n style={{ width: '100%' }}\n value={this.state.cron}\n disabled\n error={this.state.cron.includes('_')}\n />\n </div>\n <div style={{ paddingLeft: 8, width: 'calc(100% - 8px)', height: 60 }}>\n {this.state.cron.includes('_')\n ? I18n.t('sc_invalid_cron')\n : convertCronToText(this.state.cron, this.props.language || 'en')}\n </div>\n <div>\n <FormControl\n variant=\"standard\"\n style={{ ...styles.formControl, marginLeft: 8, marginTop: 8 }}\n >\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 as SimpleCronType)}\n inputProps={{ name: 'mode', id: 'mode' }}\n >\n <MenuItem value=\"once\">{I18n.t('sc_once')}</MenuItem>\n <MenuItem value=\"interval\">{I18n.t('sc_interval')}</MenuItem>\n <MenuItem value=\"intervalBetween\">{I18n.t('sc_intervalBetween')}</MenuItem>\n <MenuItem value=\"specific\">{I18n.t('sc_specific')}</MenuItem>\n </Select>\n </FormControl>\n </div>\n {this.state.mode === PERIODIC.once && this.getOnceElements()}\n {this.state.mode === 'interval' && this.getIntervalElements()}\n {this.state.mode === 'intervalBetween' && this.getIntervalBetweenElements()}\n {this.state.mode === 'specific' && this.getSpecificTimeElements()}\n </div>\n );\n }\n}\n"]}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
// Copyright Bluefox
|
|
3
|
+
export const IconButtonImage = (props) => (React.createElement("svg", { xmlns: "http://www.w3.org/2000/svg", onClick: e => props.onClick && props.onClick(e), viewBox: "0 0 436 436", width: props.width || (props.fontSize === 'small' ? 16 : 20), height: props.height || props.width || (props.fontSize === 'small' ? 16 : 20), className: props.className, style: props.style },
|
|
4
|
+
React.createElement("g", { fill: "currentColor" },
|
|
5
|
+
React.createElement("path", { d: "m195.23077,24.30769c-36,3 -67,12 -96,26c-49,24 -82,61 -93,104l-3,11l-1,50c0,46 0,49 2,59l5,20c21,58 84,103 165,116c16,3 53,4 70,2c60,-6 111,-28 147,-64c21,-21 36,-49 40,-74a866,866 0 0 0 1,-104c-3,-18 -6,-28 -13,-43c-26,-52 -87,-90 -162,-101c-16,-2 -48,-3 -63,-2l1,0zm60,23c36,5 70,18 95,35c31,20 51,47 59,77c2,7 2,11 2,25c1,15 0,18 -2,26c-19,69 -104,117 -200,114c-47,-2 -90,-15 -124,-38c-31,-20 -51,-47 -59,-77c-3,-11 -4,-32 -2,-43c8,-42 41,-78 91,-101a260,260 0 0 1 140,-19l0,1zm-221,222c21,26 57,49 95,62c81,27 174,14 239,-32c14,-10 31,-27 41,-41c2,-2 2,-2 2,7c-1,23 -16,50 -38,72c-78,74 -233,74 -311,-1a121,121 0 0 1 -39,-76l0,-6l3,4l8,11z" }),
|
|
6
|
+
React.createElement("path", { d: "m201.23077,47.30769c-40,3 -79,19 -104,44c-55,55 -38,133 37,171c52,26 122,24 172,-5c30,-17 51,-42 58,-71c3,-11 3,-34 0,-45c-6,-23 -21,-44 -40,-60l-27,-16a184,184 0 0 0 -96,-18zm30,21c56,5 100,35 112,75c4,11 4,30 0,41c-8,25 -26,45 -54,59a166,166 0 0 1 -160,-8a98,98 0 0 1 -41,-53c-5,-18 -2,-39 8,-57c23,-39 79,-62 135,-57z" }))));
|
|
7
|
+
//# sourceMappingURL=IconButtonImage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IconButtonImage.js","sourceRoot":"./src/","sources":["icons/IconButtonImage.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,oBAAoB;AACpB,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,KAAgB,EAAqB,EAAE,CAAC,CACpE,6BACI,KAAK,EAAC,4BAA4B,EAClC,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAC/C,OAAO,EAAC,aAAa,EACrB,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAC5D,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAC7E,SAAS,EAAE,KAAK,CAAC,SAAS,EAC1B,KAAK,EAAE,KAAK,CAAC,KAAK;IAElB,2BAAG,IAAI,EAAC,cAAc;QAClB,8BAAM,CAAC,EAAC,qoBAAqoB,GAAG;QAChpB,8BAAM,CAAC,EAAC,kUAAkU,GAAG,CAC7U,CACF,CACT,CAAC","sourcesContent":["import React from 'react';\nimport { type IconProps } from './IconProps';\n\n// Copyright Bluefox\nexport const IconButtonImage = (props: IconProps): React.JSX.Element => (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n onClick={e => props.onClick && props.onClick(e)}\n viewBox=\"0 0 436 436\"\n width={props.width || (props.fontSize === 'small' ? 16 : 20)}\n height={props.height || props.width || (props.fontSize === 'small' ? 16 : 20)}\n className={props.className}\n style={props.style}\n >\n <g fill=\"currentColor\">\n <path d=\"m195.23077,24.30769c-36,3 -67,12 -96,26c-49,24 -82,61 -93,104l-3,11l-1,50c0,46 0,49 2,59l5,20c21,58 84,103 165,116c16,3 53,4 70,2c60,-6 111,-28 147,-64c21,-21 36,-49 40,-74a866,866 0 0 0 1,-104c-3,-18 -6,-28 -13,-43c-26,-52 -87,-90 -162,-101c-16,-2 -48,-3 -63,-2l1,0zm60,23c36,5 70,18 95,35c31,20 51,47 59,77c2,7 2,11 2,25c1,15 0,18 -2,26c-19,69 -104,117 -200,114c-47,-2 -90,-15 -124,-38c-31,-20 -51,-47 -59,-77c-3,-11 -4,-32 -2,-43c8,-42 41,-78 91,-101a260,260 0 0 1 140,-19l0,1zm-221,222c21,26 57,49 95,62c81,27 174,14 239,-32c14,-10 31,-27 41,-41c2,-2 2,-2 2,7c-1,23 -16,50 -38,72c-78,74 -233,74 -311,-1a121,121 0 0 1 -39,-76l0,-6l3,4l8,11z\" />\n <path d=\"m201.23077,47.30769c-40,3 -79,19 -104,44c-55,55 -38,133 37,171c52,26 122,24 172,-5c30,-17 51,-42 58,-71c3,-11 3,-34 0,-45c-6,-23 -21,-44 -40,-60l-27,-16a184,184 0 0 0 -96,-18zm30,21c56,5 100,35 112,75c4,11 4,30 0,41c-8,25 -26,45 -54,59a166,166 0 0 1 -160,-8a98,98 0 0 1 -41,-53c-5,-18 -2,-39 8,-57c23,-39 79,-62 135,-57z\" />\n </g>\n </svg>\n);\n"]}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
export const IconVacuum = (props) => (React.createElement("svg", { xmlns: "http://www.w3.org/2000/svg", onClick: e => props.onClick && props.onClick(e), viewBox: "0 0 339 339", width: props.width || (props.fontSize === 'small' ? 16 : 20), height: props.height || props.width || (props.fontSize === 'small' ? 16 : 20), className: props.className, style: props.style },
|
|
3
|
+
React.createElement("path", { fill: "currentColor", d: "M 318.371 88.485 C 332.371 114.538 339.207 142.418 338.881 172.125 C 338.874 172.605 338.631 172.845 338.151 172.845 L 335.411 172.845 C 335.077 172.845 334.911 173.012 334.911 173.345 L 334.911 181.215 C 334.911 181.635 335.121 181.845 335.541 181.845 L 337.711 181.845 C 338.157 181.845 338.364 182.068 338.331 182.515 C 331.921 264.525 267.321 330.135 185.931 337.995 C 89.911 347.265 6.491 275.385 0.301 179.465 C 0.274 179.052 0.467 178.845 0.881 178.845 L 2.381 178.845 C 2.741 178.845 2.921 178.665 2.921 178.305 L 2.911 171.465 C 2.904 171.052 2.694 170.845 2.281 170.845 L 0.441 170.845 C 0.147 170.845 0.001 170.698 0.001 170.405 C -0.289 83.535 64.591 10.095 151.421 0.955 C 211.511 -5.375 269.171 20.055 305.341 68.135 C 305.538 68.391 305.938 68.338 306.062 68.039 C 306.065 68.031 306.068 68.023 306.071 68.015 L 311.541 51.395 C 311.63 51.125 311.924 50.977 312.201 51.065 L 316.881 52.625 C 317.274 52.758 317.407 53.022 317.281 53.415 L 310.271 74.305 C 310.157 74.645 310.197 74.968 310.391 75.275 L 314.011 80.905 C 314.204 81.205 314.481 81.378 314.841 81.425 L 336.771 84.365 C 337.124 84.412 337.277 84.612 337.231 84.965 L 336.601 89.775 C 336.547 90.182 336.321 90.358 335.921 90.305 L 318.721 87.975 C 318.267 87.915 318.151 88.085 318.371 88.485 Z M 200.701 172.615 C 170.541 200.245 121.671 181.975 117.251 140.865 C 117.211 140.518 117.017 140.345 116.671 140.345 L 8.941 140.345 C 8.68 140.346 8.46 140.532 8.421 140.785 C -10.469 249.095 80.901 345.385 189.421 331.625 C 265.701 321.955 325.741 260.435 332.311 183.415 C 343.611 50.895 200.811 -38.365 85.961 28.845 C 47.041 51.625 20.601 89.335 9.791 133.265 C 9.611 133.985 9.891 134.345 10.631 134.345 L 116.371 134.345 C 116.664 134.345 116.824 134.202 116.851 133.915 C 118.397 116.288 126.001 103.005 139.661 94.065 C 172.821 72.345 214.571 95.715 216.891 133.845 C 216.911 134.178 217.087 134.345 217.421 134.345 L 330.342 134.345 C 330.842 134.345 331.092 134.595 331.092 135.095 L 331.092 139.595 C 331.092 140.095 330.842 140.345 330.342 140.345 L 217.161 140.345 C 216.827 140.345 216.641 140.512 216.601 140.845 C 215.141 153.652 209.841 164.242 200.701 172.615 Z M 210.861 135.845 C 210.861 111.572 191.183 91.895 166.911 91.895 C 142.638 91.895 122.961 111.572 122.961 135.845 C 122.961 160.118 142.638 179.795 166.911 179.795 C 191.183 179.795 210.861 160.118 210.861 135.845 Z", transform: "matrix(0.9999999999999999, 0, 0, 0.9999999999999999, -5.684341886080802e-14, 0)" }),
|
|
4
|
+
React.createElement("path", { fill: "currentColor", d: "M 222.771 42.215 C 224.237 43.708 223.741 45.092 221.281 46.365 C 220.5 46.768 219.574 46.779 218.781 46.395 C 183.761 29.182 149.014 29.638 114.541 47.765 C 113.252 48.444 111.662 47.8 111.211 46.415 C 110.891 45.435 110.867 44.465 111.141 43.505 C 111.234 43.158 111.437 42.898 111.751 42.725 C 145.631 23.545 186.631 23.045 221.051 41.045 C 221.831 41.452 222.404 41.842 222.771 42.215 Z", transform: "matrix(0.9999999999999999, 0, 0, 0.9999999999999999, -5.684341886080802e-14, 0)" }),
|
|
5
|
+
React.createElement("text", { style: {
|
|
6
|
+
whiteSpace: 'pre',
|
|
7
|
+
fontFamily: 'Arial, sans-serif',
|
|
8
|
+
fontSize: 16,
|
|
9
|
+
}, x: "139.395", y: "288.084", transform: "matrix(0.9999999999999999, 0, 0, 0.9999999999999999, -5.684341886080802e-14, 0)" }, "vacuum")));
|
|
10
|
+
//# sourceMappingURL=IconVacuum.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IconVacuum.js","sourceRoot":"./src/","sources":["icons/IconVacuum.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAC;AAGxC,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,KAAgB,EAAe,EAAE,CAAC,CACzD,6BACI,KAAK,EAAC,4BAA4B,EAClC,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAC/C,OAAO,EAAC,aAAa,EACrB,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAC5D,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAC7E,SAAS,EAAE,KAAK,CAAC,SAAS,EAC1B,KAAK,EAAE,KAAK,CAAC,KAAK;IAElB,8BACI,IAAI,EAAC,cAAc,EACnB,CAAC,EAAC,s0EAAs0E,EACx0E,SAAS,EAAC,iFAAiF,GAC7F;IACF,8BACI,IAAI,EAAC,cAAc,EACnB,CAAC,EAAC,wYAAwY,EAC1Y,SAAS,EAAC,iFAAiF,GAC7F;IACF,8BACI,KAAK,EAAE;YACH,UAAU,EAAE,KAAK;YACjB,UAAU,EAAE,mBAAmB;YAC/B,QAAQ,EAAE,EAAE;SACf,EACD,CAAC,EAAC,SAAS,EACX,CAAC,EAAC,SAAS,EACX,SAAS,EAAC,iFAAiF,aAGxF,CACL,CACT,CAAC","sourcesContent":["import React, { type JSX } from 'react';\nimport { type IconProps } from './IconProps';\n\nexport const IconVacuum = (props: IconProps): JSX.Element => (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n onClick={e => props.onClick && props.onClick(e)}\n viewBox=\"0 0 339 339\"\n width={props.width || (props.fontSize === 'small' ? 16 : 20)}\n height={props.height || props.width || (props.fontSize === 'small' ? 16 : 20)}\n className={props.className}\n style={props.style}\n >\n <path\n fill=\"currentColor\"\n d=\"M 318.371 88.485 C 332.371 114.538 339.207 142.418 338.881 172.125 C 338.874 172.605 338.631 172.845 338.151 172.845 L 335.411 172.845 C 335.077 172.845 334.911 173.012 334.911 173.345 L 334.911 181.215 C 334.911 181.635 335.121 181.845 335.541 181.845 L 337.711 181.845 C 338.157 181.845 338.364 182.068 338.331 182.515 C 331.921 264.525 267.321 330.135 185.931 337.995 C 89.911 347.265 6.491 275.385 0.301 179.465 C 0.274 179.052 0.467 178.845 0.881 178.845 L 2.381 178.845 C 2.741 178.845 2.921 178.665 2.921 178.305 L 2.911 171.465 C 2.904 171.052 2.694 170.845 2.281 170.845 L 0.441 170.845 C 0.147 170.845 0.001 170.698 0.001 170.405 C -0.289 83.535 64.591 10.095 151.421 0.955 C 211.511 -5.375 269.171 20.055 305.341 68.135 C 305.538 68.391 305.938 68.338 306.062 68.039 C 306.065 68.031 306.068 68.023 306.071 68.015 L 311.541 51.395 C 311.63 51.125 311.924 50.977 312.201 51.065 L 316.881 52.625 C 317.274 52.758 317.407 53.022 317.281 53.415 L 310.271 74.305 C 310.157 74.645 310.197 74.968 310.391 75.275 L 314.011 80.905 C 314.204 81.205 314.481 81.378 314.841 81.425 L 336.771 84.365 C 337.124 84.412 337.277 84.612 337.231 84.965 L 336.601 89.775 C 336.547 90.182 336.321 90.358 335.921 90.305 L 318.721 87.975 C 318.267 87.915 318.151 88.085 318.371 88.485 Z M 200.701 172.615 C 170.541 200.245 121.671 181.975 117.251 140.865 C 117.211 140.518 117.017 140.345 116.671 140.345 L 8.941 140.345 C 8.68 140.346 8.46 140.532 8.421 140.785 C -10.469 249.095 80.901 345.385 189.421 331.625 C 265.701 321.955 325.741 260.435 332.311 183.415 C 343.611 50.895 200.811 -38.365 85.961 28.845 C 47.041 51.625 20.601 89.335 9.791 133.265 C 9.611 133.985 9.891 134.345 10.631 134.345 L 116.371 134.345 C 116.664 134.345 116.824 134.202 116.851 133.915 C 118.397 116.288 126.001 103.005 139.661 94.065 C 172.821 72.345 214.571 95.715 216.891 133.845 C 216.911 134.178 217.087 134.345 217.421 134.345 L 330.342 134.345 C 330.842 134.345 331.092 134.595 331.092 135.095 L 331.092 139.595 C 331.092 140.095 330.842 140.345 330.342 140.345 L 217.161 140.345 C 216.827 140.345 216.641 140.512 216.601 140.845 C 215.141 153.652 209.841 164.242 200.701 172.615 Z M 210.861 135.845 C 210.861 111.572 191.183 91.895 166.911 91.895 C 142.638 91.895 122.961 111.572 122.961 135.845 C 122.961 160.118 142.638 179.795 166.911 179.795 C 191.183 179.795 210.861 160.118 210.861 135.845 Z\"\n transform=\"matrix(0.9999999999999999, 0, 0, 0.9999999999999999, -5.684341886080802e-14, 0)\"\n />\n <path\n fill=\"currentColor\"\n d=\"M 222.771 42.215 C 224.237 43.708 223.741 45.092 221.281 46.365 C 220.5 46.768 219.574 46.779 218.781 46.395 C 183.761 29.182 149.014 29.638 114.541 47.765 C 113.252 48.444 111.662 47.8 111.211 46.415 C 110.891 45.435 110.867 44.465 111.141 43.505 C 111.234 43.158 111.437 42.898 111.751 42.725 C 145.631 23.545 186.631 23.045 221.051 41.045 C 221.831 41.452 222.404 41.842 222.771 42.215 Z\"\n transform=\"matrix(0.9999999999999999, 0, 0, 0.9999999999999999, -5.684341886080802e-14, 0)\"\n />\n <text\n style={{\n whiteSpace: 'pre',\n fontFamily: 'Arial, sans-serif',\n fontSize: 16,\n }}\n x=\"139.395\"\n y=\"288.084\"\n transform=\"matrix(0.9999999999999999, 0, 0, 0.9999999999999999, -5.684341886080802e-14, 0)\"\n >\n vacuum\n </text>\n </svg>\n);\n"]}
|
package/build/index.d.ts
CHANGED
|
@@ -9,6 +9,7 @@ export { CustomModal } from './Components/CustomModal';
|
|
|
9
9
|
export { FileBrowser, type MetaACL, type MetaObject, type FileBrowserProps, type FolderOrFileItem, type Folders, FileBrowserClass, } from './Components/FileBrowser';
|
|
10
10
|
export { EXTENSIONS, FileViewer, FileViewerClass, type FileViewerProps, type FileViewerState, } from './Components/FileViewer';
|
|
11
11
|
export { getSystemIcon, getSelectIdIcon, Icon } from './Components/Icon';
|
|
12
|
+
export { isDeviceIcon, type DeviceType, IconDeviceType } from './Components/IconDeviceType';
|
|
12
13
|
export { IconPicker } from './Components/IconPicker';
|
|
13
14
|
export { IconSelector } from './Components/IconSelector';
|
|
14
15
|
export { Image } from './Components/Image';
|
|
@@ -31,26 +32,29 @@ export { UploadImage } from './Components/UploadImage';
|
|
|
31
32
|
export { Utils } from './Components/Utils';
|
|
32
33
|
export { withWidth } from './Components/withWidth';
|
|
33
34
|
export { cron2state, SimpleCron } from './Components/SimpleCron';
|
|
35
|
+
export { convertCronToText } from './Components/SimpleCron/cronText';
|
|
34
36
|
export { LoaderVendor } from './Components/Loaders/Vendor';
|
|
35
37
|
export { LoaderPT } from './Components/Loaders/PT';
|
|
36
38
|
export { LoaderMV } from './Components/Loaders/MV';
|
|
37
39
|
export { type IconProps } from './icons/IconProps';
|
|
38
40
|
export { IconAdapter } from './icons/IconAdapter';
|
|
39
41
|
export { IconAlias } from './icons/IconAlias';
|
|
42
|
+
export { IconButtonImage } from './icons/IconButtonImage';
|
|
40
43
|
export { IconChannel } from './icons/IconChannel';
|
|
44
|
+
export { IconClearFilter } from './icons/IconClearFilter';
|
|
41
45
|
export { IconClosed } from './icons/IconClosed';
|
|
42
46
|
export { IconCopy } from './icons/IconCopy';
|
|
43
47
|
export { IconDevice } from './icons/IconDevice';
|
|
44
48
|
export { IconDocument } from './icons/IconDocument';
|
|
49
|
+
export { IconDocumentReadOnly } from './icons/IconDocumentReadOnly';
|
|
45
50
|
export { IconExpert } from './icons/IconExpert';
|
|
46
51
|
export { IconFx } from './icons/IconFx';
|
|
47
52
|
export { IconInstance } from './icons/IconInstance';
|
|
48
53
|
export { IconLogout } from './icons/IconLogout';
|
|
54
|
+
export { IconNoIcon } from './icons/IconNoIcon';
|
|
49
55
|
export { IconOpen } from './icons/IconOpen';
|
|
50
56
|
export { IconState } from './icons/IconState';
|
|
51
|
-
export {
|
|
52
|
-
export { IconDocumentReadOnly } from './icons/IconDocumentReadOnly';
|
|
53
|
-
export { IconClearFilter } from './icons/IconClearFilter';
|
|
57
|
+
export { IconVacuum } from './icons/IconVacuum';
|
|
54
58
|
export { DialogComplexCron } from './Dialogs/ComplexCron';
|
|
55
59
|
export { DialogComplexCron as ComplexCronDialog } from './Dialogs/ComplexCron';
|
|
56
60
|
export { DialogConfirm } from './Dialogs/Confirm';
|
package/build/index.js
CHANGED
|
@@ -9,6 +9,7 @@ export { CustomModal } from './Components/CustomModal';
|
|
|
9
9
|
export { FileBrowser, FileBrowserClass, } from './Components/FileBrowser';
|
|
10
10
|
export { EXTENSIONS, FileViewer, FileViewerClass, } from './Components/FileViewer';
|
|
11
11
|
export { getSystemIcon, getSelectIdIcon, Icon } from './Components/Icon';
|
|
12
|
+
export { isDeviceIcon, IconDeviceType } from './Components/IconDeviceType';
|
|
12
13
|
export { IconPicker } from './Components/IconPicker';
|
|
13
14
|
export { IconSelector } from './Components/IconSelector';
|
|
14
15
|
export { Image } from './Components/Image';
|
|
@@ -31,25 +32,28 @@ export { UploadImage } from './Components/UploadImage';
|
|
|
31
32
|
export { Utils } from './Components/Utils';
|
|
32
33
|
export { withWidth } from './Components/withWidth';
|
|
33
34
|
export { cron2state, SimpleCron } from './Components/SimpleCron';
|
|
35
|
+
export { convertCronToText } from './Components/SimpleCron/cronText';
|
|
34
36
|
export { LoaderVendor } from './Components/Loaders/Vendor';
|
|
35
37
|
export { LoaderPT } from './Components/Loaders/PT';
|
|
36
38
|
export { LoaderMV } from './Components/Loaders/MV';
|
|
37
39
|
export { IconAdapter } from './icons/IconAdapter';
|
|
38
40
|
export { IconAlias } from './icons/IconAlias';
|
|
41
|
+
export { IconButtonImage } from './icons/IconButtonImage';
|
|
39
42
|
export { IconChannel } from './icons/IconChannel';
|
|
43
|
+
export { IconClearFilter } from './icons/IconClearFilter';
|
|
40
44
|
export { IconClosed } from './icons/IconClosed';
|
|
41
45
|
export { IconCopy } from './icons/IconCopy';
|
|
42
46
|
export { IconDevice } from './icons/IconDevice';
|
|
43
47
|
export { IconDocument } from './icons/IconDocument';
|
|
48
|
+
export { IconDocumentReadOnly } from './icons/IconDocumentReadOnly';
|
|
44
49
|
export { IconExpert } from './icons/IconExpert';
|
|
45
50
|
export { IconFx } from './icons/IconFx';
|
|
46
51
|
export { IconInstance } from './icons/IconInstance';
|
|
47
52
|
export { IconLogout } from './icons/IconLogout';
|
|
53
|
+
export { IconNoIcon } from './icons/IconNoIcon';
|
|
48
54
|
export { IconOpen } from './icons/IconOpen';
|
|
49
55
|
export { IconState } from './icons/IconState';
|
|
50
|
-
export {
|
|
51
|
-
export { IconDocumentReadOnly } from './icons/IconDocumentReadOnly';
|
|
52
|
-
export { IconClearFilter } from './icons/IconClearFilter';
|
|
56
|
+
export { IconVacuum } from './icons/IconVacuum';
|
|
53
57
|
export { DialogComplexCron } from './Dialogs/ComplexCron';
|
|
54
58
|
export { DialogComplexCron as ComplexCronDialog } from './Dialogs/ComplexCron'; // deprecated
|
|
55
59
|
export { DialogConfirm } from './Dialogs/Confirm';
|
package/build/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"./src/","sources":["index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,IAAI,EAAE,MAAM,8BAA8B,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EACH,WAAW,EAMX,gBAAgB,GACnB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACH,UAAU,EACV,UAAU,EACV,eAAe,GAGlB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AACzE,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EACH,aAAa,EAGb,0BAA0B,EAC1B,WAAW,EAEX,kBAAkB,GACrB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAEnD,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"./src/","sources":["index.ts"],"names":[],"mappings":"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","sourcesContent":["export { Theme } from './Theme';\nexport { GenericApp } from './GenericApp';\nexport { I18n } from './i18n';\nexport { printPrompt } from './Prompt';\nexport { ColorPicker } from './Components/ColorPicker';\nexport { ComplexCron } from './Components/ComplexCron';\nexport { copy } from './Components/CopyToClipboard';\nexport { CustomModal } from './Components/CustomModal';\nexport {\n FileBrowser,\n type MetaACL,\n type MetaObject,\n type FileBrowserProps,\n type FolderOrFileItem,\n type Folders,\n FileBrowserClass,\n} from './Components/FileBrowser';\nexport {\n EXTENSIONS,\n FileViewer,\n FileViewerClass,\n type FileViewerProps,\n type FileViewerState,\n} from './Components/FileViewer';\nexport { getSystemIcon, getSelectIdIcon, Icon } from './Components/Icon';\nexport { isDeviceIcon, type DeviceType, IconDeviceType } from './Components/IconDeviceType';\nexport { IconPicker } from './Components/IconPicker';\nexport { IconSelector } from './Components/IconSelector';\nexport { Image } from './Components/Image';\nexport { Loader } from './Components/Loader';\nexport { Logo } from './Components/Logo';\nexport { MDUtils } from './Components/MDUtils';\nexport {\n ObjectBrowser,\n type TreeItemData,\n type TreeItem,\n getSelectIdIconFromObjects,\n ITEM_IMAGES,\n type ObjectBrowserFilter,\n ObjectBrowserClass,\n} from './Components/ObjectBrowser';\nexport { Router } from './Components/Router';\nexport { SaveCloseButtons } from './Components/SaveCloseButtons';\nexport { Schedule } from './Components/Schedule';\nexport { SelectWithIcon } from './Components/SelectWithIcon';\nexport { TabContainer } from './Components/TabContainer';\nexport { TabContent } from './Components/TabContent';\nexport { TabHeader } from './Components/TabHeader';\nexport { TableResize } from './Components/TableResize';\nexport { TextWithIcon } from './Components/TextWithIcon';\nexport { ToggleThemeMenu } from './Components/ToggleThemeMenu';\nexport { TreeTable } from './Components/TreeTable';\nexport { UploadImage } from './Components/UploadImage';\nexport { Utils } from './Components/Utils';\nexport { withWidth } from './Components/withWidth';\nexport { cron2state, SimpleCron } from './Components/SimpleCron';\nexport { convertCronToText } from './Components/SimpleCron/cronText';\nexport { LoaderVendor } from './Components/Loaders/Vendor';\nexport { LoaderPT } from './Components/Loaders/PT';\nexport { LoaderMV } from './Components/Loaders/MV';\nexport { type IconProps } from './icons/IconProps';\nexport { IconAdapter } from './icons/IconAdapter';\nexport { IconAlias } from './icons/IconAlias';\nexport { IconButtonImage } from './icons/IconButtonImage';\nexport { IconChannel } from './icons/IconChannel';\nexport { IconClearFilter } from './icons/IconClearFilter';\nexport { IconClosed } from './icons/IconClosed';\nexport { IconCopy } from './icons/IconCopy';\nexport { IconDevice } from './icons/IconDevice';\nexport { IconDocument } from './icons/IconDocument';\nexport { IconDocumentReadOnly } from './icons/IconDocumentReadOnly';\nexport { IconExpert } from './icons/IconExpert';\nexport { IconFx } from './icons/IconFx';\nexport { IconInstance } from './icons/IconInstance';\nexport { IconLogout } from './icons/IconLogout';\nexport { IconNoIcon } from './icons/IconNoIcon';\nexport { IconOpen } from './icons/IconOpen';\nexport { IconState } from './icons/IconState';\nexport { IconVacuum } from './icons/IconVacuum';\nexport { DialogComplexCron } from './Dialogs/ComplexCron';\nexport { DialogComplexCron as ComplexCronDialog } from './Dialogs/ComplexCron'; // deprecated\nexport { DialogConfirm } from './Dialogs/Confirm';\nexport { DialogConfirm as Confirm } from './Dialogs/Confirm'; // deprecated\nexport { DialogCron } from './Dialogs/Cron';\nexport { DialogCron as Cron } from './Dialogs/Cron'; // deprecated\nexport { DialogError } from './Dialogs/Error';\nexport { DialogError as Error } from './Dialogs/Error'; // deprecated\nexport { DialogMessage } from './Dialogs/Message';\nexport { DialogMessage as Message } from './Dialogs/Message'; // deprecated\nexport { DialogSelectID } from './Dialogs/SelectID';\nexport { DialogSelectID as SelectID } from './Dialogs/SelectID'; // deprecated\nexport { DialogSelectFile } from './Dialogs/SelectFile';\nexport { DialogSelectFile as SelectFile } from './Dialogs/SelectFile'; // deprecated\nexport { DialogSimpleCron } from './Dialogs/SimpleCron';\nexport { DialogSimpleCron as SimpleCronDialog } from './Dialogs/SimpleCron'; // deprecated\nexport { DialogTextInput } from './Dialogs/TextInput';\nexport { DialogTextInput as TextInput } from './Dialogs/TextInput'; // deprecated\nexport { Connection, PROGRESS, ERRORS, PERMISSION_ERROR } from './Connection';\nexport { AdminConnection } from './AdminConnection';\nexport { dictionary } from './dictionary';\nexport {\n LegacyConnection,\n type ConnectOptions,\n type CompactSystemRepositoryEntry,\n type CompactSystemRepository,\n type SocketClient,\n type BinaryStateChangeHandler,\n pattern2RegEx,\n} from './LegacyConnection';\n\nexport type {\n Translate,\n ConnectionProps,\n OldObject,\n ObjectChangeHandler,\n ThemeName,\n ThemeType,\n GenericAppProps,\n GenericAppSettings,\n IobTheme,\n Width,\n GenericAppState,\n} from './types';\n"]}
|
|
@@ -12,6 +12,8 @@ function makeShared(pkgs) {
|
|
|
12
12
|
// Admin shares these modules for all components
|
|
13
13
|
module.exports = {
|
|
14
14
|
shared: makeShared([
|
|
15
|
+
'@emotion/react',
|
|
16
|
+
'@emotion/styled',
|
|
15
17
|
'@iobroker/adapter-react-v5',
|
|
16
18
|
'@iobroker/json-config',
|
|
17
19
|
'@iobroker/dm-gui-components',
|