@iobroker/adapter-react-v5 7.2.3 → 7.2.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -3
- package/build/AdminConnection.d.ts +1 -0
- package/build/AdminConnection.js +2 -0
- package/build/AdminConnection.js.map +1 -0
- package/{src/Components/404.tsx → build/Components/404.js} +14 -39
- package/build/Components/404.js.map +1 -0
- package/{Components → build/Components}/ColorPicker.d.ts +2 -2
- package/{Components → build/Components}/ColorPicker.js +50 -65
- package/build/Components/ColorPicker.js.map +1 -0
- package/{Components → build/Components}/ComplexCron.d.ts +2 -2
- package/{Components → build/Components}/ComplexCron.js +43 -71
- package/build/Components/ComplexCron.js.map +1 -0
- package/{Components → build/Components}/CopyToClipboard.d.ts +1 -2
- package/{src/Components/CopyToClipboard.tsx → build/Components/CopyToClipboard.js} +20 -38
- package/build/Components/CopyToClipboard.js.map +1 -0
- package/{Components → build/Components}/CustomModal.d.ts +3 -3
- package/build/Components/CustomModal.js +60 -0
- package/build/Components/CustomModal.js.map +1 -0
- package/{Components → build/Components}/FileBrowser.d.ts +21 -21
- package/{Components → build/Components}/FileBrowser.js +253 -248
- package/build/Components/FileBrowser.js.map +1 -0
- package/build/Components/FileViewer.d.ts +48 -0
- package/build/Components/FileViewer.js +277 -0
- package/build/Components/FileViewer.js.map +1 -0
- package/{Components → build/Components}/Icon.d.ts +1 -1
- package/build/Components/Icon.js +140 -0
- package/build/Components/Icon.js.map +1 -0
- package/{Components → build/Components}/IconPicker.d.ts +2 -2
- package/build/Components/IconPicker.js +73 -0
- package/build/Components/IconPicker.js.map +1 -0
- package/{Components → build/Components}/IconSelector.d.ts +3 -3
- package/{Components → build/Components}/IconSelector.js +29 -57
- package/build/Components/IconSelector.js.map +1 -0
- package/{Components → build/Components}/Image.d.ts +2 -2
- package/{Components → build/Components}/Image.js +16 -22
- package/build/Components/Image.js.map +1 -0
- package/{Components → build/Components}/Loader.d.ts +2 -2
- package/{Components → build/Components}/Loader.js +15 -40
- package/build/Components/Loader.js.map +1 -0
- package/{Components → build/Components}/Loaders/MV.d.ts +2 -2
- package/build/Components/Loaders/MV.js +61 -0
- package/build/Components/Loaders/MV.js.map +1 -0
- package/{Components → build/Components}/Loaders/PT.d.ts +2 -2
- package/{Components → build/Components}/Loaders/PT.js +10 -35
- package/build/Components/Loaders/PT.js.map +1 -0
- package/{Components → build/Components}/Loaders/Vendor.d.ts +2 -2
- package/build/Components/Loaders/Vendor.js +52 -0
- package/build/Components/Loaders/Vendor.js.map +1 -0
- package/{Components → build/Components}/Logo.d.ts +2 -2
- package/build/Components/Logo.js +108 -0
- package/build/Components/Logo.js.map +1 -0
- package/{Components → build/Components}/MDUtils.d.ts +1 -2
- package/{Components → build/Components}/MDUtils.js +4 -9
- package/build/Components/MDUtils.js.map +1 -0
- package/{Components → build/Components}/ObjectBrowser.d.ts +7 -4
- package/{Components → build/Components}/ObjectBrowser.js +1183 -1133
- package/build/Components/ObjectBrowser.js.map +1 -0
- package/{Components → build/Components}/Router.d.ts +1 -2
- package/{Components → build/Components}/Router.js +6 -7
- package/build/Components/Router.js.map +1 -0
- package/{Components → build/Components}/SaveCloseButtons.d.ts +2 -2
- package/build/Components/SaveCloseButtons.js +65 -0
- package/build/Components/SaveCloseButtons.js.map +1 -0
- package/{Components → build/Components}/Schedule.d.ts +3 -3
- package/{Components → build/Components}/Schedule.js +246 -261
- package/build/Components/Schedule.js.map +1 -0
- package/{Components → build/Components}/SelectWithIcon.d.ts +2 -2
- package/build/Components/SelectWithIcon.js +135 -0
- package/build/Components/SelectWithIcon.js.map +1 -0
- package/build/Components/SimpleCron/cronText.js +15 -0
- package/build/Components/SimpleCron/cronText.js.map +1 -0
- package/{Components → build/Components}/SimpleCron/index.d.ts +2 -2
- package/{Components → build/Components}/SimpleCron/index.js +55 -56
- package/build/Components/SimpleCron/index.js.map +1 -0
- package/{Components → build/Components}/TabContainer.d.ts +2 -2
- package/build/Components/TabContainer.js +23 -0
- package/build/Components/TabContainer.js.map +1 -0
- package/{Components → build/Components}/TabContent.d.ts +3 -2
- package/build/Components/TabContent.js +20 -0
- package/build/Components/TabContent.js.map +1 -0
- package/build/Components/TabHeader.d.ts +6 -0
- package/build/Components/TabHeader.js +6 -0
- package/build/Components/TabHeader.js.map +1 -0
- package/{Components → build/Components}/TableResize.d.ts +2 -2
- package/{src/Components/TableResize.tsx → build/Components/TableResize.js} +64 -134
- package/build/Components/TableResize.js.map +1 -0
- package/{Components → build/Components}/TextWithIcon.d.ts +2 -2
- package/{src/Components/TextWithIcon.tsx → build/Components/TextWithIcon.js} +30 -75
- package/build/Components/TextWithIcon.js.map +1 -0
- package/{Components → build/Components}/ToggleThemeMenu.d.ts +1 -1
- package/build/Components/ToggleThemeMenu.js +13 -0
- package/build/Components/ToggleThemeMenu.js.map +1 -0
- package/{Components → build/Components}/TreeTable.d.ts +3 -3
- package/{Components → build/Components}/TreeTable.js +87 -99
- package/build/Components/TreeTable.js.map +1 -0
- package/{Components → build/Components}/UploadImage.d.ts +2 -2
- package/{Components → build/Components}/UploadImage.js +46 -69
- package/build/Components/UploadImage.js.map +1 -0
- package/{Components → build/Components}/Utils.d.ts +2 -2
- package/{Components → build/Components}/Utils.js +47 -60
- package/build/Components/Utils.js.map +1 -0
- package/build/Components/withWidth.d.ts +2 -0
- package/build/Components/withWidth.js +22 -0
- package/build/Components/withWidth.js.map +1 -0
- package/build/Connection.d.ts +1 -0
- package/build/Connection.js +2 -0
- package/build/Connection.js.map +1 -0
- package/{Dialogs → build/Dialogs}/ComplexCron.d.ts +2 -2
- package/build/Dialogs/ComplexCron.js +85 -0
- package/build/Dialogs/ComplexCron.js.map +1 -0
- package/{Dialogs → build/Dialogs}/Confirm.d.ts +2 -2
- package/build/Dialogs/Confirm.js +83 -0
- package/build/Dialogs/Confirm.js.map +1 -0
- package/{Dialogs → build/Dialogs}/Cron.d.ts +2 -2
- package/build/Dialogs/Cron.js +72 -0
- package/build/Dialogs/Cron.js.map +1 -0
- package/{Dialogs → build/Dialogs}/Error.d.ts +2 -2
- package/build/Dialogs/Error.js +27 -0
- package/build/Dialogs/Error.js.map +1 -0
- package/{Dialogs → build/Dialogs}/Message.d.ts +2 -2
- package/build/Dialogs/Message.js +29 -0
- package/build/Dialogs/Message.js.map +1 -0
- package/{Dialogs → build/Dialogs}/SelectFile.d.ts +2 -2
- package/build/Dialogs/SelectFile.js +116 -0
- package/build/Dialogs/SelectFile.js.map +1 -0
- package/{Dialogs → build/Dialogs}/SelectID.d.ts +3 -3
- package/{Dialogs → build/Dialogs}/SelectID.js +28 -53
- package/build/Dialogs/SelectID.js.map +1 -0
- package/{Dialogs → build/Dialogs}/SimpleCron.d.ts +2 -2
- package/build/Dialogs/SimpleCron.js +46 -0
- package/build/Dialogs/SimpleCron.js.map +1 -0
- package/build/Dialogs/TextInput.d.ts +2 -0
- package/build/Dialogs/TextInput.js +31 -0
- package/build/Dialogs/TextInput.js.map +1 -0
- package/{GenericApp.d.ts → build/GenericApp.d.ts} +2 -3
- package/{GenericApp.js → build/GenericApp.js} +162 -176
- package/build/GenericApp.js.map +1 -0
- package/{LegacyConnection.d.ts → build/LegacyConnection.d.ts} +69 -4
- package/{LegacyConnection.js → build/LegacyConnection.js} +106 -99
- package/build/LegacyConnection.js.map +1 -0
- package/{Prompt.d.ts → build/Prompt.d.ts} +1 -1
- package/{Prompt.js → build/Prompt.js} +3 -4
- package/build/Prompt.js.map +1 -0
- package/build/Theme.d.ts +5 -0
- package/{Theme.js → build/Theme.js} +37 -32
- package/build/Theme.js.map +1 -0
- package/build/assets/devices/parseNames.d.ts +0 -0
- package/build/assets/devices/parseNames.js +35 -0
- package/build/assets/devices/parseNames.js.map +1 -0
- package/build/assets/rooms/parseNames.d.ts +0 -0
- package/build/assets/rooms/parseNames.js +35 -0
- package/build/assets/rooms/parseNames.js.map +1 -0
- package/build/dictionary.d.ts +1 -0
- package/build/dictionary.js +25 -0
- package/build/dictionary.js.map +1 -0
- package/build/i18n/de.json +449 -0
- package/build/i18n/en.json +449 -0
- package/build/i18n/es.json +449 -0
- package/build/i18n/fr.json +449 -0
- package/build/i18n/it.json +449 -0
- package/build/i18n/nl.json +449 -0
- package/build/i18n/pl.json +449 -0
- package/build/i18n/pt.json +449 -0
- package/build/i18n/ru.json +449 -0
- package/build/i18n/uk.json +449 -0
- package/build/i18n/zh-cn.json +449 -0
- package/{i18n.d.ts → build/i18n.d.ts} +2 -2
- package/{i18n.js → build/i18n.js} +9 -11
- package/build/i18n.js.map +1 -0
- package/build/icons/IconAdapter.d.ts +3 -0
- package/build/icons/IconAdapter.js +6 -0
- package/build/icons/IconAdapter.js.map +1 -0
- package/build/icons/IconAlias.d.ts +3 -0
- package/build/icons/IconAlias.js +6 -0
- package/build/icons/IconAlias.js.map +1 -0
- package/build/icons/IconChannel.d.ts +3 -0
- package/build/icons/IconChannel.js +9 -0
- package/build/icons/IconChannel.js.map +1 -0
- package/build/icons/IconClearFilter.d.ts +3 -0
- package/build/icons/IconClearFilter.js +7 -0
- package/build/icons/IconClearFilter.js.map +1 -0
- package/build/icons/IconClosed.d.ts +3 -0
- package/build/icons/IconClosed.js +6 -0
- package/build/icons/IconClosed.js.map +1 -0
- package/build/icons/IconCopy.d.ts +3 -0
- package/build/icons/IconCopy.js +5 -0
- package/build/icons/IconCopy.js.map +1 -0
- package/build/icons/IconDevice.d.ts +3 -0
- package/build/icons/IconDevice.js +15 -0
- package/build/icons/IconDevice.js.map +1 -0
- package/build/icons/IconDocument.d.ts +3 -0
- package/build/icons/IconDocument.js +6 -0
- package/build/icons/IconDocument.js.map +1 -0
- package/build/icons/IconDocumentReadOnly.d.ts +3 -0
- package/build/icons/IconDocumentReadOnly.js +7 -0
- package/build/icons/IconDocumentReadOnly.js.map +1 -0
- package/build/icons/IconExpert.d.ts +3 -0
- package/build/icons/IconExpert.js +6 -0
- package/build/icons/IconExpert.js.map +1 -0
- package/build/icons/IconFx.d.ts +3 -0
- package/build/icons/IconFx.js +5 -0
- package/build/icons/IconFx.js.map +1 -0
- package/build/icons/IconInstance.d.ts +3 -0
- package/build/icons/IconInstance.js +6 -0
- package/build/icons/IconInstance.js.map +1 -0
- package/build/icons/IconLogout.d.ts +3 -0
- package/build/icons/IconLogout.js +6 -0
- package/build/icons/IconLogout.js.map +1 -0
- package/build/icons/IconNoIcon.d.ts +3 -0
- package/build/icons/IconNoIcon.js +5 -0
- package/build/icons/IconNoIcon.js.map +1 -0
- package/build/icons/IconOpen.d.ts +3 -0
- package/build/icons/IconOpen.js +6 -0
- package/build/icons/IconOpen.js.map +1 -0
- package/{icons → build/icons}/IconProps.d.ts +1 -1
- package/build/icons/IconProps.js +2 -0
- package/build/icons/IconProps.js.map +1 -0
- package/build/icons/IconState.d.ts +3 -0
- package/build/icons/IconState.js +6 -0
- package/build/icons/IconState.js.map +1 -0
- package/build/index.d.ts +67 -0
- package/build/index.js +67 -0
- package/build/index.js.map +1 -0
- package/{types.d.ts → build/types.d.ts} +1 -1
- package/package.json +84 -47
- package/AdminConnection.d.ts +0 -2
- package/AdminConnection.js +0 -4
- package/Components/404.js +0 -101
- package/Components/CopyToClipboard.js +0 -163
- package/Components/CustomModal.js +0 -88
- package/Components/FileViewer.d.ts +0 -10
- package/Components/FileViewer.js +0 -305
- package/Components/Icon.js +0 -148
- package/Components/IconPicker.js +0 -98
- package/Components/Loaders/MV.js +0 -66
- package/Components/Loaders/Vendor.js +0 -77
- package/Components/Logo.js +0 -117
- package/Components/SaveCloseButtons.js +0 -69
- package/Components/SelectWithIcon.js +0 -168
- package/Components/SimpleCron/cronText.js +0 -19
- package/Components/TabContainer.js +0 -25
- package/Components/TabContent.js +0 -21
- package/Components/TabHeader.d.ts +0 -6
- package/Components/TabHeader.js +0 -11
- package/Components/TableResize.js +0 -226
- package/Components/TextWithIcon.js +0 -119
- package/Components/ToggleThemeMenu.js +0 -18
- package/Components/withWidth.d.ts +0 -3
- package/Components/withWidth.js +0 -27
- package/Connection.d.ts +0 -3
- package/Connection.js +0 -8
- package/Dialogs/ComplexCron.js +0 -90
- package/Dialogs/Confirm.js +0 -111
- package/Dialogs/Cron.js +0 -100
- package/Dialogs/Error.js +0 -55
- package/Dialogs/Message.js +0 -57
- package/Dialogs/SelectFile.js +0 -119
- package/Dialogs/SimpleCron.js +0 -51
- package/Dialogs/TextInput.d.ts +0 -3
- package/Dialogs/TextInput.js +0 -35
- package/Theme.d.ts +0 -6
- package/i18n/de.json +0 -449
- package/i18n/en.json +0 -449
- package/i18n/es.json +0 -449
- package/i18n/fr.json +0 -449
- package/i18n/it.json +0 -449
- package/i18n/nl.json +0 -449
- package/i18n/pl.json +0 -449
- package/i18n/pt.json +0 -449
- package/i18n/ru.json +0 -449
- package/i18n/uk.json +0 -449
- package/i18n/zh-cn.json +0 -449
- package/icons/IconAdapter.d.ts +0 -4
- package/icons/IconAdapter.js +0 -10
- package/icons/IconAlias.d.ts +0 -4
- package/icons/IconAlias.js +0 -10
- package/icons/IconChannel.d.ts +0 -4
- package/icons/IconChannel.js +0 -13
- package/icons/IconClearFilter.d.ts +0 -4
- package/icons/IconClearFilter.js +0 -11
- package/icons/IconClosed.d.ts +0 -4
- package/icons/IconClosed.js +0 -10
- package/icons/IconCopy.d.ts +0 -4
- package/icons/IconCopy.js +0 -9
- package/icons/IconDevice.d.ts +0 -4
- package/icons/IconDevice.js +0 -19
- package/icons/IconDocument.d.ts +0 -4
- package/icons/IconDocument.js +0 -10
- package/icons/IconDocumentReadOnly.d.ts +0 -4
- package/icons/IconDocumentReadOnly.js +0 -11
- package/icons/IconExpert.d.ts +0 -4
- package/icons/IconExpert.js +0 -10
- package/icons/IconFx.d.ts +0 -4
- package/icons/IconFx.js +0 -9
- package/icons/IconInstance.d.ts +0 -4
- package/icons/IconInstance.js +0 -10
- package/icons/IconLogout.d.ts +0 -4
- package/icons/IconLogout.js +0 -10
- package/icons/IconNoIcon.d.ts +0 -4
- package/icons/IconNoIcon.js +0 -9
- package/icons/IconOpen.d.ts +0 -4
- package/icons/IconOpen.js +0 -10
- package/icons/IconProps.js +0 -2
- package/icons/IconState.d.ts +0 -4
- package/icons/IconState.js +0 -10
- package/index.d.ts +0 -128
- package/index.js +0 -215
- package/src/AdminConnection.tsx +0 -3
- package/src/Components/ColorPicker.tsx +0 -343
- package/src/Components/ComplexCron.tsx +0 -561
- package/src/Components/CustomModal.tsx +0 -170
- package/src/Components/FileBrowser.tsx +0 -2550
- package/src/Components/FileViewer.tsx +0 -412
- package/src/Components/Icon.tsx +0 -238
- package/src/Components/IconPicker.tsx +0 -165
- package/src/Components/IconSelector.tsx +0 -2220
- package/src/Components/Image.tsx +0 -193
- package/src/Components/Loader.tsx +0 -328
- package/src/Components/Logo.tsx +0 -176
- package/src/Components/MDUtils.tsx +0 -104
- package/src/Components/ObjectBrowser.tsx +0 -8935
- package/src/Components/Router.tsx +0 -90
- package/src/Components/SaveCloseButtons.tsx +0 -117
- package/src/Components/Schedule.tsx +0 -1995
- package/src/Components/SelectWithIcon.tsx +0 -239
- package/src/Components/TabContainer.tsx +0 -57
- package/src/Components/TabContent.tsx +0 -38
- package/src/Components/TabHeader.tsx +0 -20
- package/src/Components/ToggleThemeMenu.tsx +0 -52
- package/src/Components/TreeTable.tsx +0 -1002
- package/src/Components/UploadImage.tsx +0 -643
- package/src/Components/Utils.tsx +0 -1802
- package/src/Components/loader.css +0 -231
- package/src/Components/withWidth.tsx +0 -32
- package/src/Connection.tsx +0 -5
- package/src/Dialogs/ComplexCron.tsx +0 -163
- package/src/Dialogs/Confirm.tsx +0 -185
- package/src/Dialogs/Cron.tsx +0 -192
- package/src/Dialogs/Error.tsx +0 -67
- package/src/Dialogs/Message.tsx +0 -73
- package/src/Dialogs/SelectFile.tsx +0 -280
- package/src/Dialogs/SelectID.tsx +0 -310
- package/src/Dialogs/SimpleCron.tsx +0 -101
- package/src/Dialogs/TextInput.tsx +0 -99
- package/src/GenericApp.tsx +0 -1076
- package/src/LegacyConnection.tsx +0 -3720
- package/src/Prompt.tsx +0 -22
- package/src/Theme.tsx +0 -472
- package/src/icons/IconAdapter.tsx +0 -22
- package/src/icons/IconAlias.tsx +0 -22
- package/src/icons/IconChannel.tsx +0 -60
- package/src/icons/IconClearFilter.tsx +0 -24
- package/src/icons/IconClosed.tsx +0 -22
- package/src/icons/IconCopy.tsx +0 -21
- package/src/icons/IconDevice.tsx +0 -126
- package/src/icons/IconDocument.tsx +0 -22
- package/src/icons/IconDocumentReadOnly.tsx +0 -27
- package/src/icons/IconExpert.tsx +0 -26
- package/src/icons/IconFx.tsx +0 -38
- package/src/icons/IconInstance.tsx +0 -22
- package/src/icons/IconLogout.tsx +0 -32
- package/src/icons/IconNoIcon.tsx +0 -21
- package/src/icons/IconOpen.tsx +0 -22
- package/src/icons/IconProps.tsx +0 -16
- package/src/icons/IconState.tsx +0 -38
- package/src/index.css +0 -56
- /package/{Components → build/Components}/404.d.ts +0 -0
- /package/{Components → build/Components}/SimpleCron/cronText.d.ts +0 -0
- /package/{assets → build/assets}/devices.json +0 -0
- /package/{assets → build/assets}/lamp_ceiling.svg +0 -0
- /package/{assets → build/assets}/lamp_table.svg +0 -0
- /package/{assets → build/assets}/no_icon.svg +0 -0
- /package/{assets → build/assets}/rooms.json +0 -0
- /package/{index.css → build/index.css} +0 -0
- /package/{tasks.js → tasksExample.js} +0 -0
|
@@ -1,35 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
|
-
};
|
|
28
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
-
const react_1 = __importStar(require("react"));
|
|
30
|
-
const material_1 = require("@mui/material");
|
|
31
|
-
const i18n_1 = __importDefault(require("../i18n"));
|
|
32
|
-
const Utils_1 = __importDefault(require("./Utils"));
|
|
1
|
+
import React, { Component } from 'react';
|
|
2
|
+
import { Input, Radio, FormControlLabel, FormGroup, Checkbox, MenuItem, Select, TextField, Box, } from '@mui/material';
|
|
3
|
+
import { I18n } from '../i18n';
|
|
4
|
+
import { Utils } from './Utils';
|
|
33
5
|
const styles = {
|
|
34
6
|
hr: {
|
|
35
7
|
border: 0,
|
|
@@ -219,18 +191,21 @@ function string2USdate(date) {
|
|
|
219
191
|
}
|
|
220
192
|
return '';
|
|
221
193
|
}
|
|
222
|
-
class Schedule extends
|
|
194
|
+
export class Schedule extends Component {
|
|
195
|
+
refFrom;
|
|
196
|
+
refTo;
|
|
197
|
+
refOnce;
|
|
198
|
+
timerOnce = null;
|
|
199
|
+
timerFrom = null;
|
|
200
|
+
timerTo = null;
|
|
223
201
|
constructor(props) {
|
|
224
202
|
super(props);
|
|
225
|
-
this.timerOnce = null;
|
|
226
|
-
this.timerFrom = null;
|
|
227
|
-
this.timerTo = null;
|
|
228
203
|
let schedule;
|
|
229
204
|
if (this.props.schedule && typeof this.props.schedule === 'string' && this.props.schedule[0] === '{') {
|
|
230
205
|
try {
|
|
231
206
|
schedule = JSON.parse(this.props.schedule);
|
|
232
207
|
}
|
|
233
|
-
catch
|
|
208
|
+
catch {
|
|
234
209
|
// ignore
|
|
235
210
|
}
|
|
236
211
|
}
|
|
@@ -241,11 +216,11 @@ class Schedule extends react_1.Component {
|
|
|
241
216
|
setTimeout(() => this.onChange(this.state.schedule, true), 200);
|
|
242
217
|
schedule = DEFAULT;
|
|
243
218
|
}
|
|
244
|
-
schedule =
|
|
219
|
+
schedule = { ...DEFAULT, ...schedule };
|
|
245
220
|
schedule.valid.from = schedule.valid.from || Schedule.now2string();
|
|
246
|
-
this.refFrom =
|
|
247
|
-
this.refTo =
|
|
248
|
-
this.refOnce =
|
|
221
|
+
this.refFrom = React.createRef();
|
|
222
|
+
this.refTo = React.createRef();
|
|
223
|
+
this.refOnce = React.createRef();
|
|
249
224
|
this.state = {
|
|
250
225
|
schedule,
|
|
251
226
|
desc: Schedule.state2text(schedule),
|
|
@@ -340,7 +315,7 @@ class Schedule extends react_1.Component {
|
|
|
340
315
|
try {
|
|
341
316
|
schedule = JSON.parse(schedule);
|
|
342
317
|
}
|
|
343
|
-
catch
|
|
318
|
+
catch {
|
|
344
319
|
return '';
|
|
345
320
|
}
|
|
346
321
|
}
|
|
@@ -357,10 +332,10 @@ class Schedule extends react_1.Component {
|
|
|
357
332
|
//
|
|
358
333
|
if (once < now) {
|
|
359
334
|
// will be not executed anymore, because start is in the past
|
|
360
|
-
return
|
|
335
|
+
return I18n.t('sch_desc_onceInPast');
|
|
361
336
|
}
|
|
362
337
|
// only once
|
|
363
|
-
desc.push(
|
|
338
|
+
desc.push(I18n.t('sch_desc_once_on', schedule.period.once));
|
|
364
339
|
}
|
|
365
340
|
else if (schedule.period.days) {
|
|
366
341
|
if (schedule.period.days === 1) {
|
|
@@ -368,7 +343,7 @@ class Schedule extends react_1.Component {
|
|
|
368
343
|
const daysOfWeek = JSON.parse(schedule.period.dows);
|
|
369
344
|
if (daysOfWeek.length === 2 && daysOfWeek[0] === 0 && daysOfWeek[1] === 6) {
|
|
370
345
|
// on weekends
|
|
371
|
-
desc.push(
|
|
346
|
+
desc.push(I18n.t('sch_desc_onWeekends'));
|
|
372
347
|
}
|
|
373
348
|
else if (daysOfWeek.length === 5 &&
|
|
374
349
|
daysOfWeek[0] === 1 &&
|
|
@@ -377,45 +352,45 @@ class Schedule extends react_1.Component {
|
|
|
377
352
|
daysOfWeek[3] === 4 &&
|
|
378
353
|
daysOfWeek[4] === 5) {
|
|
379
354
|
// on workdays
|
|
380
|
-
desc.push(
|
|
355
|
+
desc.push(I18n.t('sch_desc_onWorkdays'));
|
|
381
356
|
}
|
|
382
357
|
else {
|
|
383
|
-
const tDows = daysOfWeek.map((day) =>
|
|
358
|
+
const tDows = daysOfWeek.map((day) => I18n.t(WEEKDAYS[day]));
|
|
384
359
|
if (tDows.length === 1) {
|
|
385
360
|
// on Monday
|
|
386
|
-
desc.push(
|
|
361
|
+
desc.push(I18n.t('sch_desc_onWeekday', tDows[0]));
|
|
387
362
|
}
|
|
388
363
|
else if (tDows.length === 7) {
|
|
389
364
|
// on every day
|
|
390
|
-
desc.push(
|
|
365
|
+
desc.push(I18n.t('sch_desc_everyDay'));
|
|
391
366
|
}
|
|
392
367
|
else {
|
|
393
368
|
const last = tDows.pop();
|
|
394
369
|
// on Monday and Sunday
|
|
395
|
-
desc.push(
|
|
370
|
+
desc.push(I18n.t('sch_desc_onWeekdays', tDows.join(', '), last));
|
|
396
371
|
}
|
|
397
372
|
}
|
|
398
373
|
}
|
|
399
374
|
else {
|
|
400
|
-
desc.push(
|
|
375
|
+
desc.push(I18n.t('sch_desc_everyDay'));
|
|
401
376
|
}
|
|
402
377
|
}
|
|
403
378
|
else {
|
|
404
|
-
desc.push(
|
|
379
|
+
desc.push(I18n.t('sch_desc_everyNDay', schedule.period.days.toString()));
|
|
405
380
|
}
|
|
406
381
|
}
|
|
407
382
|
else if (schedule.period.weeks) {
|
|
408
383
|
if (schedule.period.weeks === 1) {
|
|
409
|
-
desc.push(
|
|
384
|
+
desc.push(I18n.t('sch_desc_everyWeek'));
|
|
410
385
|
}
|
|
411
386
|
else {
|
|
412
|
-
desc.push(
|
|
387
|
+
desc.push(I18n.t('sch_desc_everyNWeeks', schedule.period.weeks.toString()));
|
|
413
388
|
}
|
|
414
389
|
if (schedule.period.dows) {
|
|
415
390
|
const daysOfWeek = JSON.parse(schedule.period.dows);
|
|
416
391
|
if (daysOfWeek.length === 2 && daysOfWeek[0] === 0 && daysOfWeek[1] === 6) {
|
|
417
392
|
// on weekends
|
|
418
|
-
desc.push(
|
|
393
|
+
desc.push(I18n.t('sch_desc_onWeekends'));
|
|
419
394
|
}
|
|
420
395
|
else if (daysOfWeek.length === 5 &&
|
|
421
396
|
daysOfWeek[0] === 1 &&
|
|
@@ -424,27 +399,27 @@ class Schedule extends react_1.Component {
|
|
|
424
399
|
daysOfWeek[3] === 4 &&
|
|
425
400
|
daysOfWeek[4] === 5) {
|
|
426
401
|
// on workdays
|
|
427
|
-
desc.push(
|
|
402
|
+
desc.push(I18n.t('sch_desc_onWorkdays'));
|
|
428
403
|
}
|
|
429
404
|
else {
|
|
430
|
-
const tDows = daysOfWeek.map((day) =>
|
|
405
|
+
const tDows = daysOfWeek.map((day) => I18n.t(WEEKDAYS[day]));
|
|
431
406
|
if (tDows.length === 1) {
|
|
432
407
|
// on Monday
|
|
433
|
-
desc.push(
|
|
408
|
+
desc.push(I18n.t('sch_desc_onWeekday', tDows[0]));
|
|
434
409
|
}
|
|
435
410
|
else if (tDows.length === 7) {
|
|
436
411
|
// on every day
|
|
437
|
-
desc.push(
|
|
412
|
+
desc.push(I18n.t('sch_desc_everyDay'));
|
|
438
413
|
}
|
|
439
414
|
else {
|
|
440
415
|
const last = tDows.pop();
|
|
441
416
|
// on Monday and Sunday
|
|
442
|
-
desc.push(
|
|
417
|
+
desc.push(I18n.t('sch_desc_onWeekdays', tDows.join(', '), last));
|
|
443
418
|
}
|
|
444
419
|
}
|
|
445
420
|
}
|
|
446
421
|
else {
|
|
447
|
-
return
|
|
422
|
+
return I18n.t('sch_desc_never');
|
|
448
423
|
}
|
|
449
424
|
}
|
|
450
425
|
else if (schedule.period.months) {
|
|
@@ -452,114 +427,114 @@ class Schedule extends react_1.Component {
|
|
|
452
427
|
const dates = JSON.parse(schedule.period.dates);
|
|
453
428
|
if (dates.length === 1) {
|
|
454
429
|
// in 1 of month
|
|
455
|
-
desc.push(
|
|
430
|
+
desc.push(I18n.t('sch_desc_onDate', dates[0]));
|
|
456
431
|
}
|
|
457
432
|
else if (dates.length === 31) {
|
|
458
|
-
desc.push(
|
|
433
|
+
desc.push(I18n.t('sch_desc_onEveryDate'));
|
|
459
434
|
}
|
|
460
435
|
else if (!dates.length) {
|
|
461
|
-
return
|
|
436
|
+
return I18n.t('sch_desc_never');
|
|
462
437
|
}
|
|
463
438
|
else {
|
|
464
439
|
const last = dates.pop();
|
|
465
440
|
// in 1 and 4 of month
|
|
466
|
-
desc.push(
|
|
441
|
+
desc.push(I18n.t('sch_desc_onDates', dates.join(', '), last));
|
|
467
442
|
}
|
|
468
443
|
}
|
|
469
444
|
else {
|
|
470
|
-
desc.push(
|
|
445
|
+
desc.push(I18n.t('sch_desc_onEveryDate'));
|
|
471
446
|
}
|
|
472
447
|
if (schedule.period.months === 1) {
|
|
473
|
-
desc.push(
|
|
448
|
+
desc.push(I18n.t('sch_desc_everyMonth'));
|
|
474
449
|
}
|
|
475
450
|
else if (typeof schedule.period.months === 'number') {
|
|
476
|
-
desc.push(
|
|
451
|
+
desc.push(I18n.t('sch_desc_everyNMonths', schedule.period.months.toString()));
|
|
477
452
|
}
|
|
478
453
|
else {
|
|
479
454
|
const months = JSON.parse(schedule.period.months);
|
|
480
|
-
const tMonths = months.map((month) =>
|
|
455
|
+
const tMonths = months.map((month) => I18n.t(MONTHS[month - 1]));
|
|
481
456
|
if (!tMonths.length) {
|
|
482
457
|
// in January
|
|
483
|
-
return
|
|
458
|
+
return I18n.t('sch_desc_never');
|
|
484
459
|
}
|
|
485
460
|
if (tMonths.length === 1) {
|
|
486
461
|
// in January
|
|
487
|
-
desc.push(
|
|
462
|
+
desc.push(I18n.t('sch_desc_onMonth', tMonths[0]));
|
|
488
463
|
}
|
|
489
464
|
else if (tMonths.length === 12) {
|
|
490
465
|
// every month
|
|
491
|
-
desc.push(
|
|
466
|
+
desc.push(I18n.t('sch_desc_everyMonth'));
|
|
492
467
|
}
|
|
493
468
|
else {
|
|
494
469
|
const last = tMonths.pop();
|
|
495
470
|
// in January and May
|
|
496
|
-
desc.push(
|
|
471
|
+
desc.push(I18n.t('sch_desc_onMonths', tMonths.join(', '), last));
|
|
497
472
|
}
|
|
498
473
|
}
|
|
499
474
|
}
|
|
500
475
|
else if (schedule.period.years) {
|
|
501
476
|
if (schedule.period.years === 1) {
|
|
502
|
-
desc.push(
|
|
477
|
+
desc.push(I18n.t('sch_desc_everyYear'));
|
|
503
478
|
}
|
|
504
479
|
else {
|
|
505
|
-
desc.push(
|
|
480
|
+
desc.push(I18n.t('sch_desc_everyNYears', schedule.period.years.toString()));
|
|
506
481
|
}
|
|
507
|
-
desc.push(
|
|
508
|
-
?
|
|
509
|
-
:
|
|
482
|
+
desc.push(I18n.t('sch_desc_onDate', schedule.period.yearDate.toString(), schedule.period.yearMonth
|
|
483
|
+
? I18n.t(MONTHS[schedule.period.yearMonth - 1])
|
|
484
|
+
: I18n.t('sch_desc_everyMonth')));
|
|
510
485
|
}
|
|
511
486
|
// time
|
|
512
487
|
if (schedule.time.exactTime) {
|
|
513
488
|
if (ASTRO.includes(schedule.time.start)) {
|
|
514
489
|
// at sunset
|
|
515
|
-
desc.push(
|
|
490
|
+
desc.push(I18n.t('sch_desc_atTime', I18n.t(`sch_astro_${schedule.time.start}`)));
|
|
516
491
|
}
|
|
517
492
|
else {
|
|
518
493
|
// at HH:MM
|
|
519
|
-
desc.push(
|
|
494
|
+
desc.push(I18n.t('sch_desc_atTime', schedule.time.start));
|
|
520
495
|
}
|
|
521
496
|
}
|
|
522
497
|
else {
|
|
523
498
|
if (schedule.time.mode === PERIODS.minutes) {
|
|
524
499
|
if (schedule.time.interval === 1) {
|
|
525
500
|
// every minute
|
|
526
|
-
desc.push(
|
|
501
|
+
desc.push(I18n.t('sch_desc_everyMinute'));
|
|
527
502
|
}
|
|
528
503
|
else {
|
|
529
|
-
// every N
|
|
530
|
-
desc.push(
|
|
504
|
+
// every N minute
|
|
505
|
+
desc.push(I18n.t('sch_desc_everyNMinutes', schedule.time.interval.toString()));
|
|
531
506
|
}
|
|
532
507
|
}
|
|
533
508
|
else if (schedule.time.interval === 1) {
|
|
534
509
|
// every minute
|
|
535
|
-
desc.push(
|
|
510
|
+
desc.push(I18n.t('sch_desc_everyHour'));
|
|
536
511
|
}
|
|
537
512
|
else {
|
|
538
|
-
// every N
|
|
539
|
-
desc.push(
|
|
513
|
+
// every N minute
|
|
514
|
+
desc.push(I18n.t('sch_desc_everyNHours', schedule.time.interval.toString()));
|
|
540
515
|
}
|
|
541
516
|
const start = ASTRO.indexOf(schedule.time.start) !== -1
|
|
542
|
-
?
|
|
517
|
+
? I18n.t(`sch_astro_${schedule.time.start}`)
|
|
543
518
|
: schedule.time.start;
|
|
544
|
-
const end = ASTRO.indexOf(schedule.time.end) !== -1 ?
|
|
519
|
+
const end = ASTRO.indexOf(schedule.time.end) !== -1 ? I18n.t(`sch_astro_${schedule.time.end}`) : schedule.time.end;
|
|
545
520
|
if (start !== '00:00' || (end !== '24:00' && end !== '23:59')) {
|
|
546
521
|
// from HH:mm to HH:mm
|
|
547
|
-
desc.push(
|
|
522
|
+
desc.push(I18n.t('sch_desc_intervalFromTo', start, end));
|
|
548
523
|
}
|
|
549
524
|
}
|
|
550
525
|
if (!schedule.period.once) {
|
|
551
526
|
// valid
|
|
552
527
|
if (validFrom.getTime() > Date.now() && schedule.valid.to) {
|
|
553
528
|
// from XXX to XXXX
|
|
554
|
-
desc.push(
|
|
529
|
+
desc.push(I18n.t('sch_desc_validFromTo', schedule.valid.from, schedule.valid.to));
|
|
555
530
|
}
|
|
556
531
|
else if (validFrom.getTime() > Date.now()) {
|
|
557
532
|
// from XXXX
|
|
558
|
-
desc.push(
|
|
533
|
+
desc.push(I18n.t('sch_desc_validFrom', schedule.valid.from));
|
|
559
534
|
}
|
|
560
535
|
else if (schedule.valid.to) {
|
|
561
536
|
// till XXXX
|
|
562
|
-
desc.push(
|
|
537
|
+
desc.push(I18n.t('sch_desc_validTo', schedule.valid.to));
|
|
563
538
|
}
|
|
564
539
|
}
|
|
565
540
|
return desc.join(' ');
|
|
@@ -582,25 +557,25 @@ class Schedule extends react_1.Component {
|
|
|
582
557
|
night = true;
|
|
583
558
|
fromTo = false;
|
|
584
559
|
}
|
|
585
|
-
return (
|
|
586
|
-
|
|
587
|
-
|
|
560
|
+
return (React.createElement("div", { key: "timePeriod", style: styles.rowDiv },
|
|
561
|
+
React.createElement("div", { style: styles.modeDiv },
|
|
562
|
+
React.createElement(FormControlLabel, { control: React.createElement(Radio, { style: styles.inputRadio, checked: !schedule.time.exactTime, onClick: () => {
|
|
588
563
|
const _schedule = JSON.parse(JSON.stringify(this.state.schedule));
|
|
589
564
|
_schedule.time.exactTime = false;
|
|
590
565
|
this.onChange(_schedule);
|
|
591
|
-
} }), label:
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
!schedule.time.exactTime && (
|
|
595
|
-
|
|
596
|
-
|
|
566
|
+
} }), label: I18n.t('sch_intervalTime') })),
|
|
567
|
+
React.createElement("div", { style: styles.settingsDiv },
|
|
568
|
+
React.createElement("div", { style: styles.settingsDiv },
|
|
569
|
+
!schedule.time.exactTime && (React.createElement("div", null,
|
|
570
|
+
React.createElement("div", null,
|
|
571
|
+
React.createElement(FormControlLabel, { control: React.createElement(Radio, { style: styles.inputRadio, checked: !!fromTo, onClick: () => {
|
|
597
572
|
const _schedule = JSON.parse(JSON.stringify(this.state.schedule));
|
|
598
573
|
_schedule.time.start = '00:00';
|
|
599
574
|
_schedule.time.end = '23:59';
|
|
600
575
|
this.onChange(_schedule);
|
|
601
|
-
} }), label: !fromTo ?
|
|
576
|
+
} }), label: !fromTo ? I18n.t('sch_fromTo') : '' }),
|
|
602
577
|
fromTo && [
|
|
603
|
-
|
|
578
|
+
React.createElement(TextField, { variant: "standard", style: { ...styles.inputTime, marginRight: 10 }, key: "exactTimeFrom", type: "time", sx: (theme) => ({
|
|
604
579
|
'& input[type="time"]::-webkit-calendar-picker-indicator': {
|
|
605
580
|
filter: theme.palette.mode === 'dark' ? 'invert(80%)' : undefined,
|
|
606
581
|
},
|
|
@@ -612,8 +587,8 @@ class Schedule extends react_1.Component {
|
|
|
612
587
|
this.onChange(_schedule);
|
|
613
588
|
}, slotProps: {
|
|
614
589
|
inputLabel: { shrink: true },
|
|
615
|
-
}, label:
|
|
616
|
-
|
|
590
|
+
}, label: I18n.t('sch_from'), margin: "normal" }),
|
|
591
|
+
React.createElement(TextField, { variant: "standard", style: styles.inputTime, key: "exactTimeTo", type: "time", sx: (theme) => ({
|
|
617
592
|
'& input[type="time"]::-webkit-calendar-picker-indicator': {
|
|
618
593
|
filter: theme.palette.mode === 'dark' ? 'invert(80%)' : undefined,
|
|
619
594
|
},
|
|
@@ -625,49 +600,49 @@ class Schedule extends react_1.Component {
|
|
|
625
600
|
this.onChange(_schedule);
|
|
626
601
|
}, slotProps: {
|
|
627
602
|
inputLabel: { shrink: true },
|
|
628
|
-
}, label:
|
|
603
|
+
}, label: I18n.t('sch_to'), margin: "normal" }),
|
|
629
604
|
]))),
|
|
630
|
-
!schedule.time.exactTime && (
|
|
631
|
-
|
|
605
|
+
!schedule.time.exactTime && (React.createElement("div", null,
|
|
606
|
+
React.createElement(FormControlLabel, { control: React.createElement(Radio, { style: styles.inputRadio, checked: !!wholeDay, onClick: () => {
|
|
632
607
|
const _schedule = JSON.parse(JSON.stringify(this.state.schedule));
|
|
633
608
|
_schedule.time.start = '00:00';
|
|
634
609
|
_schedule.time.end = '24:00';
|
|
635
610
|
this.onChange(_schedule);
|
|
636
|
-
} }), label:
|
|
637
|
-
!schedule.time.exactTime && (
|
|
638
|
-
|
|
611
|
+
} }), label: I18n.t('sch_wholeDay') }))),
|
|
612
|
+
!schedule.time.exactTime && (React.createElement("div", null,
|
|
613
|
+
React.createElement(FormControlLabel, { control: React.createElement(Radio, { style: styles.inputRadio, checked: !!day, onClick: () => {
|
|
639
614
|
const _schedule = JSON.parse(JSON.stringify(this.state.schedule));
|
|
640
615
|
_schedule.time.start = 'sunrise';
|
|
641
616
|
_schedule.time.end = 'sunset';
|
|
642
617
|
this.onChange(_schedule);
|
|
643
|
-
} }), label:
|
|
644
|
-
!schedule.time.exactTime && (
|
|
645
|
-
|
|
618
|
+
} }), label: I18n.t('sch_astroDay') }))),
|
|
619
|
+
!schedule.time.exactTime && (React.createElement("div", null,
|
|
620
|
+
React.createElement(FormControlLabel, { control: React.createElement(Radio, { style: styles.inputRadio, checked: !!night, onClick: () => {
|
|
646
621
|
const _schedule = JSON.parse(JSON.stringify(this.state.schedule));
|
|
647
622
|
_schedule.time.start = 'sunset';
|
|
648
623
|
_schedule.time.end = 'sunrise';
|
|
649
624
|
this.onChange(_schedule);
|
|
650
|
-
} }), label:
|
|
651
|
-
!schedule.time.exactTime && this.getPeriodSettingsMinutes())));
|
|
625
|
+
} }), label: I18n.t('sch_astroNight') })))),
|
|
626
|
+
!schedule.time.exactTime && this.getPeriodSettingsMinutes(fromTo))));
|
|
652
627
|
}
|
|
653
628
|
getTimeExactElements() {
|
|
654
629
|
const isAstro = ASTRO.includes(this.state.schedule.time.start);
|
|
655
|
-
return (
|
|
656
|
-
|
|
657
|
-
|
|
630
|
+
return (React.createElement("div", { key: "timeExact", style: styles.rowDiv },
|
|
631
|
+
React.createElement("div", { style: styles.modeDiv },
|
|
632
|
+
React.createElement(FormControlLabel, { control: React.createElement(Radio, { style: styles.inputRadio, checked: !!this.state.schedule.time.exactTime, onClick: () => {
|
|
658
633
|
const schedule = JSON.parse(JSON.stringify(this.state.schedule));
|
|
659
634
|
schedule.time.exactTime = true;
|
|
660
635
|
this.onChange(schedule);
|
|
661
|
-
} }), label:
|
|
662
|
-
this.state.schedule.time.exactTime && (
|
|
636
|
+
} }), label: I18n.t('sch_exactTime') })),
|
|
637
|
+
this.state.schedule.time.exactTime && (React.createElement(Select, { variant: "standard", value: isAstro ? this.state.schedule.time.start : '00:00', onChange: e => {
|
|
663
638
|
const _schedule = JSON.parse(JSON.stringify(this.state.schedule));
|
|
664
639
|
_schedule.time.start = e.target.value;
|
|
665
640
|
this.onChange(_schedule);
|
|
666
641
|
} },
|
|
667
|
-
|
|
668
|
-
ASTRO.map(event => (
|
|
669
|
-
this.state.schedule.time.exactTime && !isAstro && (
|
|
670
|
-
|
|
642
|
+
React.createElement(MenuItem, { key: "specific", value: "00:00" }, I18n.t('sch_specificTime')),
|
|
643
|
+
ASTRO.map(event => (React.createElement(MenuItem, { key: event, value: event }, I18n.t(`sch_astro_${event}`)))))),
|
|
644
|
+
this.state.schedule.time.exactTime && !isAstro && (React.createElement("div", { style: styles.settingsDiv },
|
|
645
|
+
React.createElement(TextField, { variant: "standard", style: styles.inputTime, key: "exactTimeValue", value: this.state.schedule.time.start, type: "time", sx: (theme) => ({
|
|
671
646
|
'& input[type="time"]::-webkit-calendar-picker-indicator': {
|
|
672
647
|
filter: theme.palette.mode === 'dark' ? 'invert(80%)' : undefined,
|
|
673
648
|
},
|
|
@@ -680,7 +655,7 @@ class Schedule extends react_1.Component {
|
|
|
680
655
|
}, margin: "normal" })))));
|
|
681
656
|
}
|
|
682
657
|
static getDivider() {
|
|
683
|
-
return
|
|
658
|
+
return React.createElement("hr", { style: styles.hr });
|
|
684
659
|
}
|
|
685
660
|
getPeriodModes() {
|
|
686
661
|
const schedule = this.state.schedule;
|
|
@@ -695,9 +670,9 @@ class Schedule extends react_1.Component {
|
|
|
695
670
|
}
|
|
696
671
|
return [
|
|
697
672
|
// ----- once ---
|
|
698
|
-
|
|
699
|
-
|
|
700
|
-
|
|
673
|
+
React.createElement("div", { key: "once", style: { ...styles.rowDiv, ...styles.rowOnce } },
|
|
674
|
+
React.createElement("div", { style: styles.modeDiv },
|
|
675
|
+
React.createElement(FormControlLabel, { control: React.createElement(Radio, { style: styles.inputRadio, checked: !!isOnce, onClick: () => {
|
|
701
676
|
const _schedule = JSON.parse(JSON.stringify(this.state.schedule));
|
|
702
677
|
_schedule.period.once = _schedule.period.once || Schedule.now2string(true);
|
|
703
678
|
_schedule.period.dows = '';
|
|
@@ -709,9 +684,9 @@ class Schedule extends react_1.Component {
|
|
|
709
684
|
_schedule.period.weeks = 0;
|
|
710
685
|
_schedule.period.days = 0;
|
|
711
686
|
this.onChange(_schedule);
|
|
712
|
-
} }), label:
|
|
713
|
-
isOnce && (
|
|
714
|
-
|
|
687
|
+
} }), label: I18n.t('sch_periodOnce') })),
|
|
688
|
+
isOnce && (React.createElement("div", { style: styles.settingsDiv },
|
|
689
|
+
React.createElement(TextField, { variant: "standard", style: styles.inputDate, type: "date", ref: this.refOnce, key: "exactDateAt", defaultValue: string2USdate(schedule.period.once),
|
|
715
690
|
// InputProps={{inputComponent: TextTime}}
|
|
716
691
|
onChange: e => {
|
|
717
692
|
this.timerOnce && clearTimeout(this.timerOnce);
|
|
@@ -733,11 +708,11 @@ class Schedule extends react_1.Component {
|
|
|
733
708
|
}, 1500, e.target.value);
|
|
734
709
|
}, slotProps: {
|
|
735
710
|
inputLabel: { shrink: true },
|
|
736
|
-
}, label:
|
|
711
|
+
}, label: I18n.t('sch_at'), margin: "normal" })))),
|
|
737
712
|
// ----- days ---
|
|
738
|
-
|
|
739
|
-
|
|
740
|
-
|
|
713
|
+
React.createElement(Box, { component: "div", key: "days", sx: Utils.getStyle(this.props.theme, styles.rowDiv, styles.rowDays) },
|
|
714
|
+
React.createElement("div", { style: styles.modeDiv },
|
|
715
|
+
React.createElement(FormControlLabel, { control: React.createElement(Radio, { style: styles.inputRadio, checked: !!schedule.period.days, onClick: () => {
|
|
741
716
|
const _schedule = JSON.parse(JSON.stringify(this.state.schedule));
|
|
742
717
|
_schedule.period.days = 1;
|
|
743
718
|
_schedule.period.dows = '';
|
|
@@ -749,8 +724,8 @@ class Schedule extends react_1.Component {
|
|
|
749
724
|
_schedule.period.weeks = 0;
|
|
750
725
|
_schedule.period.once = '';
|
|
751
726
|
this.onChange(_schedule);
|
|
752
|
-
} }), label:
|
|
753
|
-
|
|
727
|
+
} }), label: I18n.t('sch_periodDaily') })),
|
|
728
|
+
React.createElement("div", { style: styles.settingsDiv },
|
|
754
729
|
this.getPeriodSettingsDaily(),
|
|
755
730
|
schedule.period.days ? this.getPeriodSettingsWeekdays() : null)),
|
|
756
731
|
// ----- days of weeks ---
|
|
@@ -771,9 +746,9 @@ class Schedule extends react_1.Component {
|
|
|
771
746
|
</div>,
|
|
772
747
|
*/
|
|
773
748
|
// ----- weeks ---
|
|
774
|
-
|
|
775
|
-
|
|
776
|
-
|
|
749
|
+
React.createElement(Box, { component: "div", key: "weeks", sx: Utils.getStyle(this.props.theme, styles.rowDiv, styles.rowDows) },
|
|
750
|
+
React.createElement("div", { style: styles.modeDiv },
|
|
751
|
+
React.createElement(FormControlLabel, { control: React.createElement(Radio, { style: styles.inputRadio, checked: !!schedule.period.weeks, onClick: () => {
|
|
777
752
|
const _schedule = JSON.parse(JSON.stringify(this.state.schedule));
|
|
778
753
|
_schedule.period.weeks = schedule.period.weeks ? 0 : 1;
|
|
779
754
|
_schedule.period.dows = schedule.period.dows || '[0]';
|
|
@@ -785,14 +760,14 @@ class Schedule extends react_1.Component {
|
|
|
785
760
|
_schedule.period.days = 0;
|
|
786
761
|
_schedule.period.once = '';
|
|
787
762
|
this.onChange(_schedule);
|
|
788
|
-
} }), label:
|
|
789
|
-
|
|
790
|
-
|
|
791
|
-
|
|
763
|
+
} }), label: I18n.t('sch_periodWeekly') })),
|
|
764
|
+
React.createElement(Box, { component: "div", style: styles.settingsDiv },
|
|
765
|
+
React.createElement("div", { style: styles.settingsDiv }, this.getPeriodSettingsWeekly()),
|
|
766
|
+
React.createElement(Box, { component: "div", sx: Utils.getStyle(this.props.theme, styles.settingsDiv, styles.rowDowsDows) }, this.state.schedule.period.weeks ? this.getPeriodSettingsWeekdays() : null))),
|
|
792
767
|
// ----- months ---
|
|
793
|
-
|
|
794
|
-
|
|
795
|
-
|
|
768
|
+
React.createElement(Box, { component: "div", key: "months", sx: Utils.getStyle(this.props.theme, styles.rowDiv, styles.rowMonths) },
|
|
769
|
+
React.createElement("div", { style: styles.modeDiv },
|
|
770
|
+
React.createElement(FormControlLabel, { control: React.createElement(Radio, { style: styles.inputRadio, checked: !!schedule.period.months, onClick: () => {
|
|
796
771
|
const _schedule = JSON.parse(JSON.stringify(this.state.schedule));
|
|
797
772
|
_schedule.period.months = 1;
|
|
798
773
|
_schedule.period.dows = '';
|
|
@@ -804,12 +779,12 @@ class Schedule extends react_1.Component {
|
|
|
804
779
|
_schedule.period.days = 0;
|
|
805
780
|
_schedule.period.once = '';
|
|
806
781
|
this.onChange(_schedule);
|
|
807
|
-
} }), label:
|
|
808
|
-
|
|
782
|
+
} }), label: I18n.t('sch_periodMonthly') })),
|
|
783
|
+
React.createElement("div", { style: styles.settingsDiv },
|
|
809
784
|
this.getPeriodSettingsMonthly(),
|
|
810
|
-
schedule.period.months ? (
|
|
811
|
-
|
|
812
|
-
|
|
785
|
+
schedule.period.months ? (React.createElement(Box, null,
|
|
786
|
+
React.createElement(Box, { component: "div", sx: Utils.getStyle(this.props.theme, styles.settingsDiv, styles.rowMonthsDates) },
|
|
787
|
+
React.createElement(FormControlLabel, { control: React.createElement(Checkbox, { style: styles.inputRadio, checked: !!schedule.period.dates, onClick: () => {
|
|
813
788
|
const _schedule = JSON.parse(JSON.stringify(this.state.schedule));
|
|
814
789
|
_schedule.period.months = _schedule.period.months || 1;
|
|
815
790
|
const dates = [];
|
|
@@ -826,12 +801,12 @@ class Schedule extends react_1.Component {
|
|
|
826
801
|
_schedule.period.days = 0;
|
|
827
802
|
_schedule.period.once = '';
|
|
828
803
|
this.onChange(_schedule);
|
|
829
|
-
} }), label:
|
|
830
|
-
|
|
804
|
+
} }), label: I18n.t('sch_periodDates') })),
|
|
805
|
+
React.createElement(Box, { component: "div", sx: Utils.getStyle(this.props.theme, styles.settingsDiv, styles.rowMonthsDates) }, this.getPeriodSettingsDates()))) : null)),
|
|
831
806
|
// ----- years ---
|
|
832
|
-
|
|
833
|
-
|
|
834
|
-
|
|
807
|
+
React.createElement(Box, { component: "div", key: "years", sx: Utils.getStyle(this.props.theme, styles.rowDiv, styles.rowYears) },
|
|
808
|
+
React.createElement("div", { style: styles.modeDiv },
|
|
809
|
+
React.createElement(FormControlLabel, { control: React.createElement(Radio, { style: styles.inputRadio, checked: !!schedule.period.years, onClick: () => {
|
|
835
810
|
const _schedule = JSON.parse(JSON.stringify(this.state.schedule));
|
|
836
811
|
_schedule.period.years = 1;
|
|
837
812
|
_schedule.period.yearDate = 1;
|
|
@@ -843,12 +818,12 @@ class Schedule extends react_1.Component {
|
|
|
843
818
|
_schedule.period.days = 0;
|
|
844
819
|
_schedule.period.once = '';
|
|
845
820
|
this.onChange(_schedule);
|
|
846
|
-
} }), label:
|
|
847
|
-
|
|
848
|
-
|
|
849
|
-
!!schedule.period.years && (
|
|
850
|
-
|
|
851
|
-
|
|
821
|
+
} }), label: I18n.t('sch_periodYearly') })),
|
|
822
|
+
React.createElement("div", { style: styles.settingsDiv },
|
|
823
|
+
React.createElement("div", { style: styles.settingsDiv }, this.getPeriodSettingsYearly()),
|
|
824
|
+
!!schedule.period.years && (React.createElement("div", { style: styles.settingsDiv },
|
|
825
|
+
React.createElement("span", null, I18n.t('sch_on')),
|
|
826
|
+
React.createElement(Input, { key: "input", value: this.state.schedule.period.yearDate, style: styles.inputEvery, type: "number", inputProps: { min: 1, max: 31 }, onChange: e => {
|
|
852
827
|
const _schedule = JSON.parse(JSON.stringify(this.state.schedule));
|
|
853
828
|
_schedule.period.yearDate = parseInt(e.target.value, 10);
|
|
854
829
|
if (_schedule.period.yearDate < 1) {
|
|
@@ -859,70 +834,73 @@ class Schedule extends react_1.Component {
|
|
|
859
834
|
}
|
|
860
835
|
this.onChange(_schedule);
|
|
861
836
|
} }),
|
|
862
|
-
|
|
837
|
+
React.createElement(Select, { variant: "standard", value: schedule.period.yearMonth, onChange: e => {
|
|
863
838
|
const _schedule = JSON.parse(JSON.stringify(this.state.schedule));
|
|
864
839
|
_schedule.period.yearMonth = e.target.value;
|
|
865
840
|
this.onChange(_schedule);
|
|
866
841
|
} },
|
|
867
|
-
|
|
868
|
-
MONTHS.map((month, i) => (
|
|
842
|
+
React.createElement(MenuItem, { key: "every", value: 0 }, I18n.t('sch_yearEveryMonth')),
|
|
843
|
+
MONTHS.map((month, i) => (React.createElement(MenuItem, { key: month, value: i + 1 }, I18n.t(month))))))))),
|
|
869
844
|
];
|
|
870
845
|
}
|
|
871
|
-
getPeriodSettingsMinutes() {
|
|
872
|
-
return (
|
|
873
|
-
|
|
874
|
-
|
|
846
|
+
getPeriodSettingsMinutes(fromTo) {
|
|
847
|
+
return (React.createElement("div", { style: { display: 'inline-block', marginTop: fromTo ? 15 : 'inherit' } },
|
|
848
|
+
React.createElement("label", { style: { marginLeft: 4, marginRight: 4 } }, I18n.t('sch_every')),
|
|
849
|
+
React.createElement(Input, { value: this.state.schedule.time.interval, style: {
|
|
850
|
+
...styles.inputEvery,
|
|
851
|
+
verticalAlign: 'bottom',
|
|
852
|
+
}, type: "number", inputProps: { min: 1 }, onChange: e => {
|
|
875
853
|
const _schedule = JSON.parse(JSON.stringify(this.state.schedule));
|
|
876
854
|
_schedule.time.interval = parseInt(e.target.value, 10);
|
|
877
855
|
this.onChange(_schedule);
|
|
878
856
|
} }),
|
|
879
|
-
|
|
857
|
+
React.createElement(Select, { variant: "standard", value: this.state.schedule.time.mode, onChange: e => {
|
|
880
858
|
const _schedule = JSON.parse(JSON.stringify(this.state.schedule));
|
|
881
859
|
_schedule.time.mode = e.target.value;
|
|
882
860
|
this.onChange(_schedule);
|
|
883
861
|
} },
|
|
884
|
-
|
|
885
|
-
|
|
862
|
+
React.createElement(MenuItem, { value: PERIODS.minutes }, I18n.t('sch_periodMinutes')),
|
|
863
|
+
React.createElement(MenuItem, { value: PERIODS.hours }, I18n.t('sch_periodHours')))));
|
|
886
864
|
}
|
|
887
865
|
getPeriodSettingsWeekdays() {
|
|
888
866
|
// || this.state.schedule.period.dows === '[1, 2, 3, 4, 5]' || this.state.schedule.period.dows === '[0, 6]'
|
|
889
867
|
const schedule = this.state.schedule;
|
|
890
868
|
const isSpecific = schedule.period.dows && schedule.period.dows !== '[1, 2, 3, 4, 5]' && schedule.period.dows !== '[0, 6]';
|
|
891
869
|
return [
|
|
892
|
-
|
|
893
|
-
|
|
870
|
+
React.createElement("div", { key: "workdays" },
|
|
871
|
+
React.createElement(FormControlLabel, { control: React.createElement(Radio, { style: styles.inputRadio, checked: schedule.period.dows === '[1, 2, 3, 4, 5]', onClick: () => {
|
|
894
872
|
const _schedule = JSON.parse(JSON.stringify(this.state.schedule));
|
|
895
873
|
_schedule.period.dows = '[1, 2, 3, 4, 5]';
|
|
896
874
|
if (_schedule.period.days) {
|
|
897
875
|
_schedule.period.days = 1;
|
|
898
876
|
}
|
|
899
877
|
this.onChange(_schedule);
|
|
900
|
-
} }), label:
|
|
901
|
-
|
|
902
|
-
|
|
878
|
+
} }), label: I18n.t('sch_periodWorkdays') })),
|
|
879
|
+
React.createElement("div", { key: "weekend" },
|
|
880
|
+
React.createElement(FormControlLabel, { control: React.createElement(Radio, { style: styles.inputRadio, checked: schedule.period.dows === '[0, 6]', onClick: () => {
|
|
903
881
|
const _schedule = JSON.parse(JSON.stringify(this.state.schedule));
|
|
904
882
|
_schedule.period.dows = '[0, 6]';
|
|
905
883
|
if (_schedule.period.days) {
|
|
906
884
|
_schedule.period.days = 1;
|
|
907
885
|
}
|
|
908
886
|
this.onChange(_schedule);
|
|
909
|
-
} }), label:
|
|
910
|
-
|
|
911
|
-
|
|
887
|
+
} }), label: I18n.t('sch_periodWeekend') })),
|
|
888
|
+
React.createElement("div", { key: "specific", style: { verticalAlign: 'top' } },
|
|
889
|
+
React.createElement(FormControlLabel, { style: { verticalAlign: 'top' }, control: React.createElement(Radio, { style: styles.inputRadio, checked: !!isSpecific, onClick: () => {
|
|
912
890
|
const _schedule = JSON.parse(JSON.stringify(this.state.schedule));
|
|
913
891
|
_schedule.period.dows = '[0, 1, 2, 3, 4, 5, 6]';
|
|
914
892
|
if (_schedule.period.days) {
|
|
915
893
|
_schedule.period.days = 1;
|
|
916
894
|
}
|
|
917
895
|
this.onChange(_schedule);
|
|
918
|
-
} }), label:
|
|
919
|
-
isSpecific && (schedule.period.days === 1 || schedule.period.weeks) && (
|
|
896
|
+
} }), label: I18n.t('sch_periodWeekdays') }),
|
|
897
|
+
isSpecific && (schedule.period.days === 1 || schedule.period.weeks) && (React.createElement(FormGroup, { row: true, style: { ...styles.inputGroup, width: 150 } }, [1, 2, 3, 4, 5, 6, 0].map(i => (React.createElement(FormControlLabel, { key: `specific_${i}`, style: styles.inputGroupElement, control: React.createElement(Checkbox, { style: styles.inputSmallCheck, checked: schedule.period.dows.includes(i.toString()), onChange: e => {
|
|
920
898
|
const _schedule = JSON.parse(JSON.stringify(this.state.schedule));
|
|
921
899
|
let daysOfWeek;
|
|
922
900
|
try {
|
|
923
901
|
daysOfWeek = JSON.parse(_schedule.period.dows);
|
|
924
902
|
}
|
|
925
|
-
catch
|
|
903
|
+
catch {
|
|
926
904
|
daysOfWeek = [];
|
|
927
905
|
}
|
|
928
906
|
if (e.target.checked && !daysOfWeek.includes(i)) {
|
|
@@ -937,7 +915,7 @@ class Schedule extends react_1.Component {
|
|
|
937
915
|
_schedule.period.days = 1;
|
|
938
916
|
}
|
|
939
917
|
this.onChange(_schedule);
|
|
940
|
-
} }), label:
|
|
918
|
+
} }), label: I18n.t(WEEKDAYS[i]) })))))),
|
|
941
919
|
];
|
|
942
920
|
}
|
|
943
921
|
getPeriodSettingsDaily() {
|
|
@@ -946,28 +924,28 @@ class Schedule extends react_1.Component {
|
|
|
946
924
|
}
|
|
947
925
|
const schedule = this.state.schedule;
|
|
948
926
|
return [
|
|
949
|
-
|
|
950
|
-
|
|
927
|
+
React.createElement("div", { key: "every_day" },
|
|
928
|
+
React.createElement(FormControlLabel, { control: React.createElement(Radio, { style: styles.inputRadio, checked: schedule.period.days === 1 && !schedule.period.dows, onClick: () => {
|
|
951
929
|
const _schedule = JSON.parse(JSON.stringify(this.state.schedule));
|
|
952
930
|
_schedule.period.days = 1;
|
|
953
931
|
_schedule.period.dows = '';
|
|
954
932
|
this.onChange(_schedule);
|
|
955
|
-
} }), label:
|
|
956
|
-
|
|
957
|
-
|
|
933
|
+
} }), label: I18n.t('sch_periodEveryDay') })),
|
|
934
|
+
React.createElement("div", { key: "everyN_day" },
|
|
935
|
+
React.createElement(FormControlLabel, { control: React.createElement(Radio, { style: styles.inputRadio, checked: schedule.period.days > 1, onClick: () => {
|
|
958
936
|
const _schedule = JSON.parse(JSON.stringify(this.state.schedule));
|
|
959
937
|
_schedule.period.days = 2;
|
|
960
938
|
_schedule.period.dows = '';
|
|
961
939
|
this.onChange(_schedule);
|
|
962
|
-
} }), label:
|
|
940
|
+
} }), label: I18n.t('sch_periodEvery') }),
|
|
963
941
|
schedule.period.days > 1 && [
|
|
964
|
-
|
|
942
|
+
React.createElement(Input, { key: "input", value: this.state.schedule.period.days, style: styles.inputEvery, type: "number", inputProps: { min: 2 }, onChange: e => {
|
|
965
943
|
const _schedule = JSON.parse(JSON.stringify(this.state.schedule));
|
|
966
944
|
_schedule.period.days = parseInt(e.target.value, 10);
|
|
967
945
|
_schedule.period.dows = '';
|
|
968
946
|
this.onChange(_schedule);
|
|
969
947
|
} }),
|
|
970
|
-
|
|
948
|
+
React.createElement("span", { key: "span", style: { paddingRight: 10 } }, I18n.t('sch_periodDay')),
|
|
971
949
|
]),
|
|
972
950
|
];
|
|
973
951
|
}
|
|
@@ -977,26 +955,26 @@ class Schedule extends react_1.Component {
|
|
|
977
955
|
}
|
|
978
956
|
const schedule = this.state.schedule;
|
|
979
957
|
return [
|
|
980
|
-
|
|
981
|
-
|
|
982
|
-
|
|
958
|
+
React.createElement("div", { key: "radios", style: { display: 'inline-block', verticalAlign: 'top' } },
|
|
959
|
+
React.createElement("div", null,
|
|
960
|
+
React.createElement(FormControlLabel, { control: React.createElement(Radio, { style: styles.inputRadio, checked: schedule.period.weeks === 1, onClick: () => {
|
|
983
961
|
const _schedule = JSON.parse(JSON.stringify(this.state.schedule));
|
|
984
962
|
_schedule.period.weeks = 1;
|
|
985
963
|
this.onChange(_schedule);
|
|
986
|
-
} }), label:
|
|
987
|
-
|
|
988
|
-
|
|
964
|
+
} }), label: I18n.t('sch_periodEveryWeek') })),
|
|
965
|
+
React.createElement("div", null,
|
|
966
|
+
React.createElement(FormControlLabel, { control: React.createElement(Radio, { style: styles.inputRadio, checked: schedule.period.weeks > 1, onClick: () => {
|
|
989
967
|
const _schedule = JSON.parse(JSON.stringify(this.state.schedule));
|
|
990
968
|
_schedule.period.weeks = 2;
|
|
991
969
|
this.onChange(_schedule);
|
|
992
|
-
} }), label:
|
|
970
|
+
} }), label: I18n.t('sch_periodEvery') }),
|
|
993
971
|
schedule.period.weeks > 1 && [
|
|
994
|
-
|
|
972
|
+
React.createElement(Input, { key: "input", value: this.state.schedule.period.weeks, style: styles.inputEvery, type: "number", inputProps: { min: 2 }, onChange: e => {
|
|
995
973
|
const _schedule = JSON.parse(JSON.stringify(this.state.schedule));
|
|
996
974
|
_schedule.period.weeks = parseInt(e.target.value, 10);
|
|
997
975
|
this.onChange(_schedule);
|
|
998
976
|
} }),
|
|
999
|
-
|
|
977
|
+
React.createElement("span", { key: "text" }, I18n.t('sch_periodWeek')),
|
|
1000
978
|
])),
|
|
1001
979
|
];
|
|
1002
980
|
}
|
|
@@ -1010,8 +988,8 @@ class Schedule extends react_1.Component {
|
|
|
1010
988
|
dates.push(i);
|
|
1011
989
|
}
|
|
1012
990
|
const parsedDates = JSON.parse(schedule.period.dates);
|
|
1013
|
-
return (
|
|
1014
|
-
|
|
991
|
+
return (React.createElement(FormGroup, { row: true, style: { ...styles.inputGroup, maxWidth: 620 } },
|
|
992
|
+
React.createElement(FormControlLabel, { style: styles.inputDateDay, control: React.createElement(Checkbox, { style: styles.inputDateDayCheck, checked: parsedDates.length === 31, onChange: () => {
|
|
1015
993
|
const _schedule = JSON.parse(JSON.stringify(this.state.schedule));
|
|
1016
994
|
const _dates = [];
|
|
1017
995
|
for (let i = 1; i <= 31; i++) {
|
|
@@ -1019,13 +997,13 @@ class Schedule extends react_1.Component {
|
|
|
1019
997
|
}
|
|
1020
998
|
_schedule.period.dates = JSON.stringify(_dates);
|
|
1021
999
|
this.onChange(_schedule);
|
|
1022
|
-
} }), label:
|
|
1023
|
-
|
|
1000
|
+
} }), label: I18n.t('sch_all') }),
|
|
1001
|
+
React.createElement(FormControlLabel, { style: styles.inputDateDay, control: React.createElement(Checkbox, { style: styles.inputDateDayCheck, checked: !parsedDates.length, onChange: () => {
|
|
1024
1002
|
const _schedule = JSON.parse(JSON.stringify(this.state.schedule));
|
|
1025
1003
|
_schedule.period.dates = '[]';
|
|
1026
1004
|
this.onChange(_schedule);
|
|
1027
|
-
} }), label:
|
|
1028
|
-
parsedDates.length !== 31 && !!parsedDates.length && (
|
|
1005
|
+
} }), label: I18n.t('sch_no_one') }),
|
|
1006
|
+
parsedDates.length !== 31 && !!parsedDates.length && (React.createElement(FormControlLabel, { style: styles.inputDateDay, control: React.createElement(Checkbox, { style: styles.inputDateDayCheck, checked: false, onChange: () => {
|
|
1029
1007
|
const _schedule = JSON.parse(JSON.stringify(this.state.schedule));
|
|
1030
1008
|
const result = [];
|
|
1031
1009
|
const _parsedDates = JSON.parse(_schedule.period.dates);
|
|
@@ -1037,16 +1015,23 @@ class Schedule extends react_1.Component {
|
|
|
1037
1015
|
result.sort((a, b) => a - b);
|
|
1038
1016
|
_schedule.period.dates = JSON.stringify(result);
|
|
1039
1017
|
this.onChange(_schedule);
|
|
1040
|
-
} }), label:
|
|
1041
|
-
|
|
1042
|
-
dates.map(i => (
|
|
1043
|
-
?
|
|
1018
|
+
} }), label: I18n.t('sch_invert') })),
|
|
1019
|
+
React.createElement("div", null),
|
|
1020
|
+
dates.map(i => (React.createElement(FormControlLabel, { key: `date_${i}`, style: !i
|
|
1021
|
+
? {
|
|
1022
|
+
...styles.inputDateDay,
|
|
1023
|
+
opacity: 0,
|
|
1024
|
+
cursor: 'default',
|
|
1025
|
+
userSelect: 'none',
|
|
1026
|
+
pointerEvents: 'none',
|
|
1027
|
+
}
|
|
1028
|
+
: styles.inputDateDay, control: React.createElement(Checkbox, { style: styles.inputDateDayCheck, checked: JSON.parse(schedule.period.dates).includes(i), onChange: e => {
|
|
1044
1029
|
const _schedule = JSON.parse(JSON.stringify(this.state.schedule));
|
|
1045
1030
|
let _dates;
|
|
1046
1031
|
try {
|
|
1047
1032
|
_dates = JSON.parse(_schedule.period.dates);
|
|
1048
1033
|
}
|
|
1049
|
-
catch
|
|
1034
|
+
catch {
|
|
1050
1035
|
_dates = [];
|
|
1051
1036
|
}
|
|
1052
1037
|
if (e.target.checked && !_dates.includes(i)) {
|
|
@@ -1060,8 +1045,8 @@ class Schedule extends react_1.Component {
|
|
|
1060
1045
|
this.onChange(_schedule);
|
|
1061
1046
|
} }), label: i < 10
|
|
1062
1047
|
? [
|
|
1063
|
-
|
|
1064
|
-
|
|
1048
|
+
React.createElement("span", { key: "0", style: { opacity: 0 } }, "0"),
|
|
1049
|
+
React.createElement("span", { key: "num" }, i),
|
|
1065
1050
|
]
|
|
1066
1051
|
: i })))));
|
|
1067
1052
|
}
|
|
@@ -1072,21 +1057,21 @@ class Schedule extends react_1.Component {
|
|
|
1072
1057
|
const schedule = this.state.schedule;
|
|
1073
1058
|
const parsedMonths = typeof schedule.period.months === 'string' ? JSON.parse(schedule.period.months) : [];
|
|
1074
1059
|
return [
|
|
1075
|
-
|
|
1076
|
-
|
|
1060
|
+
React.createElement("div", { key: "every" },
|
|
1061
|
+
React.createElement(FormControlLabel, { control: React.createElement(Radio, { style: styles.inputRadio, checked: typeof schedule.period.months === 'number' && schedule.period.months === 1, onClick: () => {
|
|
1077
1062
|
const _schedule = JSON.parse(JSON.stringify(this.state.schedule));
|
|
1078
1063
|
_schedule.period.months = 1;
|
|
1079
1064
|
this.onChange(schedule);
|
|
1080
|
-
} }), label:
|
|
1081
|
-
|
|
1082
|
-
|
|
1065
|
+
} }), label: I18n.t('sch_periodEveryMonth') })),
|
|
1066
|
+
React.createElement("div", { key: "everyN" },
|
|
1067
|
+
React.createElement(FormControlLabel, { control: React.createElement(Radio, { style: styles.inputRadio, checked: typeof schedule.period.months === 'number' && schedule.period.months > 1, onClick: () => {
|
|
1083
1068
|
const _schedule = JSON.parse(JSON.stringify(this.state.schedule));
|
|
1084
1069
|
_schedule.period.months = 2;
|
|
1085
1070
|
this.onChange(_schedule);
|
|
1086
|
-
} }), label:
|
|
1071
|
+
} }), label: I18n.t('sch_periodEvery') }),
|
|
1087
1072
|
typeof schedule.period.months === 'number' &&
|
|
1088
1073
|
schedule.period.months > 1 && [
|
|
1089
|
-
|
|
1074
|
+
React.createElement(Input, { key: "input", value: schedule.period.months, style: styles.inputEvery, type: "number", inputProps: { min: 2 }, onChange: e => {
|
|
1090
1075
|
const _schedule = JSON.parse(JSON.stringify(this.state.schedule));
|
|
1091
1076
|
_schedule.period.months = parseInt(e.target.value, 10);
|
|
1092
1077
|
if (_schedule.period.months < 1) {
|
|
@@ -1094,16 +1079,16 @@ class Schedule extends react_1.Component {
|
|
|
1094
1079
|
}
|
|
1095
1080
|
this.onChange(_schedule);
|
|
1096
1081
|
} }),
|
|
1097
|
-
|
|
1082
|
+
React.createElement("span", { key: "text" }, I18n.t('sch_periodMonth')),
|
|
1098
1083
|
]),
|
|
1099
|
-
|
|
1100
|
-
|
|
1084
|
+
React.createElement("div", { key: "specific", style: { verticalAlign: 'top' } },
|
|
1085
|
+
React.createElement(FormControlLabel, { style: { verticalAlign: 'top' }, control: React.createElement(Radio, { style: styles.inputRadio, checked: typeof schedule.period.months === 'string', onClick: () => {
|
|
1101
1086
|
const _schedule = JSON.parse(JSON.stringify(this.state.schedule));
|
|
1102
1087
|
_schedule.period.months = '[1,2,3,4,5,6,7,8,9,10,11,12]';
|
|
1103
1088
|
this.onChange(_schedule);
|
|
1104
|
-
} }), label:
|
|
1105
|
-
typeof schedule.period.months === 'string' && (
|
|
1106
|
-
|
|
1089
|
+
} }), label: I18n.t('sch_periodSpecificMonths') }),
|
|
1090
|
+
typeof schedule.period.months === 'string' && (React.createElement(FormGroup, { row: true, style: styles.inputGroup },
|
|
1091
|
+
React.createElement(FormControlLabel, { style: styles.inputDateDay, control: React.createElement(Checkbox, { style: styles.inputDateDayCheck, checked: parsedMonths.length === 12, onChange: () => {
|
|
1107
1092
|
const _schedule = JSON.parse(JSON.stringify(this.state.schedule));
|
|
1108
1093
|
const months = [];
|
|
1109
1094
|
for (let i = 1; i <= 12; i++) {
|
|
@@ -1111,13 +1096,13 @@ class Schedule extends react_1.Component {
|
|
|
1111
1096
|
}
|
|
1112
1097
|
_schedule.period.months = JSON.stringify(months);
|
|
1113
1098
|
this.onChange(_schedule);
|
|
1114
|
-
} }), label:
|
|
1115
|
-
|
|
1099
|
+
} }), label: I18n.t('sch_all') }),
|
|
1100
|
+
React.createElement(FormControlLabel, { style: styles.inputDateDay, control: React.createElement(Checkbox, { style: styles.inputDateDayCheck, checked: !parsedMonths.length, onChange: () => {
|
|
1116
1101
|
const _schedule = JSON.parse(JSON.stringify(this.state.schedule));
|
|
1117
1102
|
_schedule.period.months = '[]';
|
|
1118
1103
|
this.onChange(_schedule);
|
|
1119
|
-
} }), label:
|
|
1120
|
-
parsedMonths.length !== 12 && !!parsedMonths.length && (
|
|
1104
|
+
} }), label: I18n.t('sch_no_one') }),
|
|
1105
|
+
parsedMonths.length !== 12 && !!parsedMonths.length && (React.createElement(FormControlLabel, { style: styles.inputDateDay, control: React.createElement(Checkbox, { style: styles.inputDateDayCheck, checked: false, onChange: () => {
|
|
1121
1106
|
const _schedule = JSON.parse(JSON.stringify(this.state.schedule));
|
|
1122
1107
|
const result = [];
|
|
1123
1108
|
const _parsedMonths = JSON.parse(_schedule.period.months);
|
|
@@ -1129,9 +1114,9 @@ class Schedule extends react_1.Component {
|
|
|
1129
1114
|
result.sort((a, b) => a - b);
|
|
1130
1115
|
_schedule.period.months = JSON.stringify(result);
|
|
1131
1116
|
this.onChange(_schedule);
|
|
1132
|
-
} }), label:
|
|
1133
|
-
|
|
1134
|
-
MONTHS.map((month, i) => (
|
|
1117
|
+
} }), label: I18n.t('sch_invert') })),
|
|
1118
|
+
React.createElement("div", null),
|
|
1119
|
+
MONTHS.map((month, i) => (React.createElement(FormControlLabel, { key: `month_${i}`, style: styles.inputGroupElement, control: React.createElement(Checkbox, { style: styles.inputSmallCheck, checked: typeof schedule.period.months === 'string'
|
|
1135
1120
|
? JSON.parse(schedule.period.months).includes(i + 1)
|
|
1136
1121
|
: schedule.period.months === i, onChange: e => {
|
|
1137
1122
|
const _schedule = JSON.parse(JSON.stringify(this.state.schedule));
|
|
@@ -1139,7 +1124,7 @@ class Schedule extends react_1.Component {
|
|
|
1139
1124
|
try {
|
|
1140
1125
|
months = JSON.parse(_schedule.period.months);
|
|
1141
1126
|
}
|
|
1142
|
-
catch
|
|
1127
|
+
catch {
|
|
1143
1128
|
months = [];
|
|
1144
1129
|
}
|
|
1145
1130
|
if (e.target.checked && !months.includes(i + 1)) {
|
|
@@ -1151,7 +1136,7 @@ class Schedule extends react_1.Component {
|
|
|
1151
1136
|
months.sort((a, b) => a - b);
|
|
1152
1137
|
_schedule.period.months = JSON.stringify(months);
|
|
1153
1138
|
this.onChange(_schedule);
|
|
1154
|
-
} }), label:
|
|
1139
|
+
} }), label: I18n.t(month) })))))),
|
|
1155
1140
|
];
|
|
1156
1141
|
}
|
|
1157
1142
|
getPeriodSettingsYearly() {
|
|
@@ -1160,20 +1145,20 @@ class Schedule extends react_1.Component {
|
|
|
1160
1145
|
}
|
|
1161
1146
|
const schedule = this.state.schedule;
|
|
1162
1147
|
return [
|
|
1163
|
-
|
|
1164
|
-
|
|
1148
|
+
React.createElement("div", { key: "year" },
|
|
1149
|
+
React.createElement(FormControlLabel, { control: React.createElement(Radio, { style: styles.inputRadio, checked: schedule.period.years === 1, onClick: () => {
|
|
1165
1150
|
const _schedule = JSON.parse(JSON.stringify(this.state.schedule));
|
|
1166
1151
|
_schedule.period.years = 1;
|
|
1167
1152
|
this.onChange(_schedule);
|
|
1168
|
-
} }), label:
|
|
1169
|
-
|
|
1170
|
-
|
|
1153
|
+
} }), label: I18n.t('sch_periodEveryYear') })),
|
|
1154
|
+
React.createElement("div", { key: "every" },
|
|
1155
|
+
React.createElement(FormControlLabel, { control: React.createElement(Radio, { style: styles.inputRadio, checked: schedule.period.years > 1, onClick: () => {
|
|
1171
1156
|
const _schedule = JSON.parse(JSON.stringify(this.state.schedule));
|
|
1172
1157
|
_schedule.period.years = 2;
|
|
1173
1158
|
this.onChange(_schedule);
|
|
1174
|
-
} }), label:
|
|
1159
|
+
} }), label: I18n.t('sch_periodEvery') }),
|
|
1175
1160
|
schedule.period.years > 1 && [
|
|
1176
|
-
|
|
1161
|
+
React.createElement(Input, { key: "input", value: this.state.schedule.period.years, style: styles.inputEvery, type: "number", inputProps: { min: 2 }, onChange: e => {
|
|
1177
1162
|
const _schedule = JSON.parse(JSON.stringify(this.state.schedule));
|
|
1178
1163
|
_schedule.period.years = parseInt(e.target.value, 10);
|
|
1179
1164
|
if (_schedule.period.years < 1) {
|
|
@@ -1181,7 +1166,7 @@ class Schedule extends react_1.Component {
|
|
|
1181
1166
|
}
|
|
1182
1167
|
this.onChange(_schedule);
|
|
1183
1168
|
} }),
|
|
1184
|
-
|
|
1169
|
+
React.createElement("span", { key: "text" }, I18n.t('sch_periodYear')),
|
|
1185
1170
|
]),
|
|
1186
1171
|
];
|
|
1187
1172
|
}
|
|
@@ -1208,12 +1193,12 @@ class Schedule extends react_1.Component {
|
|
|
1208
1193
|
getValidSettings() {
|
|
1209
1194
|
const schedule = this.state.schedule;
|
|
1210
1195
|
// ----- from ---
|
|
1211
|
-
return (
|
|
1212
|
-
|
|
1213
|
-
|
|
1214
|
-
|
|
1215
|
-
|
|
1216
|
-
|
|
1196
|
+
return (React.createElement("div", { style: styles.rowDiv },
|
|
1197
|
+
React.createElement("div", { style: { ...styles.modeDiv, verticalAlign: 'middle' } },
|
|
1198
|
+
React.createElement("span", { style: { fontWeight: 'bold', paddingRight: 10 } }, I18n.t('sch_valid')),
|
|
1199
|
+
React.createElement("span", null, I18n.t('sch_validFrom'))),
|
|
1200
|
+
React.createElement("div", { style: styles.settingsDiv },
|
|
1201
|
+
React.createElement(TextField, { variant: "standard", style: { ...styles.inputDate, marginRight: 10 }, key: "exactTimeFrom", inputRef: this.refFrom, defaultValue: string2USdate(schedule.valid.from), type: "date",
|
|
1217
1202
|
// inputComponent={TextDate}
|
|
1218
1203
|
onChange: e => {
|
|
1219
1204
|
this.timerFrom && clearTimeout(this.timerFrom);
|
|
@@ -1235,12 +1220,12 @@ class Schedule extends react_1.Component {
|
|
|
1235
1220
|
}, slotProps: {
|
|
1236
1221
|
inputLabel: { shrink: true },
|
|
1237
1222
|
}, margin: "normal" }),
|
|
1238
|
-
|
|
1223
|
+
React.createElement(FormControlLabel, { control: React.createElement(Checkbox, { style: styles.inputRadio, checked: !!schedule.valid.to, onClick: () => {
|
|
1239
1224
|
const _schedule = JSON.parse(JSON.stringify(this.state.schedule));
|
|
1240
1225
|
_schedule.valid.to = _schedule.valid.to ? '' : Schedule.now2string(true);
|
|
1241
1226
|
this.onChange(_schedule);
|
|
1242
|
-
} }), label:
|
|
1243
|
-
!!schedule.valid.to && (
|
|
1227
|
+
} }), label: I18n.t('sch_validTo') }),
|
|
1228
|
+
!!schedule.valid.to && (React.createElement(TextField, { variant: "standard", inputRef: this.refTo, style: { ...styles.inputDate, marginRight: 10 }, key: "exactTimeFrom", type: "date", defaultValue: string2USdate(schedule.valid.to),
|
|
1244
1229
|
// inputComponent={TextDate}
|
|
1245
1230
|
onChange: e => {
|
|
1246
1231
|
this.timerTo && clearTimeout(this.timerTo);
|
|
@@ -1264,17 +1249,17 @@ class Schedule extends react_1.Component {
|
|
|
1264
1249
|
}, margin: "normal" })))));
|
|
1265
1250
|
}
|
|
1266
1251
|
render() {
|
|
1267
|
-
return (
|
|
1268
|
-
|
|
1269
|
-
|
|
1270
|
-
|
|
1252
|
+
return (React.createElement("div", { style: { height: 'calc(100% - 48px)', width: '100%', overflow: 'hidden' } },
|
|
1253
|
+
React.createElement("div", null, this.state.desc),
|
|
1254
|
+
React.createElement("div", { style: styles.scrollWindow },
|
|
1255
|
+
React.createElement("h5", null, I18n.t('sch_time')),
|
|
1271
1256
|
this.getTimePeriodElements(),
|
|
1272
1257
|
this.getTimeExactElements(),
|
|
1273
1258
|
Schedule.getDivider(),
|
|
1274
|
-
|
|
1259
|
+
React.createElement("h5", null, I18n.t('sch_period')),
|
|
1275
1260
|
this.getPeriodModes(),
|
|
1276
1261
|
!this.state.schedule.period.once && Schedule.getDivider(),
|
|
1277
1262
|
!this.state.schedule.period.once && this.getValidSettings())));
|
|
1278
1263
|
}
|
|
1279
1264
|
}
|
|
1280
|
-
|
|
1265
|
+
//# sourceMappingURL=Schedule.js.map
|