MCPcopy Create free account
hub / github.com/angular/components / constructor

Method constructor

src/material/datepicker/calendar-body.ts:225–257  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

223 _trackRow = (row: MatCalendarCell[]) => row;
224
225 constructor() {
226 const renderer = inject(Renderer2);
227 const idGenerator = inject(_IdGenerator);
228 this._startDateLabelId = idGenerator.getId('mat-calendar-body-start-');
229 this._endDateLabelId = idGenerator.getId('mat-calendar-body-end-');
230 this._comparisonStartDateLabelId = idGenerator.getId('mat-calendar-body-comparison-start-');
231 this._comparisonEndDateLabelId = idGenerator.getId('mat-calendar-body-comparison-end-');
232
233 inject(_CdkPrivateStyleLoader).load(_StructuralStylesLoader);
234
235 this._ngZone.runOutsideAngular(() => {
236 const element = this._elementRef.nativeElement;
237 const cleanups = [
238 // `touchmove` is active since we need to call `preventDefault`.
239 renderer.listen(element, 'touchmove', this._touchmoveHandler, activeCapturingEventOptions),
240 renderer.listen(element, 'mouseenter', this._enterHandler, passiveCapturingEventOptions),
241 renderer.listen(element, 'focus', this._enterHandler, passiveCapturingEventOptions),
242 renderer.listen(element, 'mouseleave', this._leaveHandler, passiveCapturingEventOptions),
243 renderer.listen(element, 'blur', this._leaveHandler, passiveCapturingEventOptions),
244 renderer.listen(element, 'mousedown', this._mousedownHandler, passiveEventOptions),
245 renderer.listen(element, 'touchstart', this._mousedownHandler, passiveEventOptions),
246 ];
247
248 if (this._platform.isBrowser) {
249 cleanups.push(
250 renderer.listen('window', 'mouseup', this._mouseupHandler),
251 renderer.listen('window', 'touchend', this._touchendHandler),
252 );
253 }
254
255 this._eventCleanups = cleanups;
256 });
257 }
258
259 /** Called when a cell is clicked. */
260 _cellClicked(cell: MatCalendarCell, event: MouseEvent): void {

Callers

nothing calls this directly

Calls 4

loadMethod · 0.80
listenMethod · 0.80
pushMethod · 0.65
getIdMethod · 0.45

Tested by

no test coverage detected