You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							148 lines
						
					
					
						
							7.4 KiB
						
					
					
				
			
		
		
		
			
			
			
				
					
				
				
					
				
			
		
		
	
	
							148 lines
						
					
					
						
							7.4 KiB
						
					
					
				| /** | |
|  * @license | |
|  * Copyright Google LLC All Rights Reserved. | |
|  * | |
|  * Use of this source code is governed by an MIT-style license that can be | |
|  * found in the LICENSE file at https://angular.io/license | |
|  */ | |
| import { ElementRef, EventEmitter, NgZone, OnChanges, SimpleChanges, OnDestroy } from '@angular/core'; | |
| /** Extra CSS classes that can be associated with a calendar cell. */ | |
| import * as ɵngcc0 from '@angular/core'; | |
| export declare type MatCalendarCellCssClasses = string | string[] | Set<string> | { | |
|     [key: string]: any; | |
| }; | |
| /** Function that can generate the extra classes that should be added to a calendar cell. */ | |
| export declare type MatCalendarCellClassFunction<D> = (date: D, view: 'month' | 'year' | 'multi-year') => MatCalendarCellCssClasses; | |
| /** | |
|  * An internal class that represents the data corresponding to a single calendar cell. | |
|  * @docs-private | |
|  */ | |
| export declare class MatCalendarCell<D = any> { | |
|     value: number; | |
|     displayValue: string; | |
|     ariaLabel: string; | |
|     enabled: boolean; | |
|     cssClasses: MatCalendarCellCssClasses; | |
|     compareValue: number; | |
|     rawValue?: D | undefined; | |
|     constructor(value: number, displayValue: string, ariaLabel: string, enabled: boolean, cssClasses?: MatCalendarCellCssClasses, compareValue?: number, rawValue?: D | undefined); | |
| } | |
| /** Event emitted when a date inside the calendar is triggered as a result of a user action. */ | |
| export interface MatCalendarUserEvent<D> { | |
|     value: D; | |
|     event: Event; | |
| } | |
| /** | |
|  * An internal component used to display calendar data in a table. | |
|  * @docs-private | |
|  */ | |
| export declare class MatCalendarBody implements OnChanges, OnDestroy { | |
|     private _elementRef; | |
|     private _ngZone; | |
|     /** | |
|      * Used to skip the next focus event when rendering the preview range. | |
|      * We need a flag like this, because some browsers fire focus events asynchronously. | |
|      */ | |
|     private _skipNextFocus; | |
|     /** The label for the table. (e.g. "Jan 2017"). */ | |
|     label: string; | |
|     /** The cells to display in the table. */ | |
|     rows: MatCalendarCell[][]; | |
|     /** The value in the table that corresponds to today. */ | |
|     todayValue: number; | |
|     /** Start value of the selected date range. */ | |
|     startValue: number; | |
|     /** End value of the selected date range. */ | |
|     endValue: number; | |
|     /** The minimum number of free cells needed to fit the label in the first row. */ | |
|     labelMinRequiredCells: number; | |
|     /** The number of columns in the table. */ | |
|     numCols: number; | |
|     /** The cell number of the active cell in the table. */ | |
|     activeCell: number; | |
|     /** Whether a range is being selected. */ | |
|     isRange: boolean; | |
|     /** | |
|      * The aspect ratio (width / height) to use for the cells in the table. This aspect ratio will be | |
|      * maintained even as the table resizes. | |
|      */ | |
|     cellAspectRatio: number; | |
|     /** Start of the comparison range. */ | |
|     comparisonStart: number | null; | |
|     /** End of the comparison range. */ | |
|     comparisonEnd: number | null; | |
|     /** Start of the preview range. */ | |
|     previewStart: number | null; | |
|     /** End of the preview range. */ | |
|     previewEnd: number | null; | |
|     /** Emits when a new value is selected. */ | |
|     readonly selectedValueChange: EventEmitter<MatCalendarUserEvent<number>>; | |
|     /** Emits when the preview has changed as a result of a user action. */ | |
|     readonly previewChange: EventEmitter<MatCalendarUserEvent<MatCalendarCell<any> | null>>; | |
|     /** The number of blank cells to put at the beginning for the first row. */ | |
|     _firstRowOffset: number; | |
|     /** Padding for the individual date cells. */ | |
|     _cellPadding: string; | |
|     /** Width of an individual cell. */ | |
|     _cellWidth: string; | |
|     constructor(_elementRef: ElementRef<HTMLElement>, _ngZone: NgZone); | |
|     /** Called when a cell is clicked. */ | |
|     _cellClicked(cell: MatCalendarCell, event: MouseEvent): void; | |
|     /** Returns whether a cell should be marked as selected. */ | |
|     _isSelected(value: number): boolean; | |
|     ngOnChanges(changes: SimpleChanges): void; | |
|     ngOnDestroy(): void; | |
|     /** Returns whether a cell is active. */ | |
|     _isActiveCell(rowIndex: number, colIndex: number): boolean; | |
|     /** Focuses the active cell after the microtask queue is empty. */ | |
|     _focusActiveCell(movePreview?: boolean): void; | |
|     /** Gets whether a value is the start of the main range. */ | |
|     _isRangeStart(value: number): boolean; | |
|     /** Gets whether a value is the end of the main range. */ | |
|     _isRangeEnd(value: number): boolean; | |
|     /** Gets whether a value is within the currently-selected range. */ | |
|     _isInRange(value: number): boolean; | |
|     /** Gets whether a value is the start of the comparison range. */ | |
|     _isComparisonStart(value: number): boolean; | |
|     /** Whether the cell is a start bridge cell between the main and comparison ranges. */ | |
|     _isComparisonBridgeStart(value: number, rowIndex: number, colIndex: number): boolean; | |
|     /** Whether the cell is an end bridge cell between the main and comparison ranges. */ | |
|     _isComparisonBridgeEnd(value: number, rowIndex: number, colIndex: number): boolean; | |
|     /** Gets whether a value is the end of the comparison range. */ | |
|     _isComparisonEnd(value: number): boolean; | |
|     /** Gets whether a value is within the current comparison range. */ | |
|     _isInComparisonRange(value: number): boolean; | |
|     /** | |
|      * Gets whether a value is the same as the start and end of the comparison range. | |
|      * For context, the functions that we use to determine whether something is the start/end of | |
|      * a range don't allow for the start and end to be on the same day, because we'd have to use | |
|      * much more specific CSS selectors to style them correctly in all scenarios. This is fine for | |
|      * the regular range, because when it happens, the selected styles take over and still show where | |
|      * the range would've been, however we don't have these selected styles for a comparison range. | |
|      * This function is used to apply a class that serves the same purpose as the one for selected | |
|      * dates, but it only applies in the context of a comparison range. | |
|      */ | |
|     _isComparisonIdentical(value: number): boolean; | |
|     /** Gets whether a value is the start of the preview range. */ | |
|     _isPreviewStart(value: number): boolean; | |
|     /** Gets whether a value is the end of the preview range. */ | |
|     _isPreviewEnd(value: number): boolean; | |
|     /** Gets whether a value is inside the preview range. */ | |
|     _isInPreview(value: number): boolean; | |
|     /** | |
|      * Event handler for when the user enters an element | |
|      * inside the calendar body (e.g. by hovering in or focus). | |
|      */ | |
|     private _enterHandler; | |
|     /** | |
|      * Event handler for when the user's pointer leaves an element | |
|      * inside the calendar body (e.g. by hovering out or blurring). | |
|      */ | |
|     private _leaveHandler; | |
|     /** Finds the MatCalendarCell that corresponds to a DOM node. */ | |
|     private _getCellFromElement; | |
|     static ɵfac: ɵngcc0.ɵɵFactoryDeclaration<MatCalendarBody, never>; | |
|     static ɵcmp: ɵngcc0.ɵɵComponentDeclaration<MatCalendarBody, "[mat-calendar-body]", ["matCalendarBody"], { "numCols": "numCols"; "activeCell": "activeCell"; "isRange": "isRange"; "cellAspectRatio": "cellAspectRatio"; "previewStart": "previewStart"; "previewEnd": "previewEnd"; "label": "label"; "rows": "rows"; "todayValue": "todayValue"; "startValue": "startValue"; "endValue": "endValue"; "labelMinRequiredCells": "labelMinRequiredCells"; "comparisonStart": "comparisonStart"; "comparisonEnd": "comparisonEnd"; }, { "selectedValueChange": "selectedValueChange"; "previewChange": "previewChange"; }, never, never>; | |
| } | |
| 
 | |
| //# sourceMappingURL=calendar-body.d.ts.map
 |