@porscheinformatik/clr-addons
Version:
Addon components for Clarity Angular
134 lines (133 loc) • 5.89 kB
TypeScript
import { AfterViewInit, OnDestroy } from '@angular/core';
import '@cds/core/icon/register.js';
import { ClrCommonStrings, ClrCommonStringsService, ClrLayout, ClrPopoverEventsService, ClrPopoverPosition, ClrPopoverToggleService } from '@clr/angular';
import { DaterangePreset } from '../../interfaces/daterange-preset.interface';
import { NullableDayModel } from '../../models/day.model';
import { DaterangeControlStateService } from '../../providers/daterange-control-state.service';
import { DaterangeParsingService } from '../../providers/daterange-parsing.service';
import { DaterangeService } from '../../providers/daterange.service';
import { OpenedDatepickersTrackerService } from '../../providers/opened-datepickers-tracker.service';
import { ClrAbstractContainer } from '../abstract-container.component';
import { DateTimerangePreset } from '../../interfaces/timerange-preset.interface';
import { NullableTimeModel } from '../../models/time.model';
import * as i0 from "@angular/core";
/**
* Daterangepicker container.
*/
export declare class ClrDaterangepickerContainerComponent extends ClrAbstractContainer implements AfterViewInit, OnDestroy {
private readonly clrPopoverEventsService;
private readonly clrPopoverToggleService;
private readonly clrCommonStringsService;
protected readonly clrLayout: ClrLayout;
protected readonly daterangeControlStateService: DaterangeControlStateService;
private readonly openedDatepickersTrackerService;
protected readonly daterangeService: DaterangeService;
private readonly daterangeParsingService;
/**
* List of presets.
*/
presets: Array<DaterangePreset>;
/**
* List of time presets.
*/
presetsDateTime: Array<DateTimerangePreset>;
_timeSelection: boolean;
set timeSelection(value: boolean);
_activateSeconds: boolean;
set activateSeconds(value: boolean);
/**
* Set popover position.
*/
set clrPosition(position: string);
/**
* Text for the 'from' label.
*/
labelFrom: string;
/**
* Text for the 'to' label.
*/
labelTo: string;
/** List of datepicker components children. */
private datepickerComponents;
/** Daterangepicker directive. */
private daterangepickerDirective;
/** CSS classes. */
classes: string;
/**
* Popover open state.
*/
protected open: boolean;
/**
* Popover position config.
*/
protected popoverPosition: ClrPopoverPosition;
/**
* Date from.
* @returns Date from.
*/
protected get dateFrom(): import("../../models/day.model").DayModel;
protected get timeFrom(): import("../../models/time.model").TimeModel;
/**
* Date to.
* @returns Date to.
*/
protected get dateTo(): import("../../models/day.model").DayModel;
protected get timeTo(): import("../../models/time.model").TimeModel;
/**
* Minimum date that can be selected.
* @returns Minimum date that can be selected.
*/
protected get minDate(): NullableDayModel;
/**
* Maximum date that can be selected.
* @returns Maximum date that can be selected.
*/
protected get maxDate(): NullableDayModel;
private _friendlyDaterange?;
/**
* Get friendly daterange text.
* @returns Friendly daterange text.
*/
protected get friendlyDaterange(): string;
/**
* List of common translation keys.
*/
protected get commonStrings(): Readonly<ClrCommonStrings>;
/** List of subscriptions to later destroy. */
private subscriptions;
constructor(clrPopoverEventsService: ClrPopoverEventsService, clrPopoverToggleService: ClrPopoverToggleService, clrCommonStringsService: ClrCommonStringsService, clrLayout: ClrLayout, daterangeControlStateService: DaterangeControlStateService, openedDatepickersTrackerService: OpenedDatepickersTrackerService, daterangeService: DaterangeService, daterangeParsingService: DaterangeParsingService);
ngAfterViewInit(): void;
ngOnDestroy(): void;
/**
* Listen for daterange value changes.
*/
private listenForDaterangeValueChanges;
/**
* Listen for any opened datepickers tracker state changes.
*/
private listenForOpenedDatepickersTrackerChanges;
/**
* Listen for popover toggle changes.
*/
private listenForPopoverToggleChanges;
/**
* Event triggered when date from changed.
* @param value - Date from.
*/
protected onDateFromChange(value: NullableDayModel): void;
/**
* Event triggered when date to changed.
* @param value - Date to.
*/
protected onDateToChange(value: NullableDayModel): void;
/**
* Apply selected preset.
* @param preset - Selected preset.
*/
protected applyPreset(preset: DaterangePreset): void;
applyPresetTime(preset: DateTimerangePreset): void;
protected onTimeFromChange(value: NullableTimeModel): void;
protected onTimeToChange(value: NullableTimeModel): void;
static ɵfac: i0.ɵɵFactoryDeclaration<ClrDaterangepickerContainerComponent, [null, null, null, { optional: true; }, null, null, null, null]>;
static ɵcmp: i0.ɵɵComponentDeclaration<ClrDaterangepickerContainerComponent, "clr-daterangepicker-container", never, { "presets": { "alias": "presets"; "required": false; }; "presetsDateTime": { "alias": "presetsDateTime"; "required": false; }; "timeSelection": { "alias": "timeSelection"; "required": false; }; "activateSeconds": { "alias": "activateSeconds"; "required": false; }; "clrPosition": { "alias": "clrPosition"; "required": false; }; "labelFrom": { "alias": "labelFrom"; "required": false; }; "labelTo": { "alias": "labelTo"; "required": false; }; }, {}, ["daterangepickerDirective"], ["label", "[clrDaterangepicker]", "clr-control-helper", "clr-control-error", "clr-control-success"], false, never>;
}