@ngxmc/color-picker
Version:
Angular Material Color Picker
109 lines (108 loc) • 5.46 kB
TypeScript
import { Directionality } from '@angular/cdk/bidi';
import { Overlay, OverlayRef, ScrollStrategy } from '@angular/cdk/overlay';
import { EventEmitter, InjectionToken, NgZone, OnDestroy, ViewContainerRef } from '@angular/core';
import { ThemePalette } from '@angular/material/core';
import { MatDialog } from '@angular/material/dialog';
import { Subject } from 'rxjs';
import { Color } from '../../models';
import { ColorAdapter } from '../../services';
import { NgxMatColorPaletteComponent } from '../color-palette/color-palette.component';
import { NgxMatColorPickerInput } from './color-input.component';
import * as i0 from "@angular/core";
/** Injection token that determines the scroll handling while the calendar is open. */
export declare const NGX_MAT_COLOR_PICKER_SCROLL_STRATEGY: InjectionToken<() => ScrollStrategy>;
export declare function NGX_MAT_COLOR_PICKER_SCROLL_STRATEGY_FACTORY(overlay: Overlay): () => ScrollStrategy;
export declare const NGX_MAT_COLOR_PICKER_SCROLL_STRATEGY_FACTORY_PROVIDER: {
provide: InjectionToken<() => ScrollStrategy>;
deps: (typeof Overlay)[];
useFactory: typeof NGX_MAT_COLOR_PICKER_SCROLL_STRATEGY_FACTORY;
};
export declare class NgxMatColorPickerContentComponent {
/** Reference to the internal calendar component. */
_palette: import("@angular/core").Signal<NgxMatColorPaletteComponent>;
picker: NgxMatColorPickerComponent;
_isAbove: boolean;
color: ThemePalette;
constructor();
static ɵfac: i0.ɵɵFactoryDeclaration<NgxMatColorPickerContentComponent, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<NgxMatColorPickerContentComponent, "ngx-mat-color-picker-content", ["ngxMatColorPickerContent"], { "color": { "alias": "color"; "required": false; }; }, {}, never, never, true, never>;
}
export declare class NgxMatColorPickerComponent implements OnDestroy {
private _dialog;
private _overlay;
private _zone;
private _adapter;
private _dir;
private _document;
private _viewContainerRef;
private _scrollStrategy;
/** Emits when the datepicker has been opened. */
openedStream: EventEmitter<void>;
/** Emits when the datepicker has been closed. */
closedStream: EventEmitter<void>;
get disabled(): boolean;
set disabled(value: boolean);
private _disabled;
get touchUi(): boolean;
set touchUi(value: boolean);
private _touchUi;
/** Whether the calendar is open. */
get opened(): boolean;
set opened(value: boolean);
private _opened;
/** Default Color palette to use on the datepicker's calendar. */
get defaultColor(): ThemePalette;
set defaultColor(value: ThemePalette);
_defaultColor: ThemePalette;
/** Color palette to use on the datepicker's calendar. */
get color(): ThemePalette;
set color(value: ThemePalette);
_color: ThemePalette;
get isPrimary(): boolean;
get isAccent(): boolean;
get isWarn(): boolean;
/** The currently selected date. */
get _selected(): Color;
set _selected(value: Color);
private _validSelected;
_pickerInput: NgxMatColorPickerInput;
/** A reference to the overlay when the picker is opened as a popup. */
_popupRef: OverlayRef;
/** A reference to the dialog when the picker is opened as a dialog. */
private _dialogRef;
/** Reference to the component instantiated in popup mode. */
private _popupComponentRef;
/** A portal containing the content for this picker. */
private _portal;
/** Emits when the datepicker is disabled. */
readonly _disabledChange: EventEmitter<boolean>;
/** The element that was focused before the datepicker was opened. */
private _focusedElementBeforeOpen;
/** Subscription to value changes in the associated input element. */
private _inputSubscription;
/** Emits new selected date when selected date changes. */
readonly _selectedChanged: Subject<Color>;
constructor(_dialog: MatDialog, _overlay: Overlay, _zone: NgZone, _adapter: ColorAdapter, _dir: Directionality, scrollStrategy: any, _document: any, _viewContainerRef: ViewContainerRef);
ngOnDestroy(): void;
/** Selects the given date */
select(nextVal: Color): void;
/**
* Register an input with this datepicker.
* @param input The datepicker input to register with this datepicker.
*/
registerInput(input: NgxMatColorPickerInput): void;
open(): void;
/** Open the calendar as a dialog. */
private _openAsDialog;
/** Open the calendar as a popup. */
private _openAsPopup;
/** Create the popup. */
private _createPopup;
close(): void;
/** Passes the current theme color along to the calendar overlay. */
private _setColor;
/** Create the popup PositionStrategy. */
private _createPopupPositionStrategy;
static ɵfac: i0.ɵɵFactoryDeclaration<NgxMatColorPickerComponent, [null, null, null, null, { optional: true; }, null, { optional: true; }, null]>;
static ɵcmp: i0.ɵɵComponentDeclaration<NgxMatColorPickerComponent, "ngx-mat-color-picker", ["ngxMatColorPicker"], { "disabled": { "alias": "disabled"; "required": false; }; "touchUi": { "alias": "touchUi"; "required": false; }; "opened": { "alias": "opened"; "required": false; }; "defaultColor": { "alias": "defaultColor"; "required": false; }; "color": { "alias": "color"; "required": false; }; }, { "openedStream": "opened"; "closedStream": "closed"; }, never, never, true, never>;
}