UNPKG

@progress/kendo-angular-scheduler

Version:

Kendo UI Scheduler Angular - Outlook or Google-style angular scheduler calendar. Full-featured and customizable embedded scheduling from the creator developers trust for professional UI components.

112 lines (111 loc) 4.34 kB
/**----------------------------------------------------------------------------------------- * Copyright © 2025 Progress Software Corporation. All rights reserved. * Licensed under commercial license. See LICENSE.md in the project root for more information *-------------------------------------------------------------------------------------------*/ import { EventEmitter, OnDestroy, OnInit } from '@angular/core'; import { ControlValueAccessor } from '@angular/forms'; import { IntlService } from '@progress/kendo-angular-intl'; import { Day } from '@progress/kendo-date-math'; import { RecurrenceService, Frequency } from './recurrence.service'; import { NumericTextBoxOptions } from '../../types/numeric-options.interface'; import { DatePickerOptions } from './../../types/datepicker-options.interface'; import * as i0 from "@angular/core"; /** * @hidden */ export declare const RECURRENCE_VALUE_ACCESSOR: any; /** * Represents the Kendo UI Recurrence Editor component for Angular. Use this component to let users set recurrence rules for Scheduler events. * * [This example](slug:custom_reactive_editing_scheduler) demonstrates the Recurrence Editor, among other components. * * @example * ```html * <kendo-scheduler * [kendoSchedulerBinding]="events" * [kendoSchedulerReactiveEditing]="createFormGroup" * > * <ng-template kendoSchedulerEditDialogTemplate let-formGroup="formGroup" let-event> * <kendo-formfield> * <kendo-recurrence-editor * [start]="event.value.start" * [formControl]="formGroup.get('recurrenceRule')" * ></kendo-recurrence-editor> * </kendo-formfield> * </ng-template> * </kendo-scheduler> * ``` */ export declare class RecurrenceEditorComponent implements ControlValueAccessor, OnInit, OnDestroy { private recurrenceService; private intl; cssClass: boolean; /** * Sets the start date for the event. */ set start(value: Date); get start(): Date; /** * Sets the id of the timezone to use. * * @default 'Etc/UTC' */ timezone: string; /** * Sets the first day of the week. Uses the locale settings by default. */ weekStart: Day; /** * Sets the options for the **Repeat Every** NumericTextBox in the recurrence `interval` editor. */ repeatEveryOptions: NumericTextBoxOptions; /** * Sets the options for the **End After** NumericTextBox in the recurrence `count` rule editor. */ endAfterOptions: NumericTextBoxOptions; /** * Sets the options for the **Repeat On** NumericTextBox for choosing the day an event occurs in the monthly and yearly sections. */ repeatOnOptions: NumericTextBoxOptions; /** * Sets the options for the **End On** DatePicker in the recurrence `until` rule editor. */ endOnOptions: DatePickerOptions; /** * Fires when the value of the component changes. */ valueChange: EventEmitter<string>; private _start; private subscriptions; constructor(recurrenceService: RecurrenceService, intl: IntlService); /** * @hidden */ get currentFreq(): Frequency; /** * @hidden */ ngOnInit(): void; ngOnChanges(changes: any): void; /** * @hidden */ ngOnDestroy(): void; /** * @hidden */ writeValue(rrule: any): void; protected onTouchedCallback: Function; protected onChangeCallback: Function; /** * @hidden */ registerOnChange(fn: any): void; /** * @hidden */ registerOnTouched(fn: any): void; private emitChange; static ɵfac: i0.ɵɵFactoryDeclaration<RecurrenceEditorComponent, never>; static ɵcmp: i0.ɵɵComponentDeclaration<RecurrenceEditorComponent, "kendo-recurrence-editor", ["kendoRecurrenceEditor"], { "start": { "alias": "start"; "required": false; }; "timezone": { "alias": "timezone"; "required": false; }; "weekStart": { "alias": "weekStart"; "required": false; }; "repeatEveryOptions": { "alias": "repeatEveryOptions"; "required": false; }; "endAfterOptions": { "alias": "endAfterOptions"; "required": false; }; "repeatOnOptions": { "alias": "repeatOnOptions"; "required": false; }; "endOnOptions": { "alias": "endOnOptions"; "required": false; }; }, { "valueChange": "valueChange"; }, never, never, true, never>; }