ngx-ntk-cron-editor
Version:
Angular cron editor
161 lines (153 loc) • 5.84 kB
TypeScript
import * as i0 from '@angular/core';
import { OnInit, EventEmitter, OnChanges, SimpleChanges, ModuleWithProviders } from '@angular/core';
import * as i6 from '@angular/forms';
import { ControlValueAccessor } from '@angular/forms';
import * as i5 from '@ngx-translate/core';
import { TranslateService } from '@ngx-translate/core';
import * as i3 from '@angular/common/http';
import { HttpClient } from '@angular/common/http';
import * as i4 from '@angular/common';
declare class TimePickerComponent implements OnInit {
change: EventEmitter<any>;
disabled: boolean;
time: any;
selectClass: string;
use24HourTime: boolean;
hideSeconds: boolean;
hours: number[];
minutes: number[];
seconds: number[];
hourTypes: string[];
ngOnInit(): void;
static ɵfac: i0.ɵɵFactoryDeclaration<TimePickerComponent, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<TimePickerComponent, "cron-time-picker", never, { "disabled": { "alias": "disabled"; "required": false; }; "time": { "alias": "time"; "required": false; }; "selectClass": { "alias": "selectClass"; "required": false; }; "use24HourTime": { "alias": "use24HourTime"; "required": false; }; "hideSeconds": { "alias": "hideSeconds"; "required": false; }; }, { "change": "change"; }, never, never, false, never>;
}
interface CronOptionModel {
formInputClass: string;
formSelectClass: string;
formRadioClass: string;
formCheckboxClass: string;
defaultTime: string;
use24HourTime: boolean;
hideMinutesTab: boolean;
hideHourlyTab: boolean;
hideDailyTab: boolean;
hideWeeklyTab: boolean;
hideMonthlyTab: boolean;
hideYearlyTab: boolean;
hideAdvancedTab: boolean;
/** hides the Seconds UI form element */
hideSeconds: boolean;
/** removes Seconds from the Cron expression */
removeSeconds: boolean;
/** removes Years from the Cron expression */
removeYears: boolean;
}
declare const defaultCronOptions: CronOptionModel;
declare class TranslateUiService {
private translateService;
private http;
private availableLanguages;
private translationPath;
constructor(translateService: TranslateService, http: HttpClient);
init(language?: string): void;
private loadTranslation;
setLanguage(language: string): void;
getCurrentLanguage(): string;
getAvailableLanguages(): string[];
static ɵfac: i0.ɵɵFactoryDeclaration<TranslateUiService, never>;
static ɵprov: i0.ɵɵInjectableDeclaration<TranslateUiService>;
}
declare class CronEditorComponent implements OnInit, OnChanges, ControlValueAccessor {
private translate;
private translateUiService;
static nextId: number;
id: number;
private _language;
set language(value: string);
get language(): string;
disabled: boolean;
options: CronOptionModel;
get cron(): string;
set cron(value: string);
cronChange: EventEmitter<any>;
activeTab: string;
selectOptions: {
months: number[];
monthWeeks: string[];
days: string[];
minutes: number[];
fullMinutes: number[];
seconds: number[];
hours: number[];
monthDays: number[];
monthDaysWithLasts: string[];
hourTypes: string[];
};
state: any;
private localCron;
private isDirty;
constructor(translate: TranslateService, translateUiService: TranslateUiService);
ngOnInit(): void;
ngOnChanges(changes: SimpleChanges): void;
writeValue(cronExpression: string): void;
registerOnChange(onChange: (cronExpression: string) => void): void;
registerOnTouched(onTouched: () => void): void;
setDisabledState?(isDisabled: boolean): void;
setActiveTab(tab: string): void;
dayDisplay(day: string): string;
monthWeekDisplay(monthWeekNumber: string): string;
monthDisplay(month: number): string;
monthDayDisplay(month: string): string;
regenerateCron(): void;
private getAmPmHour;
private getHourType;
private hourToCron;
private handleModelChange;
private validate;
private getDefaultAdvancedCronExpression;
private getDefaultState;
private getOrdinalSuffix;
private getSelectOptions;
static ɵfac: i0.ɵɵFactoryDeclaration<CronEditorComponent, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<CronEditorComponent, "cron-editor", never, { "language": { "alias": "language"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "options": { "alias": "options"; "required": false; }; "cron": { "alias": "cron"; "required": false; }; }, { "cronChange": "cronChange"; }, never, never, false, never>;
}
declare class CronEditorModule {
static forRoot(): ModuleWithProviders<CronEditorModule>;
static ɵfac: i0.ɵɵFactoryDeclaration<CronEditorModule, never>;
static ɵmod: i0.ɵɵNgModuleDeclaration<CronEditorModule, [typeof CronEditorComponent, typeof TimePickerComponent], [typeof i3.HttpClientModule, typeof i4.CommonModule, typeof i5.TranslateModule, typeof i6.FormsModule], [typeof CronEditorComponent, typeof TimePickerComponent]>;
static ɵinj: i0.ɵɵInjectorDeclaration<CronEditorModule>;
}
declare const Days: {
SUN: string;
MON: string;
TUE: string;
WED: string;
THU: string;
FRI: string;
SAT: string;
};
declare const MonthWeeks: {
'#1': string;
'#2': string;
'#3': string;
'#4': string;
'#5': string;
L: string;
};
declare enum Months {
January = 1,
February = 2,
March = 3,
April = 4,
May = 5,
June = 6,
July = 7,
August = 8,
September = 9,
October = 10,
November = 11,
December = 12
}
export { CronEditorComponent, CronEditorModule, Days, MonthWeeks, Months, TimePickerComponent, TranslateUiService, defaultCronOptions };
export type { CronOptionModel };