@iobroker/adapter-react-v5
Version:
React components to develop ioBroker interfaces with react.
56 lines (55 loc) • 1.87 kB
TypeScript
import React from 'react';
type SimpleCronType = 'once' | 'interval' | 'intervalBetween' | 'specific';
interface SimpleCronProps {
cronExpression?: string;
onChange: (cron: string) => void;
language: ioBroker.Languages;
}
interface SimpleCronState {
extended: boolean;
cron: string;
mode: SimpleCronType;
once: {
time: string;
date: string;
};
interval: {
period: number;
unit: string;
minutes?: number;
hours?: number;
};
intervalBetween: {
period: number;
unit: string;
timeFrom: number;
timeTo: number;
weekdays: number[];
minutes?: number;
hours?: number;
};
specific: {
time: string;
weekdays: number[];
};
}
export declare function cron2state(cron: string, force?: boolean): Partial<SimpleCronState> | null;
export declare class SimpleCron extends React.Component<SimpleCronProps, SimpleCronState> {
constructor(props: SimpleCronProps);
static periodArray2text(list: number[], max?: number): string;
static text2weekdays(text: string): number[];
static state2cron(state: Partial<SimpleCronState>): string;
recalcCron(): void;
getControlsWeekdaysElements(type: 'intervalBetween' | 'specific'): React.JSX.Element;
getControlsPeriodElements(type: 'interval' | 'intervalBetween'): React.JSX.Element;
getControlsTime(type: 'once' | 'specific'): React.JSX.Element;
getControlsDate(): React.JSX.Element;
getOnceElements(): React.JSX.Element;
getIntervalElements(): React.JSX.Element;
getIntervalBetweenElements(): React.JSX.Element[];
getSpecificTimeElements(): React.JSX.Element[];
onModeChange(mode: 'once' | 'interval' | 'intervalBetween' | 'specific'): void;
onChange(cron: string): void;
render(): React.JSX.Element;
}
export {};